* Builds the change-detection hash for a video. * * The hash is keyed on the video's own publish time (`videos.list` `snippet.publishedAt` * / playlistItem `contentDetails.videoPublishedAt`), which is identical on both the * listing stub and the hydrated document — guaranteeing the stub/getDocum
(videoId: string, videoPublishedAt: string)
| 75 | * picked up. This is a known limitation of the API-key data surface. |
| 76 | */ |
| 77 | function buildContentHash(videoId: string, videoPublishedAt: string): string { |
| 78 | return `youtube:${videoId}:${videoPublishedAt}` |
| 79 | } |
| 80 | |
| 81 | /** |
| 82 | * Parses an ISO 8601 duration (e.g. `PT1M30S`, `PT2H`, `P1DT2H`) into total seconds. |
no outgoing calls
no test coverage detected