This graph shows how many times the word ______ has been mentioned throughout the history of the program.
Bueno, pues tenÃamos la PR de Eliud Gon, que... Oye, ¿esta bandera de dónde es Eliud Gon?
República de Nicaragua. Hostia, no sabÃa que esta era la bandera de Nicaragua.
I don't know what I am. Quiero pensar que eres una persona humana.
Eliud. Eliud. Nunca habÃa escuchado el nombre de Eliud. Pero muy bien.
Bueno, lo que ha hecho Eliud es brutal. O sea, brutal. SÃ, ¿verdad? ParecÃa de los Illuminati.
O sea, brutal.
Pues ha añadido este botón de aquÃ, que es para añadir este buscador de packages en Skypack.
Para el que no sepa lo que es Skypack, lo hemos visto alguna vez, que es para tener paquetes de NPM que son utilizables desde el navegador directamente.
Por ejemplo, este de Confetti, le damos aquà a Run. Y mira, fÃjate. Lo ejecuta aquà directamente. Run, run, run. Y este de Confetti.
Kaleidoscope. Muchas gracias por esa suscripción con Prime, amigo. Muchas gracias.
Entonces, mira, es que es brutal. Es que en Macri Modules, esto, o sea, yo no digo, yo no pongo notas, pero es un 10 directamente.
Pues esto es lo que ha hecho nuestro amigo Eliud Gon. Y por lo tanto, bueno, para que lo vayáis funcionando.
Aquà si buscamos Solid, por ejemplo. A ver si sale SolidJS. Hostia, searching.
Solid, no sé si es Solid. Ah, SolidJS. Mira, aquà lo tenemos.
Y le doy un clic. Pues me lo ha importado directamente aquà en el JavaScript. Esto está muy bien. Está muy bien. Muy rico. Muy rico.
Asà que vamos a echarle un vistazo al código, un poquito de Eliud Gon. Seguramente lo vamos a mergear, seguro.
Y si queremos hacer alguna cosa, pues le echaremos un vistazo posteriormente y ya está.
Pero bueno, un poquito para echarle un vistazo. Vale, esto del Hidden, porque esa parte está oculta al principio.
Este es el iconito. Está muy bien, porque ha conseguido el icono, este icono de Skypack.
No sé de dónde lo habrá sacado. Supongo que es este, que es un SVG y se lo ha copiado.
SÃ, sÃ, sÃ, ha hecho eso. Pero bueno, que bien conseguido. Bien conseguido porque de verdad da el pego aquÃ, pero totalmente.
O sea, genial. Muy bien. A ver qué más.
Search for and use JavaScript packages from NPM.
From NPM.
No me queda claro si es for...
Es que no es que lo busque from NPM, porque Skypack es como un registro en sà mismo.
Pero bueno, no pasa nada.
Digital for this package. Vale.
Vamos a ver un poquito el JavaScript. Vale, al final lo ha separado en un solo archivo.
Skypack. Voy a hacer esto más grande para que lo veáis.
Que luego me decÃs que no veáis. Aunque luego me decÃs, oye, ¿por qué tenéis la letra tan grande?
Vale, window.onMessage.
¡Hostia!
OnMessage.
Data.
Hostia, window.onMessage.
What?
What? ¿Con ese window.onMessage?
¿Dónde está utilizando...?
Hostia, window.post.message.
No sé, no sé si utilizarÃa un window.post.message en este caso.
Creo que esto, a ver, es una forma interesante, pero en este caso yo evitarÃa el post.message y el onMessage para hacer esto.
Incluso podrÃa trabajar mejor con eventos o incluso se podrÃa trabajar con el estado global que tenemos.
Pero bueno, por ahora lo vamos a dejar asÃ, ¿vale?
OnMessage.onMessage.prototype.stream.call.data.
A ver si es que esto, claro, es que esto, tal y como está este if, creo que se podrÃa hacer un poquito mejor.
Jset, pero bueno, esto está bien.
Set value.
Claro, pero si yo he escrito, o sea, si yo escribo aquÃ, vamos a poner, yo pongo aquà un console.locola y yo busco aquà solid, vale, lo escribe arriba del todo y luego le, vale, está bien, lo que hace es dejar el valor del JS Editor, le deja un salto de lÃnea y hace el import en la primera lÃnea.
O sea, lo que hace es que siempre añade la primera lÃnea, ¿no?
Si ahora busca aquà React y le damos React, pues siempre me lo añade la primera lÃnea.
Bueno, está bastante bien esto, está bien, ¿vale?
Aquà tenemos lo de Skypack con The Bounce, DOM, esto es para evitar que la búsqueda, pues esté haciendo búsquedas todo el rato.
API URL, CDN URL, ¿vale?
Search resource, aquà pilla todos los elementos del DOM al principio.
Aquà hace lo del evento para cuando se está escribiendo y a ver el handle search.
Hostia, qué raro esto.
Search input, Skypack search.
Search.
Search input, o sea, es como que le cambia el nombre.
Y luego utiliza search input ya.
Hostia, no sé si ya le llamarÃa aquà search input, ¿sabes?
Para evitar este tipo de reasignación para cambiarle el nombre a la variable, yo lo podrÃamos hacer de otra forma.
Pero bueno, entiendo un poco por qué lo ha hecho.
Vale, results, inner, vale, con inner HTML, bueno, esto es para todos los resultados.
Bueno, yo aquà en lugar de un for igual podemos intentar hacer otra cosa, pero claro, entiendo por qué lo ha hecho, porque luego habrá hecho esto del click.
Vale, handle page.
La verdad es que este es el rollo, este es el rollo de manejar con HTML la creación del DOM, ¿sabes?
El tener que hacer tan imperativo esto de cuando haces un click y todo esto, esto es un poco rollo.
Pero bueno, esto tiene buena pinta, fetch packages, no undefined.
Ah, mira, esto ahora os explico por qué le ha dado este error el linter y cómo solucionarlo y por qué tiene sentido solucionarlo como vamos a hacer.
Pero bueno, pero está bien, ¿eh?
Data results map, result.name, description.
Esto ahora veremos cómo hacerlo de otra forma, pero está bien la idea.
Vale, handle package selected.
No sé si está repetido algunos de los que ha puesto por aquÃ, ¿no?
Es que me sorprende aquà que hay un montón aquà de elementos nuevos.
Pero bueno, vale, editor.
Hostia, esto es para los anchors.
Hostia, hover text underline.
Bueno, como no tenemos ninguno, claro, este es el primer enlace que tenemos, pues no pasa nada.
Bueno, está bien.
Vale, y esta es toda la versión, todo lo de Skype, Skype content.
Ha utilizado aquà el parent selector, este, que es el nativo de CSS, ¿eh?
Este es el nativo de CSS, importante.
No funciona como el de SAS.
Vale, aquà con el input, ¿veis?
Aquà ya tenemos un componente que es como reusable y no lo estamos reusando como tal.
Este es un poco el rollo.
Bueno, y una utilidad de strings para capitalize.
Vale, bueno, esto está bien.
Vale, no usa jQuery.
Estamos utilizando, parece jQuery, pero ahora lo enseño.
Lo vamos a mergear, vamos a hacer un merge de esto, que está muy bien.
Muchas gracias a Luke Gon, que creo que ha hecho un trabajo brutalÃsimo, buenÃsimo.
Y ahora, si queréis, lo volvemos a revisar un poco por encima.
¿Esto qué es?
Estos son cosas que tenÃa yo, que estaba haciendo por ahÃ.
Bueno, voy a dejar en mi talk, por si luego intento hacer cositas.
Y me voy a por Kodi.link.
Me traigo los cambios.
¿Vale?
Y os comento un par de cosas.
Bueno, vamos a llamar de muchas formas.
Como un dólar, como el underscore, ¿no?
Que es lo que utiliza el Odash.
Tiene algunas.
De hecho, ¿qué es?
Valid, variable, name, javascript.
Hay un...
No, este no es.
Online.
No, ¿cómo era?
Este, este, este, este, este.
Mira, mira qué nombre de variable más chulo puedes poner.
Pues puedes poner este.
No sé si lo sabÃais.
Pero esto es un nombre de variable válido.
Anda, que no está chulo.
Hacéis esto y despedidos en vuestra empresa, pero no habrá valido la pena.
No habrá valido la pena que os lo pidan.
Pero que en el código, en un momento dado, hayáis visto a este muñeco.
A este muñeco.
Claro que sÃ, que valdrÃa la pena.
Sabéis que sÃ.
Pues eso.
Al final son todo lo que sea...
Creo que era de unicode, no sé qué.
Unicode 8.0.
Unicode 8.0.
Y claro, de esto es que hay un montón de simbolitos.
Un montón de simbolitos.
A ver.
Esto.
Este no.
Este tampoco.
La ñ es normal.
A ver.
Estoy intentando aquà sÃmbolos súper normales, pero bueno.
Mira.
Hostia.
Con este se puede también.
Hostia, me estoy acordando de uno que es muy pajero.
Este.
Este sà que...
Este sà que le rompes la cabeza a la gente.
Este es muy loco.
Mira.
Tú aquà pones const y haces esto.
Ah, no me va a salir aquÃ.
SÃ.
Yo qué sé.
No.
Function.
Hello.
Por ejemplo.
¿Vale?
Tú haces algo asÃ.
Const.
Y esto parece una F, ¿verdad?
Esto parece una F.
Mira.
De este es que tengo una historia muy buena sobre esto.
Tengo una historia muy buena sobre esto.
Vale.
Pues esto es local.
Aquà tendrÃamos esto.
Vale.
Lo que yo estaba pensando.
Una cosa que os querÃa comentar.
A ver qué os parece.
Es el hecho de que tanto el buscador como los settings, en lugar de aparecer aquà centrado,
pues lo que he pensado es que aparezca más como...
Aparece esta barra aquà al lateral.
No sé qué os parece.
Pero veis que esta barra aquà lateral, esta barra aquÃ, aparece.
¿Sabes?
Esta barra aquà en medio.
El explorer aparece y desaparece.
En lugar de quitar todo el editor, pues el hecho de hacer que aparezca y desaparezca asÃ.
De esta forma.
No sé qué os parece.
Contadme.
¿Os gusta más?
Porque es que creo que es un poco mejor...
Mejor que...
O sea, es que asà se pierde mucho espacio, ¿no?
Y creo que lo genial serÃa justamente poder ver también esto.
Porque si no...
No sé.
Está bueno, pero está bien que sea un clon...
Que sea un clon...
Bueno, que sea un clon de Visual Studio Code.
La idea es...
Está hecha aposta, ¿eh?
Está un poco hecha aposta para que la gente, pues...
Como que tenga el look and feel y la experiencia de usuario sea parecida.
¿Vale?
O sea que está hecha un poco aposta.
No me desagrada, la verdad.
Que se vea muy parecido.
Aunque luego no va a funcionar exactamente igual.
Pues vamos a ver cómo lo podrÃamos hacer, ¿no?
Vamos a ver cómo lo podrÃamos hacer.
Vamos a ver.
Vamos a ver.
En el aside, que tenÃamos el header.
Y tenÃamos el footer.
Claro, ahora el aside va a tener que ser un poquito más complicado.
Pero vamos a necesitar poner, por un lado, la primera barra.
O sea, tendrÃamos que ponerlo asÃ.
Bueno, esto vamos a tener que arreglar bastante los estilos.
Pero yo creo que puede valer la pena, ¿eh?
Puede valer la pena.
Vale, aquà me he cargado los estilos estos que tenÃamos.
Porque este aside, que tenÃa este flex direction, no sé qué.
Esto.
Esto ahora deberÃa ser más bien asÃ.
Aside tip.
Bueno, veo que no ha hecho lo que esperaba.
Pero no pasa nada.
TendrÃamos que empezar aquà a poner aside class, aside sections.
A ver, aside sections.
Y estos botones serÃan estos.
Aside sections.
Aside, aside.
Vale, veo que todavÃa está mal.
Vamos a ver qué le pasa a esto.
Vale, porque este...
Y por qué la aside sà que tiene el 100% y esto no.
Vale, con esto lo arreglo.
Pero no entiendo muy bien por qué la aside...
Ah, vale, ya sé por qué es.
Vale, vamos a poner aquà el height, el 100%.
Vale, vamos a hacer esto un poquito asÃ.
AsÃ.
Para que podamos ir viendo.
Vamos a ponerlo en modo desktop.
Vale.
SÃ, ya está.
Que no estaba ocupando todo lo alto.
Y Saito dice, perdón la pregunta, pero ya lo has explicado.
¿Cómo puedo tener Visual Studio como yo?
¿Qué extensiones usas, amigo?
Uf, lo hemos explicado.
Pero de verdad, de verdad, de la buena voy a intentar hacer un vÃdeo en YouTube para explicarlo.
Porque es que lo he explicado muchas veces.
Pero estate atento a mi canal de YouTube, en midu.tube, que me voy a poner con ello para que los tengas.
¿Vale?
Te pasas por el canal de YouTube y ya está.
Vale, a ver.
Entonces, el tema es que cuando le demos clic, lo que tiene que hacer en lugar de aparecer todo esto,
deberÃa aparecer una barrita.
La barrita que al final es con una extensión.
Es como esto.
Que veo aquà que esto no tiene nada, pero aquà a la derecha sà que tiene un poquito un borde ahÃ.
Vale.
Entonces, esto lo podemos hacer más pequeño.
Esto sea, aside sections.
Aside sections.
Deep class.
Aside.
Aside.
No sé cómo llamarle aside a este.
Explorer.
No, ¿cómo podrÃamos llamar este?
Aside.
Aside extension.
Extension.
Por decirle lo peor, nombrar las cosas.
Helper.
Hostia, el helper.
Helper suena a útil, ¿sabes?
No es React instant asÃ.
Ah, mira, aside bar.
Muy bien, esa me gusta.
Porque bar suena a cerveza.
Entonces me gusta.
Pero sÃ, aside bar me gusta.
Me gusta.
Vale, primero vamos a ver que se ve aquà la sidebar este, que debe ser este.
Vamos a poner que ocupe 200 pÃxeles.
100%.
Eso está ahà abajo porque este, esta side, tiene que ser un display flex.
Hostia.
Coño.
Vale.
SÃ, tiene sentido.
72 pÃxeles.
Y si le pongo a esto que es cero.
Claro.
Vale.
Entonces a aside sections vamos a poner que esto tiene 72 pÃxeles.
Vale, aside sections with 72 pÃxeles.
Y lo que vamos a hacer es que este, bueno, por ahora el aside bar este, vamos a ponerle que tenga 200 pÃxeles, por decir algo.
Luego ya lo arreglaremos, lo ajustaremos un poquito.
Por ahora esto.
Y el tema es que a la app que antes tenÃamos app, tenÃamos esto, le vamos a poner un auto.
Y esto deberÃa funcionar bien.
Vale.
Voy a refrescar.
Vale.
Más o menos.
Entonces, y la side bar, porque me aparece.
A ver.
Display flex.
Vale.
Ahora sÃ.
Ahora está ahÃ.
Vale.
Es que pensaba que le habÃa puesto eso.
Vamos con esto.
TenÃamos aquà el aside bar.
La idea del aside bar, claro, va a ser renderizar cosas diferentes.
O sea, lo que vamos a poner, tenÃamos aquà el editor por un lado, tenÃamos lo de skypack y tenÃamos los settings.
Yo entiendo que esto, lo que podemos hacer, madre mÃa, esto va a ser un poco ahora percal porque hay que cambiar unas cuantas cosas.
La verdad es que cada vez que vamos avanzando, cada vez más vamos, voy pensando más si deberÃamos pasarlo todas asbelta y ya está.
Bueno, voy a guardar aquà a saco a ver qué hace esto.
Bueno, a ver, a ver, no está mal, algo más o menos.
Yo entiendo que esto debe ser de más, ¿no?
A ver, más o menos esto.
¿Cuánto debe ocupar?
310.
Vale, vamos a primero cambiar este 200 pÃxeles que habÃa puesto por aquÃ.
Vamos a ponerle 310, más o menos.
Luego, este skypack.
Claro, ahora este editor que yo le hacÃa a esto de display none, ahora tendrÃa que quedar un poco asÃ.
Esta serÃa un poco la idea, ¿vale?
De hacerlo más asÃ.
Y al pasar aquÃ, que se quitase.
Vale.
Entonces, ahora vamos a ver un poco cómo hacemos esto.
Yo más que a lo mejor esta explicación tan larga la quitarÃamos.
A lo mejor queda demasiado larga.
Pero claro, esto de skypack 100vh, todo esto ya no hace falta como tal.
Porque esto entiendo que ya lo hace automáticamente.
Asà que vamos a quitar estilos, settings, settings.
Estos dos estilos, fuera.
Luego, el tema este del view, no sé qué.
Esto view sky, este view ya no hace falta.
View.
Esto, fuera.
Esto de hidden, no, este sà que hace falta.
Espérate, espérate que a lo mejor ese view sà que lo necesitamos.
Lo que necesitamos más bien es que no desaparezca el editor.
Eso es lo que necesitamos.
Que no desaparezca el editor.
Entonces, el editor.
A ver, editor, editor, editor.
¿Dónde estás, editor?
Me voy a la colita, editor.
Tenemos este view.
Yo creo que sà le dejo asÃ.
View.
¿Vale?
Bueno, ¿qué os parece que salga as�
Más o menos, ahora que estamos asà probando.
Y que se ponga por encima ese menú.
Asà no se cambia el tamaño de editor.
Bueno, es que en...
Si te fijas, en Visual Studio Code es asÃ.
Que se pone...
Que sà que empuja el contenido.
Entonces, quiero mantenerlo.
Porque, bueno, es verdad que ahora sale asÃ.
Pero esto es porque, fÃjate.
Asà sà que hay bastante espacio.
Normalmente va a haber bastante espacio.
Es que ponerlo por encima es un poco raro a veces.
Un poco más oscuro que en Visual Studio Code.
Vale.
Luego lo ajustamos.
Pero entiendo que eso es en general, ¿no?
Porque a lo mejor este...
A ver.
Color picker.
Este color.
Y este color.
Ah, no.
Si es el mismo.
Es el mismo color.
Si es igual de oscuro.
Me has engañado.
Me ha engañado.
Vale.
Lo que tenemos que hacer en todo caso es que este sea hidden.
Al principio, sea hidden.
Y que cuando le demos, pase el aside bar, deje de ser hidden.
Eso es lo que tenemos que hacer.
Eso es lo que tenemos que hacer.
Entonces, cuando le damos, vamos a ver aside.
Cuando le damos a cada botón, ponemos el is active.
¿Vale?
Este console log, me imagino que se me coló.
Lo vamos a quitar.
Element ID to show.
Esto nos dice el data to.
Esto es cada botón.
Aquà en el aside.
Esto dice data to editor.
¿Vale?
Entonces, deberÃa el editor.
Bueno, claro.
Es que data to editor, este no tiene mucho sentido.
Si va al editor, claro.
Ahora ya esto no es tan fácil.
No es tan fácil.
AhÃ.
Vamos a ver.
No es tan fácil ahora.
Esto es porque antes solo podÃa aparecer una página.
Entonces.
PodrÃa ver hacia dónde va.
¿No?
Por ahora es.
Si yo tengo un botón.
Que es este, ¿no?
Que es Skype.
Aquà le digo.
Es que en lugar de data to.
SerÃa.
Data action.
Le voy a llamar.
Vamos a poner.
Close.
Close bar.
Aside bar.
Data action.
Vamos a poner.
Show.
Skypack.
Bar.
Vamos a buscar.
Vamos a intentar algo asÃ.
Más.
No es que sea muy declarativo.
O sea.
No es declarativo.
Pero.
Show.
Esto que serÃa.
Show.
Settings.
Bar.
Por ejemplo.
Entonces.
Vamos a sacar el data action.
De la site.
Este.
Ta ta ta ta.
Data action.
Action.
Action.
Action.
Entonces.
Vamos a tener aquÃ.
Es.
Cuando tenemos esto.
Hacemos algo.
Cuando tenemos esto.
Hacemos otra cosa.
Cuando tenemos esto.
Hacemos otra cosa.
Actions.
Vamos a quitar esto por ahora.
Actions.
Action.
Closed sidebar.
Show skypack bar.
Show settings bar.
Vale.
Vamos.
Por ahora vamos a ver esto.
Hola Pedrolo.
¿Cómo estás?
¿Qué tal?
Carl Sneri.
¿Por qué no lo pillas con data set action?
Bueno.
Es que al final te podrÃa preguntar lo mismo.
¿Por qué no lo pillas con get attribute?
Es verdad que tienes lo del data set.
Pero a mà una cosa que me gusta bastante.
De utilizar el get attribute.
Es que es una forma.
Unificada para todos los atributos del elemento.
En lugar de ponerte a mezclar cuando vas a recuperar un atributo con get attribute.
Y cuando son data.
Utilizar el data set punto.
Es que de esta forma siempre utilizas siempre la misma API.
Es como el query selector.
Que siempre me gusta utilizar el query selector.
Independientemente de si es una idea.
Si es una clase.
Si es un elemento.
Es una forma de unificar la API.
Para no tener código todo rato diferente.
Dependiendo de una cosa u otra.
Eso serÃa un poco la idea.
Por eso lo hago asÃ.
No por otra cosa.
Ni creo que tenga una ventaja.
Ni nada raro.
¿Vale?
Is not a function.
Porque este action.
¿Qué tiene esa action?
¿Qué tiene?
Cuéntame.
Undefined.
¿Vale?
Pues muy bien.
Data action.
Ay, coño.
Es que ¿por qué he hecho esto?
AsÃ.
No sé por qué he puesto ese.
Lo he traÃdo de esa forma.
Vale.
Esta action ya está.
Ya tendrÃamos ahà la acción.
Esto serÃa solo para cambiar el tema de cada botón.
Is active.
¿Vale?
Recuperamos todo lo que son active.
Le quitamos esto.
¿Vale?
Y aquà harÃamos directamente la acción de cada una.
Show skypack.
No sé qué.
Y el editor.
Vale.
Una cosa por ahÃ.
Set attribute hidden.
Y esto no hace falta con lo asÃ.
Con esto deberÃamos ya ocultarlo.
O sea, si...
Bueno.
Claro.
Primero.
Set attribute hidden.
Remove.
Attribute hidden.
Y esto igual.
Bueno.
Vale.
Más o menos.
Más o menos.
Por aquà van un poco los tiros.
Ahora solo tenemos que meter dentro la información.
¿Por qué pones un dólar en a sidebar?
Vale.
Eso es porque tenemos este dólar que se parece a jQuery.
Esto es porque nosotros tenemos una pequeña utilidad.
¿Ves?
Que la estamos importando de aquÃ.
Que lo que hace es que con un dólar recuperas el elemento que tiene este selector.
En lugar de tener que estar escribiendo aquà document.query selector.
¿Vale?
Lo que hemos hecho es esto.
Meterlo en un dólar directamente.
Y cuando hacemos dos dólares nos devuelve un array con todos los resultados que ha encontrado.
Esa es un poco la idea.
Vale.
Ahora aparte de esto.
En el asite aquà tendrÃamos este view.
Yo creo que es que yo creo que este view no hace falta.
O sea.
Es quitarle el hidden.
¿Para qué tenÃa ese view exactamente?
¿Qué es lo que hacÃa yo con ese view?
¿Ves?
Es que view no se utiliza para nada.
O sea.
Yo creo que este view.
Yo creo que es que me lo he cargado.
Claro.
O sea.
Que me lo he cargado ese view que a lo mejor antes sà que utilizaba.
Para algo.
Entonces.
Lo que vamos a hacer aquÃ.
Pues.
Esto serÃa ocultarlo.
Ya está.
Y esto serÃa pues tener aquà el skypack.
SerÃa lo mismo.
Poner una capa más entre las acciones y el html.
Dice Fenix.
Por cierto.
Bienvenido Fenix.
Que es la primera vez que participas en el chat.
Pero he visto que ya estás ahà participando bien.
Pues.
Poner una capa.
SÃ.
Puede ser.
Poner una capa.
Yo creo que lo mejor.
SerÃa poner una clase.
¿No?
Poner una clase.
Directamente.
Que sirva de control.
Por ejemplo.
TenÃamos aquà view.
Que era un poco raro.
No sé.
Podemos poner en lugar de view.
¿Cómo podemos ponerle?
Bar.
Content.
Por ejemplo.
Bar content.
Y aquà tenÃamos pues también.
Bar content.
Lo que podemos hacer con esto.
Es tener este.
Bar content.
Set attribute hidden.
O sea.
Primero le ponemos el attribute a todos los bar contents.
Y luego le ocultamos al que no interesa.
Yo entiendo que con esto.
¿Ves?
Ahora sà que funciona.
Ah no.
¿Qué ha pasado ah�
¿Qué ha pasado ah�
Espérate.
Pensaba que iba a funcionar esto.
Bar content.
Skypack.
Bar content.
Hit.
Pues me ha dejado fatal.
Vale.
A ver.
Que no sé por qué ahora esto no me funciona.
Vamos a ver.
TenÃamos el bar content.
A sidebar.
Set attribute.
Esto se lo deberÃa poner a todos.
¿Por qué no se lo pone?
O sea.
Yo estoy aquÃ.
Bar content.
Vale.
Tenemos settings y tal.
Bar content.
A este le ha quitado el hidden.
Nos vamos a este.
Vale.
Aquà ha funcionado bien.
Ahora me voy a este.
Y al settings no me lo ha puesto.
¿Veis?
Aquà sà que funciona bien.
Aquà funciona mal.
A ver.
O sea.
Cuando le doy al settings.
No.
Es cuando le doy.
Al skypack.
Ay.
Claro.
Porque esto solo me lo devuelve al primero.
Es una pena que esto no vaya a funcionar asà tal cual.
Es una pena.
Me encantarÃa que funcionase asÃ.
Pero no funciona asÃ.
Esto básicamente.
Esto podrÃamos hacer que funcionase.
Hostia.
PodrÃamos hacer que funcionase esto.
Esto estarÃa guay.
Pero bueno.
Ahora es que es un coñazo.
Pero bueno.
Básicamente esto.
Como devuelve un array.
Lo que tendrÃamos que hacer aquà serÃa.
For each.
El.
Esta es la razón.
¿Vale?
TendrÃamos que hacer esto.
Y esto hacerlo aquà también.
Y ahora.
Ahora explicarÃa por qué solo lo hacen uno.
Ahora sà que funcionará bien.
Ahora sÃ.
Y con esto.
Ahà está.
Es el dólar dólar.
Con esto ya lo tenemos un poquito.
Un poquito mejor.
¿No?
Ahora vamos a ajustar un poco esta búsqueda.
Que pone por aquÃ.
Search MP.
Hostia.
Que ha pasado.
¿Qué ha pasado ah�
Max width 500 pÃxeles.
Aquà hay algún estilo que no gusta.
Width.
Hostia.
Sky content.
Que me da la sensación que aquà hay contenido.
Ah.
Bueno.
Yo es que creo que esto ya no es necesario.
Muchas cosas que hay ahÃ.
Este sky pack content.
Este.
Este de aquÃ.
Yo creo que esto no.
No es necesario.
Incluso este.
Max width 500 pÃxeles.
Es que no.
Tampoco deberÃa ser necesario.
Como tal.
DeberÃa ser más asÃ.
Y asà sÃ.
Asà sÃ.
Lo que nos faltarÃa aquà es un overflow.
¿No?
O sea.
Este content.
Este height.
¿Dónde está el height?
Overflow y auto.
Overflow y auto.
No.
En algún sitio.
¿Dónde se está poniendo esto?
Flex.
Es este.
Es este.
Es este.
Tampoco.
Bueno.
Pues nada.
Que tú digas.
Vamos a ponérselo a este.
Es que además con cuidado porque esto me está empujando el contenido de esto.
¿Eh?
Claro.
Claro.
Que tiene que ser esto.
La sidebar tendrÃa que ser esto.
Vale.
Sidebar.
TendrÃa que ser esto.
Lo que es horrible.
Es horrible el.
Cuando se pone en modo móvil.
Bien.
¿Sabes?
Está súper.
Esto es una cosa que yo odio totalmente.
Por cierto.
Fénix.
MuchÃsimas gracias por suscribirte durante un mes en el nivel 1.
Y te doy la bienvenida a la comunidad.
Muchas gracias.
Esto es una cosa que nunca jamás entenderé.
Nunca jamás entenderé.
De los scrolls.
De los scroll bars.
A ver si alguien me lo puede explicar.
¿Por qué cuando está en modo desktop es asà de feo y asà de horrible?
Pero nada.
Lo pones en modo móvil.
Y mira que bonito se queda.
O sea.
Súper bonito.
Y además desaparece.
Solo aparece cuando está.
O sea.
¿Por qué?
Es que no lo entiendo.
No lo entiendo.
Es que no entiendo por qué tiene que tener esta barra horrible.
Es que no la puedo entender.
No lo puedo comprender.
Bueno.
Que ya la estilaremos.
No pasa nada.
Pero que me.
SÃ, sÃ.
Se puede modificar.
Pero no entiendo.
SÃ, sÃ.
Ya sé que se puede modificar.
Se puede estilar.
La puedo ocultar.
Puedo hacer un montón de cosas.
Porque en móvil no hace falta tocar la barra para hacer scroll.
Vale.
Pero es que en desktop tampoco tienes por qué.
O sea.
Puedes hacerlo con la barra.
O puedes hacer asÃ.
La barra la puedo entender.
Lo que no entiendo es que aparezca siempre.
Porque podrÃa aparecer solo cuando pasas por encima.
O si fuese por un tema solo de accesibilidad.
PodrÃa aparecer de otra forma.
¿Sabes?
PodrÃa aparecer visualmente sin toda la barra esta.
O sea.
No sé.
Creo que hay posibilidades.
Y por un tema de accesibilidad visual tampoco puede ser.
Porque en móvil no aparece tampoco.
O sea.
Se oculta.
Ah, mira.
Ahora sà que.
¿Ves?
Se oculta.
No es porque los móviles es ese scroll.
Y en desktop se pueden dar estilos.
Pero de eso digo que el estilo es horrible.
Lo puedes ocultar en la configuración de la Mac.
No en todos los scrolls.
No todos los scrolls.
De hecho.
Yo creo que lo tengo puesto para que esté oculto.
Creo que lo tengo puesto para que esté oculto.
¿Ves?
Mostra barra de herramientas.
Automáticamente se une el ratón o trap pad.
Lo que hace Mac es que son ratas hasta para esto.
Si tú tienes un ratón, entonces siempre te aparecen las barras.
Si tienes un trap pad, sà que desaparecen.
De hecho, que desaparezca en móvil es contraintuitivo.
Yo creo que en móvil solo desaparece una vez que has interactuado una vez con el scroll.
O sea.
Yo le doy.
¿Ves?
Aparece.
Y hasta que no interactúo con el scroll, no desaparece.
Como de...
Bueno, ya sabes que hay un scroll, pues entonces ya desaparezco el scroll.
Pero no sé.
Es un poco raro.
Es un poco raro.
Es una cosa que me choca un poco de cómo funciona.
¿Sabes?
De joder.
¿Por qué no han podido hacer de otra forma?
Vamos a ver una cosa aquÃ.
Porque yo creo que esta letra es un poco chiquitita, me parece a mÃ.
Tampoco hace falta esa tan grande.
Pero un rem va a ser que sÃ.
Es un poco chiquitita, me parece a mÃ.
Vamos a darle un poco de espacio a estas cosas.
Ah, es que esto no es ni siquiera.
Ah, es que este troubleshooting and fuck.
Esto es como para buscar aquÃ.
Yo esto creo que me lo voy a petar, ¿eh?
Troubleshooting este.
Troubleshooting.
Troubleshooting.
Porque es que tampoco tiene mucho que ver con lo nuestro, ¿sabes?
Exactamente.
Parece que tiene más que ver cómo funciona eso.
El skypack, pero no el buscador.
Search, no sé qué.
Add package.
Add package.
Search for unused javascript packages from mpn here.
Creo que CodeSandbox tiene una funcionalidad parecida.
Voy a fijarme a ver cómo lo hace.
¿Sabes?
A ver qué texto pone y todo esto.
A ver qué...
Es que dependencies, add dependencies.
Es que me gusta mejor que no haya explicación.
¿Sabes?
El tema de que add dependency.
Y en lugar de tener toda esta explicación...
¿Sabes?
Un poquito menos de explicación.
No sé por qué no.
Me está refrescando automáticamente esto.
Y entonces vamos a darle un poco de espacio a esto.
14.
14 margin top margin top del input
a ver me gusta más base 8 o sea que lo vamos a dejar asà vale pam pam pam
confeti
can't read property null vale importante ver que todo esto funciona data to skype pack
vale esto yo creo que lo podemos quitar porque ahora no vamos a querer esto no sé si o sea yo
creo que no tiene sentido que se cierre automáticamente yo creo que todo esto ya no hace falta falta que lo
haga yo prefiero que cuando hace esto react sabes que tú puedas añadir ahora una cosa que estarÃa
interesante es no poder añadir exactamente la misma esa ya serÃa la bomba pero creo que me quedo un
poco con esta idea no a lo mejor le podrÃa poner aquà una equis igual que tiene bueno en este caso no
tiene x no tiene hostia pero creo que me gusta más al hecho de que se cierra automáticamente que es un
poco es un poco raro asà que estarÃamos aquà buscamos por ejemplo react y react dom y ya tendrÃamos esto
aquà ahora sà igual molarÃa que tuviese aquà una equis para cerrarlo ahà directamente o incluso dándole al mismo botón
también que se pueda cerrar pero bueno por ahora tendrÃamos que tener asà y ya tendrÃamos ahà el buscador de a ver si
tenemos el de confeti este que canvas confeti confeti confeti
js confeti
js confeti
pues éste no es el de confeti canvas confeti canvas confeti
canvas confeti
he visto qué chulo
cada vez más y de hecho le puedes dar podrÃamos hacer h1 document punto query selector h1 atv listener click
canvas confeti
canvas confeti
bueno tenemos una nueva versión oye pues al final la idea de skypec chapo quedó brutal brutal es verdad la idea muy buena no sé la idea fue mÃa no
no me acuerdo si fue tuya feral pero creo que fue tuya
no me acuerdo
pero sà sà no súper bien es súper bien la verdad que no me acuerdo de que fue la idea
que me suena que le dijiste tu feral o no sé si me suena por él
le da un toque genial sà yo creo que es súper súper súper bien bueno aquà además los settings no han quedado mal
gracias feral
a equis segundos de no usarse se cierra oye pues esa tampoco es mala idea poner la descripción en un tooltip de tal si
mira ya que me habláis del tooltip quiero hacer exactamente veis este tooltip que aparece cuando se pone bueno ahora no vais a ver pero
cuando te pones encima de una fÃjate que te sale como un tooltip al lado
pues este mismo tooltip lo quiero hacer de hecho no deberÃa ser muy difÃcil tenemos un popper js o algo asÃ
pues utilizando esto hacer algo asÃ
a ver joven lo que pasa es que claro como cómo funcionarÃa el popper con el joven
joven joven joven
esto sólo queremos esto esto esto fue de feral
que estaba bromeando hombre que sà que ya sabÃa que era de feral que se ha dicho que quedó muy bien el
yutgón muchas gracias por la pr de verdad creo que que estaba muy chula
asà que muchÃsimas gracias por participar y te ha quedado súper súper bien de verdad te ha quedado
te ha quedado brutal en muchas felicidades se lo voy a decir sabes a quién se lo voy a decir se voy a decir al creador
el creador de skype
cómo se llama este hombre
skype
frito
como se llamaba joder armas sale el nombre
fred scott fred scott o algo asÃ
astro creator
ya me saldrá
joder astro build creator es no sé qué scott pero es que ahora no me sale el nombre
bueno entiendo que aquà no deben seguir mucha gente a mÃralo este fks fred k scott
que rabia bueno pues este hombre mira me sigue fijaos me sigue es increÃble me sigue porque cuando él
empezó no con astro signo con skype con snow pack con con rat pack no me acuerdo tuvo uno de los primeros
uno de los primeros que sacó fue rat pack o ratipack o yo que será una cosa asà extraña fks midudev
y le hice un vÃdeo porque me pareció súper interesante
y me lo retúteo y me escribió me dijo oye muchas gracias lo puso hasta en el github
cuando en lugar de snow pack se llamaba de otra forma
que era una ratilla es que ahora no me acuerdo cómo se llamaba y le hice un vÃdeo y estaba encantado
que le encantó que muchas gracias por el apoyo y estuvo súper bien asà que le escribiré pica pica web exacto pica
ahà está pica pica pica pica pues se lo comentaré le escribiré le diré oye mira a ver qué te parece lo que estoy haciendo por aquÃ
hemos integrado skype
para qué crees esto y todo esto a ver qué tal
y skype cómo funciona exactamente porque creo que entiendo la idea pero no mucho bueno skype a que en realidad
no tiene mucha historia o sea skype lo que es es un es un registro como lo puede ser en pie en la única diferencia
es que skype es también un cdn donde tú puedes importar directamente un paquete y utilizarlo
qué es lo mejor de esto a ver lo mejor de esto es que estos paquetes están construidos con en max script modules
qué quiere decir esto
porque son compatibles a que tú hagas utilices esta sintaxis de aquà de import confeti from tal
asà que tú puedes buscar paquetes que sean compatibles por ejemplo buscar rÃac
y vas a ver aquà que te dice skype a discover bueno pues las recomendaciones que no sé qué
y aquà te indica cuando le das le da una puntuación y te dice mira el package score te dice si es
compatible con en más script modules que ya ves que no
y si tiene tipos de typescript y te dice cómo lo deberÃas utilizar en este caso hace alguna cosa especial para que rÃac lo puedas utilizar o sea de forma nativa no tiene más
script modules pero creo que se puede utilizar gracias a que skype a que hace algún tipo de magia extraña
y lo mismo aquà con un montón o sea si por ejemplo aquà buscamos
o sea es que es cuestión jquery
yo que sé jquery vale pues te dice mira
mira te dice esto seguramente lo que estás buscando
está súper genial este buscador porque fÃjate que te pone links relacionados está bastante chulo
está bastante bien
yo que sé alguna asà que el otro dÃa estuvimos utilizando solid 10 pues mira solid 10
lo bueno de esto es eso que puedes utilizar solid 10 y aquà te dice open in code pen le das aquà y te abre un code pen
que ahora le podrÃa decir que en lugar de un code pen pues que
porque es mucho mejor sabes
utilizarlo con con nuestro editor
porque es que además esto es que no me es que no me no me lo siento no me gusta code pen que me pone de los nervios code pen
ah
bueno total que ahora podrÃamos utilizar esto y hacer una demo directamente con esto de hecho
pero a ver si
a ver si
examples
a ver si hay un ejemplo sin
no es que es todo con jcx
pero seguro que hay un ejemplo por ahà solid 10
solid 10
seguro que hay un ejemplo por ahà con en más script modules
sm
no
sm
no sé alguien me lo enseñó el otro dÃa
lo estuvimos viendo por ahÃ
cómo se podÃa ejecutar con html y todo esto
bueno es una
una dependencia se llama html
bueno total que se lo enseñaré
que el creador de astro que me sigue en twitter
asà que se lo enseñaré a ver qué le parece
es como si estuvieran almacenados los códigos de las dependencias
en las tres de internet directamente o como
es que es asà como funcionan pricksark
pricksark
asà como funciona en más script modules
o sea
no es un tema de que están mencionados los códigos de las dependencias
en las tres de internet
o sea
es que asà es como funciona en más script modules
o sea nosotros lo estamos haciendo exactamente igual aquÃ
mira este código
ves que estoy haciendo import de bounce from
utils
no sé qué
qué pasa
que los en más script modules
son compatibles también con
con direcciones de internet
yo puedo hacer esto
por ejemplo
y si este archivo existe
se lo descarga
lo que pasa es que este archivo tendrÃa que exportar
este de bounce
mira para que lo vean más claro
esto que vamos a hacer
esto serÃa compatible
si este archivo existe
que no
no existe
pensaba que iba a existir
como será esto
assets
no
public
no
bueno esto puede ser
a ver como lo estamos importando
es que igual lo está
por la ruta
a ver
js
script
panel fuente
no fuente no
perdón
assets
assets
no
es que aquà ya lo están
es que está dando un 404
ya al no encontrarlo
me está enseñando el index html
pero queda igual
que si cualquier
cualquier javascript
si exporta un módulo
tú lo puedes importar
este donde esté
mira por ejemplo este
¿no?
pues yo podrÃa hacer aquÃ
podrÃamos copiarlo
y podrÃas hacer esto
podrÃas importarlo directamente
ahora necesitas que ese javascript
obviamente exporte algo
si no
no funcionará
pero esto lo que va a hacer
es descargarse
ese archivo
y pasearlo
y ver si tiene un módulo
y cuando tenga el módulo
pues ejecutarlo y tal
lo que hay que tener en cuenta
es que estos imports
son en paralelo
o sea
esto es totalmente asÃncrono
o sea
el de arriba
este import
no deberÃa depender
de lo que haga el de arriba
con el segundo
porque entonces
puedes tener una risk condition
el cómo se descargan
sÃ
es que
los emascript modules
son una cosa bastante nueva
o sea
bueno
bastante nueva
ya son parte del aspecto
hace tiempo
pero no se suele utilizar
todavÃa mucho
a dÃa de hoy
yo por ejemplo
utilizo mi web
o lo estamos utilizando aquÃ
utilizar el import
pero se ve más en empaquetadores
que los empaquetadores
son los que lo hacen
pero al final
es una cosa que es nativa
ahora de la plataforma
y es súper interesante
prueba esto
midu con codilink
dialog box
qué es esto
qué quieres
que pongamos
este dialog box
de windows
para qué
es horrible
la leche
7.css
es uno de estos css
de
cuál es
o era la alternativa
al import export
la alternativa
era common.js
o requires
o sea
en no.js
tendrÃamos
por ejemplo
era
const
the bounce
require
y hacÃas esto
utils
the bounce
.js
y para exportar
pues hacÃas esto
the bounce
esto serÃa
cjs
aparte de esto
habÃa otras alternativas
que ya no se utilizan tanto
por ejemplo
amd
que se utilizaba
con require
js
esto ya está
súper deprecated
esto no deberÃas utilizar
ni en broma
pero a ver si os veo
mira
esto serÃa un poco
common.js
y amd
era asÃ
definÃas
las dependencias
que tenÃas
y una vez que se cargaban
la podÃas ejecutar
y aquà podÃas ponerle
la lista de dependencias
que tenÃa
eso se descargaba
y entonces ya lo podÃas utilizar
pero ya os digo
que esto es súper antiguo
esto ya
no se tiene que utilizar
no guay
cómo te va a gustar
si esto es windows
o sea es horrible
para que lo pongamos
ahà en medio
va a quedar muy feo
a ver
para hacer una aplicación
puede estar gracioso
pero para ahà en medio
claro
el require tiene diferencias
son similares
pero tienen diferencias
tienen diferencias
de funcionamiento
no son exactamente
lo mismo
por ejemplo
tú no puedes
hacer un require
de una url externa
eso solo te lo hacen
los imports
luego también tienes
algunas diferencias
con el import
tú no puedes hacer
un json
asà directamente
con el require
sà que lo puedes hacer
con el para el json
tendrÃas que utilizar
un assert
no sé qué
no sé cuánto
para decirle
cuál es el formato
luego los imports
son asÃncronos
por defecto
lo que quiere decir
es que tú no sabes
cuál es el orden
que el navegador
va a utilizar
para descargar
estas dos dependencias
en cambio
aquÃ
en no jes
estos requires
son sÃncronos
se suele hacer
uno detrás del otro
luego también tienes
más diferencias
aparte que tienes
los import dinámicos
los import dinámicos
devuelven una promesa
y puedes descargar eso
bajo demanda
con
pues promise
en cambio
los requires
bueno tenÃas
el require
punto
ensur
no
require
sà creo que era
require ensur
pero esto era
un tema más de webpack
y no tenÃa mucho sentido
sÃ
dentro de poco
vamos a hacer
un react.new
pero de codilink
a ver
vamos a ver
view
en codilink
mira
aquà tenemos
nuestro primer
view
en codilink
pues súper guay
súper genial
visto
mira
y esto es importándolo
desde skypack
ah mira
es que esta es la versión antigua
pero buscáis view
y podéis utilizar view
y tenerlo aquÃ
en codilink
súper fácil
y súper rápido
muy bien
nicolÃn
gente ya terminó
el bootcamp
sÃ
el bootcamp de los domingos
sÃ
pero todavÃa tengo que subir
algunas clases
a youtube
que estoy en ello
vale
bueno me queda el popper
el popper
popper
vamos a darle un momento
al popper
va
venga
vamos a
concentrarnos con el popper
mucho confeti
vamos a instalarlo
y mira
es que esto es genial
o sea
es que esto es el futuro
de javascript
veis que aquà pone cdn
si esto fuera un enmascript module
pues podrÃa
darle un clic aquÃ
copiarlo
y directamente
ir a mi proyecto
bueno
esto lo voy a quitar
que es lo que estaba mal
y directamente
pues hacer
import
popper
from
y poner el cd
la cdn
y ya está
y con esto
ya tendrÃa popper
esto lo descargarÃa
desde la cdn
que normalmente
no es la mejor opción
obvio
pero no
no está mal
o sea
no necesitas
npm
no necesitas
absolutamente nada
es el futuro
del desarrollo
web
o sea
que va a ser genial
uy he dejado
un json
popper
from
popper
jscore
esto por aquÃ
a ver
que se me está quejando
de algo
porque he dejado
en skype.js
dejo que el json
vale
pitch reload
a ver
pues algo no me gusta
aquÃ
vamos a ver
que es
popper
donde se
provide
an export
name
default
vale
tiene sentido
soy yo
que me lo estoy inventando
script popper
popper
tooltip
create
placement
right
vale
y el popper
de donde
sabes
que es lo que
recupera
el title
que es lo que lee
del pop con este
vamos a ver
el tutorial
este
tutorial
popper
porque no puro css
ya sabemos
que no funciona muy bien
usage
create popper
area described by
rule
tooltip
vale
o sea
que habrÃa que poner
de cada botón
vale
a ver
vamos a probar con uno
por ejemplo
con el editor
vale
aquà pone que tiene un botón
esto tendrÃa que tener un
area described by
el tooltip
lo que no entiendo
si tiene que estar
justamente al lado
sabes
si esto puede estar
en cualquier sitio
o tiene que estar
justamente ahÃ
yo entiendo que podrÃa estar
en cualquier sitio
o sea que lo va a mover
o sea yo por ejemplo
si lo pongo aquÃ
que esto deberÃa
funcionar
exactamente igual
no sé qué
no sé cuánto
vale
vamos a poner esto
el popper
vamos a poner
el botón
el botón era
header button
header button
vamos a probar
a ver si
si esto funciona
left
ahà se ve
pero me imagino
que esto le faltan
unos estilos
o algo
css
popperlite
popperlite
ah mira
es que esto
vamos a poner por aquÃ
esto
bueno
esta es un tooltip
pero queremos
que solo funcione
en el hover
vale
display none
this show
joder
madre mÃa
ya estarÃa bien
que todo esto
estuviese
de gratis
o sea que estuviese
dentro del
tooltip
tooltip
esto cambiamos
tooltip
popper instance
esto
y el botón
vamos a utilizar
este botón
al menos
para tener uno
para ver
que todo funciona
luego ya
lo
bueno
no está mal
la verdad es que
viendo
todo lo que hace
esto
no sé hasta qué punto
tiene mucho sentido
que utilicemos
el popper este
porque tampoco
creo que sea
muy necesario
creo que vamos a utilizar
css
no tiene mucho sentido
el popper este
utilizarlo
me da la sensación
me da la sensación
midu las drojas
yo que he hecho
con las drojas
me da la sensación
me da la sensación
las drojas
muchas cosas
berries
tahu
me da la sensación
que
me da la sensación
hacer
y
todo lo queит
Gonzaga
ella
me da la sensación
me da la sensación
o
no Ã
la sensación
que