Plano Cartesiano en Flutter short
>> YOUR LINK HERE: ___ http://youtube.com/watch?v=i5xsnkjfpDY
¡Bienvenidos a nuestro canal! En este video corto, te mostramos cómo puedes crear una impresionante aplicación en Flutter que incluye un plano cartesiano personalizado. Este tutorial es perfecto para desarrolladores que quieren aprender a implementar gráficos complejos y personalizar cada detalle de su aplicación. • ¿Qué aprenderás en este video? • En este tutorial rápido, te llevaremos paso a paso a través del proceso de creación de un plano cartesiano utilizando Flutter. Aunque este video es breve, cubriremos los aspectos esenciales para que puedas comenzar tu proyecto con una base sólida. • Configuración Inicial: Comenzamos configurando nuestro proyecto de Flutter y asegurándonos de que todos los paquetes necesarios estén instalados. • Diseño del Plano Cartesiano: Te mostraremos cómo diseñar y personalizar tu propio plano cartesiano utilizando CustomPainter, una poderosa herramienta de Flutter que permite dibujar gráficos personalizados. • Implementación del CustomPainter: Aprenderás a implementar CustomPainter en tu aplicación para que puedas dibujar el plano cartesiano con todas las líneas y puntos necesarios. • Modo Oscuro: No olvidamos a los amantes del modo oscuro. Te enseñaremos cómo integrar el modo oscuro en tu aplicación para que sea agradable a la vista en cualquier condición de iluminación. • Gestión del Estado con flutter_riverpod: Finalmente, te daremos un vistazo rápido a cómo gestionar el estado de tu aplicación utilizando flutter_riverpod, asegurando que tu aplicación sea eficiente y fácil de mantener. • Te gusta aprender a través de ejemplos prácticos y quieres ver cómo se implementan las cosas en la vida real. • Próximos Pasos • ¡No olvides darle like a este video si te ha parecido útil y suscribirte a nuestro canal para no perderte ninguno de nuestros próximos tutoriales! Muy pronto, subiremos el código completo y detallado de este proyecto explicando cada línea para que puedas seguir aprendiendo y mejorar tus habilidades de desarrollo en Flutter. • ¡Gracias por ver y esperamos que disfrutes creando tu aplicación con Flutter!","styleRuns":[{"startIndex":0,"length":2065,"styleRunExtensions":{"styleRunColorMapExtension":{"colorMap":[{"key":"USER_INTERFACE_THEME_DARK","value":4294967295},{"key":"USER_INTERFACE_THEME_LIGHT","value":4279440147}]}},"fontFamilyName":"Roboto"}]},"headerRuns":[{"startIndex":0,"length":2065,"headerMapping":"ATTRIBUTED_STRING_HEADER_MAPPING_UNSPECIFIED"}]}},{"itemSectionRenderer":{"contents":[{"continuationItemRenderer":{"trigger":"CONTINUATION_TRIGGER_ON_ITEM_SHOWN","continuationEndpoint":{"clickTrackingParams":"CLYBELsvGAIiEwiD697hxpmKAxXNwkIFHRMRLOc=","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/next"}},"continuationCommand":{"token":"Eg0SC2k1eHNua2pmcERZGAYyJSIRIgtpNXhzbmtqZnBEWTAAeAJCEGNvbW1lbnRzLXNlY3Rpb24%3D","request":"CONTINUATION_REQUEST_TYPE_WATCH_NEXT"}}}}],"trackingParams":"CLYBELsvGAIiEwiD697hxpmKAxXNwkIFHRMRLOc=","sectionIdentifier":"comment-item-section","targetId":"comments-section"}}],"trackingParams":"CLUBELovIhMIg-ve4caZigMVzcJCBR0TESzn"}},"secondaryResults":{"secondaryResults":{"results":[{"compactVideoRenderer":{"videoId":"IyZIrKfTwpA","thumbnail":{"thumbnails":[{"url":"https://i.ytimg.com/vi/IyZIrKfTwpA/hqdefault.jpg?sqp=-oaymwEiCKgBEF5IWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ== rs=AOn4CLAAyeI94oe7Ff6CIcBDPsR12YbCHw","width":168,"height":94},{"url":"https://i.ytimg.com/vi/IyZIrKfTwpA/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE= rs=AOn4CLC_BK4WPoReFck6U1dR9xY6yq6CJQ","width":336,"height":188}]},"title":{"accessibility":{"accessibilityData":{"label":"Bontenbal ontmaskert Faber en maakt grote indruk door Maarten van Rossem - De Podcast 177.169 weergaven 4 weken geleden 28 minuten"}},"simpleText":"Bontenbal ontmaskert Faber en maakt grote indruk"},"longBylineText":{"runs":[{"text":"Maarten van Rossem - De Podcast","navigationEndpoint":{"clickTrackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOcyB3JlbGF0ZWQ=","commandMetadata":{"webCommandMetadata":{"url":"/@maartenpodcast","webPageType":"WEB_PAGE_TYPE_CHANNEL","rootVe":3611,"apiUrl":"/youtubei/v1/browse"}},"browseEndpoint":{"browseId":"UC-HiBittGslPfzkC22LcNGA","canonicalBaseUrl":"/@maartenpodcast"}}}]},"publishedTimeText":{"simpleText":"4 weken geleden"},"viewCountText":{"simpleText":"177.169 weergaven"},"lengthText":{"accessibility":{"accessibilityData":{"label":"28 minuten en 6 seconden"}},"simpleText":"28:06"},"navigationEndpoint":{"clickTrackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOcyB3JlbGF0ZWRItsj-xuSTm86LAZoBBQgBEPgd","commandMetadata":{"webCommandMetadata":{"url":"/watch?v=IyZIrKfTwpA","webPageType":"WEB_PAGE_TYPE_WATCH","rootVe":3832}},"watchEndpoint":{"videoId":"IyZIrKfTwpA","nofollow":true,"watchEndpointSupportedOnesieConfig":{"html5PlaybackOnesieConfig":{"commonConfig":{"url":"https://rr3---sn-5hnednss.googlevideo.com/initplayback?source=youtube oeis=1 c=WEB oad=3200 ovd=3200 oaad=11000 oavd=11000 ocs=700 oewis=1 oputc=1 ofpcc=1 msp=1 odepv=1 id=232648aca7d3c290 ip=5.34.180.98 initcwndbps=751250 mt=1733707978 oweuc="}}}}},"shortBylineText":{"runs":[{"text":"Maarten van Rossem - De Podcast","navigationEndpoint":{"clickTrackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOcyB3JlbGF0ZWQ=","commandMetadata":{"webCommandMetadata":{"url":"/@maartenpodcast","webPageType":"WEB_PAGE_TYPE_CHANNEL","rootVe":3611,"apiUrl":"/youtubei/v1/browse"}},"browseEndpoint":{"browseId":"UC-HiBittGslPfzkC22LcNGA","canonicalBaseUrl":"/@maartenpodcast"}}}]},"channelThumbnail":{"thumbnails":[{"url":"https://yt3.ggpht.com/TwqQy_hm87cnbjZzeTArwcpZrEejqVsamPJl_n3OUtHUnhGpM6j9NxK0rita-gOWZSryLjfV=s68-c-k-c0x00ffffff-no-rj","width":68,"height":68}]},"trackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOdAkIXPvsqVkpMj","shortViewCountText":{"accessibility":{"accessibilityData":{"label":"177 duizend weergaven"}},"simpleText":"177K weergaven"},"menu":{"menuRenderer":{"items":[{"menuServiceItemRenderer":{"text":{"runs":[{"text":"Toevoegen aan wachtrij"}]},"icon":{"iconType":"ADD_TO_QUEUE_TAIL"},"serviceEndpoint":{"clickTrackingParams":"CLMBEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true}},"signalServiceEndpoint":{"signal":"CLIENT_SIGNAL","actions":[{"clickTrackingParams":"CLMBEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","addToPlaylistCommand":{"openMiniplayer":false,"openListPanel":true,"videoId":"IyZIrKfTwpA","listType":"PLAYLIST_EDIT_LIST_TYPE_QUEUE","onCreateListCommand":{"clickTrackingParams":"CLMBEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/playlist/create"}},"createPlaylistServiceEndpoint":{"videoIds":["IyZIrKfTwpA"],"params":"CAQ%3D"}},"videoIds":["IyZIrKfTwpA"],"videoCommand":{"clickTrackingParams":"CLMBEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"url":"/watch?v=IyZIrKfTwpA","webPageType":"WEB_PAGE_TYPE_WATCH","rootVe":3832}},"watchEndpoint":{"videoId":"IyZIrKfTwpA","watchEndpointSupportedOnesieConfig":{"html5PlaybackOnesieConfig":{"commonConfig":{"url":"https://rr3---sn-5hnednss.googlevideo.com/initplayback?source=youtube oeis=1 c=WEB oad=3200 ovd=3200 oaad=11000 oavd=11000 ocs=700 oewis=1 oputc=1 ofpcc=1 msp=1 odepv=1 id=232648aca7d3c290 ip=5.34.180.98 initcwndbps=751250 mt=1733707978 oweuc="}}}}}}},{"clickTrackingParams":"CLMBEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","openPopupAction":{"popup":{"notificationActionRenderer":{"responseText":{"simpleText":"Toegevoegd aan wachtrij"},"trackingParams":"CLQBELlqIhMIg-ve4caZigMVzcJCBR0TESzn"}},"popupType":"TOAST"}}]}},"trackingParams":"CLMBEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn"}},{"menuServiceItemRenderer":{"text":{"runs":[{"text":"Delen"}]},"icon":{"iconType":"SHARE"},"serviceEndpoint":{"clickTrackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOc=","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/share/get_share_panel"}},"shareEntityServiceEndpoint":{"serializedShareEntity":"CgtJeVpJcktmVHdwQQ%3D%3D","commands":[{"clickTrackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOc=","openPopupAction":{"popup":{"unifiedSharePanelRenderer":{"trackingParams":"CLIBEI5iIhMIg-ve4caZigMVzcJCBR0TESzn","showLoadingSpinner":true}},"popupType":"DIALOG","beReused":true}}]}},"trackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOc=","hasSeparator":true}}],"trackingParams":"CK8BEKQwGAAiEwiD697hxpmKAxXNwkIFHRMRLOc=","accessibility":{"accessibilityData":{"label":"Actiemenu"}},"targetId":"watch-related-menu-button"}},"thumbnailOverlays":[{"thumbnailOverlayTimeStatusRenderer":{"text":{"accessibility":{"accessibilityData":{"label":"28 minuten en 6 seconden"}},"simpleText":"28:06"},"style":"DEFAULT"}},{"thumbnailOverlayToggleButtonRenderer":{"isToggled":false,"untoggledIcon":{"iconType":"WATCH_LATER"},"toggledIcon":{"iconType":"CHECK"},"untoggledTooltip":"Later bekijken","toggledTooltip":"Toegevoegd","untoggledServiceEndpoint":{"clickTrackingParams":"CLEBEPnnAxgBIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/browse/edit_playlist"}},"playlistEditEndpoint":{"playlistId":"WL","actions":[{"addedVideoId":"IyZIrKfTwpA","action":"ACTION_ADD_VIDEO"}]}},"toggledServiceEndpoint":{"clickTrackingParams":"CLEBEPnnAxgBIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/browse/edit_playlist"}},"playlistEditEndpoint":{"playlistId":"WL","actions":[{"action":"ACTION_REMOVE_VIDEO_BY_VIDEO_ID","removedVideoId":"IyZIrKfTwpA"}]}},"untoggledAccessibility":{"accessibilityData":{"label":"Later bekijken"}},"toggledAccessibility":{"accessibilityData":{"label":"Toegevoegd"}},"trackingParams":"CLEBEPnnAxgBIhMIg-ve4caZigMVzcJCBR0TESzn"}},{"thumbnailOverlayToggleButtonRenderer":{"untoggledIcon":{"iconType":"ADD_TO_QUEUE_TAIL"},"toggledIcon":{"iconType":"PLAYLIST_ADD_CHECK"},"untoggledTooltip":"Toevoegen aan wachtrij","toggledTooltip":"Toegevoegd","untoggledServiceEndpoint":{"clickTrackingParams":"CLABEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true}},"signalServiceEndpoint":{"signal":"CLIENT_SIGNAL","actions":[{"clickTrackingParams":"CLABEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn","addToPlaylistCommand":{"openMiniplayer":false,"openListPanel":true,"videoId":"IyZIrKfTwpA","listType":"PLAYLIST_EDIT_LIST_TYPE_QUEUE","onCreateListCommand":{"clickTrackingParams":"CLABEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/playlist/create"}},"createPlaylistServiceEndpoint":{"videoIds":["IyZIrKfTwpA"],"params":"CAQ%3D"}},"videoIds":["IyZIrKfTwpA"]}}]}},"untoggledAccessibility":{"accessibilityData":{"label":"Toevoegen aan wachtrij"}},"toggledAccessibility":{"accessibilityData":{"label":"Toegevoegd"}},"trackingParams":"CLABEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn"}},{"thumbnailOverlayNowPlayingRenderer":{"text":{"runs":[{"text":"Wordt nu afgespeeld"}]}}}],"accessibility":{"accessibilityData":{"label":"Bontenbal ontmaskert Faber en maakt grote indruk - 28 minuten - Naar kanaal gaan - Maarten van Rossem - De Podcast - 177K weergaven - 4 weken geleden - video afspelen"}}}},{"compactVideoRenderer":{"videoId":"14hR9VSCCMs","thumbnail":{"thumbnails":[{"url":"https://i.ytimg.com/vi/14hR9VSCCMs/hqdefault.jpg?sqp=-oaymwE8CKgBEF5IWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARh_IDEoEzAP rs=AOn4CLA19QbmEkrM_BkgoIBm0UhtwLK9AA","width":168,"height":94},{"url":"https://i.ytimg.com/vi/14hR9VSCCMs/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYfyAxKBMwDw== rs=AOn4CLBzX2LOjUhZDGO20c25BxK_-jHCuA","width":336,"height":188}]},"title":{"accessibility":{"accessibilityData":{"label":"1h Sunset Mood Lights | Radial gradient colors | Screensaver | LED Light | Orange Yellow door Yill Bake 2.715.875 weergaven 1 jaar geleden 1 uur"}},"simpleText":"1h Sunset Mood Lights | Radial gradient colors | Screensaver | LED Light | Orange Yellow"},"longBylineText":{"runs":[{"text":"Yill Bake","navigationEndpoint":{"clickTrackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOcyB3JlbGF0ZWQ=","commandMetadata":{"webCommandMetadata":{"url":"/@Yillbake","webPageType":"WEB_PAGE_TYPE_CHANNEL","rootVe":3611,"apiUrl":"/youtubei/v1/browse"}},"browseEndpoint":{"browseId":"UCzsRpVxQaK9upv9CBuyrbrQ","canonicalBaseUrl":"/@Yillbake"}}}]},"publishedTimeText":{"simpleText":"1 jaar geleden"},"viewCountText":{"simpleText":"2.715.875 weergaven"},"lengthText":{"accessibility":{"accessibilityData":{"label":"1 uur en 39 seconden"}},"simpleText":"1:00:39"},"navigationEndpoint":{"clickTrackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOcyB3JlbGF0ZWRItsj-xuSTm86LAZoBBQgBEPgd","commandMetadata":{"webCommandMetadata":{"url":"/watch?v=14hR9VSCCMs","webPageType":"WEB_PAGE_TYPE_WATCH","rootVe":3832}},"watchEndpoint":{"videoId":"14hR9VSCCMs","nofollow":true,"watchEndpointSupportedOnesieConfig":{"html5PlaybackOnesieConfig":{"commonConfig":{"url":"https://rr2---sn-5hnekn7d.googlevideo.com/initplayback?source=youtube oeis=1 c=WEB oad=3200 ovd=3200 oaad=11000 oavd=11000 ocs=700 oewis=1 oputc=1 ofpcc=1 msp=1 odepv=1 id=d78851f5548208cb ip=5.34.180.98 initcwndbps=751250 mt=1733707978 oweuc="}}}}},"shortBylineText":{"runs":[{"text":"Yill Bake","navigationEndpoint":{"clickTrackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOcyB3JlbGF0ZWQ=","commandMetadata":{"webCommandMetadata":{"url":"/@Yillbake","webPageType":"WEB_PAGE_TYPE_CHANNEL","rootVe":3611,"apiUrl":"/youtubei/v1/browse"}},"browseEndpoint":{"browseId":"UCzsRpVxQaK9upv9CBuyrbrQ","canonicalBaseUrl":"/@Yillbake"}}}]},"channelThumbnail":{"thumbnails":[{"url":"https://yt3.ggpht.com/kadOjJfHn-h-6Cs_odfhboZRdHlS-qQcvoWep00Soc77j59nRCG-8OMVYYsRDJ7NFQuqNpRg=s68-c-k-c0x00ffffff-no-rj","width":68,"height":68}]},"trackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOdAy5GIpNW-lMTXAQ==","shortViewCountText":{"accessibility":{"accessibilityData":{"label":"2,7 miljoen weergaven"}},"simpleText":"2,7 mln. weergaven"},"menu":{"menuRenderer":{"items":[{"menuServiceItemRenderer":{"text":{"runs":[{"text":"Toevoegen aan wachtrij"}]},"icon":{"iconType":"ADD_TO_QUEUE_TAIL"},"serviceEndpoint":{"clickTrackingParams":"CK0BEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true}},"signalServiceEndpoint":{"signal":"CLIENT_SIGNAL","actions":[{"clickTrackingParams":"CK0BEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","addToPlaylistCommand":{"openMiniplayer":false,"openListPanel":true,"videoId":"14hR9VSCCMs","listType":"PLAYLIST_EDIT_LIST_TYPE_QUEUE","onCreateListCommand":{"clickTrackingParams":"CK0BEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/playlist/create"}},"createPlaylistServiceEndpoint":{"videoIds":["14hR9VSCCMs"],"params":"CAQ%3D"}},"videoIds":["14hR9VSCCMs"],"videoCommand":{"clickTrackingParams":"CK0BEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"url":"/watch?v=14hR9VSCCMs","webPageType":"WEB_PAGE_TYPE_WATCH","rootVe":3832}},"watchEndpoint":{"videoId":"14hR9VSCCMs","watchEndpointSupportedOnesieConfig":{"html5PlaybackOnesieConfig":{"commonConfig":{"url":"https://rr2---sn-5hnekn7d.googlevideo.com/initplayback?source=youtube oeis=1 c=WEB oad=3200 ovd=3200 oaad=11000 oavd=11000 ocs=700 oewis=1 oputc=1 ofpcc=1 msp=1 odepv=1 id=d78851f5548208cb ip=5.34.180.98 initcwndbps=751250 mt=1733707978 oweuc="}}}}}}},{"clickTrackingParams":"CK0BEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn","openPopupAction":{"popup":{"notificationActionRenderer":{"responseText":{"simpleText":"Toegevoegd aan wachtrij"},"trackingParams":"CK4BELlqIhMIg-ve4caZigMVzcJCBR0TESzn"}},"popupType":"TOAST"}}]}},"trackingParams":"CK0BEP6YBBgFIhMIg-ve4caZigMVzcJCBR0TESzn"}},{"menuServiceItemRenderer":{"text":{"runs":[{"text":"Delen"}]},"icon":{"iconType":"SHARE"},"serviceEndpoint":{"clickTrackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOc=","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/share/get_share_panel"}},"shareEntityServiceEndpoint":{"serializedShareEntity":"CgsxNGhSOVZTQ0NNcw%3D%3D","commands":[{"clickTrackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOc=","openPopupAction":{"popup":{"unifiedSharePanelRenderer":{"trackingParams":"CKwBEI5iIhMIg-ve4caZigMVzcJCBR0TESzn","showLoadingSpinner":true}},"popupType":"DIALOG","beReused":true}}]}},"trackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOc=","hasSeparator":true}}],"trackingParams":"CKkBEKQwGAEiEwiD697hxpmKAxXNwkIFHRMRLOc=","accessibility":{"accessibilityData":{"label":"Actiemenu"}}}},"thumbnailOverlays":[{"thumbnailOverlayTimeStatusRenderer":{"text":{"accessibility":{"accessibilityData":{"label":"1 uur en 39 seconden"}},"simpleText":"1:00:39"},"style":"DEFAULT"}},{"thumbnailOverlayToggleButtonRenderer":{"isToggled":false,"untoggledIcon":{"iconType":"WATCH_LATER"},"toggledIcon":{"iconType":"CHECK"},"untoggledTooltip":"Later bekijken","toggledTooltip":"Toegevoegd","untoggledServiceEndpoint":{"clickTrackingParams":"CKsBEPnnAxgBIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/browse/edit_playlist"}},"playlistEditEndpoint":{"playlistId":"WL","actions":[{"addedVideoId":"14hR9VSCCMs","action":"ACTION_ADD_VIDEO"}]}},"toggledServiceEndpoint":{"clickTrackingParams":"CKsBEPnnAxgBIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/browse/edit_playlist"}},"playlistEditEndpoint":{"playlistId":"WL","actions":[{"action":"ACTION_REMOVE_VIDEO_BY_VIDEO_ID","removedVideoId":"14hR9VSCCMs"}]}},"untoggledAccessibility":{"accessibilityData":{"label":"Later bekijken"}},"toggledAccessibility":{"accessibilityData":{"label":"Toegevoegd"}},"trackingParams":"CKsBEPnnAxgBIhMIg-ve4caZigMVzcJCBR0TESzn"}},{"thumbnailOverlayToggleButtonRenderer":{"untoggledIcon":{"iconType":"ADD_TO_QUEUE_TAIL"},"toggledIcon":{"iconType":"PLAYLIST_ADD_CHECK"},"untoggledTooltip":"Toevoegen aan wachtrij","toggledTooltip":"Toegevoegd","untoggledServiceEndpoint":{"clickTrackingParams":"CKoBEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true}},"signalServiceEndpoint":{"signal":"CLIENT_SIGNAL","actions":[{"clickTrackingParams":"CKoBEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn","addToPlaylistCommand":{"openMiniplayer":false,"openListPanel":true,"videoId":"14hR9VSCCMs","listType":"PLAYLIST_EDIT_LIST_TYPE_QUEUE","onCreateListCommand":{"clickTrackingParams":"CKoBEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn","commandMetadata":{"webCommandMetadata":{"sendPost":true,"apiUrl":"/youtubei/v1/playlist/create"}},"createPlaylistServiceEndpoint":{"videoIds":["14hR9VSCCMs"],"params":"CAQ%3D"}},"videoIds":["14hR9VSCCMs"]}}]}},"untoggledAccessibility":{"accessibilityData":{"label":"Toevoegen aan wachtrij"}},"toggledAccessibility":{"accessibilityData":{"label":"Toegevoegd"}},"trackingParams":"CKoBEMfsBBgCIhMIg-ve4caZigMVzcJCBR0TESzn"}},{"thumbnailOverlayNowPlayingRenderer":{"text":{"runs":[{"text":"Wordt nu afgespeeld"}]}}}],"accessibility":{"accessibilityData":{"label":"1h Sunset Mood Lights | Radial gradient colors | Screensaver | LED Light | Orange Yellow - 1 uur - Naar kanaal gaan - Yill Bake - 2,7 mln. weergaven - 1 jaar geleden - video afspelen"}}}},{"lockupViewModel":{"contentImage":{"collectionThumbnailViewModel":{"primaryThumbnail":{"thumbnailViewModel":{"image":{"sources":[{"url":"https://i.ytimg.com/vi/4vCTOdiRtXw/hqdefault.jpg?sqp=-oaymwEWCKgBEF5IWvKriqkDCQgBFQAAiEIYAQ== rs=AOn4CLDQGO5MLDrtZTMwJYs5eZ9Six2VCQ","width":168,"height":94},{"url":"https://i.ytimg.com/vi/4vCTOdiRtXw/hqdefault.jpg?sqp=-oaymwEXCNACELwBSFryq4qpAwkIARUAAIhCGAE= rs=AOn4CLDk-_QaUHHk9z75Gd88pdF5CkhAqw","width":336,"height":188}]},"overlays":[{"thumbnailOverlayBadgeViewModel":{"thumbnailBadges":[{"thumbnailBadgeViewModel":{"icon":{"sources":[{"clientResource":{"imageName":"PLAYLISTS"}}]},"text":"12 video's","badgeStyle":"THUMBNAIL_OVERLAY_BADGE_STYLE_DEFAULT","backgroundColor":{"lightTheme":466995,"darkTheme":466995}}}],"position":"THUMBNAIL_OVERLAY_BADGE_POSITION_BOTTOM_END"}},{"thumbnailHoverOverlayViewModel":{"icon":{"sources":[{"clientResource":{"imageName":"PLAY_ALL"}}]},"text":{"content":"Alles afspelen","styleRuns":[{"startIndex":0,"length":14}]},"style":"THUMBNAIL_HOVER_OVERLAY_STYLE_COVER"}}],"backgroundColor":{"lightTheme":866393,"darkTheme":866393}}},"stackColor":{"lightTheme":7046553,"darkTheme":7767955}}},"metadata":{"lockupMetadataViewModel":{"title":{"content":"FLUTTER - CURSO BASICO"},"metadata":{"contentMetadataViewModel":{"metadataRows":[{"metadataParts":[{"text":{"content":"Codigo Flutter
#############################