| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>graphify - graphify-out/graph.html</title>
- <script src="https://unpkg.com/vis-network/standalone/umd/vis-network.min.js"></script>
- <style>
- * { box-sizing: border-box; margin: 0; padding: 0; }
- body { background: #0f0f1a; color: #e0e0e0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; display: flex; height: 100vh; overflow: hidden; }
- #graph { flex: 1; }
- #sidebar { width: 280px; background: #1a1a2e; border-left: 1px solid #2a2a4e; display: flex; flex-direction: column; overflow: hidden; }
- #search-wrap { padding: 12px; border-bottom: 1px solid #2a2a4e; }
- #search { width: 100%; background: #0f0f1a; border: 1px solid #3a3a5e; color: #e0e0e0; padding: 7px 10px; border-radius: 6px; font-size: 13px; outline: none; }
- #search:focus { border-color: #4E79A7; }
- #search-results { max-height: 140px; overflow-y: auto; padding: 4px 12px; border-bottom: 1px solid #2a2a4e; display: none; }
- .search-item { padding: 4px 6px; cursor: pointer; border-radius: 4px; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
- .search-item:hover { background: #2a2a4e; }
- #info-panel { padding: 14px; border-bottom: 1px solid #2a2a4e; min-height: 140px; }
- #info-panel h3 { font-size: 13px; color: #aaa; margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.05em; }
- #info-content { font-size: 13px; color: #ccc; line-height: 1.6; }
- #info-content .field { margin-bottom: 5px; }
- #info-content .field b { color: #e0e0e0; }
- #info-content .empty { color: #555; font-style: italic; }
- .neighbor-link { display: block; padding: 2px 6px; margin: 2px 0; border-radius: 3px; cursor: pointer; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border-left: 3px solid #333; }
- .neighbor-link:hover { background: #2a2a4e; }
- #neighbors-list { max-height: 160px; overflow-y: auto; margin-top: 4px; }
- #legend-wrap { flex: 1; overflow-y: auto; padding: 12px; }
- #legend-wrap h3 { font-size: 13px; color: #aaa; margin-bottom: 10px; text-transform: uppercase; letter-spacing: 0.05em; }
- .legend-item { display: flex; align-items: center; gap: 8px; padding: 4px 0; cursor: pointer; border-radius: 4px; font-size: 12px; }
- .legend-item:hover { background: #2a2a4e; padding-left: 4px; }
- .legend-item.dimmed { opacity: 0.35; }
- .legend-dot { width: 12px; height: 12px; border-radius: 50%; flex-shrink: 0; }
- .legend-label { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
- .legend-count { color: #666; font-size: 11px; }
- #stats { padding: 10px 14px; border-top: 1px solid #2a2a4e; font-size: 11px; color: #555; }
- #legend-controls { display: flex; gap: 6px; margin-bottom: 8px; }
- #legend-controls button { flex: 1; background: #0f0f1a; border: 1px solid #3a3a5e; color: #aaa; padding: 4px 0; border-radius: 4px; font-size: 11px; cursor: pointer; }
- #legend-controls button:hover { border-color: #4E79A7; color: #e0e0e0; }
- </style>
- </head>
- <body>
- <div id="graph"></div>
- <div id="sidebar">
- <div id="search-wrap">
- <input id="search" type="text" placeholder="Search nodes..." autocomplete="off">
- <div id="search-results"></div>
- </div>
- <div id="info-panel">
- <h3>Node Info</h3>
- <div id="info-content"><span class="empty">Click a node to inspect it</span></div>
- </div>
- <div id="legend-wrap">
- <h3>Communities</h3>
- <div id="legend-controls">
- <button onclick="toggleAllCommunities(false)">Show All</button>
- <button onclick="toggleAllCommunities(true)">Hide All</button>
- </div>
- <div id="legend"></div>
- </div>
- <div id="stats">481 nodes · 766 edges · 97 communities</div>
- </div>
- <script>
- const RAW_NODES = [{"id": "bx_mobile_components_d_ts", "label": "components.d.ts", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "components.d.ts", "community": 36, "community_name": "Community 36", "source_file": "bx-mobile/components.d.ts", "file_type": "code", "degree": 0}, {"id": "bx_mobile_vite_config_ts", "label": "vite.config.ts", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "vite.config.ts", "community": 37, "community_name": "Community 37", "source_file": "bx-mobile/vite.config.ts", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_app_vue", "label": "App.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "App.vue", "community": 20, "community_name": "Community 20", "source_file": "bx-mobile/src/App.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_main_ts", "label": "main.ts", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "main.ts", "community": 20, "community_name": "Community 20", "source_file": "bx-mobile/src/main.ts", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_env_d_ts", "label": "env.d.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "env.d.ts", "community": 38, "community_name": "Community 38", "source_file": "bx-mobile/src/env.d.ts", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_stores_auth_ts", "label": "auth.ts", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "auth.ts", "community": 39, "community_name": "Community 39", "source_file": "bx-mobile/src/stores/auth.ts", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_utils_format_ts", "label": "format.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "format.ts", "community": 8, "community_name": "Community 8", "source_file": "bx-mobile/src/utils/format.ts", "file_type": "code", "degree": 9}, {"id": "utils_format_statuslabel", "label": "statusLabel()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "statusLabel()", "community": 8, "community_name": "Community 8", "source_file": "bx-web/src/utils/format.ts", "file_type": "code", "degree": 2}, {"id": "utils_format_statustone", "label": "statusTone()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "statusTone()", "community": 8, "community_name": "Community 8", "source_file": "bx-web/src/utils/format.ts", "file_type": "code", "degree": 4}, {"id": "utils_format_statuscolor", "label": "statusColor()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "statusColor()", "community": 8, "community_name": "Community 8", "source_file": "bx-mobile/src/utils/format.ts", "file_type": "code", "degree": 2}, {"id": "utils_format_statustagclass", "label": "statusTagClass()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "statusTagClass()", "community": 8, "community_name": "Community 8", "source_file": "bx-mobile/src/utils/format.ts", "file_type": "code", "degree": 2}, {"id": "utils_format_menutypelabel", "label": "menuTypeLabel()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "menuTypeLabel()", "community": 8, "community_name": "Community 8", "source_file": "bx-web/src/utils/format.ts", "file_type": "code", "degree": 2}, {"id": "utils_format_formatamount", "label": "formatAmount()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "formatAmount()", "community": 8, "community_name": "Community 8", "source_file": "bx-mobile/src/utils/format.ts", "file_type": "code", "degree": 1}, {"id": "utils_format_formatdate", "label": "formatDate()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "formatDate()", "community": 8, "community_name": "Community 8", "source_file": "bx-mobile/src/utils/format.ts", "file_type": "code", "degree": 1}, {"id": "utils_format_formatdatetime", "label": "formatDateTime()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "formatDateTime()", "community": 8, "community_name": "Community 8", "source_file": "bx-mobile/src/utils/format.ts", "file_type": "code", "degree": 1}, {"id": "utils_format_formatfilesize", "label": "formatFileSize()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "formatFileSize()", "community": 8, "community_name": "Community 8", "source_file": "bx-mobile/src/utils/format.ts", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_components_mobile_menuentrycard_vue", "label": "MenuEntryCard.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuEntryCard.vue", "community": 40, "community_name": "Community 40", "source_file": "bx-mobile/src/components/mobile/MenuEntryCard.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_components_mobile_statustag_vue", "label": "StatusTag.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "StatusTag.vue", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/components/mobile/StatusTag.vue", "file_type": "code", "degree": 4}, {"id": "bx_mobile_src_components_mobile_bottomactionbar_vue", "label": "BottomActionBar.vue", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BottomActionBar.vue", "community": 41, "community_name": "Community 41", "source_file": "bx-mobile/src/components/mobile/BottomActionBar.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_components_mobile_menunode_vue", "label": "MenuNode.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuNode.vue", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/components/mobile/MenuNode.vue", "file_type": "code", "degree": 2}, {"id": "bx_mobile_src_components_mobile_actioncard_vue", "label": "ActionCard.vue", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ActionCard.vue", "community": 42, "community_name": "Community 42", "source_file": "bx-mobile/src/components/mobile/ActionCard.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_hooks_useexpenseitemtree_ts", "label": "useExpenseItemTree.ts", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "useExpenseItemTree.ts", "community": 13, "community_name": "Community 13", "source_file": "bx-mobile/src/hooks/useExpenseItemTree.ts", "file_type": "code", "degree": 3}, {"id": "hooks_useexpenseitemtree_useexpenseitemtree", "label": "useExpenseItemTree()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "useExpenseItemTree()", "community": 13, "community_name": "Community 13", "source_file": "bx-web/src/hooks/useExpenseItemTree.ts", "file_type": "code", "degree": 2}, {"id": "hooks_useexpenseitemtree_flattentree", "label": "flattenTree()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "flattenTree()", "community": 13, "community_name": "Community 13", "source_file": "bx-web/src/hooks/useExpenseItemTree.ts", "file_type": "code", "degree": 2}, {"id": "hooks_useexpenseitemtree_formatexpensename", "label": "formatExpenseName()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "formatExpenseName()", "community": 13, "community_name": "Community 13", "source_file": "bx-web/src/hooks/useExpenseItemTree.ts", "file_type": "code", "degree": 2}, {"id": "bx_mobile_src_hooks_useattachment_ts", "label": "useAttachment.ts", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "useAttachment.ts", "community": 21, "community_name": "Community 21", "source_file": "bx-mobile/src/hooks/useAttachment.ts", "file_type": "code", "degree": 1}, {"id": "hooks_useattachment_useattachment", "label": "useAttachment()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "useAttachment()", "community": 21, "community_name": "Community 21", "source_file": "bx-mobile/src/hooks/useAttachment.ts", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_api_client_ts", "label": "client.ts", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "client.ts", "community": 16, "community_name": "Community 16", "source_file": "bx-mobile/src/api/client.ts", "file_type": "code", "degree": 1}, {"id": "api_client_bizerror", "label": "BizError", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "BizError", "community": 16, "community_name": "Community 16", "source_file": "bx-mobile/src/api/client.ts", "file_type": "code", "degree": 2}, {"id": "api_client_bizerror_constructor", "label": ".constructor()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": ".constructor()", "community": 16, "community_name": "Community 16", "source_file": "bx-mobile/src/api/client.ts", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_api_index_ts", "label": "index.ts", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "index.ts", "community": 43, "community_name": "Community 43", "source_file": "bx-mobile/src/api/index.ts", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_home_homelayout_vue", "label": "HomeLayout.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "HomeLayout.vue", "community": 44, "community_name": "Community 44", "source_file": "bx-mobile/src/views/home/HomeLayout.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_home_homepage_vue", "label": "HomePage.vue", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "HomePage.vue", "community": 22, "community_name": "Community 22", "source_file": "bx-mobile/src/views/home/HomePage.vue", "file_type": "code", "degree": 1}, {"id": "home_homepage_if", "label": "if()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 22, "community_name": "Community 22", "source_file": "bx-mobile/src/views/home/HomePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_payment_paymentpage_vue", "label": "PaymentPage.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "PaymentPage.vue", "community": 45, "community_name": "Community 45", "source_file": "bx-mobile/src/views/payment/PaymentPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_admin_usermanagepage_vue", "label": "UserManagePage.vue", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "UserManagePage.vue", "community": 46, "community_name": "Community 46", "source_file": "bx-mobile/src/views/admin/UserManagePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_admin_menumanagepage_vue", "label": "MenuManagePage.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuManagePage.vue", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/admin/MenuManagePage.vue", "file_type": "code", "degree": 5}, {"id": "admin_menumanagepage_menutypetone", "label": "menuTypeTone()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "menuTypeTone()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/admin/MenuManagePage.vue", "file_type": "code", "degree": 1}, {"id": "admin_menumanagepage_resetform", "label": "resetForm()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "resetForm()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/admin/MenuManagePage.vue", "file_type": "code", "degree": 1}, {"id": "admin_menumanagepage_if", "label": "if()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/admin/MenuManagePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_admin_expenseprojectpage_vue", "label": "ExpenseProjectPage.vue", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseProjectPage.vue", "community": 47, "community_name": "Community 47", "source_file": "bx-mobile/src/views/admin/ExpenseProjectPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_admin_rolemanagepage_vue", "label": "RoleManagePage.vue", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleManagePage.vue", "community": 48, "community_name": "Community 48", "source_file": "bx-mobile/src/views/admin/RoleManagePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_admin_wfreimbursepage_vue", "label": "WfReimbursePage.vue", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "WfReimbursePage.vue", "community": 23, "community_name": "Community 23", "source_file": "bx-mobile/src/views/admin/WfReimbursePage.vue", "file_type": "code", "degree": 1}, {"id": "admin_wfreimbursepage_if", "label": "if()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 23, "community_name": "Community 23", "source_file": "bx-mobile/src/views/admin/WfReimbursePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_admin_wfadvancepage_vue", "label": "WfAdvancePage.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "WfAdvancePage.vue", "community": 24, "community_name": "Community 24", "source_file": "bx-mobile/src/views/admin/WfAdvancePage.vue", "file_type": "code", "degree": 1}, {"id": "admin_wfadvancepage_if", "label": "if()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 24, "community_name": "Community 24", "source_file": "bx-mobile/src/views/admin/WfAdvancePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_admin_adminindexpage_vue", "label": "AdminIndexPage.vue", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AdminIndexPage.vue", "community": 49, "community_name": "Community 49", "source_file": "bx-mobile/src/views/admin/AdminIndexPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_all_allpage_vue", "label": "AllPage.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AllPage.vue", "community": 50, "community_name": "Community 50", "source_file": "bx-mobile/src/views/all/AllPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_advance_advanceapprovepage_vue", "label": "AdvanceApprovePage.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 14.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApprovePage.vue", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 11}, {"id": "advance_advanceapprovepage_toneclass", "label": "toneClass()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "toneClass()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 1}, {"id": "advance_advanceapprovepage_accentclass", "label": "accentClass()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "accentClass()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 1}, {"id": "advance_advanceapprovepage_fetchlist", "label": "fetchList()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "fetchList()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 5}, {"id": "advance_advanceapprovepage_onload", "label": "onLoad()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "onLoad()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 2}, {"id": "advance_advanceapprovepage_onrefresh", "label": "onRefresh()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "onRefresh()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 2}, {"id": "advance_advanceapprovepage_ontabchange", "label": "onTabChange()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "onTabChange()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 2}, {"id": "advance_advanceapprovepage_openaction", "label": "openAction()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "openAction()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 1}, {"id": "advance_advanceapprovepage_beforeclose", "label": "beforeClose()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "beforeClose()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 1}, {"id": "advance_advanceapprovepage_confirmaction", "label": "confirmAction()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "confirmAction()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 2}, {"id": "advance_advanceapprovepage_opendetail", "label": "openDetail()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "openDetail()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/advance/AdvanceApprovePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_advance_advancelistpage_vue", "label": "AdvanceListPage.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceListPage.vue", "community": 25, "community_name": "Community 25", "source_file": "bx-mobile/src/views/advance/AdvanceListPage.vue", "file_type": "code", "degree": 1}, {"id": "advance_advancelistpage_if", "label": "if()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 25, "community_name": "Community 25", "source_file": "bx-mobile/src/views/advance/AdvanceListPage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_advance_advanceapplypage_vue", "label": "AdvanceApplyPage.vue", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApplyPage.vue", "community": 51, "community_name": "Community 51", "source_file": "bx-mobile/src/views/advance/AdvanceApplyPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_advance_advancedetailpage_vue", "label": "AdvanceDetailPage.vue", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceDetailPage.vue", "community": 26, "community_name": "Community 26", "source_file": "bx-mobile/src/views/advance/AdvanceDetailPage.vue", "file_type": "code", "degree": 1}, {"id": "advance_advancedetailpage_showimagepreview", "label": "showImagePreview()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "showImagePreview()", "community": 26, "community_name": "Community 26", "source_file": "bx-mobile/src/views/advance/AdvanceDetailPage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_advance_advanceissuepage_vue", "label": "AdvanceIssuePage.vue", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceIssuePage.vue", "community": 52, "community_name": "Community 52", "source_file": "bx-mobile/src/views/advance/AdvanceIssuePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_reimburse_reimburselistpage_vue", "label": "ReimburseListPage.vue", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseListPage.vue", "community": 53, "community_name": "Community 53", "source_file": "bx-mobile/src/views/reimburse/ReimburseListPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_reimburse_reimbursedetailpage_vue", "label": "ReimburseDetailPage.vue", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseDetailPage.vue", "community": 27, "community_name": "Community 27", "source_file": "bx-mobile/src/views/reimburse/ReimburseDetailPage.vue", "file_type": "code", "degree": 1}, {"id": "reimburse_reimbursedetailpage_if", "label": "if()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 27, "community_name": "Community 27", "source_file": "bx-mobile/src/views/reimburse/ReimburseDetailPage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_reimburse_reimburseapprovepage_vue", "label": "ReimburseApprovePage.vue", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApprovePage.vue", "community": 28, "community_name": "Community 28", "source_file": "bx-mobile/src/views/reimburse/ReimburseApprovePage.vue", "file_type": "code", "degree": 1}, {"id": "reimburse_reimburseapprovepage_opendetail", "label": "openDetail()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "openDetail()", "community": 28, "community_name": "Community 28", "source_file": "bx-mobile/src/views/reimburse/ReimburseApprovePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_reimburse_reimburseapplypage_vue", "label": "ReimburseApplyPage.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApplyPage.vue", "community": 54, "community_name": "Community 54", "source_file": "bx-mobile/src/views/reimburse/ReimburseApplyPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_profile_profilepage_vue", "label": "ProfilePage.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ProfilePage.vue", "community": 55, "community_name": "Community 55", "source_file": "bx-mobile/src/views/profile/ProfilePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_mine_minepage_vue", "label": "MinePage.vue", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "MinePage.vue", "community": 29, "community_name": "Community 29", "source_file": "bx-mobile/src/views/mine/MinePage.vue", "file_type": "code", "degree": 1}, {"id": "mine_minepage_if", "label": "if()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 29, "community_name": "Community 29", "source_file": "bx-mobile/src/views/mine/MinePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_mine_applylist_vue", "label": "ApplyList.vue", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ApplyList.vue", "community": 56, "community_name": "Community 56", "source_file": "bx-mobile/src/views/mine/ApplyList.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_views_login_loginpage_vue", "label": "LoginPage.vue", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "LoginPage.vue", "community": 3, "community_name": "Community 3", "source_file": "bx-mobile/src/views/login/LoginPage.vue", "file_type": "code", "degree": 2}, {"id": "login_loginpage_handlelogin", "label": "handleLogin()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "handleLogin()", "community": 3, "community_name": "Community 3", "source_file": "bx-mobile/src/views/login/LoginPage.vue", "file_type": "code", "degree": 3}, {"id": "login_loginpage_clearerror", "label": "clearError()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "clearError()", "community": 3, "community_name": "Community 3", "source_file": "bx-mobile/src/views/login/LoginPage.vue", "file_type": "code", "degree": 2}, {"id": "bx_mobile_src_views_approval_approvalpage_vue", "label": "ApprovalPage.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 14.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ApprovalPage.vue", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 11}, {"id": "approval_approvalpage_tagclass", "label": "tagClass()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "tagClass()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 1}, {"id": "approval_approvalpage_accentclass", "label": "accentClass()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "accentClass()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 1}, {"id": "approval_approvalpage_loadadvancedata", "label": "loadAdvanceData()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "loadAdvanceData()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 3}, {"id": "approval_approvalpage_loadadvancemore", "label": "loadAdvanceMore()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "loadAdvanceMore()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 2}, {"id": "approval_approvalpage_onadvancerefresh", "label": "onAdvanceRefresh()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "onAdvanceRefresh()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 2}, {"id": "approval_approvalpage_loadreimbursedata", "label": "loadReimburseData()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "loadReimburseData()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 3}, {"id": "approval_approvalpage_loadreimbursemore", "label": "loadReimburseMore()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "loadReimburseMore()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 2}, {"id": "approval_approvalpage_onreimburserefresh", "label": "onReimburseRefresh()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "onReimburseRefresh()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 2}, {"id": "approval_approvalpage_ontabchange", "label": "onTabChange()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "onTabChange()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 1}, {"id": "approval_approvalpage_opendetail", "label": "openDetail()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "openDetail()", "community": 4, "community_name": "Community 4", "source_file": "bx-mobile/src/views/approval/ApprovalPage.vue", "file_type": "code", "degree": 1}, {"id": "bx_mobile_src_views_approval_approvaldetailpage_vue", "label": "ApprovalDetailPage.vue", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ApprovalDetailPage.vue", "community": 57, "community_name": "Community 57", "source_file": "bx-mobile/src/views/approval/ApprovalDetailPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_mobile_src_router_index_ts", "label": "index.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "index.ts", "community": 58, "community_name": "Community 58", "source_file": "bx-mobile/src/router/index.ts", "file_type": "code", "degree": 0}, {"id": "bx_backend_run_tests_py", "label": "run_tests.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "run_tests.py", "community": 17, "community_name": "Community 17", "source_file": "bx-backend/run_tests.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_run_tests_j", "label": "j()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "j()", "community": 17, "community_name": "Community 17", "source_file": "bx-backend/run_tests.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_run_tests_tc", "label": "tc()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "tc()", "community": 17, "community_name": "Community 17", "source_file": "bx-backend/run_tests.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_run_e2e_tests_py", "label": "run_e2e_tests.py", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "run_e2e_tests.py", "community": 14, "community_name": "Community 14", "source_file": "bx-backend/run_e2e_tests.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_run_e2e_tests_j", "label": "j()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "j()", "community": 14, "community_name": "Community 14", "source_file": "bx-backend/run_e2e_tests.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_run_e2e_tests_tc", "label": "tc()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "tc()", "community": 14, "community_name": "Community 14", "source_file": "bx-backend/run_e2e_tests.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_run_e2e_tests_login", "label": "login()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "login()", "community": 14, "community_name": "Community 14", "source_file": "bx-backend/run_e2e_tests.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_app_config_py", "label": "config.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "config.py", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/config.py", "file_type": "code", "degree": 4}, {"id": "app_config_settings", "label": "Settings", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "Settings", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/config.py", "file_type": "code", "degree": 3}, {"id": "basesettings", "label": "BaseSettings", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseSettings", "community": 7, "community_name": "Community 7", "source_file": "", "file_type": "code", "degree": 1}, {"id": "app_config_database_url", "label": "DATABASE_URL()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "DATABASE_URL()", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/config.py", "file_type": "code", "degree": 1}, {"id": "app_config_redis_url", "label": "REDIS_URL()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "REDIS_URL()", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/config.py", "file_type": "code", "degree": 1}, {"id": "app_config_get_settings", "label": "get_settings()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_settings()", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/config.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_database_py", "label": "database.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "database.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/database.py", "file_type": "code", "degree": 2}, {"id": "app_database_base", "label": "Base", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "Base", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/database.py", "file_type": "code", "degree": 18}, {"id": "declarativebase", "label": "DeclarativeBase", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "DeclarativeBase", "community": 2, "community_name": "Community 2", "source_file": "", "file_type": "code", "degree": 1}, {"id": "app_database_get_db", "label": "get_db()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_db()", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/database.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_app_init_py", "label": "__init__.py", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 59, "community_name": "Community 59", "source_file": "bx-backend/app/__init__.py", "file_type": "code", "degree": 0}, {"id": "bx_backend_app_main_py", "label": "main.py", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "main.py", "community": 18, "community_name": "Community 18", "source_file": "bx-backend/app/main.py", "file_type": "code", "degree": 2}, {"id": "app_main_create_app", "label": "create_app()", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create_app()", "community": 18, "community_name": "Community 18", "source_file": "bx-backend/app/main.py", "file_type": "code", "degree": 1}, {"id": "app_main_rationale_1", "label": "FastAPI application factory.", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "FastAPI application factory.", "community": 18, "community_name": "Community 18", "source_file": "bx-backend/app/main.py", "file_type": "rationale", "degree": 1}, {"id": "bx_backend_app_routers_auth_py", "label": "auth.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "auth.py", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/auth.py", "file_type": "code", "degree": 6}, {"id": "routers_auth_loginrequest", "label": "LoginRequest", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "LoginRequest", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/auth.py", "file_type": "code", "degree": 6}, {"id": "basemodel", "label": "BaseModel", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 32.8, "font": {"size": 12, "color": "#ffffff"}, "title": "BaseModel", "community": 1, "community_name": "Community 1", "source_file": "", "file_type": "code", "degree": 63}, {"id": "routers_auth_registerrequest", "label": "RegisterRequest", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "RegisterRequest", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/auth.py", "file_type": "code", "degree": 6}, {"id": "routers_auth_tokenresponse", "label": "TokenResponse", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "TokenResponse", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/auth.py", "file_type": "code", "degree": 7}, {"id": "routers_auth_login", "label": "login()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "login()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/auth.py", "file_type": "code", "degree": 6}, {"id": "routers_auth_register", "label": "register()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "register()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/auth.py", "file_type": "code", "degree": 4}, {"id": "routers_auth_get_current_user_info", "label": "get_current_user_info()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_current_user_info()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/auth.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_routers_user_py", "label": "user.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "user.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 7}, {"id": "routers_user_list_users", "label": "list_users()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_users()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 4}, {"id": "routers_user_list_users_dropdown", "label": "list_users_dropdown()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "list_users_dropdown()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 2}, {"id": "routers_user_get_user", "label": "get_user()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_user()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 3}, {"id": "routers_user_create_user", "label": "create_user()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "create_user()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 3}, {"id": "routers_user_update_user", "label": "update_user()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "update_user()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 3}, {"id": "routers_user_reset_password", "label": "reset_password()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "reset_password()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 4}, {"id": "routers_user_delete_user", "label": "delete_user()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_user()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/user.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_routers_reimburse_py", "label": "reimburse.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 15.1, "font": {"size": 12, "color": "#ffffff"}, "title": "reimburse.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 14}, {"id": "routers_reimburse_build_out_with_details", "label": "_build_out_with_details()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "_build_out_with_details()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 5}, {"id": "routers_reimburse_get_generated_title", "label": "get_generated_title()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_generated_title()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 3}, {"id": "routers_reimburse_list_reimburses", "label": "list_reimburses()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_reimburses()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 4}, {"id": "routers_reimburse_my_reimburses", "label": "my_reimburses()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "my_reimburses()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 4}, {"id": "routers_reimburse_pending_approval", "label": "pending_approval()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "pending_approval()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 3}, {"id": "routers_reimburse_approved_by_me", "label": "approved_by_me()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "approved_by_me()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 3}, {"id": "routers_reimburse_get_reimburse", "label": "get_reimburse()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_reimburse()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 4}, {"id": "routers_reimburse_get_approvals", "label": "get_approvals()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_approvals()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 2}, {"id": "routers_reimburse_create_reimburse", "label": "create_reimburse()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "create_reimburse()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 6}, {"id": "routers_reimburse_update_reimburse", "label": "update_reimburse()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "update_reimburse()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 5}, {"id": "routers_reimburse_submit_reimburse", "label": "submit_reimburse()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "submit_reimburse()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 3}, {"id": "routers_reimburse_approve_reimburse", "label": "approve_reimburse()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "approve_reimburse()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 3}, {"id": "routers_reimburse_reject_reimburse", "label": "reject_reimburse()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "reject_reimburse()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 3}, {"id": "routers_reimburse_delete_reimburse", "label": "delete_reimburse()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_reimburse()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/reimburse.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_routers_expense_item_py", "label": "expense_item.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "expense_item.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/expense_item.py", "file_type": "code", "degree": 5}, {"id": "routers_expense_item_get_expense_item_tree", "label": "get_expense_item_tree()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_expense_item_tree()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/routers/expense_item.py", "file_type": "code", "degree": 3}, {"id": "routers_expense_item_get_expense_item", "label": "get_expense_item()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_expense_item()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/expense_item.py", "file_type": "code", "degree": 3}, {"id": "routers_expense_item_create_expense_item", "label": "create_expense_item()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "create_expense_item()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/expense_item.py", "file_type": "code", "degree": 3}, {"id": "routers_expense_item_update_expense_item", "label": "update_expense_item()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "update_expense_item()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/expense_item.py", "file_type": "code", "degree": 3}, {"id": "routers_expense_item_delete_expense_item", "label": "delete_expense_item()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_expense_item()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/expense_item.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_routers_init_py", "label": "__init__.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 60, "community_name": "Community 60", "source_file": "bx-backend/app/routers/__init__.py", "file_type": "code", "degree": 0}, {"id": "bx_backend_app_routers_role_py", "label": "role.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.6, "font": {"size": 0, "color": "#ffffff"}, "title": "role.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 10}, {"id": "routers_role_assignmenusbody", "label": "AssignMenusBody", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 14.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AssignMenusBody", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 11}, {"id": "routers_role_assignusersbody", "label": "AssignUsersBody", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 14.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AssignUsersBody", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 11}, {"id": "routers_role_list_roles", "label": "list_roles()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_roles()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 4}, {"id": "routers_role_get_role", "label": "get_role()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_role()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 3}, {"id": "routers_role_create_role", "label": "create_role()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "create_role()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 3}, {"id": "routers_role_update_role", "label": "update_role()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "update_role()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 3}, {"id": "routers_role_delete_role", "label": "delete_role()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_role()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 3}, {"id": "routers_role_assign_menus", "label": "assign_menus()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "assign_menus()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 2}, {"id": "routers_role_get_role_users", "label": "get_role_users()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_role_users()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 3}, {"id": "routers_role_assign_users", "label": "assign_users()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "assign_users()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/role.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_routers_menu_py", "label": "menu.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "menu.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 7}, {"id": "routers_menu_get_my_menus", "label": "get_my_menus()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_my_menus()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 3}, {"id": "routers_menu_get_menu_tree", "label": "get_menu_tree()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_menu_tree()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 2}, {"id": "routers_menu_get_menus_by_role", "label": "get_menus_by_role()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_menus_by_role()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 2}, {"id": "routers_menu_get_menu", "label": "get_menu()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_menu()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 3}, {"id": "routers_menu_create_menu", "label": "create_menu()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "create_menu()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 3}, {"id": "routers_menu_update_menu", "label": "update_menu()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "update_menu()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 3}, {"id": "routers_menu_delete_menu", "label": "delete_menu()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_menu()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/menu.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_routers_attachment_py", "label": "attachment.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "attachment.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/attachment.py", "file_type": "code", "degree": 6}, {"id": "routers_attachment_upload_file", "label": "upload_file()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "upload_file()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/attachment.py", "file_type": "code", "degree": 3}, {"id": "routers_attachment_download_file", "label": "download_file()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "download_file()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/attachment.py", "file_type": "code", "degree": 2}, {"id": "routers_attachment_delete_attachment", "label": "delete_attachment()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_attachment()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/attachment.py", "file_type": "code", "degree": 4}, {"id": "routers_attachment_preview_attachment", "label": "preview_attachment()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "preview_attachment()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/attachment.py", "file_type": "code", "degree": 4}, {"id": "routers_attachment_list_by_biz", "label": "list_by_biz()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "list_by_biz()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/attachment.py", "file_type": "code", "degree": 3}, {"id": "routers_attachment_bind_biz", "label": "bind_biz()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "bind_biz()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/attachment.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_routers_advance_py", "label": "advance.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 14.3, "font": {"size": 0, "color": "#ffffff"}, "title": "advance.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 12}, {"id": "routers_advance_list_advances", "label": "list_advances()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_advances()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 4}, {"id": "routers_advance_my_advances", "label": "my_advances()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "my_advances()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 4}, {"id": "routers_advance_pending_approval", "label": "pending_approval()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "pending_approval()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "routers_advance_approved_by_me", "label": "approved_by_me()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "approved_by_me()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "routers_advance_get_advance", "label": "get_advance()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_advance()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "routers_advance_get_approvals", "label": "get_approvals()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_approvals()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 2}, {"id": "routers_advance_create_advance", "label": "create_advance()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create_advance()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 4}, {"id": "routers_advance_update_advance", "label": "update_advance()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "update_advance()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "routers_advance_submit_advance", "label": "submit_advance()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "submit_advance()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "routers_advance_approve_advance", "label": "approve_advance()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "approve_advance()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "routers_advance_reject_advance", "label": "reject_advance()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "reject_advance()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "routers_advance_delete_advance", "label": "delete_advance()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_advance()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/advance.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_routers_workflow_py", "label": "workflow.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "workflow.py", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 7}, {"id": "routers_workflow_list_workflows", "label": "list_workflows()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_workflows()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 4}, {"id": "routers_workflow_get_workflow_by_biz_type", "label": "get_workflow_by_biz_type()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_workflow_by_biz_type()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 3}, {"id": "routers_workflow_get_workflow", "label": "get_workflow()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_workflow()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 3}, {"id": "routers_workflow_create_workflow", "label": "create_workflow()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create_workflow()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 4}, {"id": "routers_workflow_update_workflow", "label": "update_workflow()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "update_workflow()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 4}, {"id": "routers_workflow_save_workflow_nodes", "label": "save_workflow_nodes()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "save_workflow_nodes()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 4}, {"id": "routers_workflow_delete_workflow", "label": "delete_workflow()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "delete_workflow()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/routers/workflow.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_routers_payment_py", "label": "payment.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.6, "font": {"size": 0, "color": "#ffffff"}, "title": "payment.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 10}, {"id": "routers_payment_list_pending_payments", "label": "list_pending_payments()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_pending_payments()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 4}, {"id": "routers_payment_list_processed_payments", "label": "list_processed_payments()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_processed_payments()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 4}, {"id": "routers_payment_pay", "label": "pay()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "pay()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 2}, {"id": "routers_payment_offset", "label": "offset()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "offset()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 2}, {"id": "routers_payment_list_advance_issues", "label": "list_advance_issues()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "list_advance_issues()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 4}, {"id": "routers_payment_export_advance_issues", "label": "export_advance_issues()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "export_advance_issues()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 2}, {"id": "routers_payment_issue_advance", "label": "issue_advance()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "issue_advance()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 3}, {"id": "routers_payment_batch_offset", "label": "batch_offset()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "batch_offset()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 2}, {"id": "routers_payment_list_advance_offset_records", "label": "list_advance_offset_records()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "list_advance_offset_records()", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 3}, {"id": "routers_payment_list_reimburse_offset_records", "label": "list_reimburse_offset_records()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "list_reimburse_offset_records()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/routers/payment.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_core_deps_py", "label": "deps.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "deps.py", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/deps.py", "file_type": "code", "degree": 3}, {"id": "core_deps_get_current_user", "label": "get_current_user()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_current_user()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/deps.py", "file_type": "code", "degree": 2}, {"id": "core_deps_require_roles", "label": "require_roles()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "require_roles()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/deps.py", "file_type": "code", "degree": 2}, {"id": "core_deps_rationale_1", "label": "FastAPI dependencies: DB session, current user, role guards.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "FastAPI dependencies: DB session, current user, role guards.", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/deps.py", "file_type": "rationale", "degree": 2}, {"id": "core_deps_rationale_46", "label": "Dependency factory: currently bypasses role check.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "Dependency factory: currently bypasses role check.", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/deps.py", "file_type": "rationale", "degree": 2}, {"id": "bx_backend_app_core_security_py", "label": "security.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "security.py", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/security.py", "file_type": "code", "degree": 5}, {"id": "core_security_hash_password", "label": "hash_password()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "hash_password()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/security.py", "file_type": "code", "degree": 5}, {"id": "core_security_verify_password", "label": "verify_password()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "verify_password()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/security.py", "file_type": "code", "degree": 3}, {"id": "core_security_create_access_token", "label": "create_access_token()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "create_access_token()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/security.py", "file_type": "code", "degree": 3}, {"id": "core_security_decode_access_token", "label": "decode_access_token()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "decode_access_token()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/security.py", "file_type": "code", "degree": 2}, {"id": "core_security_rationale_1", "label": "JWT creation / verification and password hashing.", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "JWT creation / verification and password hashing.", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/core/security.py", "file_type": "rationale", "degree": 1}, {"id": "bx_backend_app_core_init_py", "label": "__init__.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 61, "community_name": "Community 61", "source_file": "bx-backend/app/core/__init__.py", "file_type": "code", "degree": 0}, {"id": "bx_backend_app_utils_init_py", "label": "__init__.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 62, "community_name": "Community 62", "source_file": "bx-backend/app/utils/__init__.py", "file_type": "code", "degree": 0}, {"id": "bx_backend_app_utils_codegen_py", "label": "codegen.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "codegen.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/utils/codegen.py", "file_type": "code", "degree": 3}, {"id": "utils_codegen_generate_apply_code", "label": "generate_apply_code()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "generate_apply_code()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/utils/codegen.py", "file_type": "code", "degree": 6}, {"id": "utils_codegen_generate_title", "label": "generate_title()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "generate_title()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/utils/codegen.py", "file_type": "code", "degree": 3}, {"id": "utils_codegen_rationale_1", "label": "Generate business codes like BYJ20260424001 / BX20260424001.", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "Generate business codes like BYJ20260424001 / BX20260424001.", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/utils/codegen.py", "file_type": "rationale", "degree": 1}, {"id": "utils_codegen_rationale_9", "label": "Generate a sequential code: {prefix}{YYYYMMDD}{3-digit-sequence}. prefix exa", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "Generate a sequential code: {prefix}{YYYYMMDD}{3-digit-sequence}. prefix exa", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/utils/codegen.py", "file_type": "rationale", "degree": 1}, {"id": "bx_backend_app_models_user_py", "label": "user.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "user.py", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/models/user.py", "file_type": "code", "degree": 2}, {"id": "models_user_roleuser", "label": "RoleUser", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleUser", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/user.py", "file_type": "code", "degree": 5}, {"id": "base", "label": "Base", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Base", "community": 2, "community_name": "Community 2", "source_file": "", "file_type": "code", "degree": 7}, {"id": "models_user_user", "label": "User", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 15.8, "font": {"size": 12, "color": "#ffffff"}, "title": "User", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/models/user.py", "file_type": "code", "degree": 16}, {"id": "softdeletemixin", "label": "SoftDeleteMixin", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "SoftDeleteMixin", "community": 2, "community_name": "Community 2", "source_file": "", "file_type": "code", "degree": 9}, {"id": "bx_backend_app_models_reimburse_py", "label": "reimburse.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "reimburse.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/reimburse.py", "file_type": "code", "degree": 4}, {"id": "models_reimburse_reimburseapply", "label": "ReimburseApply", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApply", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/reimburse.py", "file_type": "code", "degree": 9}, {"id": "models_reimburse_reimbursedetail", "label": "ReimburseDetail", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.6, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseDetail", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/reimburse.py", "file_type": "code", "degree": 10}, {"id": "models_reimburse_reimburseapproval", "label": "ReimburseApproval", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApproval", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/reimburse.py", "file_type": "code", "degree": 9}, {"id": "models_reimburse_reimburseoffset", "label": "ReimburseOffset", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseOffset", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/reimburse.py", "file_type": "code", "degree": 9}, {"id": "bx_backend_app_models_expense_item_py", "label": "expense_item.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "expense_item.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/expense_item.py", "file_type": "code", "degree": 1}, {"id": "models_expense_item_expenseitem", "label": "ExpenseItem", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseItem", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/expense_item.py", "file_type": "code", "degree": 6}, {"id": "bx_backend_app_models_init_py", "label": "__init__.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 63, "community_name": "Community 63", "source_file": "bx-backend/app/models/__init__.py", "file_type": "code", "degree": 0}, {"id": "bx_backend_app_models_role_py", "label": "role.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "role.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/role.py", "file_type": "code", "degree": 1}, {"id": "models_role_role", "label": "Role", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 14.7, "font": {"size": 12, "color": "#ffffff"}, "title": "Role", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/role.py", "file_type": "code", "degree": 13}, {"id": "bx_backend_app_models_menu_py", "label": "menu.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "menu.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/menu.py", "file_type": "code", "degree": 2}, {"id": "models_menu_menurole", "label": "MenuRole", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuRole", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/menu.py", "file_type": "code", "degree": 5}, {"id": "models_menu_menu", "label": "Menu", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "Menu", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/menu.py", "file_type": "code", "degree": 8}, {"id": "bx_backend_app_models_attachment_py", "label": "attachment.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "attachment.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/attachment.py", "file_type": "code", "degree": 1}, {"id": "models_attachment_attachment", "label": "Attachment", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "Attachment", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/attachment.py", "file_type": "code", "degree": 7}, {"id": "bx_backend_app_models_advance_py", "label": "advance.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "advance.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/advance.py", "file_type": "code", "degree": 2}, {"id": "models_advance_advanceapply", "label": "AdvanceApply", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApply", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/advance.py", "file_type": "code", "degree": 8}, {"id": "models_advance_advanceapproval", "label": "AdvanceApproval", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApproval", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/advance.py", "file_type": "code", "degree": 9}, {"id": "bx_backend_app_models_workflow_py", "label": "workflow.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "workflow.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/workflow.py", "file_type": "code", "degree": 2}, {"id": "models_workflow_workflowdef", "label": "WorkflowDef", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.6, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowDef", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/workflow.py", "file_type": "code", "degree": 10}, {"id": "models_workflow_workflownode", "label": "WorkflowNode", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 13.6, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowNode", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/workflow.py", "file_type": "code", "degree": 10}, {"id": "bx_backend_app_models_base_py", "label": "base.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "base.py", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/base.py", "file_type": "code", "degree": 3}, {"id": "models_base_basemodel", "label": "BaseModel", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.9, "font": {"size": 12, "color": "#ffffff"}, "title": "BaseModel", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/base.py", "file_type": "code", "degree": 19}, {"id": "models_base_softdeletemixin", "label": "SoftDeleteMixin", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "SoftDeleteMixin", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/base.py", "file_type": "code", "degree": 18}, {"id": "models_base_rationale_1", "label": "Base model with common columns shared by all bx_ tables.", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "Base model with common columns shared by all bx_ tables.", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/base.py", "file_type": "rationale", "degree": 2}, {"id": "models_base_rationale_11", "label": "Abstract base providing id, create_by, create_time, update_by, update_time.", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "Abstract base providing id, create_by, create_time, update_by, update_time.", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/base.py", "file_type": "rationale", "degree": 2}, {"id": "models_base_rationale_26", "label": "Mixin for soft-delete support (del_flag column).", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "Mixin for soft-delete support (del_flag column).", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/models/base.py", "file_type": "rationale", "degree": 2}, {"id": "bx_backend_app_schemas_user_py", "label": "user.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "user.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 8}, {"id": "schemas_user_usercreate", "label": "UserCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "UserCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 2}, {"id": "schemas_user_userupdate", "label": "UserUpdate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "UserUpdate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 2}, {"id": "schemas_user_rolebrief", "label": "RoleBrief", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleBrief", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 2}, {"id": "schemas_user_userout", "label": "UserOut", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "UserOut", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 8}, {"id": "schemas_user_extract_roles", "label": "extract_roles()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "extract_roles()", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 1}, {"id": "schemas_user_userlogin", "label": "UserLogin", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "UserLogin", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 2}, {"id": "schemas_user_userbriefout", "label": "UserBriefOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "UserBriefOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 2}, {"id": "schemas_user_userlistout", "label": "UserListOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "UserListOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/user.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_schemas_reimburse_py", "label": "reimburse.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 15.1, "font": {"size": 12, "color": "#ffffff"}, "title": "reimburse.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 14}, {"id": "schemas_reimburse_reimbursedetailcreate", "label": "ReimburseDetailCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseDetailCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_reimbursedetailout", "label": "ReimburseDetailOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseDetailOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_reimburseapplycreate", "label": "ReimburseApplyCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApplyCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_details_must_not_be_empty", "label": "details_must_not_be_empty()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "details_must_not_be_empty()", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 1}, {"id": "schemas_reimburse_reimburseapplyupdate", "label": "ReimburseApplyUpdate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApplyUpdate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_reimburseapplyout", "label": "ReimburseApplyOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApplyOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_reimburseapprovalcreate", "label": "ReimburseApprovalCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApprovalCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_reimburseapprovalout", "label": "ReimburseApprovalOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApprovalOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_paymentrequest", "label": "PaymentRequest", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "PaymentRequest", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_offsetrequest", "label": "OffsetRequest", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "OffsetRequest", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_payrequest", "label": "PayRequest", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "PayRequest", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_offsetitem", "label": "OffsetItem", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "OffsetItem", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_batchoffsetrequest", "label": "BatchOffsetRequest", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "BatchOffsetRequest", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 2}, {"id": "schemas_reimburse_reimburseoffsetrecordout", "label": "ReimburseOffsetRecordOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseOffsetRecordOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/reimburse.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_schemas_expense_item_py", "label": "expense_item.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "expense_item.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/expense_item.py", "file_type": "code", "degree": 4}, {"id": "schemas_expense_item_expenseitemcreate", "label": "ExpenseItemCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseItemCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/expense_item.py", "file_type": "code", "degree": 2}, {"id": "schemas_expense_item_expenseitemupdate", "label": "ExpenseItemUpdate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseItemUpdate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/expense_item.py", "file_type": "code", "degree": 2}, {"id": "schemas_expense_item_expenseitemout", "label": "ExpenseItemOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseItemOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/expense_item.py", "file_type": "code", "degree": 3}, {"id": "schemas_expense_item_expenseitemtreeout", "label": "ExpenseItemTreeOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseItemTreeOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/expense_item.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_schemas_init_py", "label": "__init__.py", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 64, "community_name": "Community 64", "source_file": "bx-backend/app/schemas/__init__.py", "file_type": "code", "degree": 0}, {"id": "bx_backend_app_schemas_role_py", "label": "role.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "role.py", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/schemas/role.py", "file_type": "code", "degree": 3}, {"id": "schemas_role_rolecreate", "label": "RoleCreate", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleCreate", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/schemas/role.py", "file_type": "code", "degree": 4}, {"id": "schemas_role_roleupdate", "label": "RoleUpdate", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleUpdate", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/schemas/role.py", "file_type": "code", "degree": 4}, {"id": "schemas_role_roleout", "label": "RoleOut", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleOut", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/schemas/role.py", "file_type": "code", "degree": 4}, {"id": "bx_backend_app_schemas_menu_py", "label": "menu.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "menu.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/menu.py", "file_type": "code", "degree": 4}, {"id": "schemas_menu_menucreate", "label": "MenuCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/menu.py", "file_type": "code", "degree": 2}, {"id": "schemas_menu_menuupdate", "label": "MenuUpdate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuUpdate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/menu.py", "file_type": "code", "degree": 2}, {"id": "schemas_menu_menuout", "label": "MenuOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/menu.py", "file_type": "code", "degree": 4}, {"id": "schemas_menu_menutreeout", "label": "MenuTreeOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuTreeOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/menu.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_schemas_attachment_py", "label": "attachment.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "attachment.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/attachment.py", "file_type": "code", "degree": 2}, {"id": "schemas_attachment_attachmentout", "label": "AttachmentOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AttachmentOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/attachment.py", "file_type": "code", "degree": 2}, {"id": "schemas_attachment_attachmentuploadresponse", "label": "AttachmentUploadResponse", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AttachmentUploadResponse", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/attachment.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_schemas_advance_py", "label": "advance.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "advance.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 8}, {"id": "schemas_advance_advanceapplycreate", "label": "AdvanceApplyCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApplyCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 2}, {"id": "schemas_advance_advanceapplyupdate", "label": "AdvanceApplyUpdate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApplyUpdate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 2}, {"id": "schemas_advance_advanceapplyout", "label": "AdvanceApplyOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApplyOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 2}, {"id": "schemas_advance_advanceapprovalcreate", "label": "AdvanceApprovalCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApprovalCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 2}, {"id": "schemas_advance_advanceapprovalout", "label": "AdvanceApprovalOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApprovalOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 2}, {"id": "schemas_advance_advanceissueout", "label": "AdvanceIssueOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceIssueOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 2}, {"id": "schemas_advance_advanceissuerequest", "label": "AdvanceIssueRequest", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceIssueRequest", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 2}, {"id": "schemas_advance_advanceoffsetrecordout", "label": "AdvanceOffsetRecordOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceOffsetRecordOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/advance.py", "file_type": "code", "degree": 3}, {"id": "bx_backend_app_schemas_common_py", "label": "common.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "common.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/common.py", "file_type": "code", "degree": 6}, {"id": "schemas_common_dt_to_str", "label": "_dt_to_str()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "_dt_to_str()", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/common.py", "file_type": "code", "degree": 1}, {"id": "schemas_common_pagedquery", "label": "PagedQuery", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "PagedQuery", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/common.py", "file_type": "code", "degree": 2}, {"id": "schemas_common_apiresponse", "label": "ApiResponse", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 40.0, "font": {"size": 12, "color": "#ffffff"}, "title": "ApiResponse", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/schemas/common.py", "file_type": "code", "degree": 83}, {"id": "schemas_common_pageddata", "label": "PagedData", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "PagedData", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/schemas/common.py", "file_type": "code", "degree": 18}, {"id": "schemas_common_pagedresponse", "label": "PagedResponse", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "PagedResponse", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/common.py", "file_type": "code", "degree": 2}, {"id": "schemas_common_tokenresponse", "label": "TokenResponse", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "TokenResponse", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/common.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_schemas_workflow_py", "label": "workflow.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "workflow.py", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/workflow.py", "file_type": "code", "degree": 6}, {"id": "schemas_workflow_workflownodecreate", "label": "WorkflowNodeCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowNodeCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/workflow.py", "file_type": "code", "degree": 2}, {"id": "schemas_workflow_workflownodeupdate", "label": "WorkflowNodeUpdate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowNodeUpdate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/workflow.py", "file_type": "code", "degree": 2}, {"id": "schemas_workflow_workflownodeout", "label": "WorkflowNodeOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowNodeOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/workflow.py", "file_type": "code", "degree": 2}, {"id": "schemas_workflow_workflowdefcreate", "label": "WorkflowDefCreate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowDefCreate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/workflow.py", "file_type": "code", "degree": 2}, {"id": "schemas_workflow_workflowdefupdate", "label": "WorkflowDefUpdate", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowDefUpdate", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/workflow.py", "file_type": "code", "degree": 2}, {"id": "schemas_workflow_workflowdefout", "label": "WorkflowDefOut", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowDefOut", "community": 1, "community_name": "Community 1", "source_file": "bx-backend/app/schemas/workflow.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_services_user_py", "label": "user.py", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "user.py", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 8}, {"id": "services_user_userservice", "label": "UserService", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "UserService", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 4}, {"id": "services_user_get_by_id", "label": "get_by_id()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 1}, {"id": "services_user_get_paged", "label": "get_paged()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 1}, {"id": "services_user_create", "label": "create()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 2}, {"id": "services_user_update", "label": "update()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 2}, {"id": "services_user_soft_delete", "label": "soft_delete()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 1}, {"id": "services_user_authenticate", "label": "authenticate()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "authenticate()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 2}, {"id": "services_user_get_user_roles", "label": "get_user_roles()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_user_roles()", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/user.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_app_services_reimburse_py", "label": "reimburse.py", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 16.5, "font": {"size": 12, "color": "#ffffff"}, "title": "reimburse.py", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 18}, {"id": "services_reimburse_reimburseservice", "label": "ReimburseService", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseService", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 8}, {"id": "services_reimburse_get_by_id", "label": "get_by_id()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 1}, {"id": "services_reimburse_get_paged", "label": "get_paged()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 1}, {"id": "services_reimburse_create", "label": "create()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 1}, {"id": "services_reimburse_update", "label": "update()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_soft_delete", "label": "soft_delete()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 1}, {"id": "services_reimburse_pending_approval", "label": "pending_approval()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "pending_approval()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_approved_by_me", "label": "approved_by_me()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "approved_by_me()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_submit", "label": "submit()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "submit()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_approve", "label": "approve()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "approve()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_reject", "label": "reject()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "reject()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_pay", "label": "pay()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "pay()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 1}, {"id": "services_reimburse_offset", "label": "offset()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "offset()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 7}, {"id": "services_reimburse_batch_offset", "label": "batch_offset()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "batch_offset()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_get_approvals", "label": "get_approvals()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_approvals()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 1}, {"id": "services_reimburse_create_with_details", "label": "create_with_details()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "create_with_details()", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 5}, {"id": "services_reimburse_update_with_details", "label": "update_with_details()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "update_with_details()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 4}, {"id": "services_reimburse_get_details", "label": "get_details()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_details()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "code", "degree": 2}, {"id": "services_reimburse_rationale_36", "label": "\u67e5\u8be2\u5f85\u5f53\u524d\u7528\u6237\u5ba1\u6279\u7684\u62a5\u9500\u7533\u8bf7\uff08current_node \u5bf9\u5e94\u7684 WorkflowNode.approver_id == user.id\uff09", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "\u67e5\u8be2\u5f85\u5f53\u524d\u7528\u6237\u5ba1\u6279\u7684\u62a5\u9500\u7533\u8bf7\uff08current_node \u5bf9\u5e94\u7684 WorkflowNode.approver_id == user.id\uff09", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/reimburse.py", "file_type": "rationale", "degree": 7}, {"id": "bx_backend_app_services_expense_item_py", "label": "expense_item.py", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "expense_item.py", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 8}, {"id": "services_expense_item_expenseitemservice", "label": "ExpenseItemService", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseItemService", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 3}, {"id": "services_expense_item_get_by_id", "label": "get_by_id()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 1}, {"id": "services_expense_item_get_paged", "label": "get_paged()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 1}, {"id": "services_expense_item_create", "label": "create()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 1}, {"id": "services_expense_item_update", "label": "update()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 1}, {"id": "services_expense_item_soft_delete", "label": "soft_delete()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 1}, {"id": "services_expense_item_get_item_tree", "label": "get_item_tree()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_item_tree()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 3}, {"id": "services_expense_item_build_tree", "label": "_build_tree()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "_build_tree()", "community": 9, "community_name": "Community 9", "source_file": "bx-backend/app/services/expense_item.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_services_init_py", "label": "__init__.py", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "__init__.py", "community": 65, "community_name": "Community 65", "source_file": "bx-backend/app/services/__init__.py", "file_type": "code", "degree": 0}, {"id": "bx_backend_app_services_role_py", "label": "role.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "role.py", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 9}, {"id": "services_role_roleservice", "label": "RoleService", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 12.5, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleService", "community": 3, "community_name": "Community 3", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 7}, {"id": "services_role_get_by_id", "label": "get_by_id()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 1}, {"id": "services_role_get_paged", "label": "get_paged()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 1}, {"id": "services_role_create", "label": "create()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 1}, {"id": "services_role_update", "label": "update()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 1}, {"id": "services_role_soft_delete", "label": "soft_delete()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 1}, {"id": "services_role_get_users_by_role", "label": "get_users_by_role()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_users_by_role()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 2}, {"id": "services_role_assign_users", "label": "assign_users()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "assign_users()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 1}, {"id": "services_role_assign_menus", "label": "assign_menus()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "assign_menus()", "community": 10, "community_name": "Community 10", "source_file": "bx-backend/app/services/role.py", "file_type": "code", "degree": 1}, {"id": "bx_backend_app_services_menu_py", "label": "menu.py", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "menu.py", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 9}, {"id": "services_menu_menuservice", "label": "MenuService", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuService", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 5}, {"id": "services_menu_get_by_id", "label": "get_by_id()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 1}, {"id": "services_menu_get_paged", "label": "get_paged()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 1}, {"id": "services_menu_create", "label": "create()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 1}, {"id": "services_menu_update", "label": "update()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 1}, {"id": "services_menu_soft_delete", "label": "soft_delete()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 1}, {"id": "services_menu_get_menu_tree", "label": "get_menu_tree()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_menu_tree()", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 1}, {"id": "services_menu_get_menus_by_role", "label": "get_menus_by_role()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_menus_by_role()", "community": 11, "community_name": "Community 11", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 1}, {"id": "services_menu_get_user_menu_tree", "label": "get_user_menu_tree()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_user_menu_tree()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/menu.py", "file_type": "code", "degree": 2}, {"id": "bx_backend_app_services_attachment_py", "label": "attachment.py", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "attachment.py", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 8}, {"id": "services_attachment_attachmentservice", "label": "AttachmentService", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "AttachmentService", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 3}, {"id": "services_attachment_get_by_id", "label": "get_by_id()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 1}, {"id": "services_attachment_get_paged", "label": "get_paged()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 1}, {"id": "services_attachment_create", "label": "create()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 1}, {"id": "services_attachment_update", "label": "update()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 2}, {"id": "services_attachment_soft_delete", "label": "soft_delete()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 1}, {"id": "services_attachment_get_by_biz", "label": "get_by_biz()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_biz()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 2}, {"id": "services_attachment_bind_biz", "label": "bind_biz()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "bind_biz()", "community": 12, "community_name": "Community 12", "source_file": "bx-backend/app/services/attachment.py", "file_type": "code", "degree": 2}, {"id": "services_attachment_rationale_44", "label": "Batch update biz_type and biz_id for given attachment IDs. Returns count updated", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "Batch update biz_type and biz_id for given attachment IDs. Returns count updated", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/attachment.py", "file_type": "rationale", "degree": 2}, {"id": "bx_backend_app_services_advance_py", "label": "advance.py", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 14.7, "font": {"size": 12, "color": "#ffffff"}, "title": "advance.py", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 13}, {"id": "services_advance_advanceservice", "label": "AdvanceService", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceService", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 6}, {"id": "services_advance_get_by_id", "label": "get_by_id()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 1}, {"id": "services_advance_get_paged", "label": "get_paged()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 1}, {"id": "services_advance_create", "label": "create()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 1}, {"id": "services_advance_update", "label": "update()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 1}, {"id": "services_advance_soft_delete", "label": "soft_delete()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 1}, {"id": "services_advance_pending_approval", "label": "pending_approval()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "pending_approval()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 2}, {"id": "services_advance_approved_by_me", "label": "approved_by_me()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "approved_by_me()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 2}, {"id": "services_advance_submit", "label": "submit()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "submit()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 4}, {"id": "services_advance_approve", "label": "approve()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "approve()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 4}, {"id": "services_advance_reject", "label": "reject()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "reject()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 4}, {"id": "services_advance_issue", "label": "issue()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "issue()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 2}, {"id": "services_advance_get_approvals", "label": "get_approvals()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_approvals()", "community": 5, "community_name": "Community 5", "source_file": "bx-backend/app/services/advance.py", "file_type": "code", "degree": 1}, {"id": "services_advance_rationale_36", "label": "\u67e5\u8be2\u5f85\u5f53\u524d\u7528\u6237\u5ba1\u6279\u7684\u5907\u7528\u91d1\u7533\u8bf7\uff08current_node \u5bf9\u5e94\u7684 WorkflowNode.approver_id == user.id\uff09", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "\u67e5\u8be2\u5f85\u5f53\u524d\u7528\u6237\u5ba1\u6279\u7684\u5907\u7528\u91d1\u7533\u8bf7\uff08current_node \u5bf9\u5e94\u7684 WorkflowNode.approver_id == user.id\uff09", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/advance.py", "file_type": "rationale", "degree": 5}, {"id": "bx_backend_app_services_workflow_py", "label": "workflow.py", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "workflow.py", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 8}, {"id": "services_workflow_workflowservice", "label": "WorkflowService", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 11.4, "font": {"size": 0, "color": "#ffffff"}, "title": "WorkflowService", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 4}, {"id": "services_workflow_get_by_id", "label": "get_by_id()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_id()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 1}, {"id": "services_workflow_get_paged", "label": "get_paged()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "get_paged()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 1}, {"id": "services_workflow_create", "label": "create()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 1}, {"id": "services_workflow_update", "label": "update()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 1}, {"id": "services_workflow_soft_delete", "label": "soft_delete()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 1}, {"id": "services_workflow_get_by_biz_type", "label": "get_by_biz_type()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "get_by_biz_type()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 2}, {"id": "services_workflow_save_nodes", "label": "save_nodes()", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "save_nodes()", "community": 6, "community_name": "Community 6", "source_file": "bx-backend/app/services/workflow.py", "file_type": "code", "degree": 5}, {"id": "bx_backend_app_services_base_py", "label": "base.py", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.2, "font": {"size": 0, "color": "#ffffff"}, "title": "base.py", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/base.py", "file_type": "code", "degree": 6}, {"id": "services_base_crudservice", "label": "CrudService", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 14.7, "font": {"size": 12, "color": "#ffffff"}, "title": "CrudService", "community": 2, "community_name": "Community 2", "source_file": "bx-backend/app/services/base.py", "file_type": "code", "degree": 13}, {"id": "services_base_get_by_id", "label": "get_by_id()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 15.4, "font": {"size": 12, "color": "#ffffff"}, "title": "get_by_id()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/base.py", "file_type": "code", "degree": 15}, {"id": "services_base_get_paged", "label": "get_paged()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 14.7, "font": {"size": 12, "color": "#ffffff"}, "title": "get_paged()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/base.py", "file_type": "code", "degree": 13}, {"id": "services_base_create", "label": "create()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "create()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/base.py", "file_type": "code", "degree": 8}, {"id": "services_base_update", "label": "update()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 12.9, "font": {"size": 0, "color": "#ffffff"}, "title": "update()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/base.py", "file_type": "code", "degree": 8}, {"id": "services_base_soft_delete", "label": "soft_delete()", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 13.3, "font": {"size": 0, "color": "#ffffff"}, "title": "soft_delete()", "community": 0, "community_name": "Community 0", "source_file": "bx-backend/app/services/base.py", "file_type": "code", "degree": 9}, {"id": "bx_backend_app_services_minio_py", "label": "minio.py", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "minio.py", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/services/minio.py", "file_type": "code", "degree": 5}, {"id": "services_minio_minioservice", "label": "MinioService", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "MinioService", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/services/minio.py", "file_type": "code", "degree": 1}, {"id": "services_minio_get_client", "label": "_get_client()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.8, "font": {"size": 0, "color": "#ffffff"}, "title": "_get_client()", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/services/minio.py", "file_type": "code", "degree": 5}, {"id": "services_minio_upload_file", "label": "upload_file()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "upload_file()", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/services/minio.py", "file_type": "code", "degree": 2}, {"id": "services_minio_download_file", "label": "download_file()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "download_file()", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/services/minio.py", "file_type": "code", "degree": 2}, {"id": "services_minio_get_presigned_url", "label": "get_presigned_url()", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "get_presigned_url()", "community": 7, "community_name": "Community 7", "source_file": "bx-backend/app/services/minio.py", "file_type": "code", "degree": 3}, {"id": "bx_web_vite_config_ts", "label": "vite.config.ts", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "vite.config.ts", "community": 66, "community_name": "Community 66", "source_file": "bx-web/vite.config.ts", "file_type": "code", "degree": 0}, {"id": "bx_web_src_app_vue", "label": "App.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "App.vue", "community": 30, "community_name": "Community 30", "source_file": "bx-web/src/App.vue", "file_type": "code", "degree": 1}, {"id": "bx_web_src_main_ts", "label": "main.ts", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "main.ts", "community": 30, "community_name": "Community 30", "source_file": "bx-web/src/main.ts", "file_type": "code", "degree": 1}, {"id": "bx_web_src_mock_data_ts", "label": "data.ts", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "data.ts", "community": 67, "community_name": "Community 67", "source_file": "bx-web/src/mock/data.ts", "file_type": "code", "degree": 0}, {"id": "bx_web_src_stores_auth_ts", "label": "auth.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "auth.ts", "community": 68, "community_name": "Community 68", "source_file": "bx-web/src/stores/auth.ts", "file_type": "code", "degree": 0}, {"id": "bx_web_src_utils_format_ts", "label": "format.ts", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "format.ts", "community": 8, "community_name": "Community 8", "source_file": "bx-web/src/utils/format.ts", "file_type": "code", "degree": 3}, {"id": "bx_web_src_components_template_listtoolbar_vue", "label": "ListToolbar.vue", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ListToolbar.vue", "community": 69, "community_name": "Community 69", "source_file": "bx-web/src/components/template/ListToolbar.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_template_filterblock_vue", "label": "FilterBlock.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "FilterBlock.vue", "community": 70, "community_name": "Community 70", "source_file": "bx-web/src/components/template/FilterBlock.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_template_datatablepanel_vue", "label": "DataTablePanel.vue", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "DataTablePanel.vue", "community": 71, "community_name": "Community 71", "source_file": "bx-web/src/components/template/DataTablePanel.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_template_listpagescaffold_vue", "label": "ListPageScaffold.vue", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ListPageScaffold.vue", "community": 72, "community_name": "Community 72", "source_file": "bx-web/src/components/template/ListPageScaffold.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_baseopbutton_vue", "label": "BaseOpButton.vue", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseOpButton.vue", "community": 73, "community_name": "Community 73", "source_file": "bx-web/src/components/base/BaseOpButton.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_baseselect_vue", "label": "BaseSelect.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseSelect.vue", "community": 74, "community_name": "Community 74", "source_file": "bx-web/src/components/base/BaseSelect.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_basetag_vue", "label": "BaseTag.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseTag.vue", "community": 75, "community_name": "Community 75", "source_file": "bx-web/src/components/base/BaseTag.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_basebutton_vue", "label": "BaseButton.vue", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseButton.vue", "community": 76, "community_name": "Community 76", "source_file": "bx-web/src/components/base/BaseButton.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_basedialog_vue", "label": "BaseDialog.vue", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseDialog.vue", "community": 77, "community_name": "Community 77", "source_file": "bx-web/src/components/base/BaseDialog.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_basetable_vue", "label": "BaseTable.vue", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseTable.vue", "community": 78, "community_name": "Community 78", "source_file": "bx-web/src/components/base/BaseTable.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_basedetailtablesection_vue", "label": "BaseDetailTableSection.vue", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseDetailTableSection.vue", "community": 79, "community_name": "Community 79", "source_file": "bx-web/src/components/base/BaseDetailTableSection.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_baseinput_vue", "label": "BaseInput.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseInput.vue", "community": 80, "community_name": "Community 80", "source_file": "bx-web/src/components/base/BaseInput.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_baseclamptext_vue", "label": "BaseClampText.vue", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "BaseClampText.vue", "community": 81, "community_name": "Community 81", "source_file": "bx-web/src/components/base/BaseClampText.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_components_base_approvalflowview_vue", "label": "ApprovalFlowView.vue", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ApprovalFlowView.vue", "community": 82, "community_name": "Community 82", "source_file": "bx-web/src/components/base/ApprovalFlowView.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_hooks_useexpenseitemtree_ts", "label": "useExpenseItemTree.ts", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 11.1, "font": {"size": 0, "color": "#ffffff"}, "title": "useExpenseItemTree.ts", "community": 13, "community_name": "Community 13", "source_file": "bx-web/src/hooks/useExpenseItemTree.ts", "file_type": "code", "degree": 3}, {"id": "bx_web_src_hooks_usepagedtable_ts", "label": "usePagedTable.ts", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "usePagedTable.ts", "community": 31, "community_name": "Community 31", "source_file": "bx-web/src/hooks/usePagedTable.ts", "file_type": "code", "degree": 1}, {"id": "hooks_usepagedtable_usepagedtable", "label": "usePagedTable()", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "usePagedTable()", "community": 31, "community_name": "Community 31", "source_file": "bx-web/src/hooks/usePagedTable.ts", "file_type": "code", "degree": 1}, {"id": "bx_web_src_hooks_useserverpaged_ts", "label": "useServerPaged.ts", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "useServerPaged.ts", "community": 32, "community_name": "Community 32", "source_file": "bx-web/src/hooks/useServerPaged.ts", "file_type": "code", "degree": 1}, {"id": "hooks_useserverpaged_useserverpaged", "label": "useServerPaged()", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "useServerPaged()", "community": 32, "community_name": "Community 32", "source_file": "bx-web/src/hooks/useServerPaged.ts", "file_type": "code", "degree": 1}, {"id": "bx_web_src_api_client_ts", "label": "client.ts", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "client.ts", "community": 83, "community_name": "Community 83", "source_file": "bx-web/src/api/client.ts", "file_type": "code", "degree": 0}, {"id": "bx_web_src_api_index_ts", "label": "index.ts", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "index.ts", "community": 84, "community_name": "Community 84", "source_file": "bx-web/src/api/index.ts", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_loginpage_vue", "label": "LoginPage.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "LoginPage.vue", "community": 15, "community_name": "Community 15", "source_file": "bx-web/src/views/LoginPage.vue", "file_type": "code", "degree": 1}, {"id": "bx_web_src_views_mainlayout_vue", "label": "MainLayout.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "MainLayout.vue", "community": 15, "community_name": "Community 15", "source_file": "bx-web/src/views/MainLayout.vue", "file_type": "code", "degree": 2}, {"id": "views_mainlayout_if", "label": "if()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 15, "community_name": "Community 15", "source_file": "bx-web/src/views/MainLayout.vue", "file_type": "code", "degree": 1}, {"id": "bx_web_src_views_pages_advanceapprovepage_vue", "label": "AdvanceApprovePage.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApprovePage.vue", "community": 85, "community_name": "Community 85", "source_file": "bx-web/src/views/pages/AdvanceApprovePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_usermanagepage_vue", "label": "UserManagePage.vue", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "UserManagePage.vue", "community": 86, "community_name": "Community 86", "source_file": "bx-web/src/views/pages/UserManagePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_advanceapplypage_vue", "label": "AdvanceApplyPage.vue", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceApplyPage.vue", "community": 33, "community_name": "Community 33", "source_file": "bx-web/src/views/pages/AdvanceApplyPage.vue", "file_type": "code", "degree": 1}, {"id": "pages_advanceapplypage_if", "label": "if()", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "if()", "community": 33, "community_name": "Community 33", "source_file": "bx-web/src/views/pages/AdvanceApplyPage.vue", "file_type": "code", "degree": 1}, {"id": "bx_web_src_views_pages_menumanagepage_vue", "label": "MenuManagePage.vue", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "MenuManagePage.vue", "community": 19, "community_name": "Community 19", "source_file": "bx-web/src/views/pages/MenuManagePage.vue", "file_type": "code", "degree": 2}, {"id": "pages_menumanagepage_expandrecursive", "label": "expandRecursive()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "expandRecursive()", "community": 19, "community_name": "Community 19", "source_file": "bx-web/src/views/pages/MenuManagePage.vue", "file_type": "code", "degree": 1}, {"id": "pages_menumanagepage_collapserecursive", "label": "collapseRecursive()", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "collapseRecursive()", "community": 19, "community_name": "Community 19", "source_file": "bx-web/src/views/pages/MenuManagePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_web_src_views_pages_expenseprojectpage_vue", "label": "ExpenseProjectPage.vue", "color": {"background": "#FF9DA7", "border": "#FF9DA7", "highlight": {"background": "#ffffff", "border": "#FF9DA7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ExpenseProjectPage.vue", "community": 87, "community_name": "Community 87", "source_file": "bx-web/src/views/pages/ExpenseProjectPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_minepage_vue", "label": "MinePage.vue", "color": {"background": "#9C755F", "border": "#9C755F", "highlight": {"background": "#ffffff", "border": "#9C755F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "MinePage.vue", "community": 88, "community_name": "Community 88", "source_file": "bx-web/src/views/pages/MinePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_rolemanagepage_vue", "label": "RoleManagePage.vue", "color": {"background": "#BAB0AC", "border": "#BAB0AC", "highlight": {"background": "#ffffff", "border": "#BAB0AC"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "RoleManagePage.vue", "community": 89, "community_name": "Community 89", "source_file": "bx-web/src/views/pages/RoleManagePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_todopage_vue", "label": "TodoPage.vue", "color": {"background": "#4E79A7", "border": "#4E79A7", "highlight": {"background": "#ffffff", "border": "#4E79A7"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "TodoPage.vue", "community": 90, "community_name": "Community 90", "source_file": "bx-web/src/views/pages/TodoPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_demopage_vue", "label": "DemoPage.vue", "color": {"background": "#F28E2B", "border": "#F28E2B", "highlight": {"background": "#ffffff", "border": "#F28E2B"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "DemoPage.vue", "community": 91, "community_name": "Community 91", "source_file": "bx-web/src/views/pages/DemoPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_wfreimbursepage_vue", "label": "WfReimbursePage.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "WfReimbursePage.vue", "community": 34, "community_name": "Community 34", "source_file": "bx-web/src/views/pages/WfReimbursePage.vue", "file_type": "code", "degree": 1}, {"id": "pages_wfreimbursepage_submitaddnode", "label": "submitAddNode()", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "submitAddNode()", "community": 34, "community_name": "Community 34", "source_file": "bx-web/src/views/pages/WfReimbursePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_web_src_views_pages_reimburseapprovepage_vue", "label": "ReimburseApprovePage.vue", "color": {"background": "#E15759", "border": "#E15759", "highlight": {"background": "#ffffff", "border": "#E15759"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApprovePage.vue", "community": 92, "community_name": "Community 92", "source_file": "bx-web/src/views/pages/ReimburseApprovePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_reimburseapplypage_vue", "label": "ReimburseApplyPage.vue", "color": {"background": "#76B7B2", "border": "#76B7B2", "highlight": {"background": "#ffffff", "border": "#76B7B2"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "ReimburseApplyPage.vue", "community": 93, "community_name": "Community 93", "source_file": "bx-web/src/views/pages/ReimburseApplyPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_wfadvancepage_vue", "label": "WfAdvancePage.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "WfAdvancePage.vue", "community": 35, "community_name": "Community 35", "source_file": "bx-web/src/views/pages/WfAdvancePage.vue", "file_type": "code", "degree": 1}, {"id": "pages_wfadvancepage_submitaddnode", "label": "submitAddNode()", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.4, "font": {"size": 0, "color": "#ffffff"}, "title": "submitAddNode()", "community": 35, "community_name": "Community 35", "source_file": "bx-web/src/views/pages/WfAdvancePage.vue", "file_type": "code", "degree": 1}, {"id": "bx_web_src_views_pages_allpage_vue", "label": "AllPage.vue", "color": {"background": "#59A14F", "border": "#59A14F", "highlight": {"background": "#ffffff", "border": "#59A14F"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AllPage.vue", "community": 94, "community_name": "Community 94", "source_file": "bx-web/src/views/pages/AllPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_advanceissuepage_vue", "label": "AdvanceIssuePage.vue", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "AdvanceIssuePage.vue", "community": 95, "community_name": "Community 95", "source_file": "bx-web/src/views/pages/AdvanceIssuePage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_views_pages_paymentpage_vue", "label": "PaymentPage.vue", "color": {"background": "#B07AA1", "border": "#B07AA1", "highlight": {"background": "#ffffff", "border": "#B07AA1"}}, "size": 10.0, "font": {"size": 0, "color": "#ffffff"}, "title": "PaymentPage.vue", "community": 96, "community_name": "Community 96", "source_file": "bx-web/src/views/pages/PaymentPage.vue", "file_type": "code", "degree": 0}, {"id": "bx_web_src_router_index_ts", "label": "index.ts", "color": {"background": "#EDC948", "border": "#EDC948", "highlight": {"background": "#ffffff", "border": "#EDC948"}}, "size": 10.7, "font": {"size": 0, "color": "#ffffff"}, "title": "index.ts", "community": 15, "community_name": "Community 15", "source_file": "bx-web/src/router/index.ts", "file_type": "code", "degree": 2}];
- const RAW_EDGES = [{"from": "bx_mobile_src_app_vue", "to": "bx_mobile_src_main_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_statuslabel", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_statustone", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_statuscolor", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_statustagclass", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_menutypelabel", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_formatamount", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_formatdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_formatdatetime", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_utils_format_ts", "to": "utils_format_formatfilesize", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_format_statuslabel", "to": "bx_web_src_utils_format_ts", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_format_statustone", "to": "utils_format_statuscolor", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_format_statustone", "to": "utils_format_statustagclass", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_format_statustone", "to": "bx_web_src_utils_format_ts", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_format_menutypelabel", "to": "bx_web_src_utils_format_ts", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_components_mobile_statustag_vue", "to": "bx_mobile_src_components_mobile_menunode_vue", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_components_mobile_statustag_vue", "to": "bx_mobile_src_views_admin_menumanagepage_vue", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_components_mobile_statustag_vue", "to": "bx_mobile_src_views_advance_advanceapprovepage_vue", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_components_mobile_statustag_vue", "to": "bx_mobile_src_views_approval_approvalpage_vue", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_components_mobile_menunode_vue", "to": "bx_mobile_src_views_admin_menumanagepage_vue", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_hooks_useexpenseitemtree_ts", "to": "hooks_useexpenseitemtree_useexpenseitemtree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_hooks_useexpenseitemtree_ts", "to": "hooks_useexpenseitemtree_flattentree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_hooks_useexpenseitemtree_ts", "to": "hooks_useexpenseitemtree_formatexpensename", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hooks_useexpenseitemtree_useexpenseitemtree", "to": "bx_web_src_hooks_useexpenseitemtree_ts", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hooks_useexpenseitemtree_flattentree", "to": "bx_web_src_hooks_useexpenseitemtree_ts", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "hooks_useexpenseitemtree_formatexpensename", "to": "bx_web_src_hooks_useexpenseitemtree_ts", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_hooks_useattachment_ts", "to": "hooks_useattachment_useattachment", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_api_client_ts", "to": "api_client_bizerror", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "api_client_bizerror", "to": "api_client_bizerror_constructor", "label": "method", "title": "method [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_home_homepage_vue", "to": "home_homepage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_admin_menumanagepage_vue", "to": "admin_menumanagepage_menutypetone", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_admin_menumanagepage_vue", "to": "admin_menumanagepage_resetform", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_admin_menumanagepage_vue", "to": "admin_menumanagepage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_admin_wfreimbursepage_vue", "to": "admin_wfreimbursepage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_admin_wfadvancepage_vue", "to": "admin_wfadvancepage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_toneclass", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_accentclass", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_fetchlist", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_onload", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_onrefresh", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_ontabchange", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_openaction", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_beforeclose", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_confirmaction", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advanceapprovepage_vue", "to": "advance_advanceapprovepage_opendetail", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "advance_advanceapprovepage_fetchlist", "to": "advance_advanceapprovepage_onload", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "advance_advanceapprovepage_fetchlist", "to": "advance_advanceapprovepage_onrefresh", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "advance_advanceapprovepage_fetchlist", "to": "advance_advanceapprovepage_ontabchange", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "advance_advanceapprovepage_fetchlist", "to": "advance_advanceapprovepage_confirmaction", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advancelistpage_vue", "to": "advance_advancelistpage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_advance_advancedetailpage_vue", "to": "advance_advancedetailpage_showimagepreview", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_reimburse_reimbursedetailpage_vue", "to": "reimburse_reimbursedetailpage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_reimburse_reimburseapprovepage_vue", "to": "reimburse_reimburseapprovepage_opendetail", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_mine_minepage_vue", "to": "mine_minepage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_login_loginpage_vue", "to": "login_loginpage_handlelogin", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_login_loginpage_vue", "to": "login_loginpage_clearerror", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "login_loginpage_handlelogin", "to": "login_loginpage_clearerror", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "login_loginpage_handlelogin", "to": "routers_auth_login", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_tagclass", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_accentclass", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_loadadvancedata", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_loadadvancemore", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_onadvancerefresh", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_loadreimbursedata", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_loadreimbursemore", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_onreimburserefresh", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_ontabchange", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_mobile_src_views_approval_approvalpage_vue", "to": "approval_approvalpage_opendetail", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "approval_approvalpage_loadadvancedata", "to": "approval_approvalpage_loadadvancemore", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "approval_approvalpage_loadadvancedata", "to": "approval_approvalpage_onadvancerefresh", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "approval_approvalpage_loadreimbursedata", "to": "approval_approvalpage_loadreimbursemore", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "approval_approvalpage_loadreimbursedata", "to": "approval_approvalpage_onreimburserefresh", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_run_tests_py", "to": "bx_backend_run_tests_j", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_run_tests_py", "to": "bx_backend_run_tests_tc", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_run_e2e_tests_py", "to": "bx_backend_run_e2e_tests_j", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_run_e2e_tests_py", "to": "bx_backend_run_e2e_tests_tc", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_run_e2e_tests_py", "to": "bx_backend_run_e2e_tests_login", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_config_py", "to": "app_config_settings", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_config_py", "to": "app_config_database_url", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_config_py", "to": "app_config_redis_url", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_config_py", "to": "app_config_get_settings", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_config_settings", "to": "basesettings", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_config_settings", "to": "app_config_get_settings", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_config_get_settings", "to": "services_minio_get_client", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_database_py", "to": "app_database_base", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_database_py", "to": "app_database_get_db", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_database_base", "to": "declarativebase", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "app_database_base", "to": "models_user_roleuser", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_reimburse_reimburseapply", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_reimburse_reimbursedetail", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_reimburse_reimburseapproval", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_reimburse_reimburseoffset", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_menu_menurole", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_menu_menu", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_attachment_attachment", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_advance_advanceapply", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_advance_advanceapproval", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_base_rationale_1", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_base_rationale_11", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "app_database_base", "to": "models_base_rationale_26", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_main_py", "to": "app_main_create_app", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_main_py", "to": "app_main_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_auth_py", "to": "routers_auth_loginrequest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_auth_py", "to": "routers_auth_registerrequest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_auth_py", "to": "routers_auth_tokenresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_auth_py", "to": "routers_auth_login", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_auth_py", "to": "routers_auth_register", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_auth_py", "to": "routers_auth_get_current_user_info", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_auth_loginrequest", "to": "basemodel", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_auth_loginrequest", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_loginrequest", "to": "schemas_common_apiresponse", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_loginrequest", "to": "schemas_user_userout", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_loginrequest", "to": "models_role_role", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "basemodel", "to": "routers_auth_registerrequest", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "routers_auth_tokenresponse", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "routers_role_assignmenusbody", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "routers_role_assignusersbody", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_user_user", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_reimburse_reimburseapply", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_reimburse_reimbursedetail", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_expense_item_expenseitem", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_role_role", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_menu_menu", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_advance_advanceapply", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_workflow_workflowdef", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "models_workflow_workflownode", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_user_usercreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_user_userupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_user_rolebrief", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_user_userout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_user_userlogin", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_user_userbriefout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimbursedetailcreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimbursedetailout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimburseapplycreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimburseapplyupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimburseapplyout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimburseapprovalcreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimburseapprovalout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_paymentrequest", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_offsetrequest", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_payrequest", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_offsetitem", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_batchoffsetrequest", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_reimburse_reimburseoffsetrecordout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_expense_item_expenseitemcreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_expense_item_expenseitemupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_expense_item_expenseitemout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_role_rolecreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_role_roleupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_role_roleout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_menu_menucreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_menu_menuupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_menu_menuout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_attachment_attachmentout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_attachment_attachmentuploadresponse", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceapplycreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceapplyupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceapplyout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceapprovalcreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceapprovalout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceissueout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceissuerequest", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_advance_advanceoffsetrecordout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_common_pagedquery", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_common_apiresponse", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_common_pageddata", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_common_pagedresponse", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_common_tokenresponse", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_workflow_workflownodecreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_workflow_workflownodeupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_workflow_workflownodeout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_workflow_workflowdefcreate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_workflow_workflowdefupdate", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "basemodel", "to": "schemas_workflow_workflowdefout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_auth_registerrequest", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_registerrequest", "to": "schemas_common_apiresponse", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_registerrequest", "to": "schemas_user_userout", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_registerrequest", "to": "models_role_role", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_tokenresponse", "to": "routers_auth_login", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_auth_tokenresponse", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_tokenresponse", "to": "schemas_common_apiresponse", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_tokenresponse", "to": "schemas_user_userout", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_tokenresponse", "to": "models_role_role", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_login", "to": "core_security_verify_password", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_login", "to": "core_security_create_access_token", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_login", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_register", "to": "models_user_user", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_register", "to": "core_security_hash_password", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_register", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_auth_get_current_user_info", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_user_py", "to": "routers_user_list_users", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_user_py", "to": "routers_user_list_users_dropdown", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_user_py", "to": "routers_user_get_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_user_py", "to": "routers_user_create_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_user_py", "to": "routers_user_update_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_user_py", "to": "routers_user_reset_password", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_user_py", "to": "routers_user_delete_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_user_list_users", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_list_users", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_list_users", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_list_users_dropdown", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_get_user", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_get_user", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_create_user", "to": "services_base_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_create_user", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_update_user", "to": "services_base_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_update_user", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_reset_password", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_reset_password", "to": "core_security_hash_password", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_reset_password", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_delete_user", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_user_delete_user", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_build_out_with_details", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_get_generated_title", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_list_reimburses", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_my_reimburses", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_pending_approval", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_approved_by_me", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_get_reimburse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_get_approvals", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_create_reimburse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_update_reimburse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_submit_reimburse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_approve_reimburse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_reject_reimburse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_reimburse_py", "to": "routers_reimburse_delete_reimburse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_reimburse_build_out_with_details", "to": "routers_reimburse_get_reimburse", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_reimburse_build_out_with_details", "to": "routers_reimburse_create_reimburse", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_reimburse_build_out_with_details", "to": "routers_reimburse_update_reimburse", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_reimburse_build_out_with_details", "to": "services_reimburse_get_details", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_get_generated_title", "to": "utils_codegen_generate_title", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_get_generated_title", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_list_reimburses", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_list_reimburses", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_list_reimburses", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_my_reimburses", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_my_reimburses", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_my_reimburses", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_pending_approval", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_pending_approval", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_approved_by_me", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_approved_by_me", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_get_reimburse", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_get_reimburse", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_get_approvals", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_create_reimburse", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_create_reimburse", "to": "utils_codegen_generate_apply_code", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_create_reimburse", "to": "services_reimburse_create_with_details", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_create_reimburse", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_update_reimburse", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_update_reimburse", "to": "services_reimburse_update_with_details", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_update_reimburse", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_submit_reimburse", "to": "services_advance_submit", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_submit_reimburse", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_approve_reimburse", "to": "services_advance_approve", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_approve_reimburse", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_reject_reimburse", "to": "services_advance_reject", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_reject_reimburse", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_delete_reimburse", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_reimburse_delete_reimburse", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_expense_item_py", "to": "routers_expense_item_get_expense_item_tree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_expense_item_py", "to": "routers_expense_item_get_expense_item", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_expense_item_py", "to": "routers_expense_item_create_expense_item", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_expense_item_py", "to": "routers_expense_item_update_expense_item", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_expense_item_py", "to": "routers_expense_item_delete_expense_item", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_expense_item_get_expense_item_tree", "to": "services_expense_item_get_item_tree", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_get_expense_item_tree", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_get_expense_item", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_get_expense_item", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_create_expense_item", "to": "services_base_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_create_expense_item", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_update_expense_item", "to": "services_base_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_update_expense_item", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_delete_expense_item", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_expense_item_delete_expense_item", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_assignmenusbody", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_assignusersbody", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_list_roles", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_get_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_create_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_update_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_delete_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_assign_menus", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_get_role_users", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_role_py", "to": "routers_role_assign_users", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_role_assignmenusbody", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "models_role_role", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "schemas_common_apiresponse", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "schemas_common_pageddata", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "schemas_role_rolecreate", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "schemas_role_roleupdate", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "schemas_role_roleout", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "schemas_user_userout", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignmenusbody", "to": "services_role_roleservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "models_role_role", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "schemas_common_apiresponse", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "schemas_common_pageddata", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "schemas_role_rolecreate", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "schemas_role_roleupdate", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "schemas_role_roleout", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "schemas_user_userout", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assignusersbody", "to": "services_role_roleservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_list_roles", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_list_roles", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_list_roles", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_get_role", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_get_role", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_create_role", "to": "services_base_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_create_role", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_update_role", "to": "services_base_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_update_role", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_delete_role", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_delete_role", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assign_menus", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_get_role_users", "to": "services_role_get_users_by_role", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_get_role_users", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_role_assign_users", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_menu_py", "to": "routers_menu_get_my_menus", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_menu_py", "to": "routers_menu_get_menu_tree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_menu_py", "to": "routers_menu_get_menus_by_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_menu_py", "to": "routers_menu_get_menu", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_menu_py", "to": "routers_menu_create_menu", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_menu_py", "to": "routers_menu_update_menu", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_menu_py", "to": "routers_menu_delete_menu", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_menu_get_my_menus", "to": "services_menu_get_user_menu_tree", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_get_my_menus", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_get_menu_tree", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_get_menus_by_role", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_get_menu", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_get_menu", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_create_menu", "to": "services_base_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_create_menu", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_update_menu", "to": "services_base_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_update_menu", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_delete_menu", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_menu_delete_menu", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_attachment_py", "to": "routers_attachment_upload_file", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_attachment_py", "to": "routers_attachment_download_file", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_attachment_py", "to": "routers_attachment_delete_attachment", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_attachment_py", "to": "routers_attachment_preview_attachment", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_attachment_py", "to": "routers_attachment_list_by_biz", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_attachment_py", "to": "routers_attachment_bind_biz", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_attachment_upload_file", "to": "services_base_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_upload_file", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_download_file", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_delete_attachment", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_delete_attachment", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_delete_attachment", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_preview_attachment", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_preview_attachment", "to": "services_minio_get_presigned_url", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_preview_attachment", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_list_by_biz", "to": "services_attachment_get_by_biz", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_list_by_biz", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_attachment_bind_biz", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_list_advances", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_my_advances", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_pending_approval", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_approved_by_me", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_get_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_get_approvals", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_create_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_update_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_submit_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_approve_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_reject_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_advance_py", "to": "routers_advance_delete_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_advance_list_advances", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_list_advances", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_list_advances", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_my_advances", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_my_advances", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_my_advances", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_pending_approval", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_pending_approval", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_approved_by_me", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_approved_by_me", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_get_advance", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_get_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_get_approvals", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_create_advance", "to": "utils_codegen_generate_apply_code", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_create_advance", "to": "services_base_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_create_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_update_advance", "to": "services_base_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_update_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_submit_advance", "to": "services_advance_submit", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_submit_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_approve_advance", "to": "services_advance_approve", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_approve_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_reject_advance", "to": "services_advance_reject", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_reject_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_delete_advance", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_advance_delete_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_workflow_py", "to": "routers_workflow_list_workflows", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_workflow_py", "to": "routers_workflow_get_workflow_by_biz_type", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_workflow_py", "to": "routers_workflow_get_workflow", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_workflow_py", "to": "routers_workflow_create_workflow", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_workflow_py", "to": "routers_workflow_update_workflow", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_workflow_py", "to": "routers_workflow_save_workflow_nodes", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_workflow_py", "to": "routers_workflow_delete_workflow", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_workflow_list_workflows", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_list_workflows", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_list_workflows", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_get_workflow_by_biz_type", "to": "services_workflow_get_by_biz_type", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_get_workflow_by_biz_type", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_get_workflow", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_get_workflow", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_create_workflow", "to": "services_base_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_create_workflow", "to": "services_workflow_save_nodes", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_create_workflow", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_update_workflow", "to": "services_base_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_update_workflow", "to": "services_workflow_save_nodes", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_update_workflow", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_save_workflow_nodes", "to": "services_workflow_save_nodes", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_save_workflow_nodes", "to": "services_base_get_by_id", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_save_workflow_nodes", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_delete_workflow", "to": "services_base_soft_delete", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_workflow_delete_workflow", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_list_pending_payments", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_list_processed_payments", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_pay", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_offset", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_list_advance_issues", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_export_advance_issues", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_issue_advance", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_batch_offset", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_list_advance_offset_records", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_routers_payment_py", "to": "routers_payment_list_reimburse_offset_records", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "routers_payment_list_pending_payments", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_pending_payments", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_pending_payments", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_processed_payments", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_processed_payments", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_processed_payments", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_pay", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_offset", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_advance_issues", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_advance_issues", "to": "schemas_common_pageddata", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_advance_issues", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_export_advance_issues", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_issue_advance", "to": "services_advance_issue", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_issue_advance", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_batch_offset", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_advance_offset_records", "to": "schemas_advance_advanceoffsetrecordout", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_advance_offset_records", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_reimburse_offset_records", "to": "schemas_reimburse_reimburseoffsetrecordout", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "routers_payment_list_reimburse_offset_records", "to": "schemas_common_apiresponse", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_core_deps_py", "to": "core_deps_get_current_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_core_deps_py", "to": "core_deps_require_roles", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_core_deps_py", "to": "core_deps_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_deps_get_current_user", "to": "core_security_decode_access_token", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "core_deps_require_roles", "to": "core_deps_rationale_46", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_deps_rationale_1", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "core_deps_rationale_46", "to": "models_user_user", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_core_security_py", "to": "core_security_hash_password", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_core_security_py", "to": "core_security_verify_password", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_core_security_py", "to": "core_security_create_access_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_core_security_py", "to": "core_security_decode_access_token", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_core_security_py", "to": "core_security_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "core_security_hash_password", "to": "services_user_create", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "core_security_hash_password", "to": "services_user_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "core_security_verify_password", "to": "services_user_authenticate", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "core_security_create_access_token", "to": "services_base_update", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_utils_codegen_py", "to": "utils_codegen_generate_apply_code", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_utils_codegen_py", "to": "utils_codegen_generate_title", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_utils_codegen_py", "to": "utils_codegen_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_codegen_generate_apply_code", "to": "utils_codegen_rationale_9", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "utils_codegen_generate_apply_code", "to": "services_reimburse_submit", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "utils_codegen_generate_apply_code", "to": "services_advance_submit", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "utils_codegen_generate_title", "to": "services_reimburse_create_with_details", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_user_py", "to": "models_user_roleuser", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_user_py", "to": "models_user_user", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_user_roleuser", "to": "base", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_user_roleuser", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_user_roleuser", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "base", "to": "models_reimburse_reimburseapproval", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base", "to": "models_reimburse_reimburseoffset", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base", "to": "models_menu_menurole", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base", "to": "models_attachment_attachment", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base", "to": "models_advance_advanceapproval", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "base", "to": "models_base_basemodel", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_user_user", "to": "softdeletemixin", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_user_user", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_user_user", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_user_user", "to": "services_user_userservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_user_user", "to": "services_role_roleservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "softdeletemixin", "to": "models_reimburse_reimburseapply", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "softdeletemixin", "to": "models_reimburse_reimbursedetail", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "softdeletemixin", "to": "models_expense_item_expenseitem", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "softdeletemixin", "to": "models_role_role", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "softdeletemixin", "to": "models_menu_menu", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "softdeletemixin", "to": "models_attachment_attachment", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "softdeletemixin", "to": "models_advance_advanceapply", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "softdeletemixin", "to": "models_workflow_workflowdef", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_reimburse_py", "to": "models_reimburse_reimburseapply", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_reimburse_py", "to": "models_reimburse_reimbursedetail", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_reimburse_py", "to": "models_reimburse_reimburseapproval", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_reimburse_py", "to": "models_reimburse_reimburseoffset", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_reimburse_reimburseapply", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapply", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapply", "to": "services_reimburse_reimburseservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapply", "to": "services_reimburse_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapply", "to": "services_reimburse_create_with_details", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimbursedetail", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimbursedetail", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimbursedetail", "to": "services_reimburse_reimburseservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimbursedetail", "to": "services_reimburse_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimbursedetail", "to": "services_reimburse_create_with_details", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimbursedetail", "to": "services_reimburse_update_with_details", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapproval", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapproval", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapproval", "to": "services_reimburse_reimburseservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapproval", "to": "services_reimburse_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapproval", "to": "services_reimburse_approve", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseapproval", "to": "services_reimburse_reject", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseoffset", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseoffset", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseoffset", "to": "services_reimburse_reimburseservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseoffset", "to": "services_reimburse_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseoffset", "to": "services_reimburse_offset", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_reimburse_reimburseoffset", "to": "services_reimburse_batch_offset", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_expense_item_py", "to": "models_expense_item_expenseitem", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_expense_item_expenseitem", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_expense_item_expenseitem", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_expense_item_expenseitem", "to": "services_expense_item_expenseitemservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_role_py", "to": "models_role_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_role_role", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_role_role", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_role_role", "to": "services_user_userservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_role_role", "to": "services_role_roleservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_role_role", "to": "services_menu_menuservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_menu_py", "to": "models_menu_menurole", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_menu_py", "to": "models_menu_menu", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_menu_menurole", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_menu_menurole", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_menu_menu", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_menu_menu", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_menu_menu", "to": "services_role_roleservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_menu_menu", "to": "services_menu_menuservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_attachment_py", "to": "models_attachment_attachment", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_attachment_attachment", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_attachment_attachment", "to": "services_attachment_attachmentservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_attachment_attachment", "to": "services_attachment_rationale_44", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_advance_py", "to": "models_advance_advanceapply", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_advance_py", "to": "models_advance_advanceapproval", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_advance_advanceapply", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapply", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapply", "to": "services_advance_advanceservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapply", "to": "services_advance_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapproval", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapproval", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapproval", "to": "services_advance_advanceservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapproval", "to": "services_advance_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapproval", "to": "services_advance_approve", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_advance_advanceapproval", "to": "services_advance_reject", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_workflow_py", "to": "models_workflow_workflowdef", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_workflow_py", "to": "models_workflow_workflownode", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_workflow_workflowdef", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflowdef", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflowdef", "to": "services_reimburse_reimburseservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflowdef", "to": "services_reimburse_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflowdef", "to": "services_advance_advanceservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflowdef", "to": "services_advance_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflowdef", "to": "services_workflow_workflowservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "models_base_basemodel", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "models_base_softdeletemixin", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "services_reimburse_reimburseservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "services_reimburse_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "services_advance_advanceservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "services_advance_rationale_36", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "services_workflow_workflowservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_workflow_workflownode", "to": "services_workflow_save_nodes", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_models_base_py", "to": "models_base_basemodel", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_base_py", "to": "models_base_softdeletemixin", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_models_base_py", "to": "models_base_rationale_1", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_base_basemodel", "to": "models_base_rationale_11", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "models_base_basemodel", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "models_base_softdeletemixin", "to": "models_base_rationale_26", "label": "rationale_for", "title": "rationale_for [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_usercreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_userupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_rolebrief", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_userout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_extract_roles", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_userlogin", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_userbriefout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_user_py", "to": "schemas_user_userlistout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "schemas_user_userout", "to": "schemas_user_userlistout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimbursedetailcreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimbursedetailout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimburseapplycreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_details_must_not_be_empty", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimburseapplyupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimburseapplyout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimburseapprovalcreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimburseapprovalout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_paymentrequest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_offsetrequest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_payrequest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_offsetitem", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_batchoffsetrequest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_reimburse_py", "to": "schemas_reimburse_reimburseoffsetrecordout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_expense_item_py", "to": "schemas_expense_item_expenseitemcreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_expense_item_py", "to": "schemas_expense_item_expenseitemupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_expense_item_py", "to": "schemas_expense_item_expenseitemout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_expense_item_py", "to": "schemas_expense_item_expenseitemtreeout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "schemas_expense_item_expenseitemout", "to": "schemas_expense_item_expenseitemtreeout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_role_py", "to": "schemas_role_rolecreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_role_py", "to": "schemas_role_roleupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_role_py", "to": "schemas_role_roleout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_menu_py", "to": "schemas_menu_menucreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_menu_py", "to": "schemas_menu_menuupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_menu_py", "to": "schemas_menu_menuout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_menu_py", "to": "schemas_menu_menutreeout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "schemas_menu_menuout", "to": "schemas_menu_menutreeout", "label": "inherits", "title": "inherits [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "schemas_menu_menuout", "to": "services_menu_menuservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_schemas_attachment_py", "to": "schemas_attachment_attachmentout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_attachment_py", "to": "schemas_attachment_attachmentuploadresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceapplycreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceapplyupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceapplyout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceapprovalcreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceapprovalout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceissueout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceissuerequest", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_advance_py", "to": "schemas_advance_advanceoffsetrecordout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_common_py", "to": "schemas_common_dt_to_str", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_common_py", "to": "schemas_common_pagedquery", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_common_py", "to": "schemas_common_apiresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_common_py", "to": "schemas_common_pageddata", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_common_py", "to": "schemas_common_pagedresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_common_py", "to": "schemas_common_tokenresponse", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_workflow_py", "to": "schemas_workflow_workflownodecreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_workflow_py", "to": "schemas_workflow_workflownodeupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_workflow_py", "to": "schemas_workflow_workflownodeout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_workflow_py", "to": "schemas_workflow_workflowdefcreate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_workflow_py", "to": "schemas_workflow_workflowdefupdate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_schemas_workflow_py", "to": "schemas_workflow_workflowdefout", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_userservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_authenticate", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_user_py", "to": "services_user_get_user_roles", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_user_userservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_reimburseservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_pending_approval", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_approved_by_me", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_submit", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_approve", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_reject", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_pay", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_offset", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_batch_offset", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_get_approvals", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_create_with_details", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_update_with_details", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_reimburse_py", "to": "services_reimburse_get_details", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_reimburse_reimburseservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "services_reimburse_update", "to": "services_reimburse_update_with_details", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_reimburse_pending_approval", "to": "services_reimburse_offset", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_reimburse_approved_by_me", "to": "services_reimburse_offset", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_reimburse_offset", "to": "services_advance_pending_approval", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "services_reimburse_offset", "to": "services_advance_approved_by_me", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "services_reimburse_offset", "to": "services_base_get_paged", "label": "calls", "title": "calls [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "services_reimburse_rationale_36", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_expenseitemservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_get_item_tree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_expense_item_py", "to": "services_expense_item_build_tree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_expense_item_expenseitemservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "services_expense_item_get_item_tree", "to": "services_expense_item_build_tree", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_roleservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_get_users_by_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_assign_users", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_role_py", "to": "services_role_assign_menus", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_role_roleservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_menuservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_get_menu_tree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_get_menus_by_role", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_menu_py", "to": "services_menu_get_user_menu_tree", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_menu_menuservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_attachmentservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_get_by_biz", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_attachment_py", "to": "services_attachment_bind_biz", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_attachment_attachmentservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "services_attachment_update", "to": "services_attachment_bind_biz", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_attachment_rationale_44", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_advanceservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_pending_approval", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_approved_by_me", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_submit", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_approve", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_reject", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_issue", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_advance_py", "to": "services_advance_get_approvals", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_advance_advanceservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "services_advance_rationale_36", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_workflowservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_get_by_biz_type", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_workflow_py", "to": "services_workflow_save_nodes", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_workflow_workflowservice", "to": "services_base_crudservice", "label": "uses", "title": "uses [INFERRED]", "dashes": true, "width": 1, "color": {"opacity": 0.35}, "confidence": "INFERRED"}, {"from": "bx_backend_app_services_base_py", "to": "services_base_crudservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_base_py", "to": "services_base_get_by_id", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_base_py", "to": "services_base_get_paged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_base_py", "to": "services_base_create", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_base_py", "to": "services_base_update", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_base_py", "to": "services_base_soft_delete", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_minio_py", "to": "services_minio_minioservice", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_minio_py", "to": "services_minio_get_client", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_minio_py", "to": "services_minio_upload_file", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_minio_py", "to": "services_minio_download_file", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_backend_app_services_minio_py", "to": "services_minio_get_presigned_url", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_minio_get_client", "to": "services_minio_upload_file", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_minio_get_client", "to": "services_minio_download_file", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "services_minio_get_client", "to": "services_minio_get_presigned_url", "label": "calls", "title": "calls [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_app_vue", "to": "bx_web_src_main_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_hooks_usepagedtable_ts", "to": "hooks_usepagedtable_usepagedtable", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_hooks_useserverpaged_ts", "to": "hooks_useserverpaged_useserverpaged", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_loginpage_vue", "to": "bx_web_src_router_index_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_mainlayout_vue", "to": "views_mainlayout_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_mainlayout_vue", "to": "bx_web_src_router_index_ts", "label": "imports_from", "title": "imports_from [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_pages_advanceapplypage_vue", "to": "pages_advanceapplypage_if", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_pages_menumanagepage_vue", "to": "pages_menumanagepage_expandrecursive", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_pages_menumanagepage_vue", "to": "pages_menumanagepage_collapserecursive", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_pages_wfreimbursepage_vue", "to": "pages_wfreimbursepage_submitaddnode", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}, {"from": "bx_web_src_views_pages_wfadvancepage_vue", "to": "pages_wfadvancepage_submitaddnode", "label": "contains", "title": "contains [EXTRACTED]", "dashes": false, "width": 2, "color": {"opacity": 0.7}, "confidence": "EXTRACTED"}];
- const LEGEND = [{"cid": 0, "color": "#4E79A7", "label": "Community 0", "count": 92}, {"cid": 1, "color": "#F28E2B", "label": "Community 1", "count": 59}, {"cid": 2, "color": "#E15759", "label": "Community 2", "count": 42}, {"cid": 3, "color": "#76B7B2", "label": "Community 3", "count": 41}, {"cid": 4, "color": "#59A14F", "label": "Community 4", "count": 28}, {"cid": 5, "color": "#EDC948", "label": "Community 5", "count": 27}, {"cid": 6, "color": "#B07AA1", "label": "Community 6", "count": 16}, {"cid": 7, "color": "#FF9DA7", "label": "Community 7", "count": 12}, {"cid": 8, "color": "#9C755F", "label": "Community 8", "count": 11}, {"cid": 9, "color": "#BAB0AC", "label": "Community 9", "count": 10}, {"cid": 10, "color": "#4E79A7", "label": "Community 10", "count": 9}, {"cid": 11, "color": "#F28E2B", "label": "Community 11", "count": 8}, {"cid": 12, "color": "#E15759", "label": "Community 12", "count": 8}, {"cid": 13, "color": "#76B7B2", "label": "Community 13", "count": 5}, {"cid": 14, "color": "#59A14F", "label": "Community 14", "count": 4}, {"cid": 15, "color": "#EDC948", "label": "Community 15", "count": 4}, {"cid": 16, "color": "#B07AA1", "label": "Community 16", "count": 3}, {"cid": 17, "color": "#FF9DA7", "label": "Community 17", "count": 3}, {"cid": 18, "color": "#9C755F", "label": "Community 18", "count": 3}, {"cid": 19, "color": "#BAB0AC", "label": "Community 19", "count": 3}, {"cid": 20, "color": "#4E79A7", "label": "Community 20", "count": 2}, {"cid": 21, "color": "#F28E2B", "label": "Community 21", "count": 2}, {"cid": 22, "color": "#E15759", "label": "Community 22", "count": 2}, {"cid": 23, "color": "#76B7B2", "label": "Community 23", "count": 2}, {"cid": 24, "color": "#59A14F", "label": "Community 24", "count": 2}, {"cid": 25, "color": "#EDC948", "label": "Community 25", "count": 2}, {"cid": 26, "color": "#B07AA1", "label": "Community 26", "count": 2}, {"cid": 27, "color": "#FF9DA7", "label": "Community 27", "count": 2}, {"cid": 28, "color": "#9C755F", "label": "Community 28", "count": 2}, {"cid": 29, "color": "#BAB0AC", "label": "Community 29", "count": 2}, {"cid": 30, "color": "#4E79A7", "label": "Community 30", "count": 2}, {"cid": 31, "color": "#F28E2B", "label": "Community 31", "count": 2}, {"cid": 32, "color": "#E15759", "label": "Community 32", "count": 2}, {"cid": 33, "color": "#76B7B2", "label": "Community 33", "count": 2}, {"cid": 34, "color": "#59A14F", "label": "Community 34", "count": 2}, {"cid": 35, "color": "#EDC948", "label": "Community 35", "count": 2}, {"cid": 36, "color": "#B07AA1", "label": "Community 36", "count": 1}, {"cid": 37, "color": "#FF9DA7", "label": "Community 37", "count": 1}, {"cid": 38, "color": "#9C755F", "label": "Community 38", "count": 1}, {"cid": 39, "color": "#BAB0AC", "label": "Community 39", "count": 1}, {"cid": 40, "color": "#4E79A7", "label": "Community 40", "count": 1}, {"cid": 41, "color": "#F28E2B", "label": "Community 41", "count": 1}, {"cid": 42, "color": "#E15759", "label": "Community 42", "count": 1}, {"cid": 43, "color": "#76B7B2", "label": "Community 43", "count": 1}, {"cid": 44, "color": "#59A14F", "label": "Community 44", "count": 1}, {"cid": 45, "color": "#EDC948", "label": "Community 45", "count": 1}, {"cid": 46, "color": "#B07AA1", "label": "Community 46", "count": 1}, {"cid": 47, "color": "#FF9DA7", "label": "Community 47", "count": 1}, {"cid": 48, "color": "#9C755F", "label": "Community 48", "count": 1}, {"cid": 49, "color": "#BAB0AC", "label": "Community 49", "count": 1}, {"cid": 50, "color": "#4E79A7", "label": "Community 50", "count": 1}, {"cid": 51, "color": "#F28E2B", "label": "Community 51", "count": 1}, {"cid": 52, "color": "#E15759", "label": "Community 52", "count": 1}, {"cid": 53, "color": "#76B7B2", "label": "Community 53", "count": 1}, {"cid": 54, "color": "#59A14F", "label": "Community 54", "count": 1}, {"cid": 55, "color": "#EDC948", "label": "Community 55", "count": 1}, {"cid": 56, "color": "#B07AA1", "label": "Community 56", "count": 1}, {"cid": 57, "color": "#FF9DA7", "label": "Community 57", "count": 1}, {"cid": 58, "color": "#9C755F", "label": "Community 58", "count": 1}, {"cid": 59, "color": "#BAB0AC", "label": "Community 59", "count": 1}, {"cid": 60, "color": "#4E79A7", "label": "Community 60", "count": 1}, {"cid": 61, "color": "#F28E2B", "label": "Community 61", "count": 1}, {"cid": 62, "color": "#E15759", "label": "Community 62", "count": 1}, {"cid": 63, "color": "#76B7B2", "label": "Community 63", "count": 1}, {"cid": 64, "color": "#59A14F", "label": "Community 64", "count": 1}, {"cid": 65, "color": "#EDC948", "label": "Community 65", "count": 1}, {"cid": 66, "color": "#B07AA1", "label": "Community 66", "count": 1}, {"cid": 67, "color": "#FF9DA7", "label": "Community 67", "count": 1}, {"cid": 68, "color": "#9C755F", "label": "Community 68", "count": 1}, {"cid": 69, "color": "#BAB0AC", "label": "Community 69", "count": 1}, {"cid": 70, "color": "#4E79A7", "label": "Community 70", "count": 1}, {"cid": 71, "color": "#F28E2B", "label": "Community 71", "count": 1}, {"cid": 72, "color": "#E15759", "label": "Community 72", "count": 1}, {"cid": 73, "color": "#76B7B2", "label": "Community 73", "count": 1}, {"cid": 74, "color": "#59A14F", "label": "Community 74", "count": 1}, {"cid": 75, "color": "#EDC948", "label": "Community 75", "count": 1}, {"cid": 76, "color": "#B07AA1", "label": "Community 76", "count": 1}, {"cid": 77, "color": "#FF9DA7", "label": "Community 77", "count": 1}, {"cid": 78, "color": "#9C755F", "label": "Community 78", "count": 1}, {"cid": 79, "color": "#BAB0AC", "label": "Community 79", "count": 1}, {"cid": 80, "color": "#4E79A7", "label": "Community 80", "count": 1}, {"cid": 81, "color": "#F28E2B", "label": "Community 81", "count": 1}, {"cid": 82, "color": "#E15759", "label": "Community 82", "count": 1}, {"cid": 83, "color": "#76B7B2", "label": "Community 83", "count": 1}, {"cid": 84, "color": "#59A14F", "label": "Community 84", "count": 1}, {"cid": 85, "color": "#EDC948", "label": "Community 85", "count": 1}, {"cid": 86, "color": "#B07AA1", "label": "Community 86", "count": 1}, {"cid": 87, "color": "#FF9DA7", "label": "Community 87", "count": 1}, {"cid": 88, "color": "#9C755F", "label": "Community 88", "count": 1}, {"cid": 89, "color": "#BAB0AC", "label": "Community 89", "count": 1}, {"cid": 90, "color": "#4E79A7", "label": "Community 90", "count": 1}, {"cid": 91, "color": "#F28E2B", "label": "Community 91", "count": 1}, {"cid": 92, "color": "#E15759", "label": "Community 92", "count": 1}, {"cid": 93, "color": "#76B7B2", "label": "Community 93", "count": 1}, {"cid": 94, "color": "#59A14F", "label": "Community 94", "count": 1}, {"cid": 95, "color": "#EDC948", "label": "Community 95", "count": 1}, {"cid": 96, "color": "#B07AA1", "label": "Community 96", "count": 1}];
- // HTML-escape helper — prevents XSS when injecting graph data into innerHTML
- function esc(s) {
- return String(s).replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"').replace(/'/g,''');
- }
- // Build vis datasets
- const nodesDS = new vis.DataSet(RAW_NODES.map(n => ({
- id: n.id, label: n.label, color: n.color, size: n.size,
- font: n.font, title: n.title,
- _community: n.community, _community_name: n.community_name,
- _source_file: n.source_file, _file_type: n.file_type, _degree: n.degree,
- })));
- const edgesDS = new vis.DataSet(RAW_EDGES.map((e, i) => ({
- id: i, from: e.from, to: e.to,
- label: '',
- title: e.title,
- dashes: e.dashes,
- width: e.width,
- color: e.color,
- arrows: { to: { enabled: true, scaleFactor: 0.5 } },
- })));
- const container = document.getElementById('graph');
- const network = new vis.Network(container, { nodes: nodesDS, edges: edgesDS }, {
- physics: {
- enabled: true,
- solver: 'forceAtlas2Based',
- forceAtlas2Based: {
- gravitationalConstant: -60,
- centralGravity: 0.005,
- springLength: 120,
- springConstant: 0.08,
- damping: 0.4,
- avoidOverlap: 0.8,
- },
- stabilization: { iterations: 200, fit: true },
- },
- interaction: {
- hover: true,
- tooltipDelay: 100,
- hideEdgesOnDrag: true,
- navigationButtons: false,
- keyboard: false,
- },
- nodes: { shape: 'dot', borderWidth: 1.5 },
- edges: { smooth: { type: 'continuous', roundness: 0.2 }, selectionWidth: 3 },
- });
- network.once('stabilizationIterationsDone', () => {
- network.setOptions({ physics: { enabled: false } });
- });
- function showInfo(nodeId) {
- const n = nodesDS.get(nodeId);
- if (!n) return;
- const neighborIds = network.getConnectedNodes(nodeId);
- const neighborItems = neighborIds.map(nid => {
- const nb = nodesDS.get(nid);
- const color = nb ? nb.color.background : '#555';
- return `<span class="neighbor-link" style="border-left-color:${esc(color)}" onclick="focusNode(${JSON.stringify(nid)})">${esc(nb ? nb.label : nid)}</span>`;
- }).join('');
- document.getElementById('info-content').innerHTML = `
- <div class="field"><b>${esc(n.label)}</b></div>
- <div class="field">Type: ${esc(n._file_type || 'unknown')}</div>
- <div class="field">Community: ${esc(n._community_name)}</div>
- <div class="field">Source: ${esc(n._source_file || '-')}</div>
- <div class="field">Degree: ${n._degree}</div>
- ${neighborIds.length ? `<div class="field" style="margin-top:8px;color:#aaa;font-size:11px">Neighbors (${neighborIds.length})</div><div id="neighbors-list">${neighborItems}</div>` : ''}
- `;
- }
- function focusNode(nodeId) {
- network.focus(nodeId, { scale: 1.4, animation: true });
- network.selectNodes([nodeId]);
- showInfo(nodeId);
- }
- // Track hovered node — hover detection is more reliable than click params
- let hoveredNodeId = null;
- network.on('hoverNode', params => {
- hoveredNodeId = params.node;
- container.style.cursor = 'pointer';
- });
- network.on('blurNode', () => {
- hoveredNodeId = null;
- container.style.cursor = 'default';
- });
- container.addEventListener('click', () => {
- if (hoveredNodeId !== null) {
- showInfo(hoveredNodeId);
- network.selectNodes([hoveredNodeId]);
- }
- });
- network.on('click', params => {
- if (params.nodes.length > 0) {
- showInfo(params.nodes[0]);
- } else if (hoveredNodeId === null) {
- document.getElementById('info-content').innerHTML = '<span class="empty">Click a node to inspect it</span>';
- }
- });
- const searchInput = document.getElementById('search');
- const searchResults = document.getElementById('search-results');
- searchInput.addEventListener('input', () => {
- const q = searchInput.value.toLowerCase().trim();
- searchResults.innerHTML = '';
- if (!q) { searchResults.style.display = 'none'; return; }
- const matches = RAW_NODES.filter(n => n.label.toLowerCase().includes(q)).slice(0, 20);
- if (!matches.length) { searchResults.style.display = 'none'; return; }
- searchResults.style.display = 'block';
- matches.forEach(n => {
- const el = document.createElement('div');
- el.className = 'search-item';
- el.textContent = n.label;
- el.style.borderLeft = `3px solid ${n.color.background}`;
- el.style.paddingLeft = '8px';
- el.onclick = () => {
- network.focus(n.id, { scale: 1.5, animation: true });
- network.selectNodes([n.id]);
- showInfo(n.id);
- searchResults.style.display = 'none';
- searchInput.value = '';
- };
- searchResults.appendChild(el);
- });
- });
- document.addEventListener('click', e => {
- if (!searchResults.contains(e.target) && e.target !== searchInput)
- searchResults.style.display = 'none';
- });
- const hiddenCommunities = new Set();
- function toggleAllCommunities(hide) {
- document.querySelectorAll('.legend-item').forEach(item => {
- hide ? item.classList.add('dimmed') : item.classList.remove('dimmed');
- });
- LEGEND.forEach(c => {
- if (hide) hiddenCommunities.add(c.cid); else hiddenCommunities.delete(c.cid);
- });
- const updates = RAW_NODES.map(n => ({ id: n.id, hidden: hide }));
- nodesDS.update(updates);
- }
- const legendEl = document.getElementById('legend');
- LEGEND.forEach(c => {
- const item = document.createElement('div');
- item.className = 'legend-item';
- item.innerHTML = `<div class="legend-dot" style="background:${c.color}"></div>
- <span class="legend-label">${c.label}</span>
- <span class="legend-count">${c.count}</span>`;
- item.onclick = () => {
- if (hiddenCommunities.has(c.cid)) {
- hiddenCommunities.delete(c.cid);
- item.classList.remove('dimmed');
- } else {
- hiddenCommunities.add(c.cid);
- item.classList.add('dimmed');
- }
- const updates = RAW_NODES
- .filter(n => n.community === c.cid)
- .map(n => ({ id: n.id, hidden: hiddenCommunities.has(c.cid) }));
- nodesDS.update(updates);
- };
- legendEl.appendChild(item);
- });
- </script>
- <script>
- // Render hyperedges as shaded regions
- const hyperedges = [];
- // afterDrawing passes ctx already transformed to network coordinate space.
- // Draw node positions raw — no manual pan/zoom/DPR math needed.
- network.on('afterDrawing', function(ctx) {
- hyperedges.forEach(h => {
- const positions = h.nodes
- .map(nid => network.getPositions([nid])[nid])
- .filter(p => p !== undefined);
- if (positions.length < 2) return;
- ctx.save();
- ctx.globalAlpha = 0.12;
- ctx.fillStyle = '#6366f1';
- ctx.strokeStyle = '#6366f1';
- ctx.lineWidth = 2;
- ctx.beginPath();
- // Centroid and expanded hull in network coordinates
- const cx = positions.reduce((s, p) => s + p.x, 0) / positions.length;
- const cy = positions.reduce((s, p) => s + p.y, 0) / positions.length;
- const expanded = positions.map(p => ({
- x: cx + (p.x - cx) * 1.15,
- y: cy + (p.y - cy) * 1.15
- }));
- ctx.moveTo(expanded[0].x, expanded[0].y);
- expanded.slice(1).forEach(p => ctx.lineTo(p.x, p.y));
- ctx.closePath();
- ctx.fill();
- ctx.globalAlpha = 0.4;
- ctx.stroke();
- // Label
- ctx.globalAlpha = 0.8;
- ctx.fillStyle = '#4f46e5';
- ctx.font = 'bold 11px sans-serif';
- ctx.textAlign = 'center';
- ctx.fillText(h.label, cx, cy - 5);
- ctx.restore();
- });
- });
- </script>
- </body>
- </html>
|