{"analyzer":{"code_digest":"edbace27f90336e94afe0f85404ebc4cada570f8e23fa18000d21312a072a2ae","name":"archkeel-dart-analyzer","version":"0.74.0"},"bindings":[],"calls":[["DARTCALL-0824ce67f9946eae","FACT","source","call","Text('${order.id}: ${order.totalCents} ct')",["$79"],["EVD-db7dde589628fd1e"],[],[],[],[0,false,"$m","Text('${order.id}: ${order.totalCents} ct')","$80","$12","$42","$76","$79","$81",[]]],["DARTCALL-0834a277eafb1c40","FACT","source","call","Order(id, List.unmodifiable(lines))",["$62"],["EVD-ada09eed9250401f"],[],[],[],[1,false,{"candidates_truncated":false,"reason":"$0","status":"resolved","targets":["$60"]},"Order(id, List.unmodifiable(lines))","$1","$6","$37","$59","$62","resolved",["$60"]]],["DARTCALL-0c1c1e8e4ad50641","FACT","source","call","http.Client()",["$48"],["EVD-a909c3af2e129e07"],[],[],[],[0,false,"$m","http.Client()","$80","DARTDEF-c55182f84e9c08ed","$35","$47","$48","$81",[]]],["DARTCALL-144b079820ca4b1d","FACT","source","call",".cast<Map<String, dynamic>>()",["$52"],["EVD-0ce83760bdc622bd"],[],[],[],[0,false,"$m",".cast<Map<String, dynamic>>()","$80","$5","$36","$49","$52","$81",[]]],["DARTCALL-1830e7cf89117b99","FACT","source","call","_base.resolve('orders/${order.id}')",["$56"],["EVD-93f9c9dc9e0aeb36"],[],[],[],[0,false,"$m","_base.resolve('orders/${order.id}')","$80","$4","$36","$49","$56","$81",[]]],["DARTCALL-277c6e5e0f7d8479","FACT","source","call","IOClient(HttpClient()..connectionTimeout = const Duration(seconds:10))",["$46"],["EVD-e3ec41d1a6249b47"],[],[],[],[0,false,"$m","IOClient(HttpClient()..connectionTimeout = const Duration(seconds:10))","$80","$9","$34","$45","$46","$81",[]]],["DARTCALL-2baf6176440b2fa9","FACT","source","call","runApp(MaterialApp(home:order_page.OrderPage(repository:HttpOrderRepository.remote())))",["shop.main.main"],["EVD-d00023d047050770"],[],[],[],[0,false,"$m","runApp(MaterialApp(home:order_page.OrderPage(repository:HttpOrderRepository.remote())))","$80","$8","$39","shop.main","shop.main.main","$81",[]]],["DARTCALL-2bfb94c702bd0161","FACT","source","call",".initState()",["$75"],["EVD-b33a1fb6609cb8bb"],[],[],[],[1,false,"$m",".initState()","$1","$2","$41","$69","$75","resolved",["$75"]]],["DARTCALL-394a95e742869778","FACT","source","call","$82",["$75"],["EVD-cdf3c3ce8f747f9b"],[],[],[],[0,false,"$m","$82","$80","$2","$41","$69","$75","$81",[]]],["DARTCALL-45c7706a3fd13fb0","FACT","source","call","setState(() => _orders = orders)",["$75"],["EVD-c167bc8883cfd281"],[],[],[],[0,false,"$m","setState(() => _orders = orders)","$80","$2","$41","$69","$75","$81",[]]],["DARTCALL-532cffc81f2baa6f","FACT","source","call","const Duration(seconds:10)",["$46"],["EVD-67c0e7217aa3610d"],[],[],[],[0,false,{"candidates_truncated":false,"reason":"no source class binding","status":"$81","targets":[]},"const Duration(seconds:10)","$80","$9","$34","$45","$46","$81",[]]],["DARTCALL-5d45ddecf5e7dba5","FACT","source","call","createClient()",["$51"],["EVD-c9c45f403ab2210a"],[],[],[],[0,false,"$m","createClient()","$80","$11","$36","$49","$51","$81",[]]],["DARTCALL-5d77251b1d3bff1e","FACT","source","call","lines.fold(0,(sum, line) => sum + line.quantity * line.unitCents)",["$61"],["EVD-e200f54db6fee516"],[],[],[],[0,false,"$m","lines.fold(0,(sum, line) => sum + line.quantity * line.unitCents)","$80","$7","$37","$59","$61","$81",[]]],["DARTCALL-61de08a40bace859","FACT","source","call","$22",["$51"],["EVD-6435798aedc6910a"],[],[],[],[0,false,"$m","$22","$80","$11","$36","$49","$51","$81",[]]],["DARTCALL-6604203d7445edcf","FACT","source","call","OrderLine(line['description'] as String, line['quantity'] as int, line['unit_cents'] as int)",["$52"],["EVD-de9d13b1ae87324d"],[],[],[],[0,false,"$m","OrderLine(line['description'] as String, line['quantity'] as int, line['unit_cents'] as int)","$80","$5","$36","$49","$52","$81",[]]],["DARTCALL-69f1bc17c9fc3754","FACT","source","call","_base.resolve('customers/$customerId/orders')",["$53"],["EVD-9f40ca4cf6d5b191"],[],[],[],[0,false,"$m","_base.resolve('customers/$customerId/orders')","$80","$3","$36","$49","$53","$81",[]]],["DARTCALL-6b9e7fb777c119f3","FACT","source","call",".cast<Map<String, dynamic>>()",["$53"],["EVD-b553bcfe581ce81a"],[],[],[],[0,false,"$m",".cast<Map<String, dynamic>>()","$80","$3","$36","$49","$53","$81",[]]],["DARTCALL-7ea9f9eac396c29c","FACT","source","call","_order(item)",["$53"],["EVD-77987afcc9303a8d"],[],[],[],[0,false,"$m","_order(item)","$80","$3","$36","$49","$53","$81",[]]],["DARTCALL-8c8ba08d380bdecb","FACT","source","call","Uri.parse('https://shop.example/api/')",["$51"],["EVD-c6c346d08177a7a5"],[],[],[],[0,false,"$m","Uri.parse('https://shop.example/api/')","$80","$11","$36","$49","$51","$81",[]]],["DARTCALL-8e3b75e308ad3d3f","FACT","source","call","order_page.loadLibrary()",["shop.main.main"],["EVD-ae431e060fe59421"],[],[],[],[0,false,"$m","order_page.loadLibrary()","$80","$8","$39","shop.main","shop.main.main","$81",[]]],["DARTCALL-a1fce58a838e2175","FACT","source","call","List.unmodifiable(lines)",["$62"],["EVD-29fdd726035dde3d"],[],[],[],[0,false,"$m","List.unmodifiable(lines)","$80","$6","$37","$59","$62","$81",[]]],["DARTCALL-aaa4f8b11b86f445","FACT","source","call","ListView(children:[for(final order in _orders) OrderTile(order:order)])",["$74"],["EVD-155daf692d3b8592"],[],[],[],[0,false,"$m","ListView(children:[for(final order in _orders) OrderTile(order:order)])","$80","$10","$41","$69","$74","$81",[]]],["DARTCALL-ae14be00e456c506","FACT","source","call","$32",["$52"],["EVD-20a11886fcac4bfa"],[],[],[],[0,false,"$m","$32","$80","$5","$36","$49","$52","$81",[]]],["DARTCALL-aed439fe0437dcc4","FACT","source","call","OrderTile(order:order)",["$74"],["EVD-78db4b92c4f55cb4"],[],[],[],[1,false,{"candidates_truncated":false,"reason":"$0","status":"resolved","targets":["$77"]},"OrderTile(order:order)","$1","$10","$41","$69","$74","resolved",["$77"]]],["DARTCALL-bbc94cd8c32e5804","FACT","source","call","_client.put(_base.resolve('orders/${order.id}'), body:jsonEncode({'id':order.id}))",["$56"],["EVD-01e86d839c4d45d4"],[],[],[],[0,false,"$m","_client.put(_base.resolve('orders/${order.id}'), body:jsonEncode({'id':order.id}))","$80","$4","$36","$49","$56","$81",[]]],["DARTCALL-c9373b6202748a82","FACT","source","call","jsonDecode(response.body)",["$53"],["EVD-e1e33321a42f6d46"],[],[],[],[0,false,"$m","jsonDecode(response.body)","$80","$3","$36","$49","$53","$81",[]]],["DARTCALL-d4a98734e3d2d373","FACT","source","call","MaterialApp(home:order_page.OrderPage(repository:HttpOrderRepository.remote()))",["shop.main.main"],["EVD-afade4c7a5273bce"],[],[],[],[0,false,"$m","MaterialApp(home:order_page.OrderPage(repository:HttpOrderRepository.remote()))","$80","$8","$39","shop.main","shop.main.main","$81",[]]],["DARTCALL-d89753e3b21fb8d2","FACT","source","call","jsonEncode({'id':order.id})",["$56"],["EVD-286b746edada2dc8"],[],[],[],[0,false,"$m","jsonEncode({'id':order.id})","$80","$4","$36","$49","$56","$81",[]]],["DARTCALL-d92abe2ddfb7b6ac","FACT","source","call","_client.get(_base.resolve('customers/$customerId/orders'))",["$53"],["EVD-c0d04009674c48a5"],[],[],[],[0,false,"$m","_client.get(_base.resolve('customers/$customerId/orders'))","$80","$3","$36","$49","$53","$81",[]]],["DARTCALL-e0ce6b2292df8052","FACT","source","call","order_page.OrderPage(repository:HttpOrderRepository.remote())",["shop.main.main"],["EVD-6ee300ce676c67c3"],[],[],[],[1,false,{"candidates_truncated":false,"reason":"$0","status":"resolved","targets":["$70"]},"order_page.OrderPage(repository:HttpOrderRepository.remote())","$1","$8","$39","shop.main","shop.main.main","resolved",["$70"]]],["DARTCALL-e2604cd018d433fa","FACT","source","call","HttpClient()",["$46"],["EVD-e2e361facf4b1302"],[],[],[],[0,false,"$m","HttpClient()","$80","$9","$34","$45","$46","$81",[]]],["DARTCALL-ed50de1a19121020","FACT","source","call","_OrderPageState()",["$72"],["EVD-d2363979706c536d"],[],[],[],[1,false,{"candidates_truncated":false,"reason":"$0","status":"resolved","targets":["$73"]},"_OrderPageState()","$1","DARTDEF-e19f42e0d56392c5","$40","$69","$72","resolved",["$73"]]],["DARTCALL-f51e058bac6b7844","FACT","source","call","widget.repository.ordersOf('demo')",["$75"],["EVD-cdf3c3ce8f747f9b"],[],[],[],[0,false,"$m","widget.repository.ordersOf('demo')","$80","$2","$41","$69","$75","$81",[]]],["DARTCALL-f91be9b49625a9e4","FACT","source","call","HttpOrderRepository.remote()",["shop.main.main"],["EVD-d6d9d621a8edc57d"],[],[],[],[1,false,{"candidates_truncated":false,"reason":"factory construction does not prove a local instance target","status":"partially_resolved","targets":["$50"]},"HttpOrderRepository.remote()","$1","$8","$39","shop.main","shop.main.main","resolved",["$50"]]]],"constructs":null,"context_evidence":[],"contexts":[],"contract":{"digest":"8db24706687c01e08b15bc562b2d9be402e3d4195b726dbcf7acee3cb8851e4e","path":"architecture-contract.json","schema_version":"2.1.0"},"coverage":{"ast_coverage_percent":100.0,"call_resolution_percent":17.65,"calls_analyzed":34,"calls_partially_resolved":0,"calls_resolved":6,"calls_unresolved":28,"failures":[],"files_discovered":10,"files_parsed":10,"files_read":10,"rules":"PASS","status":"PASS"},"cycles":[],"declarations":[["ASSIGNMENT-COMPLETE","DECLARED_RULE","components","complete_assignment","Every module in shop belongs to one component",["shop"],[],[],[],["$33"],["$m","$m","architect","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","A library without one owning component escapes every boundary rule.","$m","$m","$m","$m","shop","$m"]],["COMP-APP","DECLARED_RULE","components","component_responsibility","app",["shop.main"],[],[],[],["$33"],["$m","$m","architect","$m","$m",["Order rules, persistence details and widget layout."],"$m","$m","$m","$m","$m","$m","$m","$m",[{"component":"data","decided_by":"architect","rationale":"The composition root chooses the repository implementation the screen is given.","through":[]},{"component":"presentation","decided_by":"architect","rationale":"The composition root starts the order screen.","through":[]}],["Composition root: wire the HTTP repository into the order screen and start the app."],"component","$m","$m","$m"]],["COMP-DATA","DECLARED_RULE","components","component_responsibility","data",["shop.data"],[],[],[],["$33"],["$m","$m","architect","$m","$m",["Widgets and order rules."],"$m","$m","$m","$m","$m",["$49"],"$m","$m",[{"component":"domain","decided_by":"architect","rationale":"The HTTP repository implements the domain's port and builds its entities.","through":[]}],["Load and save orders over HTTP."],"component","$m","$m","$m"]],["COMP-DOMAIN","DECLARED_RULE","components","component_responsibility","domain",["$57"],[],[],[],["$33"],["$m","$m","architect","$m","$m",["Widgets, platform I/O and any transport."],"$m","$m","$m","$m","$m",["$58","shop.domain.repository:OrderRepository"],"$m","$m",[],["Order entities and the repository port every implementation fulfils."],"component","$m","$m","$m"]],["COMP-PRESENTATION","DECLARED_RULE","components","component_responsibility","presentation",["$68"],[],[],[],["$33"],["$m","$m","architect","$m","$m",["HTTP, JSON and deciding what an order is."],"$m","$m","$m","$m","$m",["$69"],"$m","$m",[{"component":"domain","decided_by":"architect","rationale":"Widgets render the domain's orders and load them through its repository port.","through":[]}],["Pages and widgets that show orders."],"component","$m","$m","$m"]],["COMPONENT-NO-CYCLES","DECLARED_RULE","cycles","no_component_cycles","Component dependencies form no cycle",[],[],[],[],["$33"],["$m","$m","architect","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","Components stay layered so each one can be reviewed and replaced in dependency order.","$m","$m","$m","$m","$m","$m"]],["DATA-PLATFORMS-ISOLATED","DECLARED_RULE","dependency_violations","sibling_isolation","2 peers must not import each other",["$45","$47"],[],[],[],["$33"],["$m","$m","architect","$m","$m","$m",true,"$m","$m","$m","$m","$m","$m","The two platform clients are alternatives of one conditional import, so neither may depend on the other.","$m","$m","$m","$m","$m","$m"]],["DEP-DOMAIN-NO-DART-IO","DECLARED_RULE","dependency_violations","forbidden_dependency","shop.domain must not depend on dart.io",["dart.io","$57"],[],[],[],["$33"],["$m",[],"architect","$m","$m","$m",true,"$m","$m","$m","$m","$m","$m","The domain runs unchanged in a browser build, which has no dart:io.","$m","$m","$m","$m","$57","dart.io"]],["EXTERNAL-COMPLETE","DECLARED_RULE","dependencies","complete_external_scope","Every dependency shop imports is declared",["shop"],[],[],[],["$33"],["$m","$m","architect","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","A package no rule names is a package nobody chose; the dart: core libraries are the standard library and need no rule.","$m","$m","$m","$m","shop","$m"]],["EXTERNAL-FLUTTER-UI","DECLARED_RULE","dependency_violations","external_dependency_scope","flutter is allowed only in shop.main, shop.presentation",["flutter","shop.main","$68"],[],[],[],["$33"],["$m",["shop.main","$68"],"architect","flutter","$m","$m","$m","$m","$m","$m","$m","$m","$m","Only the entry point and the widgets know Flutter, so order rules stay testable without a widget tree.","$m","$m","$m","$m","$m","$m"]],["EXTERNAL-HTTP-DATA","DECLARED_RULE","dependency_violations","external_dependency_scope","http is allowed only in shop.data",["http","shop.data"],[],[],[],["$33"],["$m",["shop.data"],"architect","http","$m","$m","$m","$m","$m","$m","$m","$m","$m","Only the data layer speaks HTTP; everything else sees the repository port.","$m","$m","$m","$m","$m","$m"]],["INTERFACE-BOUNDARY","DECLARED_RULE","api_surface","interface_boundary","Cross-component imports must reach the target's declared public interface",[],[],[],[],["$33"],["$m","$m","architect","$m","$m","$m",true,"$m","$m","$m","$m","$m","$m","Components meet only at their declared libraries and names, so reaching past a facade requires a visible contract change.","$m","$m","$m","$m","$m","$m"]],["REQUIRES-COMPLETE","DECLARED_RULE","components","complete_requires","Every cross-component import is covered by the source's requires list",[],[],[],[],["$33"],["$m","$m","architect","$m","$m","$m",true,"$m","$m","$m","$m","$m","$m","A cross-component import nobody asked for is an accident, so each component names what it needs and absence refuses the rest.","$m","$m","$m","$m","$m","$m"]],["ROOT-LAYOUT","DECLARED_RULE","$43","root_layout","Immediate children below shop are explicitly allowed",["shop","shop.data","$57","shop.main","$68"],[],[],[],["$33"],[["shop.data","$57","shop.main","$68"],"$m","architect","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","lib/ holds only the entry point and the three declared layers.","$m","$m","$m","shop","$m","$m"]],["ARCHITECTURE-TARGET-a2e40c5592b1b06a","DECLARED_RULE","uml","architecture_target","Declared architecture target",[],[],[],[],["architecture-contract.json"],["$m","$m","$m","$m",["EXTERNAL-FLUTTER-UI","EXTERNAL-HTTP-DATA"],"$m","$m",[],["ROOT-LAYOUT"],[],["COMP-APP","COMP-PRESENTATION","COMP-DOMAIN","COMP-DATA"],"$m",[],"Existing declarations define graph intent; their rules retain evaluation ownership.","$m","$m","$m","$m","$m",{"entities":[],"relationships":[],"schema_version":"1.1.0","scopes":[]}]]],"dependency_edges":[["EDGE-026feb6a3c2ebdce","FACT","package_topology","package_dependency","shop.presentation → shop.domain",["$57","$68"],[],[],["DARTIMP-37f6da361b185e6c","DARTIMP-c9967bb3883bd5b7"],[],[false,2,"package",2,"$68",1,"$57",2,0]],["EDGE-0bdfaad2f898238e","FACT","$43","module_dependency","shop.presentation.order_tile → shop.domain.domain",["$58","$76"],[],[],["DARTIMP-37f6da361b185e6c"],[],[false,1,"module",1,"$76",2,"$58",3,0]],["EDGE-0f5989dbc086205f","FACT","$43","module_dependency","shop.data.http_order_repository → shop.domain.repository",["$49","$64"],[],[],["DARTIMP-bef82b199fdfbc9c"],[],[false,1,"module",1,"$49",1,"$64",4,0]],["EDGE-151acb9df8a6c2cf","FACT","$43","module_dependency","shop.data.http_order_repository → shop.data.client_stub",["$47","$49"],[],[],["DARTIMP-8082941fcb17ee05"],[],[false,1,"module",1,"$49",1,"$47",2,0]],["EDGE-2b85ebd9f0b1c254","FACT","package_topology","package_dependency","shop → shop.presentation",["shop","$68"],[],[],["DARTIMP-e5677714540eae6d"],[],[false,1,"package",1,"shop",0,"$68",1,0]],["EDGE-3270fff11ba5935a","FACT","$43","module_dependency","shop.main → shop.presentation.order_page",["shop.main","$69"],[],[],["DARTIMP-e5677714540eae6d"],[],[false,1,"module",1,"shop.main",0,"$69",1,0]],["EDGE-3c37e5f80ce3fac3","FACT","$43","module_dependency","shop.domain.domain → shop.domain.entities",["$58","$59"],[],[],["DARTIMP-639534653121391f","DARTIMP-b44a445ea1fc9517"],[],[false,2,"module",2,"$58",3,"$59",5,0]],["EDGE-4db289a18cd4d5da","FACT","$43","module_dependency","shop.main → shop.data.http_order_repository",["$49","shop.main"],[],[],["DARTIMP-ffcc6c7350a4ac68"],[],[false,1,"module",1,"shop.main",0,"$49",1,0]],["EDGE-5de58e592fe17945","FACT","$43","module_dependency","shop.presentation.order_page → shop.presentation.order_tile",["$69","$76"],[],[],["DARTIMP-d05a07b7ba69d5c0"],[],[false,1,"module",1,"$69",1,"$76",2,0]],["EDGE-78e87a40844cfe5e","FACT","package_topology","package_dependency","shop.data → shop.domain",["shop.data","$57"],[],[],["DARTIMP-bef82b199fdfbc9c","DARTIMP-c6374edab68a9ea7","DARTIMP-cc08bcaf9af1b8b4"],[],[false,3,"package",3,"shop.data",1,"$57",2,0]],["EDGE-7a07c279001c0469","FACT","$43","module_dependency","shop.presentation.order_page → shop.domain.domain",["$58","$69"],[],[],["DARTIMP-c9967bb3883bd5b7"],[],[false,1,"module",1,"$69",1,"$58",3,0]],["EDGE-81b3bbb870760a49","FACT","$43","module_dependency","shop.data.http_order_repository → shop.data.client_io",["$45","$49"],[],[],["DARTIMP-550ad3011c9d495f"],[],[false,1,"module",1,"$49",1,"$45",2,0]],["EDGE-8f82bd9940bb0c3d","FACT","$43","module_dependency","shop.data.http_order_repository → shop.domain.domain",["$49","$58"],[],[],["DARTIMP-c6374edab68a9ea7","DARTIMP-cc08bcaf9af1b8b4"],[],[false,2,"module",2,"$49",1,"$58",3,0]],["EDGE-996ccbf5869b0976","FACT","package_topology","package_dependency","shop → shop.data",["shop","shop.data"],[],[],["DARTIMP-ffcc6c7350a4ac68"],[],[false,1,"package",1,"shop",0,"shop.data",1,0]],["EDGE-a356209856922f82","FACT","$43","module_dependency","shop.domain.repository → shop.domain.entities",["$59","$64"],[],[],["DARTIMP-c735b08d5c9fdf12"],[],[false,1,"module",1,"$64",4,"$59",5,0]],["EDGE-fe2cc1033015c262","FACT","$43","module_dependency","shop.domain.domain → shop.domain.repository",["$58","$64"],[],[],["DARTIMP-bf86de6c35949d36"],[],[false,1,"module",1,"$58",3,"$64",4,0]]],"encoding":{"escaped_literal":"additional leading $","evidence_fields":["id","file","line","end_line","column","excerpt"],"kind":"architecture-ir-columnar-v1","record_fields":["id","evidence_class","area","kind","title","subjects","evidence_ids","rule_ids","fact_ids","provenance","data"],"section_data_fields":{"bindings":[],"calls":["candidate_count","candidates_truncated","construction","expression","reason","source_definition_id","source_file","source_module","source_scope","status","targets"],"constructs":[],"context_evidence":[],"contexts":[],"cycles":[],"declarations":["allowed_children","allowed_sources","decided_by","dependency","external_scope_ids","forbidden_responsibilities","include_type_checking","inside_levels","layout_rule_ids","module_target_ids","owner_ids","public","public_api_ids","rationale","requires","responsibilities","role","root","source","target"],"dependency_edges":["bidirectional","count","level","runtime_count","source","source_rank","target","target_rank","type_checking_count"],"imports":["binding","origin_definition","reexport","reexport_chain","relative_level","source_module","source_package","symbol","symbol_visibility","symbols_known","target_module","target_package","under_type_checking"],"metrics":["tab","value"],"modules":["all_exports","all_literal","compatibility_logic_free","fan_in","fan_out","file","package","qualified_name","rank","symbol_count"],"packages":["dependencies","fan_in","fan_out","module_count","qualified_name","rank"],"path_observations":[],"references":["candidate_count","candidates_truncated","expression","reason","source_definition_id","source_file","source_module","source_scope","status","targets","use"],"scope_observations":["component_id","coverage_complete","cycle_graph_components","cycle_scope_complete","cycle_scope_components","fan_out","files","module_count","modules","observed_module_count","outgoing_modules","outgoing_scopes","parent_id","scope","scope_module_counts","scopes"],"symbols":["accessor_kind","annotation","attribute_declarations","base_declarations","class_header_static","class_kind","decorators","definition_contexts","enum_members","initializer","lexical_parent_id","member_inventories","method_kind","mixin_capable","modifiers","module","name","overload_signature","package","parameters","parent","qualified_name","returns","signature_complete","source_binding_unique","source_file","source_member_binding_static","symbol_category","visibility_detail"],"transitive_paths":["level","path","source","target"],"typing_signals":[],"unknowns":[],"violations":[]},"string_reference":"$<index>"},"evidence":[["EVD-0008d07886df10ae","$37",16,16,15,"id"],["EVD-01e86d839c4d45d4","$36",32,32,10,"_client"],["EVD-01edc03c693170ff","$36",21,21,8,"Uri"],["EVD-0555b40a5a40e3f1","$36",32,32,59,"body"],["EVD-057939a650233098","$38",5,5,0,"import 'dart:async';"],["EVD-078505fe8b4ef86d","$40",16,16,8,"OrderPage"],["EVD-078fa01d92317cd6","$37",27,27,14,"String"],["EVD-082969782697bd28","$37",10,10,8,"int"],["EVD-096a3af93f5188c1","$41",8,8,14,"_orders = const []"],["EVD-09fa6864c40557da","$36",32,32,83,"order.id"],["EVD-0a1339ba7cf6f4cc","$37",9,9,12,"quantity"],["EVD-0b0abe1156f1c10c","$36",36,36,65,"Map"],["EVD-0b4a1f0fd22790c1","$42",5,5,0,"import 'package:flutter/widgets.dart';"],["EVD-0ce83760bdc622bd","$36",36,36,59,".cast<Map<String, dynamic>>()"],["EVD-0d5be57505341e58","$37",17,17,13,"OrderLine"],["EVD-128a30422099f93c","$36",26,26,80,"dynamic"],["EVD-1430a9a1737982de","$41",17,17,15,"BuildContext"],["EVD-155daf692d3b8592","$41",17,19,40,"ListView(\n        children: [for (final order in _orders) OrderTile(order: order)],\n      )"],["EVD-1633f12b71bec301","$42",11,11,8,"Order"],["EVD-187d8ee208a95410","$42",6,6,0,"import 'package:shop/domain/domain.dart' show Order;"],["EVD-1a5d44705a23e0c4","$37",16,16,8,"String"],["EVD-1ae707ba97190a8d","$36",15,15,2,"HttpOrderRepository(this._client, this._base)"],["EVD-20a11886fcac4bfa","$36",35,42,45,"Order(item['id'] as String, [\n        for (final line in (item['lines'] as List<dynamic>).cast<Map<String, dynamic>>())\n          OrderLine(\n            line['description'] as String,\n            line['quantity'] as int,\n            line['unit_cents'] as int,\n          ),\n      ])"],["EVD-2212a9fd75ca67e3","$41",13,13,81,"orders"],["$13","$36",1,1,0,"// Archkeel"],["EVD-231fe2f142c36bca","$38",7,7,0,"import 'entities.dart';"],["EVD-23e4aa2ffcb234bd","$36",23,28,2,"@override\n  Future<List<Order>> ordersOf(String customerId) async {\n    final response = await _client.get(_base.resolve('customers/$customerId/orders'));\n    final items = (jsonDecode(response.body) as List<dynamic>).cast<Map<String, dynamic>>();\n    return [for (final item in items) _order(item)];\n  }"],["EVD-2506e93ee7e3dd2f","$42",14,14,15,"BuildContext"],["$14","$39",1,1,0,"// Archkeel"],["EVD-26b8fa44725bdbf4","$41",16,19,2,"@override\n  Widget build(BuildContext context) => ListView(\n        children: [for (final order in _orders) OrderTile(order: order)],\n      );"],["$15","$35",1,1,0,"// Archkeel"],["EVD-281d73fa7f851d6d","$36",8,8,0,"import 'package:shop/domain/domain.dart' show Order, OrderLine;"],["EVD-286b746edada2dc8","$36",32,32,65,"jsonEncode({'id': order.id})"],["EVD-28a3a19c3c545b99","$39",6,6,0,"import 'package:shop/data/http_order_repository.dart';"],["EVD-293d9f6ea3b27890","$41",13,13,45,"orders"],["EVD-29fdd726035dde3d","$37",27,27,38,"List.unmodifiable(lines)"],["EVD-2aa834ecd7b32062","$39",15,15,6,"home"],["EVD-2f702e38997458c8","$37",19,19,59,"line.quantity"],["EVD-30486e31747df8f7","$36",35,35,27,"dynamic"],["EVD-310526d2d2bcd5c4","lib/domain/domain.dart",9,9,0,"export 'repository.dart' show OrderRepository;"],["EVD-314a4268e629c396","$42",8,15,0,"class OrderTile extends StatelessWidget {\n  const OrderTile({Key? key, required this.order}) : super(key: key);\n\n  final Order order;\n\n  @override\n  Widget build(BuildContext context) => Text('${order.id}: ${order.totalCents} ct');\n}"],["$16","$37",1,1,0,"// Archkeel"],["$17","$40",1,1,0,"// Archkeel"],["EVD-331a7000532e7fd0","$37",13,20,0,"class Order {\n  const Order(this.id, this.lines);\n\n  final String id;\n  final List<OrderLine> lines;\n\n  int get totalCents => lines.fold(0, (sum, line) => sum + line.quantity * line.unitCents);\n}"],["EVD-35c622fe8b71bddc","$37",6,6,8,"OrderLine"],["EVD-36fb36f2745932d7","$36",21,21,12,"_base"],["EVD-37c53d534c235637","$36",36,36,45,"List"],["EVD-385768fb95e15aad","$34",11,11,62,"seconds"],["EVD-3943d8f357e21c18","$40",21,21,2,"State"],["EVD-396a4e007456287d","$38",12,12,22,"Order"],["EVD-3a1ba40e8e09787c","lib/domain/domain.dart",8,8,0,"export 'entities.dart' show Order, OrderLine;"],["EVD-3b0df78d60929ff6","$37",8,8,8,"String"],["EVD-3d37768ffa15f98b","$37",27,27,56,"lines"],["EVD-3ea058dda0ae13e6","$36",24,24,31,"String"],["EVD-3ea8807f2ecd8a9f","$36",24,24,9,"List"],["EVD-4039bd9ef2489865","$42",9,9,2,"const OrderTile({Key? key, required this.order}) : super(key: key)"],["EVD-422e6c5ffa9d0aa7","$36",24,24,14,"Order"],["EVD-474b29b296b0e63d","$37",19,19,39,"sum"],["EVD-47c8c57f6c8f07f3","$36",5,5,0,"import 'dart:convert';"],["EVD-48e4f0ae2be14fc8","$36",17,18,2,"factory HttpOrderRepository.remote() =>\n      HttpOrderRepository(createClient(), Uri.parse('https://shop.example/api/'));"],["EVD-4a89619fe76734f2","$41",7,20,0,"class _OrderPageState extends State<OrderPage> {\n  List<Order> _orders = const [];\n\n  @override\n  void initState() {\n    super.initState();\n    widget.repository.ordersOf('demo').then((orders) => setState(() => _orders = orders));\n  }\n\n  @override\n  Widget build(BuildContext context) => ListView(\n        children: [for (final order in _orders) OrderTile(order: order)],\n      );\n}"],["EVD-4fea7eb8cb4fe7d9","$34",11,11,27,"connectionTimeout"],["EVD-5015dc26251ec651","$36",30,33,2,"@override\n  Future<void> save(Order order) async {\n    await _client.put(_base.resolve('orders/${order.id}'), body: jsonEncode({'id': order.id}));\n  }"],["EVD-51aade0b22045527","$37",25,25,24,"lines = []"],["EVD-5693ead8650e57d7","$41",8,8,2,"List"],["EVD-5719dafb755267c7","$40",16,16,64,"key"],["EVD-58324c66260f25be","$42",9,9,8,"OrderTile"],["EVD-588b11482f4ac7b6","$36",36,36,28,"item"],["EVD-59c20e9285a2a558","$40",18,18,24,"repository"],["EVD-5a7d92c2dacb511d","$36",35,35,19,"String"],["EVD-5b0dbfe3947b65cb","$36",38,38,35,"String"],["EVD-5c018e628a271823","$42",9,9,19,"Key"],["EVD-5d95b34691ead61b","$36",26,26,72,"String"],["$18","$38",1,1,0,"// Archkeel"],["EVD-615005a4fa68b25d","$41",8,8,7,"Order"],["EVD-61daec5197b81426","$42",14,14,48,"order.id"],["EVD-6207b2ffc8f8accd","$36",17,17,30,"remote"],["EVD-62bf7c302de413f4","$36",35,35,51,"item"],["EVD-633e9d9a7d1de10b","$36",27,27,31,"items"],["EVD-63b774d6bdf9bcf0","$36",35,35,15,"Map"],["EVD-6435798aedc6910a","$36",18,18,6,"$22"],["EVD-659fd15d72b65cf6","$37",19,19,53,"sum"],["EVD-663de2141ffc4674","$38",10,10,14,"Order"],["EVD-673053c07de53a26","$36",20,20,8,"http"],["EVD-674e866c0de604d2","$39",15,15,33,"repository"],["EVD-67c0e7217aa3610d","$34",11,11,47,"const Duration(seconds: 10)"],["EVD-69923cb238f07334","$36",27,27,45,"item"],["EVD-6a5640730d28694d","$41",17,17,2,"Widget"],["EVD-6ee300ce676c67c3","$39",15,15,12,"order_page.OrderPage(repository: HttpOrderRepository.remote())"],["EVD-7167429d3916efc9","$39",5,5,0,"import 'package:flutter/material.dart';"],["EVD-77987afcc9303a8d","$36",27,27,38,"_order(item)"],["EVD-77a937a9af615581","$40",20,21,2,"@override\n  State<OrderPage> createState() => _OrderPageState();"],["EVD-78db4b92c4f55cb4","$41",18,18,48,"OrderTile(order: order)"],["EVD-7a9f5c99637da4ee","$40",16,16,19,"Key"],["EVD-7bddde2fe6208f95","$40",9,9,0,"import 'package:shop/domain/domain.dart';"],["EVD-7d17448959d435ef","$37",14,14,8,"Order"],["EVD-7dcc2ac565a04972","$41",10,14,2,"@override\n  void initState() {\n    super.initState();\n    widget.repository.ordersOf('demo').then((orders) => setState(() => _orders = orders));\n  }"],["EVD-81bd7759b2b264ef","$37",27,27,2,"Order"],["EVD-830e68abf190c34f","$37",27,27,34,"id"],["EVD-858df58fbc367e46","$41",12,12,4,"super.initState();"],["EVD-888301d07fe47a32","$41",13,13,71,"_orders"],["EVD-896161ceffa52e72","$37",9,9,8,"int"],["EVD-8e12665904955db2","$36",35,42,2,"Order _order(Map<String, dynamic> item) => Order(item['id'] as String, [\n        for (final line in (item['lines'] as List<dynamic>).cast<Map<String, dynamic>>())\n          OrderLine(\n            line['description'] as String,\n            line['quantity'] as int,\n            line['unit_cents'] as int,\n          ),\n      ]);"],["EVD-8f2ba4941df1be59","$38",12,12,2,"FutureOr"],["EVD-908bbf75987a640a","$34",11,11,53,"Duration"],["EVD-928d75c8c981cd56","$42",9,9,64,"key"],["EVD-93f9c9dc9e0aeb36","$36",32,32,22,"_base"],["EVD-9535deff19439b9e","$37",19,19,75,"line.unitCents"],["EVD-967c548164f5e155","$38",10,10,2,"Future"],["EVD-969cb05838b12378","$34",8,8,0,"import 'package:http/io_client.dart';"],["EVD-9b115433a1e80493","$40",11,11,0,"import 'order_tile.dart';"],["EVD-9bd79b525821cb13","$35",7,7,0,"http"],["EVD-9d8584ea3d0232a0","$34",5,5,0,"import 'dart:io';"],["EVD-9f40ca4cf6d5b191","$36",25,25,39,"_base"],["EVD-9fde16d3030451b7","$38",10,10,9,"List"],["EVD-a073bb0f51996e28","$36",20,20,20,"_client"],["EVD-a0fbfd1393269989","$34",10,10,5,"Client"],["$19","$34",1,1,0,"// Archkeel"],["EVD-a221c6d1476c1168","$41",18,18,8,"children"],["EVD-a5c86f550c7fd509","$36",26,26,30,"response.body"],["EVD-a5e30ce3c867fe10","$36",31,31,2,"Future"],["EVD-a64916cfd0ba7d21","$39",9,9,0,"import 'presentation/order_page.dart' deferred as order_page;"],["EVD-a66af5d95cd681ba","$37",6,6,2,"const OrderLine(this.description, this.quantity, this.unitCents)"],["EVD-a72d12e23c8e12c7","$40",8,8,0,"import 'package:flutter/material.dart';"],["EVD-a74c087d6d92573b","$36",36,36,50,"dynamic"],["EVD-a909c3af2e129e07","$35",7,7,30,"http.Client()"],["EVD-a9c25bd1e23782a0","$36",17,17,10,"HttpOrderRepository"],["EVD-ac9fd24558ebcdeb","$38",9,13,0,"abstract interface class OrderRepository {\n  Future<List<Order>> ordersOf(String customerId);\n\n  FutureOr<void> save(Order order);\n}"],["EVD-ada09eed9250401f","$37",27,27,28,"Order(id, List.unmodifiable(lines))"],["EVD-ae431e060fe59421","$39",12,12,8,"order_page.loadLibrary()"],["EVD-afade4c7a5273bce","$39",14,16,4,"MaterialApp(\n      home: order_page.OrderPage(repository: HttpOrderRepository.remote()),\n    )"],["EVD-aff6e609158af6af","$34",7,7,0,"import 'package:http/http.dart' as http;"],["EVD-b03b487113ac220a","$37",17,17,24,"lines"],["EVD-b126f854a98c5c1d","$36",36,36,77,"dynamic"],["EVD-b26c19768a3d6932","$36",35,35,65,"String"],["EVD-b33a1fb6609cb8bb","$41",12,12,9,".initState()"],["EVD-b4dad6aec2560942","$37",19,19,44,"line"],["EVD-b553bcfe581ce81a","$36",26,26,62,".cast<Map<String, dynamic>>()"],["EVD-b7aeb1283504c2c5","$37",25,25,8,"List"],["EVD-b9ab44cf07728dbf","$36",39,39,32,"int"],["EVD-bae4a16e60a256f8","$42",11,11,14,"order"],["EVD-bce2c34c4eb1a3d5","$35",5,5,0,"import 'package:http/http.dart' as http;"],["EVD-bdd66e945d8ca6d1","$41",18,18,65,"order"],["EVD-bf837fa3642b48a9","$36",14,43,0,"class HttpOrderRepository implements OrderRepository {\n  HttpOrderRepository(this._client, this._base);\n\n  factory HttpOrderRepository.remote() =>\n      HttpOrderRepository(createClient(), Uri.parse('https://shop.example/api/'));\n\n  final http.Client _client;\n  final Uri _base;\n\n  @override\n  Future<List<Order>> ordersOf(String customerId) async {\n    final response = await _client.get(_base.resol"],["EVD-c0d04009674c48a5","$36",25,25,27,"_client"],["EVD-c0d8096eee841c94","$37",24,28,0,"class OrderDraft {\n  final List<OrderLine> lines = [];\n\n  Order place(String id) => Order(id, List.unmodifiable(lines));\n}"],["EVD-c0dc4089c0874933","$36",36,36,69,"String"],["EVD-c14d98171a51c618","$37",25,25,13,"OrderLine"],["EVD-c167bc8883cfd281","$41",13,13,56,"setState(() => _orders = orders)"],["EVD-c16a5aca562ae543","$42",9,9,59,"key"],["EVD-c1b2e988c10b5461","$36",35,35,2,"Order"],["EVD-c2824a95604d8d4a","$36",32,32,46,"order.id"],["EVD-c340ca38a4f3cacb","$40",18,18,8,"OrderRepository"],["EVD-c36b8dd540804d2e","$40",16,16,69,"key"],["EVD-c424ecb7c8d14e56","$35",7,7,5,"Client"],["EVD-c4a1f9e8c812f076","$42",14,14,2,"Widget"],["EVD-c5240edef1ed9137","$37",8,8,15,"description"],["EVD-c66424829f560ca4","$36",9,9,0,"import 'package:shop/domain/repository.dart' show OrderRepository;"],["EVD-c6c346d08177a7a5","$36",18,18,42,"Uri.parse('https://shop.example/api/')"],["EVD-c82452238c7a4df6","$37",10,10,12,"unitCents"],["EVD-c9c45f403ab2210a","$36",18,18,26,"createClient()"],["EVD-cc3c2bed73768b5e","$40",15,22,0,"class OrderPage extends StatefulWidget {\n  const OrderPage({Key? key, required this.repository}) : super(key: key);\n\n  final OrderRepository repository;\n\n  @override\n  State<OrderPage> createState() => _OrderPageState();\n}"],["EVD-cdf2c97c0b6df20a","$40",21,21,8,"OrderPage"],["EVD-cdf3c3ce8f747f9b","$41",13,13,4,"$82"],["EVD-cf4b91db4fbca2e7","$36",26,26,48,"List"],["EVD-cfb3baf85b65f626","$42",13,14,2,"@override\n  Widget build(BuildContext context) => Text('${order.id}: ${order.totalCents} ct');"],["EVD-d00023d047050770","$39",13,17,2,"runApp(\n    MaterialApp(\n      home: order_page.OrderPage(repository: HttpOrderRepository.remote()),\n    ),\n  )"],["$20","$42",1,1,0,"// Archkeel"],["EVD-d1a4f0ebf46a7665","$36",12,12,0,"import 'client_stub.dart' if (dart.library.io) 'client_io.dart';"],["EVD-d2363979706c536d","$40",21,21,36,"_OrderPageState()"],["EVD-d2685460eb7f508e","$36",26,26,4,"final items = (jsonDecode(response.body) as List<dynamic>).cast<Map<String, dynamic>>()"],["EVD-d397db9ea4f38194","$36",20,20,13,"Client"],["EVD-d6000c4881193228","$36",26,26,53,"dynamic"],["EVD-d6d9d621a8edc57d","$39",15,15,45,"HttpOrderRepository.remote()"],["EVD-db704e9b0c66abd3","$41",18,18,39,"_orders"],["EVD-db7dde589628fd1e","$42",14,14,40,"Text('${order.id}: ${order.totalCents} ct')"],["EVD-dd1cb38a7302ed15","$36",25,25,4,"final response = await _client.get(_base.resolve('customers/$customerId/orders'))"],["$21","lib/domain/domain.dart",1,1,0,"// Archkeel"],["EVD-de9d13b1ae87324d","$36",37,41,10,"OrderLine(\n            line['description'] as String,\n            line['quantity'] as int,\n            line['unit_cents'] as int,\n          )"],["EVD-e1e33321a42f6d46","$36",26,26,19,"jsonDecode(response.body)"],["EVD-e200f54db6fee516","$37",19,19,24,"lines"],["EVD-e20486f278d8fbc0","$34",10,10,0,"http"],["EVD-e2e361facf4b1302","$34",11,11,13,"HttpClient()"],["EVD-e32103b8b1ee8adf","$37",17,17,8,"List"],["EVD-e3ec41d1a6249b47","$34",11,11,4,"IOClient(HttpClient()..connectionTimeout = const Duration(seconds: 10))"],["EVD-e4e857c1b3c81bd6","$37",14,14,2,"const Order(this.id, this.lines)"],["EVD-e768dece02216c1a","$36",24,24,2,"Future"],["EVD-e9dc8e674ec285bc","$40",16,16,2,"const OrderPage({Key? key, required this.repository}) : super(key: key)"],["EVD-ea53d147bc730af0","$36",40,40,34,"int"],["EVD-eab7b82b611e8063","$37",5,11,0,"class OrderLine {\n  const OrderLine(this.description, this.quantity, this.unitCents);\n\n  final String description;\n  final int quantity;\n  final int unitCents;\n}"],["EVD-ee76ba75aabd9039","$36",26,26,68,"Map"],["EVD-eed26e74f1b62ccf","$42",14,14,61,"order.totalCents"],["EVD-f06a0d7ac16d739e","$37",19,19,2,"int"],["EVD-f0a57ffd81725b75","$36",7,7,0,"import 'package:http/http.dart' as http;"],["EVD-f216efeb20910855","$36",31,31,20,"Order"],["EVD-f27bf9ba4d5c221f","$41",18,18,58,"order"],["EVD-f5ea566d29f0b5d7","$38",10,10,31,"String"],["EVD-fa0dd4650e0a22aa","$39",11,11,0,"Future"]],"imports":[["DARTIMP-1e0776c507174e1e","FACT","dependencies","import","shop.presentation.order_page imports package:flutter/material.dart",["flutter.material","$69"],["EVD-a72d12e23c8e12c7"],[],[],[],[null,null,false,[],0,"$69","$68",null,null,false,"flutter.material","flutter",false]],["DARTIMP-30819ba0ec1ed912","FACT","dependencies","import","shop.main imports package:flutter/material.dart",["flutter.material","shop.main"],["EVD-7167429d3916efc9"],[],[],[],[null,null,false,[],0,"shop.main","shop",null,null,false,"flutter.material","flutter",false]],["DARTIMP-37f6da361b185e6c","FACT","dependencies","import","shop.presentation.order_tile imports package:shop/domain/domain.dart",["$58","$76"],["EVD-187d8ee208a95410"],[],[],[],["Order","shop.domain.domain.Order",false,["shop.domain.domain.Order"],0,"$76","$68","Order","public_name",true,"$58","$57",false]],["DARTIMP-48bac822b1abf106","FACT","dependencies","import","shop.data.http_order_repository imports dart:convert",["dart.convert","$49"],["EVD-47c8c57f6c8f07f3"],[],[],[],[null,null,false,[],0,"$49","shop.data",null,null,false,"dart.convert","dart",false]],["DARTIMP-550ad3011c9d495f","FACT","dependencies","import","shop.data.http_order_repository imports client_io.dart",["$45","$49"],["EVD-d1a4f0ebf46a7665"],[],[],[],[null,null,false,[],0,"$49","shop.data",null,null,false,"$45","shop.data",false]],["DARTIMP-639534653121391f","FACT","dependencies","import","shop.domain.domain imports entities.dart",["$58","$59"],["EVD-3a1ba40e8e09787c"],[],[],[],["Order","$60",true,["$60"],0,"$58","$57","Order","public_name",true,"$59","$57",false]],["DARTIMP-735c444d4391bd23","FACT","dependencies","import","shop.data.client_io imports package:http/io_client.dart",["http.io_client","$45"],["EVD-969cb05838b12378"],[],[],[],[null,null,false,[],0,"$45","shop.data",null,null,false,"http.io_client","http",false]],["DARTIMP-7933e7e87eeb41ae","FACT","dependencies","import","shop.data.client_io imports package:http/http.dart",["http.http","$45"],["EVD-aff6e609158af6af"],[],[],[],["http",null,false,[],0,"$45","shop.data",null,null,false,"http.http","http",false]],["DARTIMP-8082941fcb17ee05","FACT","dependencies","import","shop.data.http_order_repository imports client_stub.dart",["$47","$49"],["EVD-d1a4f0ebf46a7665"],[],[],[],[null,null,false,[],0,"$49","shop.data",null,null,false,"$47","shop.data",false]],["DARTIMP-8364e9dbb980d1b1","FACT","dependencies","import","shop.data.http_order_repository imports package:http/http.dart",["http.http","$49"],["EVD-f0a57ffd81725b75"],[],[],[],["http",null,false,[],0,"$49","shop.data",null,null,false,"http.http","http",false]],["DARTIMP-882b3adfdd5987c7","FACT","dependencies","import","shop.presentation.order_tile imports package:flutter/widgets.dart",["flutter.widgets","$76"],["EVD-0b4a1f0fd22790c1"],[],[],[],[null,null,false,[],0,"$76","$68",null,null,false,"flutter.widgets","flutter",false]],["DARTIMP-8bd7df93e395a32d","FACT","dependencies","import","shop.data.client_io imports dart:io",["dart.io","$45"],["EVD-9d8584ea3d0232a0"],[],[],[],[null,null,false,[],0,"$45","shop.data",null,null,false,"dart.io","dart",false]],["DARTIMP-b2b9f122296db074","FACT","dependencies","import","shop.data.client_stub imports package:http/http.dart",["http.http","$47"],["EVD-bce2c34c4eb1a3d5"],[],[],[],["http",null,false,[],0,"$47","shop.data",null,null,false,"http.http","http",false]],["DARTIMP-b44a445ea1fc9517","FACT","dependencies","import","shop.domain.domain imports entities.dart",["$58","$59"],["EVD-3a1ba40e8e09787c"],[],[],[],["OrderLine","$63",true,["$63"],0,"$58","$57","OrderLine","public_name",true,"$59","$57",false]],["DARTIMP-bef82b199fdfbc9c","FACT","dependencies","import","shop.data.http_order_repository imports package:shop/domain/repository.dart",["$49","$64"],["EVD-c66424829f560ca4"],[],[],[],["OrderRepository","$65",false,["$65"],0,"$49","shop.data","OrderRepository","public_name",true,"$64","$57",false]],["DARTIMP-bf86de6c35949d36","FACT","dependencies","import","shop.domain.domain imports repository.dart",["$58","$64"],["EVD-310526d2d2bcd5c4"],[],[],[],["OrderRepository","$65",true,["$65"],0,"$58","$57","OrderRepository","public_name",true,"$64","$57",false]],["DARTIMP-c6374edab68a9ea7","FACT","dependencies","import","shop.data.http_order_repository imports package:shop/domain/domain.dart",["$49","$58"],["EVD-281d73fa7f851d6d"],[],[],[],["OrderLine","shop.domain.domain.OrderLine",false,["shop.domain.domain.OrderLine"],0,"$49","shop.data","OrderLine","public_name",true,"$58","$57",false]],["DARTIMP-c735b08d5c9fdf12","FACT","dependencies","import","shop.domain.repository imports entities.dart",["$59","$64"],["EVD-231fe2f142c36bca"],[],[],[],[null,null,false,[],0,"$64","$57",null,null,false,"$59","$57",false]],["DARTIMP-c9967bb3883bd5b7","FACT","dependencies","import","shop.presentation.order_page imports package:shop/domain/domain.dart",["$58","$69"],["EVD-7bddde2fe6208f95"],[],[],[],[null,null,false,[],0,"$69","$68",null,null,false,"$58","$57",false]],["DARTIMP-cc08bcaf9af1b8b4","FACT","dependencies","import","shop.data.http_order_repository imports package:shop/domain/domain.dart",["$49","$58"],["EVD-281d73fa7f851d6d"],[],[],[],["Order","shop.domain.domain.Order",false,["shop.domain.domain.Order"],0,"$49","shop.data","Order","public_name",true,"$58","$57",false]],["DARTIMP-d05a07b7ba69d5c0","FACT","dependencies","import","shop.presentation.order_page imports order_tile.dart",["$69","$76"],["EVD-9b115433a1e80493"],[],[],[],[null,null,false,[],0,"$69","$68",null,null,false,"$76","$68",false]],["DARTIMP-d81508adde93244d","FACT","dependencies","import","shop.domain.repository imports dart:async",["dart.async","$64"],["EVD-057939a650233098"],[],[],[],[null,null,false,[],0,"$64","$57",null,null,false,"dart.async","dart",false]],["DARTIMP-e5677714540eae6d","FACT","dependencies","import","shop.main imports presentation/order_page.dart",["shop.main","$69"],["EVD-a64916cfd0ba7d21"],[],[],[],["order_page",null,false,[],0,"shop.main","shop",null,null,false,"$69","$68",false]],["DARTIMP-ffcc6c7350a4ac68","FACT","dependencies","import","shop.main imports package:shop/data/http_order_repository.dart",["$49","shop.main"],["EVD-28a3a19c3c545b99"],[],[],[],[null,null,false,[],0,"shop.main","shop",null,null,false,"$49","shop.data",false]]],"metrics":[["METRIC-0477b10f3aa518a5","FACT","overview","interface_surface","Interface surface",[],[],[],["DARTIMP-37f6da361b185e6c","DARTIMP-bef82b199fdfbc9c","DARTIMP-c6374edab68a9ea7","DARTIMP-c9967bb3883bd5b7","DARTIMP-cc08bcaf9af1b8b4","DARTIMP-e5677714540eae6d","DARTIMP-ffcc6c7350a4ac68"],[],["api",6]],["METRIC-115ac1d218349491","FACT","overview","forbidden_package_edges","Forbidden package edges",[],[],[],[],[],["violations",0]],["METRIC-130e9ec98394803f","FACT","overview","private_crossings","Confirmed private symbol crossings",[],[],[],[],[],["api",null]],["METRIC-1ea50a8caf608504","FACT","overview","symbols","Symbols",[],[],[],["DARTBIND-432403630ebef5dc","DARTBIND-7e9e7dcc048ba93c","$2","$3","DARTDEF-0fb17e69568c3bdb","$4","$5","DARTDEF-1c1c62e70661b9de","DARTDEF-20af729b373396ff","DARTDEF-4c9947d8a8110446","$6","DARTDEF-55abb83045422487","DARTDEF-69c0a3856a2901a6","DARTDEF-6f0b8b31d5393b52","DARTDEF-7b9209edd70e37c1","$7","DARTDEF-88172be219cedeaf","$8","$9","$10","DARTDEF-b0b90f895aa71cf7","DARTDEF-b9cfe4b9291b9843","DARTDEF-bfad3dbf9f427385","DARTDEF-c55182f84e9c08ed","$11","DARTDEF-d936ef19353a9f61","DARTDEF-e19f42e0d56392c5","$12","DARTDEF-fa35bb591f3e17a2","DARTDEF-fe89b3f442f08197"],[],["components",30]],["METRIC-45b586bf31456c32","FACT","overview","violating_import_sites","Violating import sites",[],[],[],[],[],["violations",0]],["METRIC-5610c365b3e34d3d","FACT","overview","typing_signals","Typing & dynamic signals",[],[],[],[],[],["types",null]],["METRIC-58f9e6977954a47e","FACT","overview","module_cycles","Module cycles",[],[],[],[],[],["cycles",0]],["METRIC-5e1b38214272f111","FACT","overview","untyped_private_accesses","Private attribute accesses through untyped or Any parameters",[],[],[],[],[],["api",null]],["METRIC-9a8bf9ba32aac4c3","FACT","overview","ast_coverage","AST coverage",[],[],[],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["coverage","100.0%"]],["METRIC-a4770d56d0e45bc8","FACT","overview","affected_violation_modules","Affected source modules",[],[],[],[],[],["violations",0]],["METRIC-af8a12e31cd6b969","FACT","overview","package_cycles","Package cycles",[],[],[],[],[],["cycles",0]],["METRIC-b28b1ed9821f38c6","FACT","overview","packages","Packages",[],[],[],["PKG-06b6223d182b172f","PKG-869e0abdab4754ee","PKG-8d9001d32c6a703d","PKG-bbe08bf4ae93e0ad"],[],["package",4]],["METRIC-b2983be8c3741e5b","FACT","overview","source_files","Source files",[],[],[],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["coverage",10]],["METRIC-b5246b04f97b5e43","FACT","overview","call_resolution","Uniquely resolved calls",[],[],[],["DARTCALL-0834a277eafb1c40","DARTCALL-2bfb94c702bd0161","DARTCALL-aed439fe0437dcc4","DARTCALL-e0ce6b2292df8052","DARTCALL-ed50de1a19121020","DARTCALL-f91be9b49625a9e4"],[],["calls","17.65%"]],["METRIC-c6ba710e0c094515","FACT","overview","violations","Contract violations",[],[],[],[],[],["violations",0]],["METRIC-cd26a4b22ffceb0b","FACT","overview","unresolved_calls","Unresolved calls",[],[],[],["DARTCALL-0824ce67f9946eae","DARTCALL-0c1c1e8e4ad50641","DARTCALL-144b079820ca4b1d","DARTCALL-1830e7cf89117b99","DARTCALL-277c6e5e0f7d8479","DARTCALL-2baf6176440b2fa9","DARTCALL-394a95e742869778","DARTCALL-45c7706a3fd13fb0","DARTCALL-532cffc81f2baa6f","DARTCALL-5d45ddecf5e7dba5","DARTCALL-5d77251b1d3bff1e","DARTCALL-61de08a40bace859","DARTCALL-6604203d7445edcf","DARTCALL-69f1bc17c9fc3754","DARTCALL-6b9e7fb777c119f3","DARTCALL-7ea9f9eac396c29c","DARTCALL-8c8ba08d380bdecb","DARTCALL-8e3b75e308ad3d3f","DARTCALL-a1fce58a838e2175","DARTCALL-aaa4f8b11b86f445","DARTCALL-ae14be00e456c506","DARTCALL-bbc94cd8c32e5804","DARTCALL-c9373b6202748a82","DARTCALL-d4a98734e3d2d373","DARTCALL-d89753e3b21fb8d2","DARTCALL-d92abe2ddfb7b6ac","DARTCALL-e2604cd018d433fa","DARTCALL-f51e058bac6b7844"],[],["calls",28]],["METRIC-f96ad8a9b8498c26","FACT","overview","rollup_only_package_cycles","Package cycles no module cycle crosses",[],[],[],[],[],["cycles",0]],["METRIC-fbc6c1d4c3b6db8f","FACT","overview","modules","Modules",[],[],[],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["module",9]]],"modules":[["$23","FACT","$43","module","$49",["shop.data","$49"],["$13"],[],[],[],[[],false,false,1,4,"$36","shop.data","$49",1,8]],["$24","FACT","$43","module","$47",["shop.data","$47"],["$15"],[],[],[],[[],false,false,1,0,"$35","shop.data","$47",2,1]],["$25","FACT","$43","module","$64",["$57","$64"],["$18"],[],[],[],[[],false,false,2,1,"$38","$57","$64",4,3]],["$26","FACT","$43","module","$59",["$57","$59"],["$16"],[],[],[],[[],false,false,2,0,"$37","$57","$59",5,7]],["$27","FACT","$43","module","shop.main",["shop","shop.main"],["$14"],[],[],[],[[],false,false,0,2,"$39","shop","shop.main",0,1]],["$28","FACT","$43","module","$69",["$68","$69"],["$17"],[],[],[],[[],false,false,1,2,"$40","$68","$69",1,6]],["$29","FACT","$43","module","$58",["$57","$58"],["$21"],[],[],[],[[],false,false,3,2,"lib/domain/domain.dart","$57","$58",3,0]],["$30","FACT","$43","module","$76",["$68","$76"],["$20"],[],[],[],[[],false,false,1,1,"$42","$68","$76",2,3]],["$31","FACT","$43","module","$45",["shop.data","$45"],["$19"],[],[],[],[[],false,false,1,0,"$34","shop.data","$45",2,1]]],"packages":[["PKG-06b6223d182b172f","FACT","package_topology","package","shop.data",["shop.data"],[],[],["$23","$24","$31"],[],[["$57"],1,1,3,"shop.data",1]],["PKG-869e0abdab4754ee","FACT","package_topology","package","$57",["$57"],[],[],["$25","$26","$29"],[],[[],2,0,3,"$57",2]],["PKG-8d9001d32c6a703d","FACT","package_topology","package","shop",["shop"],[],[],["$27"],[],[["shop.data","$68"],0,2,1,"shop",0]],["PKG-bbe08bf4ae93e0ad","FACT","package_topology","package","$68",["$68"],[],[],["$28","$30"],[],[["$57"],1,1,2,"$68",1]]],"path_observations":[],"producer":{"code_digest":"3fe56e514f73ae8fa41c480ff2c3b5975a5301c6284ad80a801c2c9da4d24a43","name":"archkeel-dart-analyzer","version":"2.0.0"},"references":[["DARTREF-001d7ad6329ae4af","FACT","source","$44","order.totalCents",["$79"],["EVD-eed26e74f1b62ccf"],[],[],[],[1,false,"order.totalCents","$1","$12","$42","$76","$79","resolved",["$61"],"read"]],["DARTREF-0200bfa67bb7d681","FACT","source","$44","Order",["$62"],["EVD-81bd7759b2b264ef"],[],[],[],[1,false,"Order","$1","$6","$37","$59","$62","resolved",["$60"],"type"]],["DARTREF-0256c1b0a6ee3917","FACT","source","$44","int",["$59"],["EVD-082969782697bd28"],[],[],[],[0,false,"int","$80","$m","$37","$59","$59","$81",[],"type"]],["DARTREF-0327b434653f0dcd","FACT","source","$44","Future",["$53"],["EVD-e768dece02216c1a"],[],[],[],[0,false,"Future","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-0514471a79fb1434","FACT","source","$44","String",["$52"],["EVD-c0dc4089c0874933"],[],[],[],[0,false,"String","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-0690e32940f1a98e","FACT","source","$44","dynamic",["$52"],["EVD-b126f854a98c5c1d"],[],[],[],[0,false,"dynamic","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-07cb27a93ad42f29","FACT","source","$44","String",["$53"],["EVD-5d95b34691ead61b"],[],[],[],[0,false,"String","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-07eaca555ba20754","FACT","source","$44","List",["$59"],["EVD-b7aeb1283504c2c5"],[],[],[],[0,false,"List","$80","$m","$37","$59","$59","$81",[],"type"]],["DARTREF-09f2bee9c27835d8","FACT","source","$44","orders",["$75"],["EVD-293d9f6ea3b27890"],[],[],[],[0,false,"orders","$80","$2","$41","$69","$75","$81",[],"read"]],["DARTREF-12b490a8efa8a693","FACT","source","$44","dynamic",["$53"],["EVD-128a30422099f93c"],[],[],[],[0,false,"dynamic","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-156410728e690f29","FACT","source","$44","OrderTile",["$78"],["EVD-58324c66260f25be"],[],[],[],[1,false,"OrderTile","$1","DARTDEF-4c9947d8a8110446","$42","$76","$78","resolved",["$77"],"read"]],["DARTREF-1c919edd0393a810","FACT","source","$44","State",["$72"],["EVD-3943d8f357e21c18"],[],[],[],[0,false,"State","$80","DARTDEF-e19f42e0d56392c5","$40","$69","$72","$81",[],"type"]],["DARTREF-1cddd328a1e34f77","FACT","source","$44","lines",["$61"],["EVD-e200f54db6fee516"],[],[],[],[1,false,"lines","$1","$7","$37","$59","$61","resolved",["shop.domain.entities.Order.lines"],"read"]],["DARTREF-1def3e070ac6331d","FACT","source","$44","items",["$53"],["EVD-633e9d9a7d1de10b"],[],[],[],[0,false,"items","$80","$3","$36","$49","$53","$81",[],"read"]],["DARTREF-1f68060e5529de73","FACT","source","$44","String",["$53"],["EVD-3ea058dda0ae13e6"],[],[],[],[0,false,"String","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-1f9c66b28b81787d","FACT","source","$44","key",["$71"],["EVD-c36b8dd540804d2e"],[],[],[],[0,false,"key","$80","DARTDEF-fa35bb591f3e17a2","$40","$69","$71","$81",[],"read"]],["DARTREF-20087a31aa32e2eb","FACT","source","$44","repository",["shop.main.main"],["EVD-674e866c0de604d2"],[],[],[],[0,false,"repository","$80","$8","$39","shop.main","shop.main.main","$81",[],"read"]],["DARTREF-20693e144ac0260e","FACT","source","$44","http",["$46"],["EVD-e20486f278d8fbc0"],[],[],[],[0,false,"http","$80","$9","$34","$45","$46","$81",[],"type"]],["DARTREF-218d04facf4aeb9f","FACT","source","$44","OrderLine",["$59"],["EVD-c14d98171a51c618"],[],[],[],[1,false,"OrderLine","$1","$m","$37","$59","$59","resolved",["$63"],"type"]],["DARTREF-244e12f55a3e93f2","FACT","source","$44","key",["$78"],["EVD-928d75c8c981cd56"],[],[],[],[0,false,"key","$80","DARTDEF-4c9947d8a8110446","$42","$76","$78","$81",[],"read"]],["DARTREF-2602206a18cffa91","FACT","source","$44","order.id",["$56"],["EVD-09fa6864c40557da"],[],[],[],[1,false,"order.id","$1","$4","$36","$49","$56","resolved",["shop.domain.entities.Order.id"],"read"]],["DARTREF-272a988667177ecb","FACT","source","$44","Future",["$66"],["EVD-967c548164f5e155"],[],[],[],[0,false,"Future","$80","DARTDEF-7b9209edd70e37c1","$38","$64","$66","$81",[],"type"]],["DARTREF-29469863f18d4b3b","FACT","source","$44","Key",["$71"],["EVD-7a9f5c99637da4ee"],[],[],[],[0,false,"Key","$80","DARTDEF-fa35bb591f3e17a2","$40","$69","$71","$81",[],"type"]],["DARTREF-2aa91b8a40f9fb57","FACT","source","$44","Client",["$51"],["EVD-d397db9ea4f38194"],[],[],[],[0,false,"Client","$80","$11","$36","$49","$51","$81",[],"type"]],["DARTREF-2b4d00e38495bdef","FACT","source","$44","response.body",["$54"],["EVD-a5c86f550c7fd509"],[],[],[],[0,false,"response.body","$80","DARTBIND-432403630ebef5dc","$36","$49","$54","$81",[],"read"]],["DARTREF-2b951fa2415a71e9","FACT","source","$44","order",["$74"],["EVD-bdd66e945d8ca6d1"],[],[],[],[0,false,"order","$80","$10","$41","$69","$74","$81",[],"read"]],["DARTREF-30866d95e2a71c14","FACT","source","$44","Map",["$53"],["EVD-ee76ba75aabd9039"],[],[],[],[0,false,"Map","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-321e296e91910e1d","FACT","source","$44","line",["$61"],["EVD-b4dad6aec2560942"],[],[],[],[0,false,"line","$80","$7","$37","$59","$61","$81",[],"read"]],["DARTREF-342ce7f5dd3221ad","FACT","source","$44","line.quantity",["$61"],["EVD-2f702e38997458c8"],[],[],[],[1,false,"line.quantity","$1","$7","$37","$59","$61","resolved",["shop.domain.entities.OrderLine.quantity"],"read"]],["DARTREF-3430eb033152fd4e","FACT","source","$44","String",["$66"],["EVD-f5ea566d29f0b5d7"],[],[],[],[0,false,"String","$80","DARTDEF-7b9209edd70e37c1","$38","$64","$66","$81",[],"type"]],["DARTREF-3507803584b77c1f","FACT","source","$44","id",["$62"],["EVD-830e68abf190c34f"],[],[],[],[1,false,"id","$1","$6","$37","$59","$62","resolved",["shop.domain.entities.id"],"read"]],["DARTREF-358207216190d69e","FACT","source","$44","FutureOr",["$67"],["EVD-8f2ba4941df1be59"],[],[],[],[0,false,"FutureOr","$80","DARTDEF-1c1c62e70661b9de","$38","$64","$67","$81",[],"type"]],["DARTREF-35dd7c11eed114d4","FACT","source","$44","OrderLine",["shop.domain.entities.OrderLine.OrderLine"],["EVD-35c622fe8b71bddc"],[],[],[],[1,false,"OrderLine","$1","DARTDEF-fe89b3f442f08197","$37","$59","shop.domain.entities.OrderLine.OrderLine","resolved",["$63"],"read"]],["DARTREF-37a202303f345480","FACT","source","$44","OrderRepository",["$69"],["EVD-c340ca38a4f3cacb"],[],[],[],[1,false,"OrderRepository","$1","$m","$40","$69","$69","resolved",["$65"],"type"]],["DARTREF-3de0c63a2b93f836","FACT","source","$44","_base",["$56"],["EVD-93f9c9dc9e0aeb36"],[],[],[],[0,false,"_base","$80","$4","$36","$49","$56","$81",[],"read"]],["DARTREF-3e4d074233181e80","FACT","source","$44","order",["$79"],["EVD-61daec5197b81426"],[],[],[],[1,false,"order","$1","$12","$42","$76","$79","resolved",["shop.presentation.order_tile.OrderTile.order"],"read"]],["DARTREF-3f856a97b10c2f52","FACT","source","$44","List",["$69"],["EVD-5693ead8650e57d7"],[],[],[],[0,false,"List","$80","$m","$41","$69","$69","$81",[],"type"]],["DARTREF-4431fbb5770f8e49","FACT","source","$44","int",["$52"],["EVD-ea53d147bc730af0"],[],[],[],[0,false,"int","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-44425665241b74ad","FACT","source","$44","key",["$78"],["EVD-c16a5aca562ae543"],[],[],[],[0,false,"key","$80","DARTDEF-4c9947d8a8110446","$42","$76","$78","$81",[],"read"]],["DARTREF-469db521d5942aa2","FACT","source","$44","HttpOrderRepository",["$51"],["EVD-a9c25bd1e23782a0"],[],[],[],[0,false,"HttpOrderRepository","$80","$11","$36","$49","$51","$81",[],"read"]],["DARTREF-4759108810960df3","FACT","source","$44","String",["$52"],["EVD-5a7d92c2dacb511d"],[],[],[],[0,false,"String","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-47ad764e199bafaf","FACT","source","$44","Widget",["$74"],["EVD-6a5640730d28694d"],[],[],[],[0,false,"Widget","$80","$10","$41","$69","$74","$81",[],"type"]],["DARTREF-480b09b1865bc11f","FACT","source","$44","OrderPage",["$71"],["EVD-078505fe8b4ef86d"],[],[],[],[1,false,"OrderPage","$1","DARTDEF-fa35bb591f3e17a2","$40","$69","$71","resolved",["$70"],"read"]],["DARTREF-4bfb5db341fad8f2","FACT","source","$44","home",["shop.main.main"],["EVD-2aa834ecd7b32062"],[],[],[],[0,false,"home","$80","$8","$39","shop.main","shop.main.main","$81",[],"read"]],["DARTREF-4e7cbc439bed77b4","FACT","source","$44","Client",["$48"],["EVD-c424ecb7c8d14e56"],[],[],[],[0,false,"Client","$80","DARTDEF-c55182f84e9c08ed","$35","$47","$48","$81",[],"type"]],["DARTREF-4e8b6a00114c0a19","FACT","source","$44","int",["$61"],["EVD-f06a0d7ac16d739e"],[],[],[],[0,false,"int","$80","$7","$37","$59","$61","$81",[],"type"]],["DARTREF-55b1fe46e50bef12","FACT","source","$44","String",["$59"],["EVD-3b0df78d60929ff6"],[],[],[],[0,false,"String","$80","$m","$37","$59","$59","$81",[],"type"]],["DARTREF-562830808f1e67c0","FACT","source","$44","key",["$71"],["EVD-5719dafb755267c7"],[],[],[],[0,false,"key","$80","DARTDEF-fa35bb591f3e17a2","$40","$69","$71","$81",[],"read"]],["DARTREF-56397ecd94b3dcff","FACT","source","$44","body",["$56"],["EVD-0555b40a5a40e3f1"],[],[],[],[0,false,"body","$80","$4","$36","$49","$56","$81",[],"read"]],["DARTREF-579f0562767bbee6","FACT","source","$44","List",["$52"],["EVD-37c53d534c235637"],[],[],[],[0,false,"List","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-5dfcfeae85bf5228","FACT","source","$44","List",["$59"],["EVD-e32103b8b1ee8adf"],[],[],[],[0,false,"List","$80","$m","$37","$59","$59","$81",[],"type"]],["DARTREF-5e8da0945125f630","FACT","source","$44","String",["$52"],["EVD-b26c19768a3d6932"],[],[],[],[0,false,"String","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-60a9b4568ba154b7","FACT","source","$44","Future",["$56"],["EVD-a5e30ce3c867fe10"],[],[],[],[0,false,"Future","$80","$4","$36","$49","$56","$81",[],"type"]],["DARTREF-6578d2d2d924faf1","FACT","source","$44","order",["$56"],["EVD-09fa6864c40557da"],[],[],[],[0,false,"order","$80","$4","$36","$49","$56","$81",[],"read"]],["DARTREF-6b6d544b8f941eae","FACT","source","$44","Order",["$66"],["EVD-663de2141ffc4674"],[],[],[],[1,false,"Order","$1","DARTDEF-7b9209edd70e37c1","$38","$64","$66","resolved",["$60"],"type"]],["DARTREF-6c4e6005c5aba6ca","FACT","source","$44","orders",["$75"],["EVD-2212a9fd75ca67e3"],[],[],[],[1,false,"orders","$1","$2","$41","$69","$75","resolved",["shop.presentation.order_page.orders"],"read"]],["DARTREF-6e3f25f7e5155552","FACT","source","$44","order.id",["$79"],["EVD-61daec5197b81426"],[],[],[],[1,false,"order.id","$1","$12","$42","$76","$79","resolved",["shop.domain.entities.Order.id"],"read"]],["DARTREF-7315c7c743feffaa","FACT","source","$44","Future",["shop.main.main"],["EVD-fa0dd4650e0a22aa"],[],[],[],[0,false,"Future","$80","$8","$39","shop.main","shop.main.main","$81",[],"type"]],["DARTREF-739c8f9bacad34fa","FACT","source","$44","BuildContext",["$74"],["EVD-1430a9a1737982de"],[],[],[],[0,false,"BuildContext","$80","$10","$41","$69","$74","$81",[],"type"]],["DARTREF-75ab3e80ba22bd06","FACT","source","$44","dynamic",["$52"],["EVD-30486e31747df8f7"],[],[],[],[0,false,"dynamic","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-77059ff9a0ef393f","FACT","source","$44","_orders",["$74"],["EVD-db704e9b0c66abd3"],[],[],[],[1,false,"_orders","$1","$10","$41","$69","$74","resolved",["shop.presentation.order_page._OrderPageState._orders"],"read"]],["DARTREF-79865a409d323e0d","FACT","source","$44","String",["$52"],["EVD-5b0dbfe3947b65cb"],[],[],[],[0,false,"String","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-7af2ec4142dd5bbe","FACT","source","$44","item",["$53"],["EVD-69923cb238f07334"],[],[],[],[0,false,"item","$80","$3","$36","$49","$53","$81",[],"read"]],["DARTREF-7e6824a0b1411489","FACT","source","$44","remote",["$51"],["EVD-6207b2ffc8f8accd"],[],[],[],[0,false,"remote","$80","$11","$36","$49","$51","$81",[],"read"]],["DARTREF-7ebbf6355b61ba70","FACT","source","$44","Client",["$46"],["EVD-a0fbfd1393269989"],[],[],[],[0,false,"Client","$80","$9","$34","$45","$46","$81",[],"type"]],["DARTREF-7ffa333004de629f","FACT","source","$44","String",["$59"],["EVD-1a5d44705a23e0c4"],[],[],[],[0,false,"String","$80","$m","$37","$59","$59","$81",[],"type"]],["DARTREF-80ae19972598cea7","FACT","source","$44","dynamic",["$53"],["EVD-d6000c4881193228"],[],[],[],[0,false,"dynamic","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-812739674a22837f","FACT","source","$44","int",["$59"],["EVD-896161ceffa52e72"],[],[],[],[0,false,"int","$80","$m","$37","$59","$59","$81",[],"type"]],["DARTREF-874c0c8f296a147d","FACT","source","$44","OrderLine",["$59"],["EVD-0d5be57505341e58"],[],[],[],[1,false,"OrderLine","$1","$m","$37","$59","$59","resolved",["$63"],"type"]],["DARTREF-889ae21e0bc0d7e9","FACT","source","$44","super.initState();",["$75"],["EVD-858df58fbc367e46"],[],[],[],[1,false,"super.initState();","$1","$2","$41","$69","$75","resolved",["$75"],"read"]],["DARTREF-8997a500a9e2aa63","FACT","source","$44","Order",["$56"],["EVD-f216efeb20910855"],[],[],[],[0,false,"Order","$80","$4","$36","$49","$56","$81",[],"type"]],["DARTREF-8a6f186c20079483","FACT","source","$44","List",["$53"],["EVD-cf4b91db4fbca2e7"],[],[],[],[0,false,"List","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-8ba0808927d1e5fd","FACT","source","$44","item",["$52"],["EVD-588b11482f4ac7b6"],[],[],[],[0,false,"item","$80","$5","$36","$49","$52","$81",[],"read"]],["DARTREF-8c4559916232179a","FACT","source","$44","Order",["$53"],["EVD-422e6c5ffa9d0aa7"],[],[],[],[0,false,"Order","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-8da809fa72e63fab","FACT","source","$44","sum",["$61"],["EVD-474b29b296b0e63d"],[],[],[],[0,false,"sum","$80","$7","$37","$59","$61","$81",[],"read"]],["DARTREF-8f3048e4df2fcc5e","FACT","source","$44","Key",["$78"],["EVD-5c018e628a271823"],[],[],[],[0,false,"Key","$80","DARTDEF-4c9947d8a8110446","$42","$76","$78","$81",[],"type"]],["DARTREF-934ad39e3f1e9b8b","FACT","source","$44","order",["$79"],["EVD-eed26e74f1b62ccf"],[],[],[],[1,false,"order","$1","$12","$42","$76","$79","resolved",["shop.presentation.order_tile.OrderTile.order"],"read"]],["DARTREF-945123abc16b5a79","FACT","source","$44","Map",["$52"],["EVD-63b774d6bdf9bcf0"],[],[],[],[0,false,"Map","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-9bbc7d8af3c679ab","FACT","source","$44","_orders",["$75"],["EVD-888301d07fe47a32"],[],[],[],[1,false,"_orders","$1","$2","$41","$69","$75","resolved",["shop.presentation.order_page._OrderPageState._orders"],"write"]],["DARTREF-a096b9d26c0b5e45","FACT","source","$44","BuildContext",["$79"],["EVD-2506e93ee7e3dd2f"],[],[],[],[0,false,"BuildContext","$80","$12","$42","$76","$79","$81",[],"type"]],["DARTREF-a57290e0de2f8d01","FACT","source","$44","order",["$56"],["EVD-c2824a95604d8d4a"],[],[],[],[0,false,"order","$80","$4","$36","$49","$56","$81",[],"read"]],["DARTREF-a59ac79ac87fdee2","FACT","source","$44","order.id",["$56"],["EVD-c2824a95604d8d4a"],[],[],[],[1,false,"order.id","$1","$4","$36","$49","$56","resolved",["shop.domain.entities.Order.id"],"read"]],["DARTREF-a902a6e267eff9e1","FACT","source","$44","http",["$51"],["EVD-673053c07de53a26"],[],[],[],[0,false,"http","$80","$11","$36","$49","$51","$81",[],"type"]],["DARTREF-a9d0a0c71f96386f","FACT","source","$44","Widget",["$79"],["EVD-c4a1f9e8c812f076"],[],[],[],[0,false,"Widget","$80","$12","$42","$76","$79","$81",[],"type"]],["DARTREF-ae6ad26082a9cbcc","FACT","source","$44","List",["$66"],["EVD-9fde16d3030451b7"],[],[],[],[0,false,"List","$80","DARTDEF-7b9209edd70e37c1","$38","$64","$66","$81",[],"type"]],["DARTREF-aef065834a485f31","FACT","source","$44","dynamic",["$52"],["EVD-a74c087d6d92573b"],[],[],[],[0,false,"dynamic","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-b0c7d1dd75c7b18a","FACT","source","$44","Order",["$67"],["EVD-396a4e007456287d"],[],[],[],[1,false,"Order","$1","DARTDEF-1c1c62e70661b9de","$38","$64","$67","resolved",["$60"],"type"]],["DARTREF-b485fb9e3cc5a0a5","FACT","source","$44","int",["$52"],["EVD-b9ab44cf07728dbf"],[],[],[],[0,false,"int","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-bfd6d06600718582","FACT","source","$44","sum",["$61"],["EVD-659fd15d72b65cf6"],[],[],[],[1,false,"sum","$1","$7","$37","$59","$61","resolved",["shop.domain.entities.sum"],"read"]],["DARTREF-c593e6c3105436cc","FACT","source","$44","order",["$74"],["EVD-f27bf9ba4d5c221f"],[],[],[],[0,false,"order","$80","$10","$41","$69","$74","$81",[],"read"]],["DARTREF-c67d214938f27046","FACT","source","$44","item",["$52"],["EVD-62bf7c302de413f4"],[],[],[],[0,false,"item","$80","$5","$36","$49","$52","$81",[],"read"]],["DARTREF-c9dd94f905c61d70","FACT","source","$44","Duration",["$46"],["EVD-908bbf75987a640a"],[],[],[],[0,false,"Duration","$80","$9","$34","$45","$46","$81",[],"type"]],["DARTREF-cb197c80758e5b75","FACT","source","$44","Map",["$52"],["EVD-0b0abe1156f1c10c"],[],[],[],[0,false,"Map","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-ccc113219121b66d","FACT","source","$44","children",["$74"],["EVD-a221c6d1476c1168"],[],[],[],[0,false,"children","$80","$10","$41","$69","$74","$81",[],"read"]],["DARTREF-cec2904ce5b814f6","FACT","source","$44","Order",["$69"],["EVD-615005a4fa68b25d"],[],[],[],[1,false,"Order","$1","$m","$41","$69","$69","resolved",["$60"],"type"]],["DARTREF-d1134d04cffa1434","FACT","source","$44","seconds",["$46"],["EVD-385768fb95e15aad"],[],[],[],[0,false,"seconds","$80","$9","$34","$45","$46","$81",[],"read"]],["DARTREF-d28aa259f9af9115","FACT","source","$44","Order",["$52"],["EVD-c1b2e988c10b5461"],[],[],[],[0,false,"Order","$80","$5","$36","$49","$52","$81",[],"type"]],["DARTREF-d34ecaf7528462e6","FACT","source","$44","Order",["$76"],["EVD-1633f12b71bec301"],[],[],[],[1,false,"Order","$1","$m","$42","$76","$76","resolved",["$60"],"type"]],["DARTREF-d4cfb26645a31526","FACT","source","$44","connectionTimeout",["$46"],["EVD-4fea7eb8cb4fe7d9"],[],[],[],[0,false,"connectionTimeout","$80","$9","$34","$45","$46","$81",[],"read"]],["DARTREF-d931d5d32911abb7","FACT","source","$44","List",["$53"],["EVD-3ea8807f2ecd8a9f"],[],[],[],[0,false,"List","$80","$3","$36","$49","$53","$81",[],"type"]],["DARTREF-dce6e59d55781803","FACT","source","$44","line.unitCents",["$61"],["EVD-9535deff19439b9e"],[],[],[],[1,false,"line.unitCents","$1","$7","$37","$59","$61","resolved",["shop.domain.entities.OrderLine.unitCents"],"read"]],["DARTREF-dfc481e5c9207a53","FACT","source","$44","Uri",["$51"],["EVD-01edc03c693170ff"],[],[],[],[0,false,"Uri","$80","$11","$36","$49","$51","$81",[],"type"]],["DARTREF-e24d6b138e849577","FACT","source","$44","String",["$62"],["EVD-078fa01d92317cd6"],[],[],[],[0,false,"String","$80","$6","$37","$59","$62","$81",[],"type"]],["DARTREF-e3d3018cc734a880","FACT","source","$44","_client",["$56"],["EVD-01e86d839c4d45d4"],[],[],[],[0,false,"_client","$80","$4","$36","$49","$56","$81",[],"read"]],["DARTREF-e498373cb4249b59","FACT","source","$44","_client",["$55"],["EVD-c0d04009674c48a5"],[],[],[],[0,false,"_client","$80","DARTBIND-7e9e7dcc048ba93c","$36","$49","$55","$81",[],"read"]],["DARTREF-e72f88a7d27645f5","FACT","source","$44","http",["$48"],["EVD-9bd79b525821cb13"],[],[],[],[0,false,"http","$80","DARTDEF-c55182f84e9c08ed","$35","$47","$48","$81",[],"type"]],["DARTREF-f19d258b61d23cc8","FACT","source","$44","_base",["$55"],["EVD-9f40ca4cf6d5b191"],[],[],[],[0,false,"_base","$80","DARTBIND-7e9e7dcc048ba93c","$36","$49","$55","$81",[],"read"]],["DARTREF-f1d06029a734a3a8","FACT","source","$44","Order",["shop.domain.entities.Order.Order"],["EVD-7d17448959d435ef"],[],[],[],[1,false,"Order","$1","DARTDEF-d936ef19353a9f61","$37","$59","shop.domain.entities.Order.Order","resolved",["$60"],"read"]],["DARTREF-f2ec27e7b402eda9","FACT","source","$44","OrderPage",["$72"],["EVD-cdf2c97c0b6df20a"],[],[],[],[1,false,"OrderPage","$1","DARTDEF-e19f42e0d56392c5","$40","$69","$72","resolved",["$70"],"type"]],["DARTREF-fb772014bdd306d2","FACT","source","$44","lines",["$62"],["EVD-3d37768ffa15f98b"],[],[],[],[1,false,"lines","$1","$6","$37","$59","$62","resolved",["shop.domain.entities.OrderDraft.lines"],"read"]]],"runtime":{"name":"python","required":">=3.11","version":"3.11.12"},"schema_version":"2.0.0","scope_observations":[["INSIDE-REQUIRES-EVALUATION-e89f495d393969e7","FACT","components","inside_rule_evaluation","REQUIRES-COMPLETE evaluated its scoped imports",["$49","$49","$49","$49","$58","$58","$58","$58","$64","shop.main","shop.main","$69","$69","$76"],["EVD-187d8ee208a95410","EVD-281d73fa7f851d6d","EVD-281d73fa7f851d6d","EVD-28a3a19c3c545b99","EVD-7bddde2fe6208f95","EVD-a64916cfd0ba7d21","EVD-c66424829f560ca4"],["REQUIRES-COMPLETE"],["DARTIMP-37f6da361b185e6c","DARTIMP-bef82b199fdfbc9c","DARTIMP-c6374edab68a9ea7","DARTIMP-c9967bb3883bd5b7","DARTIMP-cc08bcaf9af1b8b4","DARTIMP-e5677714540eae6d","DARTIMP-ffcc6c7350a4ac68"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m","$m"]],["RULE-EVALUATION-02e2a16085f8541c","FACT","rules","rule_evaluation","COMPONENT-NO-CYCLES evaluator completed",["app","data","domain","presentation"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["COMPONENT-NO-CYCLES"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m",[],false,["app","data","domain","presentation"],"$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-22b72e54d5876e2a","FACT","rules","rule_evaluation","DEP-DOMAIN-NO-DART-IO evaluator completed",["$58","$59","$64"],["$16","$18","$21"],["DEP-DOMAIN-NO-DART-IO"],["$25","$26","$29"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-3f968779a701e731","FACT","rules","rule_evaluation","EXTERNAL-FLUTTER-UI evaluator completed",["$45","$47","$49","$58","$59","$64","shop.main","$69","$76"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["EXTERNAL-FLUTTER-UI"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-451901b74e17e608","FACT","rules","rule_evaluation","ROOT-LAYOUT evaluator completed",["$45","$47","$49","$58","$59","$64","shop.main","$69","$76"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["ROOT-LAYOUT"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-5a419eab23faca55","FACT","rules","rule_evaluation","EXTERNAL-HTTP-DATA evaluator completed",["$45","$47","$49","$58","$59","$64","shop.main","$69","$76"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["EXTERNAL-HTTP-DATA"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-5a9077e1eb227fb2","FACT","rules","rule_evaluation","DATA-PLATFORMS-ISOLATED evaluator completed",["$45","$47"],["$15","$19"],["DATA-PLATFORMS-ISOLATED"],["$24","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-759e577f2e2fbbc9","FACT","rules","rule_evaluation","EXTERNAL-COMPLETE evaluator completed",["$45","$47","$49","$58","$59","$64","shop.main","$69","$76"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["EXTERNAL-COMPLETE"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-7a8c1556dc93730b","FACT","rules","rule_evaluation","INTERFACE-BOUNDARY evaluator completed",["$45","$47","$49","$58","$59","$64","shop.main","$69","$76"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["INTERFACE-BOUNDARY"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-8d65305b0ed80807","FACT","rules","rule_evaluation","ASSIGNMENT-COMPLETE evaluator completed",["$45","$47","$49","$58","$59","$64","shop.main","$69","$76"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["ASSIGNMENT-COMPLETE"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["RULE-EVALUATION-e89f495d393969e7","FACT","rules","rule_evaluation","REQUIRES-COMPLETE evaluator completed",["$45","$47","$49","$58","$59","$64","shop.main","$69","$76"],["$13","$14","$15","$16","$17","$18","$19","$20","$21"],["REQUIRES-COMPLETE"],["$23","$24","$25","$26","$27","$28","$29","$30","$31"],[],["$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","$m","root","$m","$m"]],["SCOPE-4824390c78bd833c","FACT","components","declared_component_scope_observation","Observed source scope for app",["shop.main"],["$14"],["COMP-APP"],["EDGE-3270fff11ba5935a","EDGE-4db289a18cd4d5da","$27"],[],["COMP-APP",true,"$m","$m","$m",2,["$39"],1,["shop.main"],1,["$49","$69"],["shop.data","$68"],"$m","$m",[{"kind":"package","observed_module_count":1,"scope":"shop.main"}],["shop.main"]]],["SCOPE-59258e856c746a1d","FACT","components","declared_component_scope_observation","Observed source scope for data",["shop.data"],["$13","$15","$19"],["COMP-DATA"],["EDGE-0f5989dbc086205f","EDGE-8f82bd9940bb0c3d","$23","$24","$31"],[],["COMP-DATA",true,"$m","$m","$m",1,["$34","$35","$36"],3,["$45","$47","$49"],3,["$58","$64"],["$57"],"$m","$m",[{"kind":"package","observed_module_count":3,"scope":"shop.data"}],["shop.data"]]],["SCOPE-f16e085a9ec8fc42","FACT","components","declared_component_scope_observation","Observed source scope for presentation",["$68"],["$17","$20"],["COMP-PRESENTATION"],["EDGE-0bdfaad2f898238e","EDGE-7a07c279001c0469","$28","$30"],[],["COMP-PRESENTATION",true,"$m","$m","$m",1,["$40","$42"],2,["$69","$76"],2,["$58"],["$57"],"$m","$m",[{"kind":"package","observed_module_count":2,"scope":"$68"}],["$68"]]],["SCOPE-f93f9d59a8cf5768","FACT","components","declared_component_scope_observation","Observed source scope for domain",["$57"],["$16","$18","$21"],["COMP-DOMAIN"],["$25","$26","$29"],[],["COMP-DOMAIN",true,"$m","$m","$m",0,["lib/domain/domain.dart","$37","$38"],3,["$58","$59","$64"],3,[],[],"$m","$m",[{"kind":"package","observed_module_count":3,"scope":"$57"}],["$57"]]]],"source":{"dirty":false,"git_head":"4ea832ffd082d91fad412e8bd36149bd3d4cace5","scope":["lib/**/*.dart"],"source_digest":"30e6f5a6b8c8eba17b53f82ebcad489716b0210fb7fc3243805aaed30120ebda"},"string_table":["Analyzer resolved a local generative constructor","Analyzer resolved the source element","DARTDEF-06cc533fe5836d4e","DARTDEF-0bff5490a49bd38c","DARTDEF-187a390ef233e010","DARTDEF-1bacf0b13ffd6a2a","DARTDEF-5288401c8c3df9d6","DARTDEF-84082b187ce7d668","DARTDEF-93ade6de2e859347","DARTDEF-a15d97ad95f221f3","DARTDEF-a32e2e9926072672","DARTDEF-cedf84fb883c82a2","DARTDEF-f614d8916a90e1a0","EVD-2281cf63035ca9bf","EVD-26b54a77e24bb468","EVD-27453539d2a32c2e","EVD-328aa86d245f3315","EVD-32ae7af565eb63bd","EVD-5f923d55d81a2376","EVD-a21aad7cd88dbd66","EVD-d02d4a76001a7b5f","EVD-ddb440168ff441bb","HttpOrderRepository(createClient(), Uri.parse('https://shop.example/api/'))","MOD-33c41a7a8e6f891c","MOD-48c88b887df0fce1","MOD-6d2285ed8cd10a9b","MOD-7632ee4486608119","MOD-99806c14551d2b90","MOD-a1faf65954a115f5","MOD-b660d77e3cc5b588","MOD-b6b06931ceb31a55","MOD-e88a3fc8b76991c4","Order(item['id'] as String,[for(final line in(item['lines'] as List<dynamic>).cast<Map<String, dynamic>>()) OrderLine(line['description'] as String, line['quantity'] as int, line['unit_cents'] as int)])","docs/architecture/shop.md","lib/data/client_io.dart","lib/data/client_stub.dart","lib/data/http_order_repository.dart","lib/domain/entities.dart","lib/domain/repository.dart","lib/main.dart","lib/presentation/order_page.dart","lib/presentation/order_page_state.dart","lib/presentation/order_tile.dart","module_topology","reference","shop.data.client_io","shop.data.client_io.createClient","shop.data.client_stub","shop.data.client_stub.createClient","shop.data.http_order_repository","shop.data.http_order_repository.HttpOrderRepository","shop.data.http_order_repository.HttpOrderRepository.HttpOrderRepository.remote","shop.data.http_order_repository.HttpOrderRepository._order","shop.data.http_order_repository.HttpOrderRepository.ordersOf","shop.data.http_order_repository.HttpOrderRepository.ordersOf.items","shop.data.http_order_repository.HttpOrderRepository.ordersOf.response","shop.data.http_order_repository.HttpOrderRepository.save","shop.domain","shop.domain.domain","shop.domain.entities","shop.domain.entities.Order","shop.domain.entities.Order.totalCents::getter","shop.domain.entities.OrderDraft.place","shop.domain.entities.OrderLine","shop.domain.repository","shop.domain.repository.OrderRepository","shop.domain.repository.OrderRepository.ordersOf","shop.domain.repository.OrderRepository.save","shop.presentation","shop.presentation.order_page","shop.presentation.order_page.OrderPage","shop.presentation.order_page.OrderPage.OrderPage","shop.presentation.order_page.OrderPage.createState","shop.presentation.order_page._OrderPageState","shop.presentation.order_page._OrderPageState.build","shop.presentation.order_page._OrderPageState.initState","shop.presentation.order_tile","shop.presentation.order_tile.OrderTile","shop.presentation.order_tile.OrderTile.OrderTile","shop.presentation.order_tile.OrderTile.build","target is external, dynamic, or unresolved","unresolved","widget.repository.ordersOf('demo').then((orders) => setState(() => _orders = orders))"],"symbols":[["DARTBIND-432403630ebef5dc","FACT","source","binding","shop.data.http_order_repository.HttpOrderRepository.ordersOf.items declaration",["$54"],["EVD-d2685460eb7f508e"],[],[],[],["$m",null,"$m","$m",true,"$m",[],[],"$m","(jsonDecode(response.body) as List<dynamic>).cast<Map<String, dynamic>>()","$3","$m","$m","$m","$m","$49","items",false,"shop.data","$m","$53","$54","$m",true,true,"$36",true,"dynamic_binding",{"basis":"language","kind":"public","spelling":"items"}]],["DARTBIND-7e9e7dcc048ba93c","FACT","source","binding","shop.data.http_order_repository.HttpOrderRepository.ordersOf.response declaration",["$55"],["EVD-dd1cb38a7302ed15"],[],[],[],["$m",null,"$m","$m",true,"$m",[],[],"$m","await _client.get(_base.resolve('customers/$customerId/orders'))","$3","$m","$m","$m","$m","$49","response",false,"shop.data","$m","$53","$55","$m",true,true,"$36",true,"dynamic_binding",{"basis":"language","kind":"public","spelling":"response"}]],["$2","FACT","source","method","shop.presentation.order_page._OrderPageState.initState declaration",["$75"],["EVD-7dcc2ac565a04972"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-bfad3dbf9f427385","$m","instance","$m","$m","$69","initState",false,"$68",[],"$73","$75","void",true,true,"$41",true,"method",{"basis":"language","kind":"public","spelling":"initState"}]],["$3","FACT","source","method","shop.data.http_order_repository.HttpOrderRepository.ordersOf declaration",["$53"],["EVD-23e4aa2ffcb234bd"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-b9cfe4b9291b9843","$m","instance","$m","$m","$49","ordersOf",false,"shop.data",[{"annotation":"String","default":null,"default_known":true,"kind":"positional","name":"customerId"}],"$50","$53","Future<List<Order>>",true,true,"$36",true,"method",{"basis":"language","kind":"public","spelling":"ordersOf"}]],["DARTDEF-0fb17e69568c3bdb","FACT","source","method","shop.data.http_order_repository.HttpOrderRepository.HttpOrderRepository declaration",["shop.data.http_order_repository.HttpOrderRepository.HttpOrderRepository"],["EVD-1ae707ba97190a8d"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-b9cfe4b9291b9843","$m","constructor","$m","$m","$49","HttpOrderRepository",false,"shop.data",[{"annotation":"http.Client","default":null,"default_known":true,"kind":"positional","name":"_client"},{"annotation":"Uri","default":null,"default_known":true,"kind":"positional","name":"_base"}],"$50","shop.data.http_order_repository.HttpOrderRepository.HttpOrderRepository","HttpOrderRepository",true,true,"$36",true,"method",{"basis":"language","kind":"public","spelling":"HttpOrderRepository"}]],["$4","FACT","source","method","shop.data.http_order_repository.HttpOrderRepository.save declaration",["$56"],["EVD-5015dc26251ec651"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-b9cfe4b9291b9843","$m","instance","$m","$m","$49","save",false,"shop.data",[{"annotation":"Order","default":null,"default_known":true,"kind":"positional","name":"order"}],"$50","$56","Future<void>",true,true,"$36",true,"method",{"basis":"language","kind":"public","spelling":"save"}]],["$5","FACT","source","method","shop.data.http_order_repository.HttpOrderRepository._order declaration",["$52"],["EVD-8e12665904955db2"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-b9cfe4b9291b9843","$m","instance","$m","$m","$49","_order",false,"shop.data",[{"annotation":"Map<String, dynamic>","default":null,"default_known":true,"kind":"positional","name":"item"}],"$50","$52","Order",true,true,"$36",true,"method",{"basis":"language","kind":"private","spelling":"_order"}]],["DARTDEF-1c1c62e70661b9de","FACT","source","method","shop.domain.repository.OrderRepository.save declaration",["$67"],["EVD-8f2ba4941df1be59"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-55abb83045422487","$m","instance","$m","$m","$64","save",false,"$57",[{"annotation":"Order","default":null,"default_known":true,"kind":"positional","name":"order"}],"$65","$67","FutureOr<void>",true,true,"$38",true,"method",{"basis":"language","kind":"public","spelling":"save"}]],["DARTDEF-20af729b373396ff","FACT","source","class","shop.domain.entities.OrderLine declaration",["$63"],["EVD-eab7b82b611e8063"],[],[],[],["$m","$m",[{"annotation":"String","constant":null,"definition_id":"DARTATTR-5566a6edd5d7e056","evidence_ids":["EVD-c5240edef1ed9137"],"name":"description","static":false,"visibility":{"basis":"language","kind":"public","spelling":"description"}},{"annotation":"int","constant":null,"definition_id":"DARTATTR-4821213862fa423a","evidence_ids":["EVD-0a1339ba7cf6f4cc"],"name":"quantity","static":false,"visibility":{"basis":"language","kind":"public","spelling":"quantity"}},{"annotation":"int","constant":null,"definition_id":"DARTATTR-e560b0489d60d15a","evidence_ids":["EVD-c82452238c7a4df6"],"name":"unitCents","static":false,"visibility":{"basis":"language","kind":"public","spelling":"unitCents"}}],[],true,"class",[],"$m",[],"$m",null,[{"definition_ids":["DARTATTR-5566a6edd5d7e056","DARTATTR-4821213862fa423a","DARTATTR-e560b0489d60d15a"],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["DARTDEF-fe89b3f442f08197"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m",false,[],"$59","OrderLine",false,"$57","$m",null,"$63","$m",true,true,"$37",true,"class",{"basis":"language","kind":"public","spelling":"OrderLine"}]],["DARTDEF-4c9947d8a8110446","FACT","source","method","shop.presentation.order_tile.OrderTile.OrderTile declaration",["$78"],["EVD-4039bd9ef2489865"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-6f0b8b31d5393b52","$m","constructor","$m","$m","$76","OrderTile",false,"$68",[{"annotation":"Key?","default":"null","default_known":true,"kind":"keyword_only","name":"key"},{"annotation":"Order","default":null,"default_known":true,"kind":"keyword_only","name":"order"}],"$77","$78","OrderTile",true,true,"$42",true,"method",{"basis":"language","kind":"public","spelling":"OrderTile"}]],["$6","FACT","source","method","shop.domain.entities.OrderDraft.place declaration",["$62"],["EVD-81bd7759b2b264ef"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-88172be219cedeaf","$m","instance","$m","$m","$59","place",false,"$57",[{"annotation":"String","default":null,"default_known":true,"kind":"positional","name":"id"}],"shop.domain.entities.OrderDraft","$62","Order",true,true,"$37",true,"method",{"basis":"language","kind":"public","spelling":"place"}]],["DARTDEF-55abb83045422487","FACT","source","class","shop.domain.repository.OrderRepository declaration",["$65"],["EVD-ac9fd24558ebcdeb"],[],[],[],["$m","$m",[],[],true,"protocol",[],"$m",[],"$m",null,[{"definition_ids":[],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["DARTDEF-7b9209edd70e37c1","DARTDEF-1c1c62e70661b9de"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m","$m",["abstract","interface"],"$64","OrderRepository",false,"$57","$m",null,"$65","$m",true,true,"$38",true,"class",{"basis":"language","kind":"public","spelling":"OrderRepository"}]],["DARTDEF-69c0a3856a2901a6","FACT","source","class","shop.presentation.order_page.OrderPage declaration",["$70"],["EVD-cc3c2bed73768b5e"],[],[],[],["$m","$m",[{"annotation":"OrderRepository","constant":null,"definition_id":"DARTATTR-1e6ddc282732681e","evidence_ids":["EVD-59c20e9285a2a558"],"name":"repository","static":false,"visibility":{"basis":"language","kind":"public","spelling":"repository"}}],[{"candidate_count":0,"candidates_truncated":false,"evidence_ids":["EVD-cc3c2bed73768b5e"],"expression":"StatefulWidget","id":"DARTBASE-4bf8b40a9798befb","reason":"base type is external or unresolved","relationship_kind":"inherits","status":"$81","targets":[]}],true,"class",[],"$m",[],"$m",null,[{"definition_ids":["DARTATTR-1e6ddc282732681e"],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["DARTDEF-fa35bb591f3e17a2","DARTDEF-e19f42e0d56392c5"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m",false,[],"$69","OrderPage",false,"$68","$m",null,"$70","$m",true,true,"$40",true,"class",{"basis":"language","kind":"public","spelling":"OrderPage"}]],["DARTDEF-6f0b8b31d5393b52","FACT","source","class","shop.presentation.order_tile.OrderTile declaration",["$77"],["EVD-314a4268e629c396"],[],[],[],["$m","$m",[{"annotation":"Order","constant":null,"definition_id":"DARTATTR-7cde22316564ae0f","evidence_ids":["EVD-bae4a16e60a256f8"],"name":"order","static":false,"visibility":{"basis":"language","kind":"public","spelling":"order"}}],[{"candidate_count":0,"candidates_truncated":false,"evidence_ids":["EVD-314a4268e629c396"],"expression":"StatelessWidget","id":"DARTBASE-dfe49255c8681ec9","reason":"base type is external or unresolved","relationship_kind":"inherits","status":"$81","targets":[]}],true,"class",[],"$m",[],"$m",null,[{"definition_ids":["DARTATTR-7cde22316564ae0f"],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["DARTDEF-4c9947d8a8110446","$12"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m",false,[],"$76","OrderTile",false,"$68","$m",null,"$77","$m",true,true,"$42",true,"class",{"basis":"language","kind":"public","spelling":"OrderTile"}]],["DARTDEF-7b9209edd70e37c1","FACT","source","method","shop.domain.repository.OrderRepository.ordersOf declaration",["$66"],["EVD-967c548164f5e155"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-55abb83045422487","$m","instance","$m","$m","$64","ordersOf",false,"$57",[{"annotation":"String","default":null,"default_known":true,"kind":"positional","name":"customerId"}],"$65","$66","Future<List<Order>>",true,true,"$38",true,"method",{"basis":"language","kind":"public","spelling":"ordersOf"}]],["$7","FACT","source","method","shop.domain.entities.Order.totalCents::getter declaration",["$61"],["EVD-f06a0d7ac16d739e"],[],[],[],["getter",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-b0b90f895aa71cf7","$m","instance","$m","$m","$59","totalCents",false,"$57",[],"$60","$61","int",true,true,"$37",true,"method",{"basis":"language","kind":"public","spelling":"totalCents"}]],["DARTDEF-88172be219cedeaf","FACT","source","class","shop.domain.entities.OrderDraft declaration",["shop.domain.entities.OrderDraft"],["EVD-c0d8096eee841c94"],[],[],[],["$m","$m",[{"annotation":"List<OrderLine>","constant":null,"definition_id":"DARTATTR-83f30d669e576f36","evidence_ids":["EVD-51aade0b22045527"],"name":"lines","static":false,"visibility":{"basis":"language","kind":"public","spelling":"lines"}}],[],true,"class",[],"$m",[],"$m",null,[{"definition_ids":["DARTATTR-83f30d669e576f36"],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["$6"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m",false,[],"$59","OrderDraft",false,"$57","$m",null,"shop.domain.entities.OrderDraft","$m",true,true,"$37",true,"class",{"basis":"language","kind":"public","spelling":"OrderDraft"}]],["$8","FACT","source","function","shop.main.main declaration",["shop.main.main"],["EVD-fa0dd4650e0a22aa"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m",null,"$m","static","$m",[],"shop.main","main",false,"shop",[],null,"shop.main.main","Future<void>",true,true,"$39",true,"function",{"basis":"language","kind":"public","spelling":"main"}]],["$9","FACT","source","function","shop.data.client_io.createClient declaration",["$46"],["EVD-e20486f278d8fbc0"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m",null,"$m","static","$m",[],"$45","createClient",false,"shop.data",[],null,"$46","http.Client",true,true,"$34",true,"function",{"basis":"language","kind":"public","spelling":"createClient"}]],["$10","FACT","source","method","shop.presentation.order_page._OrderPageState.build declaration",["$74"],["EVD-26b8fa44725bdbf4"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-bfad3dbf9f427385","$m","instance","$m","$m","$69","build",false,"$68",[{"annotation":"BuildContext","default":null,"default_known":true,"kind":"positional","name":"context"}],"$73","$74","Widget",true,true,"$41",true,"method",{"basis":"language","kind":"public","spelling":"build"}]],["DARTDEF-b0b90f895aa71cf7","FACT","source","class","shop.domain.entities.Order declaration",["$60"],["EVD-331a7000532e7fd0"],[],[],[],["$m","$m",[{"annotation":"String","constant":null,"definition_id":"DARTATTR-e09537716172bb24","evidence_ids":["EVD-0008d07886df10ae"],"name":"id","static":false,"visibility":{"basis":"language","kind":"public","spelling":"id"}},{"annotation":"List<OrderLine>","constant":null,"definition_id":"DARTATTR-c6d0bf80913e943b","evidence_ids":["EVD-b03b487113ac220a"],"name":"lines","static":false,"visibility":{"basis":"language","kind":"public","spelling":"lines"}}],[],true,"class",[],"$m",[],"$m",null,[{"definition_ids":["DARTATTR-e09537716172bb24","DARTATTR-c6d0bf80913e943b"],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["DARTDEF-d936ef19353a9f61","$7"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m",false,[],"$59","Order",false,"$57","$m",null,"$60","$m",true,true,"$37",true,"class",{"basis":"language","kind":"public","spelling":"Order"}]],["DARTDEF-b9cfe4b9291b9843","FACT","source","class","shop.data.http_order_repository.HttpOrderRepository declaration",["$50"],["EVD-bf837fa3642b48a9"],[],[],[],["$m","$m",[{"annotation":"http.Client","constant":null,"definition_id":"DARTATTR-4abcb9e505d5665d","evidence_ids":["EVD-a073bb0f51996e28"],"name":"_client","static":false,"visibility":{"basis":"language","kind":"private","spelling":"_client"}},{"annotation":"Uri","constant":null,"definition_id":"DARTATTR-691f335ad0e2f131","evidence_ids":["EVD-36fb36f2745932d7"],"name":"_base","static":false,"visibility":{"basis":"language","kind":"private","spelling":"_base"}}],[{"candidate_count":1,"candidates_truncated":false,"evidence_ids":["EVD-bf837fa3642b48a9"],"expression":"OrderRepository","id":"DARTBASE-a8c566ed022f78b3","reason":"Analyzer resolved local declared type","relationship_kind":"realizes","status":"resolved","targets":["$65"]}],true,"class",[],"$m",[],"$m",null,[{"definition_ids":["DARTATTR-4abcb9e505d5665d","DARTATTR-691f335ad0e2f131"],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["DARTDEF-0fb17e69568c3bdb","$11","$3","$4","$5"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m",false,[],"$49","HttpOrderRepository",false,"shop.data","$m",null,"$50","$m",true,true,"$36",true,"class",{"basis":"language","kind":"public","spelling":"HttpOrderRepository"}]],["DARTDEF-bfad3dbf9f427385","FACT","source","class","shop.presentation.order_page._OrderPageState declaration",["$73"],["EVD-4a89619fe76734f2"],[],[],[],["$m","$m",[{"annotation":"List<Order>","constant":"const []","definition_id":"DARTATTR-1d946ee36aacdbb2","evidence_ids":["EVD-096a3af93f5188c1"],"name":"_orders","static":false,"visibility":{"basis":"language","kind":"private","spelling":"_orders"}}],[{"candidate_count":0,"candidates_truncated":false,"evidence_ids":["EVD-4a89619fe76734f2"],"expression":"State<OrderPage>","id":"DARTBASE-8c08bce4a3a1ff8f","reason":"base type is external or unresolved","relationship_kind":"inherits","status":"$81","targets":[]}],true,"class",[],"$m",[],"$m",null,[{"definition_ids":["DARTATTR-1d946ee36aacdbb2"],"kind":"attribute","reason":null,"schema_version":"1.0.0","status":"complete"},{"definition_ids":["$2","$10"],"kind":"method","reason":null,"schema_version":"1.0.0","status":"complete"}],"$m",false,[],"$69","_OrderPageState",false,"$68","$m",null,"$73","$m",true,true,"$41",true,"class",{"basis":"language","kind":"private","spelling":"_OrderPageState"}]],["DARTDEF-c55182f84e9c08ed","FACT","source","function","shop.data.client_stub.createClient declaration",["$48"],["EVD-9bd79b525821cb13"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m",null,"$m","static","$m",[],"$47","createClient",false,"shop.data",[],null,"$48","http.Client",true,true,"$35",true,"function",{"basis":"language","kind":"public","spelling":"createClient"}]],["$11","FACT","source","method","shop.data.http_order_repository.HttpOrderRepository.HttpOrderRepository.remote declaration",["$51"],["EVD-48e4f0ae2be14fc8"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-b9cfe4b9291b9843","$m","factory","$m","$m","$49","HttpOrderRepository.remote",false,"shop.data",[],"$50","$51","HttpOrderRepository",true,true,"$36",true,"method",{"basis":"language","kind":"public","spelling":"remote"}]],["DARTDEF-d936ef19353a9f61","FACT","source","method","shop.domain.entities.Order.Order declaration",["shop.domain.entities.Order.Order"],["EVD-e4e857c1b3c81bd6"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-b0b90f895aa71cf7","$m","constructor","$m","$m","$59","Order",false,"$57",[{"annotation":"String","default":null,"default_known":true,"kind":"positional","name":"id"},{"annotation":"List<OrderLine>","default":null,"default_known":true,"kind":"positional","name":"lines"}],"$60","shop.domain.entities.Order.Order","Order",true,true,"$37",true,"method",{"basis":"language","kind":"public","spelling":"Order"}]],["DARTDEF-e19f42e0d56392c5","FACT","source","method","shop.presentation.order_page.OrderPage.createState declaration",["$72"],["EVD-77a937a9af615581"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-69c0a3856a2901a6","$m","instance","$m","$m","$69","createState",false,"$68",[],"$70","$72","State<OrderPage>",true,true,"$40",true,"method",{"basis":"language","kind":"public","spelling":"createState"}]],["$12","FACT","source","method","shop.presentation.order_tile.OrderTile.build declaration",["$79"],["EVD-cfb3baf85b65f626"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-6f0b8b31d5393b52","$m","instance","$m","$m","$76","build",false,"$68",[{"annotation":"BuildContext","default":null,"default_known":true,"kind":"positional","name":"context"}],"$77","$79","Widget",true,true,"$42",true,"method",{"basis":"language","kind":"public","spelling":"build"}]],["DARTDEF-fa35bb591f3e17a2","FACT","source","method","shop.presentation.order_page.OrderPage.OrderPage declaration",["$71"],["EVD-e9dc8e674ec285bc"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-69c0a3856a2901a6","$m","constructor","$m","$m","$69","OrderPage",false,"$68",[{"annotation":"Key?","default":"null","default_known":true,"kind":"keyword_only","name":"key"},{"annotation":"OrderRepository","default":null,"default_known":true,"kind":"keyword_only","name":"repository"}],"$70","$71","OrderPage",true,true,"$40",true,"method",{"basis":"language","kind":"public","spelling":"OrderPage"}]],["DARTDEF-fe89b3f442f08197","FACT","source","method","shop.domain.entities.OrderLine.OrderLine declaration",["shop.domain.entities.OrderLine.OrderLine"],["EVD-a66af5d95cd681ba"],[],[],[],["$m",null,"$m","$m",true,"$m",[],"$m","$m","$m","DARTDEF-20af729b373396ff","$m","constructor","$m","$m","$59","OrderLine",false,"$57",[{"annotation":"String","default":null,"default_known":true,"kind":"positional","name":"description"},{"annotation":"int","default":null,"default_known":true,"kind":"positional","name":"quantity"},{"annotation":"int","default":null,"default_known":true,"kind":"positional","name":"unitCents"}],"$63","shop.domain.entities.OrderLine.OrderLine","OrderLine",true,true,"$37",true,"method",{"basis":"language","kind":"public","spelling":"OrderLine"}]]],"transitive_paths":[["PATH-8af9decc9ee24d1f","FACT","package_topology","transitive_package_dependency","shop → shop.data → shop.domain",["shop","shop.data","$57"],[],[],["EDGE-78e87a40844cfe5e","EDGE-996ccbf5869b0976"],[],["package",["shop","shop.data","$57"],"shop","$57"]]],"typing_signals":null,"unknowns":[],"violations":[]}
