(resource: Resource<T>)
| 643 | * is not. |
| 644 | */ |
| 645 | export function chain<T>(resource: Resource<T>): T { |
| 646 | switch (resource.status()) { |
| 647 | case 'idle': |
| 648 | throw ResourceParamsStatus.IDLE; |
| 649 | case 'error': |
| 650 | throw new ResourceDependencyError(resource); |
| 651 | case 'loading': |
| 652 | case 'reloading': |
| 653 | throw ResourceParamsStatus.LOADING; |
| 654 | } |
| 655 | return resource.value(); |
| 656 | } |
| 657 | |
| 658 | export const paramsContext: ResourceParamsContext = { |
| 659 | chain, |