Load an object by its ID via node(id:) with an inline fragment.
(self, type_name: str, id_value: str)
| 147 | return ctx.select("Query", field_name, args) |
| 148 | |
| 149 | def select_id(self, type_name: str, id_value: str) -> "Context": |
| 150 | """Load an object by its ID via node(id:) with an inline fragment.""" |
| 151 | ctx = dataclasses.replace(self, selections=collections.deque()) |
| 152 | node_field = Field( |
| 153 | type_name="Query", |
| 154 | name="node", |
| 155 | args={"id": id_value}, |
| 156 | inline_type=type_name, |
| 157 | ) |
| 158 | selections = ctx.selections.copy() |
| 159 | selections.append(node_field) |
| 160 | return dataclasses.replace(ctx, selections=selections) |
| 161 | |
| 162 | async def build(self) -> DSLSelectable: |
| 163 | if not self.selections: |
no test coverage detected