| 1 | import * as emr from "@distilled.cloud/aws/emr-serverless"; |
| 2 | import * as Layer from "effect/Layer"; |
| 3 | import { makeEmrServerlessHttpBinding } from "./BindingHttp.ts"; |
| 4 | import { GetResourceDashboard } from "./GetResourceDashboard.ts"; |
| 5 | |
| 6 | export const GetResourceDashboardHttp = Layer.effect( |
| 7 | GetResourceDashboard, |
| 8 | makeEmrServerlessHttpBinding({ |
| 9 | tag: "AWS.EMRServerless.GetResourceDashboard", |
| 10 | operation: emr.getResourceDashboard, |
| 11 | actions: ["emr-serverless:GetResourceDashboard"], |
| 12 | // The dashboard is minted for a sub-resource (e.g. a session) of the |
| 13 | // application — grant the sub-resource wildcard alongside the |
| 14 | // application ARN. NOTE: as of 2026-07 the service denies this action |
| 15 | // for every caller (even `Action:"*"` admins) — see |
| 16 | // test/AWS/EMRServerless/probe.test.ts, which pins that platform gate. |
| 17 | subresources: ["/*"], |
| 18 | }), |
| 19 | ); |