Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated:
WEBVTT
Kind: captions
Language: en
00:00:00.399 --> 00:00:03.470 align:start position:0%
this<00:00:01.160> is<00:00:01.360> not<00:00:01.599> your<00:00:01.839> typical<00:00:02.240> Instagram<00:00:02.720> clone
00:00:03.470 --> 00:00:03.480 align:start position:0%
this is not your typical Instagram clone
00:00:03.480 --> 00:00:05.910 align:start position:0%
this is not your typical Instagram clone
we're<00:00:03.679> bringing<00:00:04.040> you<00:00:04.279> a<00:00:04.560> modern<00:00:05.040> social<00:00:05.520> app
00:00:05.910 --> 00:00:05.920 align:start position:0%
we're bringing you a modern social app
00:00:05.920 --> 00:00:08.390 align:start position:0%
we're bringing you a modern social app
with<00:00:06.120> stunning<00:00:06.560> UI<00:00:07.240> with<00:00:07.399> a<00:00:07.600> native<00:00:08.040> mobile
00:00:08.390 --> 00:00:08.400 align:start position:0%
with stunning UI with a native mobile
00:00:08.400 --> 00:00:11.589 align:start position:0%
with stunning UI with a native mobile
feel<00:00:09.280> a<00:00:09.559> special<00:00:09.920> text<00:00:10.280> stack<00:00:11.000> an<00:00:11.200> infinite
00:00:11.589 --> 00:00:11.599 align:start position:0%
feel a special text stack an infinite
00:00:11.599 --> 00:00:14.950 align:start position:0%
feel a special text stack an infinite
scroll<00:00:11.960> feature<00:00:12.880> and<00:00:13.280> amazing<00:00:13.960> performance
00:00:14.950 --> 00:00:14.960 align:start position:0%
scroll feature and amazing performance
00:00:14.960 --> 00:00:16.870 align:start position:0%
scroll feature and amazing performance
have<00:00:15.080> you<00:00:15.200> ever<00:00:15.440> struggled<00:00:16.039> with<00:00:16.320> complicated
00:00:16.870 --> 00:00:16.880 align:start position:0%
have you ever struggled with complicated
00:00:16.880 --> 00:00:19.550 align:start position:0%
have you ever struggled with complicated
server<00:00:17.240> setups<00:00:18.000> worrying<00:00:18.480> about<00:00:18.840> security
00:00:19.550 --> 00:00:19.560 align:start position:0%
server setups worrying about security
00:00:19.560 --> 00:00:22.509 align:start position:0%
server setups worrying about security
handling<00:00:20.000> user<00:00:20.359> off<00:00:20.960> scaling<00:00:21.960> managing<00:00:22.400> and
00:00:22.509 --> 00:00:22.519 align:start position:0%
handling user off scaling managing and
00:00:22.519 --> 00:00:24.870 align:start position:0%
handling user off scaling managing and
storing<00:00:22.880> files<00:00:23.279> securely<00:00:23.920> and<00:00:24.240> optimizing
00:00:24.870 --> 00:00:24.880 align:start position:0%
storing files securely and optimizing
00:00:24.880 --> 00:00:27.870 align:start position:0%
storing files securely and optimizing
API<00:00:25.400> performance<00:00:26.359> without<00:00:26.760> losing<00:00:27.359> countless
00:00:27.870 --> 00:00:27.880 align:start position:0%
API performance without losing countless
00:00:27.880 --> 00:00:30.029 align:start position:0%
API performance without losing countless
development<00:00:28.359> hours<00:00:29.279> if<00:00:29.480> that<00:00:29.599> is<00:00:29.720> the<00:00:29.800> case
00:00:30.029 --> 00:00:30.039 align:start position:0%
development hours if that is the case
00:00:30.039 --> 00:00:32.429 align:start position:0%
development hours if that is the case
Cas<00:00:30.480> you're<00:00:30.720> not<00:00:30.960> alone<00:00:31.640> and<00:00:31.920> I've<00:00:32.160> got
00:00:32.429 --> 00:00:32.439 align:start position:0%
Cas you're not alone and I've got
00:00:32.439 --> 00:00:34.350 align:start position:0%
Cas you're not alone and I've got
something<00:00:32.759> that<00:00:32.920> can<00:00:33.120> help<00:00:33.760> whether<00:00:33.960> you're<00:00:34.160> a
00:00:34.350 --> 00:00:34.360 align:start position:0%
something that can help whether you're a
00:00:34.360 --> 00:00:36.869 align:start position:0%
something that can help whether you're a
new<00:00:34.760> or<00:00:35.000> a<00:00:35.160> season<00:00:35.680> developer<00:00:36.399> thinking<00:00:36.719> of
00:00:36.869 --> 00:00:36.879 align:start position:0%
new or a season developer thinking of
00:00:36.879 --> 00:00:39.750 align:start position:0%
new or a season developer thinking of
starting<00:00:37.280> a<00:00:37.440> fresh<00:00:37.840> side<00:00:38.160> project<00:00:38.960> doing<00:00:39.440> all
00:00:39.750 --> 00:00:39.760 align:start position:0%
starting a fresh side project doing all
00:00:39.760 --> 00:00:42.069 align:start position:0%
starting a fresh side project doing all
these<00:00:40.039> things<00:00:40.280> on<00:00:40.440> your<00:00:40.600> own<00:00:40.960> can<00:00:41.160> be<00:00:41.520> quite<00:00:41.800> a
00:00:42.069 --> 00:00:42.079 align:start position:0%
these things on your own can be quite a
00:00:42.079 --> 00:00:45.630 align:start position:0%
these things on your own can be quite a
hassle<00:00:43.079> so<00:00:43.600> hi<00:00:43.840> there<00:00:44.360> and<00:00:44.680> welcome<00:00:45.000> to<00:00:45.200> a<00:00:45.360> new
00:00:45.630 --> 00:00:45.640 align:start position:0%
hassle so hi there and welcome to a new
00:00:45.640 --> 00:00:47.910 align:start position:0%
hassle so hi there and welcome to a new
project<00:00:46.079> video<00:00:46.600> where<00:00:46.760> you'll<00:00:47.079> build<00:00:47.640> and
00:00:47.910 --> 00:00:47.920 align:start position:0%
project video where you'll build and
00:00:47.920 --> 00:00:51.110 align:start position:0%
project video where you'll build and
deploy<00:00:48.760> an<00:00:49.039> amazing<00:00:49.600> social<00:00:50.000> site<00:00:50.640> with<00:00:50.840> a
00:00:51.110 --> 00:00:51.120 align:start position:0%
deploy an amazing social site with a
00:00:51.120 --> 00:00:53.709 align:start position:0%
deploy an amazing social site with a
hassle-free<00:00:51.680> backend<00:00:52.680> thanks<00:00:52.920> to<00:00:53.199> aight
00:00:53.709 --> 00:00:53.719 align:start position:0%
hassle-free backend thanks to aight
00:00:53.719 --> 00:00:56.709 align:start position:0%
hassle-free backend thanks to aight
Cloud<00:00:54.600> it<00:00:54.760> allows<00:00:55.039> you<00:00:55.199> to<00:00:55.359> create<00:00:55.719> a<00:00:55.920> backend
00:00:56.709 --> 00:00:56.719 align:start position:0%
Cloud it allows you to create a backend
00:00:56.719 --> 00:00:59.150 align:start position:0%
Cloud it allows you to create a backend
faster<00:00:57.079> than<00:00:57.280> Thanos<00:00:57.760> snaps<00:00:58.079> his<00:00:58.280> fingers<00:00:58.960> and
00:00:59.150 --> 00:00:59.160 align:start position:0%
faster than Thanos snaps his fingers and
00:00:59.160 --> 00:01:01.790 align:start position:0%
faster than Thanos snaps his fingers and
at<00:00:59.280> a<00:00:59.399> much<00:00:59.600> lower<00:01:00.160> cost<00:01:00.559> than<00:01:00.760> scary<00:01:01.239> Firebase
00:01:01.790 --> 00:01:01.800 align:start position:0%
at a much lower cost than scary Firebase
00:01:01.800 --> 00:01:04.310 align:start position:0%
at a much lower cost than scary Firebase
for<00:01:02.039> pro<00:01:02.359> plans<00:01:03.039> you'll<00:01:03.399> get<00:01:03.840> what<00:01:04.000> you<00:01:04.080> would
00:01:04.310 --> 00:01:04.320 align:start position:0%
for pro plans you'll get what you would
00:01:04.320 --> 00:01:06.630 align:start position:0%
for pro plans you'll get what you would
otherwise<00:01:04.799> have<00:01:04.960> to<00:01:05.119> pay<00:01:05.320> in<00:01:05.479> Firebase<00:01:06.400> for
00:01:06.630 --> 00:01:06.640 align:start position:0%
otherwise have to pay in Firebase for
00:01:06.640 --> 00:01:09.910 align:start position:0%
otherwise have to pay in Firebase for
free<00:01:07.240> with<00:01:07.479> aite<00:01:08.479> but<00:01:08.840> what<00:01:09.000> are<00:01:09.119> we<00:01:09.280> building
00:01:09.910 --> 00:01:09.920 align:start position:0%
free with aite but what are we building
00:01:09.920 --> 00:01:12.670 align:start position:0%
free with aite but what are we building
the<00:01:10.119> app<00:01:10.439> you'll<00:01:10.640> build<00:01:11.240> contains<00:01:11.759> a<00:01:12.040> robust
00:01:12.670 --> 00:01:12.680 align:start position:0%
the app you'll build contains a robust
00:01:12.680 --> 00:01:15.270 align:start position:0%
the app you'll build contains a robust
and<00:01:12.920> stunning<00:01:13.520> authentication<00:01:14.320> system<00:01:15.080> a
00:01:15.270 --> 00:01:15.280 align:start position:0%
and stunning authentication system a
00:01:15.280 --> 00:01:17.830 align:start position:0%
and stunning authentication system a
homepage<00:01:15.880> for<00:01:16.240> exploring<00:01:16.840> posts<00:01:17.240> shared<00:01:17.640> by
00:01:17.830 --> 00:01:17.840 align:start position:0%
homepage for exploring posts shared by
00:01:17.840 --> 00:01:20.230 align:start position:0%
homepage for exploring posts shared by
others<00:01:18.439> with<00:01:18.640> top<00:01:18.960> creators<00:01:19.560> featured<00:01:19.960> on<00:01:20.079> the
00:01:20.230 --> 00:01:20.240 align:start position:0%
others with top creators featured on the
00:01:20.240 --> 00:01:23.550 align:start position:0%
others with top creators featured on the
right<00:01:20.880> the<00:01:21.040> ability<00:01:21.479> to<00:01:21.840> like<00:01:22.280> and<00:01:22.479> save<00:01:22.920> posts
00:01:23.550 --> 00:01:23.560 align:start position:0%
right the ability to like and save posts
00:01:23.560 --> 00:01:25.670 align:start position:0%
right the ability to like and save posts
accessible<00:01:24.200> through<00:01:24.439> a<00:01:24.680> separate<00:01:25.119> dedicated
00:01:25.670 --> 00:01:25.680 align:start position:0%
accessible through a separate dedicated
00:01:25.680 --> 00:01:28.510 align:start position:0%
accessible through a separate dedicated
page<00:01:26.520> and<00:01:26.880> you<00:01:27.040> might<00:01:27.280> think<00:01:27.920> here<00:01:28.079> we<00:01:28.240> go
00:01:28.510 --> 00:01:28.520 align:start position:0%
page and you might think here we go
00:01:28.520 --> 00:01:31.469 align:start position:0%
page and you might think here we go
again<00:01:29.119> another<00:01:29.880> Instagram<00:01:30.240> clone<00:01:30.920> but<00:01:31.159> trust
00:01:31.469 --> 00:01:31.479 align:start position:0%
again another Instagram clone but trust
00:01:31.479 --> 00:01:34.789 align:start position:0%
again another Instagram clone but trust
me<00:01:32.119> this<00:01:32.399> is<00:01:32.680> not<00:01:33.040> your<00:01:33.280> typical<00:01:33.759> app<00:01:34.280> sure
00:01:34.789 --> 00:01:34.799 align:start position:0%
me this is not your typical app sure
00:01:34.799 --> 00:01:36.870 align:start position:0%
me this is not your typical app sure
you've<00:01:35.119> probably<00:01:35.560> mastered<00:01:36.240> the<00:01:36.399> basics<00:01:36.720> of
00:01:36.870 --> 00:01:36.880 align:start position:0%
you've probably mastered the basics of
00:01:36.880 --> 00:01:39.710 align:start position:0%
you've probably mastered the basics of
crowd<00:01:37.439> operations<00:01:38.439> but<00:01:38.759> have<00:01:38.920> you<00:01:39.079> ever<00:01:39.360> had<00:01:39.520> a
00:01:39.710 --> 00:01:39.720 align:start position:0%
crowd operations but have you ever had a
00:01:39.720 --> 00:01:42.270 align:start position:0%
crowd operations but have you ever had a
chance<00:01:40.119> to<00:01:40.399> implement<00:01:40.960> that<00:01:41.280> one<00:01:41.680> incredible
00:01:42.270 --> 00:01:42.280 align:start position:0%
chance to implement that one incredible
00:01:42.280 --> 00:01:45.030 align:start position:0%
chance to implement that one incredible
feature<00:01:43.040> that's<00:01:43.280> had<00:01:43.439> us<00:01:43.720> all<00:01:44.079> hooked<00:01:44.439> for
00:01:45.030 --> 00:01:45.040 align:start position:0%
feature that's had us all hooked for
00:01:45.040 --> 00:01:47.990 align:start position:0%
feature that's had us all hooked for
decades<00:01:46.040> yes<00:01:46.560> the<00:01:46.759> infinite<00:01:47.119> scroll<00:01:47.759> we'll
00:01:47.990 --> 00:01:48.000 align:start position:0%
decades yes the infinite scroll we'll
00:01:48.000 --> 00:01:50.510 align:start position:0%
decades yes the infinite scroll we'll
implement<00:01:48.439> it<00:01:48.719> inside<00:01:49.200> the<00:01:49.360> explore<00:01:49.880> page
00:01:50.510 --> 00:01:50.520 align:start position:0%
implement it inside the explore page
00:01:50.520 --> 00:01:52.310 align:start position:0%
implement it inside the explore page
integrate<00:01:50.960> it<00:01:51.240> together<00:01:51.560> with<00:01:51.680> the<00:01:51.799> sech
00:01:52.310 --> 00:01:52.320 align:start position:0%
integrate it together with the sech
00:01:52.320 --> 00:01:54.709 align:start position:0%
integrate it together with the sech
functionality<00:01:53.320> and<00:01:53.560> I<00:01:53.640> will<00:01:53.920> teach<00:01:54.200> you<00:01:54.600> how
00:01:54.709 --> 00:01:54.719 align:start position:0%
functionality and I will teach you how
00:01:54.719 --> 00:01:58.230 align:start position:0%
functionality and I will teach you how
to<00:01:54.880> do<00:01:55.040> the<00:01:55.240> same<00:01:55.680> for<00:01:56.039> all<00:01:56.439> other<00:01:56.880> Pages<00:01:57.399> too
00:01:58.230 --> 00:01:58.240 align:start position:0%
to do the same for all other Pages too
00:01:58.240 --> 00:02:00.550 align:start position:0%
to do the same for all other Pages too
and<00:01:58.439> moving<00:01:58.759> to<00:01:59.079> other<00:01:59.320> phenomenal<00:01:59.880> features
00:02:00.550 --> 00:02:00.560 align:start position:0%
and moving to other phenomenal features
00:02:00.560 --> 00:02:03.550 align:start position:0%
and moving to other phenomenal features
will<00:02:00.840> develop<00:02:01.399> a<00:02:01.640> detailed<00:02:02.280> post<00:02:02.640> page<00:02:03.240> that
00:02:03.550 --> 00:02:03.560 align:start position:0%
will develop a detailed post page that
00:02:03.560 --> 00:02:06.670 align:start position:0%
will develop a detailed post page that
also<00:02:03.920> displays<00:02:04.600> related<00:02:05.159> posts<00:02:05.960> a<00:02:06.240> profile
00:02:06.670 --> 00:02:06.680 align:start position:0%
also displays related posts a profile
00:02:06.680 --> 00:02:09.350 align:start position:0%
also displays related posts a profile
page<00:02:07.039> showcasing<00:02:07.799> your<00:02:08.000> liked<00:02:08.360> posts<00:02:09.000> and<00:02:09.200> the
00:02:09.350 --> 00:02:09.360 align:start position:0%
page showcasing your liked posts and the
00:02:09.360 --> 00:02:12.190 align:start position:0%
page showcasing your liked posts and the
ability<00:02:09.759> to<00:02:10.000> edit<00:02:10.280> your<00:02:10.560> profile<00:02:11.440> similarly
00:02:12.190 --> 00:02:12.200 align:start position:0%
ability to edit your profile similarly
00:02:12.200 --> 00:02:14.949 align:start position:0%
ability to edit your profile similarly
browsing<00:02:12.800> other<00:02:13.080> users<00:02:13.599> and<00:02:13.879> their<00:02:14.160> profiles
00:02:14.949 --> 00:02:14.959 align:start position:0%
browsing other users and their profiles
00:02:14.959 --> 00:02:17.589 align:start position:0%
browsing other users and their profiles
a<00:02:15.200> create<00:02:15.599> post<00:02:16.000> page<00:02:16.239> for<00:02:16.440> sharing<00:02:17.080> all<00:02:17.360> kinds
00:02:17.589 --> 00:02:17.599 align:start position:0%
a create post page for sharing all kinds
00:02:17.599 --> 00:02:19.550 align:start position:0%
a create post page for sharing all kinds
of<00:02:17.760> memories<00:02:18.200> you<00:02:18.319> would<00:02:18.480> like<00:02:18.599> to<00:02:18.760> share<00:02:19.280> with
00:02:19.550 --> 00:02:19.560 align:start position:0%
of memories you would like to share with
00:02:19.560 --> 00:02:22.270 align:start position:0%
of memories you would like to share with
effortless<00:02:20.160> file<00:02:20.440> management<00:02:21.160> and<00:02:21.440> storage
00:02:22.270 --> 00:02:22.280 align:start position:0%
effortless file management and storage
00:02:22.280 --> 00:02:25.630 align:start position:0%
effortless file management and storage
and<00:02:22.560> a<00:02:22.800> drag<00:02:23.160> and<00:02:23.400> drop<00:02:23.800> feature<00:02:24.680> an<00:02:24.959> edit<00:02:25.319> post
00:02:25.630 --> 00:02:25.640 align:start position:0%
and a drag and drop feature an edit post
00:02:25.640 --> 00:02:27.910 align:start position:0%
and a drag and drop feature an edit post
page<00:02:26.000> to<00:02:26.239> edit<00:02:26.480> the<00:02:26.680> contents<00:02:27.080> of<00:02:27.239> your<00:02:27.440> post
00:02:27.910 --> 00:02:27.920 align:start position:0%
page to edit the contents of your post
00:02:27.920 --> 00:02:31.470 align:start position:0%
page to edit the contents of your post
anytime<00:02:28.920> and<00:02:29.239> so<00:02:29.480> much<00:02:29.920> more<00:02:30.400> with<00:02:30.560> an<00:02:30.800> amazing
00:02:31.470 --> 00:02:31.480 align:start position:0%
anytime and so much more with an amazing
00:02:31.480 --> 00:02:34.150 align:start position:0%
anytime and so much more with an amazing
responsive<00:02:32.120> UI<00:02:32.840> with<00:02:33.000> the<00:02:33.200> Bottom<00:02:33.560> bar<00:02:34.040> that
00:02:34.150 --> 00:02:34.160 align:start position:0%
responsive UI with the Bottom bar that
00:02:34.160 --> 00:02:36.670 align:start position:0%
responsive UI with the Bottom bar that
surely<00:02:34.640> gives<00:02:34.920> the<00:02:35.040> feel<00:02:35.440> of<00:02:35.560> a<00:02:35.800> native<00:02:36.239> mobile
00:02:36.670 --> 00:02:36.680 align:start position:0%
surely gives the feel of a native mobile
00:02:36.680 --> 00:02:39.030 align:start position:0%
surely gives the feel of a native mobile
app<00:02:37.160> does<00:02:37.360> it<00:02:37.480> sound<00:02:37.920> exciting<00:02:38.440> as<00:02:38.560> it<00:02:38.680> does<00:02:38.879> to
00:02:39.030 --> 00:02:39.040 align:start position:0%
app does it sound exciting as it does to
00:02:39.040 --> 00:02:41.869 align:start position:0%
app does it sound exciting as it does to
me<00:02:39.519> we'll<00:02:39.760> develop<00:02:40.280> all<00:02:40.480> of<00:02:40.720> these<00:02:41.200> all<00:02:41.599> well
00:02:41.869 --> 00:02:41.879 align:start position:0%
me we'll develop all of these all well
00:02:41.879 --> 00:02:46.229 align:start position:0%
me we'll develop all of these all well
learning<00:02:42.519> react<00:02:43.480> react<00:02:44.080> context<00:02:44.800> API<00:02:45.800> complex
00:02:46.229 --> 00:02:46.239 align:start position:0%
learning react react context API complex
00:02:46.239 --> 00:02:48.869 align:start position:0%
learning react react context API complex
react<00:02:46.680> routing<00:02:47.280> with<00:02:47.560> outlet<00:02:48.319> and
00:02:48.869 --> 00:02:48.879 align:start position:0%
react routing with outlet and
00:02:48.879 --> 00:02:51.190 align:start position:0%
react routing with outlet and
conditional<00:02:49.159> rendering<00:02:50.120> we'll<00:02:50.440> use<00:02:50.959> the
00:02:51.190 --> 00:02:51.200 align:start position:0%
conditional rendering we'll use the
00:02:51.200 --> 00:02:54.589 align:start position:0%
conditional rendering we'll use the
latest<00:02:51.680> version<00:02:52.560> 5.0<00:02:53.560> of<00:02:53.840> the<00:02:54.080> backand
00:02:54.589 --> 00:02:54.599 align:start position:0%
latest version 5.0 of the backand
00:02:54.599 --> 00:02:57.270 align:start position:0%
latest version 5.0 of the backand
agnostic<00:02:55.280> data<00:02:55.599> fetching<00:02:56.000> Library<00:02:56.840> famously
00:02:57.270 --> 00:02:57.280 align:start position:0%
agnostic data fetching Library famously
00:02:57.280 --> 00:03:00.750 align:start position:0%
agnostic data fetching Library famously
known<00:02:57.720> as<00:02:57.920> react<00:02:58.360> query<00:02:59.040> now<00:02:59.319> t<00:02:59.760> stack<00:03:00.000> query
00:03:00.750 --> 00:03:00.760 align:start position:0%
known as react query now t stack query
00:03:00.760 --> 00:03:03.309 align:start position:0%
known as react query now t stack query
that<00:03:00.920> will<00:03:01.239> allow<00:03:01.560> us<00:03:01.720> to<00:03:01.959> implement<00:03:02.760> autoc
00:03:03.309 --> 00:03:03.319 align:start position:0%
that will allow us to implement autoc
00:03:03.319 --> 00:03:07.070 align:start position:0%
that will allow us to implement autoc
caching<00:03:04.200> ref<00:03:04.560> fetching<00:03:05.400> parallel<00:03:05.879> queries<00:03:06.840> a
00:03:07.070 --> 00:03:07.080 align:start position:0%
caching ref fetching parallel queries a
00:03:07.080 --> 00:03:09.949 align:start position:0%
caching ref fetching parallel queries a
first<00:03:07.519> class<00:03:07.879> mutations<00:03:08.879> loading<00:03:09.599> State
00:03:09.949 --> 00:03:09.959 align:start position:0%
first class mutations loading State
00:03:09.959 --> 00:03:12.830 align:start position:0%
first class mutations loading State
Management<00:03:10.799> and<00:03:11.120> more<00:03:11.840> then<00:03:12.280> you'll<00:03:12.599> also
00:03:12.830 --> 00:03:12.840 align:start position:0%
Management and more then you'll also
00:03:12.840 --> 00:03:16.589 align:start position:0%
Management and more then you'll also
learn<00:03:13.200> Tailwind<00:03:14.280> shaten<00:03:15.280> ight<00:03:15.840> Cloud<00:03:16.239> as<00:03:16.360> a
00:03:16.589 --> 00:03:16.599 align:start position:0%
learn Tailwind shaten ight Cloud as a
00:03:16.599 --> 00:03:19.350 align:start position:0%
learn Tailwind shaten ight Cloud as a
backend<00:03:17.000> as<00:03:17.120> a<00:03:17.280> service<00:03:17.640> tool<00:03:18.519> and<00:03:18.840> everyone's
00:03:19.350 --> 00:03:19.360 align:start position:0%
backend as a service tool and everyone's
00:03:19.360 --> 00:03:22.390 align:start position:0%
backend as a service tool and everyone's
favorite<00:03:20.280> typescript<00:03:21.280> there<00:03:21.599> is<00:03:21.760> a<00:03:22.000> lot<00:03:22.200> to
00:03:22.390 --> 00:03:22.400 align:start position:0%
favorite typescript there is a lot to
00:03:22.400 --> 00:03:24.869 align:start position:0%
favorite typescript there is a lot to
learn<00:03:23.080> so<00:03:23.400> I<00:03:23.560> hope<00:03:23.840> you're<00:03:24.080> pumped<00:03:24.400> to<00:03:24.560> learn
00:03:24.869 --> 00:03:24.879 align:start position:0%
learn so I hope you're pumped to learn
00:03:24.879 --> 00:03:27.030 align:start position:0%
learn so I hope you're pumped to learn
these<00:03:25.080> exciting<00:03:25.480> features<00:03:26.120> and<00:03:26.360> master<00:03:26.840> the
00:03:27.030 --> 00:03:27.040 align:start position:0%
these exciting features and master the
00:03:27.040 --> 00:03:29.309 align:start position:0%
these exciting features and master the
Most<00:03:27.360> Wanted<00:03:27.760> skills<00:03:28.360> to<00:03:28.560> impress<00:03:29.000> potential
00:03:29.309 --> 00:03:29.319 align:start position:0%
Most Wanted skills to impress potential
00:03:29.319 --> 00:03:32.910 align:start position:0%
Most Wanted skills to impress potential
employees<00:03:29.720> ERS<00:03:30.360> and<00:03:30.799> clients<00:03:31.799> with<00:03:32.000> that<00:03:32.280> said
00:03:32.910 --> 00:03:32.920 align:start position:0%
employees ERS and clients with that said
00:03:32.920 --> 00:03:34.830 align:start position:0%
employees ERS and clients with that said
before<00:03:33.280> we<00:03:33.519> dive<00:03:33.799> into<00:03:34.000> the<00:03:34.120> development<00:03:34.640> of
00:03:34.830 --> 00:03:34.840 align:start position:0%
before we dive into the development of
00:03:34.840 --> 00:03:37.190 align:start position:0%
before we dive into the development of
this<00:03:35.080> app<00:03:35.640> there's<00:03:36.040> one<00:03:36.280> more<00:03:36.560> thing<00:03:36.840> that<00:03:37.000> we
00:03:37.190 --> 00:03:37.200 align:start position:0%
this app there's one more thing that we
00:03:37.200 --> 00:03:40.309 align:start position:0%
this app there's one more thing that we
must<00:03:37.519> do<00:03:38.280> and<00:03:38.519> that<00:03:38.680> is<00:03:39.040> set<00:03:39.280> up<00:03:39.439> an<00:03:39.640> account<00:03:40.040> on
00:03:40.309 --> 00:03:40.319 align:start position:0%
must do and that is set up an account on
00:03:40.319 --> 00:03:43.110 align:start position:0%
must do and that is set up an account on
aight<00:03:40.879> Cloud<00:03:41.480> so<00:03:41.840> right<00:03:42.040> now<00:03:42.599> click<00:03:42.879> the
00:03:43.110 --> 00:03:43.120 align:start position:0%
aight Cloud so right now click the
00:03:43.120 --> 00:03:45.070 align:start position:0%
aight Cloud so right now click the
special<00:03:43.599> link<00:03:43.840> in<00:03:44.000> the<00:03:44.159> description<00:03:44.879> that's
00:03:45.070 --> 00:03:45.080 align:start position:0%
special link in the description that's
00:03:45.080 --> 00:03:46.789 align:start position:0%
special link in the description that's
going<00:03:45.239> to<00:03:45.400> allow<00:03:45.640> you<00:03:45.799> to<00:03:45.959> follow<00:03:46.319> along<00:03:46.640> with
00:03:46.789 --> 00:03:46.799 align:start position:0%
going to allow you to follow along with
00:03:46.799 --> 00:03:49.110 align:start position:0%
going to allow you to follow along with
this<00:03:47.040> video<00:03:47.640> and<00:03:47.840> create<00:03:48.200> a<00:03:48.480> phenomenal
00:03:49.110 --> 00:03:49.120 align:start position:0%
this video and create a phenomenal
00:03:49.120 --> 00:03:51.589 align:start position:0%
this video and create a phenomenal
backend<00:03:49.760> with<00:03:49.920> an<00:03:50.120> aight<00:03:50.640> Cloud<00:03:51.239> once<00:03:51.400> you
00:03:51.589 --> 00:03:51.599 align:start position:0%
backend with an aight Cloud once you
00:03:51.599 --> 00:03:53.949 align:start position:0%
backend with an aight Cloud once you
click<00:03:51.840> it<00:03:52.159> their<00:03:52.400> homepage<00:03:52.799> is<00:03:52.879> going<00:03:53.040> to<00:03:53.280> open
00:03:53.949 --> 00:03:53.959 align:start position:0%
click it their homepage is going to open
00:03:53.959 --> 00:03:56.190 align:start position:0%
click it their homepage is going to open
and<00:03:54.120> then<00:03:54.360> you<00:03:54.439> can<00:03:54.640> go<00:03:54.799> to<00:03:55.079> sign<00:03:55.400> up<00:03:56.040> once
00:03:56.190 --> 00:03:56.200 align:start position:0%
and then you can go to sign up once
00:03:56.200 --> 00:03:58.949 align:start position:0%
and then you can go to sign up once
you're<00:03:56.400> in<00:03:56.799> you<00:03:56.920> can<00:03:57.159> sign<00:03:57.439> in<00:03:57.720> or<00:03:58.040> sign<00:03:58.319> up<00:03:58.799> the
00:03:58.949 --> 00:03:58.959 align:start position:0%
you're in you can sign in or sign up the
00:03:58.959 --> 00:04:01.350 align:start position:0%
you're in you can sign in or sign up the
simplest<00:03:59.280> way<00:03:59.400> to<00:03:59.480> do<00:03:59.799> it<00:04:00.040> is<00:04:00.200> using<00:04:00.560> GitHub
00:04:01.350 --> 00:04:01.360 align:start position:0%
simplest way to do it is using GitHub
00:04:01.360 --> 00:04:02.830 align:start position:0%
simplest way to do it is using GitHub
once<00:04:01.560> you're<00:04:01.760> in<00:04:02.159> you'll<00:04:02.360> have<00:04:02.480> to<00:04:02.599> create
00:04:02.830 --> 00:04:02.840 align:start position:0%
once you're in you'll have to create
00:04:02.840 --> 00:04:06.069 align:start position:0%
once you're in you'll have to create
your<00:04:03.079> first<00:04:03.519> project<00:04:04.200> use<00:04:04.560> JSM<00:04:05.040> to<00:04:05.239> start<00:04:05.560> with
00:04:06.069 --> 00:04:06.079 align:start position:0%
your first project use JSM to start with
00:04:06.079 --> 00:04:08.149 align:start position:0%
your first project use JSM to start with
and<00:04:06.239> then<00:04:06.439> add<00:04:06.599> an<00:04:06.760> underscore<00:04:07.439> and<00:04:07.720> add<00:04:07.920> your
00:04:08.149 --> 00:04:08.159 align:start position:0%
and then add an underscore and add your
00:04:08.159 --> 00:04:10.789 align:start position:0%
and then add an underscore and add your
app<00:04:08.439> name<00:04:08.959> I'm<00:04:09.040> going<00:04:09.159> to<00:04:09.319> choose<00:04:09.799> snapgram
00:04:10.789 --> 00:04:10.799 align:start position:0%
app name I'm going to choose snapgram
00:04:10.799 --> 00:04:13.309 align:start position:0%
app name I'm going to choose snapgram
but<00:04:11.000> you<00:04:11.120> can<00:04:11.280> choose<00:04:11.680> anything<00:04:12.040> else<00:04:12.720> maybe
00:04:13.309 --> 00:04:13.319 align:start position:0%
but you can choose anything else maybe
00:04:13.319 --> 00:04:14.630 align:start position:0%
but you can choose anything else maybe
something<00:04:13.760> with<00:04:13.959> just<00:04:14.120> a<00:04:14.280> bit<00:04:14.439> more
00:04:14.630 --> 00:04:14.640 align:start position:0%
something with just a bit more
00:04:14.640 --> 00:04:16.629 align:start position:0%
something with just a bit more
imagination<00:04:15.480> and<00:04:15.680> then<00:04:15.840> click<00:04:16.199> create
00:04:16.629 --> 00:04:16.639 align:start position:0%
imagination and then click create
00:04:16.639 --> 00:04:20.150 align:start position:0%
imagination and then click create
project<00:04:17.600> and<00:04:17.959> we<00:04:18.120> are<00:04:18.440> in<00:04:19.079> operate<00:04:19.600> cloud<00:04:20.000> is
00:04:20.150 --> 00:04:20.160 align:start position:0%
project and we are in operate cloud is
00:04:20.160 --> 00:04:22.629 align:start position:0%
project and we are in operate cloud is
going<00:04:20.320> to<00:04:20.560> allow<00:04:20.840> us<00:04:21.000> to<00:04:21.239> create<00:04:21.799> robust
00:04:22.629 --> 00:04:22.639 align:start position:0%
going to allow us to create robust
00:04:22.639 --> 00:04:25.830 align:start position:0%
going to allow us to create robust
secure<00:04:23.320> and<00:04:23.639> scalable<00:04:24.199> backend<00:04:24.840> applications
00:04:25.830 --> 00:04:25.840 align:start position:0%
secure and scalable backend applications
00:04:25.840 --> 00:04:28.510 align:start position:0%
secure and scalable backend applications
it<00:04:26.040> provides<00:04:26.479> sdks<00:04:27.400> and<00:04:27.600> server<00:04:28.040> functions
00:04:28.510 --> 00:04:28.520 align:start position:0%
it provides sdks and server functions
00:04:28.520 --> 00:04:30.029 align:start position:0%
it provides sdks and server functions
that<00:04:28.639> you<00:04:28.720> can<00:04:28.880> integrate<00:04:29.440> with<00:04:29.639> with<00:04:29.800> any
00:04:30.029 --> 00:04:30.039 align:start position:0%
that you can integrate with with any
00:04:30.039 --> 00:04:31.830 align:start position:0%
that you can integrate with with any
kind<00:04:30.160> of<00:04:30.280> framework<00:04:31.120> some<00:04:31.280> of<00:04:31.440> the<00:04:31.639> best
00:04:31.830 --> 00:04:31.840 align:start position:0%
kind of framework some of the best
00:04:31.840 --> 00:04:34.110 align:start position:0%
kind of framework some of the best
features<00:04:32.199> they<00:04:32.440> offer<00:04:33.039> and<00:04:33.280> at<00:04:33.400> the<00:04:33.560> same<00:04:33.840> time
00:04:34.110 --> 00:04:34.120 align:start position:0%
features they offer and at the same time
00:04:34.120 --> 00:04:36.390 align:start position:0%
features they offer and at the same time
the<00:04:34.320> features<00:04:34.759> we'll<00:04:35.080> use<00:04:35.600> to<00:04:35.800> create<00:04:36.160> this
00:04:36.390 --> 00:04:36.400 align:start position:0%
the features we'll use to create this
00:04:36.400 --> 00:04:39.430 align:start position:0%
the features we'll use to create this
project<00:04:37.000> are<00:04:37.639> o<00:04:38.360> where<00:04:38.639> you'll<00:04:38.880> be<00:04:39.000> able<00:04:39.199> to
00:04:39.430 --> 00:04:39.440 align:start position:0%
project are o where you'll be able to
00:04:39.440 --> 00:04:41.950 align:start position:0%
project are o where you'll be able to
add<00:04:39.919> specific<00:04:40.720> team-based<00:04:41.320> and
00:04:41.950 --> 00:04:41.960 align:start position:0%
add specific team-based and
00:04:41.960 --> 00:04:44.870 align:start position:0%
add specific team-based and
permission-based<00:04:42.840> security<00:04:43.840> they<00:04:44.080> offer<00:04:44.479> o
00:04:44.870 --> 00:04:44.880 align:start position:0%
permission-based security they offer o
00:04:44.880 --> 00:04:47.350 align:start position:0%
permission-based security they offer o
options<00:04:45.240> from<00:04:45.600> email<00:04:45.880> and<00:04:46.160> password<00:04:46.720> to<00:04:47.000> Magic
00:04:47.350 --> 00:04:47.360 align:start position:0%
options from email and password to Magic
00:04:47.360 --> 00:04:51.230 align:start position:0%
options from email and password to Magic
URLs<00:04:48.160> and<00:04:48.360> more<00:04:48.600> than<00:04:48.840> 30<00:04:49.639> social<00:04:50.360> sign-ins
00:04:51.230 --> 00:04:51.240 align:start position:0%
URLs and more than 30 social sign-ins
00:04:51.240 --> 00:04:52.830 align:start position:0%
URLs and more than 30 social sign-ins
the<00:04:51.400> next<00:04:51.600> thing<00:04:51.759> we'll<00:04:51.919> use<00:04:52.120> in<00:04:52.240> our<00:04:52.479> project
00:04:52.830 --> 00:04:52.840 align:start position:0%
the next thing we'll use in our project
00:04:52.840 --> 00:04:55.270 align:start position:0%
the next thing we'll use in our project
are<00:04:52.960> going<00:04:53.080> to<00:04:53.199> be<00:04:53.600> databases<00:04:54.600> you<00:04:54.720> can<00:04:54.960> add
00:04:55.270 --> 00:04:55.280 align:start position:0%
are going to be databases you can add
00:04:55.280 --> 00:04:57.590 align:start position:0%
are going to be databases you can add
more<00:04:55.520> than<00:04:55.680> one<00:04:55.960> database<00:04:56.560> for<00:04:56.880> a<00:04:57.080> specific
00:04:57.590 --> 00:04:57.600 align:start position:0%
more than one database for a specific
00:04:57.600 --> 00:05:00.110 align:start position:0%
more than one database for a specific
project<00:04:58.320> in<00:04:58.479> the<00:04:58.639> process<00:04:58.919> of<00:04:59.080> creating<00:04:59.400> it<00:04:59.919> is
00:05:00.110 --> 00:05:00.120 align:start position:0%
project in the process of creating it is
00:05:00.120 --> 00:05:02.670 align:start position:0%
project in the process of creating it is
super<00:05:00.479> simple<00:05:01.360> then<00:05:01.680> you<00:05:01.800> can<00:05:01.960> of<00:05:02.080> course<00:05:02.400> add
00:05:02.670 --> 00:05:02.680 align:start position:0%
super simple then you can of course add
00:05:02.680 --> 00:05:05.070 align:start position:0%
super simple then you can of course add
many<00:05:02.960> different<00:05:03.440> Collections<00:05:04.440> and<00:05:04.680> the<00:05:04.840> best
00:05:05.070 --> 00:05:05.080 align:start position:0%
many different Collections and the best
00:05:05.080 --> 00:05:07.830 align:start position:0%
many different Collections and the best
thing<00:05:05.320> is<00:05:05.880> each<00:05:06.160> collection<00:05:07.039> has<00:05:07.280> its<00:05:07.520> own
00:05:07.830 --> 00:05:07.840 align:start position:0%
thing is each collection has its own
00:05:07.840 --> 00:05:09.710 align:start position:0%
thing is each collection has its own
attributes<00:05:08.600> which<00:05:08.759> can<00:05:08.880> be<00:05:09.080> of<00:05:09.240> a<00:05:09.400> lot<00:05:09.560> of
00:05:09.710 --> 00:05:09.720 align:start position:0%
attributes which can be of a lot of
00:05:09.720 --> 00:05:12.310 align:start position:0%
attributes which can be of a lot of
different<00:05:10.039> types<00:05:10.759> and<00:05:11.080> you<00:05:11.280> have<00:05:11.680> advanced
00:05:12.310 --> 00:05:12.320 align:start position:0%
different types and you have advanced
00:05:12.320 --> 00:05:15.430 align:start position:0%
different types and you have advanced
permissions<00:05:13.240> on<00:05:13.520> a<00:05:13.759> collection<00:05:14.280> level<00:05:15.240> the
00:05:15.430 --> 00:05:15.440 align:start position:0%
permissions on a collection level the
00:05:15.440 --> 00:05:17.350 align:start position:0%
permissions on a collection level the
next<00:05:15.759> feature<00:05:16.240> I'll<00:05:16.440> also<00:05:16.720> teach<00:05:16.919> you<00:05:17.080> how<00:05:17.199> to
00:05:17.350 --> 00:05:17.360 align:start position:0%
next feature I'll also teach you how to
00:05:17.360 --> 00:05:20.309 align:start position:0%
next feature I'll also teach you how to
use<00:05:17.960> is<00:05:18.280> storage<00:05:19.160> it<00:05:19.319> allows<00:05:19.600> us<00:05:19.759> to<00:05:19.960> quickly
00:05:20.309 --> 00:05:20.319 align:start position:0%
use is storage it allows us to quickly
00:05:20.319 --> 00:05:22.670 align:start position:0%
use is storage it allows us to quickly
create<00:05:20.680> buckets<00:05:21.360> of<00:05:21.639> different<00:05:22.000> files<00:05:22.600> where
00:05:22.670 --> 00:05:22.680 align:start position:0%
create buckets of different files where
00:05:22.680 --> 00:05:25.510 align:start position:0%
create buckets of different files where
we<00:05:22.800> can<00:05:22.960> store<00:05:23.520> any<00:05:23.720> kind<00:05:23.840> of<00:05:24.039> images<00:05:25.000> and<00:05:25.199> even
00:05:25.510 --> 00:05:25.520 align:start position:0%
we can store any kind of images and even
00:05:25.520 --> 00:05:27.830 align:start position:0%
we can store any kind of images and even
export<00:05:26.000> them<00:05:26.199> and<00:05:26.360> transform<00:05:26.960> them<00:05:27.160> to<00:05:27.400> reduce
00:05:27.830 --> 00:05:27.840 align:start position:0%
export them and transform them to reduce
00:05:27.840 --> 00:05:30.350 align:start position:0%
export them and transform them to reduce
file<00:05:28.160> sizes<00:05:29.120> and<00:05:29.560> finally<00:05:29.960> there<00:05:30.120> are
00:05:30.350 --> 00:05:30.360 align:start position:0%
file sizes and finally there are
00:05:30.360 --> 00:05:33.350 align:start position:0%
file sizes and finally there are
cloud-based<00:05:31.240> serverless<00:05:32.039> functions<00:05:33.039> and<00:05:33.240> the
00:05:33.350 --> 00:05:33.360 align:start position:0%
cloud-based serverless functions and the
00:05:33.360 --> 00:05:35.749 align:start position:0%
cloud-based serverless functions and the
best<00:05:33.560> thing<00:05:33.720> about<00:05:34.000> aite<00:05:34.720> is<00:05:34.919> that<00:05:35.080> it<00:05:35.280> offers
00:05:35.749 --> 00:05:35.759 align:start position:0%
best thing about aite is that it offers
00:05:35.759 --> 00:05:38.270 align:start position:0%
best thing about aite is that it offers
all<00:05:35.919> of<00:05:36.160> these<00:05:36.360> features<00:05:36.919> for<00:05:37.240> free<00:05:37.960> setting
00:05:38.270 --> 00:05:38.280 align:start position:0%
all of these features for free setting
00:05:38.280 --> 00:05:40.270 align:start position:0%
all of these features for free setting
it<00:05:38.479> apart<00:05:38.919> from<00:05:39.160> traditional<00:05:39.880> backend
00:05:40.270 --> 00:05:40.280 align:start position:0%
it apart from traditional backend
00:05:40.280 --> 00:05:43.070 align:start position:0%
it apart from traditional backend
diservice<00:05:40.880> Tools<00:05:41.680> in<00:05:41.800> terms<00:05:42.039> of<00:05:42.280> pricing<00:05:42.759> and
00:05:43.070 --> 00:05:43.080 align:start position:0%
diservice Tools in terms of pricing and
00:05:43.080 --> 00:05:45.029 align:start position:0%
diservice Tools in terms of pricing and
value<00:05:43.639> and<00:05:43.800> because<00:05:44.039> of<00:05:44.240> that<00:05:44.600> it's<00:05:44.759> no
00:05:45.029 --> 00:05:45.039 align:start position:0%
value and because of that it's no
00:05:45.039 --> 00:05:47.830 align:start position:0%
value and because of that it's no
surprise<00:05:45.560> that<00:05:45.759> aide<00:05:46.440> has<00:05:46.600> become<00:05:47.039> a<00:05:47.240> trending
00:05:47.830 --> 00:05:47.840 align:start position:0%
surprise that aide has become a trending
00:05:47.840 --> 00:05:50.270 align:start position:0%
surprise that aide has become a trending
project<00:05:48.199> on<00:05:48.440> GitHub<00:05:49.120> so<00:05:49.560> now<00:05:49.759> that<00:05:49.880> you're<00:05:50.039> set
00:05:50.270 --> 00:05:50.280 align:start position:0%
project on GitHub so now that you're set
00:05:50.280 --> 00:05:53.029 align:start position:0%
project on GitHub so now that you're set
up<00:05:50.440> with<00:05:50.600> aide<00:05:51.280> and<00:05:51.520> hopefully<00:05:52.199> excited<00:05:52.800> for
00:05:53.029 --> 00:05:53.039 align:start position:0%
up with aide and hopefully excited for
00:05:53.039 --> 00:05:54.909 align:start position:0%
up with aide and hopefully excited for
what<00:05:53.199> we're<00:05:53.319> are<00:05:53.479> about<00:05:53.720> to<00:05:53.880> build<00:05:54.319> together
00:05:54.909 --> 00:05:54.919 align:start position:0%
what we're are about to build together
00:05:54.919 --> 00:05:57.629 align:start position:0%
what we're are about to build together
let's<00:05:55.199> Dive<00:05:55.520> Right<00:05:55.680> In<00:05:56.319> to<00:05:56.639> get<00:05:56.880> started<00:05:57.440> with
00:05:57.629 --> 00:05:57.639 align:start position:0%
let's Dive Right In to get started with
00:05:57.639 --> 00:05:59.950 align:start position:0%
let's Dive Right In to get started with
developing<00:05:58.240> our<00:05:58.560> phenomenal<00:05:59.240> in<00:05:59.479> Instagram
00:05:59.950 --> 00:05:59.960 align:start position:0%
developing our phenomenal in Instagram
00:05:59.960 --> 00:06:02.150 align:start position:0%
developing our phenomenal in Instagram
clone<00:06:00.360> application<00:06:01.319> we<00:06:01.440> can<00:06:01.639> start<00:06:02.000> by
00:06:02.150 --> 00:06:02.160 align:start position:0%
clone application we can start by
00:06:02.160 --> 00:06:04.309 align:start position:0%
clone application we can start by
creating<00:06:02.560> a<00:06:02.759> new<00:06:03.120> empty<00:06:03.560> folder<00:06:03.960> on<00:06:04.080> our
00:06:04.309 --> 00:06:04.319 align:start position:0%
creating a new empty folder on our
00:06:04.319 --> 00:06:06.749 align:start position:0%
creating a new empty folder on our
desktop<00:06:05.240> and<00:06:05.440> let's<00:06:05.680> call<00:06:05.880> it
00:06:06.749 --> 00:06:06.759 align:start position:0%
desktop and let's call it
00:06:06.759 --> 00:06:09.070 align:start position:0%
desktop and let's call it
snapgram<00:06:07.759> once<00:06:07.919> you<00:06:08.120> created<00:06:08.479> it<00:06:08.759> you<00:06:08.880> can
00:06:09.070 --> 00:06:09.080 align:start position:0%
snapgram once you created it you can
00:06:09.080 --> 00:06:11.110 align:start position:0%
snapgram once you created it you can
simply<00:06:09.440> drag<00:06:09.720> and<00:06:09.880> drop<00:06:10.160> it<00:06:10.400> into<00:06:10.639> your<00:06:10.840> code
00:06:11.110 --> 00:06:11.120 align:start position:0%
simply drag and drop it into your code
00:06:11.120 --> 00:06:13.469 align:start position:0%
simply drag and drop it into your code
editor<00:06:11.479> of<00:06:11.639> choice<00:06:12.240> in<00:06:12.440> this<00:06:12.639> case<00:06:13.080> Visual
00:06:13.469 --> 00:06:13.479 align:start position:0%
editor of choice in this case Visual
00:06:13.479 --> 00:06:14.629 align:start position:0%
editor of choice in this case Visual
Studio
00:06:14.629 --> 00:06:14.639 align:start position:0%
Studio
00:06:14.639 --> 00:06:17.350 align:start position:0%
Studio
code<00:06:15.639> once<00:06:15.840> you're<00:06:16.120> there<00:06:16.560> you<00:06:16.680> can<00:06:16.840> go<00:06:16.960> to<00:06:17.160> the
00:06:17.350 --> 00:06:17.360 align:start position:0%
code once you're there you can go to the
00:06:17.360 --> 00:06:20.710 align:start position:0%
code once you're there you can go to the
top<00:06:18.000> go<00:06:18.199> to<00:06:18.440> view<00:06:19.319> and<00:06:19.479> then
00:06:20.710 --> 00:06:20.720 align:start position:0%
top go to view and then
00:06:20.720 --> 00:06:23.430 align:start position:0%
top go to view and then
terminal<00:06:21.720> this<00:06:22.000> is<00:06:22.160> going<00:06:22.319> to<00:06:22.560> open<00:06:22.840> up<00:06:23.120> a
00:06:23.430 --> 00:06:23.440 align:start position:0%
terminal this is going to open up a
00:06:23.440 --> 00:06:26.589 align:start position:0%
terminal this is going to open up a
built-in<00:06:24.000> integrated<00:06:24.840> Visual<00:06:25.160> Studio<00:06:25.560> code
00:06:26.589 --> 00:06:26.599 align:start position:0%
built-in integrated Visual Studio code
00:06:26.599 --> 00:06:28.830 align:start position:0%
built-in integrated Visual Studio code
terminal<00:06:27.599> lately<00:06:28.080> we've<00:06:28.280> been<00:06:28.400> doing<00:06:28.599> a<00:06:28.720> lot
00:06:28.830 --> 00:06:28.840 align:start position:0%
terminal lately we've been doing a lot
00:06:28.840 --> 00:06:31.270 align:start position:0%
terminal lately we've been doing a lot
of<00:06:28.960> next<00:06:29.199> year<00:06:29.560> yes<00:06:30.000> so<00:06:30.360> I'm<00:06:30.560> quite<00:06:30.759> excited<00:06:31.120> to
00:06:31.270 --> 00:06:31.280 align:start position:0%
of next year yes so I'm quite excited to
00:06:31.280 --> 00:06:33.270 align:start position:0%
of next year yes so I'm quite excited to
get<00:06:31.479> back<00:06:31.639> to<00:06:31.840> react<00:06:32.240> a<00:06:32.440> bit<00:06:32.840> we're<00:06:33.039> going<00:06:33.120> to
00:06:33.270 --> 00:06:33.280 align:start position:0%
get back to react a bit we're going to
00:06:33.280 --> 00:06:35.950 align:start position:0%
get back to react a bit we're going to
use<00:06:33.639> vit<00:06:34.440> which<00:06:34.560> is<00:06:34.720> the<00:06:35.000> fastest<00:06:35.479> way<00:06:35.599> to<00:06:35.759> set
00:06:35.950 --> 00:06:35.960 align:start position:0%
use vit which is the fastest way to set
00:06:35.960 --> 00:06:38.749 align:start position:0%
use vit which is the fastest way to set
up<00:06:36.080> our<00:06:36.280> development<00:06:36.800> environment<00:06:37.479> for<00:06:37.759> react
00:06:38.749 --> 00:06:38.759 align:start position:0%
up our development environment for react
00:06:38.759 --> 00:06:42.510 align:start position:0%
up our development environment for react
so<00:06:39.080> head<00:06:39.199> to<00:06:39.440> VJs<00:06:40.240> dodev<00:06:40.919> and<00:06:41.120> click<00:06:41.400> get
00:06:42.510 --> 00:06:42.520 align:start position:0%
so head to VJs dodev and click get
00:06:42.520 --> 00:06:44.870 align:start position:0%
so head to VJs dodev and click get
started<00:06:43.520> once<00:06:43.680> you're<00:06:43.919> here<00:06:44.240> you<00:06:44.360> can<00:06:44.520> scroll
00:06:44.870 --> 00:06:44.880 align:start position:0%
started once you're here you can scroll
00:06:44.880 --> 00:06:46.790 align:start position:0%
started once you're here you can scroll
down<00:06:45.080> a<00:06:45.199> bit<00:06:45.680> and<00:06:45.840> you<00:06:45.919> can<00:06:46.080> see<00:06:46.400> that<00:06:46.520> you<00:06:46.599> can
00:06:46.790 --> 00:06:46.800 align:start position:0%
down a bit and you can see that you can
00:06:46.800 --> 00:06:48.990 align:start position:0%
down a bit and you can see that you can
initialize<00:06:47.319> your<00:06:47.479> V<00:06:47.800> application<00:06:48.479> by<00:06:48.599> running
00:06:48.990 --> 00:06:49.000 align:start position:0%
initialize your V application by running
00:06:49.000 --> 00:06:53.029 align:start position:0%
initialize your V application by running
mpm<00:06:49.599> create<00:06:50.280> V<00:06:50.759> at<00:06:51.120> latest<00:06:52.120> so<00:06:52.560> paste<00:06:52.880> that
00:06:53.029 --> 00:06:53.039 align:start position:0%
mpm create V at latest so paste that
00:06:53.039 --> 00:06:56.150 align:start position:0%
mpm create V at latest so paste that
Command<00:06:53.520> right<00:06:53.759> here<00:06:54.440> add<00:06:54.720> a<00:06:55.360> slash<00:06:55.759> to<00:06:55.919> create
00:06:56.150 --> 00:06:56.160 align:start position:0%
Command right here add a slash to create
00:06:56.160 --> 00:06:58.110 align:start position:0%
Command right here add a slash to create
it<00:06:56.319> in<00:06:56.440> the<00:06:56.560> current<00:06:56.919> snapgram<00:06:57.560> repository
00:06:58.110 --> 00:06:58.120 align:start position:0%
it in the current snapgram repository
00:06:58.120 --> 00:06:59.909 align:start position:0%
it in the current snapgram repository
we're<00:06:58.360> in<00:06:58.879> and<00:06:59.039> press
00:06:59.909 --> 00:06:59.919 align:start position:0%
we're in and press
00:06:59.919 --> 00:07:02.110 align:start position:0%
we're in and press
enter<00:07:00.919> this<00:07:01.039> is<00:07:01.199> going<00:07:01.360> to<00:07:01.560> ask<00:07:01.759> you<00:07:01.960> whether
00:07:02.110 --> 00:07:02.120 align:start position:0%
enter this is going to ask you whether
00:07:02.120 --> 00:07:03.830 align:start position:0%
enter this is going to ask you whether
you<00:07:02.240> want<00:07:02.400> to<00:07:02.560> install<00:07:02.919> the<00:07:03.080> create<00:07:03.400> feed
00:07:03.830 --> 00:07:03.840 align:start position:0%
you want to install the create feed
00:07:03.840 --> 00:07:06.070 align:start position:0%
you want to install the create feed
package<00:07:04.479> to<00:07:04.720> which<00:07:04.840> you're<00:07:04.960> going<00:07:05.080> to<00:07:05.240> say<00:07:05.680> why
00:07:06.070 --> 00:07:06.080 align:start position:0%
package to which you're going to say why
00:07:06.080 --> 00:07:08.510 align:start position:0%
package to which you're going to say why
or<00:07:06.400> yes<00:07:07.280> and<00:07:07.440> then<00:07:07.560> you<00:07:07.639> can<00:07:07.800> choose<00:07:08.280> which
00:07:08.510 --> 00:07:08.520 align:start position:0%
or yes and then you can choose which
00:07:08.520 --> 00:07:10.430 align:start position:0%
or yes and then you can choose which
type<00:07:08.720> of<00:07:08.879> application<00:07:09.280> you<00:07:09.400> want<00:07:09.520> to<00:07:09.680> run<00:07:10.280> in
00:07:10.430 --> 00:07:10.440 align:start position:0%
type of application you want to run in
00:07:10.440 --> 00:07:13.110 align:start position:0%
type of application you want to run in
this<00:07:10.639> case<00:07:10.840> we're<00:07:11.000> going<00:07:11.080> to<00:07:11.240> choose<00:07:11.960> react<00:07:12.960> we
00:07:13.110 --> 00:07:13.120 align:start position:0%
this case we're going to choose react we
00:07:13.120 --> 00:07:15.070 align:start position:0%
this case we're going to choose react we
will<00:07:13.360> use<00:07:13.639> typescript<00:07:14.280> so<00:07:14.400> you<00:07:14.479> can<00:07:14.680> press
00:07:15.070 --> 00:07:15.080 align:start position:0%
will use typescript so you can press
00:07:15.080 --> 00:07:17.990 align:start position:0%
will use typescript so you can press
enter<00:07:16.080> and<00:07:16.360> that's<00:07:16.560> it<00:07:17.039> you<00:07:17.160> can<00:07:17.319> run<00:07:17.560> mpm
00:07:17.990 --> 00:07:18.000 align:start position:0%
enter and that's it you can run mpm
00:07:18.000 --> 00:07:20.070 align:start position:0%
enter and that's it you can run mpm
install<00:07:18.599> to<00:07:18.840> install<00:07:19.240> all<00:07:19.400> the<00:07:19.599> necessary
00:07:20.070 --> 00:07:20.080 align:start position:0%
install to install all the necessary
00:07:20.080 --> 00:07:23.029 align:start position:0%
install to install all the necessary
dependencies<00:07:21.080> and<00:07:21.199> then<00:07:21.400> mpm<00:07:21.840> runev<00:07:22.520> to<00:07:22.720> see
00:07:23.029 --> 00:07:23.039 align:start position:0%
dependencies and then mpm runev to see
00:07:23.039 --> 00:07:25.589 align:start position:0%
dependencies and then mpm runev to see
it<00:07:23.199> in<00:07:23.360> our<00:07:23.960> browser<00:07:24.960> the<00:07:25.080> installation
00:07:25.589 --> 00:07:25.599 align:start position:0%
it in our browser the installation
00:07:25.599 --> 00:07:27.510 align:start position:0%
it in our browser the installation
usually<00:07:25.960> takes<00:07:26.240> just<00:07:26.360> a<00:07:26.520> couple<00:07:26.720> of<00:07:26.919> seconds
00:07:27.510 --> 00:07:27.520 align:start position:0%
usually takes just a couple of seconds
00:07:27.520 --> 00:07:29.390 align:start position:0%
usually takes just a couple of seconds
so<00:07:27.840> let's<00:07:28.080> wait<00:07:28.280> for<00:07:28.440> it<00:07:28.680> and<00:07:28.800> then<00:07:28.919> we'll<00:07:29.080> be
00:07:29.390 --> 00:07:29.400 align:start position:0%
so let's wait for it and then we'll be
00:07:29.400 --> 00:07:32.070 align:start position:0%
so let's wait for it and then we'll be
able<00:07:29.560> to<00:07:29.680> run<00:07:29.879> the<00:07:30.080> app<00:07:31.039> once<00:07:31.240> it<00:07:31.400> is<00:07:31.560> done
00:07:32.070 --> 00:07:32.080 align:start position:0%
able to run the app once it is done
00:07:32.080 --> 00:07:35.430 align:start position:0%
able to run the app once it is done
press<00:07:32.360> mpm<00:07:33.240> run<00:07:33.800> Dev<00:07:34.639> this<00:07:34.759> is<00:07:34.879> going<00:07:35.039> to<00:07:35.199> spin
00:07:35.430 --> 00:07:35.440 align:start position:0%
press mpm run Dev this is going to spin
00:07:35.440 --> 00:07:38.029 align:start position:0%
press mpm run Dev this is going to spin
up<00:07:35.560> our<00:07:35.759> application<00:07:36.400> on<00:07:36.639> Local<00:07:37.039> Host
00:07:38.029 --> 00:07:38.039 align:start position:0%
up our application on Local Host
00:07:38.039 --> 00:07:40.710 align:start position:0%
up our application on Local Host
5173<00:07:39.039> and<00:07:39.160> you<00:07:39.240> can<00:07:39.400> see<00:07:39.720> it<00:07:39.879> took<00:07:40.199> less<00:07:40.400> than<00:07:40.520> a
00:07:40.710 --> 00:07:40.720 align:start position:0%
5173 and you can see it took less than a
00:07:40.720 --> 00:07:43.710 align:start position:0%
5173 and you can see it took less than a
second<00:07:41.039> to<00:07:41.199> spin<00:07:41.440> it<00:07:41.599> up<00:07:42.400> so<00:07:42.639> hold<00:07:42.919> control<00:07:43.599> and
00:07:43.710 --> 00:07:43.720 align:start position:0%
second to spin it up so hold control and
00:07:43.720 --> 00:07:46.270 align:start position:0%
second to spin it up so hold control and
then<00:07:43.919> click<00:07:44.199> right<00:07:44.400> here<00:07:44.680> to<00:07:44.879> open<00:07:45.080> it<00:07:45.199> up<00:07:46.120> once
00:07:46.270 --> 00:07:46.280 align:start position:0%
then click right here to open it up once
00:07:46.280 --> 00:07:49.110 align:start position:0%
then click right here to open it up once
you<00:07:46.440> do<00:07:46.639> that<00:07:46.919> you'll<00:07:47.120> see<00:07:47.400> a<00:07:47.639> simple<00:07:48.240> V<00:07:48.680> and
00:07:49.110 --> 00:07:49.120 align:start position:0%
you do that you'll see a simple V and
00:07:49.120 --> 00:07:51.790 align:start position:0%
you do that you'll see a simple V and
react<00:07:49.960> starter<00:07:50.960> this<00:07:51.080> means<00:07:51.360> that<00:07:51.520> we<00:07:51.639> are
00:07:51.790 --> 00:07:51.800 align:start position:0%
react starter this means that we are
00:07:51.800 --> 00:07:53.670 align:start position:0%
react starter this means that we are
ready<00:07:52.199> to<00:07:52.400> get<00:07:52.560> started<00:07:52.960> with<00:07:53.120> creating<00:07:53.520> the
00:07:53.670 --> 00:07:53.680 align:start position:0%
ready to get started with creating the
00:07:53.680 --> 00:07:56.430 align:start position:0%
ready to get started with creating the
base<00:07:54.159> file<00:07:54.479> and<00:07:54.639> folder<00:07:55.039> structure<00:07:55.599> of<00:07:55.720> our
00:07:56.430 --> 00:07:56.440 align:start position:0%
base file and folder structure of our
00:07:56.440 --> 00:07:58.309 align:start position:0%
base file and folder structure of our
application<00:07:57.440> so<00:07:57.680> let's<00:07:57.840> start<00:07:58.080> from
00:07:58.309 --> 00:07:58.319 align:start position:0%
application so let's start from
00:07:58.319 --> 00:08:01.589 align:start position:0%
application so let's start from
beginning<00:07:59.479> here<00:07:59.800> we<00:08:00.000> have<00:08:00.240> our<00:08:00.520> source<00:08:01.240> inside
00:08:01.589 --> 00:08:01.599 align:start position:0%
beginning here we have our source inside
00:08:01.599 --> 00:08:04.189 align:start position:0%
beginning here we have our source inside
of<00:08:01.800> which<00:08:02.039> our<00:08:02.280> entire<00:08:02.720> application<00:08:03.240> will<00:08:03.440> be
00:08:04.189 --> 00:08:04.199 align:start position:0%
of which our entire application will be
00:08:04.199 --> 00:08:06.070 align:start position:0%
of which our entire application will be
here<00:08:04.360> we<00:08:04.520> have<00:08:04.800> assets<00:08:05.360> which<00:08:05.479> we<00:08:05.599> can<00:08:05.720> move<00:08:05.919> to
00:08:06.070 --> 00:08:06.080 align:start position:0%
here we have assets which we can move to
00:08:06.080 --> 00:08:08.149 align:start position:0%
here we have assets which we can move to
the<00:08:06.240> public<00:08:06.520> folder<00:08:07.039> just<00:08:07.280> to<00:08:07.440> clean<00:08:07.680> up<00:08:08.039> what
00:08:08.149 --> 00:08:08.159 align:start position:0%
the public folder just to clean up what
00:08:08.159 --> 00:08:10.149 align:start position:0%
the public folder just to clean up what
we<00:08:08.360> have<00:08:08.520> in<00:08:08.680> the<00:08:08.840> source<00:08:09.720> we're<00:08:09.879> going<00:08:10.000> to
00:08:10.149 --> 00:08:10.159 align:start position:0%
we have in the source we're going to
00:08:10.159 --> 00:08:12.589 align:start position:0%
we have in the source we're going to
have<00:08:10.400> a<00:08:10.599> couple<00:08:10.840> of<00:08:11.000> different<00:08:11.280> CSS<00:08:11.840> files<00:08:12.440> but
00:08:12.589 --> 00:08:12.599 align:start position:0%
have a couple of different CSS files but
00:08:12.599 --> 00:08:15.469 align:start position:0%
have a couple of different CSS files but
for<00:08:12.840> now<00:08:13.240> I<00:08:13.319> want<00:08:13.520> you<00:08:13.720> to<00:08:14.199> delete<00:08:14.919> everything
00:08:15.469 --> 00:08:15.479 align:start position:0%
for now I want you to delete everything
00:08:15.479 --> 00:08:17.390 align:start position:0%
for now I want you to delete everything
that's<00:08:15.680> inside<00:08:15.960> of<00:08:16.080> the<00:08:16.240> source<00:08:17.000> as<00:08:17.080> a<00:08:17.199> matter
00:08:17.390 --> 00:08:17.400 align:start position:0%
that's inside of the source as a matter
00:08:17.400 --> 00:08:19.390 align:start position:0%
that's inside of the source as a matter
of<00:08:17.520> fact<00:08:17.720> let's<00:08:17.919> delete<00:08:18.280> the<00:08:18.360> entire<00:08:18.720> Source
00:08:19.390 --> 00:08:19.400 align:start position:0%
of fact let's delete the entire Source
00:08:19.400 --> 00:08:21.749 align:start position:0%
of fact let's delete the entire Source
itself<00:08:20.400> because<00:08:20.639> we're<00:08:20.800> going<00:08:20.919> to<00:08:21.199> recreate
00:08:21.749 --> 00:08:21.759 align:start position:0%
itself because we're going to recreate
00:08:21.759 --> 00:08:24.589 align:start position:0%
itself because we're going to recreate
it<00:08:22.159> immediately<00:08:22.800> after<00:08:23.560> so<00:08:23.840> create<00:08:24.159> a<00:08:24.360> new
00:08:24.589 --> 00:08:24.599 align:start position:0%
it immediately after so create a new
00:08:24.599 --> 00:08:27.070 align:start position:0%
it immediately after so create a new
source<00:08:24.960> folder<00:08:25.560> so<00:08:25.759> we<00:08:25.840> can<00:08:26.039> start<00:08:26.520> from
00:08:27.070 --> 00:08:27.080 align:start position:0%
source folder so we can start from
00:08:27.080 --> 00:08:29.589 align:start position:0%
source folder so we can start from
scratch<00:08:28.080> and<00:08:28.280> the<00:08:28.400> main<00:08:28.639> point<00:08:28.840> of<00:08:29.000> cont<00:08:29.479> we
00:08:29.589 --> 00:08:29.599 align:start position:0%
scratch and the main point of cont we
00:08:29.599 --> 00:08:34.269 align:start position:0%
scratch and the main point of cont we
need<00:08:29.840> here<00:08:30.280> is<00:08:30.440> a<00:08:30.720> file<00:08:31.159> called<00:08:32.039> main.<00:08:33.279> TSX
00:08:34.269 --> 00:08:34.279 align:start position:0%
need here is a file called main. TSX
00:08:34.279 --> 00:08:35.589 align:start position:0%
need here is a file called main. TSX
this<00:08:34.399> is<00:08:34.560> the<00:08:34.719> starting<00:08:35.080> point<00:08:35.320> of<00:08:35.440> our
00:08:35.589 --> 00:08:35.599 align:start position:0%
this is the starting point of our
00:08:35.599 --> 00:08:39.509 align:start position:0%
this is the starting point of our
application<00:08:36.519> where<00:08:36.800> we<00:08:36.919> can<00:08:37.240> import<00:08:38.519> react
00:08:39.509 --> 00:08:39.519 align:start position:0%
application where we can import react
00:08:39.519 --> 00:08:43.110 align:start position:0%
application where we can import react
from<00:08:40.519> react<00:08:41.519> and<00:08:41.839> the<00:08:42.000> only<00:08:42.440> file<00:08:42.880> where<00:08:43.000> we're
00:08:43.110 --> 00:08:43.120 align:start position:0%
from react and the only file where we're
00:08:43.120 --> 00:08:45.790 align:start position:0%
from react and the only file where we're
going<00:08:43.200> to<00:08:43.399> import<00:08:43.880> react<00:08:44.320> Dom<00:08:44.839> from<00:08:45.080> react<00:08:45.519> Dom
00:08:45.790 --> 00:08:45.800 align:start position:0%
going to import react Dom from react Dom
00:08:45.800 --> 00:08:48.350 align:start position:0%
going to import react Dom from react Dom
as<00:08:45.959> well<00:08:46.839> once<00:08:47.040> you've<00:08:47.240> imported<00:08:47.680> it<00:08:48.080> you<00:08:48.200> can
00:08:48.350 --> 00:08:48.360 align:start position:0%
as well once you've imported it you can
00:08:48.360 --> 00:08:49.829 align:start position:0%
as well once you've imported it you can
say<00:08:48.720> react
00:08:49.829 --> 00:08:49.839 align:start position:0%
say react
00:08:49.839 --> 00:08:53.430 align:start position:0%
say react
dom.<00:08:50.839> create<00:08:51.560> root<00:08:52.360> this<00:08:52.480> is<00:08:52.600> the<00:08:52.760> root<00:08:53.040> or<00:08:53.240> the
00:08:53.430 --> 00:08:53.440 align:start position:0%
dom. create root this is the root or the
00:08:53.440 --> 00:08:55.430 align:start position:0%
dom. create root this is the root or the
starting<00:08:53.760> point<00:08:54.000> of<00:08:54.120> our<00:08:54.279> application<00:08:55.120> so<00:08:55.279> we
00:08:55.430 --> 00:08:55.440 align:start position:0%
starting point of our application so we
00:08:55.440 --> 00:08:57.310 align:start position:0%
starting point of our application so we
have<00:08:55.519> to<00:08:55.720> Target<00:08:56.080> our<00:08:56.279> root<00:08:56.800> by<00:08:56.920> saying
00:08:57.310 --> 00:08:57.320 align:start position:0%
have to Target our root by saying
00:08:57.320 --> 00:08:59.750 align:start position:0%
have to Target our root by saying
document.<00:08:58.279> getet<00:08:58.560> element
00:08:59.750 --> 00:08:59.760 align:start position:0%
document. getet element
00:08:59.760 --> 00:09:04.150 align:start position:0%
document. getet element
by<00:09:00.200> ID<00:09:01.000> and<00:09:01.160> we<00:09:01.399> pass<00:09:01.680> a<00:09:01.839> string<00:09:02.279> of<00:09:02.959> root<00:09:03.959> and
00:09:04.150 --> 00:09:04.160 align:start position:0%
by ID and we pass a string of root and
00:09:04.160 --> 00:09:07.590 align:start position:0%
by ID and we pass a string of root and
then<00:09:04.440> you<00:09:04.600> say.<00:09:05.600> render<00:09:06.600> and<00:09:06.800> inside<00:09:07.079> of<00:09:07.320> here
00:09:07.590 --> 00:09:07.600 align:start position:0%
then you say. render and inside of here
00:09:07.600 --> 00:09:09.910 align:start position:0%
then you say. render and inside of here
we<00:09:07.720> can<00:09:07.880> render<00:09:08.320> a<00:09:08.519> self-closing<00:09:09.519> app
00:09:09.910 --> 00:09:09.920 align:start position:0%
we can render a self-closing app
00:09:09.920 --> 00:09:12.710 align:start position:0%
we can render a self-closing app
component<00:09:10.920> of<00:09:11.079> course<00:09:11.440> this<00:09:11.720> app<00:09:12.079> has<00:09:12.200> to<00:09:12.399> be
00:09:12.710 --> 00:09:12.720 align:start position:0%
component of course this app has to be
00:09:12.720 --> 00:09:14.670 align:start position:0%
component of course this app has to be
created<00:09:13.120> and<00:09:13.320> imported<00:09:13.760> from<00:09:13.920> somewhere<00:09:14.480> so
00:09:14.670 --> 00:09:14.680 align:start position:0%
created and imported from somewhere so
00:09:14.680 --> 00:09:19.269 align:start position:0%
created and imported from somewhere so
let's<00:09:14.880> create<00:09:15.240> a<00:09:15.440> new<00:09:16.000> app.<00:09:16.640> TSX<00:09:18.040> page<00:09:19.040> this<00:09:19.160> is
00:09:19.269 --> 00:09:19.279 align:start position:0%
let's create a new app. TSX page this is
00:09:19.279 --> 00:09:21.870 align:start position:0%
let's create a new app. TSX page this is
going<00:09:19.480> to<00:09:19.600> be<00:09:19.760> our<00:09:20.040> primary<00:09:20.440> router<00:09:20.920> component
00:09:21.870 --> 00:09:21.880 align:start position:0%
going to be our primary router component
00:09:21.880 --> 00:09:24.790 align:start position:0%
going to be our primary router component
so<00:09:22.160> inside<00:09:22.519> of<00:09:22.720> there<00:09:23.160> run<00:09:23.600> ra
00:09:24.790 --> 00:09:24.800 align:start position:0%
so inside of there run ra
00:09:24.800 --> 00:09:28.030 align:start position:0%
so inside of there run ra
Ace<00:09:25.800> this<00:09:25.920> is<00:09:26.160> a<00:09:26.360> shortcut<00:09:26.880> to<00:09:27.079> create<00:09:27.399> a<00:09:27.600> react
00:09:28.030 --> 00:09:28.040 align:start position:0%
Ace this is a shortcut to create a react
00:09:28.040 --> 00:09:30.269 align:start position:0%
Ace this is a shortcut to create a react
Arrow<00:09:28.399> function<00:09:28.760> component
00:09:30.269 --> 00:09:30.279 align:start position:0%
Arrow function component
00:09:30.279 --> 00:09:32.110 align:start position:0%
Arrow function component
if<00:09:30.480> this<00:09:30.600> didn't<00:09:30.880> work<00:09:31.079> for<00:09:31.279> you<00:09:31.680> you<00:09:31.880> might
00:09:32.110 --> 00:09:32.120 align:start position:0%
if this didn't work for you you might
00:09:32.120 --> 00:09:33.990 align:start position:0%
if this didn't work for you you might
not<00:09:32.399> have<00:09:32.560> the<00:09:32.760> necessary<00:09:33.240> extension<00:09:33.640> to<00:09:33.800> do
00:09:33.990 --> 00:09:34.000 align:start position:0%
not have the necessary extension to do
00:09:34.000 --> 00:09:37.310 align:start position:0%
not have the necessary extension to do
so<00:09:34.399> so<00:09:34.600> head<00:09:34.760> to<00:09:34.959> extensions<00:09:35.720> and<00:09:35.920> type<00:09:36.320> es7
00:09:37.310 --> 00:09:37.320 align:start position:0%
so so head to extensions and type es7
00:09:37.320 --> 00:09:41.110 align:start position:0%
so so head to extensions and type es7
plus<00:09:38.120> react<00:09:38.760> Redux<00:09:39.399> react<00:09:39.800> native<00:09:40.120> Snippets
00:09:41.110 --> 00:09:41.120 align:start position:0%
plus react Redux react native Snippets
00:09:41.120 --> 00:09:42.870 align:start position:0%
plus react Redux react native Snippets
install<00:09:41.560> this<00:09:41.800> package<00:09:42.279> and<00:09:42.399> then<00:09:42.560> you'll<00:09:42.760> be
00:09:42.870 --> 00:09:42.880 align:start position:0%
install this package and then you'll be
00:09:42.880 --> 00:09:45.990 align:start position:0%
install this package and then you'll be
able<00:09:43.079> to<00:09:43.320> run<00:09:43.640> that<00:09:43.800> command<00:09:44.360> as<00:09:44.800> well<00:09:45.800> with
00:09:45.990 --> 00:09:46.000 align:start position:0%
able to run that command as well with
00:09:46.000 --> 00:09:48.750 align:start position:0%
able to run that command as well with
that<00:09:46.200> said<00:09:46.760> we<00:09:46.880> can<00:09:47.040> now<00:09:47.320> import<00:09:48.000> this<00:09:48.320> app
00:09:48.750 --> 00:09:48.760 align:start position:0%
that said we can now import this app
00:09:48.760 --> 00:09:50.750 align:start position:0%
that said we can now import this app
within<00:09:49.040> the<00:09:49.200> main<00:09:49.959> so<00:09:50.240> let's<00:09:50.440> simply
00:09:50.750 --> 00:09:50.760 align:start position:0%
within the main so let's simply
00:09:50.760 --> 00:09:53.710 align:start position:0%
within the main so let's simply
doubleclick<00:09:51.440> this<00:09:51.800> app<00:09:52.760> and<00:09:53.000> press<00:09:53.320> control
00:09:53.710 --> 00:09:53.720 align:start position:0%
doubleclick this app and press control
00:09:53.720 --> 00:09:56.030 align:start position:0%
doubleclick this app and press control
or<00:09:53.920> command<00:09:54.360> space<00:09:55.120> that's<00:09:55.320> going<00:09:55.440> to<00:09:55.680> open
00:09:56.030 --> 00:09:56.040 align:start position:0%
or command space that's going to open
00:09:56.040 --> 00:09:57.829 align:start position:0%
or command space that's going to open
this<00:09:56.240> up<00:09:56.560> which<00:09:56.680> is<00:09:56.800> going<00:09:56.959> to<00:09:57.200> allow<00:09:57.480> you<00:09:57.640> to
00:09:57.829 --> 00:09:57.839 align:start position:0%
this up which is going to allow you to
00:09:57.839 --> 00:10:00.190 align:start position:0%
this up which is going to allow you to
just<00:09:58.000> click<00:09:58.240> it<00:09:58.760> and<00:09:59.160> Auto<00:09:59.519> Import<00:10:00.040> we're
00:10:00.190 --> 00:10:00.200 align:start position:0%
just click it and Auto Import we're
00:10:00.200 --> 00:10:01.790 align:start position:0%
just click it and Auto Import we're
going<00:10:00.279> to<00:10:00.440> use<00:10:00.680> this<00:10:00.839> functionality<00:10:01.519> many
00:10:01.790 --> 00:10:01.800 align:start position:0%
going to use this functionality many
00:10:01.800 --> 00:10:03.350 align:start position:0%
going to use this functionality many
times<00:10:02.040> throughout<00:10:02.360> this<00:10:02.560> video<00:10:02.959> so<00:10:03.120> you'll
00:10:03.350 --> 00:10:03.360 align:start position:0%
times throughout this video so you'll
00:10:03.360 --> 00:10:05.829 align:start position:0%
times throughout this video so you'll
get<00:10:03.480> used<00:10:03.720> to<00:10:03.880> it<00:10:04.760> one<00:10:04.920> thing<00:10:05.079> that<00:10:05.200> I<00:10:05.320> noticed
00:10:05.829 --> 00:10:05.839 align:start position:0%
get used to it one thing that I noticed
00:10:05.839 --> 00:10:07.829 align:start position:0%
get used to it one thing that I noticed
is<00:10:06.040> that<00:10:06.240> create<00:10:06.600> root<00:10:06.920> doesn't<00:10:07.320> exist<00:10:07.640> in
00:10:07.829 --> 00:10:07.839 align:start position:0%
is that create root doesn't exist in
00:10:07.839 --> 00:10:10.350 align:start position:0%
is that create root doesn't exist in
react<00:10:08.240> Dom<00:10:08.720> and<00:10:08.839> that's<00:10:09.079> because<00:10:09.399> react<00:10:09.800> Dom
00:10:10.350 --> 00:10:10.360 align:start position:0%
react Dom and that's because react Dom
00:10:10.360 --> 00:10:12.509 align:start position:0%
react Dom and that's because react Dom
has<00:10:10.519> to<00:10:10.640> be<00:10:10.800> imported<00:10:11.320> from
00:10:12.509 --> 00:10:12.519 align:start position:0%
has to be imported from
00:10:12.519 --> 00:10:16.069 align:start position:0%
has to be imported from
react-dom<00:10:13.519> SL<00:10:14.200> client<00:10:15.200> and<00:10:15.320> then<00:10:15.560> here<00:10:15.959> this
00:10:16.069 --> 00:10:16.079 align:start position:0%
react-dom SL client and then here this
00:10:16.079 --> 00:10:18.150 align:start position:0%
react-dom SL client and then here this
is<00:10:16.279> potentially<00:10:16.720> null<00:10:17.200> so<00:10:17.320> we<00:10:17.480> have<00:10:17.600> to<00:10:17.800> also
00:10:18.150 --> 00:10:18.160 align:start position:0%
is potentially null so we have to also
00:10:18.160 --> 00:10:20.269 align:start position:0%
is potentially null so we have to also
add<00:10:18.399> an<00:10:18.560> exclamation<00:10:19.079> mark<00:10:19.399> at<00:10:19.519> the<00:10:19.640> end<00:10:20.040> so
00:10:20.269 --> 00:10:20.279 align:start position:0%
add an exclamation mark at the end so
00:10:20.279 --> 00:10:22.230 align:start position:0%
add an exclamation mark at the end so
typescript<00:10:20.760> doesn't<00:10:21.040> complain<00:10:21.839> and<00:10:22.040> no
00:10:22.230 --> 00:10:22.240 align:start position:0%
typescript doesn't complain and no
00:10:22.240 --> 00:10:25.430 align:start position:0%
typescript doesn't complain and no
longer<00:10:22.560> are<00:10:22.880> react<00:10:23.360> Imports<00:10:24.200> necessary<00:10:25.200> so
00:10:25.430 --> 00:10:25.440 align:start position:0%
longer are react Imports necessary so
00:10:25.440 --> 00:10:27.550 align:start position:0%
longer are react Imports necessary so
with<00:10:25.640> that<00:10:25.920> we<00:10:26.079> have<00:10:26.240> our<00:10:26.440> main<00:10:26.959> and<00:10:27.120> we<00:10:27.320> have
00:10:27.550 --> 00:10:27.560 align:start position:0%
with that we have our main and we have
00:10:27.560 --> 00:10:30.030 align:start position:0%
with that we have our main and we have
our<00:10:27.920> app<00:10:28.600> these<00:10:28.760> are<00:10:29.120> the<00:10:29.240> starting<00:10:29.560> points<00:10:29.880> of
00:10:30.030 --> 00:10:30.040 align:start position:0%
our app these are the starting points of
00:10:30.040 --> 00:10:32.949 align:start position:0%
our app these are the starting points of
our<00:10:30.399> application<00:10:31.399> if<00:10:31.480> you<00:10:31.680> go<00:10:31.959> back<00:10:32.440> and<00:10:32.680> zoom
00:10:32.949 --> 00:10:32.959 align:start position:0%
our application if you go back and zoom
00:10:32.959 --> 00:10:35.550 align:start position:0%
our application if you go back and zoom
in<00:10:33.200> really<00:10:33.440> closely<00:10:34.120> you<00:10:34.279> can<00:10:34.440> see<00:10:34.839> our<00:10:35.120> div
00:10:35.550 --> 00:10:35.560 align:start position:0%
in really closely you can see our div
00:10:35.560 --> 00:10:38.430 align:start position:0%
in really closely you can see our div
that<00:10:35.720> says<00:10:36.160> app<00:10:37.160> now<00:10:37.480> I<00:10:37.600> know<00:10:37.839> that<00:10:38.040> this<00:10:38.120> is<00:10:38.240> a
00:10:38.430 --> 00:10:38.440 align:start position:0%
that says app now I know that this is a
00:10:38.440 --> 00:10:40.310 align:start position:0%
that says app now I know that this is a
pretty<00:10:38.680> simple<00:10:39.040> start<00:10:39.800> and<00:10:39.959> you<00:10:40.120> might
00:10:40.310 --> 00:10:40.320 align:start position:0%
pretty simple start and you might
00:10:40.320 --> 00:10:42.910 align:start position:0%
pretty simple start and you might
already<00:10:40.600> know<00:10:40.880> how<00:10:40.959> to<00:10:41.120> set<00:10:41.360> all<00:10:41.480> of<00:10:41.600> this<00:10:41.920> up
00:10:42.910 --> 00:10:42.920 align:start position:0%
already know how to set all of this up
00:10:42.920 --> 00:10:44.829 align:start position:0%
already know how to set all of this up
but<00:10:43.240> let<00:10:43.360> me<00:10:43.560> just<00:10:43.760> remind<00:10:44.120> you<00:10:44.480> that<00:10:44.720> what
00:10:44.829 --> 00:10:44.839 align:start position:0%
but let me just remind you that what
00:10:44.839 --> 00:10:47.230 align:start position:0%
but let me just remind you that what
you're<00:10:45.120> about<00:10:45.360> to<00:10:45.519> build<00:10:45.839> today<00:10:46.519> is
00:10:47.230 --> 00:10:47.240 align:start position:0%
you're about to build today is
00:10:47.240 --> 00:10:49.350 align:start position:0%
you're about to build today is
extraordinary<00:10:48.240> it's<00:10:48.600> not<00:10:48.920> something<00:10:49.200> you've
00:10:49.350 --> 00:10:49.360 align:start position:0%
extraordinary it's not something you've
00:10:49.360 --> 00:10:51.470 align:start position:0%
extraordinary it's not something you've
built<00:10:49.639> so<00:10:49.839> far<00:10:50.320> we're<00:10:50.480> going<00:10:50.600> to<00:10:50.720> use<00:10:50.959> the<00:10:51.200> best
00:10:51.470 --> 00:10:51.480 align:start position:0%
built so far we're going to use the best
00:10:51.480 --> 00:10:54.590 align:start position:0%
built so far we're going to use the best
Technologies<00:10:52.079> today<00:10:52.760> to<00:10:53.079> create<00:10:53.399> a<00:10:53.639> complete
00:10:54.590 --> 00:10:54.600 align:start position:0%
Technologies today to create a complete
00:10:54.600 --> 00:10:57.269 align:start position:0%
Technologies today to create a complete
comprehensive<00:10:55.600> Instagram<00:10:56.360> clone<00:10:57.040> with
00:10:57.269 --> 00:10:57.279 align:start position:0%
comprehensive Instagram clone with
00:10:57.279 --> 00:10:59.670 align:start position:0%
comprehensive Instagram clone with
liking<00:10:58.000> saving<00:10:58.680> top<00:10:59.120> creators
00:10:59.670 --> 00:10:59.680 align:start position:0%
liking saving top creators
00:10:59.680 --> 00:11:02.470 align:start position:0%
liking saving top creators
functionalities<00:11:00.680> and<00:11:01.120> much<00:11:01.399> more<00:11:02.000> so<00:11:02.240> just
00:11:02.470 --> 00:11:02.480 align:start position:0%
functionalities and much more so just
00:11:02.480 --> 00:11:05.150 align:start position:0%
functionalities and much more so just
keep<00:11:02.800> watching<00:11:03.480> and<00:11:03.760> step<00:11:04.040> by<00:11:04.240> step<00:11:04.639> we'll<00:11:04.920> get
00:11:05.150 --> 00:11:05.160 align:start position:0%
keep watching and step by step we'll get
00:11:05.160 --> 00:11:06.870 align:start position:0%
keep watching and step by step we'll get
there<00:11:05.440> and<00:11:05.560> you'll<00:11:05.760> know<00:11:06.079> how<00:11:06.200> to<00:11:06.399> create<00:11:06.680> this
00:11:06.870 --> 00:11:06.880 align:start position:0%
there and you'll know how to create this
00:11:06.880 --> 00:11:08.310 align:start position:0%
there and you'll know how to create this
application<00:11:07.440> from
00:11:08.310 --> 00:11:08.320 align:start position:0%
application from
00:11:08.320 --> 00:11:11.069 align:start position:0%
application from
scratch<00:11:09.320> now<00:11:09.519> that<00:11:09.680> we<00:11:09.839> have<00:11:10.000> the<00:11:10.200> app<00:11:10.600> we<00:11:10.760> also
00:11:11.069 --> 00:11:11.079 align:start position:0%
scratch now that we have the app we also
00:11:11.079 --> 00:11:13.670 align:start position:0%
scratch now that we have the app we also
have<00:11:11.200> to<00:11:11.440> have<00:11:11.639> some<00:11:11.920> basic<00:11:12.279> styles<00:11:13.160> for<00:11:13.440> that
00:11:13.670 --> 00:11:13.680 align:start position:0%
have to have some basic styles for that
00:11:13.680 --> 00:11:15.670 align:start position:0%
have to have some basic styles for that
we're<00:11:13.800> going<00:11:13.920> to<00:11:14.040> create<00:11:14.320> a<00:11:14.480> new<00:11:14.720> file<00:11:15.160> called
00:11:15.670 --> 00:11:15.680 align:start position:0%
we're going to create a new file called
00:11:15.680 --> 00:11:19.150 align:start position:0%
we're going to create a new file called
global.<00:11:16.920> CSS<00:11:17.920> keep<00:11:18.079> in<00:11:18.240> mind<00:11:18.560> that<00:11:18.760> all<00:11:19.040> the
00:11:19.150 --> 00:11:19.160 align:start position:0%
global. CSS keep in mind that all the
00:11:19.160 --> 00:11:20.629 align:start position:0%
global. CSS keep in mind that all the
Tailwind<00:11:19.639> styling<00:11:20.040> that<00:11:20.160> we'll<00:11:20.320> be<00:11:20.440> doing
00:11:20.629 --> 00:11:20.639 align:start position:0%
Tailwind styling that we'll be doing
00:11:20.639 --> 00:11:22.990 align:start position:0%
Tailwind styling that we'll be doing
through<00:11:20.880> this<00:11:21.079> video<00:11:21.600> will<00:11:21.800> be<00:11:21.959> done<00:11:22.240> by<00:11:22.480> you
00:11:22.990 --> 00:11:23.000 align:start position:0%
through this video will be done by you
00:11:23.000 --> 00:11:25.590 align:start position:0%
through this video will be done by you
directly<00:11:23.519> within<00:11:24.000> components<00:11:25.000> but<00:11:25.279> we<00:11:25.440> have
00:11:25.590 --> 00:11:25.600 align:start position:0%
directly within components but we have
00:11:25.600 --> 00:11:27.590 align:start position:0%
directly within components but we have
to<00:11:25.760> have<00:11:25.920> some<00:11:26.120> helper<00:11:26.560> classes<00:11:27.000> here<00:11:27.279> to<00:11:27.440> make
00:11:27.590 --> 00:11:27.600 align:start position:0%
to have some helper classes here to make
00:11:27.600 --> 00:11:29.829 align:start position:0%
to have some helper classes here to make
her<00:11:27.839> life<00:11:28.000> a<00:11:28.120> bit<00:11:28.320> easier<00:11:29.240> so<00:11:29.519> in<00:11:29.680> the
00:11:29.829 --> 00:11:29.839 align:start position:0%
her life a bit easier so in the
00:11:29.839 --> 00:11:31.710 align:start position:0%
her life a bit easier so in the
description<00:11:30.279> down<00:11:30.480> below<00:11:30.920> you<00:11:31.040> can<00:11:31.240> find<00:11:31.519> a
00:11:31.710 --> 00:11:31.720 align:start position:0%
description down below you can find a
00:11:31.720 --> 00:11:34.150 align:start position:0%
description down below you can find a
GitHub<00:11:32.120> gist<00:11:32.600> that<00:11:32.760> contains<00:11:33.240> a<00:11:33.399> global<00:11:33.880> stat
00:11:34.150 --> 00:11:34.160 align:start position:0%
GitHub gist that contains a global stat
00:11:34.160 --> 00:11:37.629 align:start position:0%
GitHub gist that contains a global stat
CSS<00:11:34.680> file<00:11:35.560> copy<00:11:35.839> it<00:11:36.279> and<00:11:36.480> paste<00:11:36.720> it<00:11:36.880> here
00:11:37.629 --> 00:11:37.639 align:start position:0%
CSS file copy it and paste it here
00:11:37.639 --> 00:11:39.509 align:start position:0%
CSS file copy it and paste it here
you're<00:11:37.800> going<00:11:37.880> to<00:11:38.040> notice<00:11:38.440> that<00:11:38.720> here<00:11:39.120> we<00:11:39.320> have
00:11:39.509 --> 00:11:39.519 align:start position:0%
you're going to notice that here we have
00:11:39.519 --> 00:11:42.030 align:start position:0%
you're going to notice that here we have
some<00:11:39.760> helper<00:11:40.240> functions<00:11:40.800> for<00:11:41.040> the<00:11:41.240> top<00:11:41.519> bar
00:11:42.030 --> 00:11:42.040 align:start position:0%
some helper functions for the top bar
00:11:42.040 --> 00:11:45.150 align:start position:0%
some helper functions for the top bar
for<00:11:42.360> postcard<00:11:43.000> image<00:11:43.480> and<00:11:43.639> so<00:11:43.839> on<00:11:44.440> which<00:11:44.680> apply
00:11:45.150 --> 00:11:45.160 align:start position:0%
for postcard image and so on which apply
00:11:45.160 --> 00:11:48.069 align:start position:0%
for postcard image and so on which apply
multiple<00:11:45.680> Tailwind<00:11:46.120> CSS<00:11:46.639> classes<00:11:47.560> so<00:11:47.800> if<00:11:47.920> at
00:11:48.069 --> 00:11:48.079 align:start position:0%
multiple Tailwind CSS classes so if at
00:11:48.079 --> 00:11:49.629 align:start position:0%
multiple Tailwind CSS classes so if at
any<00:11:48.279> point<00:11:48.480> you<00:11:48.560> want<00:11:48.680> to<00:11:48.839> see<00:11:49.160> what<00:11:49.279> a<00:11:49.399> grid
00:11:49.629 --> 00:11:49.639 align:start position:0%
any point you want to see what a grid
00:11:49.639 --> 00:11:52.110 align:start position:0%
any point you want to see what a grid
container<00:11:50.160> is<00:11:50.920> it's<00:11:51.160> simply<00:11:51.560> a<00:11:51.760> set<00:11:51.920> of
00:11:52.110 --> 00:11:52.120 align:start position:0%
container is it's simply a set of
00:11:52.120 --> 00:11:54.430 align:start position:0%
container is it's simply a set of
utility<00:11:52.600> classes<00:11:53.320> to<00:11:53.680> make<00:11:53.920> that<00:11:54.120> grid
00:11:54.430 --> 00:11:54.440 align:start position:0%
utility classes to make that grid
00:11:54.440 --> 00:11:57.389 align:start position:0%
utility classes to make that grid
container<00:11:55.160> possible<00:11:56.160> so<00:11:56.560> with<00:11:56.760> that<00:11:56.959> said<00:11:57.279> we
00:11:57.389 --> 00:11:57.399 align:start position:0%
container possible so with that said we
00:11:57.399 --> 00:12:00.550 align:start position:0%
container possible so with that said we
can<00:11:57.639> import<00:11:58.160> the<00:11:58.279> global.<00:11:59.000> CSS<00:11:59.959> right<00:12:00.279> within
00:12:00.550 --> 00:12:00.560 align:start position:0%
can import the global. CSS right within
00:12:00.560 --> 00:12:02.829 align:start position:0%
can import the global. CSS right within
the<00:12:00.800> app<00:12:01.320> by<00:12:01.480> saying
00:12:02.829 --> 00:12:02.839 align:start position:0%
the app by saying
00:12:02.839 --> 00:12:07.269 align:start position:0%
the app by saying
import.<00:12:03.839> global.<00:12:04.839> CSS<00:12:05.839> but<00:12:06.079> hey<00:12:06.440> this<00:12:06.600> global.
00:12:07.269 --> 00:12:07.279 align:start position:0%
import. global. CSS but hey this global.
00:12:07.279 --> 00:12:10.069 align:start position:0%
import. global. CSS but hey this global.
CSS<00:12:07.760> file<00:12:08.120> is<00:12:08.279> using<00:12:08.600> Tailwind<00:12:09.480> so<00:12:09.760> let's<00:12:09.959> go
00:12:10.069 --> 00:12:10.079 align:start position:0%
CSS file is using Tailwind so let's go
00:12:10.079 --> 00:12:12.590 align:start position:0%
CSS file is using Tailwind so let's go
ahead<00:12:10.440> and<00:12:10.639> let's<00:12:10.800> set<00:12:11.000> up<00:12:11.320> tailwind<00:12:12.320> and<00:12:12.519> if
00:12:12.590 --> 00:12:12.600 align:start position:0%
ahead and let's set up tailwind and if
00:12:12.600 --> 00:12:14.590 align:start position:0%
ahead and let's set up tailwind and if
you<00:12:12.720> haven't<00:12:12.959> heard<00:12:13.160> of<00:12:13.279> Tailwind<00:12:14.040> Tailwind
00:12:14.590 --> 00:12:14.600 align:start position:0%
you haven't heard of Tailwind Tailwind
00:12:14.600 --> 00:12:17.509 align:start position:0%
you haven't heard of Tailwind Tailwind
is<00:12:14.720> a<00:12:15.000> phenomenal<00:12:15.920> utility<00:12:16.480> first<00:12:17.000> CSS
00:12:17.509 --> 00:12:17.519 align:start position:0%
is a phenomenal utility first CSS
00:12:17.519 --> 00:12:20.230 align:start position:0%
is a phenomenal utility first CSS
framework<00:12:18.360> pack<00:12:18.680> with<00:12:18.880> utility<00:12:19.360> classes<00:12:20.000> to
00:12:20.230 --> 00:12:20.240 align:start position:0%
framework pack with utility classes to
00:12:20.240 --> 00:12:22.710 align:start position:0%
framework pack with utility classes to
make<00:12:20.480> our<00:12:20.720> styling<00:12:21.279> simpler<00:12:22.199> it<00:12:22.360> doesn't
00:12:22.710 --> 00:12:22.720 align:start position:0%
make our styling simpler it doesn't
00:12:22.720 --> 00:12:25.750 align:start position:0%
make our styling simpler it doesn't
impose<00:12:23.240> rules<00:12:23.760> like<00:12:24.000> UI<00:12:24.320> libraries<00:12:24.839> do<00:12:25.480> but
00:12:25.750 --> 00:12:25.760 align:start position:0%
impose rules like UI libraries do but
00:12:25.760 --> 00:12:27.829 align:start position:0%
impose rules like UI libraries do but
rather<00:12:26.160> it<00:12:26.279> allows<00:12:26.600> you<00:12:26.720> to<00:12:26.920> create<00:12:27.399> custom
00:12:27.829 --> 00:12:27.839 align:start position:0%
rather it allows you to create custom
00:12:27.839 --> 00:12:30.750 align:start position:0%
rather it allows you to create custom
Styles<00:12:28.519> much<00:12:28.920> more<00:12:29.120> quickly<00:12:29.959> so<00:12:30.240> let's<00:12:30.480> click
00:12:30.750 --> 00:12:30.760 align:start position:0%
Styles much more quickly so let's click
00:12:30.760 --> 00:12:33.189 align:start position:0%
Styles much more quickly so let's click
get<00:12:31.040> started<00:12:32.040> and<00:12:32.199> let's<00:12:32.399> install<00:12:32.720> Tailwind
00:12:33.189 --> 00:12:33.199 align:start position:0%
get started and let's install Tailwind
00:12:33.199 --> 00:12:36.870 align:start position:0%
get started and let's install Tailwind
CSS<00:12:34.199> but<00:12:34.360> we<00:12:34.480> can<00:12:34.680> also<00:12:34.920> search<00:12:35.279> for<00:12:35.800> V<00:12:36.560> this<00:12:36.680> is
00:12:36.870 --> 00:12:36.880 align:start position:0%
CSS but we can also search for V this is
00:12:36.880 --> 00:12:38.870 align:start position:0%
CSS but we can also search for V this is
going<00:12:37.040> to<00:12:37.160> tell<00:12:37.360> us<00:12:37.639> how<00:12:37.760> to<00:12:37.920> install<00:12:38.279> Tailwind
00:12:38.870 --> 00:12:38.880 align:start position:0%
going to tell us how to install Tailwind
00:12:38.880 --> 00:12:41.829 align:start position:0%
going to tell us how to install Tailwind
with<00:12:39.320> vit<00:12:40.320> we<00:12:40.480> first<00:12:40.760> have<00:12:40.880> to<00:12:41.040> run<00:12:41.360> mpm
00:12:41.829 --> 00:12:41.839 align:start position:0%
with vit we first have to run mpm
00:12:41.839 --> 00:12:45.030 align:start position:0%
with vit we first have to run mpm
install<00:12:42.360> DD<00:12:43.040> Tailwind<00:12:43.519> CSS<00:12:44.040> post<00:12:44.360> CSS<00:12:44.880> and
00:12:45.030 --> 00:12:45.040 align:start position:0%
install DD Tailwind CSS post CSS and
00:12:45.040 --> 00:12:47.629 align:start position:0%
install DD Tailwind CSS post CSS and
auto<00:12:45.399> prefixer<00:12:46.160> so<00:12:46.440> back<00:12:46.600> in<00:12:46.720> our<00:12:47.000> app<00:12:47.399> you<00:12:47.480> can
00:12:47.629 --> 00:12:47.639 align:start position:0%
auto prefixer so back in our app you can
00:12:47.639 --> 00:12:49.470 align:start position:0%
auto prefixer so back in our app you can
go<00:12:47.760> to<00:12:47.959> terminal<00:12:48.639> and<00:12:48.760> let's<00:12:48.959> go<00:12:49.079> ahead<00:12:49.279> and
00:12:49.470 --> 00:12:49.480 align:start position:0%
go to terminal and let's go ahead and
00:12:49.480 --> 00:12:52.629 align:start position:0%
go to terminal and let's go ahead and
open<00:12:49.720> up<00:12:49.920> a<00:12:50.120> new<00:12:50.360> terminal<00:12:51.000> window<00:12:52.000> and<00:12:52.240> within
00:12:52.629 --> 00:12:52.639 align:start position:0%
open up a new terminal window and within
00:12:52.639 --> 00:12:55.870 align:start position:0%
open up a new terminal window and within
here<00:12:53.160> simply<00:12:53.800> paste<00:12:54.120> it<00:12:54.399> and<00:12:54.600> press<00:12:54.959> enter
00:12:55.870 --> 00:12:55.880 align:start position:0%
here simply paste it and press enter
00:12:55.880 --> 00:12:57.509 align:start position:0%
here simply paste it and press enter
this<00:12:56.000> is<00:12:56.120> going<00:12:56.240> to<00:12:56.399> install<00:12:56.800> the<00:12:56.959> necessary
00:12:57.509 --> 00:12:57.519 align:start position:0%
this is going to install the necessary
00:12:57.519 --> 00:12:59.829 align:start position:0%
this is going to install the necessary
packages<00:12:58.120> for<00:12:58.320> us<00:12:58.480> to<00:12:58.600> be<00:12:58.920> able<00:12:59.120> to<00:12:59.320> style
00:12:59.829 --> 00:12:59.839 align:start position:0%
packages for us to be able to style
00:12:59.839 --> 00:13:02.870 align:start position:0%
packages for us to be able to style
using<00:13:00.600> Tailwind<00:13:01.600> once<00:13:01.880> that<00:13:02.000> is<00:13:02.160> done<00:13:02.560> you<00:13:02.680> can
00:13:02.870 --> 00:13:02.880 align:start position:0%
using Tailwind once that is done you can
00:13:02.880 --> 00:13:05.069 align:start position:0%
using Tailwind once that is done you can
also<00:13:03.199> copy<00:13:03.480> and<00:13:03.680> paste<00:13:03.920> the<00:13:04.040> next
00:13:05.069 --> 00:13:05.079 align:start position:0%
also copy and paste the next
00:13:05.079 --> 00:13:10.189 align:start position:0%
also copy and paste the next
command<00:13:06.079> MPX<00:13:06.720> Tailwind<00:13:07.120> CSS<00:13:07.760> in<00:13:08.000> it-<00:13:09.079> P<00:13:10.079> this
00:13:10.189 --> 00:13:10.199 align:start position:0%
command MPX Tailwind CSS in it- P this
00:13:10.199 --> 00:13:11.990 align:start position:0%
command MPX Tailwind CSS in it- P this
is<00:13:10.320> going<00:13:10.480> to<00:13:10.680> initialize<00:13:11.279> and<00:13:11.480> create<00:13:11.839> the
00:13:11.990 --> 00:13:12.000 align:start position:0%
is going to initialize and create the
00:13:12.000 --> 00:13:13.990 align:start position:0%
is going to initialize and create the
necessary<00:13:12.560> projects<00:13:13.160> such<00:13:13.320> as<00:13:13.440> the<00:13:13.560> Tailwind
00:13:13.990 --> 00:13:14.000 align:start position:0%
necessary projects such as the Tailwind
00:13:14.000 --> 00:13:16.750 align:start position:0%
necessary projects such as the Tailwind
config<00:13:14.560> JS<00:13:15.560> next<00:13:15.920> you<00:13:16.079> have<00:13:16.199> to<00:13:16.360> configure
00:13:16.750 --> 00:13:16.760 align:start position:0%
config JS next you have to configure
00:13:16.760 --> 00:13:19.110 align:start position:0%
config JS next you have to configure
your<00:13:16.959> template<00:13:17.440> paths<00:13:18.120> so<00:13:18.320> simply<00:13:18.639> copy<00:13:18.920> the
00:13:19.110 --> 00:13:19.120 align:start position:0%
your template paths so simply copy the
00:13:19.120 --> 00:13:21.430 align:start position:0%
your template paths so simply copy the
content<00:13:19.480> from<00:13:19.720> here<00:13:20.199> and<00:13:20.360> go<00:13:20.519> to<00:13:20.720> Tailwind<00:13:21.199> doc
00:13:21.430 --> 00:13:21.440 align:start position:0%
content from here and go to Tailwind doc
00:13:21.440 --> 00:13:24.509 align:start position:0%
content from here and go to Tailwind doc
config.js<00:13:22.320> once<00:13:23.320> you're<00:13:23.600> there<00:13:24.160> simply
00:13:24.509 --> 00:13:24.519 align:start position:0%
config.js once you're there simply
00:13:24.519 --> 00:13:27.269 align:start position:0%
config.js once you're there simply
modify<00:13:25.000> this<00:13:25.199> content<00:13:25.880> to<00:13:26.440> what<00:13:26.720> we<00:13:26.920> copied
00:13:27.269 --> 00:13:27.279 align:start position:0%
modify this content to what we copied
00:13:27.279 --> 00:13:29.750 align:start position:0%
modify this content to what we copied
from<00:13:27.399> the<00:13:27.760> documentation<00:13:28.920> finally<00:13:29.519> add
00:13:29.750 --> 00:13:29.760 align:start position:0%
from the documentation finally add
00:13:29.760 --> 00:13:31.990 align:start position:0%
from the documentation finally add
tailing<00:13:30.240> directives<00:13:30.680> to<00:13:30.800> your
00:13:31.990 --> 00:13:32.000 align:start position:0%
tailing directives to your
00:13:32.000 --> 00:13:34.069 align:start position:0%
tailing directives to your
CSS<00:13:33.000> that's<00:13:33.199> going<00:13:33.360> to<00:13:33.480> be<00:13:33.639> within<00:13:33.920> the
00:13:34.069 --> 00:13:34.079 align:start position:0%
CSS that's going to be within the
00:13:34.079 --> 00:13:36.430 align:start position:0%
CSS that's going to be within the
globals<00:13:34.959> and<00:13:35.279> we<00:13:35.399> have<00:13:35.600> already<00:13:35.920> done<00:13:36.199> that
00:13:36.430 --> 00:13:36.440 align:start position:0%
globals and we have already done that
00:13:36.440 --> 00:13:37.790 align:start position:0%
globals and we have already done that
with<00:13:36.600> our<00:13:36.800> Global
00:13:37.790 --> 00:13:37.800 align:start position:0%
with our Global
00:13:37.800 --> 00:13:40.990 align:start position:0%
with our Global
CSS<00:13:38.800> finally<00:13:39.240> run<00:13:39.480> mpm<00:13:39.920> run<00:13:40.160> Dev<00:13:40.680> and<00:13:40.800> then<00:13:40.920> you
00:13:40.990 --> 00:13:41.000 align:start position:0%
CSS finally run mpm run Dev and then you
00:13:41.000 --> 00:13:43.550 align:start position:0%
CSS finally run mpm run Dev and then you
can<00:13:41.240> style<00:13:41.600> your<00:13:41.760> hello<00:13:42.120> world<00:13:42.920> with<00:13:43.160> a<00:13:43.320> couple
00:13:43.550 --> 00:13:43.560 align:start position:0%
can style your hello world with a couple
00:13:43.560 --> 00:13:47.230 align:start position:0%
can style your hello world with a couple
of<00:13:43.760> classes<00:13:44.320> to<00:13:44.480> see<00:13:44.800> if<00:13:44.959> it<00:13:45.600> works<00:13:46.600> so<00:13:46.920> back<00:13:47.079> in
00:13:47.230 --> 00:13:47.240 align:start position:0%
of classes to see if it works so back in
00:13:47.240 --> 00:13:50.590 align:start position:0%
of classes to see if it works so back in
our<00:13:47.519> app<00:13:47.880> we<00:13:48.000> can<00:13:48.120> now<00:13:48.320> modify<00:13:48.760> the<00:13:48.959> app<00:13:49.519> to<00:13:49.760> say
00:13:50.590 --> 00:13:50.600 align:start position:0%
our app we can now modify the app to say
00:13:50.600 --> 00:13:52.430 align:start position:0%
our app we can now modify the app to say
hello
00:13:52.430 --> 00:13:52.440 align:start position:0%
hello
00:13:52.440 --> 00:13:55.910 align:start position:0%
hello
snapgram<00:13:53.440> let's<00:13:53.680> save<00:13:54.120> it<00:13:55.120> and<00:13:55.399> back<00:13:55.560> in<00:13:55.680> our
00:13:55.910 --> 00:13:55.920 align:start position:0%
snapgram let's save it and back in our
00:13:55.920 --> 00:13:58.189 align:start position:0%
snapgram let's save it and back in our
app<00:13:56.320> we<00:13:56.440> can<00:13:56.600> see<00:13:56.800> that<00:13:56.959> this<00:13:57.079> is<00:13:57.199> now<00:13:57.360> on<00:13:57.519> H1
00:13:58.189 --> 00:13:58.199 align:start position:0%
app we can see that this is now on H1
00:13:58.199 --> 00:14:00.509 align:start position:0%
app we can see that this is now on H1
but<00:13:58.320> the<00:13:58.440> styles<00:13:58.959> don't<00:13:59.160> seem<00:13:59.360> to<00:13:59.480> be<00:13:59.680> applied
00:14:00.509 --> 00:14:00.519 align:start position:0%
but the styles don't seem to be applied
00:14:00.519 --> 00:14:02.350 align:start position:0%
but the styles don't seem to be applied
if<00:14:00.680> they<00:14:00.800> were<00:14:01.079> getting<00:14:01.360> applied<00:14:01.920> we<00:14:02.040> would<00:14:02.240> be
00:14:02.350 --> 00:14:02.360 align:start position:0%
if they were getting applied we would be
00:14:02.360 --> 00:14:03.710 align:start position:0%
if they were getting applied we would be
able<00:14:02.560> to<00:14:02.680> see<00:14:02.880> the
00:14:03.710 --> 00:14:03.720 align:start position:0%
able to see the
00:14:03.720 --> 00:14:06.110 align:start position:0%
able to see the
underline<00:14:04.720> so<00:14:04.959> to<00:14:05.160> make<00:14:05.279> it<00:14:05.480> work<00:14:05.800> there<00:14:05.880> are<00:14:06.000> a
00:14:06.110 --> 00:14:06.120 align:start position:0%
underline so to make it work there are a
00:14:06.120 --> 00:14:08.629 align:start position:0%
underline so to make it work there are a
couple<00:14:06.320> of<00:14:06.440> things<00:14:06.720> we<00:14:06.800> need<00:14:06.920> to<00:14:07.160> do<00:14:08.160> alongside
00:14:08.629 --> 00:14:08.639 align:start position:0%
couple of things we need to do alongside
00:14:08.639 --> 00:14:10.829 align:start position:0%
couple of things we need to do alongside
the<00:14:08.800> globals<00:14:09.480> we<00:14:09.639> also<00:14:09.880> have<00:14:10.000> to<00:14:10.199> modify<00:14:10.639> the
00:14:10.829 --> 00:14:10.839 align:start position:0%
the globals we also have to modify the
00:14:10.839 --> 00:14:13.590 align:start position:0%
the globals we also have to modify the
Tailwind<00:14:11.399> doc<00:14:11.680> config.js<00:14:12.440> to<00:14:13.040> include<00:14:13.399> some
00:14:13.590 --> 00:14:13.600 align:start position:0%
Tailwind doc config.js to include some
00:14:13.600 --> 00:14:16.269 align:start position:0%
Tailwind doc config.js to include some
additional<00:14:14.079> theming<00:14:14.560> options<00:14:15.120> for<00:14:15.360> our<00:14:15.560> great
00:14:16.269 --> 00:14:16.279 align:start position:0%
additional theming options for our great
00:14:16.279 --> 00:14:18.509 align:start position:0%
additional theming options for our great
application<00:14:17.279> so<00:14:17.600> in<00:14:17.720> the<00:14:17.880> description<00:14:18.320> down
00:14:18.509 --> 00:14:18.519 align:start position:0%
application so in the description down
00:14:18.519 --> 00:14:20.829 align:start position:0%
application so in the description down
below<00:14:19.040> you'll<00:14:19.240> be<00:14:19.360> able<00:14:19.560> to<00:14:19.720> find<00:14:20.040> a<00:14:20.240> modified
00:14:20.829 --> 00:14:20.839 align:start position:0%
below you'll be able to find a modified
00:14:20.839 --> 00:14:23.389 align:start position:0%
below you'll be able to find a modified
Tailwind<00:14:21.440> doc<00:14:21.680> config.js<00:14:22.360> file<00:14:23.160> which<00:14:23.279> you
00:14:23.389 --> 00:14:23.399 align:start position:0%
Tailwind doc config.js file which you
00:14:23.399 --> 00:14:25.949 align:start position:0%
Tailwind doc config.js file which you
can<00:14:23.600> simply<00:14:24.079> copy<00:14:24.680> and<00:14:24.839> then<00:14:25.120> paste<00:14:25.680> right
00:14:25.949 --> 00:14:25.959 align:start position:0%
can simply copy and then paste right
00:14:25.959 --> 00:14:28.110 align:start position:0%
can simply copy and then paste right
here<00:14:26.639> it's<00:14:26.839> going<00:14:27.000> to<00:14:27.160> include<00:14:27.519> some<00:14:27.720> font
00:14:28.110 --> 00:14:28.120 align:start position:0%
here it's going to include some font
00:14:28.120 --> 00:14:31.790 align:start position:0%
here it's going to include some font
families<00:14:28.800> can<00:14:28.959> use<00:14:29.759> widths<00:14:30.440> screen<00:14:30.880> sizes<00:14:31.600> but
00:14:31.790 --> 00:14:31.800 align:start position:0%
families can use widths screen sizes but
00:14:31.800 --> 00:14:34.670 align:start position:0%
families can use widths screen sizes but
more<00:14:32.040> importantly<00:14:32.800> colors<00:14:33.680> so<00:14:34.040> every<00:14:34.279> time<00:14:34.519> we
00:14:34.670 --> 00:14:34.680 align:start position:0%
more importantly colors so every time we
00:14:34.680 --> 00:14:36.910 align:start position:0%
more importantly colors so every time we
want<00:14:34.839> to<00:14:35.040> specify<00:14:35.519> this<00:14:35.680> dark<00:14:36.000> color<00:14:36.440> we<00:14:36.720> don't
00:14:36.910 --> 00:14:36.920 align:start position:0%
want to specify this dark color we don't
00:14:36.920 --> 00:14:41.829 align:start position:0%
want to specify this dark color we don't
have<00:14:37.040> to<00:14:37.160> say<00:14:37.639> 0909<00:14:38.639> 08<00:14:39.480> we<00:14:39.639> simply<00:14:39.959> say<00:14:40.240> dark<00:14:40.839> 2
00:14:41.829 --> 00:14:41.839 align:start position:0%
have to say 0909 08 we simply say dark 2
00:14:41.839 --> 00:14:43.350 align:start position:0%
have to say 0909 08 we simply say dark 2
and<00:14:42.040> the<00:14:42.160> second<00:14:42.440> thing<00:14:42.600> we<00:14:42.759> have<00:14:42.880> to<00:14:43.000> do<00:14:43.199> to
00:14:43.350 --> 00:14:43.360 align:start position:0%
and the second thing we have to do to
00:14:43.360 --> 00:14:45.829 align:start position:0%
and the second thing we have to do to
make<00:14:43.519> it<00:14:43.720> work<00:14:44.320> is<00:14:44.880> if<00:14:44.959> you<00:14:45.079> notice<00:14:45.440> here<00:14:45.639> we're
00:14:45.829 --> 00:14:45.839 align:start position:0%
make it work is if you notice here we're
00:14:45.839 --> 00:14:47.749 align:start position:0%
make it work is if you notice here we're
importing<00:14:46.360> something<00:14:46.680> known<00:14:47.000> as<00:14:47.240> Tailwind
00:14:47.749 --> 00:14:47.759 align:start position:0%
importing something known as Tailwind
00:14:47.759 --> 00:14:51.350 align:start position:0%
importing something known as Tailwind
CSS<00:14:48.440> animate<00:14:49.399> so<00:14:49.800> copy<00:14:50.199> that<00:14:50.839> go<00:14:51.040> to<00:14:51.199> your
00:14:51.350 --> 00:14:51.360 align:start position:0%
CSS animate so copy that go to your
00:14:51.360 --> 00:14:54.030 align:start position:0%
CSS animate so copy that go to your
terminal<00:14:52.360> and<00:14:52.519> then<00:14:52.720> you<00:14:52.880> have<00:14:52.959> to<00:14:53.079> run<00:14:53.360> mpm
00:14:54.030 --> 00:14:54.040 align:start position:0%
terminal and then you have to run mpm
00:14:54.040 --> 00:14:55.550 align:start position:0%
terminal and then you have to run mpm
install
00:14:55.550 --> 00:14:55.560 align:start position:0%
install
00:14:55.560 --> 00:14:59.189 align:start position:0%
install
dasd<00:14:56.560> and<00:14:56.720> then<00:14:57.000> Tailwind<00:14:57.480> CSS<00:14:58.199> animate<00:14:59.079> this
00:14:59.189 --> 00:14:59.199 align:start position:0%
dasd and then Tailwind CSS animate this
00:14:59.199 --> 00:15:00.990 align:start position:0%
dasd and then Tailwind CSS animate this
is<00:14:59.399> that<00:14:59.639> extra<00:15:00.040> plug-in<00:15:00.519> that's<00:15:00.680> going<00:15:00.839> to
00:15:00.990 --> 00:15:01.000 align:start position:0%
is that extra plug-in that's going to
00:15:01.000 --> 00:15:03.189 align:start position:0%
is that extra plug-in that's going to
allow<00:15:01.279> us<00:15:01.399> to<00:15:01.639> play<00:15:02.040> with<00:15:02.279> just<00:15:02.440> a<00:15:02.600> bit<00:15:02.800> more
00:15:03.189 --> 00:15:03.199 align:start position:0%
allow us to play with just a bit more
00:15:03.199 --> 00:15:05.990 align:start position:0%
allow us to play with just a bit more
animations<00:15:04.199> it<00:15:04.360> quickly<00:15:04.680> got<00:15:04.880> installed<00:15:05.880> you
00:15:05.990 --> 00:15:06.000 align:start position:0%
animations it quickly got installed you
00:15:06.000 --> 00:15:08.030 align:start position:0%
animations it quickly got installed you
can<00:15:06.199> go<00:15:06.399> back<00:15:06.600> to<00:15:06.720> your<00:15:06.880> application<00:15:07.759> press
00:15:08.030 --> 00:15:08.040 align:start position:0%
can go back to your application press
00:15:08.040 --> 00:15:10.790 align:start position:0%
can go back to your application press
contrl<00:15:08.360> C<00:15:08.639> to<00:15:08.800> stop<00:15:09.040> it<00:15:09.160> from<00:15:09.560> running<00:15:10.560> and
00:15:10.790 --> 00:15:10.800 align:start position:0%
contrl C to stop it from running and
00:15:10.800 --> 00:15:12.990 align:start position:0%
contrl C to stop it from running and
finally<00:15:11.240> rerun<00:15:11.680> the<00:15:11.839> application<00:15:12.480> by<00:15:12.639> running
00:15:12.990 --> 00:15:13.000 align:start position:0%
finally rerun the application by running
00:15:13.000 --> 00:15:14.749 align:start position:0%
finally rerun the application by running
mpm<00:15:13.720> run
00:15:14.749 --> 00:15:14.759 align:start position:0%
mpm run
00:15:14.759 --> 00:15:18.030 align:start position:0%
mpm run
Dev<00:15:15.759> and<00:15:16.120> quickly<00:15:16.680> our<00:15:16.959> application<00:15:17.560> is<00:15:17.880> up
00:15:18.030 --> 00:15:18.040 align:start position:0%
Dev and quickly our application is up
00:15:18.040 --> 00:15:21.150 align:start position:0%
Dev and quickly our application is up
and<00:15:18.199> running<00:15:18.680> on<00:15:18.959> Local<00:15:19.320> Host<00:15:19.920> 5173<00:15:20.920> and<00:15:21.079> we
00:15:21.150 --> 00:15:21.160 align:start position:0%
and running on Local Host 5173 and we
00:15:21.160 --> 00:15:23.470 align:start position:0%
and running on Local Host 5173 and we
can<00:15:21.279> see<00:15:21.480> that<00:15:21.639> this<00:15:21.800> H1<00:15:22.639> is<00:15:23.000> indeed
00:15:23.470 --> 00:15:23.480 align:start position:0%
can see that this H1 is indeed
00:15:23.480 --> 00:15:25.350 align:start position:0%
can see that this H1 is indeed
underlined<00:15:24.320> which<00:15:24.440> means<00:15:24.680> that<00:15:24.800> the<00:15:24.920> Tailwind
00:15:25.350 --> 00:15:25.360 align:start position:0%
underlined which means that the Tailwind
00:15:25.360 --> 00:15:27.629 align:start position:0%
underlined which means that the Tailwind
styles<00:15:25.759> are<00:15:25.959> getting<00:15:26.279> properly<00:15:26.720> installed
00:15:27.629 --> 00:15:27.639 align:start position:0%
styles are getting properly installed
00:15:27.639 --> 00:15:29.670 align:start position:0%
styles are getting properly installed
and<00:15:27.800> we<00:15:27.920> can<00:15:28.120> also<00:15:28.319> see<00:15:28.480> the<00:15:28.759> dark<00:15:29.040> background
00:15:29.670 --> 00:15:29.680 align:start position:0%
and we can also see the dark background
00:15:29.680 --> 00:15:31.829 align:start position:0%
and we can also see the dark background
which<00:15:29.839> means<00:15:30.079> that<00:15:30.199> our<00:15:30.440> base<00:15:30.920> styles<00:15:31.560> are
00:15:31.829 --> 00:15:31.839 align:start position:0%
which means that our base styles are
00:15:31.839 --> 00:15:33.910 align:start position:0%
which means that our base styles are
getting<00:15:32.160> properly<00:15:32.600> applied<00:15:33.480> and<00:15:33.680> in<00:15:33.800> a
00:15:33.910 --> 00:15:33.920 align:start position:0%
getting properly applied and in a
00:15:33.920 --> 00:15:36.110 align:start position:0%
getting properly applied and in a
nutshell<00:15:34.639> that<00:15:34.759> means<00:15:35.079> that<00:15:35.240> Tailwind<00:15:35.959> has
00:15:36.110 --> 00:15:36.120 align:start position:0%
nutshell that means that Tailwind has
00:15:36.120 --> 00:15:38.309 align:start position:0%
nutshell that means that Tailwind has
been<00:15:36.319> properly<00:15:36.800> set<00:15:37.000> up<00:15:37.560> so<00:15:37.880> what<00:15:38.000> should<00:15:38.199> we
00:15:38.309 --> 00:15:38.319 align:start position:0%
been properly set up so what should we
00:15:38.319 --> 00:15:40.710 align:start position:0%
been properly set up so what should we
do<00:15:38.519> next<00:15:39.360> well<00:15:39.639> let's<00:15:39.839> set<00:15:40.040> up<00:15:40.199> the<00:15:40.360> base
00:15:40.710 --> 00:15:40.720 align:start position:0%
do next well let's set up the base
00:15:40.720 --> 00:15:43.269 align:start position:0%
do next well let's set up the base
routing<00:15:41.199> of<00:15:41.319> our<00:15:41.519> application<00:15:42.399> by<00:15:42.600> creating<00:15:43.079> a
00:15:43.269 --> 00:15:43.279 align:start position:0%
routing of our application by creating a
00:15:43.279 --> 00:15:45.389 align:start position:0%
routing of our application by creating a
couple<00:15:43.519> of<00:15:43.680> routes<00:15:44.199> and<00:15:44.399> there<00:15:44.680> for<00:15:45.000> a<00:15:45.160> couple
00:15:45.389 --> 00:15:45.399 align:start position:0%
couple of routes and there for a couple
00:15:45.399 --> 00:15:48.430 align:start position:0%
couple of routes and there for a couple
of<00:15:45.600> pages<00:15:46.480> and<00:15:46.680> in<00:15:46.920> react<00:15:47.480> to<00:15:47.639> do<00:15:47.800> the<00:15:47.920> routing
00:15:48.430 --> 00:15:48.440 align:start position:0%
of pages and in react to do the routing
00:15:48.440 --> 00:15:49.910 align:start position:0%
of pages and in react to do the routing
you<00:15:48.600> have<00:15:48.720> to<00:15:48.880> install<00:15:49.240> an<00:15:49.440> additional
00:15:49.910 --> 00:15:49.920 align:start position:0%
you have to install an additional
00:15:49.920 --> 00:15:53.509 align:start position:0%
you have to install an additional
package<00:15:50.480> by<00:15:50.600> running<00:15:50.959> mpm<00:15:51.680> install<00:15:52.680> react
00:15:53.509 --> 00:15:53.519 align:start position:0%
package by running mpm install react
00:15:53.519 --> 00:15:56.470 align:start position:0%
package by running mpm install react
router<00:15:54.319> Dom<00:15:55.079> the<00:15:55.240> only<00:15:55.560> package<00:15:55.800> you<00:15:55.920> need<00:15:56.279> to
00:15:56.470 --> 00:15:56.480 align:start position:0%
router Dom the only package you need to
00:15:56.480 --> 00:15:58.590 align:start position:0%
router Dom the only package you need to
manage<00:15:56.800> the<00:15:56.959> routes<00:15:57.959> once<00:15:58.160> it<00:15:58.279> is<00:15:58.399> in
00:15:58.590 --> 00:15:58.600 align:start position:0%
manage the routes once it is in
00:15:58.600 --> 00:16:01.870 align:start position:0%
manage the routes once it is in
installed<00:15:59.519> we<00:15:59.600> can<00:15:59.839> head<00:16:00.079> to<00:16:00.240> the<00:16:00.440> main.<00:16:01.199> TSX
00:16:01.870 --> 00:16:01.880 align:start position:0%
installed we can head to the main. TSX
00:16:01.880 --> 00:16:05.269 align:start position:0%
installed we can head to the main. TSX
file<00:16:02.880> here<00:16:03.319> you<00:16:03.480> can<00:16:03.720> import<00:16:04.639> something<00:16:04.959> known
00:16:05.269 --> 00:16:05.279 align:start position:0%
file here you can import something known
00:16:05.279 --> 00:16:08.990 align:start position:0%
file here you can import something known
as<00:16:05.399> a<00:16:05.680> browser<00:16:06.399> router<00:16:07.319> coming<00:16:07.639> from
00:16:08.990 --> 00:16:09.000 align:start position:0%
as a browser router coming from
00:16:09.000 --> 00:16:11.910 align:start position:0%
as a browser router coming from
react-router-dom<00:16:10.000> and<00:16:10.880> then<00:16:11.160> we<00:16:11.319> can<00:16:11.519> wrap
00:16:11.910 --> 00:16:11.920 align:start position:0%
react-router-dom and then we can wrap
00:16:11.920 --> 00:16:16.749 align:start position:0%
react-router-dom and then we can wrap
our<00:16:12.199> application<00:16:13.199> in<00:16:13.680> a<00:16:14.000> browser<00:16:15.319> router<00:16:16.319> just
00:16:16.749 --> 00:16:16.759 align:start position:0%
our application in a browser router just
00:16:16.759 --> 00:16:17.670 align:start position:0%
our application in a browser router just
like
00:16:17.670 --> 00:16:17.680 align:start position:0%
like
00:16:17.680 --> 00:16:20.790 align:start position:0%
like
so<00:16:18.680> there<00:16:18.839> we<00:16:19.000> go<00:16:19.319> the<00:16:19.519> app<00:16:19.720> is<00:16:19.839> going<00:16:20.040> to<00:16:20.319> go
00:16:20.790 --> 00:16:20.800 align:start position:0%
so there we go the app is going to go
00:16:20.800 --> 00:16:23.110 align:start position:0%
so there we go the app is going to go
within<00:16:21.079> it<00:16:21.880> this<00:16:22.040> means<00:16:22.399> that<00:16:22.720> now<00:16:23.000> the
00:16:23.110 --> 00:16:23.120 align:start position:0%
within it this means that now the
00:16:23.120 --> 00:16:25.269 align:start position:0%
within it this means that now the
browser<00:16:23.519> router<00:16:23.959> is<00:16:24.079> going<00:16:24.279> to<00:16:24.480> control<00:16:25.120> the
00:16:25.269 --> 00:16:25.279 align:start position:0%
browser router is going to control the
00:16:25.279 --> 00:16:28.230 align:start position:0%
browser router is going to control the
routing<00:16:25.759> for<00:16:26.000> our<00:16:26.199> entire<00:16:26.800> application<00:16:27.800> which
00:16:28.230 --> 00:16:28.240 align:start position:0%
routing for our entire application which
00:16:28.240 --> 00:16:31.430 align:start position:0%
routing for our entire application which
may<00:16:28.519> makes<00:16:28.720> our<00:16:28.920> ab.<00:16:29.440> DSX<00:16:30.440> that<00:16:30.680> much<00:16:30.880> more
00:16:31.430 --> 00:16:31.440 align:start position:0%
may makes our ab. DSX that much more
00:16:31.440 --> 00:16:34.870 align:start position:0%
may makes our ab. DSX that much more
powerful<00:16:32.440> because<00:16:32.839> now<00:16:33.319> within<00:16:33.759> here<00:16:34.319> we<00:16:34.440> can
00:16:34.870 --> 00:16:34.880 align:start position:0%
powerful because now within here we can
00:16:34.880 --> 00:16:39.269 align:start position:0%
powerful because now within here we can
import<00:16:35.880> routes<00:16:36.839> as<00:16:37.000> well<00:16:37.240> as<00:16:37.399> a<00:16:37.680> route<00:16:38.600> from
00:16:39.269 --> 00:16:39.279 align:start position:0%
import routes as well as a route from
00:16:39.279 --> 00:16:43.269 align:start position:0%
import routes as well as a route from
react<00:16:40.120> router<00:16:41.079> Dom<00:16:42.079> once<00:16:42.279> you<00:16:42.440> do<00:16:42.680> that<00:16:43.120> you
00:16:43.269 --> 00:16:43.279 align:start position:0%
react router Dom once you do that you
00:16:43.279 --> 00:16:46.509 align:start position:0%
react router Dom once you do that you
can<00:16:43.519> wrap<00:16:44.040> everything<00:16:44.639> in<00:16:44.759> a<00:16:45.000> main<00:16:45.560> section
00:16:46.509 --> 00:16:46.519 align:start position:0%
can wrap everything in a main section
00:16:46.519 --> 00:16:49.470 align:start position:0%
can wrap everything in a main section
we'll<00:16:46.720> be<00:16:46.880> using<00:16:47.240> HTML<00:16:47.839> 5<00:16:48.160> semantic<00:16:48.720> tags<00:16:49.240> all
00:16:49.470 --> 00:16:49.480 align:start position:0%
we'll be using HTML 5 semantic tags all
00:16:49.480 --> 00:16:52.150 align:start position:0%
we'll be using HTML 5 semantic tags all
across<00:16:49.839> the<00:16:50.000> video<00:16:50.800> you<00:16:50.920> can<00:16:51.199> also<00:16:51.680> give<00:16:51.839> it<00:16:51.959> a
00:16:52.150 --> 00:16:52.160 align:start position:0%
across the video you can also give it a
00:16:52.160 --> 00:16:57.189 align:start position:0%
across the video you can also give it a
class<00:16:52.560> name<00:16:53.199> equal<00:16:53.519> to<00:16:54.519> flex<00:16:55.519> and<00:16:55.839> h-<00:16:56.480> Screen
00:16:57.189 --> 00:16:57.199 align:start position:0%
class name equal to flex and h- Screen
00:16:57.199 --> 00:16:59.829 align:start position:0%
class name equal to flex and h- Screen
meaning<00:16:57.560> it's<00:16:57.720> going<00:16:57.880> to<00:16:58.040> take<00:16:58.720> 100%<00:16:59.440> of<00:16:59.600> the
00:16:59.829 --> 00:16:59.839 align:start position:0%
meaning it's going to take 100% of the
00:16:59.839 --> 00:17:02.150 align:start position:0%
meaning it's going to take 100% of the
screen<00:17:00.839> now<00:17:01.079> you<00:17:01.199> can<00:17:01.319> see<00:17:01.560> how<00:17:01.720> I<00:17:01.839> quickly
00:17:02.150 --> 00:17:02.160 align:start position:0%
screen now you can see how I quickly
00:17:02.160 --> 00:17:04.470 align:start position:0%
screen now you can see how I quickly
hovered<00:17:02.560> over<00:17:02.800> it<00:17:03.079> and<00:17:03.199> I<00:17:03.279> can<00:17:03.440> see<00:17:03.920> exactly
00:17:04.470 --> 00:17:04.480 align:start position:0%
hovered over it and I can see exactly
00:17:04.480 --> 00:17:06.829 align:start position:0%
hovered over it and I can see exactly
what<00:17:04.640> CSS<00:17:05.199> properties<00:17:05.640> have<00:17:05.799> been<00:17:05.959> applied
00:17:06.829 --> 00:17:06.839 align:start position:0%
what CSS properties have been applied
00:17:06.839 --> 00:17:08.309 align:start position:0%
what CSS properties have been applied
this<00:17:06.959> is<00:17:07.079> a<00:17:07.280> pretty<00:17:07.480> cool<00:17:07.760> extension<00:17:08.120> for
00:17:08.309 --> 00:17:08.319 align:start position:0%
this is a pretty cool extension for
00:17:08.319 --> 00:17:10.470 align:start position:0%
this is a pretty cool extension for
Tailwind<00:17:09.000> so<00:17:09.160> if<00:17:09.240> you<00:17:09.360> don't<00:17:09.559> have<00:17:09.679> it<00:17:09.839> already
00:17:10.470 --> 00:17:10.480 align:start position:0%
Tailwind so if you don't have it already
00:17:10.480 --> 00:17:14.789 align:start position:0%
Tailwind so if you don't have it already
just<00:17:10.799> type<00:17:11.199> Tailwind<00:17:12.280> CSS<00:17:13.640> intellisense<00:17:14.640> the
00:17:14.789 --> 00:17:14.799 align:start position:0%
just type Tailwind CSS intellisense the
00:17:14.799 --> 00:17:17.710 align:start position:0%
just type Tailwind CSS intellisense the
first<00:17:15.079> extension<00:17:15.480> that<00:17:15.679> pops<00:17:15.959> up<00:17:16.640> install<00:17:17.079> it
00:17:17.710 --> 00:17:17.720 align:start position:0%
first extension that pops up install it
00:17:17.720 --> 00:17:19.510 align:start position:0%
first extension that pops up install it
and<00:17:17.880> if<00:17:18.000> you're<00:17:18.160> not<00:17:18.319> a<00:17:18.439> fan<00:17:18.600> of<00:17:18.720> Tailwind<00:17:19.400> you
00:17:19.510 --> 00:17:19.520 align:start position:0%
and if you're not a fan of Tailwind you
00:17:19.520 --> 00:17:21.750 align:start position:0%
and if you're not a fan of Tailwind you
can<00:17:19.679> still<00:17:19.880> follow<00:17:20.199> along<00:17:20.919> but<00:17:21.079> you'll<00:17:21.319> know
00:17:21.750 --> 00:17:21.760 align:start position:0%
can still follow along but you'll know
00:17:21.760 --> 00:17:24.029 align:start position:0%
can still follow along but you'll know
exactly<00:17:22.760> which<00:17:23.000> properties<00:17:23.559> are<00:17:23.760> getting
00:17:24.029 --> 00:17:24.039 align:start position:0%
exactly which properties are getting
00:17:24.039 --> 00:17:26.429 align:start position:0%
exactly which properties are getting
applied<00:17:25.000> for<00:17:25.160> the<00:17:25.280> ones<00:17:25.559> that<00:17:25.720> don't<00:17:26.079> get<00:17:26.280> this
00:17:26.429 --> 00:17:26.439 align:start position:0%
applied for the ones that don't get this
00:17:26.439 --> 00:17:28.510 align:start position:0%
applied for the ones that don't get this
hover<00:17:26.959> you<00:17:27.079> can<00:17:27.240> simply<00:17:27.520> search<00:17:27.919> them<00:17:28.240> here
00:17:28.510 --> 00:17:28.520 align:start position:0%
hover you can simply search them here
00:17:28.520 --> 00:17:30.510 align:start position:0%
hover you can simply search them here
here<00:17:29.320> and<00:17:29.440> then<00:17:29.559> you'll<00:17:29.760> be<00:17:29.880> able<00:17:30.080> to<00:17:30.240> find
00:17:30.510 --> 00:17:30.520 align:start position:0%
here and then you'll be able to find
00:17:30.520 --> 00:17:33.630 align:start position:0%
here and then you'll be able to find
them<00:17:30.799> within<00:17:31.080> global.<00:17:31.880> CSS<00:17:32.880> with<00:17:33.039> that<00:17:33.240> said
00:17:33.630 --> 00:17:33.640 align:start position:0%
them within global. CSS with that said
00:17:33.640 --> 00:17:36.630 align:start position:0%
them within global. CSS with that said
we<00:17:33.760> can<00:17:33.960> wrap<00:17:34.440> everything<00:17:35.160> in<00:17:35.440> a<00:17:35.720> routes
00:17:36.630 --> 00:17:36.640 align:start position:0%
we can wrap everything in a routes
00:17:36.640 --> 00:17:39.110 align:start position:0%
we can wrap everything in a routes
parent<00:17:37.640> within<00:17:37.880> the<00:17:38.039> routes<00:17:38.600> we'll<00:17:38.799> be<00:17:38.960> able
00:17:39.110 --> 00:17:39.120 align:start position:0%
parent within the routes we'll be able
00:17:39.120 --> 00:17:41.990 align:start position:0%
parent within the routes we'll be able
to<00:17:39.280> Define<00:17:39.720> two<00:17:40.039> types<00:17:40.280> of<00:17:40.480> routes<00:17:41.480> public
00:17:41.990 --> 00:17:42.000 align:start position:0%
to Define two types of routes public
00:17:42.000 --> 00:17:46.590 align:start position:0%
to Define two types of routes public
routes<00:17:43.000> and<00:17:43.360> also<00:17:44.200> private<00:17:45.280> routes<00:17:46.280> public
00:17:46.590 --> 00:17:46.600 align:start position:0%
routes and also private routes public
00:17:46.600 --> 00:17:48.390 align:start position:0%
routes and also private routes public
routes<00:17:46.960> are<00:17:47.160> the<00:17:47.360> routes<00:17:47.760> that<00:17:48.000> everybody
00:17:48.390 --> 00:17:48.400 align:start position:0%
routes are the routes that everybody
00:17:48.400 --> 00:17:50.750 align:start position:0%
routes are the routes that everybody
will<00:17:48.559> be<00:17:48.679> able<00:17:48.880> to<00:17:49.000> see<00:17:49.720> the<00:17:49.880> sign<00:17:50.120> up<00:17:50.480> and<00:17:50.640> the
00:17:50.750 --> 00:17:50.760 align:start position:0%
will be able to see the sign up and the
00:17:50.760 --> 00:17:53.150 align:start position:0%
will be able to see the sign up and the
sign<00:17:51.000> in<00:17:51.840> and<00:17:52.120> private<00:17:52.480> routes<00:17:52.840> are<00:17:53.000> the
00:17:53.150 --> 00:17:53.160 align:start position:0%
sign in and private routes are the
00:17:53.160 --> 00:17:55.070 align:start position:0%
sign in and private routes are the
routes<00:17:53.520> that<00:17:53.600> you'll<00:17:53.760> be<00:17:53.880> able<00:17:54.080> to<00:17:54.240> see<00:17:54.760> only
00:17:55.070 --> 00:17:55.080 align:start position:0%
routes that you'll be able to see only
00:17:55.080 --> 00:17:57.710 align:start position:0%
routes that you'll be able to see only
if<00:17:55.200> you're<00:17:55.400> signed<00:17:55.840> in<00:17:56.840> so<00:17:57.080> let's<00:17:57.280> create<00:17:57.520> our
00:17:57.710 --> 00:17:57.720 align:start position:0%
if you're signed in so let's create our
00:17:57.720 --> 00:18:01.750 align:start position:0%
if you're signed in so let's create our
two<00:17:57.960> first<00:17:58.440> routes<00:17:59.400> let's<00:17:59.640> do<00:18:00.120> a
00:18:01.750 --> 00:18:01.760 align:start position:0%
two first routes let's do a
00:18:01.760 --> 00:18:03.430 align:start position:0%
two first routes let's do a
route<00:18:02.760> which<00:18:02.880> is<00:18:03.000> going<00:18:03.159> to<00:18:03.240> be<00:18:03.360> a
00:18:03.430 --> 00:18:03.440 align:start position:0%
route which is going to be a
00:18:03.440 --> 00:18:05.230 align:start position:0%
route which is going to be a
self-closing
00:18:05.230 --> 00:18:05.240 align:start position:0%
self-closing
00:18:05.240 --> 00:18:08.430 align:start position:0%
self-closing
component<00:18:06.240> that's<00:18:06.480> going<00:18:06.640> to<00:18:06.760> have<00:18:06.880> a<00:18:07.159> pth<00:18:07.760> of
00:18:08.430 --> 00:18:08.440 align:start position:0%
component that's going to have a pth of
00:18:08.440 --> 00:18:10.190 align:start position:0%
component that's going to have a pth of
SL<00:18:08.880> sign
00:18:10.190 --> 00:18:10.200 align:start position:0%
SL sign
00:18:10.200 --> 00:18:13.350 align:start position:0%
SL sign
in<00:18:11.200> and<00:18:11.480> it's<00:18:11.640> going<00:18:11.760> to<00:18:11.880> render<00:18:12.240> an<00:18:12.440> element
00:18:13.350 --> 00:18:13.360 align:start position:0%
in and it's going to render an element
00:18:13.360 --> 00:18:17.789 align:start position:0%
in and it's going to render an element
of<00:18:14.360> sign<00:18:15.240> in<00:18:16.159> form<00:18:17.159> it's<00:18:17.320> going<00:18:17.480> to<00:18:17.559> be<00:18:17.679> a
00:18:17.789 --> 00:18:17.799 align:start position:0%
of sign in form it's going to be a
00:18:17.799 --> 00:18:19.870 align:start position:0%
of sign in form it's going to be a
self-closing
00:18:19.870 --> 00:18:19.880 align:start position:0%
self-closing
00:18:19.880 --> 00:18:23.110 align:start position:0%
self-closing
element<00:18:20.880> now<00:18:21.080> of<00:18:21.240> course<00:18:21.840> this<00:18:22.039> is<00:18:22.200> a<00:18:22.559> page<00:18:22.960> or
00:18:23.110 --> 00:18:23.120 align:start position:0%
element now of course this is a page or
00:18:23.120 --> 00:18:25.350 align:start position:0%
element now of course this is a page or
a<00:18:23.320> component<00:18:24.000> which<00:18:24.159> we<00:18:24.320> have<00:18:24.480> to<00:18:24.720> import
00:18:25.350 --> 00:18:25.360 align:start position:0%
a component which we have to import
00:18:25.360 --> 00:18:27.870 align:start position:0%
a component which we have to import
inside<00:18:25.679> of<00:18:25.880> here<00:18:26.720> and<00:18:26.919> we<00:18:27.039> can<00:18:27.200> also<00:18:27.480> repeat
00:18:27.870 --> 00:18:27.880 align:start position:0%
inside of here and we can also repeat
00:18:27.880 --> 00:18:30.029 align:start position:0%
inside of here and we can also repeat
this<00:18:28.120> with<00:18:28.440> our<00:18:28.600> first<00:18:28.919> private<00:18:29.240> route<00:18:29.799> so<00:18:29.960> we
00:18:30.029 --> 00:18:30.039 align:start position:0%
this with our first private route so we
00:18:30.039 --> 00:18:33.909 align:start position:0%
this with our first private route so we
can<00:18:30.200> say<00:18:30.559> route<00:18:31.559> self<00:18:32.000> close<00:18:32.240> it<00:18:33.240> give<00:18:33.400> it<00:18:33.559> an
00:18:33.909 --> 00:18:33.919 align:start position:0%
can say route self close it give it an
00:18:33.919 --> 00:18:35.870 align:start position:0%
can say route self close it give it an
index<00:18:34.919> this<00:18:35.080> means<00:18:35.360> that<00:18:35.520> this<00:18:35.600> is<00:18:35.760> the
00:18:35.870 --> 00:18:35.880 align:start position:0%
index this means that this is the
00:18:35.880 --> 00:18:39.070 align:start position:0%
index this means that this is the
starting<00:18:36.360> page<00:18:37.240> and<00:18:37.400> then<00:18:37.840> the<00:18:38.039> element<00:18:38.919> is
00:18:39.070 --> 00:18:39.080 align:start position:0%
starting page and then the element is
00:18:39.080 --> 00:18:43.190 align:start position:0%
starting page and then the element is
going<00:18:39.280> to<00:18:39.760> be<00:18:40.760> a<00:18:41.240> home<00:18:41.919> component<00:18:42.799> so<00:18:42.960> we<00:18:43.039> can
00:18:43.190 --> 00:18:43.200 align:start position:0%
going to be a home component so we can
00:18:43.200 --> 00:18:45.510 align:start position:0%
going to be a home component so we can
put<00:18:43.320> a<00:18:43.480> self-closing<00:18:44.400> home<00:18:44.760> component<00:18:45.280> right
00:18:45.510 --> 00:18:45.520 align:start position:0%
put a self-closing home component right
00:18:45.520 --> 00:18:47.909 align:start position:0%
put a self-closing home component right
here<00:18:46.520> now<00:18:46.679> of<00:18:46.840> course<00:18:47.039> we<00:18:47.200> have<00:18:47.280> to<00:18:47.480> import
00:18:47.909 --> 00:18:47.919 align:start position:0%
here now of course we have to import
00:18:47.919 --> 00:18:50.350 align:start position:0%
here now of course we have to import
these<00:18:48.120> components<00:18:48.600> from<00:18:48.799> somewhere<00:18:49.760> so<00:18:50.120> let's
00:18:50.350 --> 00:18:50.360 align:start position:0%
these components from somewhere so let's
00:18:50.360 --> 00:18:53.230 align:start position:0%
these components from somewhere so let's
create<00:18:50.720> the<00:18:50.880> structure<00:18:51.440> needed<00:18:51.760> to<00:18:51.919> do<00:18:52.080> so<00:18:53.080> in
00:18:53.230 --> 00:18:53.240 align:start position:0%
create the structure needed to do so in
00:18:53.240 --> 00:18:54.870 align:start position:0%
create the structure needed to do so in
the<00:18:53.360> source<00:18:53.679> folder<00:18:54.120> we're<00:18:54.280> going<00:18:54.360> to<00:18:54.520> create
00:18:54.870 --> 00:18:54.880 align:start position:0%
the source folder we're going to create
00:18:54.880 --> 00:18:57.669 align:start position:0%
the source folder we're going to create
two<00:18:55.320> new<00:18:55.679> folders<00:18:56.679> one<00:18:57.039> is<00:18:57.200> going<00:18:57.360> to<00:18:57.520> be
00:18:57.669 --> 00:18:57.679 align:start position:0%
two new folders one is going to be
00:18:57.679 --> 00:19:01.270 align:start position:0%
two new folders one is going to be
called<00:18:58.280> _<00:18:58.960> o<00:18:59.960> and<00:19:00.120> the<00:19:00.280> other<00:19:00.679> is<00:19:00.840> going<00:19:01.000> to<00:19:01.120> be
00:19:01.270 --> 00:19:01.280 align:start position:0%
called _ o and the other is going to be
00:19:01.280 --> 00:19:04.149 align:start position:0%
called _ o and the other is going to be
called<00:19:01.679> underscore<00:19:02.559> root<00:19:03.559> these<00:19:03.679> are<00:19:03.919> two
00:19:04.149 --> 00:19:04.159 align:start position:0%
called underscore root these are two
00:19:04.159 --> 00:19:05.710 align:start position:0%
called underscore root these are two
folders<00:19:04.760> that<00:19:04.880> are<00:19:05.000> going<00:19:05.159> to<00:19:05.360> make<00:19:05.480> it
00:19:05.710 --> 00:19:05.720 align:start position:0%
folders that are going to make it
00:19:05.720 --> 00:19:08.270 align:start position:0%
folders that are going to make it
simpler<00:19:06.320> for<00:19:06.480> us<00:19:06.640> to<00:19:06.840> know<00:19:07.360> what<00:19:07.520> is<00:19:07.760> public
00:19:08.270 --> 00:19:08.280 align:start position:0%
simpler for us to know what is public
00:19:08.280 --> 00:19:10.590 align:start position:0%
simpler for us to know what is public
and<00:19:08.440> what<00:19:08.600> is<00:19:08.760> not<00:19:09.360> within<00:19:09.760> oth<00:19:10.280> we're<00:19:10.440> going
00:19:10.590 --> 00:19:10.600 align:start position:0%
and what is not within oth we're going
00:19:10.600 --> 00:19:14.710 align:start position:0%
and what is not within oth we're going
to<00:19:10.760> create<00:19:11.120> a<00:19:11.280> new<00:19:11.720> folder<00:19:12.720> called<00:19:13.520> forms<00:19:14.520> and
00:19:14.710 --> 00:19:14.720 align:start position:0%
to create a new folder called forms and
00:19:14.720 --> 00:19:18.110 align:start position:0%
to create a new folder called forms and
within<00:19:15.080> forms<00:19:15.919> we're<00:19:16.080> going<00:19:16.159> to<00:19:16.440> have<00:19:16.840> our
00:19:18.110 --> 00:19:18.120 align:start position:0%
within forms we're going to have our
00:19:18.120 --> 00:19:23.870 align:start position:0%
within forms we're going to have our
signin<00:19:19.240> form.<00:19:20.600> TSX<00:19:21.600> where<00:19:21.880> we<00:19:22.000> can<00:19:22.159> run<00:19:22.880> rafc
00:19:23.870 --> 00:19:23.880 align:start position:0%
signin form. TSX where we can run rafc
00:19:23.880 --> 00:19:25.950 align:start position:0%
signin form. TSX where we can run rafc
this<00:19:24.000> is<00:19:24.120> going<00:19:24.280> to<00:19:24.480> create<00:19:24.880> a<00:19:25.039> simple<00:19:25.480> signin
00:19:25.950 --> 00:19:25.960 align:start position:0%
this is going to create a simple signin
00:19:25.960 --> 00:19:26.830 align:start position:0%
this is going to create a simple signin
form
00:19:26.830 --> 00:19:26.840 align:start position:0%
form
00:19:26.840 --> 00:19:29.230 align:start position:0%
form
component<00:19:27.840> Within<00:19:28.320> forms<00:19:28.760> we<00:19:28.880> can<00:19:29.000> also
00:19:29.230 --> 00:19:29.240 align:start position:0%
component Within forms we can also
00:19:29.240 --> 00:19:31.710 align:start position:0%
component Within forms we can also
create<00:19:29.559> another<00:19:29.880> one<00:19:30.240> which<00:19:30.360> is<00:19:30.480> going<00:19:30.640> to<00:19:30.799> be
00:19:31.710 --> 00:19:31.720 align:start position:0%
create another one which is going to be
00:19:31.720 --> 00:19:36.390 align:start position:0%
create another one which is going to be
signup<00:19:32.799> form.<00:19:33.799> TSX<00:19:34.760> we<00:19:34.919> can<00:19:35.159> also<00:19:35.440> run
00:19:36.390 --> 00:19:36.400 align:start position:0%
signup form. TSX we can also run
00:19:36.400 --> 00:19:39.669 align:start position:0%
signup form. TSX we can also run
RFC<00:19:37.400> and<00:19:37.760> outside<00:19:38.159> of<00:19:38.280> forms<00:19:38.919> but<00:19:39.200> inside<00:19:39.520> of
00:19:39.669 --> 00:19:39.679 align:start position:0%
RFC and outside of forms but inside of
00:19:39.679 --> 00:19:42.270 align:start position:0%
RFC and outside of forms but inside of
underscore<00:19:40.240> o<00:19:40.799> we<00:19:40.919> want<00:19:41.000> to<00:19:41.200> create<00:19:41.559> a
00:19:42.270 --> 00:19:42.280 align:start position:0%
underscore o we want to create a
00:19:42.280 --> 00:19:46.950 align:start position:0%
underscore o we want to create a
layout<00:19:43.280> o<00:19:44.039> layout.<00:19:45.320> TSX<00:19:46.320> and<00:19:46.520> there<00:19:46.679> we<00:19:46.799> can
00:19:46.950 --> 00:19:46.960 align:start position:0%
layout o layout. TSX and there we can
00:19:46.960 --> 00:19:51.270 align:start position:0%
layout o layout. TSX and there we can
run<00:19:47.200> our<00:19:47.520> efce<00:19:48.520> as<00:19:49.200> well<00:19:50.200> this<00:19:50.520> layout<00:19:51.080> is
00:19:51.270 --> 00:19:51.280 align:start position:0%
run our efce as well this layout is
00:19:51.280 --> 00:19:53.990 align:start position:0%
run our efce as well this layout is
going<00:19:51.480> to<00:19:51.760> wrap<00:19:52.440> both<00:19:52.640> of<00:19:52.799> our<00:19:53.159> signin<00:19:53.799> and
00:19:53.990 --> 00:19:54.000 align:start position:0%
going to wrap both of our signin and
00:19:54.000 --> 00:19:56.710 align:start position:0%
going to wrap both of our signin and
sign<00:19:54.280> up<00:19:54.679> forms<00:19:55.679> it's<00:19:55.880> going<00:19:56.039> to<00:19:56.240> have<00:19:56.440> things
00:19:56.710 --> 00:19:56.720 align:start position:0%
sign up forms it's going to have things
00:19:56.720 --> 00:19:59.310 align:start position:0%
sign up forms it's going to have things
like<00:19:56.880> the<00:19:57.039> logo<00:19:57.799> as<00:19:57.960> well<00:19:58.360> as<00:19:58.559> this<00:19:58.799> wonderful
00:19:59.310 --> 00:19:59.320 align:start position:0%
like the logo as well as this wonderful
00:19:59.320 --> 00:20:01.230 align:start position:0%
like the logo as well as this wonderful
image<00:19:59.640> gallery<00:20:00.080> that<00:20:00.240> appears<00:20:00.640> on<00:20:00.760> the<00:20:01.000> right
00:20:01.230 --> 00:20:01.240 align:start position:0%
image gallery that appears on the right
00:20:01.240 --> 00:20:04.149 align:start position:0%
image gallery that appears on the right
side<00:20:02.240> and<00:20:02.360> then<00:20:02.520> the<00:20:02.679> forms<00:20:03.280> will<00:20:03.559> change
00:20:04.149 --> 00:20:04.159 align:start position:0%
side and then the forms will change
00:20:04.159 --> 00:20:07.270 align:start position:0%
side and then the forms will change
depending<00:20:04.640> on<00:20:04.799> the<00:20:05.080> URL<00:20:06.080> how<00:20:06.360> cool<00:20:06.600> is<00:20:06.799> that
00:20:07.270 --> 00:20:07.280 align:start position:0%
depending on the URL how cool is that
00:20:07.280 --> 00:20:09.149 align:start position:0%
depending on the URL how cool is that
that's<00:20:07.440> why<00:20:07.600> we<00:20:07.760> have<00:20:07.919> this<00:20:08.120> generic<00:20:08.520> layout
00:20:09.149 --> 00:20:09.159 align:start position:0%
that's why we have this generic layout
00:20:09.159 --> 00:20:10.789 align:start position:0%
that's why we have this generic layout
but<00:20:09.320> then<00:20:09.600> components<00:20:10.200> are<00:20:10.360> going<00:20:10.440> to<00:20:10.559> be<00:20:10.679> the
00:20:10.789 --> 00:20:10.799 align:start position:0%
but then components are going to be the
00:20:10.799 --> 00:20:12.909 align:start position:0%
but then components are going to be the
ones<00:20:11.039> that<00:20:11.200> change<00:20:11.559> the<00:20:11.720> form<00:20:12.600> and<00:20:12.799> we're
00:20:12.909 --> 00:20:12.919 align:start position:0%
ones that change the form and we're
00:20:12.919 --> 00:20:14.750 align:start position:0%
ones that change the form and we're
going<00:20:13.000> to<00:20:13.159> have<00:20:13.280> a<00:20:13.480> similar<00:20:13.880> thing<00:20:14.240> for<00:20:14.480> our
00:20:14.750 --> 00:20:14.760 align:start position:0%
going to have a similar thing for our
00:20:14.760 --> 00:20:17.029 align:start position:0%
going to have a similar thing for our
root<00:20:15.600> within<00:20:15.880> the<00:20:16.000> root<00:20:16.440> we're<00:20:16.600> going<00:20:16.679> to<00:20:16.840> have
00:20:17.029 --> 00:20:17.039 align:start position:0%
root within the root we're going to have
00:20:17.039 --> 00:20:20.390 align:start position:0%
root within the root we're going to have
a<00:20:17.159> folder<00:20:17.760> called<00:20:18.320> Pages<00:20:19.320> within<00:20:19.720> Pages<00:20:20.200> we're
00:20:20.390 --> 00:20:20.400 align:start position:0%
a folder called Pages within Pages we're
00:20:20.400 --> 00:20:23.230 align:start position:0%
a folder called Pages within Pages we're
of<00:20:20.559> course<00:20:20.799> going<00:20:20.919> to<00:20:21.120> have<00:20:21.360> our<00:20:21.640> home.
00:20:23.230 --> 00:20:23.240 align:start position:0%
of course going to have our home.
00:20:23.240 --> 00:20:25.390 align:start position:0%
of course going to have our home.
DSX<00:20:24.240> where<00:20:24.400> we<00:20:24.520> can<00:20:24.640> run
00:20:25.390 --> 00:20:25.400 align:start position:0%
DSX where we can run
00:20:25.400 --> 00:20:27.990 align:start position:0%
DSX where we can run
rafc<00:20:26.400> but<00:20:26.640> outside<00:20:27.000> of<00:20:27.200> pages<00:20:27.679> we're<00:20:27.799> going<00:20:27.919> to
00:20:27.990 --> 00:20:28.000 align:start position:0%
rafc but outside of pages we're going to
00:20:28.000 --> 00:20:30.149 align:start position:0%
rafc but outside of pages we're going to
have<00:20:28.240> have<00:20:28.440> our<00:20:28.600> underscore<00:20:29.159> root<00:20:29.960> that's
00:20:30.149 --> 00:20:30.159 align:start position:0%
have have our underscore root that's
00:20:30.159 --> 00:20:31.029 align:start position:0%
have have our underscore root that's
going<00:20:30.320> to
00:20:31.029 --> 00:20:31.039 align:start position:0%
going to
00:20:31.039 --> 00:20:35.590 align:start position:0%
going to
contain<00:20:32.039> a<00:20:32.320> root<00:20:33.159> layout.<00:20:34.200> TSX<00:20:35.200> or<00:20:35.320> we<00:20:35.440> can
00:20:35.590 --> 00:20:35.600 align:start position:0%
contain a root layout. TSX or we can
00:20:35.600 --> 00:20:38.270 align:start position:0%
contain a root layout. TSX or we can
also<00:20:35.840> run<00:20:36.360> RFC<00:20:37.360> and<00:20:37.520> of<00:20:37.679> course<00:20:37.880> the<00:20:38.000> layout
00:20:38.270 --> 00:20:38.280 align:start position:0%
also run RFC and of course the layout
00:20:38.280 --> 00:20:40.070 align:start position:0%
also run RFC and of course the layout
for<00:20:38.400> the<00:20:38.520> homepages<00:20:39.159> is<00:20:39.280> going<00:20:39.440> to<00:20:39.600> contain
00:20:40.070 --> 00:20:40.080 align:start position:0%
for the homepages is going to contain
00:20:40.080 --> 00:20:41.909 align:start position:0%
for the homepages is going to contain
things<00:20:40.360> like<00:20:40.559> this<00:20:40.720> sidebar<00:20:41.159> on<00:20:41.240> the<00:20:41.400> left
00:20:41.909 --> 00:20:41.919 align:start position:0%
things like this sidebar on the left
00:20:41.919 --> 00:20:44.710 align:start position:0%
things like this sidebar on the left
sidebar<00:20:42.320> on<00:20:42.440> the<00:20:42.600> right<00:20:43.200> and<00:20:43.440> more<00:20:44.200> now<00:20:44.480> within
00:20:44.710 --> 00:20:44.720 align:start position:0%
sidebar on the right and more now within
00:20:44.720 --> 00:20:46.669 align:start position:0%
sidebar on the right and more now within
root<00:20:45.080> Pages<00:20:45.440> we're<00:20:45.600> going<00:20:45.720> to<00:20:45.840> have<00:20:46.120> many<00:20:46.400> many
00:20:46.669 --> 00:20:46.679 align:start position:0%
root Pages we're going to have many many
00:20:46.679 --> 00:20:49.350 align:start position:0%
root Pages we're going to have many many
different<00:20:47.000> pages<00:20:47.760> I<00:20:47.840> mean<00:20:48.240> tens<00:20:48.520> of<00:20:48.720> pages<00:20:49.200> by
00:20:49.350 --> 00:20:49.360 align:start position:0%
different pages I mean tens of pages by
00:20:49.360 --> 00:20:51.630 align:start position:0%
different pages I mean tens of pages by
when<00:20:49.520> we're<00:20:49.720> done<00:20:49.880> with<00:20:50.039> this<00:20:50.200> application<00:20:51.200> so
00:20:51.630 --> 00:20:51.640 align:start position:0%
when we're done with this application so
00:20:51.640 --> 00:20:53.630 align:start position:0%
when we're done with this application so
we<00:20:51.799> don't<00:20:52.000> want<00:20:52.200> to<00:20:52.360> Simply<00:20:52.760> import<00:20:53.240> each<00:20:53.440> one
00:20:53.630 --> 00:20:53.640 align:start position:0%
we don't want to Simply import each one
00:20:53.640 --> 00:20:56.110 align:start position:0%
we don't want to Simply import each one
in<00:20:53.760> a<00:20:53.919> new<00:20:54.159> line<00:20:54.760> so<00:20:54.919> we<00:20:55.000> can<00:20:55.159> create<00:20:55.480> a<00:20:55.679> new
00:20:56.110 --> 00:20:56.120 align:start position:0%
in a new line so we can create a new
00:20:56.120 --> 00:20:58.350 align:start position:0%
in a new line so we can create a new
index.ts<00:20:57.120> file<00:20:57.679> which<00:20:57.799> is<00:20:57.919> going<00:20:58.120> going<00:20:58.240> to
00:20:58.350 --> 00:20:58.360 align:start position:0%
index.ts file which is going going to
00:20:58.360 --> 00:21:01.270 align:start position:0%
index.ts file which is going going to
allow<00:20:58.600> us<00:20:58.720> to<00:20:58.919> import<00:20:59.280> them<00:20:59.480> in<00:20:59.600> a<00:20:59.720> cleaner<00:21:00.280> way
00:21:01.270 --> 00:21:01.280 align:start position:0%
allow us to import them in a cleaner way
00:21:01.280 --> 00:21:03.110 align:start position:0%
allow us to import them in a cleaner way
but<00:21:01.600> first<00:21:01.880> we<00:21:02.000> have<00:21:02.159> to<00:21:02.400> export<00:21:02.880> each
00:21:03.110 --> 00:21:03.120 align:start position:0%
but first we have to export each
00:21:03.120 --> 00:21:06.070 align:start position:0%
but first we have to export each
component<00:21:03.559> we<00:21:03.760> have<00:21:04.240> so<00:21:04.400> we<00:21:04.520> can<00:21:04.640> say<00:21:05.080> export
00:21:06.070 --> 00:21:06.080 align:start position:0%
component we have so we can say export
00:21:06.080 --> 00:21:10.070 align:start position:0%
component we have so we can say export
default<00:21:06.600> as<00:21:07.120> home<00:21:08.039> from
00:21:10.070 --> 00:21:10.080 align:start position:0%
default as home from
00:21:10.080 --> 00:21:13.190 align:start position:0%
default as home from
slome<00:21:11.080> and<00:21:11.320> now<00:21:11.760> we<00:21:11.880> can<00:21:12.240> close<00:21:12.679> all<00:21:12.840> of<00:21:13.039> these
00:21:13.190 --> 00:21:13.200 align:start position:0%
slome and now we can close all of these
00:21:13.200 --> 00:21:16.669 align:start position:0%
slome and now we can close all of these
new<00:21:13.440> open<00:21:13.760> files<00:21:14.760> go<00:21:15.000> back<00:21:15.159> to<00:21:15.320> the<00:21:15.559> app<00:21:16.360> we<00:21:16.440> can
00:21:16.669 --> 00:21:16.679 align:start position:0%
new open files go back to the app we can
00:21:16.679 --> 00:21:20.470 align:start position:0%
new open files go back to the app we can
automatically<00:21:17.640> import<00:21:18.200> signin<00:21:18.720> form
00:21:20.470 --> 00:21:20.480 align:start position:0%
automatically import signin form
00:21:20.480 --> 00:21:24.630 align:start position:0%
automatically import signin form
fromo<00:21:21.480> forms<00:21:22.080> signin<00:21:22.440> form<00:21:23.279> and<00:21:23.559> import<00:21:23.960> home
00:21:24.630 --> 00:21:24.640 align:start position:0%
fromo forms signin form and import home
00:21:24.640 --> 00:21:28.110 align:start position:0%
fromo forms signin form and import home
from<00:21:25.159> root<00:21:25.880> Pages<00:21:26.880> while<00:21:27.039> we're<00:21:27.320> here<00:21:27.679> we<00:21:27.799> can
00:21:28.110 --> 00:21:28.120 align:start position:0%
from root Pages while we're here we can
00:21:28.120 --> 00:21:30.390 align:start position:0%
from root Pages while we're here we can
duplicate<00:21:28.559> our<00:21:28.799> signin<00:21:29.279> routee<00:21:29.880> and<00:21:30.080> simply
00:21:30.390 --> 00:21:30.400 align:start position:0%
duplicate our signin routee and simply
00:21:30.400 --> 00:21:33.029 align:start position:0%
duplicate our signin routee and simply
exchange<00:21:30.760> it<00:21:30.960> for<00:21:31.360> sign<00:21:31.760> up<00:21:32.360> and<00:21:32.600> here<00:21:32.799> we<00:21:32.919> can
00:21:33.029 --> 00:21:33.039 align:start position:0%
exchange it for sign up and here we can
00:21:33.039 --> 00:21:35.630 align:start position:0%
exchange it for sign up and here we can
say<00:21:33.400> sign<00:21:33.799> up<00:21:34.080> form<00:21:34.760> which<00:21:34.880> we<00:21:35.000> can<00:21:35.240> also
00:21:35.630 --> 00:21:35.640 align:start position:0%
say sign up form which we can also
00:21:35.640 --> 00:21:39.950 align:start position:0%
say sign up form which we can also
import<00:21:36.200> from<00:21:36.480> o<00:21:37.159> forms<00:21:38.159> now<00:21:38.480> notice<00:21:39.279> how<00:21:39.559> for
00:21:39.950 --> 00:21:39.960 align:start position:0%
import from o forms now notice how for
00:21:39.960 --> 00:21:43.590 align:start position:0%
import from o forms now notice how for
the<00:21:40.279> O<00:21:40.840> forms<00:21:41.559> it<00:21:41.760> imported<00:21:42.240> them<00:21:42.520> as<00:21:42.799> default
00:21:43.590 --> 00:21:43.600 align:start position:0%
the O forms it imported them as default
00:21:43.600 --> 00:21:46.590 align:start position:0%
the O forms it imported them as default
Imports<00:21:44.600> whereas<00:21:45.000> for<00:21:45.200> the<00:21:45.360> home<00:21:45.919> it<00:21:46.120> imported
00:21:46.590 --> 00:21:46.600 align:start position:0%
Imports whereas for the home it imported
00:21:46.600 --> 00:21:48.630 align:start position:0%
Imports whereas for the home it imported
it<00:21:46.760> as<00:21:46.919> the<00:21:47.080> named<00:21:47.480> import<00:21:48.080> which<00:21:48.200> is<00:21:48.320> going<00:21:48.480> to
00:21:48.630 --> 00:21:48.640 align:start position:0%
it as the named import which is going to
00:21:48.640 --> 00:21:51.549 align:start position:0%
it as the named import which is going to
allow<00:21:48.919> us<00:21:49.039> to<00:21:49.240> later<00:21:49.520> on<00:21:50.039> import<00:21:50.480> page<00:21:50.760> one
00:21:51.549 --> 00:21:51.559 align:start position:0%
allow us to later on import page one
00:21:51.559 --> 00:21:54.070 align:start position:0%
allow us to later on import page one
page<00:21:51.799> two<00:21:52.440> and<00:21:52.600> all<00:21:52.840> the<00:21:52.960> other<00:21:53.200> Pages<00:21:53.760> within
00:21:54.070 --> 00:21:54.080 align:start position:0%
page two and all the other Pages within
00:21:54.080 --> 00:21:57.470 align:start position:0%
page two and all the other Pages within
a<00:21:54.279> single<00:21:54.679> line<00:21:55.120> to<00:21:55.320> keep<00:21:55.520> our<00:21:55.720> code<00:21:55.960> more<00:21:56.480> tidy
00:21:57.470 --> 00:21:57.480 align:start position:0%
a single line to keep our code more tidy
00:21:57.480 --> 00:22:00.269 align:start position:0%
a single line to keep our code more tidy
great<00:21:58.240> so<00:21:58.440> now<00:21:58.600> we<00:21:58.720> have<00:21:58.880> the<00:21:59.039> base<00:21:59.360> structure
00:22:00.269 --> 00:22:00.279 align:start position:0%
great so now we have the base structure
00:22:00.279 --> 00:22:02.149 align:start position:0%
great so now we have the base structure
and<00:22:00.400> you<00:22:00.559> know<00:22:00.840> how<00:22:01.000> the<00:22:01.159> routing<00:22:01.600> is<00:22:01.720> going<00:22:01.919> to
00:22:02.149 --> 00:22:02.159 align:start position:0%
and you know how the routing is going to
00:22:02.159 --> 00:22:05.470 align:start position:0%
and you know how the routing is going to
work<00:22:03.159> but<00:22:03.440> there's<00:22:03.799> one<00:22:04.080> missing<00:22:04.520> piece<00:22:05.320> we
00:22:05.470 --> 00:22:05.480 align:start position:0%
work but there's one missing piece we
00:22:05.480 --> 00:22:07.830 align:start position:0%
work but there's one missing piece we
haven't<00:22:05.760> utilized<00:22:06.440> our<00:22:06.679> layouts<00:22:07.480> and<00:22:07.760> the
00:22:07.830 --> 00:22:07.840 align:start position:0%
haven't utilized our layouts and the
00:22:07.840 --> 00:22:10.190 align:start position:0%
haven't utilized our layouts and the
react<00:22:08.159> router<00:22:08.520> Dom<00:22:09.039> allows<00:22:09.360> us<00:22:09.520> to<00:22:09.679> do<00:22:09.840> so
00:22:10.190 --> 00:22:10.200 align:start position:0%
react router Dom allows us to do so
00:22:10.200 --> 00:22:13.310 align:start position:0%
react router Dom allows us to do so
easily<00:22:11.039> you<00:22:11.159> can<00:22:11.360> create<00:22:11.679> a<00:22:11.840> new<00:22:12.120> route<00:22:13.120> just
00:22:13.310 --> 00:22:13.320 align:start position:0%
easily you can create a new route just
00:22:13.320 --> 00:22:15.269 align:start position:0%
easily you can create a new route just
like<00:22:13.480> the<00:22:13.600> routes<00:22:13.840> you<00:22:14.000> created<00:22:14.400> before<00:22:15.080> but
00:22:15.269 --> 00:22:15.279 align:start position:0%
like the routes you created before but
00:22:15.279 --> 00:22:17.350 align:start position:0%
like the routes you created before but
this<00:22:15.480> time<00:22:15.760> it's<00:22:15.919> not<00:22:16.120> going<00:22:16.279> to<00:22:16.400> be<00:22:16.520> self-
00:22:17.350 --> 00:22:17.360 align:start position:0%
this time it's not going to be self-
00:22:17.360 --> 00:22:20.630 align:start position:0%
this time it's not going to be self-
closing<00:22:18.360> it's<00:22:18.559> going<00:22:18.720> to<00:22:18.919> accept<00:22:19.240> an<00:22:19.640> element
00:22:20.630 --> 00:22:20.640 align:start position:0%
closing it's going to accept an element
00:22:20.640 --> 00:22:23.029 align:start position:0%
closing it's going to accept an element
which<00:22:20.799> is<00:22:20.919> going<00:22:21.080> to<00:22:21.240> be<00:22:21.520> the<00:22:21.760> O<00:22:22.279> layout<00:22:22.840> we
00:22:23.029 --> 00:22:23.039 align:start position:0%
which is going to be the O layout we
00:22:23.039 --> 00:22:24.950 align:start position:0%
which is going to be the O layout we
created<00:22:23.799> which<00:22:23.919> you<00:22:24.039> can<00:22:24.279> automatically
00:22:24.950 --> 00:22:24.960 align:start position:0%
created which you can automatically
00:22:24.960 --> 00:22:28.470 align:start position:0%
created which you can automatically
import<00:22:25.440> from<00:22:25.720> o<00:22:26.320> layout<00:22:27.320> and<00:22:27.480> then<00:22:27.640> with<00:22:28.120> in<00:22:28.200> it
00:22:28.470 --> 00:22:28.480 align:start position:0%
import from o layout and then with in it
00:22:28.480 --> 00:22:31.029 align:start position:0%
import from o layout and then with in it
we<00:22:28.559> can<00:22:28.799> place<00:22:29.200> additional<00:22:29.720> elements<00:22:30.640> or
00:22:31.029 --> 00:22:31.039 align:start position:0%
we can place additional elements or
00:22:31.039 --> 00:22:33.710 align:start position:0%
we can place additional elements or
pages<00:22:31.720> that<00:22:31.799> are<00:22:31.960> going<00:22:32.080> to<00:22:32.279> appear<00:22:32.640> there<00:22:33.440> how
00:22:33.710 --> 00:22:33.720 align:start position:0%
pages that are going to appear there how
00:22:33.720 --> 00:22:36.110 align:start position:0%
pages that are going to appear there how
clever<00:22:34.200> is<00:22:34.400> that<00:22:34.960> it<00:22:35.080> allows<00:22:35.360> you<00:22:35.480> to<00:22:35.640> use<00:22:36.000> the
00:22:36.110 --> 00:22:36.120 align:start position:0%
clever is that it allows you to use the
00:22:36.120 --> 00:22:37.990 align:start position:0%
clever is that it allows you to use the
layout<00:22:36.640> but<00:22:36.760> then<00:22:36.960> immediately<00:22:37.480> place<00:22:37.799> the
00:22:37.990 --> 00:22:38.000 align:start position:0%
layout but then immediately place the
00:22:38.000 --> 00:22:41.470 align:start position:0%
layout but then immediately place the
pages<00:22:38.600> using<00:22:38.919> that<00:22:39.120> layout<00:22:39.919> within<00:22:40.919> so<00:22:41.200> we<00:22:41.320> can
00:22:41.470 --> 00:22:41.480 align:start position:0%
pages using that layout within so we can
00:22:41.480 --> 00:22:43.070 align:start position:0%
pages using that layout within so we can
repeat<00:22:41.760> the<00:22:41.880> same<00:22:42.120> procedure<00:22:42.640> with<00:22:42.799> our
00:22:43.070 --> 00:22:43.080 align:start position:0%
repeat the same procedure with our
00:22:43.080 --> 00:22:45.310 align:start position:0%
repeat the same procedure with our
private<00:22:43.400> routes<00:22:43.799> as<00:22:44.159> well<00:22:44.919> where<00:22:45.080> we're<00:22:45.200> going
00:22:45.310 --> 00:22:45.320 align:start position:0%
private routes as well where we're going
00:22:45.320 --> 00:22:46.630 align:start position:0%
private routes as well where we're going
to<00:22:45.520> have<00:22:45.720> a
00:22:46.630 --> 00:22:46.640 align:start position:0%
to have a
00:22:46.640 --> 00:22:48.990 align:start position:0%
to have a
route<00:22:47.640> and<00:22:48.120> there<00:22:48.279> we're<00:22:48.440> going<00:22:48.520> to<00:22:48.679> have<00:22:48.799> an
00:22:48.990 --> 00:22:49.000 align:start position:0%
route and there we're going to have an
00:22:49.000 --> 00:22:53.630 align:start position:0%
route and there we're going to have an
element<00:22:49.919> of<00:22:50.919> root<00:22:51.960> layout<00:22:52.960> of<00:22:53.120> course<00:22:53.360> it<00:22:53.520> has
00:22:53.630 --> 00:22:53.640 align:start position:0%
element of root layout of course it has
00:22:53.640 --> 00:22:55.549 align:start position:0%
element of root layout of course it has
to<00:22:53.760> be<00:22:53.960> defined<00:22:54.400> as<00:22:54.520> a<00:22:54.679> self-closing
00:22:55.549 --> 00:22:55.559 align:start position:0%
to be defined as a self-closing
00:22:55.559 --> 00:22:57.630 align:start position:0%
to be defined as a self-closing
component<00:22:56.559> and<00:22:56.720> then<00:22:56.840> we<00:22:56.960> can<00:22:57.120> place<00:22:57.400> all<00:22:57.559> of
00:22:57.630 --> 00:22:57.640 align:start position:0%
component and then we can place all of
00:22:57.640 --> 00:23:01.110 align:start position:0%
component and then we can place all of
the<00:22:57.960> home<00:22:58.159> routes<00:22:59.120> right
00:23:01.110 --> 00:23:01.120 align:start position:0%
the home routes right
00:23:01.120 --> 00:23:04.230 align:start position:0%
the home routes right
here<00:23:02.120> great<00:23:02.880> so<00:23:03.120> now<00:23:03.320> you<00:23:03.400> can<00:23:03.520> see<00:23:03.720> we<00:23:03.880> have<00:23:04.120> a
00:23:04.230 --> 00:23:04.240 align:start position:0%
here great so now you can see we have a
00:23:04.240 --> 00:23:07.029 align:start position:0%
here great so now you can see we have a
lot<00:23:04.400> of<00:23:04.600> imports<00:23:05.279> already<00:23:06.279> but<00:23:06.600> we<00:23:06.720> have<00:23:06.880> done
00:23:07.029 --> 00:23:07.039 align:start position:0%
lot of imports already but we have done
00:23:07.039 --> 00:23:09.669 align:start position:0%
lot of imports already but we have done
a<00:23:07.240> great<00:23:07.600> job<00:23:07.919> in<00:23:08.120> setting<00:23:08.440> up<00:23:08.679> our<00:23:09.000> path<00:23:09.279> for
00:23:09.669 --> 00:23:09.679 align:start position:0%
a great job in setting up our path for
00:23:09.679 --> 00:23:12.549 align:start position:0%
a great job in setting up our path for
Success<00:23:10.440> so<00:23:10.640> now<00:23:10.880> going<00:23:11.200> back<00:23:11.400> to<00:23:11.600> Local<00:23:11.960> Host
00:23:12.549 --> 00:23:12.559 align:start position:0%
Success so now going back to Local Host
00:23:12.559 --> 00:23:14.950 align:start position:0%
Success so now going back to Local Host
5173<00:23:13.559> the<00:23:13.679> only<00:23:13.960> thing<00:23:14.120> we<00:23:14.200> can<00:23:14.360> see<00:23:14.679> is<00:23:14.840> the
00:23:14.950 --> 00:23:14.960 align:start position:0%
5173 the only thing we can see is the
00:23:14.960 --> 00:23:17.149 align:start position:0%
5173 the only thing we can see is the
root<00:23:15.240> layout<00:23:16.039> but<00:23:16.159> soon<00:23:16.440> enough<00:23:16.799> you'll<00:23:17.000> be
00:23:17.149 --> 00:23:17.159 align:start position:0%
root layout but soon enough you'll be
00:23:17.159 --> 00:23:20.549 align:start position:0%
root layout but soon enough you'll be
able<00:23:17.360> to<00:23:17.520> see<00:23:18.120> much<00:23:18.360> more<00:23:18.600> than<00:23:19.120> that<00:23:20.120> so<00:23:20.440> how
00:23:20.549 --> 00:23:20.559 align:start position:0%
able to see much more than that so how
00:23:20.559 --> 00:23:22.230 align:start position:0%
able to see much more than that so how
would<00:23:20.720> you<00:23:20.880> feel<00:23:21.320> if<00:23:21.440> I<00:23:21.559> told<00:23:21.799> you<00:23:21.919> we're<00:23:22.080> going
00:23:22.230 --> 00:23:22.240 align:start position:0%
would you feel if I told you we're going
00:23:22.240 --> 00:23:24.950 align:start position:0%
would you feel if I told you we're going
to<00:23:22.400> start<00:23:22.720> with<00:23:22.919> this<00:23:23.159> completely<00:23:23.799> custom<00:23:24.559> and
00:23:24.950 --> 00:23:24.960 align:start position:0%
to start with this completely custom and
00:23:24.960 --> 00:23:27.909 align:start position:0%
to start with this completely custom and
stunning<00:23:25.799> sign<00:23:26.120> up<00:23:26.600> and<00:23:27.000> sign<00:23:27.320> in<00:23:27.559> script
00:23:27.909 --> 00:23:27.919 align:start position:0%
stunning sign up and sign in script
00:23:27.919 --> 00:23:30.789 align:start position:0%
stunning sign up and sign in script
screen<00:23:28.799> after<00:23:29.080> all<00:23:29.559> for<00:23:29.840> our<00:23:30.080> social<00:23:30.400> media
00:23:30.789 --> 00:23:30.799 align:start position:0%
screen after all for our social media
00:23:30.799 --> 00:23:33.390 align:start position:0%
screen after all for our social media
app<00:23:31.000> to<00:23:31.200> work<00:23:31.760> we<00:23:31.960> first<00:23:32.279> have<00:23:32.400> to<00:23:32.600> onboard<00:23:33.200> our
00:23:33.390 --> 00:23:33.400 align:start position:0%
app to work we first have to onboard our
00:23:33.400 --> 00:23:36.070 align:start position:0%
app to work we first have to onboard our
users<00:23:34.279> that<00:23:34.440> are<00:23:34.640> later<00:23:34.919> on<00:23:35.240> going<00:23:35.400> to<00:23:35.640> upload
00:23:36.070 --> 00:23:36.080 align:start position:0%
users that are later on going to upload
00:23:36.080 --> 00:23:38.710 align:start position:0%
users that are later on going to upload
their<00:23:36.360> posts<00:23:37.320> most<00:23:37.600> likely<00:23:38.000> it's<00:23:38.159> going<00:23:38.320> to<00:23:38.440> be
00:23:38.710 --> 00:23:38.720 align:start position:0%
their posts most likely it's going to be
00:23:38.720 --> 00:23:40.590 align:start position:0%
their posts most likely it's going to be
cat<00:23:39.039> photos<00:23:39.559> as<00:23:39.679> it<00:23:39.840> usually<00:23:40.159> is<00:23:40.279> on<00:23:40.480> the
00:23:40.590 --> 00:23:40.600 align:start position:0%
cat photos as it usually is on the
00:23:40.600 --> 00:23:43.390 align:start position:0%
cat photos as it usually is on the
internet<00:23:41.360> but<00:23:41.679> that's<00:23:41.960> up<00:23:42.120> to<00:23:42.360> them<00:23:43.039> it's<00:23:43.240> up
00:23:43.390 --> 00:23:43.400 align:start position:0%
internet but that's up to them it's up
00:23:43.400 --> 00:23:45.870 align:start position:0%
internet but that's up to them it's up
to<00:23:43.640> us<00:23:44.039> to<00:23:44.240> allow<00:23:44.559> them<00:23:44.720> to<00:23:44.880> do<00:23:45.080> so<00:23:45.520> on<00:23:45.679> a
00:23:45.870 --> 00:23:45.880 align:start position:0%
to us to allow them to do so on a
00:23:45.880 --> 00:23:48.909 align:start position:0%
to us to allow them to do so on a
beautifully<00:23:46.360> designed<00:23:46.960> and<00:23:47.240> fast<00:23:47.919> platform
00:23:48.909 --> 00:23:48.919 align:start position:0%
beautifully designed and fast platform
00:23:48.919 --> 00:23:52.230 align:start position:0%
beautifully designed and fast platform
so<00:23:49.440> let's<00:23:49.720> jump<00:23:50.000> into<00:23:50.520> the<00:23:50.679> signup<00:23:51.159> form<00:23:52.039> the
00:23:52.230 --> 00:23:52.240 align:start position:0%
so let's jump into the signup form the
00:23:52.240 --> 00:23:55.750 align:start position:0%
so let's jump into the signup form the
first<00:23:52.600> thing<00:23:53.200> that<00:23:53.400> our<00:23:53.640> user<00:23:54.159> will<00:23:54.480> see<00:23:55.480> our
00:23:55.750 --> 00:23:55.760 align:start position:0%
first thing that our user will see our
00:23:55.760 --> 00:23:59.190 align:start position:0%
first thing that our user will see our
signup<00:23:56.200> form<00:23:56.679> will<00:23:56.880> be<00:23:57.120> just<00:23:57.440> that<00:23:58.080> a
00:23:59.190 --> 00:23:59.200 align:start position:0%
signup form will be just that a
00:23:59.200 --> 00:24:02.110 align:start position:0%
signup form will be just that a
form<00:24:00.200> and<00:24:00.480> in<00:24:00.720> this<00:24:00.960> application<00:24:01.720> we'll<00:24:01.919> be
00:24:02.110 --> 00:24:02.120 align:start position:0%
form and in this application we'll be
00:24:02.120 --> 00:24:05.310 align:start position:0%
form and in this application we'll be
using<00:24:02.760> Shad<00:24:03.400> CN<00:24:04.080> styling
00:24:05.310 --> 00:24:05.320 align:start position:0%
using Shad CN styling
00:24:05.320 --> 00:24:07.990 align:start position:0%
using Shad CN styling
Library<00:24:06.320> it<00:24:06.440> is<00:24:06.559> a<00:24:06.760> library<00:24:07.279> of<00:24:07.520> beautifully
00:24:07.990 --> 00:24:08.000 align:start position:0%
Library it is a library of beautifully
00:24:08.000 --> 00:24:10.350 align:start position:0%
Library it is a library of beautifully
designed<00:24:08.600> components<00:24:09.600> that<00:24:09.919> you<00:24:10.039> can
00:24:10.350 --> 00:24:10.360 align:start position:0%
designed components that you can
00:24:10.360 --> 00:24:13.990 align:start position:0%
designed components that you can
customize<00:24:11.240> using<00:24:12.080> Tailwind<00:24:13.080> everything<00:24:13.520> from
00:24:13.990 --> 00:24:14.000 align:start position:0%
customize using Tailwind everything from
00:24:14.000 --> 00:24:18.470 align:start position:0%
customize using Tailwind everything from
dashboards<00:24:14.960> cards<00:24:15.880> tasks<00:24:16.840> playgrounds<00:24:17.840> and
00:24:18.470 --> 00:24:18.480 align:start position:0%
dashboards cards tasks playgrounds and
00:24:18.480 --> 00:24:21.710 align:start position:0%
dashboards cards tasks playgrounds and
of<00:24:18.679> course<00:24:19.559> forms<00:24:20.559> you'll<00:24:20.799> be<00:24:20.960> able<00:24:21.120> to<00:24:21.279> create
00:24:21.710 --> 00:24:21.720 align:start position:0%
of course forms you'll be able to create
00:24:21.720 --> 00:24:23.990 align:start position:0%
of course forms you'll be able to create
wonderful<00:24:22.520> but<00:24:22.720> also<00:24:23.200> simple<00:24:23.720> and
00:24:23.990 --> 00:24:24.000 align:start position:0%
wonderful but also simple and
00:24:24.000 --> 00:24:27.070 align:start position:0%
wonderful but also simple and
minimalistic<00:24:25.120> forms<00:24:26.120> everything<00:24:26.480> you<00:24:26.600> need
00:24:27.070 --> 00:24:27.080 align:start position:0%
minimalistic forms everything you need
00:24:27.080 --> 00:24:28.389 align:start position:0%
minimalistic forms everything you need
is<00:24:27.520> there
00:24:28.389 --> 00:24:28.399 align:start position:0%
is there
00:24:28.399 --> 00:24:30.710 align:start position:0%
is there
so<00:24:28.720> to<00:24:28.919> get<00:24:29.080> started<00:24:29.480> with<00:24:29.640> chat<00:24:30.000> CN<00:24:30.480> we<00:24:30.559> can
00:24:30.710 --> 00:24:30.720 align:start position:0%
so to get started with chat CN we can
00:24:30.720 --> 00:24:32.549 align:start position:0%
so to get started with chat CN we can
head<00:24:30.880> through<00:24:31.039> their<00:24:31.399> documentation<00:24:32.399> and
00:24:32.549 --> 00:24:32.559 align:start position:0%
head through their documentation and
00:24:32.559 --> 00:24:33.830 align:start position:0%
head through their documentation and
then
00:24:33.830 --> 00:24:33.840 align:start position:0%
then
00:24:33.840 --> 00:24:36.029 align:start position:0%
then
installation<00:24:34.840> in<00:24:35.039> this<00:24:35.240> case<00:24:35.440> we're<00:24:35.640> using
00:24:36.029 --> 00:24:36.039 align:start position:0%
installation in this case we're using
00:24:36.039 --> 00:24:39.070 align:start position:0%
installation in this case we're using
vit<00:24:37.039> we<00:24:37.200> already<00:24:37.559> set<00:24:37.720> up<00:24:37.919> the<00:24:38.159> project<00:24:38.720> and<00:24:38.919> we
00:24:39.070 --> 00:24:39.080 align:start position:0%
vit we already set up the project and we
00:24:39.080 --> 00:24:41.789 align:start position:0%
vit we already set up the project and we
already<00:24:39.520> initialized<00:24:40.320> Tailwind<00:24:41.320> next<00:24:41.640> we
00:24:41.789 --> 00:24:41.799 align:start position:0%
already initialized Tailwind next we
00:24:41.799 --> 00:24:44.990 align:start position:0%
already initialized Tailwind next we
have<00:24:41.919> to<00:24:42.080> modify<00:24:42.520> our<00:24:42.799> TS<00:24:43.200> config.js<00:24:44.039> by
00:24:44.990 --> 00:24:45.000 align:start position:0%
have to modify our TS config.js by
00:24:45.000 --> 00:24:47.830 align:start position:0%
have to modify our TS config.js by
adding<00:24:45.440> this<00:24:45.679> thing<00:24:45.960> in<00:24:46.279> paths<00:24:47.200> so<00:24:47.559> we<00:24:47.640> can
00:24:47.830 --> 00:24:47.840 align:start position:0%
adding this thing in paths so we can
00:24:47.840 --> 00:24:50.350 align:start position:0%
adding this thing in paths so we can
open<00:24:48.039> up<00:24:48.240> our<00:24:48.440> file<00:24:48.799> explorer<00:24:49.640> and<00:24:49.840> then<00:24:50.000> go<00:24:50.159> to
00:24:50.350 --> 00:24:50.360 align:start position:0%
open up our file explorer and then go to
00:24:50.360 --> 00:24:55.029 align:start position:0%
open up our file explorer and then go to
TSC<00:24:50.799> config.js<00:24:51.880> so<00:24:52.880> press<00:24:53.200> copy<00:24:53.600> right<00:24:54.039> here
00:24:55.029 --> 00:24:55.039 align:start position:0%
TSC config.js so press copy right here
00:24:55.039 --> 00:24:57.430 align:start position:0%
TSC config.js so press copy right here
go<00:24:55.200> to<00:24:55.320> your<00:24:55.520> file<00:24:55.840> explorer<00:24:56.799> and<00:24:56.960> then<00:24:57.159> go<00:24:57.279> to
00:24:57.430 --> 00:24:57.440 align:start position:0%
go to your file explorer and then go to
00:24:57.440 --> 00:25:01.310 align:start position:0%
go to your file explorer and then go to
TS<00:24:57.880> config.js<00:24:58.720> right<00:24:59.720> here<00:25:00.159> below<00:25:00.480> linting
00:25:01.310 --> 00:25:01.320 align:start position:0%
TS config.js right here below linting
00:25:01.320 --> 00:25:05.710 align:start position:0%
TS config.js right here below linting
we're<00:25:01.480> going<00:25:01.640> to<00:25:01.919> add<00:25:02.360> a<00:25:02.720> Shad<00:25:03.399> CN<00:25:04.399> note<00:25:05.399> and<00:25:05.559> we
00:25:05.710 --> 00:25:05.720 align:start position:0%
we're going to add a Shad CN note and we
00:25:05.720 --> 00:25:07.470 align:start position:0%
we're going to add a Shad CN note and we
can<00:25:05.960> paste<00:25:06.399> the<00:25:06.559> base
00:25:07.470 --> 00:25:07.480 align:start position:0%
can paste the base
00:25:07.480 --> 00:25:10.630 align:start position:0%
can paste the base
URL<00:25:08.480> as<00:25:08.640> well<00:25:08.799> as<00:25:09.080> pads<00:25:09.840> but<00:25:10.000> don't<00:25:10.159> forget<00:25:10.440> to
00:25:10.630 --> 00:25:10.640 align:start position:0%
URL as well as pads but don't forget to
00:25:10.640 --> 00:25:13.710 align:start position:0%
URL as well as pads but don't forget to
add<00:25:10.880> a<00:25:11.080> comma<00:25:11.520> right<00:25:11.760> here<00:25:12.760> next<00:25:13.120> you<00:25:13.279> have<00:25:13.440> to
00:25:13.710 --> 00:25:13.720 align:start position:0%
add a comma right here next you have to
00:25:13.720 --> 00:25:15.870 align:start position:0%
add a comma right here next you have to
install<00:25:14.559> types
00:25:15.870 --> 00:25:15.880 align:start position:0%
install types
00:25:15.880 --> 00:25:18.909 align:start position:0%
install types
node<00:25:16.880> so<00:25:17.080> that<00:25:17.200> the<00:25:17.360> V<00:25:17.679> config<00:25:18.240> can<00:25:18.440> resolve
00:25:18.909 --> 00:25:18.919 align:start position:0%
node so that the V config can resolve
00:25:18.919 --> 00:25:21.389 align:start position:0%
node so that the V config can resolve
paths<00:25:19.360> without<00:25:19.760> errors<00:25:20.760> for<00:25:21.000> that<00:25:21.200> we<00:25:21.279> can
00:25:21.389 --> 00:25:21.399 align:start position:0%
paths without errors for that we can
00:25:21.399 --> 00:25:24.190 align:start position:0%
paths without errors for that we can
open<00:25:21.640> up<00:25:21.960> terminal<00:25:22.960> paste<00:25:23.279> it<00:25:23.679> and<00:25:23.880> press
00:25:24.190 --> 00:25:24.200 align:start position:0%
open up terminal paste it and press
00:25:24.200 --> 00:25:27.389 align:start position:0%
open up terminal paste it and press
enter<00:25:25.200> once<00:25:25.480> installed<00:25:26.159> we<00:25:26.279> can<00:25:26.520> also<00:25:27.080> copy
00:25:27.389 --> 00:25:27.399 align:start position:0%
enter once installed we can also copy
00:25:27.399 --> 00:25:30.389 align:start position:0%
enter once installed we can also copy
our
00:25:30.389 --> 00:25:30.399 align:start position:0%
00:25:30.399 --> 00:25:46.389 align:start position:0%
paths<00:25:31.399> and<00:25:31.520> then<00:25:31.760> go<00:25:31.960> to<00:25:32.279> V.C
00:25:46.389 --> 00:25:46.399 align:start position:0%
00:25:46.399 --> 00:25:49.149 align:start position:0%
config.txt
00:25:49.149 --> 00:25:49.159 align:start position:0%
config.txt
00:25:49.159 --> 00:25:53.350 align:start position:0%
config.txt
in<00:25:50.159> it<00:25:51.120> let's<00:25:51.360> press<00:25:51.720> y<00:25:52.000> to<00:25:52.159> install<00:25:52.520> it<00:25:53.240> and
00:25:53.350 --> 00:25:53.360 align:start position:0%
in it let's press y to install it and
00:25:53.360 --> 00:25:54.990 align:start position:0%
in it let's press y to install it and
then<00:25:53.520> we'll<00:25:53.679> have<00:25:53.799> to<00:25:54.000> answer<00:25:54.240> a<00:25:54.360> couple<00:25:54.600> of
00:25:54.990 --> 00:25:55.000 align:start position:0%
then we'll have to answer a couple of
00:25:55.000 --> 00:25:56.990 align:start position:0%
then we'll have to answer a couple of
questions<00:25:56.000> we<00:25:56.200> would<00:25:56.440> like<00:25:56.640> to<00:25:56.760> use
00:25:56.990 --> 00:25:57.000 align:start position:0%
questions we would like to use
00:25:57.000 --> 00:25:59.750 align:start position:0%
questions we would like to use
typescript<00:25:57.880> yes<00:25:58.600> we<00:25:58.720> would<00:25:58.880> like<00:25:59.080> a<00:25:59.240> default
00:25:59.750 --> 00:25:59.760 align:start position:0%
typescript yes we would like a default
00:25:59.760 --> 00:26:02.430 align:start position:0%
typescript yes we would like a default
style<00:26:00.399> yes<00:26:00.880> we're<00:26:01.039> going<00:26:01.120> to<00:26:01.279> use<00:26:01.600> the<00:26:01.799> Slate
00:26:02.430 --> 00:26:02.440 align:start position:0%
style yes we're going to use the Slate
00:26:02.440 --> 00:26:06.549 align:start position:0%
style yes we're going to use the Slate
Coler<00:26:03.440> our<00:26:03.760> Global<00:26:04.159> CSS<00:26:04.679> file<00:26:05.240> is<00:26:05.640> within
00:26:06.549 --> 00:26:06.559 align:start position:0%
Coler our Global CSS file is within
00:26:06.559 --> 00:26:10.630 align:start position:0%
Coler our Global CSS file is within
Source<00:26:07.559> SLG<00:26:08.440> global.<00:26:09.440> CSS<00:26:10.080> so<00:26:10.240> we<00:26:10.399> have<00:26:10.480> to
00:26:10.630 --> 00:26:10.640 align:start position:0%
Source SLG global. CSS so we have to
00:26:10.640 --> 00:26:14.310 align:start position:0%
Source SLG global. CSS so we have to
modify<00:26:11.559> that<00:26:12.559> we<00:26:12.720> do<00:26:12.960> want<00:26:13.120> to<00:26:13.240> use<00:26:13.480> CSS
00:26:14.310 --> 00:26:14.320 align:start position:0%
modify that we do want to use CSS
00:26:14.320 --> 00:26:17.549 align:start position:0%
modify that we do want to use CSS
variables<00:26:15.320> our<00:26:15.559> Tailwind<00:26:16.039> config<00:26:16.399> JS<00:26:16.799> file<00:26:17.279> is
00:26:17.549 --> 00:26:17.559 align:start position:0%
variables our Tailwind config JS file is
00:26:17.559 --> 00:26:19.310 align:start position:0%
variables our Tailwind config JS file is
located<00:26:18.480> right
00:26:19.310 --> 00:26:19.320 align:start position:0%
located right
00:26:19.320 --> 00:26:22.430 align:start position:0%
located right
here<00:26:20.320> so<00:26:20.480> we<00:26:20.600> can<00:26:20.720> simply<00:26:21.039> press<00:26:21.279> enter<00:26:22.159> and<00:26:22.360> we
00:26:22.430 --> 00:26:22.440 align:start position:0%
here so we can simply press enter and we
00:26:22.440 --> 00:26:24.750 align:start position:0%
here so we can simply press enter and we
can<00:26:22.640> press<00:26:22.840> enter<00:26:23.159> for<00:26:23.360> the<00:26:23.520> import<00:26:23.919> alas<00:26:24.559> as
00:26:24.750 --> 00:26:24.760 align:start position:0%
can press enter for the import alas as
00:26:24.760 --> 00:26:27.669 align:start position:0%
can press enter for the import alas as
well<00:26:25.320> for<00:26:25.559> utils<00:26:26.080> 2<00:26:26.799> and<00:26:26.960> we<00:26:27.080> do<00:26:27.240> want<00:26:27.320> to<00:26:27.440> use
00:26:27.669 --> 00:26:27.679 align:start position:0%
well for utils 2 and we do want to use
00:26:27.679 --> 00:26:29.710 align:start position:0%
well for utils 2 and we do want to use
use<00:26:27.840> react<00:26:28.120> server<00:26:28.440> components<00:26:29.279> and<00:26:29.440> we<00:26:29.559> can
00:26:29.710 --> 00:26:29.720 align:start position:0%
use react server components and we can
00:26:29.720 --> 00:26:32.269 align:start position:0%
use react server components and we can
write<00:26:30.039> a<00:26:30.240> configuration<00:26:30.880> so<00:26:31.080> simply<00:26:31.760> yes<00:26:32.039> yes
00:26:32.269 --> 00:26:32.279 align:start position:0%
write a configuration so simply yes yes
00:26:32.279 --> 00:26:35.110 align:start position:0%
write a configuration so simply yes yes
yes<00:26:32.760> enter<00:26:33.080> enter<00:26:33.360> enter<00:26:33.919> and<00:26:34.080> then<00:26:34.399> y<00:26:34.799> to
00:26:35.110 --> 00:26:35.120 align:start position:0%
yes enter enter enter and then y to
00:26:35.120 --> 00:26:37.310 align:start position:0%
yes enter enter enter and then y to
submit<00:26:35.440> it<00:26:36.279> this<00:26:36.399> is<00:26:36.520> going<00:26:36.679> to<00:26:36.840> install<00:26:37.159> the
00:26:37.310 --> 00:26:37.320 align:start position:0%
submit it this is going to install the
00:26:37.320 --> 00:26:39.549 align:start position:0%
submit it this is going to install the
necessary<00:26:37.799> dependencies<00:26:38.799> and<00:26:39.000> then<00:26:39.240> we'll<00:26:39.399> be
00:26:39.549 --> 00:26:39.559 align:start position:0%
necessary dependencies and then we'll be
00:26:39.559 --> 00:26:42.750 align:start position:0%
necessary dependencies and then we'll be
able<00:26:39.720> to<00:26:39.880> start<00:26:40.240> using<00:26:40.720> shaten<00:26:41.760> components
00:26:42.750 --> 00:26:42.760 align:start position:0%
able to start using shaten components
00:26:42.760 --> 00:26:44.710 align:start position:0%
able to start using shaten components
that's<00:26:43.159> it<00:26:43.559> this<00:26:43.720> was<00:26:43.880> the<00:26:44.039> last<00:26:44.240> step<00:26:44.559> right
00:26:44.710 --> 00:26:44.720 align:start position:0%
that's it this was the last step right
00:26:44.720 --> 00:26:47.830 align:start position:0%
that's it this was the last step right
here<00:26:45.320> now<00:26:45.480> a<00:26:45.679> big<00:26:45.960> difference<00:26:46.600> between<00:26:46.919> shaten
00:26:47.830 --> 00:26:47.840 align:start position:0%
here now a big difference between shaten
00:26:47.840 --> 00:26:50.630 align:start position:0%
here now a big difference between shaten
and<00:26:48.039> other<00:26:48.279> UI<00:26:48.640> libraries<00:26:49.600> is<00:26:49.720> that<00:26:49.880> shaten
00:26:50.630 --> 00:26:50.640 align:start position:0%
and other UI libraries is that shaten
00:26:50.640 --> 00:26:53.310 align:start position:0%
and other UI libraries is that shaten
with<00:26:50.799> this<00:26:51.000> config<00:26:51.760> didn't<00:26:52.200> add<00:26:52.640> absolutely
00:26:53.310 --> 00:26:53.320 align:start position:0%
with this config didn't add absolutely
00:26:53.320 --> 00:26:56.350 align:start position:0%
with this config didn't add absolutely
any<00:26:53.559> code<00:26:53.799> to<00:26:53.919> our<00:26:54.240> project<00:26:55.000> it<00:26:55.120> will<00:26:55.440> only<00:26:56.159> add
00:26:56.350 --> 00:26:56.360 align:start position:0%
any code to our project it will only add
00:26:56.360 --> 00:26:57.909 align:start position:0%
any code to our project it will only add
the<00:26:56.559> code<00:26:57.000> and<00:26:57.159> the<00:26:57.279> component<00:26:57.559> components
00:26:57.909 --> 00:26:57.919 align:start position:0%
the code and the component components
00:26:57.919 --> 00:27:00.029 align:start position:0%
the code and the component components
that<00:26:58.039> we<00:26:58.240> actually<00:26:58.600> need<00:26:59.200> so<00:26:59.360> we'll<00:26:59.559> have<00:26:59.679> to
00:27:00.029 --> 00:27:00.039 align:start position:0%
that we actually need so we'll have to
00:27:00.039 --> 00:27:02.310 align:start position:0%
that we actually need so we'll have to
manually<00:27:00.640> add<00:27:01.159> every<00:27:01.399> single<00:27:01.760> component<00:27:02.200> we
00:27:02.310 --> 00:27:02.320 align:start position:0%
manually add every single component we
00:27:02.320 --> 00:27:04.990 align:start position:0%
manually add every single component we
want<00:27:02.399> to<00:27:02.760> use<00:27:03.760> so<00:27:04.039> let's<00:27:04.200> use<00:27:04.399> their<00:27:04.640> button
00:27:04.990 --> 00:27:05.000 align:start position:0%
want to use so let's use their button
00:27:05.000 --> 00:27:08.110 align:start position:0%
want to use so let's use their button
example<00:27:05.320> to<00:27:05.559> start<00:27:05.880> with<00:27:06.600> copy<00:27:06.919> this<00:27:07.120> command
00:27:08.110 --> 00:27:08.120 align:start position:0%
example to start with copy this command
00:27:08.120 --> 00:27:11.630 align:start position:0%
example to start with copy this command
paste<00:27:08.399> it<00:27:08.559> in<00:27:08.679> the<00:27:08.799> terminal<00:27:09.640> and<00:27:09.840> press<00:27:10.640> enter
00:27:11.630 --> 00:27:11.640 align:start position:0%
paste it in the terminal and press enter
00:27:11.640 --> 00:27:14.070 align:start position:0%
paste it in the terminal and press enter
it's<00:27:11.760> going<00:27:11.919> to<00:27:12.039> say<00:27:12.320> installing<00:27:12.919> button<00:27:13.919> and
00:27:14.070 --> 00:27:14.080 align:start position:0%
it's going to say installing button and
00:27:14.080 --> 00:27:15.789 align:start position:0%
it's going to say installing button and
if<00:27:14.200> you<00:27:14.360> pay<00:27:14.559> close<00:27:14.880> attention<00:27:15.440> you'll<00:27:15.640> be
00:27:15.789 --> 00:27:15.799 align:start position:0%
if you pay close attention you'll be
00:27:15.799 --> 00:27:17.470 align:start position:0%
if you pay close attention you'll be
able<00:27:15.960> to<00:27:16.159> notice<00:27:16.559> that<00:27:16.720> it's<00:27:16.840> going<00:27:17.000> to<00:27:17.159> create
00:27:17.470 --> 00:27:17.480 align:start position:0%
able to notice that it's going to create
00:27:17.480 --> 00:27:20.430 align:start position:0%
able to notice that it's going to create
a<00:27:17.679> complete<00:27:18.240> new<00:27:18.520> folder<00:27:19.080> called<00:27:19.440> components
00:27:20.430 --> 00:27:20.440 align:start position:0%
a complete new folder called components
00:27:20.440 --> 00:27:22.630 align:start position:0%
a complete new folder called components
UI<00:27:21.360> and<00:27:21.559> there's<00:27:21.799> going<00:27:21.919> to<00:27:22.039> be<00:27:22.159> the<00:27:22.279> code<00:27:22.480> for
00:27:22.630 --> 00:27:22.640 align:start position:0%
UI and there's going to be the code for
00:27:22.640 --> 00:27:25.789 align:start position:0%
UI and there's going to be the code for
the<00:27:22.799> button<00:27:23.799> that's<00:27:24.120> why<00:27:24.279> shaten<00:27:24.919> is<00:27:25.000> so<00:27:25.240> cool
00:27:25.789 --> 00:27:25.799 align:start position:0%
the button that's why shaten is so cool
00:27:25.799 --> 00:27:27.630 align:start position:0%
the button that's why shaten is so cool
it<00:27:25.960> doesn't<00:27:26.360> add<00:27:26.640> any<00:27:26.840> code<00:27:27.080> you<00:27:27.159> don't<00:27:27.320> need
00:27:27.630 --> 00:27:27.640 align:start position:0%
it doesn't add any code you don't need
00:27:27.640 --> 00:27:30.510 align:start position:0%
it doesn't add any code you don't need
need<00:27:28.080> it<00:27:28.240> simply<00:27:28.720> adds<00:27:29.279> a<00:27:29.520> button<00:27:29.919> component
00:27:30.510 --> 00:27:30.520 align:start position:0%
need it simply adds a button component
00:27:30.520 --> 00:27:33.430 align:start position:0%
need it simply adds a button component
we<00:27:30.679> just<00:27:30.880> installed<00:27:31.880> and<00:27:32.080> you<00:27:32.200> can<00:27:32.399> modify<00:27:33.039> its
00:27:33.430 --> 00:27:33.440 align:start position:0%
we just installed and you can modify its
00:27:33.440 --> 00:27:35.630 align:start position:0%
we just installed and you can modify its
source<00:27:33.840> code<00:27:34.600> it's<00:27:34.760> not<00:27:34.960> like<00:27:35.080> we'll<00:27:35.240> need<00:27:35.440> to
00:27:35.630 --> 00:27:35.640 align:start position:0%
source code it's not like we'll need to
00:27:35.640 --> 00:27:38.789 align:start position:0%
source code it's not like we'll need to
do<00:27:35.840> that<00:27:36.279> but<00:27:36.559> you<00:27:36.760> can<00:27:37.080> if<00:27:37.200> you<00:27:37.360> want<00:27:37.559> to<00:27:38.399> so
00:27:38.789 --> 00:27:38.799 align:start position:0%
do that but you can if you want to so
00:27:38.799 --> 00:27:40.710 align:start position:0%
do that but you can if you want to so
with<00:27:38.960> that<00:27:39.159> said<00:27:39.640> now<00:27:39.840> we<00:27:40.000> have<00:27:40.320> everything
00:27:40.710 --> 00:27:40.720 align:start position:0%
with that said now we have everything
00:27:40.720 --> 00:27:43.669 align:start position:0%
with that said now we have everything
set<00:27:41.000> up<00:27:41.760> and<00:27:42.000> let's<00:27:42.200> try<00:27:42.399> to<00:27:42.600> use<00:27:42.960> that<00:27:43.159> button
00:27:43.669 --> 00:27:43.679 align:start position:0%
set up and let's try to use that button
00:27:43.679 --> 00:27:45.549 align:start position:0%
set up and let's try to use that button
within<00:27:43.880> our<00:27:44.080> signup<00:27:44.480> form<00:27:45.120> the<00:27:45.240> only<00:27:45.440> thing
00:27:45.549 --> 00:27:45.559 align:start position:0%
within our signup form the only thing
00:27:45.559 --> 00:27:47.870 align:start position:0%
within our signup form the only thing
you<00:27:45.640> need<00:27:45.799> to<00:27:45.919> do<00:27:46.200> to<00:27:46.360> do<00:27:46.600> that<00:27:47.080> is<00:27:47.440> import
00:27:47.870 --> 00:27:47.880 align:start position:0%
you need to do to do that is import
00:27:47.880 --> 00:27:50.230 align:start position:0%
you need to do to do that is import
button<00:27:48.200> from<00:27:48.480> component<00:27:48.960> UI<00:27:49.320> button<00:27:49.919> and<00:27:50.080> then
00:27:50.230 --> 00:27:50.240 align:start position:0%
button from component UI button and then
00:27:50.240 --> 00:27:52.990 align:start position:0%
button from component UI button and then
use<00:27:50.480> it<00:27:50.880> so<00:27:51.200> back<00:27:51.399> in<00:27:51.559> our<00:27:51.799> app<00:27:52.240> let's<00:27:52.440> do<00:27:52.720> just
00:27:52.990 --> 00:27:53.000 align:start position:0%
use it so back in our app let's do just
00:27:53.000 --> 00:27:55.190 align:start position:0%
use it so back in our app let's do just
that<00:27:53.519> import<00:27:53.960> button<00:27:54.399> we're<00:27:54.559> going<00:27:54.679> to<00:27:54.880> copy
00:27:55.190 --> 00:27:55.200 align:start position:0%
that import button we're going to copy
00:27:55.200 --> 00:27:57.950 align:start position:0%
that import button we're going to copy
this<00:27:55.559> button<00:27:56.559> and<00:27:56.799> just<00:27:56.960> use<00:27:57.120> it<00:27:57.279> right<00:27:57.640> here
00:27:57.950 --> 00:27:57.960 align:start position:0%
this button and just use it right here
00:27:57.960 --> 00:27:59.389 align:start position:0%
this button and just use it right here
within<00:27:58.279> this
00:27:59.389 --> 00:27:59.399 align:start position:0%
within this
00:27:59.399 --> 00:28:02.509 align:start position:0%
within this
div<00:28:00.399> let's<00:28:00.640> press<00:28:00.919> save<00:28:01.640> and<00:28:01.960> back<00:28:02.120> in<00:28:02.240> our
00:28:02.509 --> 00:28:02.519 align:start position:0%
div let's press save and back in our
00:28:02.519 --> 00:28:05.669 align:start position:0%
div let's press save and back in our
application<00:28:03.519> if<00:28:03.640> you<00:28:03.840> go<00:28:04.000> to<00:28:04.279> for<00:28:04.720> slash
00:28:05.669 --> 00:28:05.679 align:start position:0%
application if you go to for slash
00:28:05.679 --> 00:28:07.789 align:start position:0%
application if you go to for slash
sign-up<00:28:06.679> which<00:28:06.799> is<00:28:06.919> the<00:28:07.080> route<00:28:07.360> for<00:28:07.600> our
00:28:07.789 --> 00:28:07.799 align:start position:0%
sign-up which is the route for our
00:28:07.799 --> 00:28:08.789 align:start position:0%
sign-up which is the route for our
signup
00:28:08.789 --> 00:28:08.799 align:start position:0%
signup
00:28:08.799 --> 00:28:12.070 align:start position:0%
signup
page<00:28:09.799> you<00:28:09.880> can<00:28:10.039> see<00:28:10.240> the<00:28:10.440> O<00:28:10.960> layout<00:28:11.840> that's
00:28:12.070 --> 00:28:12.080 align:start position:0%
page you can see the O layout that's
00:28:12.080 --> 00:28:14.430 align:start position:0%
page you can see the O layout that's
correct<00:28:12.720> and<00:28:12.919> the<00:28:13.039> reason<00:28:13.240> for<00:28:13.519> that<00:28:13.880> is<00:28:14.120> that
00:28:14.430 --> 00:28:14.440 align:start position:0%
correct and the reason for that is that
00:28:14.440 --> 00:28:17.230 align:start position:0%
correct and the reason for that is that
our<00:28:14.880> o<00:28:15.360> layout<00:28:16.000> it's<00:28:16.240> not<00:28:16.440> returning<00:28:16.960> any
00:28:17.230 --> 00:28:17.240 align:start position:0%
our o layout it's not returning any
00:28:17.240 --> 00:28:19.669 align:start position:0%
our o layout it's not returning any
pages<00:28:17.679> that<00:28:17.799> are<00:28:18.000> within<00:28:18.279> it<00:28:18.960> so<00:28:19.240> to<00:28:19.360> be<00:28:19.519> able
00:28:19.669 --> 00:28:19.679 align:start position:0%
pages that are within it so to be able
00:28:19.679 --> 00:28:22.230 align:start position:0%
pages that are within it so to be able
to<00:28:19.799> see<00:28:20.120> this<00:28:20.279> button<00:28:20.919> let's<00:28:21.159> first<00:28:21.559> focus<00:28:22.000> on
00:28:22.230 --> 00:28:22.240 align:start position:0%
to see this button let's first focus on
00:28:22.240 --> 00:28:24.070 align:start position:0%
to see this button let's first focus on
implementing<00:28:22.840> the<00:28:23.039> O
00:28:24.070 --> 00:28:24.080 align:start position:0%
implementing the O
00:28:24.080 --> 00:28:26.950 align:start position:0%
implementing the O
layout<00:28:25.080> the<00:28:25.240> only<00:28:25.559> thing<00:28:25.720> we'll<00:28:25.960> need<00:28:26.240> in<00:28:26.480> here
00:28:26.950 --> 00:28:26.960 align:start position:0%
layout the only thing we'll need in here
00:28:26.960 --> 00:28:29.430 align:start position:0%
layout the only thing we'll need in here
are<00:28:27.480> two<00:28:27.840> special<00:28:28.240> components<00:28:28.799> from<00:28:29.000> react
00:28:29.430 --> 00:28:29.440 align:start position:0%
are two special components from react
00:28:29.440 --> 00:28:32.430 align:start position:0%
are two special components from react
router<00:28:29.840> Dom<00:28:30.840> so<00:28:31.080> let's<00:28:31.320> import<00:28:31.760> a<00:28:31.919> component
00:28:32.430 --> 00:28:32.440 align:start position:0%
router Dom so let's import a component
00:28:32.440 --> 00:28:34.870 align:start position:0%
router Dom so let's import a component
called<00:28:32.840> Outlet<00:28:33.840> interesting<00:28:34.279> name<00:28:34.640> I'm<00:28:34.760> going
00:28:34.870 --> 00:28:34.880 align:start position:0%
called Outlet interesting name I'm going
00:28:34.880 --> 00:28:36.950 align:start position:0%
called Outlet interesting name I'm going
to<00:28:35.000> soon<00:28:35.279> let<00:28:35.480> you<00:28:35.600> know<00:28:35.799> what<00:28:35.919> it<00:28:36.080> does<00:28:36.799> and
00:28:36.950 --> 00:28:36.960 align:start position:0%
to soon let you know what it does and
00:28:36.960 --> 00:28:39.630 align:start position:0%
to soon let you know what it does and
then<00:28:37.399> navigate<00:28:38.399> and<00:28:38.640> we<00:28:38.760> can<00:28:38.960> import<00:28:39.360> that
00:28:39.630 --> 00:28:39.640 align:start position:0%
then navigate and we can import that
00:28:39.640 --> 00:28:42.230 align:start position:0%
then navigate and we can import that
from<00:28:40.200> react<00:28:40.880> router
00:28:42.230 --> 00:28:42.240 align:start position:0%
from react router
00:28:42.240 --> 00:28:44.669 align:start position:0%
from react router
Dom<00:28:43.240> now<00:28:43.559> later<00:28:43.799> on<00:28:44.000> we'll<00:28:44.200> have<00:28:44.279> to<00:28:44.440> figure
00:28:44.669 --> 00:28:44.679 align:start position:0%
Dom now later on we'll have to figure
00:28:44.679 --> 00:28:47.590 align:start position:0%
Dom now later on we'll have to figure
out<00:28:44.960> if<00:28:45.080> a<00:28:45.240> user<00:28:45.640> is<00:28:46.080> authenticated<00:28:47.080> so<00:28:47.320> for
00:28:47.590 --> 00:28:47.600 align:start position:0%
out if a user is authenticated so for
00:28:47.600 --> 00:28:50.230 align:start position:0%
out if a user is authenticated so for
now<00:28:47.960> we<00:28:48.080> can<00:28:48.240> simply<00:28:48.559> say<00:28:48.960> is
00:28:50.230 --> 00:28:50.240 align:start position:0%
now we can simply say is
00:28:50.240 --> 00:28:53.269 align:start position:0%
now we can simply say is
authenticated<00:28:51.240> is<00:28:51.600> equal<00:28:51.919> to<00:28:52.519> let's<00:28:52.720> do<00:28:52.880> fals
00:28:53.269 --> 00:28:53.279 align:start position:0%
authenticated is equal to let's do fals
00:28:53.279 --> 00:28:56.029 align:start position:0%
authenticated is equal to let's do fals
for<00:28:53.519> now<00:28:54.240> later<00:28:54.519> on<00:28:55.039> this<00:28:55.159> is<00:28:55.320> going<00:28:55.480> to<00:28:55.640> be<00:28:55.840> a
00:28:56.029 --> 00:28:56.039 align:start position:0%
for now later on this is going to be a
00:28:56.039 --> 00:28:59.029 align:start position:0%
for now later on this is going to be a
dynamic<00:28:56.640> value<00:28:57.600> based<00:28:58.039> off<00:28:58.399> this<00:28:58.559> Boolean
00:28:59.029 --> 00:28:59.039 align:start position:0%
dynamic value based off this Boolean
00:28:59.039 --> 00:29:03.590 align:start position:0%
dynamic value based off this Boolean
variable<00:28:59.919> we<00:29:00.080> can<00:29:00.440> return<00:29:01.080> a<00:29:01.279> react
00:29:03.590 --> 00:29:03.600 align:start position:0%
variable we can return a react
00:29:03.600 --> 00:29:06.710 align:start position:0%
variable we can return a react
fragment<00:29:04.600> but<00:29:04.880> then<00:29:05.640> we<00:29:05.799> can<00:29:06.039> open<00:29:06.320> a<00:29:06.480> new
00:29:06.710 --> 00:29:06.720 align:start position:0%
fragment but then we can open a new
00:29:06.720 --> 00:29:10.789 align:start position:0%
fragment but then we can open a new
Dynamic<00:29:07.159> block<00:29:07.399> of<00:29:07.600> code<00:29:08.279> and<00:29:08.440> say<00:29:08.799> if<00:29:09.600> is
00:29:10.789 --> 00:29:10.799 align:start position:0%
Dynamic block of code and say if is
00:29:10.799 --> 00:29:13.669 align:start position:0%
Dynamic block of code and say if is
authenticated<00:29:11.799> in<00:29:12.080> that<00:29:12.320> case<00:29:12.720> if<00:29:12.880> we<00:29:13.039> are
00:29:13.669 --> 00:29:13.679 align:start position:0%
authenticated in that case if we are
00:29:13.679 --> 00:29:17.310 align:start position:0%
authenticated in that case if we are
authenticated<00:29:14.679> we<00:29:14.799> can<00:29:15.159> return<00:29:15.799> a<00:29:16.320> navigate
00:29:17.310 --> 00:29:17.320 align:start position:0%
authenticated we can return a navigate
00:29:17.320 --> 00:29:20.549 align:start position:0%
authenticated we can return a navigate
to<00:29:18.320> forward<00:29:18.840> slash<00:29:19.640> so<00:29:19.799> we<00:29:19.880> want<00:29:20.039> to<00:29:20.200> navigate
00:29:20.549 --> 00:29:20.559 align:start position:0%
to forward slash so we want to navigate
00:29:20.559 --> 00:29:23.350 align:start position:0%
to forward slash so we want to navigate
the<00:29:20.640> user<00:29:20.880> to<00:29:21.039> the<00:29:21.159> home<00:29:22.039> but<00:29:22.200> if<00:29:22.320> we're<00:29:22.600> not
00:29:23.350 --> 00:29:23.360 align:start position:0%
the user to the home but if we're not
00:29:23.360 --> 00:29:26.310 align:start position:0%
the user to the home but if we're not
authenticated<00:29:24.360> in<00:29:24.600> that<00:29:24.840> case<00:29:25.159> we<00:29:25.279> can
00:29:26.310 --> 00:29:26.320 align:start position:0%
authenticated in that case we can
00:29:26.320 --> 00:29:28.509 align:start position:0%
authenticated in that case we can
return<00:29:27.399> a<00:29:27.559> react
00:29:28.509 --> 00:29:28.519 align:start position:0%
return a react
00:29:28.519 --> 00:29:31.870 align:start position:0%
return a react
fragment<00:29:29.519> like<00:29:29.919> this<00:29:30.919> that's<00:29:31.120> going<00:29:31.320> to<00:29:31.559> have
00:29:31.870 --> 00:29:31.880 align:start position:0%
fragment like this that's going to have
00:29:31.880 --> 00:29:35.549 align:start position:0%
fragment like this that's going to have
a<00:29:32.120> section<00:29:32.720> within<00:29:33.399> it<00:29:34.399> and<00:29:34.720> that<00:29:34.960> section<00:29:35.440> is
00:29:35.549 --> 00:29:35.559 align:start position:0%
a section within it and that section is
00:29:35.559 --> 00:29:38.389 align:start position:0%
a section within it and that section is
going<00:29:35.720> to<00:29:35.840> render<00:29:36.240> the<00:29:36.440> outlet<00:29:37.440> meaning<00:29:38.159> what
00:29:38.389 --> 00:29:38.399 align:start position:0%
going to render the outlet meaning what
00:29:38.399 --> 00:29:40.870 align:start position:0%
going to render the outlet meaning what
has<00:29:38.559> to<00:29:38.760> be<00:29:39.000> on<00:29:39.159> the<00:29:39.360> page<00:29:39.559> we're<00:29:39.760> on<00:29:40.320> such<00:29:40.519> as
00:29:40.870 --> 00:29:40.880 align:start position:0%
has to be on the page we're on such as
00:29:40.880 --> 00:29:44.190 align:start position:0%
has to be on the page we're on such as
sign<00:29:41.159> up<00:29:41.600> or<00:29:41.840> sign<00:29:42.120> in<00:29:42.760> whatever<00:29:43.320> is<00:29:43.720> Within
00:29:44.190 --> 00:29:44.200 align:start position:0%
sign up or sign in whatever is Within
00:29:44.200 --> 00:29:47.190 align:start position:0%
sign up or sign in whatever is Within
These<00:29:44.720> pages<00:29:45.159> right<00:29:45.399> here<00:29:46.200> great<00:29:46.799> so<00:29:47.000> now
00:29:47.190 --> 00:29:47.200 align:start position:0%
These pages right here great so now
00:29:47.200 --> 00:29:50.350 align:start position:0%
These pages right here great so now
let's<00:29:47.440> save<00:29:47.760> this<00:29:48.480> go<00:29:48.720> back<00:29:48.880> to<00:29:49.039> our<00:29:49.279> app<00:29:50.120> and
00:29:50.350 --> 00:29:50.360 align:start position:0%
let's save this go back to our app and
00:29:50.360 --> 00:29:53.909 align:start position:0%
let's save this go back to our app and
you<00:29:50.440> can<00:29:50.600> see<00:29:50.880> a<00:29:51.039> wonderful<00:29:51.880> click<00:29:52.159> me<00:29:52.919> button
00:29:53.909 --> 00:29:53.919 align:start position:0%
you can see a wonderful click me button
00:29:53.919 --> 00:29:56.070 align:start position:0%
you can see a wonderful click me button
great<00:29:54.519> now<00:29:54.720> let's<00:29:54.919> go<00:29:55.120> back<00:29:55.279> to<00:29:55.399> the<00:29:55.559> normal
00:29:56.070 --> 00:29:56.080 align:start position:0%
great now let's go back to the normal
00:29:56.080 --> 00:29:58.430 align:start position:0%
great now let's go back to the normal
size<00:29:57.080> and<00:29:57.440> let's<00:29:57.720> actually<00:29:58.039> start
00:29:58.430 --> 00:29:58.440 align:start position:0%
size and let's actually start
00:29:58.440 --> 00:30:01.070 align:start position:0%
size and let's actually start
implementing<00:29:59.440> what<00:29:59.679> we<00:29:59.799> can<00:29:59.960> see<00:30:00.480> here<00:30:00.799> on<00:30:00.960> the
00:30:01.070 --> 00:30:01.080 align:start position:0%
implementing what we can see here on the
00:30:01.080 --> 00:30:04.350 align:start position:0%
implementing what we can see here on the
finished<00:30:01.480> website<00:30:02.440> a<00:30:02.679> complete<00:30:03.480> sign<00:30:03.760> up<00:30:04.159> and
00:30:04.350 --> 00:30:04.360 align:start position:0%
finished website a complete sign up and
00:30:04.360 --> 00:30:07.269 align:start position:0%
finished website a complete sign up and
sign-in<00:30:04.880> pages<00:30:05.519> with<00:30:05.720> the<00:30:05.919> design<00:30:06.720> and<00:30:07.080> the
00:30:07.269 --> 00:30:07.279 align:start position:0%
sign-in pages with the design and the
00:30:07.279 --> 00:30:10.310 align:start position:0%
sign-in pages with the design and the
forms<00:30:08.279> to<00:30:08.440> do<00:30:08.679> that<00:30:08.960> we<00:30:09.080> can<00:30:09.320> first<00:30:09.760> style<00:30:10.159> the
00:30:10.310 --> 00:30:10.320 align:start position:0%
forms to do that we can first style the
00:30:10.320 --> 00:30:13.509 align:start position:0%
forms to do that we can first style the
layout<00:30:10.679> a<00:30:11.120> bit<00:30:12.120> by<00:30:12.279> giving<00:30:12.559> this<00:30:12.760> section<00:30:13.279> A
00:30:13.509 --> 00:30:13.519 align:start position:0%
layout a bit by giving this section A
00:30:13.519 --> 00:30:18.149 align:start position:0%
layout a bit by giving this section A
Class<00:30:13.840> name<00:30:14.559> equal<00:30:14.880> to<00:30:15.640> flex<00:30:16.640> Flex
00:30:18.149 --> 00:30:18.159 align:start position:0%
Class name equal to flex Flex
00:30:18.159 --> 00:30:20.909 align:start position:0%
Class name equal to flex Flex
D1<00:30:19.159> justify<00:30:19.840> Dash
00:30:20.909 --> 00:30:20.919 align:start position:0%
D1 justify Dash
00:30:20.919 --> 00:30:22.990 align:start position:0%
D1 justify Dash
Center<00:30:21.919> so<00:30:22.080> we<00:30:22.200> need<00:30:22.320> to<00:30:22.440> ensure<00:30:22.720> that<00:30:22.880> the
00:30:22.990 --> 00:30:23.000 align:start position:0%
Center so we need to ensure that the
00:30:23.000 --> 00:30:26.269 align:start position:0%
Center so we need to ensure that the
form<00:30:23.440> is<00:30:23.679> centered<00:30:24.279> horizontally<00:30:25.279> as<00:30:25.440> well<00:30:25.679> as
00:30:26.269 --> 00:30:26.279 align:start position:0%
form is centered horizontally as well as
00:30:26.279 --> 00:30:28.110 align:start position:0%
form is centered horizontally as well as
items<00:30:26.760> Das<00:30:26.960> Center<00:30:27.600> which<00:30:27.720> is<00:30:27.840> going<00:30:28.000> to
00:30:28.110 --> 00:30:28.120 align:start position:0%
items Das Center which is going to
00:30:28.120 --> 00:30:30.669 align:start position:0%
items Das Center which is going to
center<00:30:28.399> it<00:30:28.880> vertically<00:30:29.880> it's<00:30:30.039> going<00:30:30.200> to<00:30:30.360> be
00:30:30.669 --> 00:30:30.679 align:start position:0%
center it vertically it's going to be
00:30:30.679 --> 00:30:33.430 align:start position:0%
center it vertically it's going to be
one<00:30:30.919> below<00:30:31.240> another<00:30:31.720> so<00:30:32.240> flex-all<00:30:33.240> and
00:30:33.430 --> 00:30:33.440 align:start position:0%
one below another so flex-all and
00:30:33.440 --> 00:30:35.909 align:start position:0%
one below another so flex-all and
padding<00:30:33.840> y<00:30:34.120> of<00:30:34.320> 10<00:30:34.760> meaning<00:30:35.120> padding<00:30:35.519> on<00:30:35.720> top
00:30:35.909 --> 00:30:35.919 align:start position:0%
padding y of 10 meaning padding on top
00:30:35.919 --> 00:30:38.269 align:start position:0%
padding y of 10 meaning padding on top
and<00:30:36.120> bottom<00:30:37.120> this<00:30:37.240> is<00:30:37.360> going<00:30:37.519> to<00:30:37.679> now<00:30:37.919> Center
00:30:38.269 --> 00:30:38.279 align:start position:0%
and bottom this is going to now Center
00:30:38.279 --> 00:30:40.269 align:start position:0%
and bottom this is going to now Center
it<00:30:38.760> but<00:30:38.919> on<00:30:39.080> the<00:30:39.279> right<00:30:39.519> side<00:30:39.640> of<00:30:39.760> the<00:30:39.880> screen
00:30:40.269 --> 00:30:40.279 align:start position:0%
it but on the right side of the screen
00:30:40.279 --> 00:30:42.789 align:start position:0%
it but on the right side of the screen
we<00:30:40.399> want<00:30:40.519> to<00:30:40.640> show<00:30:40.960> this<00:30:41.200> beautiful<00:30:41.720> image<00:30:42.600> so
00:30:42.789 --> 00:30:42.799 align:start position:0%
we want to show this beautiful image so
00:30:42.799 --> 00:30:45.430 align:start position:0%
we want to show this beautiful image so
to<00:30:42.960> do<00:30:43.159> that<00:30:43.480> we<00:30:43.600> can<00:30:43.720> render<00:30:44.080> a<00:30:44.440> self-closing
00:30:45.430 --> 00:30:45.440 align:start position:0%
to do that we can render a self-closing
00:30:45.440 --> 00:30:48.710 align:start position:0%
to do that we can render a self-closing
image<00:30:45.880> tag<00:30:46.880> that's<00:30:47.080> going<00:30:47.240> to<00:30:47.440> have<00:30:47.679> a<00:30:47.880> source
00:30:48.710 --> 00:30:48.720 align:start position:0%
image tag that's going to have a source
00:30:48.720 --> 00:30:51.350 align:start position:0%
image tag that's going to have a source
off<00:30:49.720> and<00:30:49.919> now<00:30:50.440> how<00:30:50.600> are<00:30:50.679> we<00:30:50.799> going<00:30:50.960> to<00:30:51.080> get
00:30:51.350 --> 00:30:51.360 align:start position:0%
off and now how are we going to get
00:30:51.360 --> 00:30:53.590 align:start position:0%
off and now how are we going to get
access<00:30:51.640> to<00:30:51.760> this<00:30:51.960> image<00:30:52.600> I<00:30:52.760> created<00:30:53.159> a<00:30:53.360> few
00:30:53.590 --> 00:30:53.600 align:start position:0%
access to this image I created a few
00:30:53.600 --> 00:30:55.750 align:start position:0%
access to this image I created a few
wonderful<00:30:54.200> assets<00:30:54.720> that<00:30:54.960> I<00:30:55.080> want<00:30:55.279> you<00:30:55.440> to<00:30:55.600> be
00:30:55.750 --> 00:30:55.760 align:start position:0%
wonderful assets that I want you to be
00:30:55.760 --> 00:30:57.909 align:start position:0%
wonderful assets that I want you to be
able<00:30:55.960> to<00:30:56.159> use<00:30:56.960> so<00:30:57.240> so<00:30:57.440> down<00:30:57.639> in<00:30:57.760> the
00:30:57.909 --> 00:30:57.919 align:start position:0%
able to use so so down in the
00:30:57.919 --> 00:31:00.190 align:start position:0%
able to use so so down in the
description<00:30:58.679> in<00:30:58.919> that<00:30:59.200> same<00:30:59.559> GitHub<00:30:59.919> gist
00:31:00.190 --> 00:31:00.200 align:start position:0%
description in that same GitHub gist
00:31:00.200 --> 00:31:02.190 align:start position:0%
description in that same GitHub gist
folder<00:31:00.720> where<00:31:00.880> the<00:31:01.039> code<00:31:01.320> is<00:31:01.679> you'll<00:31:01.880> be<00:31:02.000> able
00:31:02.190 --> 00:31:02.200 align:start position:0%
folder where the code is you'll be able
00:31:02.200 --> 00:31:05.470 align:start position:0%
folder where the code is you'll be able
to<00:31:02.360> find<00:31:02.679> a<00:31:02.880> link<00:31:03.279> to<00:31:03.480> a<00:31:03.679> zipped<00:31:04.200> public<00:31:04.519> folder
00:31:05.470 --> 00:31:05.480 align:start position:0%
to find a link to a zipped public folder
00:31:05.480 --> 00:31:08.750 align:start position:0%
to find a link to a zipped public folder
download<00:31:06.000> it<00:31:06.600> unzip<00:31:07.120> it<00:31:07.559> delete<00:31:08.120> the<00:31:08.320> existing
00:31:08.750 --> 00:31:08.760 align:start position:0%
download it unzip it delete the existing
00:31:08.760 --> 00:31:11.389 align:start position:0%
download it unzip it delete the existing
public<00:31:09.039> folder<00:31:10.000> and<00:31:10.200> then<00:31:10.519> simply<00:31:10.919> paste<00:31:11.240> the
00:31:11.389 --> 00:31:11.399 align:start position:0%
public folder and then simply paste the
00:31:11.399 --> 00:31:15.310 align:start position:0%
public folder and then simply paste the
new<00:31:11.600> one<00:31:12.320> right<00:31:13.240> here<00:31:14.240> not<00:31:14.559> within<00:31:14.799> the<00:31:14.919> source
00:31:15.310 --> 00:31:15.320 align:start position:0%
new one right here not within the source
00:31:15.320 --> 00:31:17.870 align:start position:0%
new one right here not within the source
like<00:31:15.519> I<00:31:15.720> did<00:31:16.120> it<00:31:16.320> happens<00:31:16.960> you<00:31:17.120> have<00:31:17.279> to<00:31:17.440> put<00:31:17.600> it
00:31:17.870 --> 00:31:17.880 align:start position:0%
like I did it happens you have to put it
00:31:17.880 --> 00:31:20.669 align:start position:0%
like I did it happens you have to put it
right<00:31:18.120> here<00:31:18.519> outside<00:31:19.240> of<00:31:19.480> everything<00:31:20.240> so<00:31:20.480> it
00:31:20.669 --> 00:31:20.679 align:start position:0%
right here outside of everything so it
00:31:20.679 --> 00:31:23.950 align:start position:0%
right here outside of everything so it
appears<00:31:21.120> on<00:31:21.519> top<00:31:21.880> of<00:31:22.039> the<00:31:22.159> source<00:31:22.720> folder<00:31:23.720> and
00:31:23.950 --> 00:31:23.960 align:start position:0%
appears on top of the source folder and
00:31:23.960 --> 00:31:25.509 align:start position:0%
appears on top of the source folder and
once<00:31:24.120> you<00:31:24.240> have<00:31:24.399> it<00:31:24.639> there<00:31:24.919> you'll<00:31:25.120> be<00:31:25.240> able<00:31:25.440> to
00:31:25.509 --> 00:31:25.519 align:start position:0%
once you have it there you'll be able to
00:31:25.519 --> 00:31:28.830 align:start position:0%
once you have it there you'll be able to
see<00:31:25.760> the<00:31:25.960> assets<00:31:26.519> that<00:31:26.679> contain<00:31:27.279> icons<00:31:28.000> and
00:31:28.830 --> 00:31:28.840 align:start position:0%
see the assets that contain icons and
00:31:28.840 --> 00:31:31.470 align:start position:0%
see the assets that contain icons and
images<00:31:29.840> which<00:31:30.000> means<00:31:30.559> that<00:31:30.720> we<00:31:30.840> can<00:31:31.080> Define
00:31:31.470 --> 00:31:31.480 align:start position:0%
images which means that we can Define
00:31:31.480 --> 00:31:33.990 align:start position:0%
images which means that we can Define
our<00:31:31.880> path<00:31:32.440> right<00:31:32.679> here<00:31:33.360> it's<00:31:33.519> going<00:31:33.679> to<00:31:33.799> be
00:31:33.990 --> 00:31:34.000 align:start position:0%
our path right here it's going to be
00:31:34.000 --> 00:31:39.509 align:start position:0%
our path right here it's going to be
for/<00:31:35.159> assets<00:31:36.159> slash<00:31:36.760> images
00:31:39.509 --> 00:31:39.519 align:start position:0%
for/ assets slash images
00:31:39.519 --> 00:31:43.430 align:start position:0%
for/ assets slash images
slide-img<00:31:40.519> do<00:31:41.120> SVG<00:31:42.120> the<00:31:42.279> alt<00:31:42.760> is<00:31:42.880> going<00:31:43.039> to<00:31:43.240> be
00:31:43.430 --> 00:31:43.440 align:start position:0%
slide-img do SVG the alt is going to be
00:31:43.440 --> 00:31:46.750 align:start position:0%
slide-img do SVG the alt is going to be
logo<00:31:44.360> and<00:31:44.679> class<00:31:45.080> name<00:31:45.519> is<00:31:45.720> going<00:31:45.880> to<00:31:46.080> be
00:31:46.750 --> 00:31:46.760 align:start position:0%
logo and class name is going to be
00:31:46.760 --> 00:31:49.190 align:start position:0%
logo and class name is going to be
hidden<00:31:47.519> so<00:31:47.760> usually<00:31:48.080> on<00:31:48.240> mobile<00:31:48.600> devices<00:31:49.080> it
00:31:49.190 --> 00:31:49.200 align:start position:0%
hidden so usually on mobile devices it
00:31:49.200 --> 00:31:51.549 align:start position:0%
hidden so usually on mobile devices it
will<00:31:49.320> be<00:31:49.519> hidden<00:31:50.399> but<00:31:50.559> on<00:31:50.760> extra<00:31:51.240> large
00:31:51.549 --> 00:31:51.559 align:start position:0%
will be hidden but on extra large
00:31:51.559 --> 00:31:53.830 align:start position:0%
will be hidden but on extra large
devices<00:31:52.240> it<00:31:52.360> will<00:31:52.519> be<00:31:52.679> showing<00:31:53.240> so<00:31:53.399> it's<00:31:53.480> a
00:31:53.830 --> 00:31:53.840 align:start position:0%
devices it will be showing so it's a
00:31:53.840 --> 00:31:56.509 align:start position:0%
devices it will be showing so it's a
block<00:31:54.840> we<00:31:54.960> wanted<00:31:55.279> to<00:31:55.440> take<00:31:55.639> the<00:31:55.799> full<00:31:56.240> height
00:31:56.509 --> 00:31:56.519 align:start position:0%
block we wanted to take the full height
00:31:56.519 --> 00:31:59.710 align:start position:0%
block we wanted to take the full height
of<00:31:56.639> the<00:31:56.760> screen<00:31:57.360> so<00:31:57.519> h-<00:31:58.080> screen<00:31:59.080> the<00:31:59.240> width<00:31:59.559> is
00:31:59.710 --> 00:31:59.720 align:start position:0%
of the screen so h- screen the width is
00:31:59.720 --> 00:32:03.070 align:start position:0%
of the screen so h- screen the width is
going<00:31:59.840> to<00:32:00.000> be<00:32:00.159> 1/2<00:32:00.880> so<00:32:01.120> 1/<00:32:01.639> two<00:32:02.600> it's<00:32:02.760> going<00:32:02.919> to
00:32:03.070 --> 00:32:03.080 align:start position:0%
going to be 1/2 so 1/ two it's going to
00:32:03.080 --> 00:32:08.509 align:start position:0%
going to be 1/2 so 1/ two it's going to
be<00:32:03.360> object<00:32:03.799> cover<00:32:04.679> and<00:32:05.159> BG<00:32:05.840> no<00:32:06.799> repeat<00:32:07.799> great
00:32:08.509 --> 00:32:08.519 align:start position:0%
be object cover and BG no repeat great
00:32:08.519 --> 00:32:10.590 align:start position:0%
be object cover and BG no repeat great
so<00:32:08.799> now<00:32:09.039> that<00:32:09.200> we<00:32:09.279> have<00:32:09.440> modified<00:32:10.000> our<00:32:10.200> o
00:32:10.590 --> 00:32:10.600 align:start position:0%
so now that we have modified our o
00:32:10.600 --> 00:32:13.710 align:start position:0%
so now that we have modified our o
layout<00:32:11.320> we<00:32:11.440> can<00:32:11.639> close<00:32:11.960> it<00:32:12.760> and<00:32:13.000> if<00:32:13.159> we<00:32:13.320> go<00:32:13.559> back
00:32:13.710 --> 00:32:13.720 align:start position:0%
layout we can close it and if we go back
00:32:13.720 --> 00:32:15.870 align:start position:0%
layout we can close it and if we go back
to<00:32:13.880> our<00:32:14.080> website<00:32:14.720> it's<00:32:14.919> going<00:32:15.080> to<00:32:15.320> look<00:32:15.639> like
00:32:15.870 --> 00:32:15.880 align:start position:0%
to our website it's going to look like
00:32:15.880 --> 00:32:18.509 align:start position:0%
to our website it's going to look like
this<00:32:16.639> pretty<00:32:16.919> cool<00:32:17.279> right<00:32:17.760> we<00:32:17.919> have<00:32:18.039> the<00:32:18.240> right
00:32:18.509 --> 00:32:18.519 align:start position:0%
this pretty cool right we have the right
00:32:18.519 --> 00:32:20.470 align:start position:0%
this pretty cool right we have the right
side<00:32:18.760> which<00:32:18.880> is<00:32:19.000> the<00:32:19.159> image<00:32:19.760> and<00:32:19.960> then<00:32:20.200> we<00:32:20.320> have
00:32:20.470 --> 00:32:20.480 align:start position:0%
side which is the image and then we have
00:32:20.480 --> 00:32:22.789 align:start position:0%
side which is the image and then we have
the<00:32:20.639> button<00:32:20.960> on<00:32:21.200> the<00:32:21.360> left<00:32:21.600> side<00:32:22.279> which<00:32:22.600> right
00:32:22.789 --> 00:32:22.799 align:start position:0%
the button on the left side which right
00:32:22.799 --> 00:32:25.629 align:start position:0%
the button on the left side which right
now<00:32:23.120> doesn't<00:32:23.440> do<00:32:23.799> absolutely<00:32:24.399> anything<00:32:25.279> but
00:32:25.629 --> 00:32:25.639 align:start position:0%
now doesn't do absolutely anything but
00:32:25.639 --> 00:32:28.509 align:start position:0%
now doesn't do absolutely anything but
soon<00:32:26.000> enough<00:32:26.480> it<00:32:26.639> will<00:32:27.519> that's<00:32:27.799> because<00:32:28.240> we'll
00:32:28.509 --> 00:32:28.519 align:start position:0%
soon enough it will that's because we'll
00:32:28.519 --> 00:32:31.070 align:start position:0%
soon enough it will that's because we'll
create<00:32:29.000> a<00:32:29.279> comprehensive<00:32:30.159> sign<00:32:30.440> up<00:32:30.799> and
00:32:31.070 --> 00:32:31.080 align:start position:0%
create a comprehensive sign up and
00:32:31.080 --> 00:32:34.269 align:start position:0%
create a comprehensive sign up and
sign-in<00:32:31.559> form<00:32:32.360> and<00:32:32.480> we'll<00:32:32.679> do<00:32:32.960> that<00:32:33.399> using
00:32:34.269 --> 00:32:34.279 align:start position:0%
sign-in form and we'll do that using
00:32:34.279 --> 00:32:37.110 align:start position:0%
sign-in form and we'll do that using
shaten<00:32:35.279> most<00:32:35.679> comprehensive<00:32:36.559> and<00:32:36.760> most
00:32:37.110 --> 00:32:37.120 align:start position:0%
shaten most comprehensive and most
00:32:37.120 --> 00:32:40.830 align:start position:0%
shaten most comprehensive and most
complex<00:32:37.760> component<00:32:38.760> and<00:32:39.000> that<00:32:39.200> is<00:32:39.840> the<00:32:40.000> form
00:32:40.830 --> 00:32:40.840 align:start position:0%
complex component and that is the form
00:32:40.840 --> 00:32:43.750 align:start position:0%
complex component and that is the form
so<00:32:41.120> go<00:32:41.360> here<00:32:41.720> and<00:32:41.919> search<00:32:42.240> for<00:32:42.440> the<00:32:42.559> form<00:32:43.519> it<00:32:43.600> is
00:32:43.750 --> 00:32:43.760 align:start position:0%
so go here and search for the form it is
00:32:43.760 --> 00:32:46.629 align:start position:0%
so go here and search for the form it is
the<00:32:43.919> most<00:32:44.200> comprehensive<00:32:44.840> one<00:32:45.399> because<00:32:46.039> forms
00:32:46.629 --> 00:32:46.639 align:start position:0%
the most comprehensive one because forms
00:32:46.639 --> 00:32:48.750 align:start position:0%
the most comprehensive one because forms
are<00:32:47.039> tricky<00:32:47.760> they're<00:32:48.000> one<00:32:48.120> of<00:32:48.240> the<00:32:48.440> most
00:32:48.750 --> 00:32:48.760 align:start position:0%
are tricky they're one of the most
00:32:48.760 --> 00:32:50.070 align:start position:0%
are tricky they're one of the most
common<00:32:49.080> things<00:32:49.279> you'll<00:32:49.480> build<00:32:49.720> in<00:32:49.880> web
00:32:50.070 --> 00:32:50.080 align:start position:0%
common things you'll build in web
00:32:50.080 --> 00:32:52.470 align:start position:0%
common things you'll build in web
applications<00:32:50.880> but<00:32:51.159> also<00:32:51.480> one<00:32:51.600> of<00:32:51.760> the<00:32:51.919> most
00:32:52.470 --> 00:32:52.480 align:start position:0%
applications but also one of the most
00:32:52.480 --> 00:32:55.830 align:start position:0%
applications but also one of the most
complex<00:32:53.480> so<00:32:54.039> that's<00:32:54.360> why<00:32:54.960> shaten
00:32:55.830 --> 00:32:55.840 align:start position:0%
complex so that's why shaten
00:32:55.840 --> 00:32:58.549 align:start position:0%
complex so that's why shaten
automatically<00:32:56.480> out<00:32:56.639> of<00:32:56.760> the<00:32:56.840> bot<00:32:57.440> uses<00:32:58.039> react
00:32:58.549 --> 00:32:58.559 align:start position:0%
automatically out of the bot uses react
00:32:58.559 --> 00:33:00.789 align:start position:0%
automatically out of the bot uses react
hook<00:32:58.880> form<00:32:59.480> which<00:32:59.600> is<00:32:59.720> a<00:32:59.919> great<00:33:00.200> library<00:33:00.600> for
00:33:00.789 --> 00:33:00.799 align:start position:0%
hook form which is a great library for
00:33:00.799 --> 00:33:03.750 align:start position:0%
hook form which is a great library for
managing<00:33:01.279> forms<00:33:01.720> and<00:33:01.960> states<00:33:02.840> and<00:33:03.000> then<00:33:03.200> Zod
00:33:03.750 --> 00:33:03.760 align:start position:0%
managing forms and states and then Zod
00:33:03.760 --> 00:33:06.470 align:start position:0%
managing forms and states and then Zod
which<00:33:03.880> is<00:33:04.080> great<00:33:04.320> for<00:33:04.519> form<00:33:05.200> validation<00:33:06.200> here
00:33:06.470 --> 00:33:06.480 align:start position:0%
which is great for form validation here
00:33:06.480 --> 00:33:08.029 align:start position:0%
which is great for form validation here
we<00:33:06.600> can<00:33:06.720> learn<00:33:07.000> a<00:33:07.120> bit<00:33:07.320> more<00:33:07.600> about<00:33:07.840> the
00:33:08.029 --> 00:33:08.039 align:start position:0%
we can learn a bit more about the
00:33:08.039 --> 00:33:10.310 align:start position:0%
we can learn a bit more about the
anatomy<00:33:08.600> of<00:33:08.720> a<00:33:08.880> form<00:33:09.440> so<00:33:09.600> you<00:33:09.720> have<00:33:09.880> a<00:33:09.960> form
00:33:10.310 --> 00:33:10.320 align:start position:0%
anatomy of a form so you have a form
00:33:10.320 --> 00:33:12.430 align:start position:0%
anatomy of a form so you have a form
component<00:33:10.880> and<00:33:11.000> then<00:33:11.120> you<00:33:11.279> have<00:33:11.480> form<00:33:11.840> Fields
00:33:12.430 --> 00:33:12.440 align:start position:0%
component and then you have form Fields
00:33:12.440 --> 00:33:15.549 align:start position:0%
component and then you have form Fields
within<00:33:12.720> it<00:33:13.440> each<00:33:13.679> form<00:33:14.000> field<00:33:14.399> has<00:33:14.519> a<00:33:14.720> control
00:33:15.549 --> 00:33:15.559 align:start position:0%
within it each form field has a control
00:33:15.559 --> 00:33:17.789 align:start position:0%
within it each form field has a control
a<00:33:15.760> name<00:33:16.399> and<00:33:16.519> then<00:33:16.639> you<00:33:16.760> can<00:33:16.960> choose<00:33:17.440> how<00:33:17.600> it's
00:33:17.789 --> 00:33:17.799 align:start position:0%
a name and then you can choose how it's
00:33:17.799 --> 00:33:19.909 align:start position:0%
a name and then you can choose how it's
going<00:33:17.960> to<00:33:18.120> look<00:33:18.399> like<00:33:19.120> it's<00:33:19.279> going<00:33:19.399> to<00:33:19.559> render
00:33:19.909 --> 00:33:19.919 align:start position:0%
going to look like it's going to render
00:33:19.919 --> 00:33:22.870 align:start position:0%
going to look like it's going to render
an<00:33:20.159> item<00:33:20.639> a<00:33:20.799> label<00:33:21.360> form<00:33:21.720> control<00:33:22.200> description
00:33:22.870 --> 00:33:22.880 align:start position:0%
an item a label form control description
00:33:22.880 --> 00:33:25.310 align:start position:0%
an item a label form control description
and<00:33:23.120> a<00:33:23.320> message<00:33:24.200> and<00:33:24.440> here<00:33:24.720> we<00:33:24.880> have<00:33:25.120> a
00:33:25.310 --> 00:33:25.320 align:start position:0%
and a message and here we have a
00:33:25.320 --> 00:33:28.029 align:start position:0%
and a message and here we have a
complete<00:33:25.880> form<00:33:26.360> example<00:33:27.279> so<00:33:27.440> let's<00:33:27.639> go<00:33:27.760> ahead
00:33:28.029 --> 00:33:28.039 align:start position:0%
complete form example so let's go ahead
00:33:28.039 --> 00:33:31.750 align:start position:0%
complete form example so let's go ahead
and<00:33:28.200> follow<00:33:28.559> the<00:33:28.720> steps<00:33:29.200> to<00:33:29.639> create<00:33:30.080> our<00:33:30.760> form
00:33:31.750 --> 00:33:31.760 align:start position:0%
and follow the steps to create our form
00:33:31.760 --> 00:33:34.230 align:start position:0%
and follow the steps to create our form
first<00:33:32.039> we<00:33:32.120> need<00:33:32.279> to<00:33:32.600> copy<00:33:33.600> the<00:33:33.760> command<00:33:34.080> to
00:33:34.230 --> 00:33:34.240 align:start position:0%
first we need to copy the command to
00:33:34.240 --> 00:33:37.230 align:start position:0%
first we need to copy the command to
install<00:33:34.639> it<00:33:35.159> so<00:33:35.320> we<00:33:35.399> can<00:33:35.600> go<00:33:35.840> back<00:33:36.799> go<00:33:36.919> to<00:33:37.080> our
00:33:37.230 --> 00:33:37.240 align:start position:0%
install it so we can go back go to our
00:33:37.240 --> 00:33:39.549 align:start position:0%
install it so we can go back go to our
second<00:33:37.519> terminal<00:33:38.320> and<00:33:38.559> paste<00:33:38.840> the<00:33:38.960> command<00:33:39.320> to
00:33:39.549 --> 00:33:39.559 align:start position:0%
second terminal and paste the command to
00:33:39.559 --> 00:33:43.190 align:start position:0%
second terminal and paste the command to
add<00:33:39.799> the<00:33:40.320> form<00:33:41.320> soon<00:33:41.639> enough<00:33:41.919> it<00:33:42.000> will<00:33:42.159> be<00:33:42.360> done
00:33:43.190 --> 00:33:43.200 align:start position:0%
add the form soon enough it will be done
00:33:43.200 --> 00:33:46.269 align:start position:0%
add the form soon enough it will be done
and<00:33:43.399> then<00:33:43.760> we<00:33:43.880> can<00:33:44.120> actually<00:33:44.480> use<00:33:44.720> it<00:33:45.519> so<00:33:45.919> first
00:33:46.269 --> 00:33:46.279 align:start position:0%
and then we can actually use it so first
00:33:46.279 --> 00:33:48.990 align:start position:0%
and then we can actually use it so first
we<00:33:46.440> have<00:33:46.559> to<00:33:46.760> define<00:33:47.279> the<00:33:47.519> shape<00:33:48.039> of<00:33:48.200> our<00:33:48.399> form
00:33:48.990 --> 00:33:49.000 align:start position:0%
we have to define the shape of our form
00:33:49.000 --> 00:33:52.110 align:start position:0%
we have to define the shape of our form
by<00:33:49.200> using<00:33:49.600> a<00:33:49.840> Zod<00:33:50.559> schema<00:33:51.559> of<00:33:51.720> course<00:33:51.880> you<00:33:52.000> can
00:33:52.110 --> 00:33:52.120 align:start position:0%
by using a Zod schema of course you can
00:33:52.120 --> 00:33:54.350 align:start position:0%
by using a Zod schema of course you can
learn<00:33:52.399> more<00:33:52.639> about<00:33:52.919> Zod<00:33:53.320> in<00:33:53.480> the<00:33:53.639> official<00:33:54.000> Zod
00:33:54.350 --> 00:33:54.360 align:start position:0%
learn more about Zod in the official Zod
00:33:54.360 --> 00:33:56.310 align:start position:0%
learn more about Zod in the official Zod
documentation<00:33:55.279> but<00:33:55.440> don't<00:33:55.639> worry<00:33:56.000> it's<00:33:56.120> a
00:33:56.310 --> 00:33:56.320 align:start position:0%
documentation but don't worry it's a
00:33:56.320 --> 00:33:58.110 align:start position:0%
documentation but don't worry it's a
pretty<00:33:56.519> simple<00:33:56.799> IDE<00:33:56.960> library<00:33:57.279> to<00:33:57.399> use<00:33:57.880> and<00:33:58.000> I'm
00:33:58.110 --> 00:33:58.120 align:start position:0%
pretty simple IDE library to use and I'm
00:33:58.120 --> 00:34:00.430 align:start position:0%
pretty simple IDE library to use and I'm
going<00:33:58.200> to<00:33:58.360> teach<00:33:58.519> you<00:33:58.720> how<00:33:58.840> to<00:33:59.039> use<00:33:59.200> it<00:34:00.080> so
00:34:00.430 --> 00:34:00.440 align:start position:0%
going to teach you how to use it so
00:34:00.440 --> 00:34:03.350 align:start position:0%
going to teach you how to use it so
let's<00:34:00.799> copy<00:34:01.399> import<00:34:01.880> everything<00:34:02.320> as<00:34:02.639> Z<00:34:03.120> from
00:34:03.350 --> 00:34:03.360 align:start position:0%
let's copy import everything as Z from
00:34:03.360 --> 00:34:06.830 align:start position:0%
let's copy import everything as Z from
Zod<00:34:04.039> and<00:34:04.200> then<00:34:04.600> const<00:34:05.039> form<00:34:05.559> schema<00:34:06.559> we<00:34:06.639> can
00:34:06.830 --> 00:34:06.840 align:start position:0%
Zod and then const form schema we can
00:34:06.840 --> 00:34:09.909 align:start position:0%
Zod and then const form schema we can
paste<00:34:07.159> that<00:34:07.440> right<00:34:07.639> here<00:34:07.880> at<00:34:08.040> the<00:34:08.639> top<00:34:09.639> we<00:34:09.760> can
00:34:09.909 --> 00:34:09.919 align:start position:0%
paste that right here at the top we can
00:34:09.919 --> 00:34:12.550 align:start position:0%
paste that right here at the top we can
put<00:34:10.119> this<00:34:10.320> import<00:34:10.720> on<00:34:11.000> top<00:34:11.520> as<00:34:11.679> it<00:34:11.839> is<00:34:12.119> external
00:34:12.550 --> 00:34:12.560 align:start position:0%
put this import on top as it is external
00:34:12.560 --> 00:34:14.790 align:start position:0%
put this import on top as it is external
import<00:34:13.480> and<00:34:13.599> we're<00:34:13.720> going<00:34:13.800> to<00:34:13.960> put<00:34:14.200> this<00:34:14.560> right
00:34:14.790 --> 00:34:14.800 align:start position:0%
import and we're going to put this right
00:34:14.800 --> 00:34:16.270 align:start position:0%
import and we're going to put this right
here<00:34:15.119> because<00:34:15.359> it<00:34:15.440> is<00:34:15.599> coming<00:34:15.960> right<00:34:16.119> here
00:34:16.270 --> 00:34:16.280 align:start position:0%
here because it is coming right here
00:34:16.280 --> 00:34:19.349 align:start position:0%
here because it is coming right here
from<00:34:16.440> our<00:34:16.919> code<00:34:17.919> and<00:34:18.159> this<00:34:18.320> form<00:34:18.639> schema<00:34:19.200> is
00:34:19.349 --> 00:34:19.359 align:start position:0%
from our code and this form schema is
00:34:19.359 --> 00:34:21.790 align:start position:0%
from our code and this form schema is
going<00:34:19.520> to<00:34:19.720> go<00:34:20.119> right<00:34:20.359> here<00:34:20.679> within<00:34:21.000> our
00:34:21.790 --> 00:34:21.800 align:start position:0%
going to go right here within our
00:34:21.800 --> 00:34:23.790 align:start position:0%
going to go right here within our
component<00:34:22.800> the<00:34:22.960> next<00:34:23.159> thing<00:34:23.320> they<00:34:23.440> say<00:34:23.679> we
00:34:23.790 --> 00:34:23.800 align:start position:0%
component the next thing they say we
00:34:23.800 --> 00:34:26.950 align:start position:0%
component the next thing they say we
have<00:34:23.919> to<00:34:24.119> do<00:34:24.560> is<00:34:24.919> Define<00:34:25.520> a<00:34:25.720> form<00:34:26.280> by<00:34:26.399> using<00:34:26.679> the
00:34:26.950 --> 00:34:26.960 align:start position:0%
have to do is Define a form by using the
00:34:26.960 --> 00:34:29.190 align:start position:0%
have to do is Define a form by using the
use<00:34:27.200> form<00:34:27.560> hook<00:34:27.919> coming<00:34:28.240> from<00:34:28.480> the<00:34:28.599> react<00:34:29.000> hook
00:34:29.190 --> 00:34:29.200 align:start position:0%
use form hook coming from the react hook
00:34:29.200 --> 00:34:31.750 align:start position:0%
use form hook coming from the react hook
form<00:34:29.480> Library<00:34:30.399> so<00:34:30.720> let's<00:34:30.960> go<00:34:31.079> ahead<00:34:31.440> and
00:34:31.750 --> 00:34:31.760 align:start position:0%
form Library so let's go ahead and
00:34:31.760 --> 00:34:34.909 align:start position:0%
form Library so let's go ahead and
import<00:34:32.399> import<00:34:32.800> Zod<00:34:33.240> resolver<00:34:34.240> as<00:34:34.359> well<00:34:34.520> as<00:34:34.679> Z
00:34:34.909 --> 00:34:34.919 align:start position:0%
import import Zod resolver as well as Z
00:34:34.919 --> 00:34:37.389 align:start position:0%
import import Zod resolver as well as Z
from<00:34:35.119> Zod<00:34:35.760> as<00:34:35.879> well<00:34:36.000> as<00:34:36.119> the<00:34:36.200> form
00:34:37.389 --> 00:34:37.399 align:start position:0%
from Zod as well as the form
00:34:37.399 --> 00:34:40.109 align:start position:0%
from Zod as well as the form
schema<00:34:38.399> which<00:34:38.560> in<00:34:38.720> this<00:34:38.879> case<00:34:39.159> can<00:34:39.399> be<00:34:39.639> placed
00:34:40.109 --> 00:34:40.119 align:start position:0%
schema which in this case can be placed
00:34:40.119 --> 00:34:42.389 align:start position:0%
schema which in this case can be placed
above<00:34:40.520> the<00:34:40.720> component<00:34:41.599> but<00:34:41.760> then<00:34:41.879> we'll<00:34:42.159> also
00:34:42.389 --> 00:34:42.399 align:start position:0%
above the component but then we'll also
00:34:42.399 --> 00:34:44.430 align:start position:0%
above the component but then we'll also
need<00:34:42.599> to<00:34:42.760> import<00:34:43.200> the<00:34:43.320> form<00:34:43.879> and<00:34:44.119> everything
00:34:44.430 --> 00:34:44.440 align:start position:0%
need to import the form and everything
00:34:44.440 --> 00:34:46.629 align:start position:0%
need to import the form and everything
else<00:34:44.720> that<00:34:44.839> is<00:34:45.000> in<00:34:45.280> here<00:34:45.919> so<00:34:46.200> instead<00:34:46.480> of
00:34:46.629 --> 00:34:46.639 align:start position:0%
else that is in here so instead of
00:34:46.639 --> 00:34:48.470 align:start position:0%
else that is in here so instead of
copying<00:34:47.079> everything<00:34:47.639> let's<00:34:47.919> copy<00:34:48.200> just<00:34:48.359> the
00:34:48.470 --> 00:34:48.480 align:start position:0%
copying everything let's copy just the
00:34:48.480 --> 00:34:50.270 align:start position:0%
copying everything let's copy just the
things<00:34:48.639> that<00:34:48.800> we<00:34:48.919> need<00:34:49.599> first<00:34:49.879> I'm<00:34:50.000> going<00:34:50.079> to
00:34:50.270 --> 00:34:50.280 align:start position:0%
things that we need first I'm going to
00:34:50.280 --> 00:34:52.470 align:start position:0%
things that we need first I'm going to
copy<00:34:50.520> the<00:34:50.679> Zod<00:34:51.040> resolver<00:34:51.679> paste<00:34:52.000> it<00:34:52.320> right
00:34:52.470 --> 00:34:52.480 align:start position:0%
copy the Zod resolver paste it right
00:34:52.480 --> 00:34:54.389 align:start position:0%
copy the Zod resolver paste it right
here<00:34:52.679> at<00:34:52.839> the<00:34:53.040> top<00:34:53.599> and<00:34:53.720> then<00:34:53.919> I'm<00:34:54.040> going<00:34:54.159> to
00:34:54.389 --> 00:34:54.399 align:start position:0%
here at the top and then I'm going to
00:34:54.399 --> 00:34:57.589 align:start position:0%
here at the top and then I'm going to
copy<00:34:54.800> the<00:34:55.040> entire<00:34:55.560> form<00:34:56.280> right<00:34:56.520> here<00:34:57.359> or
00:34:57.589 --> 00:34:57.599 align:start position:0%
copy the entire form right here or
00:34:57.599 --> 00:34:59.950 align:start position:0%
copy the entire form right here or
rather<00:34:57.880> just<00:34:58.040> the<00:34:58.240> definition<00:34:58.880> of<00:34:59.040> a<00:34:59.200> form<00:34:59.800> and
00:34:59.950 --> 00:34:59.960 align:start position:0%
rather just the definition of a form and
00:34:59.960 --> 00:35:02.910 align:start position:0%
rather just the definition of a form and
we<00:35:00.079> can<00:35:00.280> paste<00:35:00.480> it<00:35:00.720> right<00:35:00.920> here<00:35:01.119> on<00:35:01.800> top<00:35:02.800> and
00:35:02.910 --> 00:35:02.920 align:start position:0%
we can paste it right here on top and
00:35:02.920 --> 00:35:05.270 align:start position:0%
we can paste it right here on top and
the<00:35:03.040> form<00:35:03.280> schema<00:35:03.680> can<00:35:03.839> go<00:35:04.119> outside<00:35:04.960> right
00:35:05.270 --> 00:35:05.280 align:start position:0%
the form schema can go outside right
00:35:05.280 --> 00:35:08.150 align:start position:0%
the form schema can go outside right
here<00:35:06.280> so<00:35:06.480> now<00:35:06.599> we're<00:35:06.839> defining<00:35:07.280> our<00:35:07.480> form
00:35:08.150 --> 00:35:08.160 align:start position:0%
here so now we're defining our form
00:35:08.160 --> 00:35:10.230 align:start position:0%
here so now we're defining our form
we're<00:35:08.400> also<00:35:08.720> using<00:35:09.079> the<00:35:09.240> form<00:35:09.760> and<00:35:09.960> this<00:35:10.119> has
00:35:10.230 --> 00:35:10.240 align:start position:0%
we're also using the form and this has
00:35:10.240 --> 00:35:13.349 align:start position:0%
we're also using the form and this has
to<00:35:10.359> be<00:35:10.520> imported<00:35:11.400> from<00:35:11.960> react<00:35:12.440> hook<00:35:12.680> form<00:35:13.240> the
00:35:13.349 --> 00:35:13.359 align:start position:0%
to be imported from react hook form the
00:35:13.359 --> 00:35:16.190 align:start position:0%
to be imported from react hook form the
use<00:35:13.680> form<00:35:14.560> right<00:35:14.760> here<00:35:15.440> but<00:35:15.640> now<00:35:15.800> that<00:35:15.920> we<00:35:16.040> have
00:35:16.190 --> 00:35:16.200 align:start position:0%
use form right here but now that we have
00:35:16.200 --> 00:35:18.510 align:start position:0%
use form right here but now that we have
defined<00:35:16.599> it<00:35:16.839> we<00:35:16.960> can<00:35:17.200> actually<00:35:17.640> build<00:35:17.960> out<00:35:18.280> our
00:35:18.510 --> 00:35:18.520 align:start position:0%
defined it we can actually build out our
00:35:18.520 --> 00:35:20.910 align:start position:0%
defined it we can actually build out our
form<00:35:19.160> so<00:35:19.359> we<00:35:19.440> need<00:35:19.599> to<00:35:19.800> import<00:35:20.400> all<00:35:20.560> of<00:35:20.720> the
00:35:20.910 --> 00:35:20.920 align:start position:0%
form so we need to import all of the
00:35:20.920 --> 00:35:22.510 align:start position:0%
form so we need to import all of the
different<00:35:21.240> components<00:35:21.839> that<00:35:22.000> go<00:35:22.200> into
00:35:22.510 --> 00:35:22.520 align:start position:0%
different components that go into
00:35:22.520 --> 00:35:24.950 align:start position:0%
different components that go into
building<00:35:22.839> a<00:35:23.000> form<00:35:24.000> which<00:35:24.119> we<00:35:24.240> can<00:35:24.440> paste<00:35:24.760> right
00:35:24.950 --> 00:35:24.960 align:start position:0%
building a form which we can paste right
00:35:24.960 --> 00:35:27.910 align:start position:0%
building a form which we can paste right
here<00:35:25.200> on<00:35:25.800> top<00:35:26.880> and<00:35:27.040> you<00:35:27.119> can<00:35:27.280> notice<00:35:27.640> that<00:35:27.800> one
00:35:27.910 --> 00:35:27.920 align:start position:0%
here on top and you can notice that one
00:35:27.920 --> 00:35:30.510 align:start position:0%
here on top and you can notice that one
of<00:35:28.119> these<00:35:28.599> is<00:35:28.839> an<00:35:29.040> input<00:35:29.720> which<00:35:29.880> is<00:35:30.119> another
00:35:30.510 --> 00:35:30.520 align:start position:0%
of these is an input which is another
00:35:30.520 --> 00:35:32.750 align:start position:0%
of these is an input which is another
component<00:35:31.000> we<00:35:31.119> have<00:35:31.280> to<00:35:31.480> install<00:35:32.440> because<00:35:32.680> if
00:35:32.750 --> 00:35:32.760 align:start position:0%
component we have to install because if
00:35:32.760 --> 00:35:35.109 align:start position:0%
component we have to install because if
you<00:35:32.880> check<00:35:33.160> the<00:35:33.320> component<00:35:33.760> so<00:35:34.000> far<00:35:34.839> you<00:35:34.960> can
00:35:35.109 --> 00:35:35.119 align:start position:0%
you check the component so far you can
00:35:35.119 --> 00:35:37.910 align:start position:0%
you check the component so far you can
notice<00:35:35.520> the<00:35:35.680> form<00:35:36.079> label<00:35:36.400> and<00:35:36.640> button<00:35:37.359> but<00:35:37.599> no
00:35:37.910 --> 00:35:37.920 align:start position:0%
notice the form label and button but no
00:35:37.920 --> 00:35:40.390 align:start position:0%
notice the form label and button but no
input<00:35:38.800> so<00:35:39.040> to<00:35:39.240> install<00:35:39.560> the<00:35:39.720> input<00:35:40.119> you<00:35:40.240> know
00:35:40.390 --> 00:35:40.400 align:start position:0%
input so to install the input you know
00:35:40.400 --> 00:35:43.190 align:start position:0%
input so to install the input you know
what<00:35:40.520> we<00:35:40.640> need<00:35:40.760> to<00:35:40.920> do<00:35:41.440> just<00:35:41.560> say<00:35:41.839> MPX<00:35:42.400> CH<00:35:42.680> C<00:35:42.839> Nui
00:35:43.190 --> 00:35:43.200 align:start position:0%
what we need to do just say MPX CH C Nui
00:35:43.200 --> 00:35:45.069 align:start position:0%
what we need to do just say MPX CH C Nui
latest<00:35:44.000> add
00:35:45.069 --> 00:35:45.079 align:start position:0%
latest add
00:35:45.079 --> 00:35:48.390 align:start position:0%
latest add
input<00:35:46.079> it<00:35:46.200> is<00:35:46.480> as<00:35:46.680> simple<00:35:47.040> as<00:35:47.280> that<00:35:48.119> we<00:35:48.240> can
00:35:48.390 --> 00:35:48.400 align:start position:0%
input it is as simple as that we can
00:35:48.400 --> 00:35:50.990 align:start position:0%
input it is as simple as that we can
also<00:35:48.680> put<00:35:48.960> all<00:35:49.119> of<00:35:49.359> these<00:35:49.800> components<00:35:50.440> in<00:35:50.640> one
00:35:50.990 --> 00:35:51.000 align:start position:0%
also put all of these components in one
00:35:51.000 --> 00:35:53.790 align:start position:0%
also put all of these components in one
line<00:35:51.480> so<00:35:51.720> it's<00:35:52.000> easier<00:35:52.599> to<00:35:52.760> see<00:35:53.160> everything
00:35:53.790 --> 00:35:53.800 align:start position:0%
line so it's easier to see everything
00:35:53.800 --> 00:35:56.510 align:start position:0%
line so it's easier to see everything
just<00:35:54.040> like<00:35:54.240> so<00:35:55.240> and<00:35:55.480> then<00:35:55.880> we<00:35:56.000> can<00:35:56.240> actually
00:35:56.510 --> 00:35:56.520 align:start position:0%
just like so and then we can actually
00:35:56.520 --> 00:35:58.870 align:start position:0%
just like so and then we can actually
build<00:35:56.800> build<00:35:57.040> out<00:35:57.280> our<00:35:57.520> form<00:35:58.119> by<00:35:58.319> copying<00:35:58.720> the
00:35:58.870 --> 00:35:58.880 align:start position:0%
build build out our form by copying the
00:35:58.880 --> 00:36:01.950 align:start position:0%
build build out our form by copying the
form<00:35:59.520> right<00:35:59.920> here<00:36:00.800> and<00:36:01.119> let's<00:36:01.400> paste<00:36:01.680> it
00:36:01.950 --> 00:36:01.960 align:start position:0%
form right here and let's paste it
00:36:01.960 --> 00:36:03.550 align:start position:0%
form right here and let's paste it
instead<00:36:02.520> of<00:36:02.720> this
00:36:03.550 --> 00:36:03.560 align:start position:0%
instead of this
00:36:03.560 --> 00:36:07.270 align:start position:0%
instead of this
button<00:36:04.560> we<00:36:04.760> can<00:36:05.040> indent<00:36:05.400> it<00:36:05.920> properly<00:36:06.920> and
00:36:07.270 --> 00:36:07.280 align:start position:0%
button we can indent it properly and
00:36:07.280 --> 00:36:09.630 align:start position:0%
button we can indent it properly and
save<00:36:07.560> it<00:36:08.119> and<00:36:08.359> that's<00:36:08.599> it<00:36:08.920> you<00:36:09.040> now<00:36:09.319> have<00:36:09.520> a
00:36:09.630 --> 00:36:09.640 align:start position:0%
save it and that's it you now have a
00:36:09.640 --> 00:36:12.069 align:start position:0%
save it and that's it you now have a
fully<00:36:10.040> accessible<00:36:10.480> form<00:36:10.839> that<00:36:10.960> is<00:36:11.119> type<00:36:11.520> safe
00:36:12.069 --> 00:36:12.079 align:start position:0%
fully accessible form that is type safe
00:36:12.079 --> 00:36:14.430 align:start position:0%
fully accessible form that is type safe
with<00:36:12.319> client<00:36:12.800> side<00:36:13.079> validation<00:36:14.079> and<00:36:14.240> let's
00:36:14.430 --> 00:36:14.440 align:start position:0%
with client side validation and let's
00:36:14.440 --> 00:36:16.790 align:start position:0%
with client side validation and let's
see<00:36:14.560> if<00:36:14.680> it<00:36:14.880> actually<00:36:15.160> looks<00:36:15.480> like<00:36:15.680> this<00:36:16.599> and
00:36:16.790 --> 00:36:16.800 align:start position:0%
see if it actually looks like this and
00:36:16.800 --> 00:36:19.030 align:start position:0%
see if it actually looks like this and
would<00:36:16.960> you<00:36:17.079> look<00:36:17.240> at<00:36:17.440> that<00:36:17.880> it<00:36:18.000> looks<00:36:18.319> amazing
00:36:19.030 --> 00:36:19.040 align:start position:0%
would you look at that it looks amazing
00:36:19.040 --> 00:36:21.670 align:start position:0%
would you look at that it looks amazing
but<00:36:19.240> it's<00:36:19.400> only<00:36:19.720> one<00:36:19.960> input<00:36:20.359> and<00:36:20.520> one<00:36:20.839> button
00:36:21.670 --> 00:36:21.680 align:start position:0%
but it's only one input and one button
00:36:21.680 --> 00:36:23.510 align:start position:0%
but it's only one input and one button
but<00:36:21.920> the<00:36:22.079> validation<00:36:22.839> is<00:36:23.040> working
00:36:23.510 --> 00:36:23.520 align:start position:0%
but the validation is working
00:36:23.520 --> 00:36:25.670 align:start position:0%
but the validation is working
wonderfully<00:36:24.319> and<00:36:24.599> chatan<00:36:25.280> has<00:36:25.480> this
00:36:25.670 --> 00:36:25.680 align:start position:0%
wonderfully and chatan has this
00:36:25.680 --> 00:36:29.550 align:start position:0%
wonderfully and chatan has this
beautiful<00:36:26.319> button<00:36:26.720> minimalistic<00:36:27.920> UI<00:36:28.920> so<00:36:29.200> now
00:36:29.550 --> 00:36:29.560 align:start position:0%
beautiful button minimalistic UI so now
00:36:29.560 --> 00:36:32.750 align:start position:0%
beautiful button minimalistic UI so now
let's<00:36:29.800> convert<00:36:30.400> this<00:36:31.240> into<00:36:31.680> this<00:36:32.280> and<00:36:32.480> make<00:36:32.599> it
00:36:32.750 --> 00:36:32.760 align:start position:0%
let's convert this into this and make it
00:36:32.760 --> 00:36:35.069 align:start position:0%
let's convert this into this and make it
fully<00:36:33.200> functional<00:36:33.800> to<00:36:33.960> do<00:36:34.160> that<00:36:34.440> we<00:36:34.720> won't
00:36:35.069 --> 00:36:35.079 align:start position:0%
fully functional to do that we won't
00:36:35.079 --> 00:36:37.510 align:start position:0%
fully functional to do that we won't
simply<00:36:35.440> keep<00:36:35.760> everything<00:36:36.160> in<00:36:36.280> a<00:36:36.440> single<00:36:36.839> file
00:36:37.510 --> 00:36:37.520 align:start position:0%
simply keep everything in a single file
00:36:37.520 --> 00:36:39.790 align:start position:0%
simply keep everything in a single file
as<00:36:37.800> that<00:36:37.960> would<00:36:38.240> quickly<00:36:38.560> clutter<00:36:39.000> our<00:36:39.200> view
00:36:39.790 --> 00:36:39.800 align:start position:0%
as that would quickly clutter our view
00:36:39.800 --> 00:36:42.109 align:start position:0%
as that would quickly clutter our view
and<00:36:40.079> wouldn't<00:36:40.359> be<00:36:40.520> so<00:36:40.839> reusable<00:36:41.839> so<00:36:42.000> we're
00:36:42.109 --> 00:36:42.119 align:start position:0%
and wouldn't be so reusable so we're
00:36:42.119 --> 00:36:44.510 align:start position:0%
and wouldn't be so reusable so we're
going<00:36:42.240> to<00:36:42.359> use<00:36:42.720> many<00:36:43.000> reusable<00:36:43.640> practices<00:36:44.319> to
00:36:44.510 --> 00:36:44.520 align:start position:0%
going to use many reusable practices to
00:36:44.520 --> 00:36:46.309 align:start position:0%
going to use many reusable practices to
turn<00:36:44.760> this<00:36:44.960> into<00:36:45.160> a<00:36:45.319> component<00:36:45.960> that<00:36:46.079> we<00:36:46.200> can
00:36:46.309 --> 00:36:46.319 align:start position:0%
turn this into a component that we can
00:36:46.319 --> 00:36:49.390 align:start position:0%
turn this into a component that we can
then<00:36:46.520> reuse<00:36:47.400> and<00:36:47.760> manage<00:36:48.200> its<00:36:48.440> data<00:36:48.920> more
00:36:49.390 --> 00:36:49.400 align:start position:0%
then reuse and manage its data more
00:36:49.400 --> 00:36:51.710 align:start position:0%
then reuse and manage its data more
efficiently<00:36:50.400> and<00:36:50.560> the<00:36:50.760> first<00:36:51.040> step<00:36:51.240> we'll<00:36:51.440> do
00:36:51.710 --> 00:36:51.720 align:start position:0%
efficiently and the first step we'll do
00:36:51.720 --> 00:36:53.470 align:start position:0%
efficiently and the first step we'll do
to<00:36:51.920> achieve<00:36:52.319> that<00:36:52.720> is<00:36:52.920> we're<00:36:53.079> going<00:36:53.200> to
00:36:53.470 --> 00:36:53.480 align:start position:0%
to achieve that is we're going to
00:36:53.480 --> 00:36:56.470 align:start position:0%
to achieve that is we're going to
extract<00:36:54.119> this<00:36:54.280> form<00:36:54.680> schema<00:36:55.359> into<00:36:55.839> a<00:36:56.079> separate
00:36:56.470 --> 00:36:56.480 align:start position:0%
extract this form schema into a separate
00:36:56.480 --> 00:36:59.390 align:start position:0%
extract this form schema into a separate
vol<00:36:56.680> validations<00:36:57.359> file<00:36:58.240> so<00:36:58.599> let's<00:36:58.880> go<00:36:59.040> ahead
00:36:59.390 --> 00:36:59.400 align:start position:0%
vol validations file so let's go ahead
00:36:59.400 --> 00:37:02.069 align:start position:0%
vol validations file so let's go ahead
and<00:36:59.640> go<00:36:59.760> to<00:37:00.000> file<00:37:00.359> explorer<00:37:01.359> collapse
00:37:02.069 --> 00:37:02.079 align:start position:0%
and go to file explorer collapse
00:37:02.079 --> 00:37:05.109 align:start position:0%
and go to file explorer collapse
everything<00:37:03.079> and<00:37:03.359> go<00:37:03.599> within<00:37:03.960> Source<00:37:04.760> within
00:37:05.109 --> 00:37:05.119 align:start position:0%
everything and go within Source within
00:37:05.119 --> 00:37:07.589 align:start position:0%
everything and go within Source within
lib<00:37:05.880> and<00:37:06.040> then<00:37:06.319> right<00:37:06.560> here<00:37:06.920> create<00:37:07.200> a<00:37:07.400> new
00:37:07.589 --> 00:37:07.599 align:start position:0%
lib and then right here create a new
00:37:07.599 --> 00:37:09.550 align:start position:0%
lib and then right here create a new
folder<00:37:08.240> called
00:37:09.550 --> 00:37:09.560 align:start position:0%
folder called
00:37:09.560 --> 00:37:13.349 align:start position:0%
folder called
validation<00:37:10.560> within<00:37:10.880> it<00:37:11.119> we<00:37:11.240> can<00:37:11.440> create<00:37:11.760> a<00:37:11.960> new
00:37:13.349 --> 00:37:13.359 align:start position:0%
validation within it we can create a new
00:37:13.359 --> 00:37:17.670 align:start position:0%
validation within it we can create a new
index.ts<00:37:14.760> file<00:37:15.760> and<00:37:15.960> within<00:37:16.319> index<00:37:17.040> we<00:37:17.160> can<00:37:17.400> do
00:37:17.670 --> 00:37:17.680 align:start position:0%
index.ts file and within index we can do
00:37:17.680 --> 00:37:19.349 align:start position:0%
index.ts file and within index we can do
something<00:37:18.040> similar<00:37:18.480> to<00:37:18.680> what<00:37:18.839> we<00:37:18.960> have<00:37:19.119> done
00:37:19.349 --> 00:37:19.359 align:start position:0%
something similar to what we have done
00:37:19.359 --> 00:37:21.790 align:start position:0%
something similar to what we have done
in<00:37:19.480> the<00:37:19.680> signup<00:37:20.079> form<00:37:20.839> we<00:37:20.920> can<00:37:21.200> import
00:37:21.790 --> 00:37:21.800 align:start position:0%
in the signup form we can import
00:37:21.800 --> 00:37:24.030 align:start position:0%
in the signup form we can import
everything<00:37:22.440> as<00:37:22.800> Z<00:37:23.200> from
00:37:24.030 --> 00:37:24.040 align:start position:0%
everything as Z from
00:37:24.040 --> 00:37:28.150 align:start position:0%
everything as Z from
Zod<00:37:25.040> and<00:37:25.240> then<00:37:25.720> we<00:37:25.839> can<00:37:26.040> create<00:37:26.839> Define<00:37:27.520> a<00:37:27.680> form
00:37:28.150 --> 00:37:28.160 align:start position:0%
Zod and then we can create Define a form
00:37:28.160 --> 00:37:31.990 align:start position:0%
Zod and then we can create Define a form
schema<00:37:28.960> so<00:37:29.240> right<00:37:29.520> here<00:37:30.359> let's<00:37:30.640> define<00:37:31.000> it<00:37:31.800> but
00:37:31.990 --> 00:37:32.000 align:start position:0%
schema so right here let's define it but
00:37:32.000 --> 00:37:33.750 align:start position:0%
schema so right here let's define it but
in<00:37:32.240> this<00:37:32.480> file<00:37:32.760> we're<00:37:32.920> going<00:37:33.000> to<00:37:33.160> keep<00:37:33.480> many
00:37:33.750 --> 00:37:33.760 align:start position:0%
in this file we're going to keep many
00:37:33.760 --> 00:37:35.550 align:start position:0%
in this file we're going to keep many
different<00:37:34.040> form<00:37:34.359> schemas<00:37:34.960> so<00:37:35.119> we<00:37:35.240> have<00:37:35.359> to
00:37:35.550 --> 00:37:35.560 align:start position:0%
different form schemas so we have to
00:37:35.560 --> 00:37:37.910 align:start position:0%
different form schemas so we have to
Define<00:37:36.000> which<00:37:36.160> one<00:37:36.440> is<00:37:36.560> it<00:37:37.319> this<00:37:37.440> is<00:37:37.599> going<00:37:37.760> to
00:37:37.910 --> 00:37:37.920 align:start position:0%
Define which one is it this is going to
00:37:37.920 --> 00:37:42.710 align:start position:0%
Define which one is it this is going to
be<00:37:38.240> a<00:37:38.640> signup<00:37:39.920> validation<00:37:41.119> schema<00:37:42.119> and<00:37:42.440> we're
00:37:42.710 --> 00:37:42.720 align:start position:0%
be a signup validation schema and we're
00:37:42.720 --> 00:37:44.270 align:start position:0%
be a signup validation schema and we're
not<00:37:42.839> going<00:37:42.960> to<00:37:43.119> Define<00:37:43.359> it<00:37:43.480> in<00:37:43.680> this<00:37:43.880> file<00:37:44.119> and
00:37:44.270 --> 00:37:44.280 align:start position:0%
not going to Define it in this file and
00:37:44.280 --> 00:37:47.710 align:start position:0%
not going to Define it in this file and
then<00:37:44.480> not<00:37:44.760> use<00:37:44.960> it<00:37:45.400> we<00:37:45.520> have<00:37:45.640> to<00:37:45.839> say<00:37:46.760> export
00:37:47.710 --> 00:37:47.720 align:start position:0%
then not use it we have to say export
00:37:47.720 --> 00:37:50.270 align:start position:0%
then not use it we have to say export
const<00:37:48.359> sign<00:37:48.599> up<00:37:48.800> validation<00:37:49.599> to<00:37:49.760> be<00:37:49.920> able<00:37:50.119> to
00:37:50.270 --> 00:37:50.280 align:start position:0%
const sign up validation to be able to
00:37:50.280 --> 00:37:52.910 align:start position:0%
const sign up validation to be able to
use<00:37:50.480> it<00:37:51.240> so<00:37:51.520> now<00:37:52.000> we<00:37:52.079> can<00:37:52.280> go<00:37:52.520> back<00:37:52.640> to<00:37:52.800> our
00:37:52.910 --> 00:37:52.920 align:start position:0%
use it so now we can go back to our
00:37:52.920 --> 00:37:55.430 align:start position:0%
use it so now we can go back to our
signup<00:37:53.319> form<00:37:54.040> and<00:37:54.160> we<00:37:54.280> can<00:37:54.520> import<00:37:55.079> form
00:37:55.430 --> 00:37:55.440 align:start position:0%
signup form and we can import form
00:37:55.440 --> 00:37:58.430 align:start position:0%
signup form and we can import form
schema<00:37:56.280> or<00:37:56.760> rather<00:37:57.280> we<00:37:57.400> can<00:37:57.599> rename<00:37:58.000> it<00:37:58.200> to
00:37:58.430 --> 00:37:58.440 align:start position:0%
schema or rather we can rename it to
00:37:58.440 --> 00:38:02.190 align:start position:0%
schema or rather we can rename it to
signup<00:37:59.119> validation<00:38:00.119> coming<00:38:00.520> from
00:38:02.190 --> 00:38:02.200 align:start position:0%
signup validation coming from
00:38:02.200 --> 00:38:05.670 align:start position:0%
signup validation coming from
atli<00:38:03.200> SLV<00:38:03.599> validation<00:38:04.599> and<00:38:04.720> we<00:38:04.800> can<00:38:04.960> use<00:38:05.160> it<00:38:05.480> in
00:38:05.670 --> 00:38:05.680 align:start position:0%
atli SLV validation and we can use it in
00:38:05.680 --> 00:38:08.349 align:start position:0%
atli SLV validation and we can use it in
three<00:38:05.960> places<00:38:06.520> where<00:38:06.680> we<00:38:06.800> used<00:38:07.040> it<00:38:07.280> before<00:38:08.200> and
00:38:08.349 --> 00:38:08.359 align:start position:0%
three places where we used it before and
00:38:08.359 --> 00:38:10.670 align:start position:0%
three places where we used it before and
in<00:38:08.560> this<00:38:08.720> case<00:38:08.920> we<00:38:09.079> also<00:38:09.280> need<00:38:09.520> a<00:38:09.680> z<00:38:10.000> from<00:38:10.200> Zod
00:38:10.670 --> 00:38:10.680 align:start position:0%
in this case we also need a z from Zod
00:38:10.680 --> 00:38:12.710 align:start position:0%
in this case we also need a z from Zod
as<00:38:10.800> we're<00:38:11.040> referencing<00:38:11.560> it<00:38:11.920> right<00:38:12.079> here<00:38:12.319> as<00:38:12.440> a
00:38:12.710 --> 00:38:12.720 align:start position:0%
as we're referencing it right here as a
00:38:12.720 --> 00:38:15.589 align:start position:0%
as we're referencing it right here as a
type<00:38:13.640> great<00:38:14.079> so<00:38:14.280> now<00:38:14.480> we<00:38:14.599> have<00:38:14.760> just<00:38:15.000> extracted
00:38:15.589 --> 00:38:15.599 align:start position:0%
type great so now we have just extracted
00:38:15.599 --> 00:38:17.670 align:start position:0%
type great so now we have just extracted
one<00:38:15.880> thing<00:38:16.680> but<00:38:16.920> instead<00:38:17.160> of<00:38:17.319> Simply
00:38:17.670 --> 00:38:17.680 align:start position:0%
one thing but instead of Simply
00:38:17.680 --> 00:38:20.630 align:start position:0%
one thing but instead of Simply
extracting<00:38:18.400> That<00:38:18.680> Base<00:38:19.240> example<00:38:19.720> we<00:38:19.960> had
00:38:20.630 --> 00:38:20.640 align:start position:0%
extracting That Base example we had
00:38:20.640 --> 00:38:22.109 align:start position:0%
extracting That Base example we had
let's<00:38:20.920> actually<00:38:21.319> make<00:38:21.520> it<00:38:21.640> a<00:38:21.760> bit<00:38:21.920> more
00:38:22.109 --> 00:38:22.119 align:start position:0%
let's actually make it a bit more
00:38:22.119 --> 00:38:23.910 align:start position:0%
let's actually make it a bit more
meaningful<00:38:22.960> we're<00:38:23.160> not<00:38:23.400> just<00:38:23.560> going<00:38:23.680> to<00:38:23.800> have
00:38:23.910 --> 00:38:23.920 align:start position:0%
meaningful we're not just going to have
00:38:23.920 --> 00:38:26.309 align:start position:0%
meaningful we're not just going to have
a<00:38:24.079> username<00:38:24.839> we're<00:38:24.960> going<00:38:25.079> to<00:38:25.280> have<00:38:25.560> a<00:38:25.800> name<00:38:26.200> as
00:38:26.309 --> 00:38:26.319 align:start position:0%
a username we're going to have a name as
00:38:26.319 --> 00:38:29.710 align:start position:0%
a username we're going to have a name as
well<00:38:26.640> well<00:38:27.280> so<00:38:27.599> let's<00:38:27.880> define<00:38:28.200> it<00:38:28.960> at<00:38:29.079> the<00:38:29.319> top
00:38:29.710 --> 00:38:29.720 align:start position:0%
well well so let's define it at the top
00:38:29.720 --> 00:38:34.109 align:start position:0%
well well so let's define it at the top
let's<00:38:29.920> say<00:38:30.200> name<00:38:30.720> is<00:38:30.880> going<00:38:30.960> to<00:38:31.160> be<00:38:31.680> a<00:38:31.880> z.
00:38:34.109 --> 00:38:34.119 align:start position:0%
let's say name is going to be a z.
00:38:34.119 --> 00:38:37.990 align:start position:0%
let's say name is going to be a z.
string<00:38:35.119> with<00:38:35.319> a<00:38:35.520> minimum<00:38:36.079> of<00:38:36.280> two
00:38:37.990 --> 00:38:38.000 align:start position:0%
string with a minimum of two
00:38:38.000 --> 00:38:40.069 align:start position:0%
string with a minimum of two
characters<00:38:39.000> and<00:38:39.160> then<00:38:39.440> as<00:38:39.599> the<00:38:39.760> second
00:38:40.069 --> 00:38:40.079 align:start position:0%
characters and then as the second
00:38:40.079 --> 00:38:42.349 align:start position:0%
characters and then as the second
parameter<00:38:40.599> of<00:38:40.760> a<00:38:40.960> specific<00:38:41.440> option<00:38:42.040> you<00:38:42.160> can
00:38:42.349 --> 00:38:42.359 align:start position:0%
parameter of a specific option you can
00:38:42.359 --> 00:38:44.589 align:start position:0%
parameter of a specific option you can
provide<00:38:42.680> the<00:38:42.839> error<00:38:43.240> message<00:38:44.079> so<00:38:44.240> in<00:38:44.400> this
00:38:44.589 --> 00:38:44.599 align:start position:0%
provide the error message so in this
00:38:44.599 --> 00:38:46.990 align:start position:0%
provide the error message so in this
case<00:38:44.960> we<00:38:45.079> can<00:38:45.200> say<00:38:45.440> a<00:38:45.680> message<00:38:46.240> is<00:38:46.480> something
00:38:46.990 --> 00:38:47.000 align:start position:0%
case we can say a message is something
00:38:47.000 --> 00:38:49.470 align:start position:0%
case we can say a message is something
like<00:38:48.000> to
00:38:49.470 --> 00:38:49.480 align:start position:0%
like to
00:38:49.480 --> 00:38:51.950 align:start position:0%
like to
short<00:38:50.480> there<00:38:50.680> we<00:38:50.839> go<00:38:51.440> and<00:38:51.560> then<00:38:51.680> you<00:38:51.800> can
00:38:51.950 --> 00:38:51.960 align:start position:0%
short there we go and then you can
00:38:51.960 --> 00:38:54.390 align:start position:0%
short there we go and then you can
continue<00:38:52.359> doing<00:38:52.720> that<00:38:53.240> we<00:38:53.400> have<00:38:53.560> the<00:38:53.720> username
00:38:54.390 --> 00:38:54.400 align:start position:0%
continue doing that we have the username
00:38:54.400 --> 00:38:57.230 align:start position:0%
continue doing that we have the username
username<00:38:55.000> is<00:38:55.119> going<00:38:55.319> to<00:38:55.640> also<00:38:56.079> be<00:38:56.640> a<00:38:56.800> minimum
00:38:57.230 --> 00:38:57.240 align:start position:0%
username is going to also be a minimum
00:38:57.240 --> 00:38:59.910 align:start position:0%
username is going to also be a minimum
of<00:38:57.400> two<00:38:58.200> characters<00:38:59.200> we<00:38:59.319> don't<00:38:59.560> need<00:38:59.720> a
00:38:59.910 --> 00:38:59.920 align:start position:0%
of two characters we don't need a
00:38:59.920 --> 00:39:02.109 align:start position:0%
of two characters we don't need a
maximum<00:39:00.440> here<00:39:00.839> and<00:39:00.960> we<00:39:01.040> can<00:39:01.240> also<00:39:01.520> provide<00:39:01.920> a
00:39:02.109 --> 00:39:02.119 align:start position:0%
maximum here and we can also provide a
00:39:02.119 --> 00:39:05.510 align:start position:0%
maximum here and we can also provide a
message<00:39:02.720> of<00:39:02.920> something<00:39:03.280> like<00:39:03.640> too<00:39:04.280> short<00:39:05.280> then
00:39:05.510 --> 00:39:05.520 align:start position:0%
message of something like too short then
00:39:05.520 --> 00:39:07.150 align:start position:0%
message of something like too short then
we<00:39:05.640> can<00:39:05.800> have<00:39:05.920> an<00:39:06.079> email<00:39:06.599> which<00:39:06.720> is<00:39:06.839> going<00:39:07.040> to
00:39:07.150 --> 00:39:07.160 align:start position:0%
we can have an email which is going to
00:39:07.160 --> 00:39:08.670 align:start position:0%
we can have an email which is going to
be<00:39:07.359> a<00:39:07.560> z.
00:39:08.670 --> 00:39:08.680 align:start position:0%
be a z.
00:39:08.680 --> 00:39:12.510 align:start position:0%
be a z.
string.<00:39:09.680> email<00:39:10.599> like<00:39:10.880> so<00:39:11.880> and<00:39:12.040> then<00:39:12.200> we<00:39:12.319> can
00:39:12.510 --> 00:39:12.520 align:start position:0%
string. email like so and then we can
00:39:12.520 --> 00:39:15.109 align:start position:0%
string. email like so and then we can
have<00:39:12.680> a<00:39:12.880> password<00:39:13.640> which<00:39:13.760> is<00:39:13.920> going<00:39:14.079> to<00:39:14.200> be<00:39:14.400> z.
00:39:15.109 --> 00:39:15.119 align:start position:0%
have a password which is going to be z.
00:39:15.119 --> 00:39:17.790 align:start position:0%
have a password which is going to be z.
string<00:39:16.119> and<00:39:16.359> it's<00:39:16.520> going<00:39:16.680> to<00:39:16.800> be<00:39:16.960> a<00:39:17.119> men<00:39:17.560> of
00:39:17.790 --> 00:39:17.800 align:start position:0%
string and it's going to be a men of
00:39:17.800 --> 00:39:19.870 align:start position:0%
string and it's going to be a men of
eight<00:39:18.240> characters<00:39:19.200> and<00:39:19.319> we're<00:39:19.440> going<00:39:19.560> to<00:39:19.680> say
00:39:19.870 --> 00:39:19.880 align:start position:0%
eight characters and we're going to say
00:39:19.880 --> 00:39:22.109 align:start position:0%
eight characters and we're going to say
to<00:39:20.160> short<00:39:20.760> if<00:39:20.920> it's<00:39:21.160> less<00:39:21.400> than
00:39:22.109 --> 00:39:22.119 align:start position:0%
to short if it's less than
00:39:22.119 --> 00:39:24.670 align:start position:0%
to short if it's less than
eight<00:39:23.119> of<00:39:23.280> course<00:39:23.480> feel<00:39:23.720> free<00:39:23.960> to<00:39:24.280> provide
00:39:24.670 --> 00:39:24.680 align:start position:0%
eight of course feel free to provide
00:39:24.680 --> 00:39:26.950 align:start position:0%
eight of course feel free to provide
more<00:39:24.880> meaningful<00:39:25.400> error<00:39:25.760> messages<00:39:26.560> something
00:39:26.950 --> 00:39:26.960 align:start position:0%
more meaningful error messages something
00:39:26.960 --> 00:39:31.510 align:start position:0%
more meaningful error messages something
like<00:39:27.680> password<00:39:28.680> must<00:39:29.079> be<00:39:29.599> at<00:39:29.839> least<00:39:30.440> eight
00:39:31.510 --> 00:39:31.520 align:start position:0%
like password must be at least eight
00:39:31.520 --> 00:39:33.589 align:start position:0%
like password must be at least eight
characters<00:39:32.520> you<00:39:32.599> can<00:39:32.760> do<00:39:32.960> that<00:39:33.079> for<00:39:33.280> all<00:39:33.440> the
00:39:33.589 --> 00:39:33.599 align:start position:0%
characters you can do that for all the
00:39:33.599 --> 00:39:36.550 align:start position:0%
characters you can do that for all the
other<00:39:33.800> ones<00:39:34.640> now<00:39:34.839> we<00:39:35.000> have<00:39:35.200> our<00:39:35.440> proper<00:39:35.800> signup
00:39:36.550 --> 00:39:36.560 align:start position:0%
other ones now we have our proper signup
00:39:36.560 --> 00:39:38.910 align:start position:0%
other ones now we have our proper signup
validation<00:39:37.560> but<00:39:37.920> as<00:39:38.000> you<00:39:38.119> can<00:39:38.280> notice<00:39:38.720> we're
00:39:38.910 --> 00:39:38.920 align:start position:0%
validation but as you can notice we're
00:39:38.920 --> 00:39:41.470 align:start position:0%
validation but as you can notice we're
using<00:39:39.280> it<00:39:39.520> here<00:39:40.160> but<00:39:40.480> as<00:39:40.599> for<00:39:40.800> the<00:39:41.000> default
00:39:41.470 --> 00:39:41.480 align:start position:0%
using it here but as for the default
00:39:41.480 --> 00:39:43.430 align:start position:0%
using it here but as for the default
values<00:39:41.920> we're<00:39:42.160> simply<00:39:42.640> defining<00:39:43.160> the
00:39:43.430 --> 00:39:43.440 align:start position:0%
values we're simply defining the
00:39:43.440 --> 00:39:46.550 align:start position:0%
values we're simply defining the
username<00:39:44.440> so<00:39:44.800> let's<00:39:45.040> also<00:39:45.400> add<00:39:45.599> a<00:39:45.800> name<00:39:46.240> at<00:39:46.440> the
00:39:46.550 --> 00:39:46.560 align:start position:0%
username so let's also add a name at the
00:39:46.560 --> 00:39:49.670 align:start position:0%
username so let's also add a name at the
start<00:39:46.920> equal<00:39:47.240> to<00:39:47.400> an<00:39:47.520> empty
00:39:49.670 --> 00:39:49.680 align:start position:0%
start equal to an empty
00:39:49.680 --> 00:39:53.109 align:start position:0%
start equal to an empty
string<00:39:50.680> let's<00:39:50.880> also<00:39:51.119> do<00:39:51.240> a<00:39:51.800> username<00:39:52.800> after
00:39:53.109 --> 00:39:53.119 align:start position:0%
string let's also do a username after
00:39:53.119 --> 00:39:54.710 align:start position:0%
string let's also do a username after
that<00:39:53.280> we're<00:39:53.400> going<00:39:53.480> to<00:39:53.599> have<00:39:53.720> an
00:39:54.710 --> 00:39:54.720 align:start position:0%
that we're going to have an
00:39:54.720 --> 00:39:57.910 align:start position:0%
that we're going to have an
email<00:39:55.720> and<00:39:55.920> finally<00:39:56.480> we're<00:39:56.599> going<00:39:56.720> to<00:39:56.920> have<00:39:57.240> a
00:39:57.910 --> 00:39:57.920 align:start position:0%
email and finally we're going to have a
00:39:57.920 --> 00:40:00.349 align:start position:0%
email and finally we're going to have a
password<00:39:58.920> so<00:39:59.119> now<00:39:59.240> we're<00:39:59.440> starting<00:39:59.760> to<00:40:00.000> create
00:40:00.349 --> 00:40:00.359 align:start position:0%
password so now we're starting to create
00:40:00.359 --> 00:40:02.990 align:start position:0%
password so now we're starting to create
the<00:40:00.599> structure<00:40:01.359> for<00:40:01.760> what<00:40:01.960> our<00:40:02.160> form<00:40:02.599> is<00:40:02.839> yet
00:40:02.990 --> 00:40:03.000 align:start position:0%
the structure for what our form is yet
00:40:03.000 --> 00:40:05.349 align:start position:0%
the structure for what our form is yet
to<00:40:03.440> become<00:40:04.440> and<00:40:04.560> of<00:40:04.680> course<00:40:04.920> the<00:40:05.040> next<00:40:05.200> thing
00:40:05.349 --> 00:40:05.359 align:start position:0%
to become and of course the next thing
00:40:05.359 --> 00:40:07.950 align:start position:0%
to become and of course the next thing
we<00:40:05.520> have<00:40:05.640> to<00:40:05.760> do<00:40:06.240> is<00:40:06.520> actually<00:40:07.359> create<00:40:07.720> our
00:40:07.950 --> 00:40:07.960 align:start position:0%
we have to do is actually create our
00:40:07.960 --> 00:40:10.349 align:start position:0%
we have to do is actually create our
form<00:40:08.560> with<00:40:08.760> all<00:40:08.960> of<00:40:09.079> the<00:40:09.280> necessary<00:40:09.760> form
00:40:10.349 --> 00:40:10.359 align:start position:0%
form with all of the necessary form
00:40:10.359 --> 00:40:13.190 align:start position:0%
form with all of the necessary form
Fields<00:40:11.359> so<00:40:11.760> if<00:40:11.880> we<00:40:12.040> go<00:40:12.240> back<00:40:12.440> to<00:40:12.560> the<00:40:12.680> finished
00:40:13.190 --> 00:40:13.200 align:start position:0%
Fields so if we go back to the finished
00:40:13.200 --> 00:40:15.630 align:start position:0%
Fields so if we go back to the finished
site<00:40:14.200> right<00:40:14.359> now<00:40:14.640> we<00:40:14.800> still<00:40:15.079> have<00:40:15.319> just<00:40:15.480> the
00:40:15.630 --> 00:40:15.640 align:start position:0%
site right now we still have just the
00:40:15.640 --> 00:40:17.829 align:start position:0%
site right now we still have just the
input<00:40:16.480> but<00:40:16.680> let's<00:40:16.880> go<00:40:17.000> ahead<00:40:17.240> and<00:40:17.440> put<00:40:17.599> this
00:40:17.829 --> 00:40:17.839 align:start position:0%
input but let's go ahead and put this
00:40:17.839 --> 00:40:19.670 align:start position:0%
input but let's go ahead and put this
side<00:40:18.040> by<00:40:18.319> side<00:40:18.480> with<00:40:18.599> our<00:40:18.760> editor<00:40:19.280> so<00:40:19.480> we<00:40:19.560> can
00:40:19.670 --> 00:40:19.680 align:start position:0%
side by side with our editor so we can
00:40:19.680 --> 00:40:22.870 align:start position:0%
side by side with our editor so we can
see<00:40:19.880> the<00:40:20.000> changes<00:40:20.440> that<00:40:20.599> we<00:40:20.720> make<00:40:21.240> live<00:40:22.240> now<00:40:22.680> we
00:40:22.870 --> 00:40:22.880 align:start position:0%
see the changes that we make live now we
00:40:22.880 --> 00:40:24.829 align:start position:0%
see the changes that we make live now we
have<00:40:23.040> our<00:40:23.240> form<00:40:23.599> on<00:40:23.720> the<00:40:23.920> right<00:40:24.200> side<00:40:24.520> and<00:40:24.680> the
00:40:24.829 --> 00:40:24.839 align:start position:0%
have our form on the right side and the
00:40:24.839 --> 00:40:27.109 align:start position:0%
have our form on the right side and the
code<00:40:25.119> on<00:40:25.240> the<00:40:25.440> left<00:40:25.960> so<00:40:26.400> let's<00:40:26.560> go<00:40:26.680> ahead<00:40:26.960> and
00:40:27.109 --> 00:40:27.119 align:start position:0%
code on the left so let's go ahead and
00:40:27.119 --> 00:40:30.069 align:start position:0%
code on the left so let's go ahead and
turn<00:40:27.400> this<00:40:27.560> into<00:40:27.800> an<00:40:28.079> actual<00:40:28.760> final<00:40:29.240> form<00:40:29.880> to
00:40:30.069 --> 00:40:30.079 align:start position:0%
turn this into an actual final form to
00:40:30.079 --> 00:40:33.109 align:start position:0%
turn this into an actual final form to
look<00:40:30.520> exactly<00:40:31.280> like<00:40:31.520> this<00:40:31.680> one<00:40:31.920> does<00:40:32.800> to<00:40:32.960> be
00:40:33.109 --> 00:40:33.119 align:start position:0%
look exactly like this one does to be
00:40:33.119 --> 00:40:34.990 align:start position:0%
look exactly like this one does to be
able<00:40:33.359> to<00:40:33.480> do<00:40:33.720> that<00:40:34.079> we<00:40:34.200> can<00:40:34.440> start<00:40:34.760> with<00:40:34.880> the
00:40:34.990 --> 00:40:35.000 align:start position:0%
able to do that we can start with the
00:40:35.000 --> 00:40:37.510 align:start position:0%
able to do that we can start with the
outer<00:40:35.440> div<00:40:36.079> or<00:40:36.319> rather<00:40:36.560> with<00:40:36.720> the<00:40:36.839> form<00:40:37.400> we
00:40:37.510 --> 00:40:37.520 align:start position:0%
outer div or rather with the form we
00:40:37.520 --> 00:40:38.990 align:start position:0%
outer div or rather with the form we
don't<00:40:37.760> need<00:40:37.920> to<00:40:38.079> wrap<00:40:38.400> the<00:40:38.480> form<00:40:38.760> with
00:40:38.990 --> 00:40:39.000 align:start position:0%
don't need to wrap the form with
00:40:39.000 --> 00:40:41.150 align:start position:0%
don't need to wrap the form with
anything<00:40:39.640> as<00:40:39.800> the<00:40:39.920> form<00:40:40.319> is<00:40:40.440> going<00:40:40.640> to<00:40:40.760> be<00:40:40.960> the
00:40:41.150 --> 00:40:41.160 align:start position:0%
anything as the form is going to be the
00:40:41.160 --> 00:40:43.670 align:start position:0%
anything as the form is going to be the
most<00:40:41.520> outer<00:40:42.000> side<00:40:42.400> container<00:40:43.240> so<00:40:43.400> we<00:40:43.480> can
00:40:43.670 --> 00:40:43.680 align:start position:0%
most outer side container so we can
00:40:43.680 --> 00:40:46.990 align:start position:0%
most outer side container so we can
remove<00:40:44.079> this<00:40:44.359> outer<00:40:44.920> div<00:40:45.920> and<00:40:46.119> we<00:40:46.240> can<00:40:46.400> select
00:40:46.990 --> 00:40:47.000 align:start position:0%
remove this outer div and we can select
00:40:47.000 --> 00:40:50.190 align:start position:0%
remove this outer div and we can select
everything<00:40:47.599> within<00:40:47.880> the<00:40:48.000> form<00:40:48.800> just<00:40:49.119> like<00:40:49.400> so
00:40:50.190 --> 00:40:50.200 align:start position:0%
everything within the form just like so
00:40:50.200 --> 00:40:53.109 align:start position:0%
everything within the form just like so
and<00:40:50.560> indent<00:40:50.920> it<00:40:51.160> properly<00:40:52.160> I<00:40:52.319> always<00:40:52.640> try<00:40:52.880> to
00:40:53.109 --> 00:40:53.119 align:start position:0%
and indent it properly I always try to
00:40:53.119 --> 00:40:54.630 align:start position:0%
and indent it properly I always try to
keep<00:40:53.480> my<00:40:53.640> code
00:40:54.630 --> 00:40:54.640 align:start position:0%
keep my code
00:40:54.640 --> 00:40:57.150 align:start position:0%
keep my code
clean<00:40:55.640> now<00:40:55.920> within<00:40:56.160> the<00:40:56.359> this<00:40:56.480> form<00:40:56.960> we're
00:40:57.150 --> 00:40:57.160 align:start position:0%
clean now within the this form we're
00:40:57.160 --> 00:40:59.870 align:start position:0%
clean now within the this form we're
going<00:40:57.280> to<00:40:57.520> have<00:40:57.800> a<00:40:58.000> div<00:40:58.599> so<00:40:58.920> right<00:40:59.119> here<00:40:59.520> create
00:40:59.870 --> 00:40:59.880 align:start position:0%
going to have a div so right here create
00:40:59.880 --> 00:41:01.150 align:start position:0%
going to have a div so right here create
a<00:41:00.040> new
00:41:01.150 --> 00:41:01.160 align:start position:0%
a new
00:41:01.160 --> 00:41:03.910 align:start position:0%
a new
div<00:41:02.160> and<00:41:02.599> this<00:41:02.800> div<00:41:03.160> is<00:41:03.280> going<00:41:03.480> to<00:41:03.640> have<00:41:03.760> a
00:41:03.910 --> 00:41:03.920 align:start position:0%
div and this div is going to have a
00:41:03.920 --> 00:41:07.349 align:start position:0%
div and this div is going to have a
class<00:41:04.319> name<00:41:04.920> equal<00:41:05.280> to<00:41:05.960> on<00:41:06.160> small<00:41:06.520> devices
00:41:07.349 --> 00:41:07.359 align:start position:0%
class name equal to on small devices
00:41:07.359 --> 00:41:08.870 align:start position:0%
class name equal to on small devices
width<00:41:07.680> is<00:41:07.800> going<00:41:07.960> to<00:41:08.079> be
00:41:08.870 --> 00:41:08.880 align:start position:0%
width is going to be
00:41:08.880 --> 00:41:12.870 align:start position:0%
width is going to be
420<00:41:09.880> it's<00:41:10.040> going<00:41:10.200> to<00:41:10.359> be<00:41:10.599> Flex<00:41:11.720> Center<00:41:12.720> and
00:41:12.870 --> 00:41:12.880 align:start position:0%
420 it's going to be Flex Center and
00:41:12.880 --> 00:41:14.910 align:start position:0%
420 it's going to be Flex Center and
it's<00:41:13.040> going<00:41:13.200> to<00:41:13.280> be<00:41:13.440> Flex<00:41:13.839> C<00:41:14.200> so<00:41:14.359> the<00:41:14.440> elements
00:41:14.910 --> 00:41:14.920 align:start position:0%
it's going to be Flex C so the elements
00:41:14.920 --> 00:41:17.870 align:start position:0%
it's going to be Flex C so the elements
appear<00:41:15.440> one<00:41:15.640> below<00:41:16.119> another<00:41:17.119> next<00:41:17.440> we<00:41:17.599> have<00:41:17.720> to
00:41:17.870 --> 00:41:17.880 align:start position:0%
appear one below another next we have to
00:41:17.880 --> 00:41:20.270 align:start position:0%
appear one below another next we have to
create<00:41:18.200> this<00:41:18.400> logo<00:41:18.800> on<00:41:18.960> the<00:41:19.200> top<00:41:19.720> so<00:41:20.000> let's
00:41:20.270 --> 00:41:20.280 align:start position:0%
create this logo on the top so let's
00:41:20.280 --> 00:41:22.829 align:start position:0%
create this logo on the top so let's
immediately<00:41:20.760> do<00:41:21.079> that<00:41:21.880> here<00:41:22.160> we<00:41:22.280> can<00:41:22.400> render<00:41:22.720> a
00:41:22.829 --> 00:41:22.839 align:start position:0%
immediately do that here we can render a
00:41:22.839 --> 00:41:24.790 align:start position:0%
immediately do that here we can render a
self-closing<00:41:23.599> image<00:41:24.160> that's<00:41:24.359> going<00:41:24.520> to<00:41:24.640> have
00:41:24.790 --> 00:41:24.800 align:start position:0%
self-closing image that's going to have
00:41:24.800 --> 00:41:30.710 align:start position:0%
self-closing image that's going to have
a<00:41:24.960> source<00:41:25.720> of<00:41:26.280> /<00:41:27.040> assets<00:41:28.040> SL<00:41:28.520> images<00:41:29.520> SL
00:41:30.710 --> 00:41:30.720 align:start position:0%
a source of / assets SL images SL
00:41:30.720 --> 00:41:33.030 align:start position:0%
a source of / assets SL images SL
logo.svg<00:41:31.720> and<00:41:31.880> you<00:41:31.960> can<00:41:32.079> give<00:41:32.200> it<00:41:32.319> an<00:41:32.480> ALT<00:41:32.800> tag
00:41:33.030 --> 00:41:33.040 align:start position:0%
logo.svg and you can give it an ALT tag
00:41:33.040 --> 00:41:35.790 align:start position:0%
logo.svg and you can give it an ALT tag
of<00:41:33.359> logo<00:41:34.359> now<00:41:34.520> if<00:41:34.599> you<00:41:34.760> save<00:41:35.000> it<00:41:35.400> you<00:41:35.480> should<00:41:35.680> be
00:41:35.790 --> 00:41:35.800 align:start position:0%
of logo now if you save it you should be
00:41:35.800 --> 00:41:38.270 align:start position:0%
of logo now if you save it you should be
able<00:41:36.000> to<00:41:36.160> see<00:41:36.480> a<00:41:36.760> nice<00:41:37.079> looking<00:41:37.359> logo<00:41:37.800> appear
00:41:38.270 --> 00:41:38.280 align:start position:0%
able to see a nice looking logo appear
00:41:38.280 --> 00:41:41.150 align:start position:0%
able to see a nice looking logo appear
right<00:41:38.440> on<00:41:38.680> top<00:41:39.200> as<00:41:39.280> soon<00:41:39.440> as<00:41:39.560> you<00:41:39.960> reload<00:41:40.960> and
00:41:41.150 --> 00:41:41.160 align:start position:0%
right on top as soon as you reload and
00:41:41.160 --> 00:41:43.589 align:start position:0%
right on top as soon as you reload and
there<00:41:41.280> we<00:41:41.440> go<00:41:41.800> you<00:41:41.880> can<00:41:42.040> see<00:41:42.319> logo's<00:41:42.760> icon
00:41:43.589 --> 00:41:43.599 align:start position:0%
there we go you can see logo's icon
00:41:43.599 --> 00:41:45.470 align:start position:0%
there we go you can see logo's icon
actually<00:41:43.960> the<00:41:44.079> entire<00:41:44.440> logo<00:41:44.720> is<00:41:44.920> there<00:41:45.319> as<00:41:45.400> you
00:41:45.470 --> 00:41:45.480 align:start position:0%
actually the entire logo is there as you
00:41:45.480 --> 00:41:47.790 align:start position:0%
actually the entire logo is there as you
can<00:41:45.599> see<00:41:45.800> when<00:41:45.920> I<00:41:46.079> drag<00:41:46.319> and<00:41:46.480> drop<00:41:46.760> it<00:41:47.040> here<00:41:47.640> but
00:41:47.790 --> 00:41:47.800 align:start position:0%
can see when I drag and drop it here but
00:41:47.800 --> 00:41:49.510 align:start position:0%
can see when I drag and drop it here but
you<00:41:47.920> cannot<00:41:48.200> see<00:41:48.359> it<00:41:48.560> as<00:41:48.720> the<00:41:48.880> background<00:41:49.280> is
00:41:49.510 --> 00:41:49.520 align:start position:0%
you cannot see it as the background is
00:41:49.520 --> 00:41:52.510 align:start position:0%
you cannot see it as the background is
white<00:41:50.440> so<00:41:50.720> let's<00:41:50.960> go<00:41:51.119> ahead<00:41:51.520> and<00:41:51.800> figure<00:41:52.119> out
00:41:52.510 --> 00:41:52.520 align:start position:0%
white so let's go ahead and figure out
00:41:52.520 --> 00:41:55.150 align:start position:0%
white so let's go ahead and figure out
why<00:41:52.720> our<00:41:53.040> background<00:41:53.560> is<00:41:53.760> not<00:41:54.119> dark<00:41:54.599> as<00:41:54.720> it<00:41:54.880> was
00:41:55.150 --> 00:41:55.160 align:start position:0%
why our background is not dark as it was
00:41:55.160 --> 00:41:59.150 align:start position:0%
why our background is not dark as it was
dark<00:41:55.520> before<00:41:56.720> if<00:41:56.839> you<00:41:57.040> head<00:41:57.280> to<00:41:57.680> your<00:41:58.280> global.
00:41:59.150 --> 00:41:59.160 align:start position:0%
dark before if you head to your global.
00:41:59.160 --> 00:42:01.550 align:start position:0%
dark before if you head to your global.
CSS<00:41:59.720> file<00:42:00.359> you'll<00:42:00.640> notice<00:42:01.119> it<00:42:01.280> got
00:42:01.550 --> 00:42:01.560 align:start position:0%
CSS file you'll notice it got
00:42:01.560 --> 00:42:05.190 align:start position:0%
CSS file you'll notice it got
overwritten<00:42:02.400> by<00:42:03.000> shaten<00:42:04.000> and<00:42:04.520> it's<00:42:04.720> no<00:42:04.880> longer
00:42:05.190 --> 00:42:05.200 align:start position:0%
overwritten by shaten and it's no longer
00:42:05.200 --> 00:42:07.150 align:start position:0%
overwritten by shaten and it's no longer
applying<00:42:05.640> the<00:42:05.920> black<00:42:06.319> background<00:42:06.800> on<00:42:06.960> our
00:42:07.150 --> 00:42:07.160 align:start position:0%
applying the black background on our
00:42:07.160 --> 00:42:09.589 align:start position:0%
applying the black background on our
body<00:42:07.880> so<00:42:08.200> once<00:42:08.440> again<00:42:08.720> to<00:42:08.920> get<00:42:09.119> back<00:42:09.280> to<00:42:09.400> our
00:42:09.589 --> 00:42:09.599 align:start position:0%
body so once again to get back to our
00:42:09.599 --> 00:42:11.470 align:start position:0%
body so once again to get back to our
previous<00:42:09.960> globals<00:42:10.560> you'll<00:42:10.760> have<00:42:10.880> to<00:42:11.079> go<00:42:11.280> to
00:42:11.470 --> 00:42:11.480 align:start position:0%
previous globals you'll have to go to
00:42:11.480 --> 00:42:14.230 align:start position:0%
previous globals you'll have to go to
the<00:42:11.640> GitHub<00:42:12.000> jiz<00:42:12.280> down<00:42:12.480> below<00:42:13.240> copy<00:42:13.560> it<00:42:14.079> and
00:42:14.230 --> 00:42:14.240 align:start position:0%
the GitHub jiz down below copy it and
00:42:14.240 --> 00:42:17.430 align:start position:0%
the GitHub jiz down below copy it and
then<00:42:14.480> paste<00:42:14.760> it<00:42:15.240> right<00:42:15.520> over<00:42:16.119> here<00:42:17.119> once<00:42:17.319> you
00:42:17.430 --> 00:42:17.440 align:start position:0%
then paste it right over here once you
00:42:17.440 --> 00:42:19.030 align:start position:0%
then paste it right over here once you
do<00:42:17.640> that<00:42:17.800> you're<00:42:17.960> going<00:42:18.040> to<00:42:18.200> get<00:42:18.319> an<00:42:18.480> error
00:42:19.030 --> 00:42:19.040 align:start position:0%
do that you're going to get an error
00:42:19.040 --> 00:42:22.630 align:start position:0%
do that you're going to get an error
because<00:42:19.400> our<00:42:19.720> tail<00:42:20.040> wi.<00:42:20.640> config.js<00:42:21.480> also<00:42:22.319> got
00:42:22.630 --> 00:42:22.640 align:start position:0%
because our tail wi. config.js also got
00:42:22.640 --> 00:42:24.950 align:start position:0%
because our tail wi. config.js also got
overridden<00:42:23.640> so<00:42:23.960> copy<00:42:24.240> it<00:42:24.359> from<00:42:24.480> the<00:42:24.599> GitHub
00:42:24.950 --> 00:42:24.960 align:start position:0%
overridden so copy it from the GitHub
00:42:24.960 --> 00:42:27.549 align:start position:0%
overridden so copy it from the GitHub
gist<00:42:25.359> and<00:42:25.480> then<00:42:25.680> paste<00:42:25.920> it<00:42:26.319> right<00:42:26.520> here<00:42:27.359> that's
00:42:27.549 --> 00:42:27.559 align:start position:0%
gist and then paste it right here that's
00:42:27.559 --> 00:42:29.510 align:start position:0%
gist and then paste it right here that's
going<00:42:27.760> to<00:42:27.920> ensure<00:42:28.400> that<00:42:28.520> you<00:42:28.720> have<00:42:29.000> access<00:42:29.319> to
00:42:29.510 --> 00:42:29.520 align:start position:0%
going to ensure that you have access to
00:42:29.520 --> 00:42:32.670 align:start position:0%
going to ensure that you have access to
all<00:42:29.880> the<00:42:30.040> necessary<00:42:30.680> theme<00:42:31.319> colors<00:42:32.319> and
00:42:32.670 --> 00:42:32.680 align:start position:0%
all the necessary theme colors and
00:42:32.680 --> 00:42:34.910 align:start position:0%
all the necessary theme colors and
everything<00:42:33.000> is<00:42:33.119> going<00:42:33.319> to<00:42:33.480> work<00:42:33.839> as<00:42:33.960> it<00:42:34.200> should
00:42:34.910 --> 00:42:34.920 align:start position:0%
everything is going to work as it should
00:42:34.920 --> 00:42:38.309 align:start position:0%
everything is going to work as it should
now<00:42:35.319> with<00:42:35.520> the<00:42:35.640> dark<00:42:36.280> mode<00:42:37.280> so<00:42:37.720> below<00:42:38.119> this
00:42:38.309 --> 00:42:38.319 align:start position:0%
now with the dark mode so below this
00:42:38.319 --> 00:42:40.990 align:start position:0%
now with the dark mode so below this
image<00:42:38.839> let's<00:42:39.079> create<00:42:39.359> an<00:42:39.520> H2<00:42:40.400> that's<00:42:40.599> going<00:42:40.800> to
00:42:40.990 --> 00:42:41.000 align:start position:0%
image let's create an H2 that's going to
00:42:41.000 --> 00:42:44.230 align:start position:0%
image let's create an H2 that's going to
say<00:42:41.440> something<00:42:41.839> like<00:42:42.200> create<00:42:42.839> a<00:42:43.119> new
00:42:44.230 --> 00:42:44.240 align:start position:0%
say something like create a new
00:42:44.240 --> 00:42:47.390 align:start position:0%
say something like create a new
account<00:42:45.240> and<00:42:45.559> we<00:42:45.680> can<00:42:45.839> give<00:42:45.960> it<00:42:46.040> a<00:42:46.240> class<00:42:46.599> name
00:42:47.390 --> 00:42:47.400 align:start position:0%
account and we can give it a class name
00:42:47.400 --> 00:42:50.870 align:start position:0%
account and we can give it a class name
of<00:42:48.200> H3<00:42:49.200> bold<00:42:50.200> now<00:42:50.400> I<00:42:50.480> know<00:42:50.599> what<00:42:50.720> you're
00:42:50.870 --> 00:42:50.880 align:start position:0%
of H3 bold now I know what you're
00:42:50.880 --> 00:42:54.390 align:start position:0%
of H3 bold now I know what you're
thinking<00:42:51.520> why<00:42:51.760> H3<00:42:52.480> if<00:42:52.640> the<00:42:52.760> element<00:42:53.079> is<00:42:53.400> H2
00:42:54.390 --> 00:42:54.400 align:start position:0%
thinking why H3 if the element is H2
00:42:54.400 --> 00:42:56.549 align:start position:0%
thinking why H3 if the element is H2
well<00:42:54.640> that's<00:42:54.880> because<00:42:55.200> on<00:42:55.400> medium<00:42:55.760> devices<00:42:56.240> is
00:42:56.549 --> 00:42:56.559 align:start position:0%
well that's because on medium devices is
00:42:56.559 --> 00:42:58.710 align:start position:0%
well that's because on medium devices is
it's<00:42:56.760> going<00:42:56.920> to<00:42:57.040> be<00:42:57.280> H2<00:42:57.880> bold<00:42:58.319> so<00:42:58.440> we're<00:42:58.599> going
00:42:58.710 --> 00:42:58.720 align:start position:0%
it's going to be H2 bold so we're going
00:42:58.720 --> 00:43:01.470 align:start position:0%
it's going to be H2 bold so we're going
to<00:42:58.839> make<00:42:58.960> it<00:42:59.079> a<00:42:59.240> bit<00:42:59.480> smaller<00:43:00.240> there<00:43:01.200> we<00:43:01.280> can
00:43:01.470 --> 00:43:01.480 align:start position:0%
to make it a bit smaller there we can
00:43:01.480 --> 00:43:04.510 align:start position:0%
to make it a bit smaller there we can
also<00:43:01.720> give<00:43:01.839> it<00:43:01.920> a<00:43:02.079> padding<00:43:02.480> top<00:43:02.920> of<00:43:03.319> five<00:43:03.760> so<00:43:04.119> PT
00:43:04.510 --> 00:43:04.520 align:start position:0%
also give it a padding top of five so PT
00:43:04.520 --> 00:43:07.309 align:start position:0%
also give it a padding top of five so PT
of<00:43:04.760> five<00:43:05.400> and<00:43:05.559> then<00:43:05.760> small<00:43:06.040> devices<00:43:06.760> a<00:43:06.920> larger
00:43:07.309 --> 00:43:07.319 align:start position:0%
of five and then small devices a larger
00:43:07.319 --> 00:43:10.950 align:start position:0%
of five and then small devices a larger
PT<00:43:07.800> of<00:43:08.079> 12<00:43:08.599> to<00:43:08.760> create<00:43:09.040> some<00:43:09.599> spacing<00:43:10.599> below
00:43:10.950 --> 00:43:10.960 align:start position:0%
PT of 12 to create some spacing below
00:43:10.960 --> 00:43:13.790 align:start position:0%
PT of 12 to create some spacing below
the<00:43:11.119> H2<00:43:11.760> we<00:43:11.839> can<00:43:12.000> have<00:43:12.200> a<00:43:12.359> P<00:43:12.640> tag<00:43:13.160> and<00:43:13.359> this<00:43:13.559> P
00:43:13.790 --> 00:43:13.800 align:start position:0%
the H2 we can have a P tag and this P
00:43:13.800 --> 00:43:17.829 align:start position:0%
the H2 we can have a P tag and this P
tag<00:43:14.040> is<00:43:14.119> going<00:43:14.319> to<00:43:14.480> say<00:43:15.040> to<00:43:15.359> use
00:43:17.829 --> 00:43:17.839 align:start position:0%
tag is going to say to use
00:43:17.839 --> 00:43:21.589 align:start position:0%
tag is going to say to use
snapgram<00:43:18.839> enter<00:43:19.520> your<00:43:20.000> account
00:43:21.589 --> 00:43:21.599 align:start position:0%
snapgram enter your account
00:43:21.599 --> 00:43:24.390 align:start position:0%
snapgram enter your account
details<00:43:22.599> and<00:43:22.800> now<00:43:23.040> we<00:43:23.119> can<00:43:23.280> give<00:43:23.400> it<00:43:23.520> a<00:43:23.680> class
00:43:24.390 --> 00:43:24.400 align:start position:0%
details and now we can give it a class
00:43:24.400 --> 00:43:28.030 align:start position:0%
details and now we can give it a class
name<00:43:25.400> that's<00:43:25.599> going<00:43:25.720> to<00:43:25.839> say<00:43:26.359> text-
00:43:28.030 --> 00:43:28.040 align:start position:0%
name that's going to say text-
00:43:28.040 --> 00:43:32.190 align:start position:0%
name that's going to say text-
light-3<00:43:29.040> small-<00:43:29.920> medium<00:43:30.480> for<00:43:30.720> the<00:43:30.880> font<00:43:31.280> size
00:43:32.190 --> 00:43:32.200 align:start position:0%
light-3 small- medium for the font size
00:43:32.200 --> 00:43:35.870 align:start position:0%
light-3 small- medium for the font size
on<00:43:32.520> medium<00:43:33.000> devices<00:43:33.880> base<00:43:34.400> Dash<00:43:34.720> regular<00:43:35.680> and
00:43:35.870 --> 00:43:35.880 align:start position:0%
on medium devices base Dash regular and
00:43:35.880 --> 00:43:38.710 align:start position:0%
on medium devices base Dash regular and
a<00:43:36.040> margin<00:43:36.440> top<00:43:36.720> of<00:43:37.200> 12<00:43:38.200> and<00:43:38.400> we<00:43:38.520> don't
00:43:38.710 --> 00:43:38.720 align:start position:0%
a margin top of 12 and we don't
00:43:38.720 --> 00:43:40.430 align:start position:0%
a margin top of 12 and we don't
necessarily<00:43:39.160> have<00:43:39.280> to<00:43:39.359> say<00:43:39.680> count<00:43:40.200> just
00:43:40.430 --> 00:43:40.440 align:start position:0%
necessarily have to say count just
00:43:40.440 --> 00:43:43.710 align:start position:0%
necessarily have to say count just
details<00:43:41.119> to<00:43:41.319> use<00:43:41.480> a<00:43:41.599> bit<00:43:41.800> less<00:43:42.240> width<00:43:43.240> now<00:43:43.599> we
00:43:43.710 --> 00:43:43.720 align:start position:0%
details to use a bit less width now we
00:43:43.720 --> 00:43:46.309 align:start position:0%
details to use a bit less width now we
want<00:43:43.839> to<00:43:44.040> wrap<00:43:44.400> our<00:43:44.640> entire<00:43:45.079> form<00:43:45.760> within<00:43:46.079> this
00:43:46.309 --> 00:43:46.319 align:start position:0%
want to wrap our entire form within this
00:43:46.319 --> 00:43:49.549 align:start position:0%
want to wrap our entire form within this
div<00:43:46.760> so<00:43:46.960> let's<00:43:47.200> copy<00:43:47.480> the<00:43:47.599> ending<00:43:48.160> tag<00:43:49.160> and
00:43:49.549 --> 00:43:49.559 align:start position:0%
div so let's copy the ending tag and
00:43:49.559 --> 00:43:51.349 align:start position:0%
div so let's copy the ending tag and
paste<00:43:49.839> it<00:43:50.000> right<00:43:50.280> here<00:43:50.480> below<00:43:50.760> the<00:43:50.880> end<00:43:51.079> of<00:43:51.240> the
00:43:51.349 --> 00:43:51.359 align:start position:0%
paste it right here below the end of the
00:43:51.359 --> 00:43:54.910 align:start position:0%
paste it right here below the end of the
form<00:43:52.359> and<00:43:52.680> let's<00:43:52.960> expand<00:43:53.319> our<00:43:53.559> form<00:43:54.200> to<00:43:54.520> fit
00:43:54.910 --> 00:43:54.920 align:start position:0%
form and let's expand our form to fit
00:43:54.920 --> 00:43:56.670 align:start position:0%
form and let's expand our form to fit
nicely<00:43:55.400> right<00:43:55.599> here
00:43:56.670 --> 00:43:56.680 align:start position:0%
nicely right here
00:43:56.680 --> 00:43:59.390 align:start position:0%
nicely right here
there<00:43:56.839> we<00:43:57.040> go<00:43:57.839> now<00:43:58.079> our<00:43:58.280> form<00:43:58.800> is<00:43:58.960> going<00:43:59.119> to
00:43:59.390 --> 00:43:59.400 align:start position:0%
there we go now our form is going to
00:43:59.400 --> 00:44:02.750 align:start position:0%
there we go now our form is going to
have<00:43:59.720> a<00:44:00.000> class<00:44:00.400> name<00:44:01.119> of
00:44:02.750 --> 00:44:02.760 align:start position:0%
have a class name of
00:44:02.760 --> 00:44:04.670 align:start position:0%
have a class name of
flex
00:44:04.670 --> 00:44:04.680 align:start position:0%
flex
00:44:04.680 --> 00:44:08.710 align:start position:0%
flex
flex-all<00:44:05.680> gap<00:44:05.960> of<00:44:06.200> five<00:44:06.920> w-<00:44:07.640> full<00:44:08.440> and<00:44:08.559> then
00:44:08.710 --> 00:44:08.720 align:start position:0%
flex-all gap of five w- full and then
00:44:08.720 --> 00:44:11.109 align:start position:0%
flex-all gap of five w- full and then
margin<00:44:09.160> top<00:44:09.440> of<00:44:09.559> four<00:44:10.359> this<00:44:10.480> is<00:44:10.599> going<00:44:10.760> to<00:44:10.920> make
00:44:11.109 --> 00:44:11.119 align:start position:0%
margin top of four this is going to make
00:44:11.119 --> 00:44:13.190 align:start position:0%
margin top of four this is going to make
the<00:44:11.280> elements<00:44:11.720> extend<00:44:12.119> the<00:44:12.319> full<00:44:12.720> width<00:44:13.079> of
00:44:13.190 --> 00:44:13.200 align:start position:0%
the elements extend the full width of
00:44:13.200 --> 00:44:15.549 align:start position:0%
the elements extend the full width of
the<00:44:13.359> screen<00:44:14.240> or<00:44:14.520> rather<00:44:14.800> full<00:44:15.119> width<00:44:15.319> of<00:44:15.440> the
00:44:15.549 --> 00:44:15.559 align:start position:0%
the screen or rather full width of the
00:44:15.559 --> 00:44:17.670 align:start position:0%
the screen or rather full width of the
container<00:44:16.240> so<00:44:16.520> now<00:44:16.760> everything<00:44:17.079> looks
00:44:17.670 --> 00:44:17.680 align:start position:0%
container so now everything looks
00:44:17.680 --> 00:44:20.390 align:start position:0%
container so now everything looks
uniform<00:44:18.680> the<00:44:18.839> first<00:44:19.119> field<00:44:19.480> we<00:44:19.680> have<00:44:20.079> is<00:44:20.240> going
00:44:20.390 --> 00:44:20.400 align:start position:0%
uniform the first field we have is going
00:44:20.400 --> 00:44:22.630 align:start position:0%
uniform the first field we have is going
to<00:44:20.520> be<00:44:20.640> a<00:44:20.800> name<00:44:21.079> field<00:44:21.960> we<00:44:22.079> can<00:44:22.240> change<00:44:22.520> the
00:44:22.630 --> 00:44:22.640 align:start position:0%
to be a name field we can change the
00:44:22.640 --> 00:44:26.069 align:start position:0%
to be a name field we can change the
form<00:44:22.960> label<00:44:23.440> to<00:44:24.079> name<00:44:25.079> and<00:44:25.319> we<00:44:25.440> can<00:44:25.559> remove<00:44:25.839> the
00:44:26.069 --> 00:44:26.079 align:start position:0%
form label to name and we can remove the
00:44:26.079 --> 00:44:28.670 align:start position:0%
form label to name and we can remove the
placeholder<00:44:27.079> but<00:44:27.480> rather<00:44:27.960> we<00:44:28.079> can<00:44:28.200> give<00:44:28.319> it<00:44:28.480> a
00:44:28.670 --> 00:44:28.680 align:start position:0%
placeholder but rather we can give it a
00:44:28.680 --> 00:44:30.349 align:start position:0%
placeholder but rather we can give it a
type<00:44:29.160> is<00:44:29.359> equal<00:44:29.599> to
00:44:30.349 --> 00:44:30.359 align:start position:0%
type is equal to
00:44:30.359 --> 00:44:34.829 align:start position:0%
type is equal to
text<00:44:31.359> and<00:44:31.800> a<00:44:32.119> class<00:44:32.520> name<00:44:33.160> equal<00:44:33.480> to<00:44:34.000> Shad
00:44:34.829 --> 00:44:34.839 align:start position:0%
text and a class name equal to Shad
00:44:34.839 --> 00:44:37.390 align:start position:0%
text and a class name equal to Shad
input<00:44:35.839> if<00:44:35.960> we<00:44:36.119> save<00:44:36.480> this<00:44:36.720> it's<00:44:36.920> going<00:44:37.040> to<00:44:37.240> get
00:44:37.390 --> 00:44:37.400 align:start position:0%
input if we save this it's going to get
00:44:37.400 --> 00:44:39.910 align:start position:0%
input if we save this it's going to get
this<00:44:37.599> beautiful<00:44:38.040> view<00:44:38.720> and<00:44:38.920> we<00:44:39.040> don't<00:44:39.359> need<00:44:39.760> a
00:44:39.910 --> 00:44:39.920 align:start position:0%
this beautiful view and we don't need a
00:44:39.920 --> 00:44:42.829 align:start position:0%
this beautiful view and we don't need a
form<00:44:40.359> description<00:44:41.359> I<00:44:41.480> believe<00:44:41.760> a<00:44:42.000> title<00:44:42.559> or
00:44:42.829 --> 00:44:42.839 align:start position:0%
form description I believe a title or
00:44:42.839 --> 00:44:45.630 align:start position:0%
form description I believe a title or
rather<00:44:43.040> a<00:44:43.200> label<00:44:43.800> is<00:44:44.160> enough<00:44:45.160> so<00:44:45.319> now<00:44:45.480> we're
00:44:45.630 --> 00:44:45.640 align:start position:0%
rather a label is enough so now we're
00:44:45.640 --> 00:44:48.549 align:start position:0%
rather a label is enough so now we're
getting<00:44:45.960> closer<00:44:46.480> to<00:44:46.680> this<00:44:46.839> final<00:44:47.240> view<00:44:48.240> so
00:44:48.549 --> 00:44:48.559 align:start position:0%
getting closer to this final view so
00:44:48.559 --> 00:44:50.710 align:start position:0%
getting closer to this final view so
let's<00:44:48.760> go<00:44:48.880> ahead<00:44:49.200> and<00:44:49.440> duplicate<00:44:50.200> this<00:44:50.359> form
00:44:50.710 --> 00:44:50.720 align:start position:0%
let's go ahead and duplicate this form
00:44:50.720 --> 00:44:53.870 align:start position:0%
let's go ahead and duplicate this form
field<00:44:51.400> right<00:44:51.640> here<00:44:52.200> below<00:44:53.200> and<00:44:53.400> the<00:44:53.599> second
00:44:53.870 --> 00:44:53.880 align:start position:0%
field right here below and the second
00:44:53.880 --> 00:44:56.510 align:start position:0%
field right here below and the second
one<00:44:54.119> is<00:44:54.280> going<00:44:54.480> to<00:44:54.839> say<00:44:55.359> username
00:44:56.510 --> 00:44:56.520 align:start position:0%
one is going to say username
00:44:56.520 --> 00:44:59.109 align:start position:0%
one is going to say username
and<00:44:56.680> we<00:44:56.760> can<00:44:56.920> change<00:44:57.119> it<00:44:57.240> to<00:44:57.440> username<00:44:58.119> here<00:44:58.680> as
00:44:59.109 --> 00:44:59.119 align:start position:0%
and we can change it to username here as
00:44:59.119 --> 00:45:02.390 align:start position:0%
and we can change it to username here as
well<00:45:00.119> that's<00:45:00.400> great<00:45:01.040> two<00:45:01.319> done<00:45:01.760> two<00:45:01.960> more<00:45:02.200> to
00:45:02.390 --> 00:45:02.400 align:start position:0%
well that's great two done two more to
00:45:02.400 --> 00:45:05.630 align:start position:0%
well that's great two done two more to
go<00:45:03.079> let's<00:45:03.359> duplicate<00:45:03.760> it<00:45:03.960> two<00:45:04.160> more<00:45:04.480> times<00:45:05.440> the
00:45:05.630 --> 00:45:05.640 align:start position:0%
go let's duplicate it two more times the
00:45:05.640 --> 00:45:09.430 align:start position:0%
go let's duplicate it two more times the
next<00:45:05.920> one<00:45:06.359> is<00:45:06.520> going<00:45:06.720> to<00:45:07.000> say<00:45:08.119> email<00:45:09.119> and<00:45:09.319> we
00:45:09.430 --> 00:45:09.440 align:start position:0%
next one is going to say email and we
00:45:09.440 --> 00:45:12.270 align:start position:0%
next one is going to say email and we
can<00:45:09.599> say<00:45:09.880> email<00:45:10.359> here<00:45:11.359> as<00:45:11.480> well<00:45:11.640> as<00:45:11.760> change<00:45:12.119> the
00:45:12.270 --> 00:45:12.280 align:start position:0%
can say email here as well as change the
00:45:12.280 --> 00:45:15.750 align:start position:0%
can say email here as well as change the
type<00:45:12.520> of<00:45:12.599> the<00:45:12.720> field<00:45:13.240> to<00:45:13.720> email<00:45:14.720> there<00:45:14.880> we<00:45:15.079> go
00:45:15.750 --> 00:45:15.760 align:start position:0%
type of the field to email there we go
00:45:15.760 --> 00:45:17.630 align:start position:0%
type of the field to email there we go
and<00:45:15.920> the<00:45:16.119> last<00:45:16.359> one<00:45:16.640> is<00:45:16.760> going<00:45:16.960> to<00:45:17.200> of<00:45:17.359> course
00:45:17.630 --> 00:45:17.640 align:start position:0%
and the last one is going to of course
00:45:17.640 --> 00:45:20.150 align:start position:0%
and the last one is going to of course
be<00:45:17.880> the<00:45:18.119> password<00:45:18.880> so<00:45:19.040> let's<00:45:19.240> change<00:45:19.559> this<00:45:19.720> to
00:45:20.150 --> 00:45:20.160 align:start position:0%
be the password so let's change this to
00:45:20.160 --> 00:45:24.069 align:start position:0%
be the password so let's change this to
password<00:45:21.160> type<00:45:21.559> password<00:45:22.160> as<00:45:22.400> well<00:45:23.359> and<00:45:23.640> say
00:45:24.069 --> 00:45:24.079 align:start position:0%
password type password as well and say
00:45:24.079 --> 00:45:27.069 align:start position:0%
password type password as well and say
password<00:45:24.640> here<00:45:25.240> so<00:45:25.480> now<00:45:25.960> once<00:45:26.119> we<00:45:26.280> type<00:45:26.599> here
00:45:27.069 --> 00:45:27.079 align:start position:0%
password here so now once we type here
00:45:27.079 --> 00:45:29.190 align:start position:0%
password here so now once we type here
it's<00:45:27.280> actually<00:45:27.559> going<00:45:27.720> to<00:45:27.839> be<00:45:28.040> dots<00:45:28.680> meaning
00:45:29.190 --> 00:45:29.200 align:start position:0%
it's actually going to be dots meaning
00:45:29.200 --> 00:45:31.710 align:start position:0%
it's actually going to be dots meaning
it's<00:45:29.680> hidden<00:45:30.680> and<00:45:30.920> finally<00:45:31.240> we<00:45:31.359> need<00:45:31.559> a
00:45:31.710 --> 00:45:31.720 align:start position:0%
it's hidden and finally we need a
00:45:31.720 --> 00:45:33.190 align:start position:0%
it's hidden and finally we need a
beautiful<00:45:32.160> button<00:45:32.520> that's<00:45:32.680> going<00:45:32.839> to<00:45:32.960> allow
00:45:33.190 --> 00:45:33.200 align:start position:0%
beautiful button that's going to allow
00:45:33.200 --> 00:45:35.990 align:start position:0%
beautiful button that's going to allow
us<00:45:33.319> to<00:45:33.480> submit<00:45:33.839> the<00:45:34.000> form<00:45:34.640> so<00:45:35.079> let's<00:45:35.359> give<00:45:35.640> this
00:45:35.990 --> 00:45:36.000 align:start position:0%
us to submit the form so let's give this
00:45:36.000 --> 00:45:40.309 align:start position:0%
us to submit the form so let's give this
button<00:45:36.400> type<00:45:36.680> submit<00:45:37.440> a<00:45:37.760> class<00:45:38.160> name<00:45:39.040> equal<00:45:39.359> to
00:45:40.309 --> 00:45:40.319 align:start position:0%
button type submit a class name equal to
00:45:40.319 --> 00:45:43.270 align:start position:0%
button type submit a class name equal to
Shad<00:45:41.040> dasb<00:45:41.400> button<00:45:41.960> undor
00:45:43.270 --> 00:45:43.280 align:start position:0%
Shad dasb button undor
00:45:43.280 --> 00:45:46.190 align:start position:0%
Shad dasb button undor
primary<00:45:44.280> there<00:45:44.440> we<00:45:44.640> go<00:45:45.400> but<00:45:45.599> it's<00:45:45.760> not<00:45:45.960> always
00:45:46.190 --> 00:45:46.200 align:start position:0%
primary there we go but it's not always
00:45:46.200 --> 00:45:48.670 align:start position:0%
primary there we go but it's not always
going<00:45:46.400> to<00:45:46.520> say<00:45:46.800> submit<00:45:47.800> sometimes<00:45:48.119> it<00:45:48.319> has<00:45:48.440> to
00:45:48.670 --> 00:45:48.680 align:start position:0%
going to say submit sometimes it has to
00:45:48.680 --> 00:45:51.109 align:start position:0%
going to say submit sometimes it has to
load<00:45:49.280> meaning<00:45:49.720> we've<00:45:50.000> submitted<00:45:50.440> it<00:45:50.800> and<00:45:50.920> it's
00:45:51.109 --> 00:45:51.119 align:start position:0%
load meaning we've submitted it and it's
00:45:51.119 --> 00:45:54.230 align:start position:0%
load meaning we've submitted it and it's
doing<00:45:51.480> its<00:45:51.760> action<00:45:52.760> so<00:45:53.160> what<00:45:53.280> we<00:45:53.440> can<00:45:53.599> do<00:45:53.960> is
00:45:54.230 --> 00:45:54.240 align:start position:0%
doing its action so what we can do is
00:45:54.240 --> 00:45:57.910 align:start position:0%
doing its action so what we can do is
create<00:45:54.839> for<00:45:55.119> now<00:45:55.599> a<00:45:56.000> fake<00:45:56.319> field<00:45:57.040> called<00:45:57.480> is
00:45:57.910 --> 00:45:57.920 align:start position:0%
create for now a fake field called is
00:45:57.920 --> 00:46:01.990 align:start position:0%
create for now a fake field called is
loading<00:45:58.920> so<00:45:59.240> const<00:45:59.800> is<00:46:00.400> loading<00:46:01.400> is<00:46:01.680> at<00:46:01.800> the
00:46:01.990 --> 00:46:02.000 align:start position:0%
loading so const is loading is at the
00:46:02.000 --> 00:46:04.750 align:start position:0%
loading so const is loading is at the
start<00:46:02.359> going<00:46:02.520> to<00:46:02.680> be<00:46:02.800> set<00:46:03.079> to<00:46:03.359> true<00:46:04.200> and<00:46:04.400> now<00:46:04.640> if
00:46:04.750 --> 00:46:04.760 align:start position:0%
start going to be set to true and now if
00:46:04.760 --> 00:46:07.829 align:start position:0%
start going to be set to true and now if
we<00:46:04.920> go<00:46:05.200> back<00:46:05.720> we<00:46:05.800> can<00:46:06.040> use<00:46:06.400> that<00:46:06.640> property<00:46:07.559> to
00:46:07.829 --> 00:46:07.839 align:start position:0%
we go back we can use that property to
00:46:07.839 --> 00:46:11.829 align:start position:0%
we go back we can use that property to
make<00:46:08.040> some<00:46:08.280> Dynamic<00:46:08.920> changes<00:46:09.920> if<00:46:10.480> is<00:46:10.839> loading
00:46:11.829 --> 00:46:11.839 align:start position:0%
make some Dynamic changes if is loading
00:46:11.839 --> 00:46:15.109 align:start position:0%
make some Dynamic changes if is loading
in<00:46:12.079> that<00:46:12.319> case<00:46:12.720> we<00:46:12.839> can<00:46:13.200> return<00:46:13.760> a<00:46:14.000> div<00:46:14.920> that's
00:46:15.109 --> 00:46:15.119 align:start position:0%
in that case we can return a div that's
00:46:15.119 --> 00:46:18.510 align:start position:0%
in that case we can return a div that's
going<00:46:15.280> to<00:46:15.440> have<00:46:15.599> a<00:46:15.839> class<00:46:16.200> name<00:46:17.160> equal<00:46:17.480> to<00:46:17.720> flex
00:46:18.510 --> 00:46:18.520 align:start position:0%
going to have a class name equal to flex
00:46:18.520 --> 00:46:21.829 align:start position:0%
going to have a class name equal to flex
Center<00:46:19.400> and<00:46:19.559> a<00:46:19.839> gap<00:46:20.040> of<00:46:20.400> two<00:46:21.400> between<00:46:21.720> the
00:46:21.829 --> 00:46:21.839 align:start position:0%
Center and a gap of two between the
00:46:21.839 --> 00:46:23.710 align:start position:0%
Center and a gap of two between the
center<00:46:22.119> and<00:46:22.240> the<00:46:22.359> flex<00:46:22.640> you<00:46:22.760> need<00:46:22.880> to<00:46:23.000> have<00:46:23.160> a
00:46:23.710 --> 00:46:23.720 align:start position:0%
center and the flex you need to have a
00:46:23.720 --> 00:46:27.430 align:start position:0%
center and the flex you need to have a
dash<00:46:24.720> and<00:46:25.119> here<00:46:25.559> we<00:46:25.880> can<00:46:26.000> say<00:46:26.200> loading<00:46:26.720> dot<00:46:27.040> dot
00:46:27.430 --> 00:46:27.440 align:start position:0%
dash and here we can say loading dot dot
00:46:27.440 --> 00:46:30.309 align:start position:0%
dash and here we can say loading dot dot
dot<00:46:28.440> else<00:46:29.000> we're<00:46:29.200> going<00:46:29.359> to<00:46:29.480> render<00:46:30.000> something
00:46:30.309 --> 00:46:30.319 align:start position:0%
dot else we're going to render something
00:46:30.319 --> 00:46:32.630 align:start position:0%
dot else we're going to render something
else<00:46:30.920> which<00:46:31.040> is<00:46:31.200> simply<00:46:31.599> a<00:46:31.800> text<00:46:32.280> that's<00:46:32.480> going
00:46:32.630 --> 00:46:32.640 align:start position:0%
else which is simply a text that's going
00:46:32.640 --> 00:46:36.030 align:start position:0%
else which is simply a text that's going
to<00:46:32.839> say<00:46:33.480> sign<00:46:34.240> up<00:46:34.960> and<00:46:35.119> there<00:46:35.240> we<00:46:35.400> go<00:46:35.760> now<00:46:35.920> we
00:46:36.030 --> 00:46:36.040 align:start position:0%
to say sign up and there we go now we
00:46:36.040 --> 00:46:37.990 align:start position:0%
to say sign up and there we go now we
can<00:46:36.160> see<00:46:36.359> loading<00:46:37.160> but<00:46:37.280> to<00:46:37.400> make<00:46:37.559> this<00:46:37.720> loading
00:46:37.990 --> 00:46:38.000 align:start position:0%
can see loading but to make this loading
00:46:38.000 --> 00:46:40.190 align:start position:0%
can see loading but to make this loading
a<00:46:38.119> bit<00:46:38.280> more<00:46:38.480> interesting<00:46:39.400> let's<00:46:39.680> create<00:46:40.040> a
00:46:40.190 --> 00:46:40.200 align:start position:0%
a bit more interesting let's create a
00:46:40.200 --> 00:46:43.950 align:start position:0%
a bit more interesting let's create a
new<00:46:40.440> component<00:46:41.160> called<00:46:42.000> loader<00:46:43.000> so<00:46:43.400> we<00:46:43.520> can<00:46:43.760> go
00:46:43.950 --> 00:46:43.960 align:start position:0%
new component called loader so we can go
00:46:43.960 --> 00:46:46.030 align:start position:0%
new component called loader so we can go
to<00:46:44.160> our<00:46:44.400> components<00:46:45.240> and<00:46:45.400> create<00:46:45.680> a<00:46:45.839> new
00:46:46.030 --> 00:46:46.040 align:start position:0%
to our components and create a new
00:46:46.040 --> 00:46:49.230 align:start position:0%
to our components and create a new
folder<00:46:46.480> within<00:46:46.839> there<00:46:47.400> called<00:46:48.079> shared<00:46:49.079> these
00:46:49.230 --> 00:46:49.240 align:start position:0%
folder within there called shared these
00:46:49.240 --> 00:46:51.069 align:start position:0%
folder within there called shared these
are<00:46:49.440> components<00:46:49.920> that<00:46:49.960> are<00:46:50.079> shared<00:46:50.559> all
00:46:51.069 --> 00:46:51.079 align:start position:0%
are components that are shared all
00:46:51.079 --> 00:46:53.790 align:start position:0%
are components that are shared all
across<00:46:51.480> our<00:46:52.000> application<00:46:53.000> within<00:46:53.280> it<00:46:53.520> we<00:46:53.640> can
00:46:53.790 --> 00:46:53.800 align:start position:0%
across our application within it we can
00:46:53.800 --> 00:46:58.829 align:start position:0%
across our application within it we can
create<00:46:54.079> a<00:46:54.280> new<00:46:54.800> loader.<00:46:56.119> TSX<00:46:57.119> and<00:46:57.319> run
00:46:58.829 --> 00:46:58.839 align:start position:0%
create a new loader. TSX and run
00:46:58.839 --> 00:47:01.870 align:start position:0%
create a new loader. TSX and run
rafc<00:46:59.839> within<00:47:00.280> here<00:47:00.680> we<00:47:00.800> can<00:47:01.000> wrap<00:47:01.480> everything
00:47:01.870 --> 00:47:01.880 align:start position:0%
rafc within here we can wrap everything
00:47:01.880 --> 00:47:04.950 align:start position:0%
rafc within here we can wrap everything
in<00:47:02.040> a<00:47:02.520> div<00:47:03.520> that<00:47:03.880> div<00:47:04.160> is<00:47:04.280> going<00:47:04.440> to<00:47:04.599> have<00:47:04.720> a
00:47:04.950 --> 00:47:04.960 align:start position:0%
in a div that div is going to have a
00:47:04.960 --> 00:47:08.750 align:start position:0%
in a div that div is going to have a
class<00:47:05.319> name<00:47:05.920> equal<00:47:06.240> to<00:47:06.520> flex<00:47:07.200> Center<00:47:07.880> and
00:47:08.750 --> 00:47:08.760 align:start position:0%
class name equal to flex Center and
00:47:08.760 --> 00:47:12.069 align:start position:0%
class name equal to flex Center and
w-o<00:47:09.760> and<00:47:09.960> within<00:47:10.240> it<00:47:10.480> we<00:47:10.599> can<00:47:10.720> render<00:47:11.160> just<00:47:11.480> one
00:47:12.069 --> 00:47:12.079 align:start position:0%
w-o and within it we can render just one
00:47:12.079 --> 00:47:15.510 align:start position:0%
w-o and within it we can render just one
self-closing<00:47:13.079> image<00:47:13.960> with<00:47:14.160> a<00:47:14.400> source<00:47:15.200> equal
00:47:15.510 --> 00:47:15.520 align:start position:0%
self-closing image with a source equal
00:47:15.520 --> 00:47:20.589 align:start position:0%
self-closing image with a source equal
to<00:47:16.240> SL<00:47:16.839> assets<00:47:17.839> SL<00:47:18.400> ions<00:47:19.400> SL
00:47:20.589 --> 00:47:20.599 align:start position:0%
to SL assets SL ions SL
00:47:20.599 --> 00:47:24.349 align:start position:0%
to SL assets SL ions SL
loader.<00:47:21.960> SVG<00:47:22.960> we<00:47:23.079> can<00:47:23.240> have<00:47:23.359> an<00:47:23.520> ALT<00:47:23.839> tag<00:47:24.079> of
00:47:24.349 --> 00:47:24.359 align:start position:0%
loader. SVG we can have an ALT tag of
00:47:24.359 --> 00:47:26.870 align:start position:0%
loader. SVG we can have an ALT tag of
loader<00:47:25.359> we<00:47:25.480> can<00:47:25.599> have<00:47:25.839> have<00:47:25.920> a<00:47:26.119> width<00:47:26.440> of<00:47:26.599> about
00:47:26.870 --> 00:47:26.880 align:start position:0%
loader we can have have a width of about
00:47:26.880 --> 00:47:29.150 align:start position:0%
loader we can have have a width of about
24<00:47:27.640> and<00:47:27.839> a<00:47:28.079> height<00:47:28.440> of
00:47:29.150 --> 00:47:29.160 align:start position:0%
24 and a height of
00:47:29.160 --> 00:47:32.510 align:start position:0%
24 and a height of
24<00:47:30.160> now<00:47:30.440> if<00:47:30.559> we<00:47:30.720> go<00:47:31.000> back<00:47:31.160> to<00:47:31.319> our<00:47:31.480> signup<00:47:31.839> form
00:47:32.510 --> 00:47:32.520 align:start position:0%
24 now if we go back to our signup form
00:47:32.520 --> 00:47:35.510 align:start position:0%
24 now if we go back to our signup form
we<00:47:32.599> can<00:47:32.800> call<00:47:33.240> our<00:47:33.480> self<00:47:33.920> closing<00:47:34.680> loader
00:47:35.510 --> 00:47:35.520 align:start position:0%
we can call our self closing loader
00:47:35.520 --> 00:47:38.390 align:start position:0%
we can call our self closing loader
right<00:47:35.760> here<00:47:36.559> by<00:47:36.960> putting<00:47:37.240> it<00:47:37.480> here<00:47:38.079> and<00:47:38.240> then
00:47:38.390 --> 00:47:38.400 align:start position:0%
right here by putting it here and then
00:47:38.400 --> 00:47:40.430 align:start position:0%
right here by putting it here and then
double<00:47:38.760> clicking<00:47:39.359> and<00:47:39.559> pressing<00:47:39.880> control<00:47:40.240> or
00:47:40.430 --> 00:47:40.440 align:start position:0%
double clicking and pressing control or
00:47:40.440 --> 00:47:42.990 align:start position:0%
double clicking and pressing control or
command<00:47:40.839> space<00:47:41.480> to<00:47:41.839> import<00:47:42.160> it<00:47:42.359> from
00:47:42.990 --> 00:47:43.000 align:start position:0%
command space to import it from
00:47:43.000 --> 00:47:45.270 align:start position:0%
command space to import it from
components<00:47:44.000> if<00:47:44.079> you<00:47:44.240> save<00:47:44.480> it<00:47:44.800> you<00:47:44.920> can<00:47:45.079> see
00:47:45.270 --> 00:47:45.280 align:start position:0%
components if you save it you can see
00:47:45.280 --> 00:47:47.750 align:start position:0%
components if you save it you can see
this<00:47:45.440> loader<00:47:45.960> appear<00:47:46.400> right<00:47:46.640> here<00:47:47.160> which<00:47:47.319> is
00:47:47.750 --> 00:47:47.760 align:start position:0%
this loader appear right here which is
00:47:47.760 --> 00:47:49.910 align:start position:0%
this loader appear right here which is
amazing<00:47:48.760> now<00:47:49.040> of<00:47:49.200> course<00:47:49.440> we're<00:47:49.640> not
00:47:49.910 --> 00:47:49.920 align:start position:0%
amazing now of course we're not
00:47:49.920 --> 00:47:52.230 align:start position:0%
amazing now of course we're not
submitting<00:47:50.480> yet<00:47:50.839> so<00:47:51.040> what<00:47:51.160> we<00:47:51.280> can<00:47:51.440> do<00:47:51.960> is
00:47:52.230 --> 00:47:52.240 align:start position:0%
submitting yet so what we can do is
00:47:52.240 --> 00:47:55.309 align:start position:0%
submitting yet so what we can do is
bring<00:47:52.720> this<00:47:53.280> is<00:47:53.520> loading<00:47:54.119> to<00:47:54.400> false<00:47:55.119> because
00:47:55.309 --> 00:47:55.319 align:start position:0%
bring this is loading to false because
00:47:55.319 --> 00:47:56.790 align:start position:0%
bring this is loading to false because
we<00:47:55.480> haven't<00:47:55.680> haven't<00:47:55.920> yet<00:47:56.040> submitted<00:47:56.520> we<00:47:56.640> have
00:47:56.790 --> 00:47:56.800 align:start position:0%
we haven't haven't yet submitted we have
00:47:56.800 --> 00:47:59.670 align:start position:0%
we haven't haven't yet submitted we have
nothing<00:47:57.079> to<00:47:57.240> load<00:47:58.240> and<00:47:58.440> now<00:47:58.960> we<00:47:59.160> have<00:47:59.400> our
00:47:59.670 --> 00:47:59.680 align:start position:0%
nothing to load and now we have our
00:47:59.680 --> 00:48:01.750 align:start position:0%
nothing to load and now we have our
beautiful<00:48:00.240> form<00:48:00.800> that<00:48:00.920> you<00:48:01.000> can<00:48:01.160> see<00:48:01.520> right
00:48:01.750 --> 00:48:01.760 align:start position:0%
beautiful form that you can see right
00:48:01.760 --> 00:48:04.030 align:start position:0%
beautiful form that you can see right
here<00:48:02.400> it<00:48:02.520> is<00:48:02.680> a<00:48:02.839> bit<00:48:03.079> wider<00:48:03.640> and<00:48:03.839> that's
00:48:04.030 --> 00:48:04.040 align:start position:0%
here it is a bit wider and that's
00:48:04.040 --> 00:48:06.270 align:start position:0%
here it is a bit wider and that's
because<00:48:04.280> we<00:48:04.440> here<00:48:04.760> have<00:48:05.000> more<00:48:05.280> words<00:48:05.839> to<00:48:06.040> use
00:48:06.270 --> 00:48:06.280 align:start position:0%
because we here have more words to use
00:48:06.280 --> 00:48:08.750 align:start position:0%
because we here have more words to use
snapgram<00:48:06.960> please<00:48:07.240> enter<00:48:07.520> your<00:48:07.760> details<00:48:08.599> let's
00:48:08.750 --> 00:48:08.760 align:start position:0%
snapgram please enter your details let's
00:48:08.760 --> 00:48:11.750 align:start position:0%
snapgram please enter your details let's
see<00:48:08.960> what<00:48:09.119> do<00:48:09.240> we<00:48:09.440> have<00:48:09.800> here<00:48:10.680> to<00:48:10.880> use
00:48:11.750 --> 00:48:11.760 align:start position:0%
see what do we have here to use
00:48:11.760 --> 00:48:14.230 align:start position:0%
see what do we have here to use
snapgram<00:48:12.760> okay<00:48:13.079> let's<00:48:13.280> be<00:48:13.480> nice<00:48:13.760> and<00:48:13.920> say
00:48:14.230 --> 00:48:14.240 align:start position:0%
snapgram okay let's be nice and say
00:48:14.240 --> 00:48:16.470 align:start position:0%
snapgram okay let's be nice and say
please<00:48:14.680> enter<00:48:15.040> your<00:48:15.280> details<00:48:16.119> which<00:48:16.240> is<00:48:16.359> going
00:48:16.470 --> 00:48:16.480 align:start position:0%
please enter your details which is going
00:48:16.480 --> 00:48:19.990 align:start position:0%
please enter your details which is going
to<00:48:16.640> make<00:48:16.760> her<00:48:16.920> form<00:48:17.200> a<00:48:17.359> bit<00:48:17.559> wider<00:48:18.559> great<00:48:19.559> and
00:48:19.990 --> 00:48:20.000 align:start position:0%
to make her form a bit wider great and
00:48:20.000 --> 00:48:22.069 align:start position:0%
to make her form a bit wider great and
now<00:48:20.240> that<00:48:20.400> we<00:48:20.520> have<00:48:20.760> all<00:48:20.920> of<00:48:21.119> those<00:48:21.319> fields<00:48:21.920> we
00:48:22.069 --> 00:48:22.079 align:start position:0%
now that we have all of those fields we
00:48:22.079 --> 00:48:24.670 align:start position:0%
now that we have all of those fields we
have<00:48:22.200> to<00:48:22.400> figure<00:48:22.720> out<00:48:23.280> how<00:48:23.520> to<00:48:23.960> actually
00:48:24.670 --> 00:48:24.680 align:start position:0%
have to figure out how to actually
00:48:24.680 --> 00:48:26.990 align:start position:0%
have to figure out how to actually
submit<00:48:25.160> them<00:48:26.119> but<00:48:26.319> before<00:48:26.680> that<00:48:26.839> we're
00:48:26.990 --> 00:48:27.000 align:start position:0%
submit them but before that we're
00:48:27.000 --> 00:48:28.950 align:start position:0%
submit them but before that we're
missing<00:48:27.400> just<00:48:27.680> one<00:48:27.960> additional<00:48:28.400> piece<00:48:28.559> of
00:48:28.950 --> 00:48:28.960 align:start position:0%
missing just one additional piece of
00:48:28.960 --> 00:48:31.990 align:start position:0%
missing just one additional piece of
information<00:48:29.960> which<00:48:30.160> is<00:48:30.839> the<00:48:31.040> link<00:48:31.480> to<00:48:31.680> go<00:48:31.839> to
00:48:31.990 --> 00:48:32.000 align:start position:0%
information which is the link to go to
00:48:32.000 --> 00:48:34.270 align:start position:0%
information which is the link to go to
the<00:48:32.160> login<00:48:32.640> as<00:48:32.839> well<00:48:33.280> in<00:48:33.440> case<00:48:33.720> we<00:48:33.880> already
00:48:34.270 --> 00:48:34.280 align:start position:0%
the login as well in case we already
00:48:34.280 --> 00:48:37.069 align:start position:0%
the login as well in case we already
have<00:48:34.440> an<00:48:34.640> account<00:48:35.559> so<00:48:36.000> right<00:48:36.200> here<00:48:36.480> below<00:48:36.880> this
00:48:37.069 --> 00:48:37.079 align:start position:0%
have an account so right here below this
00:48:37.079 --> 00:48:39.990 align:start position:0%
have an account so right here below this
button<00:48:37.720> we<00:48:37.839> can<00:48:38.040> create<00:48:38.319> a<00:48:38.520> P<00:48:38.839> tag<00:48:39.839> that's
00:48:39.990 --> 00:48:40.000 align:start position:0%
button we can create a P tag that's
00:48:40.000 --> 00:48:43.549 align:start position:0%
button we can create a P tag that's
going<00:48:40.200> to<00:48:40.319> have<00:48:40.480> a<00:48:40.720> class<00:48:41.200> name<00:48:42.200> equal<00:48:42.559> to
00:48:43.549 --> 00:48:43.559 align:start position:0%
going to have a class name equal to
00:48:43.559 --> 00:48:49.390 align:start position:0%
going to have a class name equal to
text-<00:48:44.720> small-<00:48:45.760> regular<00:48:46.760> text-
00:48:49.390 --> 00:48:49.400 align:start position:0%
text- small- regular text-
00:48:49.400 --> 00:48:52.789 align:start position:0%
text- small- regular text-
light-2<00:48:50.400> and<00:48:50.680> text-<00:48:51.240> center<00:48:51.960> and<00:48:52.119> margin<00:48:52.559> top
00:48:52.789 --> 00:48:52.799 align:start position:0%
light-2 and text- center and margin top
00:48:52.799 --> 00:48:54.789 align:start position:0%
light-2 and text- center and margin top
of<00:48:52.960> two<00:48:53.480> so<00:48:53.640> that's<00:48:53.799> going<00:48:53.960> to<00:48:54.160> provide<00:48:54.440> this
00:48:54.789 --> 00:48:54.799 align:start position:0%
of two so that's going to provide this
00:48:54.799 --> 00:48:58.030 align:start position:0%
of two so that's going to provide this
nice<00:48:55.040> centered<00:48:55.640> text<00:48:56.480> we<00:48:56.599> can<00:48:56.760> say<00:48:57.079> already
00:48:58.030 --> 00:48:58.040 align:start position:0%
nice centered text we can say already
00:48:58.040 --> 00:48:59.390 align:start position:0%
nice centered text we can say already
have<00:48:58.319> an
00:48:59.390 --> 00:48:59.400 align:start position:0%
have an
00:48:59.400 --> 00:49:01.870 align:start position:0%
have an
account<00:49:00.400> and<00:49:00.599> if<00:49:00.799> that<00:49:00.920> is<00:49:01.079> the<00:49:01.240> case<00:49:01.599> we<00:49:01.720> can
00:49:01.870 --> 00:49:01.880 align:start position:0%
account and if that is the case we can
00:49:01.880 --> 00:49:05.589 align:start position:0%
account and if that is the case we can
render<00:49:02.400> a<00:49:02.640> link<00:49:03.520> component<00:49:04.520> this<00:49:04.720> link<00:49:05.280> has<00:49:05.440> to
00:49:05.589 --> 00:49:05.599 align:start position:0%
render a link component this link has to
00:49:05.599 --> 00:49:08.870 align:start position:0%
render a link component this link has to
be<00:49:05.760> imported<00:49:06.520> from<00:49:07.400> we<00:49:07.559> don't<00:49:07.799> have<00:49:07.960> it<00:49:08.240> here
00:49:08.870 --> 00:49:08.880 align:start position:0%
be imported from we don't have it here
00:49:08.880 --> 00:49:11.549 align:start position:0%
be imported from we don't have it here
but<00:49:09.119> it<00:49:09.240> should<00:49:09.440> be<00:49:09.599> coming<00:49:09.960> from<00:49:10.920> react
00:49:11.549 --> 00:49:11.559 align:start position:0%
but it should be coming from react
00:49:11.559 --> 00:49:13.910 align:start position:0%
but it should be coming from react
router<00:49:12.000> Dom<00:49:12.640> so<00:49:12.880> right<00:49:13.040> here<00:49:13.200> at<00:49:13.319> the<00:49:13.520> top<00:49:13.799> we
00:49:13.910 --> 00:49:13.920 align:start position:0%
router Dom so right here at the top we
00:49:13.920 --> 00:49:18.870 align:start position:0%
router Dom so right here at the top we
can<00:49:14.040> say<00:49:14.319> import<00:49:14.960> link<00:49:15.960> from<00:49:16.960> react<00:49:17.760> router
00:49:18.870 --> 00:49:18.880 align:start position:0%
can say import link from react router
00:49:18.880 --> 00:49:22.549 align:start position:0%
can say import link from react router
Dom<00:49:19.880> and<00:49:20.079> now<00:49:20.480> if<00:49:20.599> we<00:49:20.799> go<00:49:21.240> down<00:49:22.240> this<00:49:22.359> is
00:49:22.549 --> 00:49:22.559 align:start position:0%
Dom and now if we go down this is
00:49:22.559 --> 00:49:24.549 align:start position:0%
Dom and now if we go down this is
looking<00:49:22.920> good<00:49:23.599> and<00:49:23.760> what<00:49:23.880> is<00:49:24.000> this<00:49:24.119> link<00:49:24.400> going
00:49:24.549 --> 00:49:24.559 align:start position:0%
looking good and what is this link going
00:49:24.559 --> 00:49:27.109 align:start position:0%
looking good and what is this link going
to<00:49:24.760> say<00:49:25.359> well<00:49:25.599> well<00:49:25.760> it's<00:49:25.880> going<00:49:26.040> to<00:49:26.280> point<00:49:26.839> to
00:49:27.109 --> 00:49:27.119 align:start position:0%
to say well well it's going to point to
00:49:27.119 --> 00:49:30.270 align:start position:0%
to say well well it's going to point to
forward<00:49:27.599> SL<00:49:28.040> sign<00:49:28.480> in<00:49:29.480> it's<00:49:29.640> going<00:49:29.799> to<00:49:29.920> have<00:49:30.040> a
00:49:30.270 --> 00:49:30.280 align:start position:0%
forward SL sign in it's going to have a
00:49:30.280 --> 00:49:33.549 align:start position:0%
forward SL sign in it's going to have a
class<00:49:30.640> name<00:49:31.200> of<00:49:31.520> text-
00:49:33.549 --> 00:49:33.559 align:start position:0%
class name of text-
00:49:33.559 --> 00:49:37.470 align:start position:0%
class name of text-
primary<00:49:34.559> and<00:49:34.799> it's<00:49:34.960> going<00:49:35.160> to<00:49:35.359> say<00:49:35.880> log<00:49:36.480> in
00:49:37.470 --> 00:49:37.480 align:start position:0%
primary and it's going to say log in
00:49:37.480 --> 00:49:39.750 align:start position:0%
primary and it's going to say log in
there<00:49:37.640> we<00:49:37.799> go<00:49:38.160> let's<00:49:38.400> style<00:49:38.680> it<00:49:38.799> a<00:49:38.920> bit<00:49:39.119> further
00:49:39.750 --> 00:49:39.760 align:start position:0%
there we go let's style it a bit further
00:49:39.760 --> 00:49:42.630 align:start position:0%
there we go let's style it a bit further
by<00:49:39.960> giving<00:49:40.240> it<00:49:40.480> a<00:49:40.720> text<00:49:41.040> primary<00:49:41.559> 500<00:49:42.400> which<00:49:42.520> is
00:49:42.630 --> 00:49:42.640 align:start position:0%
by giving it a text primary 500 which is
00:49:42.640 --> 00:49:46.910 align:start position:0%
by giving it a text primary 500 which is
the<00:49:42.760> shade<00:49:43.040> of<00:49:43.160> the<00:49:43.319> color<00:49:44.319> text-<00:49:45.240> small-<00:49:46.240> semi
00:49:46.910 --> 00:49:46.920 align:start position:0%
the shade of the color text- small- semi
00:49:46.920 --> 00:49:51.030 align:start position:0%
the shade of the color text- small- semi
bold<00:49:47.920> and<00:49:48.160> finally<00:49:48.680> a<00:49:48.839> margin<00:49:49.280> left<00:49:49.799> of
00:49:51.030 --> 00:49:51.040 align:start position:0%
bold and finally a margin left of
00:49:51.040 --> 00:49:53.950 align:start position:0%
bold and finally a margin left of
one<00:49:52.040> so<00:49:52.280> now<00:49:52.559> it's<00:49:52.720> looking<00:49:53.119> great<00:49:53.720> and<00:49:53.839> it's
00:49:53.950 --> 00:49:53.960 align:start position:0%
one so now it's looking great and it's
00:49:53.960 --> 00:49:55.750 align:start position:0%
one so now it's looking great and it's
going<00:49:54.079> to<00:49:54.240> redirect<00:49:54.720> us<00:49:54.880> to<00:49:55.000> the<00:49:55.160> sign<00:49:55.359> in<00:49:55.559> in
00:49:55.750 --> 00:49:55.760 align:start position:0%
going to redirect us to the sign in in
00:49:55.760 --> 00:49:58.990 align:start position:0%
going to redirect us to the sign in in
form<00:49:56.559> which<00:49:56.799> doesn't<00:49:57.359> exist<00:49:57.880> yet<00:49:58.640> we're<00:49:58.839> going
00:49:58.990 --> 00:49:59.000 align:start position:0%
form which doesn't exist yet we're going
00:49:59.000 --> 00:50:02.069 align:start position:0%
form which doesn't exist yet we're going
to<00:49:59.240> create<00:49:59.559> it<00:50:00.040> as<00:50:00.319> soon<00:50:00.920> as<00:50:01.119> we<00:50:01.319> implement<00:50:01.880> the
00:50:02.069 --> 00:50:02.079 align:start position:0%
to create it as soon as we implement the
00:50:02.079 --> 00:50:04.990 align:start position:0%
to create it as soon as we implement the
functionality<00:50:02.960> to<00:50:03.280> actually<00:50:03.799> log<00:50:04.160> our<00:50:04.440> users
00:50:04.990 --> 00:50:05.000 align:start position:0%
functionality to actually log our users
00:50:05.000 --> 00:50:07.230 align:start position:0%
functionality to actually log our users
in<00:50:05.960> that's<00:50:06.200> definitely<00:50:06.640> the<00:50:06.760> first<00:50:06.960> thing<00:50:07.079> we
00:50:07.230 --> 00:50:07.240 align:start position:0%
in that's definitely the first thing we
00:50:07.240 --> 00:50:09.710 align:start position:0%
in that's definitely the first thing we
have<00:50:07.319> to<00:50:07.480> do<00:50:07.839> right<00:50:08.559> so<00:50:08.880> how<00:50:09.000> is<00:50:09.160> that<00:50:09.359> going<00:50:09.520> to
00:50:09.710 --> 00:50:09.720 align:start position:0%
have to do right so how is that going to
00:50:09.720 --> 00:50:12.030 align:start position:0%
have to do right so how is that going to
work<00:50:10.440> well<00:50:10.799> everything<00:50:11.119> starts<00:50:11.680> with<00:50:11.839> a
00:50:12.030 --> 00:50:12.040 align:start position:0%
work well everything starts with a
00:50:12.040 --> 00:50:15.270 align:start position:0%
work well everything starts with a
button<00:50:12.520> that<00:50:12.720> has<00:50:12.839> a<00:50:13.119> type<00:50:13.480> of<00:50:14.000> submit<00:50:15.000> and
00:50:15.270 --> 00:50:15.280 align:start position:0%
button that has a type of submit and
00:50:15.280 --> 00:50:17.510 align:start position:0%
button that has a type of submit and
once<00:50:15.480> we<00:50:15.680> submit<00:50:16.040> it<00:50:16.440> it's<00:50:16.599> going<00:50:16.760> to<00:50:17.000> submit
00:50:17.510 --> 00:50:17.520 align:start position:0%
once we submit it it's going to submit
00:50:17.520 --> 00:50:21.670 align:start position:0%
once we submit it it's going to submit
the<00:50:17.720> entire<00:50:18.200> form<00:50:19.160> right<00:50:19.960> here<00:50:20.960> that<00:50:21.160> form<00:50:21.559> is
00:50:21.670 --> 00:50:21.680 align:start position:0%
the entire form right here that form is
00:50:21.680 --> 00:50:24.270 align:start position:0%
the entire form right here that form is
going<00:50:21.880> to<00:50:22.079> call<00:50:22.599> the<00:50:22.799> handle<00:50:23.200> submit<00:50:23.640> function
00:50:24.270 --> 00:50:24.280 align:start position:0%
going to call the handle submit function
00:50:24.280 --> 00:50:26.750 align:start position:0%
going to call the handle submit function
which<00:50:24.440> we<00:50:24.599> have<00:50:24.920> here<00:50:25.880> and<00:50:26.040> then<00:50:26.240> the<00:50:26.359> only
00:50:26.750 --> 00:50:26.760 align:start position:0%
which we have here and then the only
00:50:26.760 --> 00:50:29.230 align:start position:0%
which we have here and then the only
question<00:50:27.119> is<00:50:27.799> what<00:50:27.960> do<00:50:28.079> we<00:50:28.200> want<00:50:28.280> to<00:50:28.440> do<00:50:28.760> on
00:50:29.230 --> 00:50:29.240 align:start position:0%
question is what do we want to do on
00:50:29.240 --> 00:50:32.030 align:start position:0%
question is what do we want to do on
submit<00:50:30.240> and<00:50:30.400> the<00:50:30.559> simple<00:50:30.920> answer<00:50:31.280> is<00:50:31.720> we<00:50:31.880> want
00:50:32.030 --> 00:50:32.040 align:start position:0%
submit and the simple answer is we want
00:50:32.040 --> 00:50:36.190 align:start position:0%
submit and the simple answer is we want
to<00:50:32.760> create<00:50:33.720> the<00:50:34.319> user<00:50:35.319> and<00:50:35.680> that<00:50:35.839> usually
00:50:36.190 --> 00:50:36.200 align:start position:0%
to create the user and that usually
00:50:36.200 --> 00:50:38.870 align:start position:0%
to create the user and that usually
looks<00:50:36.440> something<00:50:36.760> like<00:50:37.000> this<00:50:37.599> we<00:50:37.760> say<00:50:38.160> const
00:50:38.870 --> 00:50:38.880 align:start position:0%
looks something like this we say const
00:50:38.880 --> 00:50:43.670 align:start position:0%
looks something like this we say const
new<00:50:39.160> user<00:50:40.000> is<00:50:40.240> equal<00:50:40.559> to<00:50:41.200> a<00:50:41.559> wait<00:50:42.559> why<00:50:42.799> a<00:50:43.040> wait
00:50:43.670 --> 00:50:43.680 align:start position:0%
new user is equal to a wait why a wait
00:50:43.680 --> 00:50:45.750 align:start position:0%
new user is equal to a wait why a wait
because<00:50:43.960> usually<00:50:44.480> creating<00:50:44.839> a<00:50:44.960> user<00:50:45.480> takes
00:50:45.750 --> 00:50:45.760 align:start position:0%
because usually creating a user takes
00:50:45.760 --> 00:50:48.349 align:start position:0%
because usually creating a user takes
some<00:50:46.040> time<00:50:46.839> it<00:50:46.960> is<00:50:47.079> an<00:50:47.359> asynchronous<00:50:48.119> action
00:50:48.349 --> 00:50:48.359 align:start position:0%
some time it is an asynchronous action
00:50:48.359 --> 00:50:50.430 align:start position:0%
some time it is an asynchronous action
in<00:50:48.480> the<00:50:48.640> database<00:50:49.520> which<00:50:49.680> means<00:50:50.000> we<00:50:50.119> have<00:50:50.240> to
00:50:50.430 --> 00:50:50.440 align:start position:0%
in the database which means we have to
00:50:50.440 --> 00:50:53.270 align:start position:0%
in the database which means we have to
specify<00:50:50.960> this<00:50:51.280> as<00:50:51.359> an<00:50:51.559> async<00:50:52.160> function<00:50:53.160> and
00:50:53.270 --> 00:50:53.280 align:start position:0%
specify this as an async function and
00:50:53.280 --> 00:50:54.910 align:start position:0%
specify this as an async function and
then<00:50:53.480> usually<00:50:54.000> the<00:50:54.119> function<00:50:54.400> to<00:50:54.559> create<00:50:54.799> a
00:50:54.910 --> 00:50:54.920 align:start position:0%
then usually the function to create a
00:50:54.920 --> 00:50:59.589 align:start position:0%
then usually the function to create a
user<00:50:55.440> is<00:50:55.599> called<00:50:56.319> create<00:50:57.319> user<00:50:58.319> account<00:50:59.280> to
00:50:59.589 --> 00:50:59.599 align:start position:0%
user is called create user account to
00:50:59.599 --> 00:51:02.789 align:start position:0%
user is called create user account to
which<00:50:59.920> we<00:51:00.040> want<00:51:00.160> to<00:51:00.400> pass<00:51:00.760> the<00:51:01.280> values<00:51:02.280> but<00:51:02.680> as
00:51:02.789 --> 00:51:02.799 align:start position:0%
which we want to pass the values but as
00:51:02.799 --> 00:51:04.670 align:start position:0%
which we want to pass the values but as
you<00:51:02.880> can<00:51:03.000> see<00:51:03.280> we<00:51:03.480> don't<00:51:03.720> yet<00:51:04.000> have<00:51:04.240> the<00:51:04.400> create
00:51:04.670 --> 00:51:04.680 align:start position:0%
you can see we don't yet have the create
00:51:04.680 --> 00:51:06.630 align:start position:0%
you can see we don't yet have the create
user<00:51:05.040> account<00:51:05.359> function<00:51:05.880> so<00:51:06.040> let's<00:51:06.280> comment
00:51:06.630 --> 00:51:06.640 align:start position:0%
user account function so let's comment
00:51:06.640 --> 00:51:09.630 align:start position:0%
user account function so let's comment
this<00:51:06.799> out<00:51:07.559> and<00:51:07.720> we<00:51:07.839> have<00:51:08.079> no<00:51:08.319> idea<00:51:09.280> where<00:51:09.480> is
00:51:09.630 --> 00:51:09.640 align:start position:0%
this out and we have no idea where is
00:51:09.640 --> 00:51:11.870 align:start position:0%
this out and we have no idea where is
this<00:51:09.799> event<00:51:10.119> coming<00:51:10.440> from<00:51:11.119> how<00:51:11.480> are<00:51:11.599> we<00:51:11.720> going
00:51:11.870 --> 00:51:11.880 align:start position:0%
this event coming from how are we going
00:51:11.880 --> 00:51:15.150 align:start position:0%
this event coming from how are we going
to<00:51:12.079> create<00:51:12.480> our<00:51:12.720> user<00:51:13.720> and<00:51:13.960> thankfully<00:51:14.359> for<00:51:14.559> us
00:51:15.150 --> 00:51:15.160 align:start position:0%
to create our user and thankfully for us
00:51:15.160 --> 00:51:17.390 align:start position:0%
to create our user and thankfully for us
this<00:51:15.280> is<00:51:15.559> where<00:51:15.839> aight<00:51:16.400> comes<00:51:16.640> in<00:51:17.160> they're
00:51:17.390 --> 00:51:17.400 align:start position:0%
this is where aight comes in they're
00:51:17.400 --> 00:51:19.670 align:start position:0%
this is where aight comes in they're
going<00:51:17.559> to<00:51:17.720> help<00:51:18.000> us<00:51:18.400> with<00:51:18.720> databases
00:51:19.670 --> 00:51:19.680 align:start position:0%
going to help us with databases
00:51:19.680 --> 00:51:23.670 align:start position:0%
going to help us with databases
functions<00:51:20.440> storage<00:51:21.359> but<00:51:21.640> in<00:51:21.920> this<00:51:22.160> case<00:51:22.880> o<00:51:23.520> as
00:51:23.670 --> 00:51:23.680 align:start position:0%
functions storage but in this case o as
00:51:23.680 --> 00:51:26.230 align:start position:0%
functions storage but in this case o as
we<00:51:23.920> actually<00:51:24.240> have<00:51:24.400> to<00:51:24.559> create<00:51:24.839> our<00:51:24.960> users
00:51:26.230 --> 00:51:26.240 align:start position:0%
we actually have to create our users
00:51:26.240 --> 00:51:28.030 align:start position:0%
we actually have to create our users
and<00:51:26.480> as<00:51:26.599> I've<00:51:26.760> told<00:51:26.920> you<00:51:27.040> at<00:51:27.160> the<00:51:27.359> start<00:51:27.799> we'll
00:51:28.030 --> 00:51:28.040 align:start position:0%
and as I've told you at the start we'll
00:51:28.040 --> 00:51:31.670 align:start position:0%
and as I've told you at the start we'll
be<00:51:28.200> using<00:51:28.720> ID's<00:51:29.520> Cloud<00:51:30.160> platform<00:51:31.160> click<00:51:31.480> the
00:51:31.670 --> 00:51:31.680 align:start position:0%
be using ID's Cloud platform click the
00:51:31.680 --> 00:51:33.390 align:start position:0%
be using ID's Cloud platform click the
special<00:51:32.160> ight<00:51:32.640> Cloud<00:51:32.920> Link<00:51:33.119> in<00:51:33.200> the
00:51:33.390 --> 00:51:33.400 align:start position:0%
special ight Cloud Link in the
00:51:33.400 --> 00:51:35.109 align:start position:0%
special ight Cloud Link in the
description<00:51:34.040> that's<00:51:34.240> going<00:51:34.400> to<00:51:34.520> allow<00:51:34.760> you<00:51:34.880> to
00:51:35.109 --> 00:51:35.119 align:start position:0%
description that's going to allow you to
00:51:35.119 --> 00:51:38.190 align:start position:0%
description that's going to allow you to
sign<00:51:35.400> in<00:51:36.200> and<00:51:36.480> follow<00:51:36.839> along<00:51:37.200> with<00:51:37.359> this<00:51:37.599> video
00:51:38.190 --> 00:51:38.200 align:start position:0%
sign in and follow along with this video
00:51:38.200 --> 00:51:41.829 align:start position:0%
sign in and follow along with this video
seamlessly<00:51:39.200> and<00:51:39.400> then<00:51:39.839> sign<00:51:40.160> in<00:51:40.520> or<00:51:40.839> sign<00:51:41.119> up<00:51:41.680> I
00:51:41.829 --> 00:51:41.839 align:start position:0%
seamlessly and then sign in or sign up I
00:51:41.839 --> 00:51:44.870 align:start position:0%
seamlessly and then sign in or sign up I
recommend<00:51:42.359> with<00:51:42.760> GitHub<00:51:43.760> and<00:51:44.040> once<00:51:44.200> you're<00:51:44.400> in
00:51:44.870 --> 00:51:44.880 align:start position:0%
recommend with GitHub and once you're in
00:51:44.880 --> 00:51:47.069 align:start position:0%
recommend with GitHub and once you're in
you'll<00:51:45.079> be<00:51:45.240> able<00:51:45.440> to<00:51:45.640> create<00:51:46.040> your<00:51:46.319> first
00:51:47.069 --> 00:51:47.079 align:start position:0%
you'll be able to create your first
00:51:47.079 --> 00:51:49.710 align:start position:0%
you'll be able to create your first
project<00:51:48.079> let's<00:51:48.319> do<00:51:48.640> something<00:51:49.000> like
00:51:49.710 --> 00:51:49.720 align:start position:0%
project let's do something like
00:51:49.720 --> 00:51:51.309 align:start position:0%
project let's do something like
jmore
00:51:51.309 --> 00:51:51.319 align:start position:0%
jmore
00:51:51.319 --> 00:51:53.510 align:start position:0%
jmore
snapgram<00:51:52.319> of<00:51:52.480> course<00:51:52.760> this<00:51:52.880> is<00:51:53.000> now<00:51:53.240> going<00:51:53.400> to
00:51:53.510 --> 00:51:53.520 align:start position:0%
snapgram of course this is now going to
00:51:53.520 --> 00:51:56.030 align:start position:0%
snapgram of course this is now going to
be<00:51:53.720> taken<00:51:54.200> by<00:51:54.400> me<00:51:55.040> but<00:51:55.440> whatever<00:51:55.720> name<00:51:55.880> you
00:51:56.030 --> 00:51:56.040 align:start position:0%
be taken by me but whatever name you
00:51:56.040 --> 00:51:58.789 align:start position:0%
be taken by me but whatever name you
decide<00:51:56.359> to<00:51:56.520> take<00:51:57.119> definitely<00:51:57.640> append<00:51:58.040> JSM<00:51:58.680> in
00:51:58.789 --> 00:51:58.799 align:start position:0%
decide to take definitely append JSM in
00:51:58.799 --> 00:52:02.910 align:start position:0%
decide to take definitely append JSM in
front<00:51:59.040> of<00:51:59.400> it<00:52:00.400> and<00:52:00.559> then<00:52:00.799> click
00:52:02.910 --> 00:52:02.920 align:start position:0%
front of it and then click
00:52:02.920 --> 00:52:06.230 align:start position:0%
front of it and then click
create<00:52:03.920> there<00:52:04.079> we<00:52:04.280> go<00:52:04.680> our<00:52:04.880> JSM<00:52:05.319> snapgram<00:52:06.079> has
00:52:06.230 --> 00:52:06.240 align:start position:0%
create there we go our JSM snapgram has
00:52:06.240 --> 00:52:08.109 align:start position:0%
create there we go our JSM snapgram has
been<00:52:06.480> created<00:52:07.160> and<00:52:07.400> here<00:52:07.640> we<00:52:07.760> have<00:52:07.920> our
00:52:08.109 --> 00:52:08.119 align:start position:0%
been created and here we have our
00:52:08.119 --> 00:52:10.990 align:start position:0%
been created and here we have our
getting<00:52:08.440> started<00:52:09.119> guide<00:52:10.119> but<00:52:10.359> thankfully<00:52:10.880> you
00:52:10.990 --> 00:52:11.000 align:start position:0%
getting started guide but thankfully you
00:52:11.000 --> 00:52:12.829 align:start position:0%
getting started guide but thankfully you
won't<00:52:11.319> have<00:52:11.440> to<00:52:11.559> follow<00:52:11.920> it<00:52:12.280> because<00:52:12.520> you're
00:52:12.829 --> 00:52:12.839 align:start position:0%
won't have to follow it because you're
00:52:12.839 --> 00:52:14.510 align:start position:0%
won't have to follow it because you're
watching<00:52:13.319> this<00:52:13.520> video<00:52:13.960> and<00:52:14.079> I'm<00:52:14.200> going<00:52:14.280> to
00:52:14.510 --> 00:52:14.520 align:start position:0%
watching this video and I'm going to
00:52:14.520 --> 00:52:17.270 align:start position:0%
watching this video and I'm going to
teach<00:52:14.760> you<00:52:15.200> everything<00:52:16.000> step<00:52:16.359> by<00:52:16.640> step<00:52:17.079> to
00:52:17.270 --> 00:52:17.280 align:start position:0%
teach you everything step by step to
00:52:17.280 --> 00:52:20.510 align:start position:0%
teach you everything step by step to
utilize<00:52:17.839> all<00:52:18.280> of<00:52:18.440> the<00:52:18.640> primary<00:52:19.319> upright<00:52:19.760> Cloud
00:52:20.510 --> 00:52:20.520 align:start position:0%
utilize all of the primary upright Cloud
00:52:20.520 --> 00:52:23.430 align:start position:0%
utilize all of the primary upright Cloud
features<00:52:21.520> we'll<00:52:21.720> be<00:52:21.880> dealing<00:52:22.319> with<00:52:22.599> OD<00:52:23.240> really
00:52:23.430 --> 00:52:23.440 align:start position:0%
features we'll be dealing with OD really
00:52:23.440 --> 00:52:26.230 align:start position:0%
features we'll be dealing with OD really
soon<00:52:23.720> to<00:52:23.880> create<00:52:24.119> our<00:52:24.319> users<00:52:25.319> databases
00:52:26.230 --> 00:52:26.240 align:start position:0%
soon to create our users databases
00:52:26.240 --> 00:52:29.510 align:start position:0%
soon to create our users databases
functions<00:52:26.960> and<00:52:27.200> even<00:52:27.799> storage<00:52:28.799> so<00:52:29.000> for<00:52:29.240> now
00:52:29.510 --> 00:52:29.520 align:start position:0%
functions and even storage so for now
00:52:29.520 --> 00:52:31.630 align:start position:0%
functions and even storage so for now
the<00:52:29.680> only<00:52:29.920> thing<00:52:30.079> you<00:52:30.200> have<00:52:30.319> to<00:52:30.480> do<00:52:31.000> is<00:52:31.280> copy
00:52:31.630 --> 00:52:31.640 align:start position:0%
the only thing you have to do is copy
00:52:31.640 --> 00:52:33.630 align:start position:0%
the only thing you have to do is copy
this<00:52:31.839> ID<00:52:32.240> that<00:52:32.359> you've<00:52:32.520> been<00:52:32.720> given<00:52:33.040> for<00:52:33.319> your
00:52:33.630 --> 00:52:33.640 align:start position:0%
this ID that you've been given for your
00:52:33.640 --> 00:52:35.990 align:start position:0%
this ID that you've been given for your
project<00:52:34.480> once<00:52:34.680> you<00:52:34.799> do<00:52:35.079> that<00:52:35.359> we<00:52:35.480> can<00:52:35.640> go<00:52:35.839> back
00:52:35.990 --> 00:52:36.000 align:start position:0%
project once you do that we can go back
00:52:36.000 --> 00:52:36.950 align:start position:0%
project once you do that we can go back
to<00:52:36.119> our
00:52:36.950 --> 00:52:36.960 align:start position:0%
to our
00:52:36.960 --> 00:52:39.230 align:start position:0%
to our
application<00:52:37.960> and<00:52:38.160> then<00:52:38.480> we<00:52:38.599> can<00:52:38.760> go<00:52:38.880> to<00:52:39.040> our
00:52:39.230 --> 00:52:39.240 align:start position:0%
application and then we can go to our
00:52:39.240 --> 00:52:41.190 align:start position:0%
application and then we can go to our
Explorer<00:52:40.079> collapse<00:52:40.599> everything<00:52:40.880> so<00:52:41.040> it's
00:52:41.190 --> 00:52:41.200 align:start position:0%
Explorer collapse everything so it's
00:52:41.200 --> 00:52:43.549 align:start position:0%
Explorer collapse everything so it's
easier<00:52:41.520> to<00:52:41.680> see<00:52:42.440> as<00:52:42.559> a<00:52:42.680> matter<00:52:42.880> of<00:52:43.040> fact<00:52:43.240> we<00:52:43.319> can
00:52:43.549 --> 00:52:43.559 align:start position:0%
easier to see as a matter of fact we can
00:52:43.559 --> 00:52:46.230 align:start position:0%
easier to see as a matter of fact we can
close<00:52:44.000> all<00:52:44.240> the<00:52:44.400> files<00:52:44.680> at<00:52:44.839> the<00:52:45.079> moment<00:52:46.079> and
00:52:46.230 --> 00:52:46.240 align:start position:0%
close all the files at the moment and
00:52:46.240 --> 00:52:49.589 align:start position:0%
close all the files at the moment and
then<00:52:46.400> go<00:52:46.559> to<00:52:46.799> Source<00:52:47.760> lib<00:52:48.559> and<00:52:48.799> within<00:52:49.079> the<00:52:49.280> lib
00:52:49.589 --> 00:52:49.599 align:start position:0%
then go to Source lib and within the lib
00:52:49.599 --> 00:52:51.190 align:start position:0%
then go to Source lib and within the lib
we're<00:52:49.720> going<00:52:49.799> to<00:52:49.960> create<00:52:50.240> a<00:52:50.400> new<00:52:50.640> folder
00:52:51.190 --> 00:52:51.200 align:start position:0%
we're going to create a new folder
00:52:51.200 --> 00:52:52.230 align:start position:0%
we're going to create a new folder
called
00:52:52.230 --> 00:52:52.240 align:start position:0%
called
00:52:52.240 --> 00:52:54.990 align:start position:0%
called
aight<00:52:53.240> within<00:52:53.680> aight<00:52:54.200> we're<00:52:54.359> going<00:52:54.480> to<00:52:54.680> create
00:52:54.990 --> 00:52:55.000 align:start position:0%
aight within aight we're going to create
00:52:55.000 --> 00:53:16.910 align:start position:0%
aight within aight we're going to create
a<00:52:55.319> new<00:52:55.599> file<00:52:56.040> called
00:53:16.910 --> 00:53:16.920 align:start position:0%
00:53:16.920 --> 00:53:18.510 align:start position:0%
config.sys
00:53:18.510 --> 00:53:18.520 align:start position:0%
config.sys
00:53:18.520 --> 00:53:22.030 align:start position:0%
config.sys
so<00:53:19.520> open<00:53:19.760> up<00:53:19.920> your<00:53:20.079> terminal<00:53:20.799> and<00:53:20.960> run<00:53:21.319> mpm
00:53:22.030 --> 00:53:22.040 align:start position:0%
so open up your terminal and run mpm
00:53:22.040 --> 00:53:25.390 align:start position:0%
so open up your terminal and run mpm
install<00:53:23.280> ight<00:53:24.280> and<00:53:24.480> that's<00:53:24.680> the<00:53:24.839> only
00:53:25.390 --> 00:53:25.400 align:start position:0%
install ight and that's the only
00:53:25.400 --> 00:53:27.069 align:start position:0%
install ight and that's the only
dependency<00:53:26.000> you<00:53:26.160> have<00:53:26.280> to<00:53:26.400> install<00:53:26.760> to<00:53:26.880> make
00:53:27.069 --> 00:53:27.079 align:start position:0%
dependency you have to install to make
00:53:27.079 --> 00:53:30.230 align:start position:0%
dependency you have to install to make
this<00:53:27.319> work<00:53:28.200> and<00:53:28.440> just<00:53:28.559> to<00:53:28.760> verify<00:53:29.319> in<00:53:29.559> my<00:53:29.839> case
00:53:30.230 --> 00:53:30.240 align:start position:0%
this work and just to verify in my case
00:53:30.240 --> 00:53:54.150 align:start position:0%
this work and just to verify in my case
I'm<00:53:30.400> on<00:53:30.640> version
00:53:54.150 --> 00:53:54.160 align:start position:0%
00:53:54.160 --> 00:53:56.589 align:start position:0%
13.0.0.0.0<00:53:55.200> able<00:53:55.359> to<00:53:55.520> define<00:53:56.040> a<00:53:56.200> couple<00:53:56.440> of
00:53:56.589 --> 00:53:56.599 align:start position:0%
13.0.0.0.0 able to define a couple of
00:53:56.599 --> 00:54:00.430 align:start position:0%
13.0.0.0.0 able to define a couple of
things<00:53:57.319> first<00:53:57.520> of<00:53:57.720> all<00:53:58.160> your<00:53:58.599> project<00:53:59.200> ID<00:54:00.200> and
00:54:00.430 --> 00:54:00.440 align:start position:0%
things first of all your project ID and
00:54:00.440 --> 00:54:02.309 align:start position:0%
things first of all your project ID and
I<00:54:00.520> think<00:54:00.680> you<00:54:00.799> already<00:54:01.079> know<00:54:01.280> it<00:54:01.559> right<00:54:02.119> it's
00:54:02.309 --> 00:54:02.319 align:start position:0%
I think you already know it right it's
00:54:02.319 --> 00:54:05.270 align:start position:0%
I think you already know it right it's
the<00:54:02.480> ID<00:54:02.799> we<00:54:03.000> copied<00:54:03.520> from<00:54:03.839> aite<00:54:04.640> but<00:54:04.880> we<00:54:05.040> never
00:54:05.270 --> 00:54:05.280 align:start position:0%
the ID we copied from aite but we never
00:54:05.280 --> 00:54:08.390 align:start position:0%
the ID we copied from aite but we never
want<00:54:05.440> to<00:54:05.559> share<00:54:06.040> any<00:54:06.319> IDs<00:54:06.960> or<00:54:07.200> keys<00:54:07.599> or<00:54:07.839> Secrets
00:54:08.390 --> 00:54:08.400 align:start position:0%
want to share any IDs or keys or Secrets
00:54:08.400 --> 00:54:10.589 align:start position:0%
want to share any IDs or keys or Secrets
publicly<00:54:09.200> so<00:54:09.400> for<00:54:09.640> that<00:54:09.880> we're<00:54:10.040> going<00:54:10.119> to<00:54:10.280> use
00:54:10.589 --> 00:54:10.599 align:start position:0%
publicly so for that we're going to use
00:54:10.599 --> 00:54:14.670 align:start position:0%
publicly so for that we're going to use
environment<00:54:11.440> variables<00:54:12.440> so<00:54:12.880> let's<00:54:13.160> go<00:54:13.440> to<00:54:13.839> our
00:54:14.670 --> 00:54:14.680 align:start position:0%
environment variables so let's go to our
00:54:14.680 --> 00:54:17.910 align:start position:0%
environment variables so let's go to our
app<00:54:15.680> and<00:54:15.880> then<00:54:16.480> outside<00:54:16.960> of<00:54:17.079> the<00:54:17.240> source<00:54:17.799> we
00:54:17.910 --> 00:54:17.920 align:start position:0%
app and then outside of the source we
00:54:17.920 --> 00:54:22.950 align:start position:0%
app and then outside of the source we
can<00:54:18.079> create<00:54:18.440> a<00:54:18.960> new<00:54:20.359> env.<00:54:21.359> local<00:54:21.799> file<00:54:22.720> and
00:54:22.950 --> 00:54:22.960 align:start position:0%
can create a new env. local file and
00:54:22.960 --> 00:54:25.910 align:start position:0%
can create a new env. local file and
within<00:54:23.240> it<00:54:23.520> we<00:54:23.640> can<00:54:23.839> Define<00:54:24.200> the<00:54:24.480> V<00:54:25.160> uncore
00:54:25.910 --> 00:54:25.920 align:start position:0%
within it we can Define the V uncore
00:54:25.920 --> 00:54:30.789 align:start position:0%
within it we can Define the V uncore
aprite<00:54:26.720> uncore<00:54:27.559> projector<00:54:28.559> ID<00:54:29.400> is<00:54:29.640> equal<00:54:30.000> to
00:54:30.789 --> 00:54:30.799 align:start position:0%
aprite uncore projector ID is equal to
00:54:30.799 --> 00:54:34.430 align:start position:0%
aprite uncore projector ID is equal to
this<00:54:31.119> same<00:54:31.599> ID<00:54:32.200> that<00:54:32.359> we<00:54:32.799> copied<00:54:33.799> that<00:54:34.000> way
00:54:34.430 --> 00:54:34.440 align:start position:0%
this same ID that we copied that way
00:54:34.440 --> 00:54:36.430 align:start position:0%
this same ID that we copied that way
instead<00:54:34.720> of<00:54:34.880> just<00:54:35.040> simply<00:54:35.319> using<00:54:35.720> plain<00:54:36.040> text
00:54:36.430 --> 00:54:36.440 align:start position:0%
instead of just simply using plain text
00:54:36.440 --> 00:54:40.510 align:start position:0%
instead of just simply using plain text
here<00:54:36.799> we'll<00:54:36.960> be<00:54:37.079> able<00:54:37.280> to<00:54:37.440> say<00:54:37.880> import.<00:54:38.880> meta
00:54:40.510 --> 00:54:40.520 align:start position:0%
here we'll be able to say import. meta
00:54:40.520 --> 00:54:46.710 align:start position:0%
here we'll be able to say import. meta
env.<00:54:41.880> vorea<00:54:42.960> rightor<00:54:44.160> projector<00:54:45.280> ID<00:54:46.280> and<00:54:46.520> that
00:54:46.710 --> 00:54:46.720 align:start position:0%
env. vorea rightor projector ID and that
00:54:46.720 --> 00:54:50.150 align:start position:0%
env. vorea rightor projector ID and that
way<00:54:47.040> it's<00:54:47.240> going<00:54:47.400> to<00:54:47.559> be<00:54:48.240> safe<00:54:49.240> now<00:54:49.640> here<00:54:50.040> you
00:54:50.150 --> 00:54:50.160 align:start position:0%
way it's going to be safe now here you
00:54:50.160 --> 00:54:51.950 align:start position:0%
way it's going to be safe now here you
can<00:54:50.359> notice<00:54:50.799> that<00:54:51.040> our<00:54:51.280> typescript<00:54:51.839> is
00:54:51.950 --> 00:54:51.960 align:start position:0%
can notice that our typescript is
00:54:51.960 --> 00:54:54.150 align:start position:0%
can notice that our typescript is
complaining<00:54:52.400> a<00:54:52.520> bit<00:54:52.920> saying<00:54:53.240> that<00:54:53.440> EnV<00:54:53.960> does
00:54:54.150 --> 00:54:54.160 align:start position:0%
complaining a bit saying that EnV does
00:54:54.160 --> 00:54:57.069 align:start position:0%
complaining a bit saying that EnV does
not<00:54:54.440> exist<00:54:54.720> on<00:54:54.880> typ<00:54:55.079> type<00:54:55.319> import<00:54:55.680> meta<00:54:56.640> and<00:54:56.920> we
00:54:57.069 --> 00:54:57.079 align:start position:0%
not exist on typ type import meta and we
00:54:57.079 --> 00:54:58.710 align:start position:0%
not exist on typ type import meta and we
just<00:54:57.200> have<00:54:57.319> to<00:54:57.520> let<00:54:57.799> typescript<00:54:58.359> know<00:54:58.599> that
00:54:58.710 --> 00:54:58.720 align:start position:0%
just have to let typescript know that
00:54:58.720 --> 00:55:01.150 align:start position:0%
just have to let typescript know that
we're<00:54:58.920> using<00:54:59.280> V<00:54:59.920> and<00:55:00.160> that<00:55:00.599> this<00:55:00.720> is<00:55:00.880> actually
00:55:01.150 --> 00:55:01.160 align:start position:0%
we're using V and that this is actually
00:55:01.160 --> 00:55:03.670 align:start position:0%
we're using V and that this is actually
going<00:55:01.319> to<00:55:01.559> exist<00:55:02.480> and<00:55:02.640> the<00:55:02.799> way<00:55:02.960> you<00:55:03.160> do<00:55:03.400> that
00:55:03.670 --> 00:55:03.680 align:start position:0%
going to exist and the way you do that
00:55:03.680 --> 00:55:07.309 align:start position:0%
going to exist and the way you do that
is<00:55:03.839> in<00:55:04.000> the<00:55:04.200> source<00:55:04.760> you<00:55:04.880> can<00:55:05.119> add<00:55:05.359> a<00:55:05.559> new<00:55:06.280> v-
00:55:07.309 --> 00:55:07.319 align:start position:0%
is in the source you can add a new v-
00:55:07.319 --> 00:55:11.910 align:start position:0%
is in the source you can add a new v-
env.<00:55:08.599> D.S<00:55:09.599> file<00:55:10.119> and<00:55:10.400> there<00:55:10.720> you<00:55:10.839> can<00:55:11.119> type
00:55:11.910 --> 00:55:11.920 align:start position:0%
env. D.S file and there you can type
00:55:11.920 --> 00:55:16.309 align:start position:0%
env. D.S file and there you can type
reference<00:55:12.920> types<00:55:13.640> is<00:55:13.839> equal<00:55:14.160> to<00:55:14.559> v/<00:55:15.559> client
00:55:16.309 --> 00:55:16.319 align:start position:0%
reference types is equal to v/ client
00:55:16.319 --> 00:55:19.309 align:start position:0%
reference types is equal to v/ client
and<00:55:16.480> then<00:55:16.680> close<00:55:17.000> it<00:55:17.359> like<00:55:17.559> so<00:55:18.240> and<00:55:18.480> add<00:55:19.040> three
00:55:19.309 --> 00:55:19.319 align:start position:0%
and then close it like so and add three
00:55:19.319 --> 00:55:22.549 align:start position:0%
and then close it like so and add three
dashes<00:55:20.119> at<00:55:20.240> the<00:55:20.440> front<00:55:21.440> once<00:55:21.599> you<00:55:21.760> do<00:55:22.039> that<00:55:22.440> you
00:55:22.549 --> 00:55:22.559 align:start position:0%
dashes at the front once you do that you
00:55:22.559 --> 00:55:25.109 align:start position:0%
dashes at the front once you do that you
can<00:55:22.680> see<00:55:23.000> that<00:55:23.200> it's<00:55:23.400> no<00:55:23.640> longer<00:55:24.000> complaining
00:55:25.109 --> 00:55:25.119 align:start position:0%
can see that it's no longer complaining
00:55:25.119 --> 00:55:26.950 align:start position:0%
can see that it's no longer complaining
but<00:55:25.319> now<00:55:25.640> we<00:55:25.760> can<00:55:25.880> still<00:55:26.079> see<00:55:26.319> some<00:55:26.480> warnings
00:55:26.950 --> 00:55:26.960 align:start position:0%
but now we can still see some warnings
00:55:26.960 --> 00:55:29.630 align:start position:0%
but now we can still see some warnings
that<00:55:27.160> these<00:55:27.400> variables<00:55:27.920> are<00:55:28.160> not<00:55:28.440> utilized<00:55:29.359> so
00:55:29.630 --> 00:55:29.640 align:start position:0%
that these variables are not utilized so
00:55:29.640 --> 00:55:31.630 align:start position:0%
that these variables are not utilized so
how<00:55:29.799> do<00:55:29.960> we<00:55:30.119> utilize<00:55:30.720> all<00:55:30.880> of<00:55:31.079> these<00:55:31.319> great
00:55:31.630 --> 00:55:31.640 align:start position:0%
how do we utilize all of these great
00:55:31.640 --> 00:55:32.710 align:start position:0%
how do we utilize all of these great
appes
00:55:32.710 --> 00:55:32.720 align:start position:0%
appes
00:55:32.720 --> 00:55:36.029 align:start position:0%
appes
functionalities<00:55:33.720> well<00:55:34.039> we<00:55:34.160> can<00:55:34.319> say<00:55:35.039> export
00:55:36.029 --> 00:55:36.039 align:start position:0%
functionalities well we can say export
00:55:36.039 --> 00:55:39.589 align:start position:0%
functionalities well we can say export
const<00:55:36.640> client<00:55:37.119> for<00:55:37.319> example<00:55:38.160> is<00:55:38.359> equal<00:55:38.680> to<00:55:39.160> new
00:55:39.589 --> 00:55:39.599 align:start position:0%
const client for example is equal to new
00:55:39.599 --> 00:55:41.470 align:start position:0%
const client for example is equal to new
client<00:55:40.240> so<00:55:40.400> we<00:55:40.520> just<00:55:40.680> have<00:55:40.799> to<00:55:41.039> create<00:55:41.240> an
00:55:41.470 --> 00:55:41.480 align:start position:0%
client so we just have to create an
00:55:41.480 --> 00:55:44.069 align:start position:0%
client so we just have to create an
instance<00:55:42.240> of<00:55:42.559> this<00:55:42.799> client<00:55:43.640> and<00:55:43.799> we're<00:55:43.920> going
00:55:44.069 --> 00:55:44.079 align:start position:0%
instance of this client and we're going
00:55:44.079 --> 00:55:46.109 align:start position:0%
instance of this client and we're going
to<00:55:44.240> repeat<00:55:44.599> this<00:55:44.799> procedure<00:55:45.280> for<00:55:45.720> everything
00:55:46.109 --> 00:55:46.119 align:start position:0%
to repeat this procedure for everything
00:55:46.119 --> 00:55:49.870 align:start position:0%
to repeat this procedure for everything
else<00:55:46.799> so<00:55:47.119> here<00:55:47.440> we<00:55:47.559> can<00:55:47.760> say<00:55:48.559> account<00:55:49.559> is<00:55:49.720> going
00:55:49.870 --> 00:55:49.880 align:start position:0%
else so here we can say account is going
00:55:49.880 --> 00:55:51.390 align:start position:0%
else so here we can say account is going
to<00:55:50.039> be<00:55:50.200> equal<00:55:50.480> to
00:55:51.390 --> 00:55:51.400 align:start position:0%
to be equal to
00:55:51.400 --> 00:55:54.029 align:start position:0%
to be equal to
account<00:55:52.400> then<00:55:52.799> we<00:55:53.039> have<00:55:53.480> something<00:55:53.799> like
00:55:54.029 --> 00:55:54.039 align:start position:0%
account then we have something like
00:55:54.039 --> 00:55:55.990 align:start position:0%
account then we have something like
databases
00:55:55.990 --> 00:55:56.000 align:start position:0%
databases
00:55:56.000 --> 00:55:58.190 align:start position:0%
databases
is<00:55:56.200> equal<00:55:56.480> to<00:55:56.680> new
00:55:58.190 --> 00:55:58.200 align:start position:0%
is equal to new
00:55:58.200 --> 00:56:00.630 align:start position:0%
is equal to new
databases<00:55:59.200> then<00:55:59.599> we<00:55:59.799> have
00:56:00.630 --> 00:56:00.640 align:start position:0%
databases then we have
00:56:00.640 --> 00:56:03.270 align:start position:0%
databases then we have
storage<00:56:01.640> is<00:56:01.799> equal<00:56:02.039> to<00:56:02.240> new
00:56:03.270 --> 00:56:03.280 align:start position:0%
storage is equal to new
00:56:03.280 --> 00:56:06.589 align:start position:0%
storage is equal to new
storage<00:56:04.280> and<00:56:04.559> we<00:56:04.760> also<00:56:05.079> have<00:56:05.480> avatars<00:56:06.440> is
00:56:06.589 --> 00:56:06.599 align:start position:0%
storage and we also have avatars is
00:56:06.599 --> 00:56:09.109 align:start position:0%
storage and we also have avatars is
equal<00:56:06.920> to<00:56:07.319> new
00:56:09.109 --> 00:56:09.119 align:start position:0%
equal to new
00:56:09.119 --> 00:56:10.789 align:start position:0%
equal to new
avatars<00:56:10.119> you<00:56:10.240> can<00:56:10.359> see<00:56:10.520> that<00:56:10.640> it's
00:56:10.789 --> 00:56:10.799 align:start position:0%
avatars you can see that it's
00:56:10.799 --> 00:56:13.109 align:start position:0%
avatars you can see that it's
complaining<00:56:11.280> for<00:56:11.520> a<00:56:11.599> lot<00:56:11.760> of<00:56:11.960> these<00:56:12.640> saying
00:56:13.109 --> 00:56:13.119 align:start position:0%
complaining for a lot of these saying
00:56:13.119 --> 00:56:14.950 align:start position:0%
complaining for a lot of these saying
that<00:56:13.359> the<00:56:13.520> argument<00:56:14.079> client<00:56:14.520> was<00:56:14.680> not
00:56:14.950 --> 00:56:14.960 align:start position:0%
that the argument client was not
00:56:14.960 --> 00:56:17.910 align:start position:0%
that the argument client was not
provided<00:56:15.960> so<00:56:16.200> for<00:56:16.440> all<00:56:16.599> of<00:56:16.799> these<00:56:17.000> to<00:56:17.240> work<00:56:17.760> we
00:56:17.910 --> 00:56:17.920 align:start position:0%
provided so for all of these to work we
00:56:17.920 --> 00:56:20.630 align:start position:0%
provided so for all of these to work we
have<00:56:18.079> to<00:56:18.440> pass<00:56:18.720> in<00:56:19.000> the<00:56:19.240> client<00:56:19.799> within<00:56:20.160> them
00:56:20.630 --> 00:56:20.640 align:start position:0%
have to pass in the client within them
00:56:20.640 --> 00:56:22.430 align:start position:0%
have to pass in the client within them
right<00:56:20.880> here<00:56:21.359> so<00:56:21.599> they<00:56:21.799> know<00:56:22.079> what<00:56:22.200> they're
00:56:22.430 --> 00:56:22.440 align:start position:0%
right here so they know what they're
00:56:22.440 --> 00:56:24.630 align:start position:0%
right here so they know what they're
referring<00:56:22.880> to<00:56:23.640> and<00:56:23.839> with<00:56:24.000> that<00:56:24.160> said<00:56:24.359> we<00:56:24.520> no
00:56:24.630 --> 00:56:24.640 align:start position:0%
referring to and with that said we no
00:56:24.640 --> 00:56:26.069 align:start position:0%
referring to and with that said we no
longer<00:56:25.119> have<00:56:25.359> any
00:56:26.069 --> 00:56:26.079 align:start position:0%
longer have any
00:56:26.079 --> 00:56:28.589 align:start position:0%
longer have any
warnings<00:56:27.079> but<00:56:27.319> now<00:56:27.720> we<00:56:27.839> have<00:56:27.960> to<00:56:28.160> configure
00:56:28.589 --> 00:56:28.599 align:start position:0%
warnings but now we have to configure
00:56:28.599 --> 00:56:31.670 align:start position:0%
warnings but now we have to configure
our<00:56:28.920> client<00:56:29.720> and<00:56:29.839> we<00:56:29.960> can<00:56:30.119> do<00:56:30.359> that<00:56:30.599> by<00:56:30.799> saying
00:56:31.670 --> 00:56:31.680 align:start position:0%
our client and we can do that by saying
00:56:31.680 --> 00:56:35.510 align:start position:0%
our client and we can do that by saying
client<00:56:32.680> dot<00:56:33.559> set<00:56:34.160> project<00:56:35.079> it's<00:56:35.280> pretty
00:56:35.510 --> 00:56:35.520 align:start position:0%
client dot set project it's pretty
00:56:35.520 --> 00:56:39.510 align:start position:0%
client dot set project it's pretty
simple<00:56:36.000> right<00:56:36.480> it's<00:56:36.799> aight<00:56:37.280> config<00:56:38.079> do<00:56:38.440> pro<00:56:38.839> ID
00:56:39.510 --> 00:56:39.520 align:start position:0%
simple right it's aight config do pro ID
00:56:39.520 --> 00:56:41.910 align:start position:0%
simple right it's aight config do pro ID
we<00:56:39.680> already<00:56:40.079> have<00:56:40.319> that<00:56:41.119> but<00:56:41.359> there's<00:56:41.599> another
00:56:41.910 --> 00:56:41.920 align:start position:0%
we already have that but there's another
00:56:41.920 --> 00:56:44.430 align:start position:0%
we already have that but there's another
thing<00:56:42.079> we<00:56:42.200> have<00:56:42.319> to<00:56:42.480> do<00:56:43.039> and<00:56:43.240> that<00:56:43.400> is<00:56:43.799> set<00:56:44.039> up
00:56:44.430 --> 00:56:44.440 align:start position:0%
thing we have to do and that is set up
00:56:44.440 --> 00:56:47.670 align:start position:0%
thing we have to do and that is set up
the<00:56:44.839> endpoint<00:56:45.599> so<00:56:45.760> we<00:56:45.880> can<00:56:45.960> say<00:56:46.240> client.<00:56:47.160> set
00:56:47.670 --> 00:56:47.680 align:start position:0%
the endpoint so we can say client. set
00:56:47.680 --> 00:56:51.029 align:start position:0%
the endpoint so we can say client. set
endpoint<00:56:48.680> and<00:56:48.920> that's<00:56:49.160> going<00:56:49.319> to<00:56:49.520> be
00:56:51.029 --> 00:56:51.039 align:start position:0%
endpoint and that's going to be
00:56:51.039 --> 00:56:55.950 align:start position:0%
endpoint and that's going to be
aite<00:56:52.079> config<00:56:53.079> do<00:56:53.520> URL<00:56:54.520> but<00:56:55.000> hey<00:56:55.359> how<00:56:55.480> do<00:56:55.640> we<00:56:55.760> get
00:56:55.950 --> 00:56:55.960 align:start position:0%
aite config do URL but hey how do we get
00:56:55.960 --> 00:56:58.870 align:start position:0%
aite config do URL but hey how do we get
this<00:56:56.079> URL<00:56:57.000> it's<00:56:57.280> obvious<00:56:57.680> it<00:56:57.839> has<00:56:57.960> to<00:56:58.119> go<00:56:58.400> here
00:56:58.870 --> 00:56:58.880 align:start position:0%
this URL it's obvious it has to go here
00:56:58.880 --> 00:57:01.510 align:start position:0%
this URL it's obvious it has to go here
right<00:56:59.559> and<00:56:59.760> we<00:56:59.839> can<00:57:00.039> import<00:57:00.359> it<00:57:00.480> from<00:57:00.640> envs<00:57:01.359> by
00:57:01.510 --> 00:57:01.520 align:start position:0%
right and we can import it from envs by
00:57:01.520 --> 00:57:04.549 align:start position:0%
right and we can import it from envs by
saying<00:57:01.880> import.<00:57:02.760> meta
00:57:04.549 --> 00:57:04.559 align:start position:0%
saying import. meta
00:57:04.559 --> 00:57:09.470 align:start position:0%
saying import. meta
env.<00:57:05.760> Vore<00:57:06.839> aprite<00:57:07.839> URL<00:57:08.640> so<00:57:08.880> now<00:57:09.079> we<00:57:09.240> have<00:57:09.319> to
00:57:09.470 --> 00:57:09.480 align:start position:0%
env. Vore aprite URL so now we have to
00:57:09.480 --> 00:57:12.470 align:start position:0%
env. Vore aprite URL so now we have to
go<00:57:09.680> to<00:57:09.839> our<00:57:10.359> env.<00:57:11.079> local<00:57:11.680> and<00:57:11.799> we<00:57:11.920> have<00:57:12.000> to<00:57:12.200> add
00:57:12.470 --> 00:57:12.480 align:start position:0%
go to our env. local and we have to add
00:57:12.480 --> 00:57:17.750 align:start position:0%
go to our env. local and we have to add
the<00:57:13.000> Vore<00:57:14.119> aprite<00:57:15.119> URL<00:57:15.880> is<00:57:16.039> equal<00:57:16.319> to<00:57:16.559> a<00:57:16.839> string
00:57:17.750 --> 00:57:17.760 align:start position:0%
the Vore aprite URL is equal to a string
00:57:17.760 --> 00:57:20.309 align:start position:0%
the Vore aprite URL is equal to a string
but<00:57:18.160> hey<00:57:18.440> where<00:57:18.559> do<00:57:18.720> we<00:57:18.920> get<00:57:19.119> this<00:57:19.319> aight<00:57:19.760> URL
00:57:20.309 --> 00:57:20.319 align:start position:0%
but hey where do we get this aight URL
00:57:20.319 --> 00:57:22.789 align:start position:0%
but hey where do we get this aight URL
we<00:57:20.480> didn't<00:57:20.720> see<00:57:20.880> it<00:57:21.119> here<00:57:21.920> in<00:57:22.079> the<00:57:22.240> quick<00:57:22.599> start
00:57:22.789 --> 00:57:22.799 align:start position:0%
we didn't see it here in the quick start
00:57:22.799 --> 00:57:25.150 align:start position:0%
we didn't see it here in the quick start
docs<00:57:23.400> it's<00:57:23.559> going<00:57:23.720> to<00:57:23.920> say<00:57:24.359> right<00:57:24.520> here<00:57:25.039> that
00:57:25.150 --> 00:57:25.160 align:start position:0%
docs it's going to say right here that
00:57:25.160 --> 00:57:28.029 align:start position:0%
docs it's going to say right here that
we<00:57:25.280> can<00:57:25.400> set<00:57:25.599> up<00:57:25.799> endpoint<00:57:26.559> as<00:57:26.760> the<00:57:27.039> https
00:57:28.029 --> 00:57:28.039 align:start position:0%
we can set up endpoint as the https
00:57:28.039 --> 00:57:33.069 align:start position:0%
we can set up endpoint as the https
cloud.<00:57:29.160> aight.<00:57:30.160> V1<00:57:31.119> so<00:57:31.319> let's<00:57:31.599> copy<00:57:31.960> this<00:57:32.640> and
00:57:33.069 --> 00:57:33.079 align:start position:0%
cloud. aight. V1 so let's copy this and
00:57:33.079 --> 00:57:35.390 align:start position:0%
cloud. aight. V1 so let's copy this and
paste<00:57:33.359> it<00:57:33.720> right<00:57:33.960> here<00:57:34.520> so<00:57:34.720> one<00:57:34.880> more<00:57:35.119> time
00:57:35.390 --> 00:57:35.400 align:start position:0%
paste it right here so one more time
00:57:35.400 --> 00:57:37.589 align:start position:0%
paste it right here so one more time
that's<00:57:35.760> https
00:57:37.589 --> 00:57:37.599 align:start position:0%
that's https
00:57:37.599 --> 00:57:40.029 align:start position:0%
that's https
col<00:57:38.599> cloud.
00:57:40.029 --> 00:57:40.039 align:start position:0%
col cloud.
00:57:40.039 --> 00:57:41.630 align:start position:0%
col cloud.
aight.
00:57:41.630 --> 00:57:41.640 align:start position:0%
aight.
00:57:41.640 --> 00:57:44.470 align:start position:0%
aight.
slv1<00:57:42.640> and<00:57:42.799> now<00:57:43.079> we<00:57:43.200> are<00:57:43.400> properly<00:57:43.839> configuring
00:57:44.470 --> 00:57:44.480 align:start position:0%
slv1 and now we are properly configuring
00:57:44.480 --> 00:57:47.549 align:start position:0%
slv1 and now we are properly configuring
our<00:57:45.160> client<00:57:46.160> and<00:57:46.359> this<00:57:46.480> is<00:57:46.680> all<00:57:46.920> that<00:57:47.079> we<00:57:47.240> need
00:57:47.549 --> 00:57:47.559 align:start position:0%
our client and this is all that we need
00:57:47.559 --> 00:57:50.270 align:start position:0%
our client and this is all that we need
to<00:57:47.799> get<00:57:47.960> started<00:57:48.559> with<00:57:49.000> authentication<00:57:50.000> so
00:57:50.270 --> 00:57:50.280 align:start position:0%
to get started with authentication so
00:57:50.280 --> 00:57:53.109 align:start position:0%
to get started with authentication so
now<00:57:50.720> alongside<00:57:51.400> config<00:57:52.039> within<00:57:52.400> aite<00:57:52.960> we're
00:57:53.109 --> 00:57:53.119 align:start position:0%
now alongside config within aite we're
00:57:53.119 --> 00:57:55.109 align:start position:0%
now alongside config within aite we're
going<00:57:53.280> to<00:57:53.440> create<00:57:53.799> a<00:57:54.000> new<00:57:54.280> file<00:57:54.559> called<00:57:54.799> called
00:57:55.109 --> 00:57:55.119 align:start position:0%
going to create a new file called called
00:57:55.119 --> 00:57:59.470 align:start position:0%
going to create a new file called called
api.<00:57:56.359> TS<00:57:57.359> and<00:57:57.599> within<00:57:57.880> it<00:57:58.280> we<00:57:58.400> can<00:57:58.720> export
00:57:59.470 --> 00:57:59.480 align:start position:0%
api. TS and within it we can export
00:57:59.480 --> 00:58:02.470 align:start position:0%
api. TS and within it we can export
async<00:58:00.839> function
00:58:02.470 --> 00:58:02.480 align:start position:0%
async function
00:58:02.480 --> 00:58:06.270 align:start position:0%
async function
create<00:58:03.559> user<00:58:04.559> account<00:58:05.520> that's<00:58:05.720> going<00:58:05.880> to<00:58:06.119> get
00:58:06.270 --> 00:58:06.280 align:start position:0%
create user account that's going to get
00:58:06.280 --> 00:58:08.470 align:start position:0%
create user account that's going to get
in<00:58:06.520> the<00:58:06.680> user<00:58:07.520> that's<00:58:07.720> going<00:58:07.880> to<00:58:08.079> accept<00:58:08.359> the
00:58:08.470 --> 00:58:08.480 align:start position:0%
in the user that's going to accept the
00:58:08.480 --> 00:58:11.069 align:start position:0%
in the user that's going to accept the
user<00:58:08.760> as<00:58:08.880> a<00:58:09.079> parameter<00:58:10.079> and<00:58:10.280> then<00:58:10.480> it'll<00:58:10.880> try
00:58:11.069 --> 00:58:11.079 align:start position:0%
user as a parameter and then it'll try
00:58:11.079 --> 00:58:13.150 align:start position:0%
user as a parameter and then it'll try
to<00:58:11.240> do<00:58:11.480> something<00:58:12.440> do<00:58:12.559> you<00:58:12.720> get<00:58:12.880> where<00:58:13.000> we're
00:58:13.150 --> 00:58:13.160 align:start position:0%
to do something do you get where we're
00:58:13.160 --> 00:58:15.150 align:start position:0%
to do something do you get where we're
going<00:58:13.440> with<00:58:13.599> this<00:58:14.280> this<00:58:14.400> is<00:58:14.559> the<00:58:14.760> function
00:58:15.150 --> 00:58:15.160 align:start position:0%
going with this this is the function
00:58:15.160 --> 00:58:17.470 align:start position:0%
going with this this is the function
we're<00:58:15.400> about<00:58:15.599> to<00:58:15.760> call<00:58:16.160> from<00:58:16.400> within<00:58:16.640> our<00:58:16.839> form
00:58:17.470 --> 00:58:17.480 align:start position:0%
we're about to call from within our form
00:58:17.480 --> 00:58:19.390 align:start position:0%
we're about to call from within our form
so<00:58:17.720> now<00:58:17.960> we<00:58:18.079> can<00:58:18.240> connect<00:58:18.559> to<00:58:18.839> app<00:58:19.119> right
00:58:19.390 --> 00:58:19.400 align:start position:0%
so now we can connect to app right
00:58:19.400 --> 00:58:21.349 align:start position:0%
so now we can connect to app right
authentication<00:58:20.079> functionalities<00:58:21.079> to
00:58:21.349 --> 00:58:21.359 align:start position:0%
authentication functionalities to
00:58:21.359 --> 00:58:24.190 align:start position:0%
authentication functionalities to
actually<00:58:21.760> create<00:58:22.359> this<00:58:22.520> user<00:58:23.359> so<00:58:23.559> to<00:58:23.720> do<00:58:23.920> that
00:58:24.190 --> 00:58:24.200 align:start position:0%
actually create this user so to do that
00:58:24.200 --> 00:58:26.109 align:start position:0%
actually create this user so to do that
let's<00:58:24.359> first<00:58:24.799> follow<00:58:25.079> the<00:58:25.240> proper<00:58:25.640> tab<00:58:25.880> script
00:58:26.109 --> 00:58:26.119 align:start position:0%
let's first follow the proper tab script
00:58:26.119 --> 00:58:28.230 align:start position:0%
let's first follow the proper tab script
Rules<00:58:26.559> by<00:58:26.720> defining<00:58:27.160> the<00:58:27.359> interface<00:58:27.839> for<00:58:28.079> this
00:58:28.230 --> 00:58:28.240 align:start position:0%
Rules by defining the interface for this
00:58:28.240 --> 00:58:30.910 align:start position:0%
Rules by defining the interface for this
user<00:58:29.160> and<00:58:29.319> we<00:58:29.440> can<00:58:29.599> do<00:58:29.799> that<00:58:30.079> by<00:58:30.240> saying<00:58:30.680> that
00:58:30.910 --> 00:58:30.920 align:start position:0%
user and we can do that by saying that
00:58:30.920 --> 00:58:33.670 align:start position:0%
user and we can do that by saying that
the<00:58:31.079> user<00:58:31.720> is<00:58:31.960> of<00:58:32.160> a<00:58:32.400> type<00:58:32.960> or<00:58:33.160> rather<00:58:33.359> of<00:58:33.520> the
00:58:33.670 --> 00:58:33.680 align:start position:0%
the user is of a type or rather of the
00:58:33.680 --> 00:58:38.150 align:start position:0%
the user is of a type or rather of the
interface<00:58:34.599> I<00:58:35.079> as<00:58:35.200> an<00:58:35.480> interface<00:58:36.480> new<00:58:37.119> user<00:58:38.000> and
00:58:38.150 --> 00:58:38.160 align:start position:0%
interface I as an interface new user and
00:58:38.160 --> 00:58:40.990 align:start position:0%
interface I as an interface new user and
we<00:58:38.280> can<00:58:38.440> Define<00:58:38.880> that<00:58:39.319> within<00:58:39.960> a<00:58:40.160> new<00:58:40.359> folder
00:58:40.990 --> 00:58:41.000 align:start position:0%
we can Define that within a new folder
00:58:41.000 --> 00:58:44.470 align:start position:0%
we can Define that within a new folder
that's<00:58:41.160> in<00:58:41.280> the<00:58:41.480> source<00:58:41.799> folder<00:58:42.480> called<00:58:43.480> types
00:58:44.470 --> 00:58:44.480 align:start position:0%
that's in the source folder called types
00:58:44.480 --> 00:58:47.829 align:start position:0%
that's in the source folder called types
within<00:58:44.880> types<00:58:45.359> we<00:58:45.440> can<00:58:45.640> have<00:58:45.799> a<00:58:46.000> new
00:58:47.829 --> 00:58:47.839 align:start position:0%
within types we can have a new
00:58:47.839 --> 00:58:50.510 align:start position:0%
within types we can have a new
index.ts<00:58:48.839> and<00:58:49.039> in<00:58:49.160> the<00:58:49.280> GitHub<00:58:49.599> J<00:58:49.799> down<00:58:50.000> below
00:58:50.510 --> 00:58:50.520 align:start position:0%
index.ts and in the GitHub J down below
00:58:50.520 --> 00:58:53.190 align:start position:0%
index.ts and in the GitHub J down below
you'll<00:58:50.720> be<00:58:50.880> able<00:58:51.079> to<00:58:51.280> find<00:58:51.960> this<00:58:52.240> entire<00:58:52.720> file
00:58:53.190 --> 00:58:53.200 align:start position:0%
you'll be able to find this entire file
00:58:53.200 --> 00:58:54.910 align:start position:0%
you'll be able to find this entire file
that's<00:58:53.359> going<00:58:53.520> to<00:58:53.720> contain<00:58:54.240> a<00:58:54.359> couple<00:58:54.599> of<00:58:54.799> of
00:58:54.910 --> 00:58:54.920 align:start position:0%
that's going to contain a couple of of
00:58:54.920 --> 00:58:56.990 align:start position:0%
that's going to contain a couple of of
different<00:58:55.319> interfaces<00:58:56.319> we<00:58:56.440> can<00:58:56.599> go<00:58:56.760> through
00:58:56.990 --> 00:58:57.000 align:start position:0%
different interfaces we can go through
00:58:57.000 --> 00:58:58.710 align:start position:0%
different interfaces we can go through
each<00:58:57.200> one<00:58:57.359> of<00:58:57.559> these<00:58:57.839> as<00:58:57.960> we're<00:58:58.240> referencing
00:58:58.710 --> 00:58:58.720 align:start position:0%
each one of these as we're referencing
00:58:58.720 --> 00:59:00.990 align:start position:0%
each one of these as we're referencing
it<00:58:58.880> in<00:58:59.000> the<00:58:59.160> code<00:58:59.760> such<00:58:59.960> as<00:59:00.079> in<00:59:00.280> this<00:59:00.480> case
00:59:00.990 --> 00:59:01.000 align:start position:0%
it in the code such as in this case
00:59:01.000 --> 00:59:04.470 align:start position:0%
it in the code such as in this case
export<00:59:01.520> type<00:59:02.079> I<00:59:02.319> new<00:59:02.559> user<00:59:03.480> which<00:59:03.640> has<00:59:03.760> a<00:59:03.960> name
00:59:04.470 --> 00:59:04.480 align:start position:0%
export type I new user which has a name
00:59:04.480 --> 00:59:07.549 align:start position:0%
export type I new user which has a name
email<00:59:05.000> username<00:59:05.520> and<00:59:05.960> password<00:59:06.960> and<00:59:07.160> now<00:59:07.440> we
00:59:07.549 --> 00:59:07.559 align:start position:0%
email username and password and now we
00:59:07.559 --> 00:59:10.950 align:start position:0%
email username and password and now we
can<00:59:08.039> just<00:59:08.280> import<00:59:08.599> it<00:59:08.839> right<00:59:09.039> here<00:59:09.400> from<00:59:09.960> add/
00:59:10.950 --> 00:59:10.960 align:start position:0%
can just import it right here from add/
00:59:10.960 --> 00:59:13.670 align:start position:0%
can just import it right here from add/
types<00:59:11.920> and<00:59:12.039> now<00:59:12.200> we<00:59:12.319> know<00:59:12.640> exactly<00:59:13.319> what<00:59:13.520> this
00:59:13.670 --> 00:59:13.680 align:start position:0%
types and now we know exactly what this
00:59:13.680 --> 00:59:16.390 align:start position:0%
types and now we know exactly what this
user<00:59:14.160> is<00:59:14.319> all<00:59:14.599> about<00:59:15.319> once<00:59:15.520> we<00:59:15.680> know<00:59:15.960> that<00:59:16.280> we
00:59:16.390 --> 00:59:16.400 align:start position:0%
user is all about once we know that we
00:59:16.400 --> 00:59:19.510 align:start position:0%
user is all about once we know that we
can<00:59:16.599> open<00:59:16.839> up<00:59:17.039> a<00:59:17.240> new<00:59:17.559> try<00:59:17.880> and<00:59:18.160> catch<00:59:18.480> Block<00:59:19.359> in
00:59:19.510 --> 00:59:19.520 align:start position:0%
can open up a new try and catch Block in
00:59:19.520 --> 00:59:23.150 align:start position:0%
can open up a new try and catch Block in
the<00:59:19.680> error<00:59:20.119> we<00:59:20.240> can<00:59:20.440> simply<00:59:20.880> consol<00:59:21.520> log<00:59:22.520> the
00:59:23.150 --> 00:59:23.160 align:start position:0%
the error we can simply consol log the
00:59:23.160 --> 00:59:26.349 align:start position:0%
the error we can simply consol log the
error<00:59:24.160> and<00:59:24.319> we<00:59:24.440> might<00:59:24.839> as<00:59:25.000> well<00:59:25.440> return<00:59:25.640> it<00:59:25.960> so
00:59:26.349 --> 00:59:26.359 align:start position:0%
error and we might as well return it so
00:59:26.359 --> 00:59:29.670 align:start position:0%
error and we might as well return it so
return<00:59:27.240> error<00:59:28.119> but<00:59:28.240> the<00:59:28.400> better<00:59:28.720> question<00:59:29.079> is
00:59:29.670 --> 00:59:29.680 align:start position:0%
return error but the better question is
00:59:29.680 --> 00:59:31.870 align:start position:0%
return error but the better question is
what<00:59:29.839> are<00:59:30.000> we<00:59:30.160> going<00:59:30.319> to<00:59:30.559> do<00:59:31.160> within<00:59:31.400> the<00:59:31.559> tri
00:59:31.870 --> 00:59:31.880 align:start position:0%
what are we going to do within the tri
00:59:31.880 --> 00:59:34.430 align:start position:0%
what are we going to do within the tri
block<00:59:32.880> and<00:59:33.119> here<00:59:33.400> we<00:59:33.520> have<00:59:33.640> to<00:59:33.799> create<00:59:34.039> a<00:59:34.160> new
00:59:34.430 --> 00:59:34.440 align:start position:0%
block and here we have to create a new
00:59:34.440 --> 00:59:37.750 align:start position:0%
block and here we have to create a new
account<00:59:35.119> by<00:59:35.240> saying<00:59:35.599> con<00:59:36.079> new<00:59:36.480> account<00:59:37.480> is
00:59:37.750 --> 00:59:37.760 align:start position:0%
account by saying con new account is
00:59:37.760 --> 00:59:42.270 align:start position:0%
account by saying con new account is
equal<00:59:38.079> to<00:59:39.119> await<00:59:40.119> account.<00:59:41.000> create<00:59:42.000> and<00:59:42.160> we
00:59:42.270 --> 00:59:42.280 align:start position:0%
equal to await account. create and we
00:59:42.280 --> 00:59:44.510 align:start position:0%
equal to await account. create and we
need<00:59:42.400> to<00:59:42.599> pass<00:59:42.839> a<00:59:42.960> couple<00:59:43.160> of<00:59:43.359> attributes<00:59:44.359> the
00:59:44.510 --> 00:59:44.520 align:start position:0%
need to pass a couple of attributes the
00:59:44.520 --> 00:59:46.710 align:start position:0%
need to pass a couple of attributes the
first<00:59:44.760> one<00:59:44.920> is<00:59:45.079> the<00:59:45.280> ID<00:59:46.039> of<00:59:46.200> course<00:59:46.440> we<00:59:46.520> can
00:59:46.710 --> 00:59:46.720 align:start position:0%
first one is the ID of course we can
00:59:46.720 --> 00:59:49.430 align:start position:0%
first one is the ID of course we can
just<00:59:46.920> randomly<00:59:47.440> type<00:59:47.680> it<00:59:48.319> but<00:59:48.920> upright
00:59:49.430 --> 00:59:49.440 align:start position:0%
just randomly type it but upright
00:59:49.440 --> 00:59:50.870 align:start position:0%
just randomly type it but upright
provides<00:59:49.720> us<00:59:49.880> with<00:59:50.000> a<00:59:50.119> great<00:59:50.400> utility
00:59:50.870 --> 00:59:50.880 align:start position:0%
provides us with a great utility
00:59:50.880 --> 00:59:53.750 align:start position:0%
provides us with a great utility
function<00:59:51.480> called<00:59:51.880> ID<00:59:52.799> so<00:59:52.960> we<00:59:53.079> can<00:59:53.280> simply
00:59:53.750 --> 00:59:53.760 align:start position:0%
function called ID so we can simply
00:59:53.760 --> 00:59:58.950 align:start position:0%
function called ID so we can simply
import<00:59:55.000> ID<00:59:56.000> from<00:59:57.039> aight<00:59:58.039> and<00:59:58.240> then<00:59:58.720> what<00:59:58.880> you
00:59:58.950 --> 00:59:58.960 align:start position:0%
import ID from aight and then what you
00:59:58.960 --> 01:00:02.349 align:start position:0%
import ID from aight and then what you
can<00:59:59.160> do<00:59:59.839> is<01:00:00.000> just<01:00:00.200> call<01:00:00.480> it<01:00:01.000> and<01:00:01.160> say<01:00:01.440> id.
01:00:02.349 --> 01:00:02.359 align:start position:0%
can do is just call it and say id.
01:00:02.359 --> 01:00:04.670 align:start position:0%
can do is just call it and say id.
unique<01:00:03.280> and<01:00:03.480> that's<01:00:03.680> it<01:00:04.119> it's<01:00:04.280> always<01:00:04.520> going
01:00:04.670 --> 01:00:04.680 align:start position:0%
unique and that's it it's always going
01:00:04.680 --> 01:00:07.029 align:start position:0%
unique and that's it it's always going
to<01:00:04.880> provide<01:00:05.119> you<01:00:05.240> with<01:00:05.359> the<01:00:05.480> unique<01:00:05.880> ID<01:00:06.880> and
01:00:07.029 --> 01:00:07.039 align:start position:0%
to provide you with the unique ID and
01:00:07.039 --> 01:00:10.190 align:start position:0%
to provide you with the unique ID and
then<01:00:07.240> we<01:00:07.400> provide<01:00:07.680> the<01:00:07.799> user.<01:00:08.440> email<01:00:09.440> user.
01:00:10.190 --> 01:00:10.200 align:start position:0%
then we provide the user. email user.
01:00:10.200 --> 01:00:14.430 align:start position:0%
then we provide the user. email user.
password<01:00:11.200> and<01:00:11.599> user.name<01:00:12.680> and<01:00:13.680> for<01:00:13.920> now<01:00:14.319> we
01:00:14.430 --> 01:00:14.440 align:start position:0%
password and user.name and for now we
01:00:14.440 --> 01:00:17.910 align:start position:0%
password and user.name and for now we
can<01:00:14.799> return<01:00:15.200> the<01:00:15.400> new<01:00:16.319> account<01:00:17.319> so<01:00:17.559> now<01:00:17.839> you
01:00:17.910 --> 01:00:17.920 align:start position:0%
can return the new account so now you
01:00:17.920 --> 01:00:19.510 align:start position:0%
can return the new account so now you
can<01:00:18.119> also<01:00:18.319> notice<01:00:18.839> this<01:00:19.039> account<01:00:19.319> we're
01:00:19.510 --> 01:00:19.520 align:start position:0%
can also notice this account we're
01:00:19.520 --> 01:00:21.910 align:start position:0%
can also notice this account we're
calling<01:00:20.079> is<01:00:20.240> not<01:00:20.520> defined<01:00:21.200> so<01:00:21.400> let's<01:00:21.599> double
01:00:21.910 --> 01:00:21.920 align:start position:0%
calling is not defined so let's double
01:00:21.920 --> 01:00:24.069 align:start position:0%
calling is not defined so let's double
click<01:00:22.119> it<01:00:22.640> and<01:00:22.799> would<01:00:22.960> you<01:00:23.079> look<01:00:23.240> at<01:00:23.480> that<01:00:23.920> we
01:00:24.069 --> 01:00:24.079 align:start position:0%
click it and would you look at that we
01:00:24.079 --> 01:00:26.710 align:start position:0%
click it and would you look at that we
are<01:00:24.200> already<01:00:24.760> exporting<01:00:25.200> it<01:00:25.400> from<01:00:25.559> the<01:00:25.720> config
01:00:26.710 --> 01:00:26.720 align:start position:0%
are already exporting it from the config
01:00:26.720 --> 01:00:29.069 align:start position:0%
are already exporting it from the config
and<01:00:26.839> if<01:00:26.920> you<01:00:27.039> go<01:00:27.200> into<01:00:27.400> the<01:00:27.520> config<01:00:28.359> remember
01:00:29.069 --> 01:00:29.079 align:start position:0%
and if you go into the config remember
01:00:29.079 --> 01:00:31.109 align:start position:0%
and if you go into the config remember
that<01:00:29.400> this<01:00:29.520> is<01:00:29.680> the<01:00:29.839> account<01:00:30.119> utility<01:00:30.839> that<01:00:30.960> we
01:00:31.109 --> 01:00:31.119 align:start position:0%
that this is the account utility that we
01:00:31.119 --> 01:00:33.270 align:start position:0%
that this is the account utility that we
have<01:00:31.319> established<01:00:32.000> before<01:00:32.599> by<01:00:32.799> passing<01:00:33.119> the
01:00:33.270 --> 01:00:33.280 align:start position:0%
have established before by passing the
01:00:33.280 --> 01:00:35.470 align:start position:0%
have established before by passing the
client<01:00:33.720> into<01:00:33.960> it<01:00:34.400> and<01:00:34.559> referencing<01:00:35.200> the
01:00:35.470 --> 01:00:35.480 align:start position:0%
client into it and referencing the
01:00:35.480 --> 01:00:37.910 align:start position:0%
client into it and referencing the
account<01:00:35.920> from<01:00:36.200> aite<01:00:37.160> that's<01:00:37.319> going<01:00:37.480> to<01:00:37.640> allow
01:00:37.910 --> 01:00:37.920 align:start position:0%
account from aite that's going to allow
01:00:37.920 --> 01:00:40.670 align:start position:0%
account from aite that's going to allow
us<01:00:38.079> to<01:00:38.240> deal<01:00:38.559> with<01:00:38.680> the<01:00:38.880> O<01:00:39.440> functionalities<01:00:40.400> of
01:00:40.670 --> 01:00:40.680 align:start position:0%
us to deal with the O functionalities of
01:00:40.680 --> 01:00:43.750 align:start position:0%
us to deal with the O functionalities of
aight<01:00:41.160> Cloud<01:00:42.000> so<01:00:42.240> now<01:00:42.599> we<01:00:42.720> can<01:00:42.880> close<01:00:43.319> all<01:00:43.520> of
01:00:43.750 --> 01:00:43.760 align:start position:0%
aight Cloud so now we can close all of
01:00:43.760 --> 01:00:48.069 align:start position:0%
aight Cloud so now we can close all of
this<01:00:44.440> and<01:00:44.680> go<01:00:45.000> back<01:00:45.280> to<01:00:45.520> our<01:00:45.760> form<01:00:46.680> within<01:00:47.119> o
01:00:48.069 --> 01:00:48.079 align:start position:0%
this and go back to our form within o
01:00:48.079 --> 01:00:51.430 align:start position:0%
this and go back to our form within o
forms<01:00:49.039> sign<01:00:49.319> up<01:00:49.559> form<01:00:50.359> and<01:00:50.680> here<01:00:51.000> we're<01:00:51.240> back
01:00:51.430 --> 01:00:51.440 align:start position:0%
forms sign up form and here we're back
01:00:51.440 --> 01:00:53.349 align:start position:0%
forms sign up form and here we're back
to<01:00:51.599> calling<01:00:51.960> the<01:00:52.160> function<01:00:52.720> that's<01:00:52.920> going<01:00:53.079> to
01:00:53.349 --> 01:00:53.359 align:start position:0%
to calling the function that's going to
01:00:53.359 --> 01:00:55.309 align:start position:0%
to calling the function that's going to
create<01:00:53.799> a<01:00:53.960> new<01:00:54.160> user
01:00:55.309 --> 01:00:55.319 align:start position:0%
create a new user
01:00:55.319 --> 01:00:57.390 align:start position:0%
create a new user
so<01:00:55.880> let's<01:00:56.119> go<01:00:56.280> ahead<01:00:56.599> and
01:00:57.390 --> 01:00:57.400 align:start position:0%
so let's go ahead and
01:00:57.400 --> 01:00:59.630 align:start position:0%
so let's go ahead and
uncommented<01:00:58.400> double<01:00:58.760> click<01:00:59.039> and<01:00:59.160> then<01:00:59.400> press
01:00:59.630 --> 01:00:59.640 align:start position:0%
uncommented double click and then press
01:00:59.640 --> 01:01:02.470 align:start position:0%
uncommented double click and then press
control<01:01:00.079> space<01:01:00.680> and<01:01:00.920> import<01:01:01.280> it<01:01:01.520> from<01:01:01.760> lib
01:01:02.470 --> 01:01:02.480 align:start position:0%
control space and import it from lib
01:01:02.480 --> 01:01:05.910 align:start position:0%
control space and import it from lib
upright<01:01:03.520> API<01:01:04.520> and<01:01:04.720> we're<01:01:04.920> now<01:01:05.200> hoping<01:01:05.799> that
01:01:05.910 --> 01:01:05.920 align:start position:0%
upright API and we're now hoping that
01:01:05.920 --> 01:01:08.349 align:start position:0%
upright API and we're now hoping that
we're<01:01:06.039> going<01:01:06.160> to<01:01:06.359> get<01:01:06.640> a<01:01:06.839> new<01:01:07.119> user<01:01:07.839> right<01:01:08.079> here
01:01:08.349 --> 01:01:08.359 align:start position:0%
we're going to get a new user right here
01:01:08.359 --> 01:01:11.150 align:start position:0%
we're going to get a new user right here
or<01:01:08.520> at<01:01:08.640> least<01:01:08.799> a<01:01:08.960> new<01:01:09.200> account<01:01:10.000> back<01:01:10.680> after<01:01:10.960> the
01:01:11.150 --> 01:01:11.160 align:start position:0%
or at least a new account back after the
01:01:11.160 --> 01:01:13.870 align:start position:0%
or at least a new account back after the
creation<01:01:11.760> is<01:01:12.000> done<01:01:12.839> so<01:01:13.079> let's<01:01:13.280> go<01:01:13.400> ahead<01:01:13.680> and
01:01:13.870 --> 01:01:13.880 align:start position:0%
creation is done so let's go ahead and
01:01:13.880 --> 01:01:17.109 align:start position:0%
creation is done so let's go ahead and
conso<01:01:14.359> log<01:01:14.640> that<01:01:14.839> user<01:01:15.599> right<01:01:15.839> here<01:01:16.599> by<01:01:16.760> saying
01:01:17.109 --> 01:01:17.119 align:start position:0%
conso log that user right here by saying
01:01:17.119 --> 01:01:21.630 align:start position:0%
conso log that user right here by saying
consol<01:01:17.559> log<01:01:17.960> new<01:01:18.319> user<01:01:19.319> now<01:01:19.760> if<01:01:19.880> we<01:01:20.079> save<01:01:20.640> this
01:01:21.630 --> 01:01:21.640 align:start position:0%
consol log new user now if we save this
01:01:21.640 --> 01:01:24.990 align:start position:0%
consol log new user now if we save this
we<01:01:21.799> are<01:01:22.000> ready<01:01:22.319> to<01:01:22.880> submit<01:01:23.680> our<01:01:23.880> form<01:01:24.760> by
01:01:24.990 --> 01:01:25.000 align:start position:0%
we are ready to submit our form by
01:01:25.000 --> 01:01:28.150 align:start position:0%
we are ready to submit our form by
entering<01:01:25.480> a<01:01:25.720> name<01:01:26.400> let's<01:01:26.559> do<01:01:26.880> Adrien<01:01:27.880> we<01:01:28.000> can
01:01:28.150 --> 01:01:28.160 align:start position:0%
entering a name let's do Adrien we can
01:01:28.160 --> 01:01:30.430 align:start position:0%
entering a name let's do Adrien we can
do<01:01:28.520> JavaScript
01:01:30.430 --> 01:01:30.440 align:start position:0%
do JavaScript
01:01:30.440 --> 01:01:34.069 align:start position:0%
do JavaScript
Mastery<01:01:31.440> and<01:01:31.640> an<01:01:31.880> email<01:01:32.520> off<01:01:32.880> contact<01:01:33.680> JS
01:01:34.069 --> 01:01:34.079 align:start position:0%
Mastery and an email off contact JS
01:01:34.079 --> 01:01:37.829 align:start position:0%
Mastery and an email off contact JS
mastery.<01:01:34.880> proo<01:01:35.520> and<01:01:35.720> finally<01:01:36.319> a<01:01:36.599> password<01:01:37.559> so
01:01:37.829 --> 01:01:37.839 align:start position:0%
mastery. proo and finally a password so
01:01:37.839 --> 01:01:40.309 align:start position:0%
mastery. proo and finally a password so
let's<01:01:38.039> go<01:01:38.200> ahead<01:01:38.480> and<01:01:38.720> click<01:01:39.160> sign
01:01:40.309 --> 01:01:40.319 align:start position:0%
let's go ahead and click sign
01:01:40.319 --> 01:01:43.109 align:start position:0%
let's go ahead and click sign
up<01:01:41.319> and<01:01:41.640> we<01:01:41.799> have<01:01:42.079> really<01:01:42.319> good<01:01:42.520> validation
01:01:43.109 --> 01:01:43.119 align:start position:0%
up and we have really good validation
01:01:43.119 --> 01:01:45.829 align:start position:0%
up and we have really good validation
here<01:01:43.400> I'm<01:01:43.559> glad<01:01:43.839> we<01:01:44.000> were<01:01:44.200> able<01:01:44.400> to<01:01:44.559> see<01:01:44.799> it<01:01:45.720> we
01:01:45.829 --> 01:01:45.839 align:start position:0%
here I'm glad we were able to see it we
01:01:45.839 --> 01:01:47.750 align:start position:0%
here I'm glad we were able to see it we
need<01:01:46.079> eight<01:01:46.440> characters<01:01:47.200> so<01:01:47.400> I'm<01:01:47.520> going<01:01:47.599> to
01:01:47.750 --> 01:01:47.760 align:start position:0%
need eight characters so I'm going to
01:01:47.760 --> 01:01:50.510 align:start position:0%
need eight characters so I'm going to
enter<01:01:48.079> them<01:01:48.520> and<01:01:48.720> then<01:01:48.920> click<01:01:49.319> sign
01:01:50.510 --> 01:01:50.520 align:start position:0%
enter them and then click sign
01:01:50.520 --> 01:01:53.150 align:start position:0%
enter them and then click sign
up<01:01:51.520> now<01:01:51.799> it<01:01:51.960> seems<01:01:52.279> like<01:01:52.599> nothing<01:01:52.920> has
01:01:53.150 --> 01:01:53.160 align:start position:0%
up now it seems like nothing has
01:01:53.160 --> 01:01:56.150 align:start position:0%
up now it seems like nothing has
happened<01:01:53.839> but<01:01:54.039> let's<01:01:54.200> go<01:01:54.559> ahead<01:01:54.920> and<01:01:55.160> go<01:01:55.359> to
01:01:56.150 --> 01:01:56.160 align:start position:0%
happened but let's go ahead and go to
01:01:56.160 --> 01:01:58.390 align:start position:0%
happened but let's go ahead and go to
inspect<01:01:57.160> and<01:01:57.279> then<01:01:57.520> right<01:01:57.720> here<01:01:57.920> we<01:01:58.039> can<01:01:58.160> check
01:01:58.390 --> 01:01:58.400 align:start position:0%
inspect and then right here we can check
01:01:58.400 --> 01:02:01.309 align:start position:0%
inspect and then right here we can check
the<01:01:58.559> console<01:01:59.359> we<01:01:59.599> indeed<01:02:00.240> did<01:02:00.520> get<01:02:00.799> back<01:02:01.000> an
01:02:01.309 --> 01:02:01.319 align:start position:0%
the console we indeed did get back an
01:02:01.319 --> 01:02:04.829 align:start position:0%
the console we indeed did get back an
object<01:02:02.000> that<01:02:02.160> says<01:02:02.559> created<01:02:03.079> ad<01:02:03.640> updated<01:02:04.160> ad
01:02:04.829 --> 01:02:04.839 align:start position:0%
object that says created ad updated ad
01:02:04.839 --> 01:02:08.390 align:start position:0%
object that says created ad updated ad
email<01:02:05.720> name<01:02:06.440> password<01:02:06.960> update<01:02:07.520> and<01:02:07.760> all<01:02:08.119> this
01:02:08.390 --> 01:02:08.400 align:start position:0%
email name password update and all this
01:02:08.400 --> 01:02:10.190 align:start position:0%
email name password update and all this
good<01:02:08.680> stuff<01:02:09.359> which<01:02:09.520> means<01:02:09.799> that<01:02:09.960> this<01:02:10.079> is
01:02:10.190 --> 01:02:10.200 align:start position:0%
good stuff which means that this is
01:02:10.200 --> 01:02:12.910 align:start position:0%
good stuff which means that this is
coming<01:02:10.640> back<01:02:10.880> from<01:02:11.200> aite<01:02:12.160> which<01:02:12.359> then<01:02:12.559> means
01:02:12.910 --> 01:02:12.920 align:start position:0%
coming back from aite which then means
01:02:12.920 --> 01:02:15.710 align:start position:0%
coming back from aite which then means
that<01:02:13.079> our<01:02:13.279> user<01:02:13.920> was<01:02:14.160> indeed<01:02:14.599> created<01:02:15.520> it's
01:02:15.710 --> 01:02:15.720 align:start position:0%
that our user was indeed created it's
01:02:15.720 --> 01:02:17.710 align:start position:0%
that our user was indeed created it's
that<01:02:16.000> we<01:02:16.160> just<01:02:16.279> didn't<01:02:16.520> do<01:02:16.760> anything<01:02:17.119> with<01:02:17.319> it
01:02:17.710 --> 01:02:17.720 align:start position:0%
that we just didn't do anything with it
01:02:17.720 --> 01:02:19.630 align:start position:0%
that we just didn't do anything with it
which<01:02:17.839> is<01:02:17.960> going<01:02:18.039> to<01:02:18.160> be<01:02:18.279> our<01:02:18.520> next<01:02:18.799> goal<01:02:19.400> so
01:02:19.630 --> 01:02:19.640 align:start position:0%
which is going to be our next goal so
01:02:19.640 --> 01:02:22.109 align:start position:0%
which is going to be our next goal so
now<01:02:19.960> if<01:02:20.079> we<01:02:20.240> go<01:02:20.440> back<01:02:20.599> to<01:02:20.760> our<01:02:20.920> ight<01:02:21.520> project
01:02:22.109 --> 01:02:22.119 align:start position:0%
now if we go back to our ight project
01:02:22.119 --> 01:02:24.190 align:start position:0%
now if we go back to our ight project
and<01:02:22.359> reload<01:02:22.760> the<01:02:22.960> page<01:02:23.559> you<01:02:23.720> should<01:02:23.920> be<01:02:24.039> able
01:02:24.190 --> 01:02:24.200 align:start position:0%
and reload the page you should be able
01:02:24.200 --> 01:02:27.549 align:start position:0%
and reload the page you should be able
to<01:02:24.559> see<01:02:24.960> that<01:02:25.200> a<01:02:25.359> new<01:02:25.599> user<01:02:26.119> has<01:02:26.279> been
01:02:27.549 --> 01:02:27.559 align:start position:0%
to see that a new user has been
01:02:27.559 --> 01:02:30.230 align:start position:0%
to see that a new user has been
created<01:02:28.559> and<01:02:28.760> you<01:02:28.839> can<01:02:29.039> even<01:02:29.319> dive<01:02:29.599> into<01:02:29.880> it
01:02:30.230 --> 01:02:30.240 align:start position:0%
created and you can even dive into it
01:02:30.240 --> 01:02:33.029 align:start position:0%
created and you can even dive into it
see<01:02:30.520> more<01:02:30.760> information<01:02:31.279> about<01:02:31.559> it<01:02:32.079> verify<01:02:32.720> it
01:02:33.029 --> 01:02:33.039 align:start position:0%
see more information about it verify it
01:02:33.039 --> 01:02:35.829 align:start position:0%
see more information about it verify it
check<01:02:33.279> the<01:02:33.400> membership<01:02:34.119> or<01:02:34.359> do<01:02:34.920> a<01:02:35.119> lot<01:02:35.480> more
01:02:35.829 --> 01:02:35.839 align:start position:0%
check the membership or do a lot more
01:02:35.839 --> 01:02:37.710 align:start position:0%
check the membership or do a lot more
stuff<01:02:36.200> which<01:02:36.319> is<01:02:36.480> pretty<01:02:36.760> amazing<01:02:37.359> that<01:02:37.520> we're
01:02:37.710 --> 01:02:37.720 align:start position:0%
stuff which is pretty amazing that we're
01:02:37.720 --> 01:02:40.150 align:start position:0%
stuff which is pretty amazing that we're
able<01:02:37.920> to<01:02:38.119> set<01:02:38.319> up<01:02:38.599> authentication<01:02:39.599> this<01:02:39.799> early
01:02:40.150 --> 01:02:40.160 align:start position:0%
able to set up authentication this early
01:02:40.160 --> 01:02:43.069 align:start position:0%
able to set up authentication this early
in<01:02:40.279> the<01:02:40.920> project<01:02:41.920> but<01:02:42.200> it's<01:02:42.359> not<01:02:42.559> going<01:02:42.760> to<01:02:42.880> be
01:02:43.069 --> 01:02:43.079 align:start position:0%
in the project but it's not going to be
01:02:43.079 --> 01:02:45.269 align:start position:0%
in the project but it's not going to be
enough<01:02:43.480> just<01:02:43.599> to<01:02:43.760> create<01:02:44.039> our<01:02:44.200> users<01:02:44.920> we'll
01:02:45.269 --> 01:02:45.279 align:start position:0%
enough just to create our users we'll
01:02:45.279 --> 01:02:47.950 align:start position:0%
enough just to create our users we'll
also<01:02:45.680> have<01:02:45.839> to<01:02:46.000> set<01:02:46.200> up<01:02:46.400> our<01:02:46.720> databases<01:02:47.720> and
01:02:47.950 --> 01:02:47.960 align:start position:0%
also have to set up our databases and
01:02:47.960 --> 01:02:50.190 align:start position:0%
also have to set up our databases and
our<01:02:48.200> storage<01:02:48.720> buckets<01:02:49.279> for<01:02:49.520> all<01:02:49.680> of<01:02:49.839> this<01:02:49.960> to
01:02:50.190 --> 01:02:50.200 align:start position:0%
our storage buckets for all of this to
01:02:50.200 --> 01:02:52.950 align:start position:0%
our storage buckets for all of this to
work<01:02:50.839> because<01:02:51.119> our<01:02:51.359> users<01:02:51.799> will<01:02:52.079> create<01:02:52.480> posts
01:02:52.950 --> 01:02:52.960 align:start position:0%
work because our users will create posts
01:02:52.960 --> 01:02:54.390 align:start position:0%
work because our users will create posts
and<01:02:53.119> we<01:02:53.240> need<01:02:53.359> to<01:02:53.480> be<01:02:53.599> able<01:02:53.799> to<01:02:53.960> create
01:02:54.390 --> 01:02:54.400 align:start position:0%
and we need to be able to create
01:02:54.400 --> 01:02:58.470 align:start position:0%
and we need to be able to create
relations<01:02:55.160> between<01:02:55.520> users<01:02:56.440> posts<01:02:57.119> and<01:02:57.480> more
01:02:58.470 --> 01:02:58.480 align:start position:0%
relations between users posts and more
01:02:58.480 --> 01:03:00.710 align:start position:0%
relations between users posts and more
first<01:02:58.880> we're<01:02:59.039> going<01:02:59.200> to<01:02:59.359> create<01:02:59.720> a<01:02:59.880> new<01:03:00.160> bucket
01:03:00.710 --> 01:03:00.720 align:start position:0%
first we're going to create a new bucket
01:03:00.720 --> 01:03:02.829 align:start position:0%
first we're going to create a new bucket
for<01:03:01.039> our<01:03:01.319> media<01:03:02.160> this<01:03:02.359> is<01:03:02.480> where<01:03:02.599> we're<01:03:02.760> going
01:03:02.829 --> 01:03:02.839 align:start position:0%
for our media this is where we're going
01:03:02.839 --> 01:03:05.069 align:start position:0%
for our media this is where we're going
to<01:03:03.000> upload<01:03:03.359> our<01:03:03.559> images<01:03:04.359> so<01:03:04.520> let's<01:03:04.720> create<01:03:04.960> a
01:03:05.069 --> 01:03:05.079 align:start position:0%
to upload our images so let's create a
01:03:05.079 --> 01:03:08.029 align:start position:0%
to upload our images so let's create a
new<01:03:05.279> bucket<01:03:05.960> and<01:03:06.200> call<01:03:06.480> it
01:03:08.029 --> 01:03:08.039 align:start position:0%
new bucket and call it
01:03:08.039 --> 01:03:11.309 align:start position:0%
new bucket and call it
media<01:03:09.039> there<01:03:09.160> we<01:03:09.359> go<01:03:09.839> as<01:03:10.000> simple<01:03:10.319> as<01:03:10.440> it<01:03:10.599> gets
01:03:11.309 --> 01:03:11.319 align:start position:0%
media there we go as simple as it gets
01:03:11.319 --> 01:03:13.589 align:start position:0%
media there we go as simple as it gets
immediately<01:03:11.960> we're<01:03:12.160> given<01:03:12.400> the<01:03:12.520> media<01:03:12.880> ID<01:03:13.440> so
01:03:13.589 --> 01:03:13.599 align:start position:0%
immediately we're given the media ID so
01:03:13.599 --> 01:03:15.829 align:start position:0%
immediately we're given the media ID so
let's<01:03:13.799> go<01:03:13.920> ahead<01:03:14.119> and<01:03:14.319> copy<01:03:14.599> it<01:03:15.279> and<01:03:15.640> back
01:03:15.829 --> 01:03:15.839 align:start position:0%
let's go ahead and copy it and back
01:03:15.839 --> 01:03:19.230 align:start position:0%
let's go ahead and copy it and back
within<01:03:16.079> our<01:03:16.359> app<01:03:16.720> we<01:03:16.839> can<01:03:17.000> go<01:03:17.160> to<01:03:17.319> our<01:03:17.799> EnV<01:03:18.319> file
01:03:19.230 --> 01:03:19.240 align:start position:0%
within our app we can go to our EnV file
01:03:19.240 --> 01:03:21.309 align:start position:0%
within our app we can go to our EnV file
and<01:03:19.400> then<01:03:19.559> we<01:03:19.640> can<01:03:19.880> paste<01:03:20.119> it<01:03:20.359> right<01:03:20.599> here<01:03:21.079> but
01:03:21.309 --> 01:03:21.319 align:start position:0%
and then we can paste it right here but
01:03:21.319 --> 01:03:24.950 align:start position:0%
and then we can paste it right here but
before<01:03:21.799> say<01:03:22.760> Vore<01:03:23.760> upright
01:03:24.950 --> 01:03:24.960 align:start position:0%
before say Vore upright
01:03:24.960 --> 01:03:28.309 align:start position:0%
before say Vore upright
underscore<01:03:25.839> storage<01:03:26.640> uncore<01:03:27.240> ID<01:03:28.039> and<01:03:28.160> then
01:03:28.309 --> 01:03:28.319 align:start position:0%
underscore storage uncore ID and then
01:03:28.319 --> 01:03:30.109 align:start position:0%
underscore storage uncore ID and then
set<01:03:28.599> this<01:03:28.760> equal<01:03:29.039> to<01:03:29.200> this<01:03:29.400> string<01:03:29.839> that<01:03:30.000> we
01:03:30.109 --> 01:03:30.119 align:start position:0%
set this equal to this string that we
01:03:30.119 --> 01:03:33.390 align:start position:0%
set this equal to this string that we
got<01:03:30.359> from<01:03:30.599> here<01:03:31.319> this<01:03:31.559> is<01:03:31.720> our<01:03:31.920> storage<01:03:32.400> bucket
01:03:33.390 --> 01:03:33.400 align:start position:0%
got from here this is our storage bucket
01:03:33.400 --> 01:03:35.150 align:start position:0%
got from here this is our storage bucket
now<01:03:33.640> while<01:03:33.799> we're<01:03:34.079> here<01:03:34.480> let's<01:03:34.680> go<01:03:34.799> ahead<01:03:35.000> and
01:03:35.150 --> 01:03:35.160 align:start position:0%
now while we're here let's go ahead and
01:03:35.160 --> 01:03:37.870 align:start position:0%
now while we're here let's go ahead and
set<01:03:35.319> up<01:03:35.440> our<01:03:35.640> databases<01:03:36.319> as<01:03:36.480> well<01:03:37.240> so<01:03:37.559> click
01:03:37.870 --> 01:03:37.880 align:start position:0%
set up our databases as well so click
01:03:37.880 --> 01:03:40.470 align:start position:0%
set up our databases as well so click
create<01:03:38.559> database<01:03:39.559> and<01:03:39.839> enter<01:03:40.119> the<01:03:40.240> new
01:03:40.470 --> 01:03:40.480 align:start position:0%
create database and enter the new
01:03:40.480 --> 01:03:43.630 align:start position:0%
create database and enter the new
database<01:03:40.960> name<01:03:41.440> called<01:03:42.279> snapcam<01:03:43.279> you<01:03:43.440> don't
01:03:43.630 --> 01:03:43.640 align:start position:0%
database name called snapcam you don't
01:03:43.640 --> 01:03:45.750 align:start position:0%
database name called snapcam you don't
have<01:03:43.760> to<01:03:43.920> enter<01:03:44.319> database<01:03:44.799> ID<01:03:45.359> because<01:03:45.640> it
01:03:45.750 --> 01:03:45.760 align:start position:0%
have to enter database ID because it
01:03:45.760 --> 01:03:47.910 align:start position:0%
have to enter database ID because it
will<01:03:45.920> be<01:03:46.079> generated<01:03:46.640> automatically<01:03:47.520> so<01:03:47.720> just
01:03:47.910 --> 01:03:47.920 align:start position:0%
will be generated automatically so just
01:03:47.920 --> 01:03:50.309 align:start position:0%
will be generated automatically so just
click<01:03:48.520> create<01:03:49.520> now<01:03:49.720> that<01:03:49.880> we<01:03:50.000> have<01:03:50.119> our
01:03:50.309 --> 01:03:50.319 align:start position:0%
click create now that we have our
01:03:50.319 --> 01:03:53.190 align:start position:0%
click create now that we have our
database<01:03:50.920> we<01:03:51.000> can<01:03:51.160> go<01:03:51.240> ahead<01:03:51.440> and<01:03:51.640> copy<01:03:51.920> its<01:03:52.200> ID
01:03:53.190 --> 01:03:53.200 align:start position:0%
database we can go ahead and copy its ID
01:03:53.200 --> 01:03:56.750 align:start position:0%
database we can go ahead and copy its ID
so<01:03:53.480> go<01:03:53.760> back<01:03:54.119> and<01:03:54.279> and<01:03:54.480> this<01:03:54.680> time<01:03:54.960> say<01:03:55.760> Vore
01:03:56.750 --> 01:03:56.760 align:start position:0%
so go back and and this time say Vore
01:03:56.760 --> 01:04:01.230 align:start position:0%
so go back and and this time say Vore
aite<01:03:57.559> _<01:03:58.119> database<01:03:58.960> _<01:03:59.480> ID<01:04:00.160> and<01:04:00.279> we<01:04:00.359> can<01:04:00.599> paste<01:04:00.880> it
01:04:01.230 --> 01:04:01.240 align:start position:0%
aite _ database _ ID and we can paste it
01:04:01.240 --> 01:04:04.109 align:start position:0%
aite _ database _ ID and we can paste it
right<01:04:01.480> here<01:04:02.039> so<01:04:02.319> now<01:04:02.480> we<01:04:02.640> have<01:04:02.799> the<01:04:02.920> aight<01:04:03.400> URL
01:04:04.109 --> 01:04:04.119 align:start position:0%
right here so now we have the aight URL
01:04:04.119 --> 01:04:06.349 align:start position:0%
right here so now we have the aight URL
and<01:04:04.279> then<01:04:04.480> three<01:04:04.760> different<01:04:05.119> IDs<01:04:05.880> from<01:04:06.119> three
01:04:06.349 --> 01:04:06.359 align:start position:0%
and then three different IDs from three
01:04:06.359 --> 01:04:08.549 align:start position:0%
and then three different IDs from three
different<01:04:06.680> services<01:04:07.440> that<01:04:07.640> aight<01:04:08.119> Cloud
01:04:08.549 --> 01:04:08.559 align:start position:0%
different services that aight Cloud
01:04:08.559 --> 01:04:11.150 align:start position:0%
different services that aight Cloud
offers<01:04:09.520> now<01:04:09.799> while<01:04:09.960> we're<01:04:10.160> here<01:04:10.599> we<01:04:10.760> also<01:04:11.000> need
01:04:11.150 --> 01:04:11.160 align:start position:0%
offers now while we're here we also need
01:04:11.160 --> 01:04:13.630 align:start position:0%
offers now while we're here we also need
to<01:04:11.440> Define<01:04:12.240> how<01:04:12.440> our<01:04:12.720> database<01:04:13.160> is<01:04:13.279> going<01:04:13.440> to
01:04:13.630 --> 01:04:13.640 align:start position:0%
to Define how our database is going to
01:04:13.640 --> 01:04:15.990 align:start position:0%
to Define how our database is going to
look<01:04:13.920> like<01:04:14.400> so<01:04:14.720> the<01:04:14.960> entire<01:04:15.480> database
01:04:15.990 --> 01:04:16.000 align:start position:0%
look like so the entire database
01:04:16.000 --> 01:04:19.430 align:start position:0%
look like so the entire database
structure<01:04:16.880> so<01:04:17.160> bear<01:04:17.480> with<01:04:17.680> me<01:04:18.359> let's<01:04:18.640> define
01:04:19.430 --> 01:04:19.440 align:start position:0%
structure so bear with me let's define
01:04:19.440 --> 01:04:21.789 align:start position:0%
structure so bear with me let's define
all<01:04:19.680> of<01:04:19.799> the<01:04:20.000> collections<01:04:20.880> and<01:04:21.240> relations
01:04:21.789 --> 01:04:21.799 align:start position:0%
all of the collections and relations
01:04:21.799 --> 01:04:23.309 align:start position:0%
all of the collections and relations
between<01:04:22.160> them<01:04:22.520> that<01:04:22.599> we're<01:04:22.760> going<01:04:22.839> to<01:04:23.039> have<01:04:23.200> in
01:04:23.309 --> 01:04:23.319 align:start position:0%
between them that we're going to have in
01:04:23.319 --> 01:04:25.430 align:start position:0%
between them that we're going to have in
our<01:04:23.599> app<01:04:24.279> it's<01:04:24.440> going<01:04:24.599> to<01:04:24.760> take<01:04:24.920> some<01:04:25.119> time<01:04:25.240> to
01:04:25.430 --> 01:04:25.440 align:start position:0%
our app it's going to take some time to
01:04:25.440 --> 01:04:27.990 align:start position:0%
our app it's going to take some time to
Define<01:04:25.920> them<01:04:26.359> but<01:04:26.640> after<01:04:27.039> that<01:04:27.359> we'll<01:04:27.599> be<01:04:27.839> good
01:04:27.990 --> 01:04:28.000 align:start position:0%
Define them but after that we'll be good
01:04:28.000 --> 01:04:30.349 align:start position:0%
Define them but after that we'll be good
to<01:04:28.200> go<01:04:28.720> for<01:04:29.000> the<01:04:29.240> entirety<01:04:29.960> of<01:04:30.119> this
01:04:30.349 --> 01:04:30.359 align:start position:0%
to go for the entirety of this
01:04:30.359 --> 01:04:32.789 align:start position:0%
to go for the entirety of this
phenomenal<01:04:30.920> build<01:04:31.720> so<01:04:32.000> let's<01:04:32.279> just<01:04:32.480> click
01:04:32.789 --> 01:04:32.799 align:start position:0%
phenomenal build so let's just click
01:04:32.799 --> 01:04:35.349 align:start position:0%
phenomenal build so let's just click
create<01:04:33.200> collection<01:04:34.039> let's<01:04:34.279> enter<01:04:34.599> our<01:04:34.880> first
01:04:35.349 --> 01:04:35.359 align:start position:0%
create collection let's enter our first
01:04:35.359 --> 01:04:38.349 align:start position:0%
create collection let's enter our first
collection<01:04:35.799> name<01:04:36.319> which<01:04:36.440> is<01:04:36.559> going<01:04:36.760> to<01:04:36.920> be
01:04:38.349 --> 01:04:38.359 align:start position:0%
collection name which is going to be
01:04:38.359 --> 01:04:41.910 align:start position:0%
collection name which is going to be
posts<01:04:39.359> and<01:04:39.680> click<01:04:40.240> create<01:04:41.240> then<01:04:41.480> you<01:04:41.599> need<01:04:41.760> to
01:04:41.910 --> 01:04:41.920 align:start position:0%
posts and click create then you need to
01:04:41.920 --> 01:04:45.349 align:start position:0%
posts and click create then you need to
go<01:04:42.079> to<01:04:42.359> settings<01:04:43.359> you<01:04:43.480> need<01:04:43.640> to<01:04:43.880> head<01:04:44.119> down<01:04:44.400> to
01:04:45.349 --> 01:04:45.359 align:start position:0%
go to settings you need to head down to
01:04:45.359 --> 01:04:47.789 align:start position:0%
go to settings you need to head down to
permissions<01:04:46.359> and<01:04:46.599> you<01:04:46.680> can<01:04:46.920> allow<01:04:47.400> access
01:04:47.789 --> 01:04:47.799 align:start position:0%
permissions and you can allow access
01:04:47.799 --> 01:04:51.230 align:start position:0%
permissions and you can allow access
from<01:04:48.200> anywhere<01:04:48.799> by<01:04:48.960> clicking<01:04:49.640> any<01:04:50.640> then<01:04:50.960> check
01:04:51.230 --> 01:04:51.240 align:start position:0%
from anywhere by clicking any then check
01:04:51.240 --> 01:04:55.309 align:start position:0%
from anywhere by clicking any then check
all<01:04:51.480> the<01:04:52.000> texts<01:04:53.000> and<01:04:53.319> click<01:04:53.680> update
01:04:55.309 --> 01:04:55.319 align:start position:0%
all the texts and click update
01:04:55.319 --> 01:04:58.029 align:start position:0%
all the texts and click update
so<01:04:55.680> it's<01:04:55.920> pretty<01:04:56.200> cool<01:04:56.559> how<01:04:56.720> we<01:04:56.880> have<01:04:57.079> a<01:04:57.319> robust
01:04:58.029 --> 01:04:58.039 align:start position:0%
so it's pretty cool how we have a robust
01:04:58.039 --> 01:05:01.190 align:start position:0%
so it's pretty cool how we have a robust
permissions<01:04:58.799> SL<01:04:59.359> roll<01:04:59.799> system<01:05:00.480> built<01:05:00.839> into
01:05:01.190 --> 01:05:01.200 align:start position:0%
permissions SL roll system built into
01:05:01.200 --> 01:05:04.109 align:start position:0%
permissions SL roll system built into
aight<01:05:01.720> Cloud<01:05:02.720> next<01:05:03.039> we<01:05:03.119> can<01:05:03.319> repeat<01:05:03.599> the<01:05:03.760> same
01:05:04.109 --> 01:05:04.119 align:start position:0%
aight Cloud next we can repeat the same
01:05:04.119 --> 01:05:06.549 align:start position:0%
aight Cloud next we can repeat the same
process<01:05:04.680> for<01:05:04.960> our<01:05:05.200> users<01:05:05.680> collection<01:05:06.359> so
01:05:06.549 --> 01:05:06.559 align:start position:0%
process for our users collection so
01:05:06.559 --> 01:05:09.269 align:start position:0%
process for our users collection so
let's<01:05:06.799> create<01:05:07.039> a<01:05:07.160> new<01:05:07.359> collection<01:05:08.079> called
01:05:09.269 --> 01:05:09.279 align:start position:0%
let's create a new collection called
01:05:09.279 --> 01:05:11.109 align:start position:0%
let's create a new collection called
users<01:05:10.279> click
01:05:11.109 --> 01:05:11.119 align:start position:0%
users click
01:05:11.119 --> 01:05:13.309 align:start position:0%
users click
create<01:05:12.119> go<01:05:12.279> to
01:05:13.309 --> 01:05:13.319 align:start position:0%
create go to
01:05:13.319 --> 01:05:16.390 align:start position:0%
create go to
settings<01:05:14.319> same<01:05:14.599> thing<01:05:14.880> here<01:05:15.160> we<01:05:15.279> need<01:05:15.440> to<01:05:15.599> add
01:05:16.390 --> 01:05:16.400 align:start position:0%
settings same thing here we need to add
01:05:16.400 --> 01:05:19.549 align:start position:0%
settings same thing here we need to add
permissions<01:05:17.400> click<01:05:17.720> any<01:05:18.640> and<01:05:18.799> then<01:05:18.960> take<01:05:19.279> all
01:05:19.549 --> 01:05:19.559 align:start position:0%
permissions click any and then take all
01:05:19.559 --> 01:05:23.109 align:start position:0%
permissions click any and then take all
the<01:05:19.920> boxes<01:05:20.920> and<01:05:21.119> click<01:05:21.640> update<01:05:22.640> and<01:05:22.880> now
01:05:23.109 --> 01:05:23.119 align:start position:0%
the boxes and click update and now
01:05:23.119 --> 01:05:24.910 align:start position:0%
the boxes and click update and now
there's<01:05:23.319> going<01:05:23.480> to<01:05:23.559> be<01:05:23.680> a<01:05:23.760> third<01:05:24.200> one<01:05:24.640> which<01:05:24.760> is
01:05:24.910 --> 01:05:24.920 align:start position:0%
there's going to be a third one which is
01:05:24.920 --> 01:05:27.589 align:start position:0%
there's going to be a third one which is
going<01:05:25.039> to<01:05:25.200> be<01:05:25.359> called<01:05:26.079> saves<01:05:27.079> and<01:05:27.319> this<01:05:27.440> is
01:05:27.589 --> 01:05:27.599 align:start position:0%
going to be called saves and this is
01:05:27.599 --> 01:05:30.269 align:start position:0%
going to be called saves and this is
going<01:05:27.760> to<01:05:27.880> be<01:05:28.039> for<01:05:28.359> all<01:05:28.640> the<01:05:28.880> saved
01:05:30.269 --> 01:05:30.279 align:start position:0%
going to be for all the saved
01:05:30.279 --> 01:05:33.470 align:start position:0%
going to be for all the saved
posts<01:05:31.279> within<01:05:31.720> here<01:05:32.119> we<01:05:32.240> can<01:05:32.400> also<01:05:32.640> go<01:05:32.799> to
01:05:33.470 --> 01:05:33.480 align:start position:0%
posts within here we can also go to
01:05:33.480 --> 01:05:35.510 align:start position:0%
posts within here we can also go to
settings<01:05:34.480> go<01:05:34.640> to
01:05:35.510 --> 01:05:35.520 align:start position:0%
settings go to
01:05:35.520 --> 01:05:38.710 align:start position:0%
settings go to
permissions<01:05:36.520> add<01:05:36.920> any<01:05:37.680> and<01:05:37.839> then<01:05:38.079> select<01:05:38.480> all
01:05:38.710 --> 01:05:38.720 align:start position:0%
permissions add any and then select all
01:05:38.720 --> 01:05:41.990 align:start position:0%
permissions add any and then select all
the<01:05:38.960> boxes<01:05:39.960> and<01:05:40.200> click<01:05:40.520> update<01:05:41.400> and<01:05:41.599> now<01:05:41.880> we
01:05:41.990 --> 01:05:42.000 align:start position:0%
the boxes and click update and now we
01:05:42.000 --> 01:05:44.390 align:start position:0%
the boxes and click update and now we
have<01:05:42.119> to<01:05:42.279> start<01:05:42.559> creating<01:05:43.119> relations<01:05:44.119> so
01:05:44.390 --> 01:05:44.400 align:start position:0%
have to start creating relations so
01:05:44.400 --> 01:05:47.029 align:start position:0%
have to start creating relations so
let's<01:05:44.640> go<01:05:44.799> to<01:05:44.960> the<01:05:45.200> posts<01:05:45.839> collection<01:05:46.799> and
01:05:47.029 --> 01:05:47.039 align:start position:0%
let's go to the posts collection and
01:05:47.039 --> 01:05:49.750 align:start position:0%
let's go to the posts collection and
again<01:05:47.400> make<01:05:47.599> sure<01:05:47.839> to<01:05:48.119> follow<01:05:48.839> exactly<01:05:49.480> what<01:05:49.599> I
01:05:49.750 --> 01:05:49.760 align:start position:0%
again make sure to follow exactly what I
01:05:49.760 --> 01:05:51.829 align:start position:0%
again make sure to follow exactly what I
do<01:05:50.039> here<01:05:50.440> because<01:05:50.640> our<01:05:50.920> app<01:05:51.160> is<01:05:51.279> not<01:05:51.480> going<01:05:51.640> to
01:05:51.829 --> 01:05:51.839 align:start position:0%
do here because our app is not going to
01:05:51.839 --> 01:05:53.510 align:start position:0%
do here because our app is not going to
work<01:05:52.200> if<01:05:52.319> we<01:05:52.440> don't<01:05:52.720> properly<01:05:53.079> set<01:05:53.240> up<01:05:53.359> our
01:05:53.510 --> 01:05:53.520 align:start position:0%
work if we don't properly set up our
01:05:53.520 --> 01:05:54.870 align:start position:0%
work if we don't properly set up our
relations
01:05:54.870 --> 01:05:54.880 align:start position:0%
relations
01:05:54.880 --> 01:05:56.630 align:start position:0%
relations
it's<01:05:55.119> important<01:05:55.520> that<01:05:55.680> we<01:05:55.799> create<01:05:56.079> relations
01:05:56.630 --> 01:05:56.640 align:start position:0%
it's important that we create relations
01:05:56.640 --> 01:05:59.910 align:start position:0%
it's important that we create relations
immediately<01:05:57.440> so<01:05:57.799> everything<01:05:58.200> works<01:05:58.599> later<01:05:58.920> on
01:05:59.910 --> 01:05:59.920 align:start position:0%
immediately so everything works later on
01:05:59.920 --> 01:06:01.510 align:start position:0%
immediately so everything works later on
so<01:06:00.319> go<01:06:00.520> to
01:06:01.510 --> 01:06:01.520 align:start position:0%
so go to
01:06:01.520 --> 01:06:04.390 align:start position:0%
so go to
attributes<01:06:02.520> and<01:06:02.640> then<01:06:02.880> click<01:06:03.240> create
01:06:04.390 --> 01:06:04.400 align:start position:0%
attributes and then click create
01:06:04.400 --> 01:06:06.750 align:start position:0%
attributes and then click create
attribute<01:06:05.400> in<01:06:05.599> this<01:06:05.839> case<01:06:06.039> we're<01:06:06.240> immediately
01:06:06.750 --> 01:06:06.760 align:start position:0%
attribute in this case we're immediately
01:06:06.760 --> 01:06:09.670 align:start position:0%
attribute in this case we're immediately
diving<01:06:07.119> to<01:06:07.359> a<01:06:07.559> complex<01:06:08.039> attribute<01:06:08.839> of<01:06:09.000> a<01:06:09.200> type
01:06:09.670 --> 01:06:09.680 align:start position:0%
diving to a complex attribute of a type
01:06:09.680 --> 01:06:11.789 align:start position:0%
diving to a complex attribute of a type
relationship<01:06:10.680> in<01:06:10.880> this<01:06:11.119> case<01:06:11.359> we<01:06:11.480> want<01:06:11.599> to
01:06:11.789 --> 01:06:11.799 align:start position:0%
relationship in this case we want to
01:06:11.799 --> 01:06:14.990 align:start position:0%
relationship in this case we want to
create<01:06:12.279> a<01:06:12.559> two-way<01:06:13.559> relationship<01:06:14.559> and<01:06:14.839> this
01:06:14.990 --> 01:06:15.000 align:start position:0%
create a two-way relationship and this
01:06:15.000 --> 01:06:17.029 align:start position:0%
create a two-way relationship and this
is<01:06:15.119> going<01:06:15.279> to<01:06:15.400> be<01:06:15.520> a<01:06:15.680> relationship<01:06:16.400> between<01:06:16.799> a
01:06:17.029 --> 01:06:17.039 align:start position:0%
is going to be a relationship between a
01:06:17.039 --> 01:06:20.750 align:start position:0%
is going to be a relationship between a
post<01:06:17.720> and<01:06:17.920> a<01:06:18.400> user<01:06:19.400> so<01:06:19.599> we<01:06:19.680> can<01:06:19.799> say<01:06:20.039> users
01:06:20.750 --> 01:06:20.760 align:start position:0%
post and a user so we can say users
01:06:20.760 --> 01:06:24.230 align:start position:0%
post and a user so we can say users
attribute<01:06:21.279> key<01:06:21.799> is<01:06:21.960> going<01:06:22.119> to<01:06:22.319> be<01:06:23.000> creator<01:06:24.079> and
01:06:24.230 --> 01:06:24.240 align:start position:0%
attribute key is going to be creator and
01:06:24.240 --> 01:06:26.150 align:start position:0%
attribute key is going to be creator and
then<01:06:24.359> the<01:06:24.559> attribute<01:06:25.039> key<01:06:25.279> in<01:06:25.400> the<01:06:25.599> related
01:06:26.150 --> 01:06:26.160 align:start position:0%
then the attribute key in the related
01:06:26.160 --> 01:06:28.109 align:start position:0%
then the attribute key in the related
collection<01:06:26.680> is<01:06:26.799> going<01:06:27.000> to<01:06:27.119> be
01:06:28.109 --> 01:06:28.119 align:start position:0%
collection is going to be
01:06:28.119 --> 01:06:31.430 align:start position:0%
collection is going to be
posts<01:06:29.119> and<01:06:29.319> a<01:06:29.559> relation<01:06:30.079> is<01:06:30.240> going<01:06:30.400> to<01:06:30.559> be<01:06:31.000> many
01:06:31.430 --> 01:06:31.440 align:start position:0%
posts and a relation is going to be many
01:06:31.440 --> 01:06:32.309 align:start position:0%
posts and a relation is going to be many
to
01:06:32.309 --> 01:06:32.319 align:start position:0%
to
01:06:32.319 --> 01:06:35.430 align:start position:0%
to
one<01:06:33.319> so<01:06:33.599> this<01:06:33.720> is<01:06:33.880> how<01:06:34.039> it's<01:06:34.160> going<01:06:34.319> to<01:06:34.520> look
01:06:35.430 --> 01:06:35.440 align:start position:0%
one so this is how it's going to look
01:06:35.440 --> 01:06:39.309 align:start position:0%
one so this is how it's going to look
like<01:06:36.440> one<01:06:36.760> Creator<01:06:37.480> can<01:06:37.680> have<01:06:37.920> multiple<01:06:38.440> posts
01:06:39.309 --> 01:06:39.319 align:start position:0%
like one Creator can have multiple posts
01:06:39.319 --> 01:06:41.269 align:start position:0%
like one Creator can have multiple posts
and<01:06:39.559> while<01:06:39.720> we're<01:06:40.039> here<01:06:40.480> it<01:06:40.640> wouldn't<01:06:40.920> be<01:06:41.119> such
01:06:41.269 --> 01:06:41.279 align:start position:0%
and while we're here it wouldn't be such
01:06:41.279 --> 01:06:44.190 align:start position:0%
and while we're here it wouldn't be such
a<01:06:41.520> bad<01:06:41.760> idea<01:06:42.279> to<01:06:42.520> start<01:06:42.839> sketching<01:06:43.319> things<01:06:43.559> out
01:06:44.190 --> 01:06:44.200 align:start position:0%
a bad idea to start sketching things out
01:06:44.200 --> 01:06:47.470 align:start position:0%
a bad idea to start sketching things out
right<01:06:44.839> in<01:06:45.000> our<01:06:45.240> ultimate<01:06:45.680> nextjs<01:06:46.319> 13<01:06:46.839> course
01:06:47.470 --> 01:06:47.480 align:start position:0%
right in our ultimate nextjs 13 course
01:06:47.480 --> 01:06:49.670 align:start position:0%
right in our ultimate nextjs 13 course
we<01:06:47.599> were<01:06:47.760> doing<01:06:48.200> a<01:06:48.400> lot<01:06:48.599> of<01:06:48.799> sketching<01:06:49.480> because
01:06:49.670 --> 01:06:49.680 align:start position:0%
we were doing a lot of sketching because
01:06:49.680 --> 01:06:51.589 align:start position:0%
we were doing a lot of sketching because
we<01:06:49.839> covered<01:06:50.160> a<01:06:50.400> tough<01:06:50.760> project<01:06:51.200> where<01:06:51.319> we<01:06:51.480> have
01:06:51.589 --> 01:06:51.599 align:start position:0%
we covered a tough project where we have
01:06:51.599 --> 01:06:54.190 align:start position:0%
we covered a tough project where we have
to<01:06:51.839> deeply<01:06:52.359> explain<01:06:53.119> all<01:06:53.319> of<01:06:53.440> the<01:06:53.599> concept
01:06:54.190 --> 01:06:54.200 align:start position:0%
to deeply explain all of the concept
01:06:54.200 --> 01:06:57.069 align:start position:0%
to deeply explain all of the concept
covered<01:06:55.079> and<01:06:55.440> this<01:06:55.720> often<01:06:56.039> includes<01:06:56.640> a<01:06:56.760> lot<01:06:56.920> of
01:06:57.069 --> 01:06:57.079 align:start position:0%
covered and this often includes a lot of
01:06:57.079 --> 01:07:00.029 align:start position:0%
covered and this often includes a lot of
sketching<01:06:58.000> so<01:06:58.440> in<01:06:58.680> this<01:06:58.920> video<01:06:59.559> I<01:06:59.640> want<01:06:59.760> to
01:07:00.029 --> 01:07:00.039 align:start position:0%
sketching so in this video I want to
01:07:00.039 --> 01:07:02.309 align:start position:0%
sketching so in this video I want to
also<01:07:00.359> do<01:07:00.640> the<01:07:00.839> same<01:07:01.480> I<01:07:01.559> want<01:07:01.680> to<01:07:01.839> give<01:07:02.039> you<01:07:02.200> a
01:07:02.309 --> 01:07:02.319 align:start position:0%
also do the same I want to give you a
01:07:02.319 --> 01:07:04.710 align:start position:0%
also do the same I want to give you a
bit<01:07:02.480> of<01:07:02.680> behind<01:07:03.039> the<01:07:03.200> scenes<01:07:03.880> of<01:07:04.039> the<01:07:04.240> level<01:07:04.520> of
01:07:04.710 --> 01:07:04.720 align:start position:0%
bit of behind the scenes of the level of
01:07:04.720 --> 01:07:08.230 align:start position:0%
bit of behind the scenes of the level of
complexity<01:07:05.480> we<01:07:05.680> go<01:07:06.160> in<01:07:06.359> our<01:07:06.640> Pro<01:07:07.000> courses<01:07:07.920> so
01:07:08.230 --> 01:07:08.240 align:start position:0%
complexity we go in our Pro courses so
01:07:08.240 --> 01:07:09.710 align:start position:0%
complexity we go in our Pro courses so
if<01:07:08.359> you<01:07:08.480> haven't<01:07:08.720> checked<01:07:09.000> them<01:07:09.119> out<01:07:09.359> yet
01:07:09.710 --> 01:07:09.720 align:start position:0%
if you haven't checked them out yet
01:07:09.720 --> 01:07:12.750 align:start position:0%
if you haven't checked them out yet
that's<01:07:10.039> great<01:07:10.680> this<01:07:10.880> video<01:07:11.160> is<01:07:11.359> about<01:07:11.760> react
01:07:12.750 --> 01:07:12.760 align:start position:0%
that's great this video is about react
01:07:12.760 --> 01:07:14.789 align:start position:0%
that's great this video is about react
but<01:07:13.240> after<01:07:13.520> you<01:07:13.720> watch<01:07:13.960> this<01:07:14.079> free<01:07:14.359> video<01:07:14.599> on
01:07:14.789 --> 01:07:14.799 align:start position:0%
but after you watch this free video on
01:07:14.799 --> 01:07:17.510 align:start position:0%
but after you watch this free video on
YouTube<01:07:15.480> you<01:07:15.760> might<01:07:16.000> want<01:07:16.119> to<01:07:16.279> learn<01:07:16.559> nextjs
01:07:17.510 --> 01:07:17.520 align:start position:0%
YouTube you might want to learn nextjs
01:07:17.520 --> 01:07:19.750 align:start position:0%
YouTube you might want to learn nextjs
server<01:07:18.079> actions<01:07:18.720> and<01:07:18.960> all<01:07:19.160> of<01:07:19.319> the<01:07:19.480> great
01:07:19.750 --> 01:07:19.760 align:start position:0%
server actions and all of the great
01:07:19.760 --> 01:07:23.150 align:start position:0%
server actions and all of the great
stuff<01:07:20.200> that<01:07:20.319> it<01:07:20.680> offers<01:07:21.680> so<01:07:22.440> add<01:07:22.680> yourself<01:07:23.000> a
01:07:23.150 --> 01:07:23.160 align:start position:0%
stuff that it offers so add yourself a
01:07:23.160 --> 01:07:25.589 align:start position:0%
stuff that it offers so add yourself a
to-do<01:07:24.000> after<01:07:24.200> you're<01:07:24.359> done<01:07:24.559> with<01:07:24.720> this<01:07:24.920> video
01:07:25.589 --> 01:07:25.599 align:start position:0%
to-do after you're done with this video
01:07:25.599 --> 01:07:28.789 align:start position:0%
to-do after you're done with this video
check<01:07:25.839> out<01:07:26.079> JS<01:07:26.440> Mastery<01:07:27.000> Pro<01:07:28.000> but<01:07:28.400> with<01:07:28.559> that
01:07:28.789 --> 01:07:28.799 align:start position:0%
check out JS Mastery Pro but with that
01:07:28.799 --> 01:07:31.230 align:start position:0%
check out JS Mastery Pro but with that
said<01:07:29.400> let's<01:07:29.599> start<01:07:29.839> sketching<01:07:30.520> the<01:07:30.760> complex
01:07:31.230 --> 01:07:31.240 align:start position:0%
said let's start sketching the complex
01:07:31.240 --> 01:07:34.150 align:start position:0%
said let's start sketching the complex
architecture<01:07:32.079> of<01:07:32.240> our<01:07:32.440> snapgram<01:07:33.160> application
01:07:34.150 --> 01:07:34.160 align:start position:0%
architecture of our snapgram application
01:07:34.160 --> 01:07:38.029 align:start position:0%
architecture of our snapgram application
we<01:07:34.440> obviously<01:07:35.000> have<01:07:35.359> posts<01:07:36.119> saves<01:07:36.799> and<01:07:37.039> users
01:07:38.029 --> 01:07:38.039 align:start position:0%
we obviously have posts saves and users
01:07:38.039 --> 01:07:40.549 align:start position:0%
we obviously have posts saves and users
so<01:07:38.440> let's<01:07:38.640> go<01:07:38.760> ahead<01:07:39.039> and<01:07:39.319> create<01:07:39.640> all<01:07:39.880> of<01:07:40.119> that
01:07:40.549 --> 01:07:40.559 align:start position:0%
so let's go ahead and create all of that
01:07:40.559 --> 01:07:43.150 align:start position:0%
so let's go ahead and create all of that
as<01:07:40.799> simple<01:07:41.520> rectangles<01:07:42.520> here<01:07:42.760> we're<01:07:42.920> going<01:07:43.039> to
01:07:43.150 --> 01:07:43.160 align:start position:0%
as simple rectangles here we're going to
01:07:43.160 --> 01:07:46.150 align:start position:0%
as simple rectangles here we're going to
have<01:07:43.319> our<01:07:43.960> users<01:07:44.960> we're<01:07:45.240> also<01:07:45.520> going<01:07:45.640> to<01:07:45.880> have
01:07:46.150 --> 01:07:46.160 align:start position:0%
have our users we're also going to have
01:07:46.160 --> 01:07:48.910 align:start position:0%
have our users we're also going to have
our<01:07:46.799> posts<01:07:47.799> and<01:07:48.119> finally<01:07:48.480> we're<01:07:48.640> going<01:07:48.720> to
01:07:48.910 --> 01:07:48.920 align:start position:0%
our posts and finally we're going to
01:07:48.920 --> 01:07:51.470 align:start position:0%
our posts and finally we're going to
have<01:07:49.160> our<01:07:49.440> saves<01:07:50.200> which<01:07:50.319> are<01:07:50.559> three<01:07:50.799> different
01:07:51.470 --> 01:07:51.480 align:start position:0%
have our saves which are three different
01:07:51.480 --> 01:07:53.549 align:start position:0%
have our saves which are three different
collections<01:07:52.480> now<01:07:52.720> it's<01:07:52.960> obvious<01:07:53.279> that<01:07:53.400> we're
01:07:53.549 --> 01:07:53.559 align:start position:0%
collections now it's obvious that we're
01:07:53.559 --> 01:07:55.910 align:start position:0%
collections now it's obvious that we're
creating<01:07:54.079> a<01:07:54.240> many<01:07:54.559> toone<01:07:55.039> relationship
01:07:55.910 --> 01:07:55.920 align:start position:0%
creating a many toone relationship
01:07:55.920 --> 01:07:59.190 align:start position:0%
creating a many toone relationship
between<01:07:56.279> our<01:07:56.559> user<01:07:57.520> called<01:07:57.880> a<01:07:58.119> Creator<01:07:59.000> and
01:07:59.190 --> 01:07:59.200 align:start position:0%
between our user called a Creator and
01:07:59.200 --> 01:08:02.190 align:start position:0%
between our user called a Creator and
our<01:07:59.480> posts<01:08:00.359> so<01:08:00.680> this<01:08:00.839> means<01:08:01.200> that<01:08:01.400> one<01:08:01.599> user
01:08:02.190 --> 01:08:02.200 align:start position:0%
our posts so this means that one user
01:08:02.200 --> 01:08:04.390 align:start position:0%
our posts so this means that one user
can<01:08:02.440> have<01:08:02.640> multiple<01:08:03.160> posts<01:08:03.799> so<01:08:04.000> let's<01:08:04.240> just
01:08:04.390 --> 01:08:04.400 align:start position:0%
can have multiple posts so let's just
01:08:04.400 --> 01:08:06.750 align:start position:0%
can have multiple posts so let's just
create<01:08:04.799> this<01:08:05.240> relationship<01:08:06.240> that's<01:08:06.480> from
01:08:06.750 --> 01:08:06.760 align:start position:0%
create this relationship that's from
01:08:06.760 --> 01:08:08.109 align:start position:0%
create this relationship that's from
both
01:08:08.109 --> 01:08:08.119 align:start position:0%
both
01:08:08.119 --> 01:08:11.029 align:start position:0%
both
sides<01:08:09.119> and<01:08:09.400> we<01:08:09.520> can<01:08:09.680> do<01:08:10.160> something<01:08:10.520> like<01:08:10.760> this
01:08:11.029 --> 01:08:11.039 align:start position:0%
sides and we can do something like this
01:08:11.039 --> 01:08:12.510 align:start position:0%
sides and we can do something like this
where<01:08:11.160> we're<01:08:11.279> going<01:08:11.400> to<01:08:11.559> Simply<01:08:11.960> duplicate
01:08:12.510 --> 01:08:12.520 align:start position:0%
where we're going to Simply duplicate
01:08:12.520 --> 01:08:15.789 align:start position:0%
where we're going to Simply duplicate
this<01:08:12.799> right<01:08:13.000> here<01:08:13.640> indicating<01:08:14.400> that<01:08:14.599> one<01:08:14.839> user
01:08:15.789 --> 01:08:15.799 align:start position:0%
this right here indicating that one user
01:08:15.799 --> 01:08:19.149 align:start position:0%
this right here indicating that one user
can<01:08:16.120> have<01:08:16.560> or<01:08:16.799> can<01:08:17.040> create<01:08:17.920> two<01:08:18.520> different
01:08:19.149 --> 01:08:19.159 align:start position:0%
can have or can create two different
01:08:19.159 --> 01:08:22.149 align:start position:0%
can have or can create two different
posts<01:08:19.880> so<01:08:20.120> that's<01:08:20.319> going<01:08:20.480> to<01:08:20.679> work<01:08:21.239> like<01:08:21.480> this
01:08:22.149 --> 01:08:22.159 align:start position:0%
posts so that's going to work like this
01:08:22.159 --> 01:08:24.030 align:start position:0%
posts so that's going to work like this
and<01:08:22.279> then<01:08:22.400> an<01:08:22.600> important<01:08:23.040> thing<01:08:23.319> here<01:08:23.640> is<01:08:23.880> is
01:08:24.030 --> 01:08:24.040 align:start position:0%
and then an important thing here is is
01:08:24.040 --> 01:08:27.789 align:start position:0%
and then an important thing here is is
on<01:08:24.239> deleting<01:08:24.719> a<01:08:24.960> document<01:08:25.920> we<01:08:26.199> must<01:08:26.799> set<01:08:27.120> null
01:08:27.789 --> 01:08:27.799 align:start position:0%
on deleting a document we must set null
01:08:27.799 --> 01:08:30.229 align:start position:0%
on deleting a document we must set null
as<01:08:28.000> this<01:08:28.120> is<01:08:28.279> going<01:08:28.520> to<01:08:28.880> set<01:08:29.120> the<01:08:29.359> document<01:08:29.759> ID
01:08:30.229 --> 01:08:30.239 align:start position:0%
as this is going to set the document ID
01:08:30.239 --> 01:08:33.030 align:start position:0%
as this is going to set the document ID
as<01:08:30.480> null<01:08:30.880> in<01:08:31.040> all<01:08:31.359> related<01:08:31.839> documents<01:08:32.520> meaning
01:08:33.030 --> 01:08:33.040 align:start position:0%
as null in all related documents meaning
01:08:33.040 --> 01:08:35.749 align:start position:0%
as null in all related documents meaning
it<01:08:33.159> doesn't<01:08:33.600> exist<01:08:34.279> so<01:08:34.520> let's<01:08:34.719> click
01:08:35.749 --> 01:08:35.759 align:start position:0%
it doesn't exist so let's click
01:08:35.759 --> 01:08:38.189 align:start position:0%
it doesn't exist so let's click
create<01:08:36.759> and<01:08:37.040> it's<01:08:37.359> possible<01:08:37.759> that<01:08:37.920> something
01:08:38.189 --> 01:08:38.199 align:start position:0%
create and it's possible that something
01:08:38.199 --> 01:08:40.229 align:start position:0%
create and it's possible that something
like<01:08:38.400> this<01:08:38.600> happens<01:08:39.279> but<01:08:39.400> don't<01:08:39.600> worry<01:08:40.080> just
01:08:40.229 --> 01:08:40.239 align:start position:0%
like this happens but don't worry just
01:08:40.239 --> 01:08:41.110 align:start position:0%
like this happens but don't worry just
go<01:08:40.400> to
01:08:41.110 --> 01:08:41.120 align:start position:0%
go to
01:08:41.120 --> 01:08:44.470 align:start position:0%
go to
databases<01:08:42.120> select<01:08:42.600> your<01:08:43.239> database<01:08:44.239> and<01:08:44.359> then
01:08:44.470 --> 01:08:44.480 align:start position:0%
databases select your database and then
01:08:44.480 --> 01:08:46.189 align:start position:0%
databases select your database and then
you<01:08:44.560> can<01:08:44.679> see<01:08:44.920> your<01:08:45.159> collections<01:08:45.759> here
01:08:46.189 --> 01:08:46.199 align:start position:0%
you can see your collections here
01:08:46.199 --> 01:08:49.269 align:start position:0%
you can see your collections here
specifically<01:08:47.000> we're<01:08:47.239> working<01:08:47.640> with<01:08:48.279> users
01:08:49.269 --> 01:08:49.279 align:start position:0%
specifically we're working with users
01:08:49.279 --> 01:08:51.390 align:start position:0%
specifically we're working with users
and<01:08:49.440> then<01:08:49.719> attributes<01:08:50.480> and<01:08:50.600> you<01:08:50.679> can<01:08:50.839> see<01:08:51.080> here
01:08:51.390 --> 01:08:51.400 align:start position:0%
and then attributes and you can see here
01:08:51.400 --> 01:08:53.149 align:start position:0%
and then attributes and you can see here
that<01:08:51.600> now<01:08:51.759> we<01:08:51.880> have<01:08:52.000> a<01:08:52.159> relationship<01:08:52.920> with
01:08:53.149 --> 01:08:53.159 align:start position:0%
that now we have a relationship with
01:08:53.159 --> 01:08:55.149 align:start position:0%
that now we have a relationship with
posts
01:08:55.149 --> 01:08:55.159 align:start position:0%
posts
01:08:55.159 --> 01:08:58.390 align:start position:0%
posts
and<01:08:55.400> also<01:08:56.040> that<01:08:56.279> same<01:08:57.040> attribute<01:08:57.679> should<01:08:57.960> be
01:08:58.390 --> 01:08:58.400 align:start position:0%
and also that same attribute should be
01:08:58.400 --> 01:09:00.789 align:start position:0%
and also that same attribute should be
within<01:08:58.799> post<01:08:59.279> as<01:08:59.440> well<01:08:59.880> because<01:09:00.159> that's<01:09:00.400> the
01:09:00.789 --> 01:09:00.799 align:start position:0%
within post as well because that's the
01:09:00.799 --> 01:09:02.829 align:start position:0%
within post as well because that's the
relationship<01:09:01.799> so<01:09:02.000> now<01:09:02.199> let's<01:09:02.400> create<01:09:02.640> a
01:09:02.829 --> 01:09:02.839 align:start position:0%
relationship so now let's create a
01:09:02.839 --> 01:09:05.229 align:start position:0%
relationship so now let's create a
second<01:09:03.199> attribute<01:09:03.799> under<01:09:04.239> posts<01:09:04.920> which<01:09:05.080> is
01:09:05.229 --> 01:09:05.239 align:start position:0%
second attribute under posts which is
01:09:05.239 --> 01:09:07.630 align:start position:0%
second attribute under posts which is
also<01:09:05.520> going<01:09:05.679> to<01:09:05.839> be<01:09:06.040> a<01:09:06.199> relationship
01:09:07.630 --> 01:09:07.640 align:start position:0%
also going to be a relationship
01:09:07.640 --> 01:09:09.789 align:start position:0%
also going to be a relationship
attribute<01:09:08.640> it's<01:09:08.799> going<01:09:08.920> to<01:09:09.040> be<01:09:09.159> a<01:09:09.319> two-way
01:09:09.789 --> 01:09:09.799 align:start position:0%
attribute it's going to be a two-way
01:09:09.799 --> 01:09:12.749 align:start position:0%
attribute it's going to be a two-way
relationship<01:09:10.719> related<01:09:11.319> to<01:09:11.600> users<01:09:12.279> one<01:09:12.440> more
01:09:12.749 --> 01:09:12.759 align:start position:0%
relationship related to users one more
01:09:12.759 --> 01:09:15.630 align:start position:0%
relationship related to users one more
time<01:09:13.400> but<01:09:13.640> this<01:09:13.839> time<01:09:14.159> not<01:09:14.400> who<01:09:14.640> created<01:09:15.040> it
01:09:15.630 --> 01:09:15.640 align:start position:0%
time but this time not who created it
01:09:15.640 --> 01:09:17.430 align:start position:0%
time but this time not who created it
rather<01:09:16.000> who<01:09:16.239> liked<01:09:16.560> it<01:09:16.960> so<01:09:17.080> we're<01:09:17.199> going<01:09:17.279> to
01:09:17.430 --> 01:09:17.440 align:start position:0%
rather who liked it so we're going to
01:09:17.440 --> 01:09:20.510 align:start position:0%
rather who liked it so we're going to
say<01:09:17.759> likes<01:09:18.560> so<01:09:18.719> it's<01:09:18.839> going<01:09:19.000> to<01:09:19.120> be<01:09:19.359> likes<01:09:20.319> here
01:09:20.510 --> 01:09:20.520 align:start position:0%
say likes so it's going to be likes here
01:09:20.520 --> 01:09:23.229 align:start position:0%
say likes so it's going to be likes here
we're<01:09:20.679> going<01:09:20.759> to<01:09:20.920> say<01:09:21.199> liked<01:09:21.799> so<01:09:22.000> who<01:09:22.199> liked<01:09:22.520> it
01:09:23.229 --> 01:09:23.239 align:start position:0%
we're going to say liked so who liked it
01:09:23.239 --> 01:09:25.390 align:start position:0%
we're going to say liked so who liked it
and<01:09:23.359> then<01:09:23.839> relation<01:09:24.319> is<01:09:24.440> going<01:09:24.600> to<01:09:24.719> be<01:09:24.920> many<01:09:25.159> to
01:09:25.390 --> 01:09:25.400 align:start position:0%
and then relation is going to be many to
01:09:25.400 --> 01:09:27.990 align:start position:0%
and then relation is going to be many to
many<01:09:25.920> because<01:09:26.239> many<01:09:26.480> users<01:09:27.120> can<01:09:27.319> like<01:09:27.719> many
01:09:27.990 --> 01:09:28.000 align:start position:0%
many because many users can like many
01:09:28.000 --> 01:09:30.749 align:start position:0%
many because many users can like many
different<01:09:28.319> posts<01:09:29.239> and<01:09:29.400> then<01:09:29.560> on<01:09:29.799> deletion<01:09:30.560> we
01:09:30.749 --> 01:09:30.759 align:start position:0%
different posts and then on deletion we
01:09:30.759 --> 01:09:33.269 align:start position:0%
different posts and then on deletion we
also<01:09:31.000> want<01:09:31.120> to<01:09:31.279> set<01:09:31.480> the<01:09:31.600> same<01:09:32.159> set<01:09:32.480> n<01:09:33.080> and
01:09:33.269 --> 01:09:33.279 align:start position:0%
also want to set the same set n and
01:09:33.279 --> 01:09:37.189 align:start position:0%
also want to set the same set n and
click<01:09:34.120> create<01:09:35.120> there<01:09:35.279> we<01:09:35.520> go<01:09:36.520> and<01:09:36.719> now<01:09:36.960> we<01:09:37.040> can
01:09:37.189 --> 01:09:37.199 align:start position:0%
click create there we go and now we can
01:09:37.199 --> 01:09:38.990 align:start position:0%
click create there we go and now we can
slowly<01:09:37.560> start<01:09:37.920> thinking<01:09:38.400> about<01:09:38.719> which
01:09:38.990 --> 01:09:39.000 align:start position:0%
slowly start thinking about which
01:09:39.000 --> 01:09:41.309 align:start position:0%
slowly start thinking about which
attributes<01:09:39.560> are<01:09:39.839> posts<01:09:40.120> are<01:09:40.279> going<01:09:40.480> to<01:09:40.719> have
01:09:41.309 --> 01:09:41.319 align:start position:0%
attributes are posts are going to have
01:09:41.319 --> 01:09:43.189 align:start position:0%
attributes are posts are going to have
so<01:09:41.600> right<01:09:41.839> here<01:09:42.159> we<01:09:42.239> can<01:09:42.440> make<01:09:42.600> this<01:09:42.759> a<01:09:42.880> bit
01:09:43.189 --> 01:09:43.199 align:start position:0%
so right here we can make this a bit
01:09:43.199 --> 01:09:45.470 align:start position:0%
so right here we can make this a bit
smaller<01:09:44.199> and<01:09:44.440> make<01:09:44.600> it<01:09:44.719> a<01:09:44.839> bit<01:09:44.960> simpler<01:09:45.319> to
01:09:45.470 --> 01:09:45.480 align:start position:0%
smaller and make it a bit simpler to
01:09:45.480 --> 01:09:48.229 align:start position:0%
smaller and make it a bit simpler to
read<01:09:46.239> let's<01:09:46.480> do<01:09:46.880> something<01:09:47.440> like<01:09:47.759> an
01:09:48.229 --> 01:09:48.239 align:start position:0%
read let's do something like an
01:09:48.239 --> 01:09:51.229 align:start position:0%
read let's do something like an
attribute<01:09:49.239> which<01:09:49.400> is<01:09:49.520> going<01:09:49.679> to<01:09:49.839> be<01:09:50.239> Creator
01:09:51.229 --> 01:09:51.239 align:start position:0%
attribute which is going to be Creator
01:09:51.239 --> 01:09:54.070 align:start position:0%
attribute which is going to be Creator
we<01:09:51.400> know<01:09:51.759> that<01:09:52.359> each<01:09:52.759> Post<01:09:53.159> in<01:09:53.319> this<01:09:53.520> case<01:09:53.960> has
01:09:54.070 --> 01:09:54.080 align:start position:0%
we know that each Post in this case has
01:09:54.080 --> 01:09:56.470 align:start position:0%
we know that each Post in this case has
to<01:09:54.239> have<01:09:54.360> a<01:09:54.520> Creator<01:09:55.480> and<01:09:55.679> we<01:09:55.840> know<01:09:56.199> that<01:09:56.320> a
01:09:56.470 --> 01:09:56.480 align:start position:0%
to have a Creator and we know that a
01:09:56.480 --> 01:10:00.189 align:start position:0%
to have a Creator and we know that a
user<01:09:56.960> is<01:09:57.120> going<01:09:57.280> to<01:09:57.560> have<01:09:57.840> a<01:09:58.280> post<01:09:59.280> attribute
01:10:00.189 --> 01:10:00.199 align:start position:0%
user is going to have a post attribute
01:10:00.199 --> 01:10:02.910 align:start position:0%
user is going to have a post attribute
so<01:10:00.400> let's<01:10:00.600> do<01:10:00.840> something<01:10:01.159> like<01:10:01.400> this
01:10:02.910 --> 01:10:02.920 align:start position:0%
so let's do something like this
01:10:02.920 --> 01:10:04.990 align:start position:0%
so let's do something like this
attributes<01:10:03.920> this<01:10:04.040> is<01:10:04.199> going<01:10:04.320> to<01:10:04.480> help<01:10:04.679> us<01:10:04.800> when
01:10:04.990 --> 01:10:05.000 align:start position:0%
attributes this is going to help us when
01:10:05.000 --> 01:10:07.229 align:start position:0%
attributes this is going to help us when
creating<01:10:05.280> a<01:10:05.480> database<01:10:06.040> or<01:10:06.280> rather<01:10:06.640> not
01:10:07.229 --> 01:10:07.239 align:start position:0%
creating a database or rather not
01:10:07.239 --> 01:10:09.350 align:start position:0%
creating a database or rather not
because<01:10:07.920> this<01:10:08.040> is<01:10:08.199> going<01:10:08.320> to<01:10:08.520> help<01:10:08.719> us
01:10:09.350 --> 01:10:09.360 align:start position:0%
because this is going to help us
01:10:09.360 --> 01:10:10.950 align:start position:0%
because this is going to help us
understand<01:10:09.719> our<01:10:09.960> database
01:10:10.950 --> 01:10:10.960 align:start position:0%
understand our database
01:10:10.960 --> 01:10:13.030 align:start position:0%
understand our database
structure<01:10:11.960> usually<01:10:12.440> you<01:10:12.560> would<01:10:12.760> have<01:10:12.880> to
01:10:13.030 --> 01:10:13.040 align:start position:0%
structure usually you would have to
01:10:13.040 --> 01:10:14.350 align:start position:0%
structure usually you would have to
create<01:10:13.400> all<01:10:13.600> of<01:10:13.760> this<01:10:13.960> within<01:10:14.159> your
01:10:14.350 --> 01:10:14.360 align:start position:0%
create all of this within your
01:10:14.360 --> 01:10:16.910 align:start position:0%
create all of this within your
application<01:10:15.199> but<01:10:15.400> now<01:10:15.719> aight<01:10:16.600> actually
01:10:16.910 --> 01:10:16.920 align:start position:0%
application but now aight actually
01:10:16.920 --> 01:10:19.070 align:start position:0%
application but now aight actually
creates<01:10:17.239> the<01:10:17.360> relationships<01:10:18.239> for<01:10:18.520> us<01:10:18.920> which
01:10:19.070 --> 01:10:19.080 align:start position:0%
creates the relationships for us which
01:10:19.080 --> 01:10:21.430 align:start position:0%
creates the relationships for us which
is<01:10:19.239> super<01:10:19.600> handy<01:10:20.360> and<01:10:20.520> the<01:10:20.719> second<01:10:21.000> attribute
01:10:21.430 --> 01:10:21.440 align:start position:0%
is super handy and the second attribute
01:10:21.440 --> 01:10:24.189 align:start position:0%
is super handy and the second attribute
we<01:10:21.560> have<01:10:21.719> added<01:10:22.440> is<01:10:22.600> going<01:10:22.760> to<01:10:22.920> be<01:10:23.199> likes<01:10:24.000> so
01:10:24.189 --> 01:10:24.199 align:start position:0%
we have added is going to be likes so
01:10:24.199 --> 01:10:26.910 align:start position:0%
we have added is going to be likes so
the<01:10:24.360> post<01:10:24.679> is<01:10:24.840> going<01:10:25.000> to<01:10:25.159> have<01:10:25.400> likes<01:10:26.159> and<01:10:26.360> then
01:10:26.910 --> 01:10:26.920 align:start position:0%
the post is going to have likes and then
01:10:26.920 --> 01:10:29.590 align:start position:0%
the post is going to have likes and then
users<01:10:27.480> are<01:10:27.640> going<01:10:27.760> to<01:10:28.000> have<01:10:28.480> liked<01:10:29.080> so<01:10:29.360> which
01:10:29.590 --> 01:10:29.600 align:start position:0%
users are going to have liked so which
01:10:29.600 --> 01:10:32.390 align:start position:0%
users are going to have liked so which
posts<01:10:30.199> have<01:10:30.400> they<01:10:30.560> liked<01:10:31.280> let's<01:10:31.480> move<01:10:31.800> forward
01:10:32.390 --> 01:10:32.400 align:start position:0%
posts have they liked let's move forward
01:10:32.400 --> 01:10:34.590 align:start position:0%
posts have they liked let's move forward
let's<01:10:32.640> create<01:10:32.960> a<01:10:33.159> next<01:10:33.520> attribute<01:10:34.040> for<01:10:34.280> our
01:10:34.590 --> 01:10:34.600 align:start position:0%
let's create a next attribute for our
01:10:34.600 --> 01:10:36.510 align:start position:0%
let's create a next attribute for our
post<01:10:35.199> and<01:10:35.360> that's<01:10:35.520> going<01:10:35.679> to<01:10:35.800> be<01:10:35.920> a<01:10:36.040> string
01:10:36.510 --> 01:10:36.520 align:start position:0%
post and that's going to be a string
01:10:36.520 --> 01:10:38.990 align:start position:0%
post and that's going to be a string
this<01:10:36.760> time<01:10:37.560> the<01:10:37.760> attribute<01:10:38.239> key<01:10:38.560> is<01:10:38.719> going<01:10:38.880> to
01:10:38.990 --> 01:10:39.000 align:start position:0%
this time the attribute key is going to
01:10:39.000 --> 01:10:42.470 align:start position:0%
this time the attribute key is going to
be<01:10:39.159> a<01:10:39.520> caption<01:10:40.520> the<01:10:40.760> size<01:10:41.040> is<01:10:41.199> going<01:10:41.360> to<01:10:41.560> be
01:10:42.470 --> 01:10:42.480 align:start position:0%
be a caption the size is going to be
01:10:42.480 --> 01:10:45.310 align:start position:0%
be a caption the size is going to be
2200<01:10:43.480> this<01:10:43.679> was<01:10:43.920> a<01:10:44.159> default<01:10:44.640> size<01:10:44.920> for<01:10:45.120> an
01:10:45.310 --> 01:10:45.320 align:start position:0%
2200 this was a default size for an
01:10:45.320 --> 01:10:47.310 align:start position:0%
2200 this was a default size for an
Instagram<01:10:45.880> post<01:10:46.400> so<01:10:46.640> that's<01:10:46.800> where<01:10:47.000> we<01:10:47.120> took
01:10:47.310 --> 01:10:47.320 align:start position:0%
Instagram post so that's where we took
01:10:47.320 --> 01:10:50.990 align:start position:0%
Instagram post so that's where we took
it<01:10:47.840> 2,200<01:10:49.080> characters<01:10:50.080> default<01:10:50.520> is<01:10:50.640> not<01:10:50.840> going
01:10:50.990 --> 01:10:51.000 align:start position:0%
it 2,200 characters default is not going
01:10:51.000 --> 01:10:55.550 align:start position:0%
it 2,200 characters default is not going
to<01:10:51.120> be<01:10:51.480> anything<01:10:52.480> and<01:10:52.679> you<01:10:52.800> can<01:10:52.960> click<01:10:53.239> create
01:10:55.550 --> 01:10:55.560 align:start position:0%
to be anything and you can click create
01:10:55.560 --> 01:10:57.910 align:start position:0%
to be anything and you can click create
we're<01:10:55.679> going<01:10:55.800> to<01:10:56.000> also<01:10:56.239> need<01:10:56.679> tags<01:10:57.199> attribute
01:10:57.910 --> 01:10:57.920 align:start position:0%
we're going to also need tags attribute
01:10:57.920 --> 01:10:59.870 align:start position:0%
we're going to also need tags attribute
so<01:10:58.080> let's<01:10:58.280> go<01:10:58.400> ahead<01:10:58.600> and<01:10:58.760> create<01:10:59.000> a<01:10:59.159> new<01:10:59.360> one
01:10:59.870 --> 01:10:59.880 align:start position:0%
so let's go ahead and create a new one
01:10:59.880 --> 01:11:01.870 align:start position:0%
so let's go ahead and create a new one
of<01:11:00.000> a<01:11:00.199> type<01:11:00.480> string<01:11:01.239> that's<01:11:01.440> going<01:11:01.600> to<01:11:01.719> be
01:11:01.870 --> 01:11:01.880 align:start position:0%
of a type string that's going to be
01:11:01.880 --> 01:11:05.030 align:start position:0%
of a type string that's going to be
called<01:11:02.239> Tags<01:11:03.239> it's<01:11:03.400> going<01:11:03.560> to<01:11:03.640> be<01:11:03.840> 2200<01:11:04.840> as
01:11:05.030 --> 01:11:05.040 align:start position:0%
called Tags it's going to be 2200 as
01:11:05.040 --> 01:11:07.830 align:start position:0%
called Tags it's going to be 2200 as
well<01:11:05.880> and<01:11:06.040> it's<01:11:06.199> going<01:11:06.360> to<01:11:06.480> be<01:11:06.679> an<01:11:06.880> array<01:11:07.600> of
01:11:07.830 --> 01:11:07.840 align:start position:0%
well and it's going to be an array of
01:11:07.840 --> 01:11:09.510 align:start position:0%
well and it's going to be an array of
tags<01:11:08.480> pretty
01:11:09.510 --> 01:11:09.520 align:start position:0%
tags pretty
01:11:09.520 --> 01:11:11.630 align:start position:0%
tags pretty
interesting<01:11:10.520> then<01:11:10.760> we're<01:11:10.920> going<01:11:11.000> to<01:11:11.159> need<01:11:11.440> an
01:11:11.630 --> 01:11:11.640 align:start position:0%
interesting then we're going to need an
01:11:11.640 --> 01:11:15.350 align:start position:0%
interesting then we're going to need an
image<01:11:11.960> URL<01:11:12.600> so<01:11:12.760> let's<01:11:13.000> create<01:11:13.360> a<01:11:13.560> new<01:11:14.080> URL<01:11:14.679> type
01:11:15.350 --> 01:11:15.360 align:start position:0%
image URL so let's create a new URL type
01:11:15.360 --> 01:11:18.030 align:start position:0%
image URL so let's create a new URL type
yeah<01:11:15.560> there's<01:11:15.760> a<01:11:15.960> special<01:11:16.400> type<01:11:16.679> for<01:11:16.880> the<01:11:17.040> URL
01:11:18.030 --> 01:11:18.040 align:start position:0%
yeah there's a special type for the URL
01:11:18.040 --> 01:11:21.510 align:start position:0%
yeah there's a special type for the URL
which<01:11:18.199> is<01:11:18.320> going<01:11:18.480> to<01:11:18.600> be<01:11:18.800> called<01:11:19.199> image<01:11:20.520> URL
01:11:21.510 --> 01:11:21.520 align:start position:0%
which is going to be called image URL
01:11:21.520 --> 01:11:23.790 align:start position:0%
which is going to be called image URL
and<01:11:21.640> then<01:11:21.800> it's<01:11:21.960> going<01:11:22.080> to<01:11:22.239> be<01:11:22.560> required<01:11:23.640> and
01:11:23.790 --> 01:11:23.800 align:start position:0%
and then it's going to be required and
01:11:23.800 --> 01:11:26.550 align:start position:0%
and then it's going to be required and
click<01:11:24.360> create<01:11:25.360> we're<01:11:25.520> going<01:11:25.600> to<01:11:25.800> also<01:11:26.080> need<01:11:26.320> an
01:11:26.550 --> 01:11:26.560 align:start position:0%
click create we're going to also need an
01:11:26.560 --> 01:11:28.990 align:start position:0%
click create we're going to also need an
image<01:11:26.960> ID<01:11:27.480> attribute<01:11:28.280> which<01:11:28.400> is<01:11:28.520> going<01:11:28.679> to<01:11:28.840> be
01:11:28.990 --> 01:11:29.000 align:start position:0%
image ID attribute which is going to be
01:11:29.000 --> 01:11:31.430 align:start position:0%
image ID attribute which is going to be
of<01:11:29.120> a<01:11:29.320> type<01:11:29.679> string<01:11:30.679> this<01:11:30.800> is<01:11:30.960> needed<01:11:31.320> if
01:11:31.430 --> 01:11:31.440 align:start position:0%
of a type string this is needed if
01:11:31.440 --> 01:11:33.790 align:start position:0%
of a type string this is needed if
somebody<01:11:31.840> wants<01:11:32.040> to<01:11:32.239> delete<01:11:32.760> a<01:11:33.000> post<01:11:33.560> so<01:11:33.719> we
01:11:33.790 --> 01:11:33.800 align:start position:0%
somebody wants to delete a post so we
01:11:33.800 --> 01:11:35.590 align:start position:0%
somebody wants to delete a post so we
can<01:11:33.960> say<01:11:34.239> image
01:11:35.590 --> 01:11:35.600 align:start position:0%
can say image
01:11:35.600 --> 01:11:39.189 align:start position:0%
can say image
ID<01:11:36.600> of<01:11:36.800> a<01:11:37.000> size<01:11:37.480> 2200<01:11:38.480> again<01:11:38.679> feel<01:11:38.880> free<01:11:39.120> to
01:11:39.189 --> 01:11:39.199 align:start position:0%
ID of a size 2200 again feel free to
01:11:39.199 --> 01:11:41.229 align:start position:0%
ID of a size 2200 again feel free to
choose<01:11:39.440> whatever<01:11:39.800> you<01:11:39.920> want<01:11:40.239> here<01:11:40.920> and<01:11:41.080> it's
01:11:41.229 --> 01:11:41.239 align:start position:0%
choose whatever you want here and it's
01:11:41.239 --> 01:11:43.350 align:start position:0%
choose whatever you want here and it's
going<01:11:41.400> to<01:11:41.560> be
01:11:43.350 --> 01:11:43.360 align:start position:0%
going to be
01:11:43.360 --> 01:11:46.590 align:start position:0%
going to be
required<01:11:44.360> we<01:11:44.480> need<01:11:44.800> a<01:11:45.040> location<01:11:45.760> attribute<01:11:46.360> as
01:11:46.590 --> 01:11:46.600 align:start position:0%
required we need a location attribute as
01:11:46.600 --> 01:11:49.229 align:start position:0%
required we need a location attribute as
well<01:11:47.000> of<01:11:47.120> a<01:11:47.320> type<01:11:47.639> string<01:11:48.199> so<01:11:48.400> let's<01:11:48.600> say
01:11:49.229 --> 01:11:49.239 align:start position:0%
well of a type string so let's say
01:11:49.239 --> 01:11:52.550 align:start position:0%
well of a type string so let's say
location<01:11:50.239> size<01:11:50.639> is<01:11:50.800> going<01:11:50.960> to<01:11:51.080> be
01:11:52.550 --> 01:11:52.560 align:start position:0%
location size is going to be
01:11:52.560 --> 01:11:55.430 align:start position:0%
location size is going to be
2200
01:11:55.430 --> 01:11:55.440 align:start position:0%
2200
01:11:55.440 --> 01:11:57.550 align:start position:0%
2200
and<01:11:55.679> this<01:11:55.800> is<01:11:55.920> more<01:11:56.080> or<01:11:56.239> less<01:11:56.480> it<01:11:57.040> these<01:11:57.199> are
01:11:57.550 --> 01:11:57.560 align:start position:0%
and this is more or less it these are
01:11:57.560 --> 01:12:00.350 align:start position:0%
and this is more or less it these are
all<01:11:58.120> the<01:11:58.320> attributes<01:11:59.080> that<01:11:59.239> we<01:11:59.400> need<01:11:59.800> for<01:12:00.080> our
01:12:00.350 --> 01:12:00.360 align:start position:0%
all the attributes that we need for our
01:12:00.360 --> 01:12:03.270 align:start position:0%
all the attributes that we need for our
post<01:12:01.280> so<01:12:01.679> what<01:12:01.800> we<01:12:01.880> can<01:12:02.080> do<01:12:02.639> is<01:12:02.880> instead<01:12:03.159> of
01:12:03.270 --> 01:12:03.280 align:start position:0%
post so what we can do is instead of
01:12:03.280 --> 01:12:05.229 align:start position:0%
post so what we can do is instead of
just<01:12:03.440> typing<01:12:03.760> them<01:12:03.920> out<01:12:04.440> we<01:12:04.520> can<01:12:04.679> go<01:12:04.800> ahead<01:12:05.040> and
01:12:05.229 --> 01:12:05.239 align:start position:0%
just typing them out we can go ahead and
01:12:05.239 --> 01:12:08.390 align:start position:0%
just typing them out we can go ahead and
screenshot<01:12:06.040> what<01:12:06.199> we<01:12:06.360> have<01:12:06.639> here<01:12:07.560> on<01:12:07.880> Windows
01:12:08.390 --> 01:12:08.400 align:start position:0%
screenshot what we have here on Windows
01:12:08.400 --> 01:12:11.189 align:start position:0%
screenshot what we have here on Windows
I<01:12:08.560> usually<01:12:08.920> use<01:12:09.199> command<01:12:09.679> shift<01:12:10.080> s<01:12:10.960> and<01:12:11.080> then
01:12:11.189 --> 01:12:11.199 align:start position:0%
I usually use command shift s and then
01:12:11.199 --> 01:12:13.629 align:start position:0%
I usually use command shift s and then
you<01:12:11.320> can<01:12:11.520> simply<01:12:12.440> select<01:12:12.760> it<01:12:13.000> like<01:12:13.199> this
01:12:13.629 --> 01:12:13.639 align:start position:0%
you can simply select it like this
01:12:13.639 --> 01:12:15.950 align:start position:0%
you can simply select it like this
there's<01:12:13.840> a<01:12:14.000> similar<01:12:14.360> shortcut<01:12:15.000> on<01:12:15.159> Mac<01:12:15.440> OS<01:12:15.840> as
01:12:15.950 --> 01:12:15.960 align:start position:0%
there's a similar shortcut on Mac OS as
01:12:15.960 --> 01:12:18.470 align:start position:0%
there's a similar shortcut on Mac OS as
well<01:12:16.520> so<01:12:16.679> let's<01:12:16.920> take<01:12:17.159> it<01:12:17.719> and<01:12:17.840> let's<01:12:18.080> put<01:12:18.199> it
01:12:18.470 --> 01:12:18.480 align:start position:0%
well so let's take it and let's put it
01:12:18.480 --> 01:12:20.990 align:start position:0%
well so let's take it and let's put it
right<01:12:18.719> here<01:12:19.239> within<01:12:19.480> our<01:12:19.639> fig<01:12:19.920> Jam<01:12:20.560> so<01:12:20.760> it's
01:12:20.990 --> 01:12:21.000 align:start position:0%
right here within our fig Jam so it's
01:12:21.000 --> 01:12:22.910 align:start position:0%
right here within our fig Jam so it's
really<01:12:21.280> easy<01:12:21.560> to<01:12:22.080> understand<01:12:22.679> what
01:12:22.910 --> 01:12:22.920 align:start position:0%
really easy to understand what
01:12:22.920 --> 01:12:26.270 align:start position:0%
really easy to understand what
properties<01:12:23.760> each<01:12:23.960> one<01:12:24.120> of<01:12:24.239> our<01:12:24.400> posts<01:12:25.280> has
01:12:26.270 --> 01:12:26.280 align:start position:0%
properties each one of our posts has
01:12:26.280 --> 01:12:28.870 align:start position:0%
properties each one of our posts has
there<01:12:26.440> we<01:12:26.600> go<01:12:27.040> now<01:12:27.239> we<01:12:27.360> even<01:12:27.520> know<01:12:27.760> the<01:12:27.960> type
01:12:28.870 --> 01:12:28.880 align:start position:0%
there we go now we even know the type
01:12:28.880 --> 01:12:30.990 align:start position:0%
there we go now we even know the type
this<01:12:29.120> is<01:12:29.280> going<01:12:29.440> to<01:12:29.560> be<01:12:29.719> helpful<01:12:30.120> later<01:12:30.400> on
01:12:30.990 --> 01:12:31.000 align:start position:0%
this is going to be helpful later on
01:12:31.000 --> 01:12:32.470 align:start position:0%
this is going to be helpful later on
once<01:12:31.239> we<01:12:31.480> dive<01:12:31.760> into<01:12:31.960> the<01:12:32.080> further
01:12:32.470 --> 01:12:32.480 align:start position:0%
once we dive into the further
01:12:32.480 --> 01:12:35.350 align:start position:0%
once we dive into the further
architecture<01:12:33.239> of<01:12:33.360> our<01:12:34.000> application<01:12:35.000> now<01:12:35.199> that
01:12:35.350 --> 01:12:35.360 align:start position:0%
architecture of our application now that
01:12:35.360 --> 01:12:37.350 align:start position:0%
architecture of our application now that
we<01:12:35.520> have<01:12:35.679> all<01:12:35.840> the<01:12:36.000> attributes<01:12:36.840> we<01:12:36.920> can<01:12:37.080> go<01:12:37.239> to
01:12:37.350 --> 01:12:37.360 align:start position:0%
we have all the attributes we can go to
01:12:37.360 --> 01:12:40.669 align:start position:0%
we have all the attributes we can go to
the<01:12:37.520> indexes<01:12:38.120> tab<01:12:38.440> of<01:12:38.560> our<01:12:38.800> posts<01:12:39.800> and<01:12:40.120> this<01:12:40.520> is
01:12:40.669 --> 01:12:40.679 align:start position:0%
the indexes tab of our posts and this is
01:12:40.679 --> 01:12:42.990 align:start position:0%
the indexes tab of our posts and this is
where<01:12:40.920> aite<01:12:41.560> allows<01:12:41.880> you<01:12:42.000> to<01:12:42.120> do<01:12:42.360> automatic
01:12:42.990 --> 01:12:43.000 align:start position:0%
where aite allows you to do automatic
01:12:43.000 --> 01:12:46.030 align:start position:0%
where aite allows you to do automatic
searching<01:12:43.880> of<01:12:44.239> your<01:12:44.520> collections<01:12:45.480> so<01:12:45.679> click
01:12:46.030 --> 01:12:46.040 align:start position:0%
searching of your collections so click
01:12:46.040 --> 01:12:49.189 align:start position:0%
searching of your collections so click
create<01:12:46.440> index<01:12:47.239> you<01:12:47.360> can<01:12:47.600> call<01:12:47.760> it<01:12:48.040> caption<01:12:49.040> the
01:12:49.189 --> 01:12:49.199 align:start position:0%
create index you can call it caption the
01:12:49.199 --> 01:12:52.149 align:start position:0%
create index you can call it caption the
index<01:12:49.639> type<01:12:50.000> is<01:12:50.159> going<01:12:50.280> to<01:12:50.400> be<01:12:50.560> full<01:12:50.960> text<01:12:51.920> the
01:12:52.149 --> 01:12:52.159 align:start position:0%
index type is going to be full text the
01:12:52.159 --> 01:12:54.590 align:start position:0%
index type is going to be full text the
attribute<01:12:52.719> is<01:12:52.880> going<01:12:53.000> to<01:12:53.120> be<01:12:53.480> caption<01:12:54.320> and<01:12:54.480> the
01:12:54.590 --> 01:12:54.600 align:start position:0%
attribute is going to be caption and the
01:12:54.600 --> 01:12:57.709 align:start position:0%
attribute is going to be caption and the
order<01:12:54.960> is<01:12:55.080> going<01:12:55.239> to<01:12:55.360> be<01:12:55.920> descending<01:12:56.920> this<01:12:57.199> is
01:12:57.709 --> 01:12:57.719 align:start position:0%
order is going to be descending this is
01:12:57.719 --> 01:13:00.229 align:start position:0%
order is going to be descending this is
phenomenal<01:12:58.719> essentially<01:12:59.320> you<01:12:59.480> have<01:12:59.760> built-in
01:13:00.229 --> 01:13:00.239 align:start position:0%
phenomenal essentially you have built-in
01:13:00.239 --> 01:13:02.629 align:start position:0%
phenomenal essentially you have built-in
search<01:13:00.520> and<01:13:00.880> filtering<01:13:01.880> this<01:13:02.120> is<01:13:02.239> going<01:13:02.440> to
01:13:02.629 --> 01:13:02.639 align:start position:0%
search and filtering this is going to
01:13:02.639 --> 01:13:04.430 align:start position:0%
search and filtering this is going to
allow<01:13:03.000> us<01:13:03.159> to<01:13:03.360> automatically<01:13:03.920> search<01:13:04.239> for
01:13:04.430 --> 01:13:04.440 align:start position:0%
allow us to automatically search for
01:13:04.440 --> 01:13:07.470 align:start position:0%
allow us to automatically search for
different<01:13:04.800> posts<01:13:05.600> based<01:13:06.080> off<01:13:06.280> of<01:13:06.520> caption<01:13:07.280> so
01:13:07.470 --> 01:13:07.480 align:start position:0%
different posts based off of caption so
01:13:07.480 --> 01:13:08.590 align:start position:0%
different posts based off of caption so
let's<01:13:07.679> click
01:13:08.590 --> 01:13:08.600 align:start position:0%
let's click
01:13:08.600 --> 01:13:11.070 align:start position:0%
let's click
create<01:13:09.600> now<01:13:09.840> we<01:13:09.960> want<01:13:10.080> to<01:13:10.280> go<01:13:10.400> to<01:13:10.560> the<01:13:10.679> users
01:13:11.070 --> 01:13:11.080 align:start position:0%
create now we want to go to the users
01:13:11.080 --> 01:13:13.709 align:start position:0%
create now we want to go to the users
collection<01:13:11.800> and<01:13:12.000> also<01:13:12.320> start<01:13:12.679> creating<01:13:13.360> new
01:13:13.709 --> 01:13:13.719 align:start position:0%
collection and also start creating new
01:13:13.719 --> 01:13:16.750 align:start position:0%
collection and also start creating new
attributes<01:13:14.560> so<01:13:14.800> go<01:13:14.960> to<01:13:15.520> attributes<01:13:16.520> you<01:13:16.639> can
01:13:16.750 --> 01:13:16.760 align:start position:0%
attributes so go to attributes you can
01:13:16.760 --> 01:13:19.229 align:start position:0%
attributes so go to attributes you can
see<01:13:16.960> that<01:13:17.080> we<01:13:17.199> already<01:13:17.520> have<01:13:17.719> liked<01:13:18.080> and<01:13:18.320> posts
01:13:19.229 --> 01:13:19.239 align:start position:0%
see that we already have liked and posts
01:13:19.239 --> 01:13:21.790 align:start position:0%
see that we already have liked and posts
let's<01:13:19.480> create<01:13:19.719> a<01:13:19.880> new<01:13:20.080> one<01:13:20.440> of<01:13:20.600> a<01:13:20.800> type<01:13:21.080> string
01:13:21.790 --> 01:13:21.800 align:start position:0%
let's create a new one of a type string
01:13:21.800 --> 01:13:24.550 align:start position:0%
let's create a new one of a type string
that's<01:13:22.040> going<01:13:22.199> to<01:13:22.360> be<01:13:22.840> name
01:13:24.550 --> 01:13:24.560 align:start position:0%
that's going to be name
01:13:24.560 --> 01:13:28.189 align:start position:0%
that's going to be name
we<01:13:24.679> can<01:13:24.840> enter<01:13:25.199> the<01:13:25.360> same<01:13:25.679> size<01:13:26.120> as<01:13:26.760> before<01:13:27.760> and
01:13:28.189 --> 01:13:28.199 align:start position:0%
we can enter the same size as before and
01:13:28.199 --> 01:13:29.310 align:start position:0%
we can enter the same size as before and
click
01:13:29.310 --> 01:13:29.320 align:start position:0%
click
01:13:29.320 --> 01:13:31.470 align:start position:0%
click
create<01:13:30.320> we're<01:13:30.480> going<01:13:30.560> to<01:13:30.760> also<01:13:30.960> need<01:13:31.199> a
01:13:31.470 --> 01:13:31.480 align:start position:0%
create we're going to also need a
01:13:31.480 --> 01:13:34.189 align:start position:0%
create we're going to also need a
username<01:13:32.080> for<01:13:32.280> our<01:13:32.480> user<01:13:33.120> so<01:13:33.360> let's<01:13:33.600> say
01:13:34.189 --> 01:13:34.199 align:start position:0%
username for our user so let's say
01:13:34.199 --> 01:13:36.550 align:start position:0%
username for our user so let's say
attribute<01:13:34.679> is<01:13:34.840> going<01:13:34.960> to<01:13:35.080> be<01:13:35.400> username<01:13:36.400> it's
01:13:36.550 --> 01:13:36.560 align:start position:0%
attribute is going to be username it's
01:13:36.560 --> 01:13:39.950 align:start position:0%
attribute is going to be username it's
going<01:13:36.719> to<01:13:36.840> be<01:13:37.560> 2200<01:13:38.560> and<01:13:38.760> we<01:13:38.880> can<01:13:39.040> click
01:13:39.950 --> 01:13:39.960 align:start position:0%
going to be 2200 and we can click
01:13:39.960 --> 01:13:42.910 align:start position:0%
going to be 2200 and we can click
create<01:13:40.960> we<01:13:41.159> also<01:13:41.400> need<01:13:41.639> an<01:13:41.840> account<01:13:42.199> ID<01:13:42.760> so
01:13:42.910 --> 01:13:42.920 align:start position:0%
create we also need an account ID so
01:13:42.920 --> 01:13:47.189 align:start position:0%
create we also need an account ID so
let's<01:13:43.120> create<01:13:43.320> a<01:13:43.480> new<01:13:43.679> string<01:13:44.440> of<01:13:44.880> account<01:13:46.199> ID
01:13:47.189 --> 01:13:47.199 align:start position:0%
let's create a new string of account ID
01:13:47.199 --> 01:13:48.070 align:start position:0%
let's create a new string of account ID
of
01:13:48.070 --> 01:13:48.080 align:start position:0%
of
01:13:48.080 --> 01:13:50.750 align:start position:0%
of
2200<01:13:49.080> let's<01:13:49.280> make<01:13:49.400> it<01:13:49.600> required<01:13:50.360> and<01:13:50.520> let's
01:13:50.750 --> 01:13:50.760 align:start position:0%
2200 let's make it required and let's
01:13:50.760 --> 01:13:51.550 align:start position:0%
2200 let's make it required and let's
click
01:13:51.550 --> 01:13:51.560 align:start position:0%
click
01:13:51.560 --> 01:13:54.149 align:start position:0%
click
create<01:13:52.560> our<01:13:52.800> user<01:13:53.199> is<01:13:53.360> is<01:13:53.480> also<01:13:53.719> going<01:13:53.840> to<01:13:54.000> have
01:13:54.149 --> 01:13:54.159 align:start position:0%
create our user is is also going to have
01:13:54.159 --> 01:13:57.189 align:start position:0%
create our user is is also going to have
an<01:13:54.320> email<01:13:54.880> so<01:13:55.080> let's<01:13:55.280> select<01:13:55.600> an<01:13:55.840> email<01:13:56.239> type
01:13:57.189 --> 01:13:57.199 align:start position:0%
an email so let's select an email type
01:13:57.199 --> 01:13:58.430 align:start position:0%
an email so let's select an email type
call<01:13:57.440> it<01:13:57.679> an
01:13:58.430 --> 01:13:58.440 align:start position:0%
call it an
01:13:58.440 --> 01:14:02.189 align:start position:0%
call it an
email<01:13:59.440> make<01:13:59.639> it<01:13:59.840> required<01:14:00.560> and<01:14:00.800> click<01:14:01.199> create
01:14:02.189 --> 01:14:02.199 align:start position:0%
email make it required and click create
01:14:02.199 --> 01:14:04.310 align:start position:0%
email make it required and click create
our<01:14:02.400> user<01:14:02.840> can<01:14:03.040> also<01:14:03.360> add<01:14:03.560> a<01:14:03.679> bit<01:14:03.840> of<01:14:04.000> info
01:14:04.310 --> 01:14:04.320 align:start position:0%
our user can also add a bit of info
01:14:04.320 --> 01:14:06.149 align:start position:0%
our user can also add a bit of info
about<01:14:04.760> themselves<01:14:05.280> so<01:14:05.480> let's<01:14:05.679> create<01:14:05.880> a<01:14:06.000> new
01:14:06.149 --> 01:14:06.159 align:start position:0%
about themselves so let's create a new
01:14:06.159 --> 01:14:09.550 align:start position:0%
about themselves so let's create a new
string<01:14:06.520> property<01:14:07.199> called<01:14:07.679> bio<01:14:08.679> and<01:14:08.920> here<01:14:09.440> they
01:14:09.550 --> 01:14:09.560 align:start position:0%
string property called bio and here they
01:14:09.560 --> 01:14:12.669 align:start position:0%
string property called bio and here they
can<01:14:09.760> add<01:14:10.400> their<01:14:10.760> biography<01:14:11.760> let's<01:14:12.000> click
01:14:12.669 --> 01:14:12.679 align:start position:0%
can add their biography let's click
01:14:12.679 --> 01:14:15.070 align:start position:0%
can add their biography let's click
create<01:14:13.679> finally<01:14:14.120> we<01:14:14.239> need<01:14:14.400> to<01:14:14.520> create<01:14:14.800> an
01:14:15.070 --> 01:14:15.080 align:start position:0%
create finally we need to create an
01:14:15.080 --> 01:14:18.430 align:start position:0%
create finally we need to create an
image<01:14:15.560> ID<01:14:16.360> attribute<01:14:17.040> of<01:14:17.440> type<01:14:17.639> string<01:14:18.280> so
01:14:18.430 --> 01:14:18.440 align:start position:0%
image ID attribute of type string so
01:14:18.440 --> 01:14:21.830 align:start position:0%
image ID attribute of type string so
that's<01:14:18.639> going<01:14:18.800> to<01:14:18.960> be<01:14:19.239> image<01:14:20.120> ID<01:14:21.120> of<01:14:21.320> the<01:14:21.480> same
01:14:21.830 --> 01:14:21.840 align:start position:0%
that's going to be image ID of the same
01:14:21.840 --> 01:14:24.470 align:start position:0%
that's going to be image ID of the same
size<01:14:22.840> and<01:14:23.000> this<01:14:23.080> is<01:14:23.400> needed<01:14:23.679> for<01:14:23.880> deleting<01:14:24.320> the
01:14:24.470 --> 01:14:24.480 align:start position:0%
size and this is needed for deleting the
01:14:24.480 --> 01:14:26.910 align:start position:0%
size and this is needed for deleting the
profile<01:14:24.880> images<01:14:25.639> when<01:14:25.840> changing<01:14:26.360> the<01:14:26.560> profile
01:14:26.910 --> 01:14:26.920 align:start position:0%
profile images when changing the profile
01:14:26.920 --> 01:14:29.310 align:start position:0%
profile images when changing the profile
image<01:14:27.719> let's<01:14:27.960> click
01:14:29.310 --> 01:14:29.320 align:start position:0%
image let's click
01:14:29.320 --> 01:14:32.030 align:start position:0%
image let's click
create<01:14:30.320> we<01:14:30.520> also<01:14:30.760> need<01:14:30.960> the<01:14:31.199> image<01:14:31.520> URL
01:14:32.030 --> 01:14:32.040 align:start position:0%
create we also need the image URL
01:14:32.040 --> 01:14:34.470 align:start position:0%
create we also need the image URL
attribute<01:14:32.880> this<01:14:33.000> is<01:14:33.120> going<01:14:33.280> to<01:14:33.440> be<01:14:33.639> of<01:14:33.800> a<01:14:33.960> type
01:14:34.470 --> 01:14:34.480 align:start position:0%
attribute this is going to be of a type
01:14:34.480 --> 01:14:39.149 align:start position:0%
attribute this is going to be of a type
URL<01:14:35.480> so<01:14:35.719> let's<01:14:35.920> say<01:14:36.320> image<01:14:37.320> URL
01:14:39.149 --> 01:14:39.159 align:start position:0%
URL so let's say image URL
01:14:39.159 --> 01:14:41.350 align:start position:0%
URL so let's say image URL
required<01:14:40.159> and
01:14:41.350 --> 01:14:41.360 align:start position:0%
required and
01:14:41.360 --> 01:14:44.390 align:start position:0%
required and
create<01:14:42.360> and<01:14:42.560> this<01:14:42.679> is<01:14:42.840> it<01:14:43.560> we<01:14:43.760> immediately
01:14:44.390 --> 01:14:44.400 align:start position:0%
create and this is it we immediately
01:14:44.400 --> 01:14:46.350 align:start position:0%
create and this is it we immediately
have<01:14:44.639> all<01:14:44.800> of<01:14:44.960> the<01:14:45.159> attributes<01:14:45.880> that<01:14:46.040> belong
01:14:46.350 --> 01:14:46.360 align:start position:0%
have all of the attributes that belong
01:14:46.360 --> 01:14:49.030 align:start position:0%
have all of the attributes that belong
to<01:14:46.520> our<01:14:46.679> user<01:14:47.560> what<01:14:47.719> we<01:14:47.840> can<01:14:48.000> do<01:14:48.520> is<01:14:48.719> also
01:14:49.030 --> 01:14:49.040 align:start position:0%
to our user what we can do is also
01:14:49.040 --> 01:14:51.149 align:start position:0%
to our user what we can do is also
screenshot
01:14:51.149 --> 01:14:51.159 align:start position:0%
screenshot
01:14:51.159 --> 01:14:55.149 align:start position:0%
screenshot
it<01:14:52.159> and<01:14:52.520> add<01:14:52.719> it<01:14:52.840> to<01:14:53.000> our<01:14:53.320> fig<01:14:53.520> Jam<01:14:54.520> there<01:14:54.679> we<01:14:54.880> go
01:14:55.149 --> 01:14:55.159 align:start position:0%
it and add it to our fig Jam there we go
01:14:55.159 --> 01:14:58.750 align:start position:0%
it and add it to our fig Jam there we go
I'm<01:14:55.320> just<01:14:55.440> going<01:14:55.600> to<01:14:55.800> make<01:14:55.920> it<01:14:56.120> the<01:14:56.280> same
01:14:58.750 --> 01:14:58.760 align:start position:0%
01:14:58.760 --> 01:15:02.350 align:start position:0%
size<01:14:59.760> and<01:14:59.920> we<01:15:00.040> can<01:15:00.239> put<01:15:00.400> it<01:15:00.679> right<01:15:00.920> here<01:15:01.760> below
01:15:02.350 --> 01:15:02.360 align:start position:0%
size and we can put it right here below
01:15:02.360 --> 01:15:03.950 align:start position:0%
size and we can put it right here below
users
01:15:03.950 --> 01:15:03.960 align:start position:0%
users
01:15:03.960 --> 01:15:06.510 align:start position:0%
users
collection<01:15:04.960> there<01:15:05.080> we<01:15:05.280> go<01:15:05.760> it's<01:15:05.960> pretty<01:15:06.239> handy
01:15:06.510 --> 01:15:06.520 align:start position:0%
collection there we go it's pretty handy
01:15:06.520 --> 01:15:08.750 align:start position:0%
collection there we go it's pretty handy
to<01:15:06.679> know<01:15:07.040> the<01:15:07.159> full<01:15:07.480> structure<01:15:08.199> especially<01:15:08.639> as
01:15:08.750 --> 01:15:08.760 align:start position:0%
to know the full structure especially as
01:15:08.760 --> 01:15:11.629 align:start position:0%
to know the full structure especially as
the<01:15:08.920> app<01:15:09.239> grows<01:15:10.239> and<01:15:10.480> finally<01:15:11.040> the<01:15:11.239> saves
01:15:11.629 --> 01:15:11.639 align:start position:0%
the app grows and finally the saves
01:15:11.639 --> 01:15:14.030 align:start position:0%
the app grows and finally the saves
collection<01:15:12.000> is<01:15:12.320> remaining<01:15:12.960> so<01:15:13.159> let's<01:15:13.440> go<01:15:13.840> back
01:15:14.030 --> 01:15:14.040 align:start position:0%
collection is remaining so let's go back
01:15:14.040 --> 01:15:17.430 align:start position:0%
collection is remaining so let's go back
to<01:15:14.159> our<01:15:14.360> upright<01:15:15.280> go<01:15:15.480> to<01:15:15.880> saves
01:15:17.430 --> 01:15:17.440 align:start position:0%
to our upright go to saves
01:15:17.440 --> 01:15:20.149 align:start position:0%
to our upright go to saves
attributes<01:15:18.440> and<01:15:18.639> we<01:15:18.719> need<01:15:18.880> to<01:15:19.040> create<01:15:19.400> a<01:15:19.639> user
01:15:20.149 --> 01:15:20.159 align:start position:0%
attributes and we need to create a user
01:15:20.159 --> 01:15:22.390 align:start position:0%
attributes and we need to create a user
attribute<01:15:20.920> which<01:15:21.040> is<01:15:21.159> going<01:15:21.320> to<01:15:21.480> be<01:15:21.639> of<01:15:21.800> a<01:15:22.000> type
01:15:22.390 --> 01:15:22.400 align:start position:0%
attribute which is going to be of a type
01:15:22.400 --> 01:15:24.390 align:start position:0%
attribute which is going to be of a type
relationship
01:15:24.390 --> 01:15:24.400 align:start position:0%
relationship
01:15:24.400 --> 01:15:25.910 align:start position:0%
relationship
so<01:15:24.800> it's<01:15:24.960> going<01:15:25.120> to<01:15:25.239> be<01:15:25.360> a<01:15:25.480> two-way
01:15:25.910 --> 01:15:25.920 align:start position:0%
so it's going to be a two-way
01:15:25.920 --> 01:15:29.149 align:start position:0%
so it's going to be a two-way
relationship<01:15:26.800> between<01:15:27.760> users<01:15:28.760> where<01:15:29.000> it's
01:15:29.149 --> 01:15:29.159 align:start position:0%
relationship between users where it's
01:15:29.159 --> 01:15:32.510 align:start position:0%
relationship between users where it's
going<01:15:29.280> to<01:15:29.440> say<01:15:30.000> user<01:15:31.000> and<01:15:31.400> it's<01:15:31.560> going<01:15:31.719> to<01:15:31.920> say
01:15:32.510 --> 01:15:32.520 align:start position:0%
going to say user and it's going to say
01:15:32.520 --> 01:15:35.430 align:start position:0%
going to say user and it's going to say
save<01:15:33.239> so<01:15:33.400> we<01:15:33.480> need<01:15:33.600> to<01:15:33.719> know<01:15:34.040> which<01:15:34.199> user<01:15:34.760> saved
01:15:35.430 --> 01:15:35.440 align:start position:0%
save so we need to know which user saved
01:15:35.440 --> 01:15:38.310 align:start position:0%
save so we need to know which user saved
which<01:15:35.679> post<01:15:36.639> it's<01:15:36.840> going<01:15:37.000> to<01:15:37.120> be<01:15:37.320> a<01:15:37.520> many<01:15:37.880> toone
01:15:38.310 --> 01:15:38.320 align:start position:0%
which post it's going to be a many toone
01:15:38.320 --> 01:15:40.669 align:start position:0%
which post it's going to be a many toone
relationship<01:15:39.239> because<01:15:39.600> one<01:15:39.800> user<01:15:40.159> can<01:15:40.320> save
01:15:40.669 --> 01:15:40.679 align:start position:0%
relationship because one user can save
01:15:40.679 --> 01:15:41.750 align:start position:0%
relationship because one user can save
many
01:15:41.750 --> 01:15:41.760 align:start position:0%
many
01:15:41.760 --> 01:15:45.270 align:start position:0%
many
posts<01:15:42.760> and<01:15:43.040> on<01:15:43.320> delete<01:15:43.920> we<01:15:44.040> have<01:15:44.159> to<01:15:44.360> select
01:15:45.270 --> 01:15:45.280 align:start position:0%
posts and on delete we have to select
01:15:45.280 --> 01:15:48.830 align:start position:0%
posts and on delete we have to select
set<01:15:45.639> now<01:15:46.400> and<01:15:46.520> let's<01:15:46.760> click
01:15:48.830 --> 01:15:48.840 align:start position:0%
set now and let's click
01:15:48.840 --> 01:15:52.189 align:start position:0%
set now and let's click
create<01:15:49.840> and<01:15:50.120> also<01:15:50.440> we<01:15:50.560> need<01:15:50.679> to<01:15:50.880> create<01:15:51.239> a<01:15:51.520> post
01:15:52.189 --> 01:15:52.199 align:start position:0%
create and also we need to create a post
01:15:52.199 --> 01:15:54.669 align:start position:0%
create and also we need to create a post
attribute<01:15:53.199> so<01:15:53.360> we<01:15:53.480> know<01:15:53.719> which<01:15:53.920> post<01:15:54.199> was
01:15:54.669 --> 01:15:54.679 align:start position:0%
attribute so we know which post was
01:15:54.679 --> 01:15:58.229 align:start position:0%
attribute so we know which post was
saved<01:15:55.679> so<01:15:56.000> we<01:15:56.080> can<01:15:56.280> create<01:15:56.560> a<01:15:56.679> new
01:15:58.229 --> 01:15:58.239 align:start position:0%
saved so we can create a new
01:15:58.239 --> 01:16:00.709 align:start position:0%
saved so we can create a new
relationship<01:15:59.239> and<01:15:59.440> we<01:15:59.560> can<01:15:59.719> create<01:16:00.080> a<01:16:00.280> two-way
01:16:00.709 --> 01:16:00.719 align:start position:0%
relationship and we can create a two-way
01:16:00.719 --> 01:16:02.750 align:start position:0%
relationship and we can create a two-way
relationship<01:16:01.639> between
01:16:02.750 --> 01:16:02.760 align:start position:0%
relationship between
01:16:02.760 --> 01:16:06.950 align:start position:0%
relationship between
posts<01:16:03.760> we<01:16:03.880> can<01:16:04.040> call<01:16:04.239> it<01:16:04.520> post<01:16:05.159> and<01:16:05.800> save<01:16:06.800> make
01:16:06.950 --> 01:16:06.960 align:start position:0%
posts we can call it post and save make
01:16:06.960 --> 01:16:09.270 align:start position:0%
posts we can call it post and save make
sure<01:16:07.159> you<01:16:07.320> call<01:16:07.679> these<01:16:07.880> attributes<01:16:08.600> exactly
01:16:09.270 --> 01:16:09.280 align:start position:0%
sure you call these attributes exactly
01:16:09.280 --> 01:16:11.590 align:start position:0%
sure you call these attributes exactly
the<01:16:09.440> same<01:16:09.800> as<01:16:10.000> I'm<01:16:10.199> calling<01:16:10.520> them<01:16:10.800> here<01:16:11.280> that's
01:16:11.590 --> 01:16:11.600 align:start position:0%
the same as I'm calling them here that's
01:16:11.600 --> 01:16:13.830 align:start position:0%
the same as I'm calling them here that's
necessary<01:16:12.000> for<01:16:12.199> the<01:16:12.360> application<01:16:12.840> to<01:16:13.040> work
01:16:13.830 --> 01:16:13.840 align:start position:0%
necessary for the application to work
01:16:13.840 --> 01:16:16.550 align:start position:0%
necessary for the application to work
and<01:16:14.000> then<01:16:14.120> we<01:16:14.239> can<01:16:14.400> do<01:16:14.639> a<01:16:14.880> many<01:16:15.239> to
01:16:16.550 --> 01:16:16.560 align:start position:0%
and then we can do a many to
01:16:16.560 --> 01:16:21.390 align:start position:0%
and then we can do a many to
one<01:16:17.560> and<01:16:17.880> set<01:16:18.239> now<01:16:19.040> and<01:16:19.199> click
01:16:21.390 --> 01:16:21.400 align:start position:0%
one and set now and click
01:16:21.400 --> 01:16:24.990 align:start position:0%
one and set now and click
create<01:16:22.400> so<01:16:22.679> now<01:16:23.199> we<01:16:23.320> can<01:16:23.520> copy<01:16:23.880> these<01:16:24.159> one<01:16:24.360> more
01:16:24.990 --> 01:16:25.000 align:start position:0%
create so now we can copy these one more
01:16:25.000 --> 01:16:27.629 align:start position:0%
create so now we can copy these one more
time<01:16:26.000> and<01:16:26.199> we<01:16:26.280> can<01:16:26.520> add<01:16:26.719> them<01:16:27.000> right<01:16:27.239> here
01:16:27.629 --> 01:16:27.639 align:start position:0%
time and we can add them right here
01:16:27.639 --> 01:16:29.790 align:start position:0%
time and we can add them right here
below<01:16:28.000> the
01:16:29.790 --> 01:16:29.800 align:start position:0%
below the
01:16:29.800 --> 01:16:32.669 align:start position:0%
below the
saves<01:16:30.800> and<01:16:30.960> there<01:16:31.120> we<01:16:31.280> go<01:16:31.400> so<01:16:31.639> now<01:16:31.800> we<01:16:31.920> can<01:16:32.120> see
01:16:32.669 --> 01:16:32.679 align:start position:0%
saves and there we go so now we can see
01:16:32.679 --> 01:16:35.030 align:start position:0%
saves and there we go so now we can see
that<01:16:32.880> saves<01:16:33.760> actually<01:16:34.120> kind<01:16:34.239> of<01:16:34.400> comes<01:16:34.840> in
01:16:35.030 --> 01:16:35.040 align:start position:0%
that saves actually kind of comes in
01:16:35.040 --> 01:16:38.510 align:start position:0%
that saves actually kind of comes in
between<01:16:36.040> of<01:16:36.400> some<01:16:36.639> of<01:16:36.800> the<01:16:36.960> posts<01:16:37.840> so<01:16:38.199> here<01:16:38.440> we
01:16:38.510 --> 01:16:38.520 align:start position:0%
between of some of the posts so here we
01:16:38.520 --> 01:16:40.350 align:start position:0%
between of some of the posts so here we
can<01:16:38.639> make<01:16:38.840> this<01:16:38.960> a<01:16:39.120> bit
01:16:40.350 --> 01:16:40.360 align:start position:0%
can make this a bit
01:16:40.360 --> 01:16:43.629 align:start position:0%
can make this a bit
smaller<01:16:41.360> and<01:16:41.800> we<01:16:41.920> can<01:16:42.159> Define<01:16:42.719> that<01:16:42.880> a<01:16:43.080> user
01:16:43.629 --> 01:16:43.639 align:start position:0%
smaller and we can Define that a user
01:16:43.639 --> 01:16:46.070 align:start position:0%
smaller and we can Define that a user
can<01:16:43.880> save<01:16:44.360> a<01:16:44.560> specific<01:16:45.040> post<01:16:45.639> so<01:16:45.800> it's<01:16:45.920> going
01:16:46.070 --> 01:16:46.080 align:start position:0%
can save a specific post so it's going
01:16:46.080 --> 01:16:49.590 align:start position:0%
can save a specific post so it's going
to<01:16:46.239> go<01:16:46.440> something<01:16:46.760> like<01:16:46.960> this<01:16:48.120> saves<01:16:49.120> and<01:16:49.320> then
01:16:49.590 --> 01:16:49.600 align:start position:0%
to go something like this saves and then
01:16:49.600 --> 01:16:52.070 align:start position:0%
to go something like this saves and then
we<01:16:49.719> can<01:16:49.920> go<01:16:50.199> to<01:16:50.360> a<01:16:50.560> specific
01:16:52.070 --> 01:16:52.080 align:start position:0%
we can go to a specific
01:16:52.080 --> 01:16:55.430 align:start position:0%
we can go to a specific
post<01:16:53.120> users<01:16:53.520> can<01:16:53.800> create<01:16:54.320> posts<01:16:54.960> but<01:16:55.120> users
01:16:55.430 --> 01:16:55.440 align:start position:0%
post users can create posts but users
01:16:55.440 --> 01:16:58.189 align:start position:0%
post users can create posts but users
can<01:16:55.639> also<01:16:55.960> save<01:16:56.520> the<01:16:56.679> posts<01:16:57.080> that<01:16:57.239> they<01:16:57.400> like
01:16:58.189 --> 01:16:58.199 align:start position:0%
can also save the posts that they like
01:16:58.199 --> 01:17:00.229 align:start position:0%
can also save the posts that they like
pretty<01:16:58.480> cool<01:16:58.840> right<01:16:59.480> and<01:16:59.639> then<01:16:59.800> these<01:16:59.920> are<01:17:00.080> the
01:17:00.229 --> 01:17:00.239 align:start position:0%
pretty cool right and then these are the
01:17:00.239 --> 01:17:03.430 align:start position:0%
pretty cool right and then these are the
attribute<01:17:00.719> of<01:17:00.840> the<01:17:01.400> save<01:17:02.400> so<01:17:02.920> this<01:17:03.120> is<01:17:03.239> our
01:17:03.430 --> 01:17:03.440 align:start position:0%
attribute of the save so this is our
01:17:03.440 --> 01:17:05.229 align:start position:0%
attribute of the save so this is our
current<01:17:03.760> structure<01:17:04.360> we'll<01:17:04.560> be<01:17:04.719> returning
01:17:05.229 --> 01:17:05.239 align:start position:0%
current structure we'll be returning
01:17:05.239 --> 01:17:07.149 align:start position:0%
current structure we'll be returning
back<01:17:05.360> to<01:17:05.520> this<01:17:05.679> fig<01:17:05.960> jam<01:17:06.600> and<01:17:06.760> whenever<01:17:07.080> we
01:17:07.149 --> 01:17:07.159 align:start position:0%
back to this fig jam and whenever we
01:17:07.159 --> 01:17:09.350 align:start position:0%
back to this fig jam and whenever we
need<01:17:07.320> to<01:17:07.520> explain<01:17:07.960> something<01:17:08.239> in<01:17:08.400> more<01:17:08.639> detail
01:17:09.350 --> 01:17:09.360 align:start position:0%
need to explain something in more detail
01:17:09.360 --> 01:17:11.390 align:start position:0%
need to explain something in more detail
that's<01:17:09.639> exactly<01:17:10.120> what<01:17:10.239> I'm<01:17:10.360> going<01:17:10.440> to<01:17:10.600> do<01:17:11.080> in<01:17:11.199> a
01:17:11.390 --> 01:17:11.400 align:start position:0%
that's exactly what I'm going to do in a
01:17:11.400 --> 01:17:13.590 align:start position:0%
that's exactly what I'm going to do in a
visual<01:17:11.840> manner<01:17:12.639> if<01:17:12.760> you'd<01:17:12.920> like<01:17:13.080> me<01:17:13.159> to<01:17:13.320> add
01:17:13.590 --> 01:17:13.600 align:start position:0%
visual manner if you'd like me to add
01:17:13.600 --> 01:17:15.750 align:start position:0%
visual manner if you'd like me to add
more<01:17:13.880> visuals<01:17:14.320> to<01:17:14.480> our<01:17:14.679> videos<01:17:15.239> just<01:17:15.440> let<01:17:15.600> me
01:17:15.750 --> 01:17:15.760 align:start position:0%
more visuals to our videos just let me
01:17:15.760 --> 01:17:18.189 align:start position:0%
more visuals to our videos just let me
know<01:17:16.520> for<01:17:16.760> now<01:17:17.199> I've<01:17:17.360> been<01:17:17.520> only<01:17:17.760> doing<01:17:18.080> this
01:17:18.189 --> 01:17:18.199 align:start position:0%
know for now I've been only doing this
01:17:18.199 --> 01:17:20.310 align:start position:0%
know for now I've been only doing this
in<01:17:18.320> our<01:17:18.520> Pro<01:17:18.800> courses<01:17:19.400> because<01:17:19.679> we<01:17:19.840> have<01:17:20.080> so
01:17:20.310 --> 01:17:20.320 align:start position:0%
in our Pro courses because we have so
01:17:20.320 --> 01:17:22.669 align:start position:0%
in our Pro courses because we have so
much<01:17:20.480> more<01:17:20.800> time<01:17:21.040> to<01:17:21.280> cover<01:17:21.600> things<01:17:21.840> in<01:17:22.040> depth
01:17:22.669 --> 01:17:22.679 align:start position:0%
much more time to cover things in depth
01:17:22.679 --> 01:17:25.590 align:start position:0%
much more time to cover things in depth
in<01:17:23.120> videos<01:17:23.639> the<01:17:23.800> time<01:17:24.000> is<01:17:24.199> limited<01:17:25.000> but<01:17:25.239> still
01:17:25.590 --> 01:17:25.600 align:start position:0%
in videos the time is limited but still
01:17:25.600 --> 01:17:28.350 align:start position:0%
in videos the time is limited but still
I'll<01:17:25.840> try<01:17:26.120> to<01:17:26.320> make<01:17:26.560> them<01:17:26.880> as<01:17:27.080> detailed<01:17:27.840> as
01:17:28.350 --> 01:17:28.360 align:start position:0%
I'll try to make them as detailed as
01:17:28.360 --> 01:17:30.830 align:start position:0%
I'll try to make them as detailed as
possible<01:17:29.360> finally<01:17:30.000> now<01:17:30.199> that<01:17:30.320> we've<01:17:30.520> created
01:17:30.830 --> 01:17:30.840 align:start position:0%
possible finally now that we've created
01:17:30.840 --> 01:17:34.310 align:start position:0%
possible finally now that we've created
our<01:17:31.080> collections<01:17:31.800> our<01:17:32.040> database<01:17:32.719> is<01:17:33.320> ready
01:17:34.310 --> 01:17:34.320 align:start position:0%
our collections our database is ready
01:17:34.320 --> 01:17:36.830 align:start position:0%
our collections our database is ready
this<01:17:34.560> took<01:17:34.800> some<01:17:35.080> time<01:17:35.679> but<01:17:36.080> I<01:17:36.159> mean<01:17:36.600> it's
01:17:36.830 --> 01:17:36.840 align:start position:0%
this took some time but I mean it's
01:17:36.840 --> 01:17:40.229 align:start position:0%
this took some time but I mean it's
pretty<01:17:37.320> crazy<01:17:38.320> really<01:17:38.639> soon<01:17:39.400> we<01:17:39.560> now<01:17:39.840> have<01:17:40.000> a
01:17:40.229 --> 01:17:40.239 align:start position:0%
pretty crazy really soon we now have a
01:17:40.239 --> 01:17:42.270 align:start position:0%
pretty crazy really soon we now have a
complete<01:17:40.679> authentication<01:17:41.520> system<01:17:42.040> where<01:17:42.159> we
01:17:42.270 --> 01:17:42.280 align:start position:0%
complete authentication system where we
01:17:42.280 --> 01:17:45.470 align:start position:0%
complete authentication system where we
can<01:17:42.480> add<01:17:42.719> users<01:17:43.719> not<01:17:43.960> only<01:17:44.520> that<01:17:44.960> but<01:17:45.159> now<01:17:45.360> we
01:17:45.470 --> 01:17:45.480 align:start position:0%
can add users not only that but now we
01:17:45.480 --> 01:17:48.350 align:start position:0%
can add users not only that but now we
can<01:17:45.679> add<01:17:45.880> them<01:17:46.040> to<01:17:46.159> our<01:17:46.400> database<01:17:47.239> as<01:17:47.440> well<01:17:48.199> in
01:17:48.350 --> 01:17:48.360 align:start position:0%
can add them to our database as well in
01:17:48.360 --> 01:17:50.830 align:start position:0%
can add them to our database as well in
the<01:17:48.560> database<01:17:49.280> we<01:17:49.480> have<01:17:49.639> our<01:17:49.880> collections
01:17:50.830 --> 01:17:50.840 align:start position:0%
the database we have our collections
01:17:50.840 --> 01:17:53.310 align:start position:0%
the database we have our collections
with<01:17:51.080> complete<01:17:51.600> attributes<01:17:52.440> so<01:17:52.639> we<01:17:52.760> know<01:17:53.159> the
01:17:53.310 --> 01:17:53.320 align:start position:0%
with complete attributes so we know the
01:17:53.320 --> 01:17:55.430 align:start position:0%
with complete attributes so we know the
structure<01:17:53.960> of<01:17:54.159> each<01:17:54.360> one<01:17:54.480> of<01:17:54.600> our<01:17:54.800> Elements
01:17:55.430 --> 01:17:55.440 align:start position:0%
structure of each one of our Elements
01:17:55.440 --> 01:17:59.030 align:start position:0%
structure of each one of our Elements
which<01:17:55.600> we<01:17:55.679> can<01:17:55.840> see<01:17:56.199> right<01:17:56.760> here<01:17:57.760> and<01:17:58.000> then<01:17:58.800> we
01:17:59.030 --> 01:17:59.040 align:start position:0%
which we can see right here and then we
01:17:59.040 --> 01:18:01.709 align:start position:0%
which we can see right here and then we
also<01:17:59.360> have<01:17:59.639> relationships<01:18:00.560> between<01:18:01.000> them<01:18:01.600> and
01:18:01.709 --> 01:18:01.719 align:start position:0%
also have relationships between them and
01:18:01.719 --> 01:18:04.070 align:start position:0%
also have relationships between them and
we<01:18:01.880> also<01:18:02.120> have<01:18:02.400> storage<01:18:03.159> so<01:18:03.320> we<01:18:03.440> can<01:18:03.639> upload
01:18:04.070 --> 01:18:04.080 align:start position:0%
we also have storage so we can upload
01:18:04.080 --> 01:18:07.070 align:start position:0%
we also have storage so we can upload
images<01:18:04.639> to<01:18:04.800> our<01:18:05.000> application<01:18:06.000> I<01:18:06.080> mean<01:18:06.560> ight
01:18:07.070 --> 01:18:07.080 align:start position:0%
images to our application I mean ight
01:18:07.080 --> 01:18:09.510 align:start position:0%
images to our application I mean ight
Cloud<01:18:07.840> really<01:18:08.120> does<01:18:08.639> everything<01:18:09.120> you<01:18:09.239> wanted
01:18:09.510 --> 01:18:09.520 align:start position:0%
Cloud really does everything you wanted
01:18:09.520 --> 01:18:12.110 align:start position:0%
Cloud really does everything you wanted
to<01:18:09.639> do<01:18:09.840> in<01:18:10.000> this<01:18:10.320> case<01:18:11.320> now<01:18:11.520> the<01:18:11.719> last<01:18:11.880> thing<01:18:12.040> we
01:18:12.110 --> 01:18:12.120 align:start position:0%
to do in this case now the last thing we
01:18:12.120 --> 01:18:14.669 align:start position:0%
to do in this case now the last thing we
need<01:18:12.280> to<01:18:12.400> do<01:18:12.719> is<01:18:12.880> go<01:18:13.040> to<01:18:13.280> database<01:18:14.280> and<01:18:14.440> then
01:18:14.669 --> 01:18:14.679 align:start position:0%
need to do is go to database and then
01:18:14.679 --> 01:18:16.870 align:start position:0%
need to do is go to database and then
copy<01:18:15.000> the<01:18:15.159> IDS<01:18:15.719> right<01:18:15.920> here<01:18:16.400> of<01:18:16.600> these
01:18:16.870 --> 01:18:16.880 align:start position:0%
copy the IDS right here of these
01:18:16.880 --> 01:18:19.950 align:start position:0%
copy the IDS right here of these
collections<01:18:17.880> so<01:18:18.040> let's<01:18:18.280> copy<01:18:18.520> the
01:18:19.950 --> 01:18:19.960 align:start position:0%
collections so let's copy the
01:18:19.960 --> 01:18:23.030 align:start position:0%
collections so let's copy the
saves<01:18:20.960> go<01:18:21.239> back<01:18:21.520> here<01:18:22.159> and<01:18:22.280> we<01:18:22.400> can<01:18:22.520> say
01:18:23.030 --> 01:18:23.040 align:start position:0%
saves go back here and we can say
01:18:23.040 --> 01:18:26.790 align:start position:0%
saves go back here and we can say
something<01:18:23.400> like<01:18:24.199> vorea<01:18:25.199> right
01:18:26.790 --> 01:18:26.800 align:start position:0%
something like vorea right
01:18:26.800 --> 01:18:32.750 align:start position:0%
something like vorea right
uncore<01:18:28.239> saves<01:18:29.239> uncore<01:18:29.840> collection<01:18:30.800> uncore<01:18:31.800> ID
01:18:32.750 --> 01:18:32.760 align:start position:0%
uncore saves uncore collection uncore ID
01:18:32.760 --> 01:18:34.750 align:start position:0%
uncore saves uncore collection uncore ID
it's<01:18:32.880> a<01:18:33.040> long<01:18:33.320> name<01:18:33.639> I<01:18:33.760> know<01:18:34.199> but<01:18:34.360> it's<01:18:34.520> better
01:18:34.750 --> 01:18:34.760 align:start position:0%
it's a long name I know but it's better
01:18:34.760 --> 01:18:37.830 align:start position:0%
it's a long name I know but it's better
to<01:18:34.880> be<01:18:35.040> safe<01:18:35.360> than<01:18:35.880> sorry<01:18:36.880> and<01:18:37.120> finally<01:18:37.560> we<01:18:37.679> can
01:18:37.830 --> 01:18:37.840 align:start position:0%
to be safe than sorry and finally we can
01:18:37.840 --> 01:18:39.669 align:start position:0%
to be safe than sorry and finally we can
duplicate<01:18:38.320> this<01:18:38.480> two<01:18:38.639> more<01:18:38.960> times<01:18:39.520> we're
01:18:39.669 --> 01:18:39.679 align:start position:0%
duplicate this two more times we're
01:18:39.679 --> 01:18:41.750 align:start position:0%
duplicate this two more times we're
going<01:18:39.800> to<01:18:39.920> save<01:18:40.199> saves<01:18:40.679> collection<01:18:41.080> ID<01:18:41.639> we're
01:18:41.750 --> 01:18:41.760 align:start position:0%
going to save saves collection ID we're
01:18:41.760 --> 01:18:44.629 align:start position:0%
going to save saves collection ID we're
going<01:18:41.880> to<01:18:42.040> have<01:18:42.480> post<01:18:43.239> collection<01:18:43.679> ID<01:18:44.520> and
01:18:44.629 --> 01:18:44.639 align:start position:0%
going to have post collection ID and
01:18:44.639 --> 01:18:47.189 align:start position:0%
going to have post collection ID and
we're<01:18:44.760> going<01:18:44.840> to<01:18:45.080> have<01:18:45.400> a<01:18:45.639> user<01:18:46.360> collection<01:18:46.800> ID
01:18:47.189 --> 01:18:47.199 align:start position:0%
we're going to have a user collection ID
01:18:47.199 --> 01:18:50.430 align:start position:0%
we're going to have a user collection ID
as
01:18:50.430 --> 01:18:50.440 align:start position:0%
01:18:50.440 --> 01:18:53.750 align:start position:0%
well<01:18:51.440> so<01:18:51.679> for<01:18:51.880> the<01:18:52.080> Post<01:18:52.520> we<01:18:52.639> can<01:18:52.960> copy<01:18:53.239> it
01:18:53.750 --> 01:18:53.760 align:start position:0%
well so for the Post we can copy it
01:18:53.760 --> 01:18:57.110 align:start position:0%
well so for the Post we can copy it
right<01:18:54.080> here<01:18:54.679> don't<01:18:55.239> mistakenly<01:18:55.800> do<01:18:56.000> the<01:18:56.159> wrong
01:18:57.110 --> 01:18:57.120 align:start position:0%
right here don't mistakenly do the wrong
01:18:57.120 --> 01:19:00.709 align:start position:0%
right here don't mistakenly do the wrong
one<01:18:58.120> and<01:18:58.360> finally<01:18:58.880> we<01:18:59.000> can<01:18:59.120> do<01:18:59.280> the
01:19:00.709 --> 01:19:00.719 align:start position:0%
one and finally we can do the
01:19:00.719 --> 01:19:03.870 align:start position:0%
one and finally we can do the
users<01:19:01.719> there<01:19:01.880> we<01:19:02.120> go<01:19:02.960> so<01:19:03.280> now<01:19:03.480> we<01:19:03.600> have<01:19:03.760> the
01:19:03.870 --> 01:19:03.880 align:start position:0%
users there we go so now we have the
01:19:03.880 --> 01:19:08.270 align:start position:0%
users there we go so now we have the
ight<01:19:04.320> URL<01:19:05.000> the<01:19:05.199> project<01:19:05.560> ID<01:19:06.320> the<01:19:06.520> database<01:19:07.440> ID
01:19:08.270 --> 01:19:08.280 align:start position:0%
ight URL the project ID the database ID
01:19:08.280 --> 01:19:12.149 align:start position:0%
ight URL the project ID the database ID
storage<01:19:08.800> ID<01:19:09.719> user<01:19:10.120> collection<01:19:10.760> ID<01:19:11.760> post
01:19:12.149 --> 01:19:12.159 align:start position:0%
storage ID user collection ID post
01:19:12.159 --> 01:19:15.149 align:start position:0%
storage ID user collection ID post
collection<01:19:12.560> ID<01:19:13.320> and<01:19:13.480> the<01:19:13.639> saves<01:19:14.000> ID<01:19:14.840> in<01:19:15.000> case
01:19:15.149 --> 01:19:15.159 align:start position:0%
collection ID and the saves ID in case
01:19:15.159 --> 01:19:17.350 align:start position:0%
collection ID and the saves ID in case
you<01:19:15.280> didn't<01:19:15.560> copy<01:19:15.840> the<01:19:16.000> project<01:19:16.320> ID<01:19:16.600> before
01:19:17.350 --> 01:19:17.360 align:start position:0%
you didn't copy the project ID before
01:19:17.360 --> 01:19:19.750 align:start position:0%
you didn't copy the project ID before
it's<01:19:17.679> right<01:19:17.920> here<01:19:18.239> within<01:19:18.480> the<01:19:18.760> overview
01:19:19.750 --> 01:19:19.760 align:start position:0%
it's right here within the overview
01:19:19.760 --> 01:19:22.709 align:start position:0%
it's right here within the overview
database<01:19:20.480> is<01:19:20.800> right<01:19:21.080> here<01:19:21.679> storage<01:19:22.360> is<01:19:22.560> right
01:19:22.709 --> 01:19:22.719 align:start position:0%
database is right here storage is right
01:19:22.719 --> 01:19:25.470 align:start position:0%
database is right here storage is right
here<01:19:22.960> here<01:19:23.440> everything<01:19:23.800> is<01:19:24.000> so<01:19:24.320> easy<01:19:24.639> to
01:19:25.470 --> 01:19:25.480 align:start position:0%
here here everything is so easy to
01:19:25.480 --> 01:19:28.270 align:start position:0%
here here everything is so easy to
find<01:19:26.480> now<01:19:26.880> we<01:19:27.000> can<01:19:27.199> make<01:19:27.480> use<01:19:27.719> of<01:19:28.000> these
01:19:28.270 --> 01:19:28.280 align:start position:0%
find now we can make use of these
01:19:28.280 --> 01:19:30.510 align:start position:0%
find now we can make use of these
variables<01:19:29.159> by<01:19:29.320> going<01:19:29.719> back<01:19:30.000> not<01:19:30.199> to<01:19:30.360> our
01:19:30.510 --> 01:19:30.520 align:start position:0%
variables by going back not to our
01:19:30.520 --> 01:19:33.270 align:start position:0%
variables by going back not to our
signup<01:19:30.960> form<01:19:31.520> but<01:19:31.800> rather<01:19:32.040> to<01:19:32.199> our<01:19:32.440> config
01:19:33.270 --> 01:19:33.280 align:start position:0%
signup form but rather to our config
01:19:33.280 --> 01:19:35.470 align:start position:0%
signup form but rather to our config
right<01:19:33.520> here<01:19:34.159> we're<01:19:34.520> initializing<01:19:35.199> all<01:19:35.360> of
01:19:35.470 --> 01:19:35.480 align:start position:0%
right here we're initializing all of
01:19:35.480 --> 01:19:37.709 align:start position:0%
right here we're initializing all of
these<01:19:35.639> Services<01:19:36.199> here<01:19:36.840> but<01:19:37.040> we're<01:19:37.280> not<01:19:37.520> yet
01:19:37.709 --> 01:19:37.719 align:start position:0%
these Services here but we're not yet
01:19:37.719 --> 01:19:39.990 align:start position:0%
these Services here but we're not yet
properly<01:19:38.080> setting<01:19:38.400> them<01:19:38.600> up<01:19:39.360> and<01:19:39.520> we<01:19:39.639> can<01:19:39.760> do
01:19:39.990 --> 01:19:40.000 align:start position:0%
properly setting them up and we can do
01:19:40.000 --> 01:19:43.790 align:start position:0%
properly setting them up and we can do
that<01:19:40.520> by<01:19:40.760> having<01:19:41.040> the<01:19:41.239> URL<01:19:42.239> the<01:19:42.440> project<01:19:42.800> ID<01:19:43.639> we
01:19:43.790 --> 01:19:43.800 align:start position:0%
that by having the URL the project ID we
01:19:43.800 --> 01:19:47.110 align:start position:0%
that by having the URL the project ID we
also<01:19:44.080> need<01:19:44.360> a<01:19:44.600> database<01:19:45.600> ID<01:19:46.600> which<01:19:46.719> is<01:19:46.960> going
01:19:47.110 --> 01:19:47.120 align:start position:0%
also need a database ID which is going
01:19:47.120 --> 01:19:48.310 align:start position:0%
also need a database ID which is going
to<01:19:47.280> be
01:19:48.310 --> 01:19:48.320 align:start position:0%
to be
01:19:48.320 --> 01:19:56.149 align:start position:0%
to be
import.<01:19:49.320> meta<01:19:50.400> env.<01:19:51.840> vorea<01:19:52.920> _<01:19:53.920> database<01:19:55.000> ID<01:19:56.000> we
01:19:56.149 --> 01:19:56.159 align:start position:0%
import. meta env. vorea _ database ID we
01:19:56.159 --> 01:19:58.830 align:start position:0%
import. meta env. vorea _ database ID we
also<01:19:56.400> need<01:19:56.560> to<01:19:56.719> get<01:19:56.960> a<01:19:57.199> storage<01:19:57.880> ID<01:19:58.600> which<01:19:58.719> is
01:19:58.830 --> 01:19:58.840 align:start position:0%
also need to get a storage ID which is
01:19:58.840 --> 01:20:03.030 align:start position:0%
also need to get a storage ID which is
going<01:19:59.000> to<01:19:59.159> be<01:19:59.400> import.<01:20:00.400> meta<01:20:01.480> env.
01:20:03.030 --> 01:20:03.040 align:start position:0%
going to be import. meta env.
01:20:03.040 --> 01:20:05.590 align:start position:0%
going to be import. meta env.
vorea<01:20:04.080> rightor
01:20:05.590 --> 01:20:05.600 align:start position:0%
vorea rightor
01:20:05.600 --> 01:20:07.470 align:start position:0%
vorea rightor
storage
01:20:07.470 --> 01:20:07.480 align:start position:0%
storage
01:20:07.480 --> 01:20:09.870 align:start position:0%
storage
ID<01:20:08.480> we<01:20:08.639> also<01:20:09.080> have<01:20:09.199> to<01:20:09.360> have<01:20:09.520> all<01:20:09.719> the
01:20:09.870 --> 01:20:09.880 align:start position:0%
ID we also have to have all the
01:20:09.880 --> 01:20:12.149 align:start position:0%
ID we also have to have all the
collections<01:20:10.600> so<01:20:10.760> we<01:20:10.840> can<01:20:10.960> say<01:20:11.239> user
01:20:12.149 --> 01:20:12.159 align:start position:0%
collections so we can say user
01:20:12.159 --> 01:20:16.830 align:start position:0%
collections so we can say user
collection<01:20:13.120> ID<01:20:14.000> is<01:20:14.280> import.<01:20:15.280> meta
01:20:16.830 --> 01:20:16.840 align:start position:0%
collection ID is import. meta
01:20:16.840 --> 01:20:23.830 align:start position:0%
collection ID is import. meta
do.<01:20:18.320> vorea<01:20:19.360> rightor<01:20:20.480> user<01:20:21.760> collection<01:20:23.080> ID
01:20:23.830 --> 01:20:23.840 align:start position:0%
do. vorea rightor user collection ID
01:20:23.840 --> 01:20:27.470 align:start position:0%
do. vorea rightor user collection ID
post<01:20:24.719> collection<01:20:25.600> ID<01:20:26.400> is<01:20:26.560> going<01:20:26.719> to<01:20:26.920> be
01:20:27.470 --> 01:20:27.480 align:start position:0%
post collection ID is going to be
01:20:27.480 --> 01:20:34.070 align:start position:0%
post collection ID is going to be
import.<01:20:28.560> meta<01:20:29.880> env.<01:20:30.880> Vore<01:20:31.800> aight<01:20:32.440> _<01:20:33.080> postore
01:20:34.070 --> 01:20:34.080 align:start position:0%
import. meta env. Vore aight _ postore
01:20:34.080 --> 01:20:38.910 align:start position:0%
import. meta env. Vore aight _ postore
collection<01:20:35.000> _<01:20:35.639> ID<01:20:36.639> and<01:20:36.960> finally<01:20:37.880> saves
01:20:38.910 --> 01:20:38.920 align:start position:0%
collection _ ID and finally saves
01:20:38.920 --> 01:20:43.149 align:start position:0%
collection _ ID and finally saves
collection<01:20:40.280> ID<01:20:41.280> which<01:20:41.400> is<01:20:41.520> going<01:20:41.679> to<01:20:41.840> be
01:20:43.149 --> 01:20:43.159 align:start position:0%
collection ID which is going to be
01:20:43.159 --> 01:20:48.070 align:start position:0%
collection ID which is going to be
importa<01:20:44.400> env.<01:20:45.400> Vore<01:20:46.320> aprite<01:20:46.920> uncore<01:20:47.520> saves
01:20:48.070 --> 01:20:48.080 align:start position:0%
importa env. Vore aprite uncore saves
01:20:48.080 --> 01:20:49.149 align:start position:0%
importa env. Vore aprite uncore saves
uncore
01:20:49.149 --> 01:20:49.159 align:start position:0%
uncore
01:20:49.159 --> 01:20:53.110 align:start position:0%
uncore
collection<01:20:50.159> uncore<01:20:51.120> ID<01:20:52.120> and<01:20:52.360> with<01:20:52.520> that<01:20:53.000> we
01:20:53.110 --> 01:20:53.120 align:start position:0%
collection uncore ID and with that we
01:20:53.120 --> 01:20:54.790 align:start position:0%
collection uncore ID and with that we
have<01:20:53.400> everything<01:20:53.760> we<01:20:53.880> need<01:20:54.280> to<01:20:54.480> start
01:20:54.790 --> 01:20:54.800 align:start position:0%
have everything we need to start
01:20:54.800 --> 01:20:57.709 align:start position:0%
have everything we need to start
utilizing<01:20:55.719> these<01:20:55.960> services<01:20:56.880> that<01:20:57.120> aright
01:20:57.709 --> 01:20:57.719 align:start position:0%
utilizing these services that aright
01:20:57.719 --> 01:21:00.870 align:start position:0%
utilizing these services that aright
provides<01:20:58.120> out<01:20:58.239> of<01:20:58.400> the<01:20:58.840> box<01:20:59.840> so<01:21:00.280> back<01:21:00.480> in<01:21:00.679> our
01:21:00.870 --> 01:21:00.880 align:start position:0%
provides out of the box so back in our
01:21:00.880 --> 01:21:04.070 align:start position:0%
provides out of the box so back in our
code<01:21:01.440> we<01:21:01.560> can<01:21:01.880> exit<01:21:02.239> our<01:21:02.480> EnV<01:21:03.000> local<01:21:03.679> we<01:21:03.760> can
01:21:04.070 --> 01:21:04.080 align:start position:0%
code we can exit our EnV local we can
01:21:04.080 --> 01:21:07.510 align:start position:0%
code we can exit our EnV local we can
exit<01:21:04.440> our<01:21:04.679> config<01:21:05.239> as<01:21:05.440> well<01:21:06.120> and<01:21:06.520> before<01:21:07.080> we<01:21:07.239> go
01:21:07.510 --> 01:21:07.520 align:start position:0%
exit our config as well and before we go
01:21:07.520 --> 01:21:09.990 align:start position:0%
exit our config as well and before we go
into<01:21:07.800> our<01:21:07.960> signup<01:21:08.360> form<01:21:08.960> and<01:21:09.199> finalize<01:21:09.840> what
01:21:09.990 --> 01:21:10.000 align:start position:0%
into our signup form and finalize what
01:21:10.000 --> 01:21:11.790 align:start position:0%
into our signup form and finalize what
this<01:21:10.159> function<01:21:10.480> does<01:21:10.639> on<01:21:10.800> the<01:21:10.920> front<01:21:11.159> end
01:21:11.790 --> 01:21:11.800 align:start position:0%
this function does on the front end
01:21:11.800 --> 01:21:13.790 align:start position:0%
this function does on the front end
let's<01:21:12.040> go<01:21:12.199> ahead<01:21:12.520> and<01:21:12.719> implement<01:21:13.199> it<01:21:13.440> on<01:21:13.600> the
01:21:13.790 --> 01:21:13.800 align:start position:0%
let's go ahead and implement it on the
01:21:13.800 --> 01:21:16.709 align:start position:0%
let's go ahead and implement it on the
back<01:21:14.000> end<01:21:14.520> or<01:21:14.840> rather<01:21:15.440> let's<01:21:15.719> utilize<01:21:16.320> all<01:21:16.520> of
01:21:16.709 --> 01:21:16.719 align:start position:0%
back end or rather let's utilize all of
01:21:16.719 --> 01:21:19.870 align:start position:0%
back end or rather let's utilize all of
these<01:21:16.920> services<01:21:17.639> that<01:21:17.800> aite<01:21:18.600> provides<01:21:19.600> so<01:21:19.760> I'm
01:21:19.870 --> 01:21:19.880 align:start position:0%
these services that aite provides so I'm
01:21:19.880 --> 01:21:22.430 align:start position:0%
these services that aite provides so I'm
going<01:21:20.040> to<01:21:20.280> add<01:21:20.520> aight<01:21:21.080> right<01:21:21.239> here<01:21:21.400> to<01:21:21.560> the<01:21:21.760> top
01:21:22.430 --> 01:21:22.440 align:start position:0%
going to add aight right here to the top
01:21:22.440 --> 01:21:24.750 align:start position:0%
going to add aight right here to the top
and<01:21:22.760> and<01:21:22.920> I'm<01:21:23.080> going<01:21:23.280> to<01:21:23.639> pin<01:21:23.880> it<01:21:24.400> this<01:21:24.480> is<01:21:24.600> a
01:21:24.750 --> 01:21:24.760 align:start position:0%
and and I'm going to pin it this is a
01:21:24.760 --> 01:21:26.390 align:start position:0%
and and I'm going to pin it this is a
cool<01:21:25.000> Chrome<01:21:25.360> feature<01:21:25.880> you<01:21:25.960> can<01:21:26.199> have
01:21:26.390 --> 01:21:26.400 align:start position:0%
cool Chrome feature you can have
01:21:26.400 --> 01:21:28.669 align:start position:0%
cool Chrome feature you can have
something<01:21:26.800> pinned<01:21:27.520> now<01:21:27.840> with<01:21:28.040> that<01:21:28.239> done
01:21:28.669 --> 01:21:28.679 align:start position:0%
something pinned now with that done
01:21:28.679 --> 01:21:32.149 align:start position:0%
something pinned now with that done
let's<01:21:28.920> go<01:21:29.040> ahead<01:21:29.400> and<01:21:29.600> go<01:21:29.840> into<01:21:30.120> the<01:21:30.320> aite<01:21:31.159> API
01:21:32.149 --> 01:21:32.159 align:start position:0%
let's go ahead and go into the aite API
01:21:32.159 --> 01:21:35.189 align:start position:0%
let's go ahead and go into the aite API
and<01:21:32.560> so<01:21:32.880> far<01:21:33.480> we<01:21:33.639> have<01:21:33.920> only<01:21:34.360> created<01:21:34.960> an
01:21:35.189 --> 01:21:35.199 align:start position:0%
and so far we have only created an
01:21:35.199 --> 01:21:38.030 align:start position:0%
and so far we have only created an
account<01:21:35.960> which<01:21:36.159> then<01:21:36.400> added<01:21:36.760> it<01:21:37.360> right<01:21:37.600> here
01:21:38.030 --> 01:21:38.040 align:start position:0%
account which then added it right here
01:21:38.040 --> 01:21:41.669 align:start position:0%
account which then added it right here
to<01:21:38.239> our<01:21:38.560> a<01:21:39.520> but<01:21:39.880> that's<01:21:40.120> not<01:21:40.360> enough<01:21:41.040> our<01:21:41.280> user
01:21:41.669 --> 01:21:41.679 align:start position:0%
to our a but that's not enough our user
01:21:41.679 --> 01:21:43.510 align:start position:0%
to our a but that's not enough our user
has<01:21:41.840> to<01:21:42.000> have<01:21:42.159> relations<01:21:42.639> to<01:21:42.840> the<01:21:43.000> post<01:21:43.320> it
01:21:43.510 --> 01:21:43.520 align:start position:0%
has to have relations to the post it
01:21:43.520 --> 01:21:45.750 align:start position:0%
has to have relations to the post it
creates<01:21:44.360> which<01:21:44.560> means<01:21:45.040> that<01:21:45.199> we<01:21:45.280> need<01:21:45.440> to<01:21:45.600> have
01:21:45.750 --> 01:21:45.760 align:start position:0%
creates which means that we need to have
01:21:45.760 --> 01:21:48.830 align:start position:0%
creates which means that we need to have
it<01:21:46.040> in<01:21:46.239> our<01:21:46.600> database<01:21:47.600> so<01:21:48.199> right<01:21:48.400> now<01:21:48.639> within
01:21:48.830 --> 01:21:48.840 align:start position:0%
it in our database so right now within
01:21:48.840 --> 01:21:52.310 align:start position:0%
it in our database so right now within
our<01:21:49.080> database<01:21:49.800> we<01:21:50.040> don't<01:21:50.360> yet<01:21:50.719> have<01:21:51.040> a<01:21:51.280> user<01:21:52.040> so
01:21:52.310 --> 01:21:52.320 align:start position:0%
our database we don't yet have a user so
01:21:52.320 --> 01:21:54.430 align:start position:0%
our database we don't yet have a user so
that's<01:21:52.679> going<01:21:52.800> to<01:21:52.880> be<01:21:53.000> our<01:21:53.159> next<01:21:53.440> goal<01:21:54.000> to<01:21:54.280> add
01:21:54.430 --> 01:21:54.440 align:start position:0%
that's going to be our next goal to add
01:21:54.440 --> 01:21:57.070 align:start position:0%
that's going to be our next goal to add
a<01:21:54.600> user<01:21:54.880> to<01:21:55.040> our<01:21:55.280> off<01:21:55.840> but<01:21:56.040> also<01:21:56.280> to<01:21:56.480> create<01:21:56.960> the
01:21:57.070 --> 01:21:57.080 align:start position:0%
a user to our off but also to create the
01:21:57.080 --> 01:22:00.310 align:start position:0%
a user to our off but also to create the
user's<01:21:57.600> document<01:21:58.199> in<01:21:58.320> the<01:21:58.760> database<01:21:59.760> so<01:22:00.159> how
01:22:00.310 --> 01:22:00.320 align:start position:0%
user's document in the database so how
01:22:00.320 --> 01:22:02.590 align:start position:0%
user's document in the database so how
are<01:22:00.440> we<01:22:00.600> going<01:22:00.760> to<01:22:00.920> do<01:22:01.080> it<01:22:01.719> well<01:22:02.080> let<01:22:02.199> me<01:22:02.360> show
01:22:02.590 --> 01:22:02.600 align:start position:0%
are we going to do it well let me show
01:22:02.600 --> 01:22:05.229 align:start position:0%
are we going to do it well let me show
you<01:22:03.400> we<01:22:03.520> can<01:22:03.719> go<01:22:04.000> right<01:22:04.199> here<01:22:04.440> below<01:22:04.800> create
01:22:05.229 --> 01:22:05.239 align:start position:0%
you we can go right here below create
01:22:05.239 --> 01:22:07.550 align:start position:0%
you we can go right here below create
account<01:22:05.880> and<01:22:06.040> we<01:22:06.120> can<01:22:06.320> check<01:22:06.920> if<01:22:07.120> we<01:22:07.320> get
01:22:07.550 --> 01:22:07.560 align:start position:0%
account and we can check if we get
01:22:07.560 --> 01:22:10.229 align:start position:0%
account and we can check if we get
anything<01:22:07.960> back<01:22:08.159> from<01:22:08.360> it<01:22:08.960> and<01:22:09.239> if<01:22:09.400> we<01:22:09.600> don't<01:22:10.040> so
01:22:10.229 --> 01:22:10.239 align:start position:0%
anything back from it and if we don't so
01:22:10.239 --> 01:22:13.390 align:start position:0%
anything back from it and if we don't so
if<01:22:10.360> there's<01:22:10.679> no<01:22:11.239> new<01:22:11.679> account<01:22:12.600> in<01:22:12.840> that<01:22:13.080> case
01:22:13.390 --> 01:22:13.400 align:start position:0%
if there's no new account in that case
01:22:13.400 --> 01:22:16.110 align:start position:0%
if there's no new account in that case
we<01:22:13.520> want<01:22:13.679> to<01:22:13.840> throw<01:22:14.360> a<01:22:14.560> new<01:22:14.880> error<01:22:15.719> we<01:22:15.800> can<01:22:15.960> do
01:22:16.110 --> 01:22:16.120 align:start position:0%
we want to throw a new error we can do
01:22:16.120 --> 01:22:20.590 align:start position:0%
we want to throw a new error we can do
it<01:22:16.360> just<01:22:16.760> like<01:22:16.960> so<01:22:17.600> throw<01:22:18.800> error<01:22:19.800> then<01:22:20.199> moving
01:22:20.590 --> 01:22:20.600 align:start position:0%
it just like so throw error then moving
01:22:20.600 --> 01:22:23.590 align:start position:0%
it just like so throw error then moving
down<01:22:21.040> we<01:22:21.120> can<01:22:21.320> create<01:22:21.639> a<01:22:21.840> new<01:22:22.199> Avatar<01:22:22.800> URL<01:22:23.440> by
01:22:23.590 --> 01:22:23.600 align:start position:0%
down we can create a new Avatar URL by
01:22:23.600 --> 01:22:27.590 align:start position:0%
down we can create a new Avatar URL by
saying<01:22:23.960> const<01:22:24.679> Avatar<01:22:25.280> URL<01:22:26.159> is<01:22:26.400> equal<01:22:26.719> to
01:22:27.590 --> 01:22:27.600 align:start position:0%
saying const Avatar URL is equal to
01:22:27.600 --> 01:22:30.350 align:start position:0%
saying const Avatar URL is equal to
avatars<01:22:28.600> do<01:22:29.239> get
01:22:30.350 --> 01:22:30.360 align:start position:0%
avatars do get
01:22:30.360 --> 01:22:32.669 align:start position:0%
avatars do get
initials<01:22:31.360> now<01:22:31.639> where<01:22:31.800> are<01:22:31.920> we<01:22:32.080> getting<01:22:32.400> these
01:22:32.669 --> 01:22:32.679 align:start position:0%
initials now where are we getting these
01:22:32.679 --> 01:22:35.229 align:start position:0%
initials now where are we getting these
avatars<01:22:33.280> from<01:22:34.159> well<01:22:34.560> that's<01:22:34.800> something<01:22:35.120> we
01:22:35.229 --> 01:22:35.239 align:start position:0%
avatars from well that's something we
01:22:35.239 --> 01:22:37.350 align:start position:0%
avatars from well that's something we
have<01:22:35.360> to<01:22:35.560> import<01:22:35.960> from<01:22:36.239> aight<01:22:36.920> so<01:22:37.080> you<01:22:37.159> can
01:22:37.350 --> 01:22:37.360 align:start position:0%
have to import from aight so you can
01:22:37.360 --> 01:22:39.470 align:start position:0%
have to import from aight so you can
double<01:22:37.679> click<01:22:37.880> it<01:22:38.199> press<01:22:38.440> control<01:22:38.920> space<01:22:39.360> and
01:22:39.470 --> 01:22:39.480 align:start position:0%
double click it press control space and
01:22:39.480 --> 01:22:42.390 align:start position:0%
double click it press control space and
then<01:22:39.760> import<01:22:40.120> from<01:22:40.440> that/<01:22:41.199> config<01:22:42.120> if<01:22:42.239> you
01:22:42.390 --> 01:22:42.400 align:start position:0%
then import from that/ config if you
01:22:42.400 --> 01:22:44.229 align:start position:0%
then import from that/ config if you
remember<01:22:43.159> this<01:22:43.280> is<01:22:43.400> going<01:22:43.560> to<01:22:43.679> be<01:22:43.880> one<01:22:44.040> of
01:22:44.229 --> 01:22:44.239 align:start position:0%
remember this is going to be one of
01:22:44.239 --> 01:22:47.070 align:start position:0%
remember this is going to be one of
these<01:22:44.440> services<01:22:45.239> that<01:22:45.600> aight<01:22:46.120> provides
01:22:47.070 --> 01:22:47.080 align:start position:0%
these services that aight provides
01:22:47.080 --> 01:22:51.030 align:start position:0%
these services that aight provides
account<01:22:47.800> databases<01:22:48.760> storage<01:22:49.560> avatars<01:22:50.440> and
01:22:51.030 --> 01:22:51.040 align:start position:0%
account databases storage avatars and
01:22:51.040 --> 01:22:54.110 align:start position:0%
account databases storage avatars and
client<01:22:52.040> so<01:22:52.239> now<01:22:52.360> we're<01:22:52.560> we're<01:22:52.679> using<01:22:53.120> avatar.
01:22:54.110 --> 01:22:54.120 align:start position:0%
client so now we're we're using avatar.
01:22:54.120 --> 01:22:55.950 align:start position:0%
client so now we're we're using avatar.
get<01:22:54.400> initials<01:22:55.199> and<01:22:55.320> we<01:22:55.440> want<01:22:55.520> to<01:22:55.679> get<01:22:55.840> the
01:22:55.950 --> 01:22:55.960 align:start position:0%
get initials and we want to get the
01:22:55.960 --> 01:22:59.510 align:start position:0%
get initials and we want to get the
initials<01:22:56.440> from<01:22:56.679> user.name<01:22:58.040> once<01:22:59.040> we<01:22:59.199> have<01:22:59.360> the
01:22:59.510 --> 01:22:59.520 align:start position:0%
initials from user.name once we have the
01:22:59.520 --> 01:23:03.110 align:start position:0%
initials from user.name once we have the
Avatar<01:22:59.960> URL<01:23:00.840> we<01:23:00.920> can<01:23:01.120> create<01:23:01.560> a<01:23:01.760> new<01:23:02.000> user<01:23:02.920> but
01:23:03.110 --> 01:23:03.120 align:start position:0%
Avatar URL we can create a new user but
01:23:03.120 --> 01:23:05.470 align:start position:0%
Avatar URL we can create a new user but
this<01:23:03.320> time<01:23:03.600> not<01:23:03.800> a<01:23:03.960> new<01:23:04.199> account<01:23:04.880> rather<01:23:05.239> a
01:23:05.470 --> 01:23:05.480 align:start position:0%
this time not a new account rather a
01:23:05.480 --> 01:23:07.990 align:start position:0%
this time not a new account rather a
complete<01:23:06.000> new<01:23:06.280> user<01:23:06.719> in<01:23:06.880> the<01:23:07.080> database<01:23:07.840> by
01:23:07.990 --> 01:23:08.000 align:start position:0%
complete new user in the database by
01:23:08.000 --> 01:23:14.070 align:start position:0%
complete new user in the database by
saying<01:23:08.360> a<01:23:09.000> wait<01:23:10.000> save<01:23:10.840> user<01:23:11.600> to<01:23:12.400> DB<01:23:13.400> just<01:23:13.800> like
01:23:14.070 --> 01:23:14.080 align:start position:0%
saying a wait save user to DB just like
01:23:14.080 --> 01:23:16.950 align:start position:0%
saying a wait save user to DB just like
so<01:23:14.800> but<01:23:14.960> the<01:23:15.080> main<01:23:15.400> question<01:23:15.719> is<01:23:16.199> where<01:23:16.679> is
01:23:16.950 --> 01:23:16.960 align:start position:0%
so but the main question is where is
01:23:16.960 --> 01:23:20.070 align:start position:0%
so but the main question is where is
this<01:23:17.199> function<01:23:17.600> coming<01:23:18.360> from<01:23:19.360> and<01:23:19.520> the<01:23:19.719> answer
01:23:20.070 --> 01:23:20.080 align:start position:0%
this function coming from and the answer
01:23:20.080 --> 01:23:22.550 align:start position:0%
this function coming from and the answer
is<01:23:20.800> it's<01:23:20.960> a<01:23:21.159> function<01:23:21.760> that<01:23:21.880> we<01:23:21.960> are<01:23:22.080> going<01:23:22.199> to
01:23:22.550 --> 01:23:22.560 align:start position:0%
is it's a function that we are going to
01:23:22.560 --> 01:23:25.750 align:start position:0%
is it's a function that we are going to
Define<01:23:23.000> our<01:23:23.239> cells<01:23:24.239> so<01:23:24.600> right<01:23:24.840> below<01:23:25.520> this
01:23:25.750 --> 01:23:25.760 align:start position:0%
Define our cells so right below this
01:23:25.760 --> 01:23:27.990 align:start position:0%
Define our cells so right below this
function<01:23:26.159> create<01:23:26.480> new<01:23:26.679> user<01:23:27.239> we<01:23:27.320> can<01:23:27.480> create<01:23:27.800> a
01:23:27.990 --> 01:23:28.000 align:start position:0%
function create new user we can create a
01:23:28.000 --> 01:23:33.750 align:start position:0%
function create new user we can create a
new<01:23:28.480> function<01:23:29.480> export<01:23:30.600> async<01:23:31.960> function<01:23:32.960> save
01:23:33.750 --> 01:23:33.760 align:start position:0%
new function export async function save
01:23:33.760 --> 01:23:37.590 align:start position:0%
new function export async function save
user<01:23:34.560> to<01:23:35.400> DB<01:23:36.400> this<01:23:36.600> function<01:23:37.080> is<01:23:37.199> going<01:23:37.400> to
01:23:37.590 --> 01:23:37.600 align:start position:0%
user to DB this function is going to
01:23:37.600 --> 01:23:40.350 align:start position:0%
user to DB this function is going to
accept<01:23:37.920> the<01:23:38.080> user<01:23:38.800> as<01:23:38.920> a<01:23:39.120> parameter<01:23:40.080> and<01:23:40.239> we
01:23:40.350 --> 01:23:40.360 align:start position:0%
accept the user as a parameter and we
01:23:40.360 --> 01:23:42.470 align:start position:0%
accept the user as a parameter and we
can<01:23:40.520> immediately<01:23:41.040> destructure<01:23:42.000> some<01:23:42.159> of<01:23:42.280> the
01:23:42.470 --> 01:23:42.480 align:start position:0%
can immediately destructure some of the
01:23:42.480 --> 01:23:45.229 align:start position:0%
can immediately destructure some of the
values<01:23:43.000> from<01:23:43.199> that<01:23:43.440> user<01:23:44.320> and<01:23:44.480> then<01:23:44.679> open<01:23:44.920> up<01:23:45.080> a
01:23:45.229 --> 01:23:45.239 align:start position:0%
values from that user and then open up a
01:23:45.239 --> 01:23:48.070 align:start position:0%
values from that user and then open up a
new<01:23:45.440> function<01:23:46.000> block<01:23:47.000> we<01:23:47.120> can<01:23:47.320> destructure
01:23:48.070 --> 01:23:48.080 align:start position:0%
new function block we can destructure
01:23:48.080 --> 01:23:49.390 align:start position:0%
new function block we can destructure
the<01:23:48.280> account
01:23:49.390 --> 01:23:49.400 align:start position:0%
the account
01:23:49.400 --> 01:23:52.590 align:start position:0%
the account
ID<01:23:50.400> which<01:23:50.520> is<01:23:50.639> going<01:23:50.800> to<01:23:50.920> be<01:23:51.040> of<01:23:51.199> a<01:23:51.400> type<01:23:51.639> string
01:23:52.590 --> 01:23:52.600 align:start position:0%
ID which is going to be of a type string
01:23:52.600 --> 01:23:54.910 align:start position:0%
ID which is going to be of a type string
we<01:23:52.719> can<01:23:52.880> destructure<01:23:53.560> the<01:23:53.760> email<01:23:54.639> which<01:23:54.800> is
01:23:54.910 --> 01:23:54.920 align:start position:0%
we can destructure the email which is
01:23:54.920 --> 01:23:56.870 align:start position:0%
we can destructure the email which is
going<01:23:55.040> to<01:23:55.159> be<01:23:55.280> of<01:23:55.360> a<01:23:55.520> type<01:23:55.719> string<01:23:56.040> as<01:23:56.199> well<01:23:56.760> we
01:23:56.870 --> 01:23:56.880 align:start position:0%
going to be of a type string as well we
01:23:56.880 --> 01:23:58.709 align:start position:0%
going to be of a type string as well we
can<01:23:57.040> destructure<01:23:57.639> the<01:23:57.800> name<01:23:58.120> of<01:23:58.280> a<01:23:58.480> type
01:23:58.709 --> 01:23:58.719 align:start position:0%
can destructure the name of a type
01:23:58.719 --> 01:24:01.590 align:start position:0%
can destructure the name of a type
string<01:23:59.440> we<01:23:59.520> can<01:23:59.719> destructure<01:24:00.440> the<01:24:00.600> image<01:24:00.880> URL
01:24:01.590 --> 01:24:01.600 align:start position:0%
string we can destructure the image URL
01:24:01.600 --> 01:24:04.270 align:start position:0%
string we can destructure the image URL
of<01:24:01.800> a<01:24:01.960> type<01:24:02.199> URL<01:24:03.080> and<01:24:03.159> we<01:24:03.280> can<01:24:03.440> destructure<01:24:04.120> the
01:24:04.270 --> 01:24:04.280 align:start position:0%
of a type URL and we can destructure the
01:24:04.280 --> 01:24:07.229 align:start position:0%
of a type URL and we can destructure the
username<01:24:05.239> which<01:24:05.360> is<01:24:05.520> going<01:24:05.679> to<01:24:05.840> be<01:24:06.239> optional
01:24:07.229 --> 01:24:07.239 align:start position:0%
username which is going to be optional
01:24:07.239 --> 01:24:09.229 align:start position:0%
username which is going to be optional
and<01:24:07.360> it's<01:24:07.520> going<01:24:07.639> to<01:24:07.760> be<01:24:07.880> of<01:24:08.040> a<01:24:08.199> type<01:24:08.400> string<01:24:09.040> as
01:24:09.229 --> 01:24:09.239 align:start position:0%
and it's going to be of a type string as
01:24:09.239 --> 01:24:11.149 align:start position:0%
and it's going to be of a type string as
well<01:24:10.000> and<01:24:10.159> how<01:24:10.280> do<01:24:10.400> we<01:24:10.520> know<01:24:10.679> we're<01:24:10.880> getting
01:24:11.149 --> 01:24:11.159 align:start position:0%
well and how do we know we're getting
01:24:11.159 --> 01:24:13.870 align:start position:0%
well and how do we know we're getting
this<01:24:11.920> well<01:24:12.199> we<01:24:12.320> can<01:24:12.600> pass<01:24:12.800> it<01:24:13.280> right<01:24:13.480> here<01:24:13.760> when
01:24:13.870 --> 01:24:13.880 align:start position:0%
this well we can pass it right here when
01:24:13.880 --> 01:24:16.270 align:start position:0%
this well we can pass it right here when
we<01:24:14.040> call<01:24:14.400> that<01:24:14.600> function<01:24:15.560> we<01:24:15.679> can<01:24:15.880> pass<01:24:16.040> an
01:24:16.270 --> 01:24:16.280 align:start position:0%
we call that function we can pass an
01:24:16.280 --> 01:24:18.550 align:start position:0%
we call that function we can pass an
object<01:24:16.960> that's<01:24:17.199> going<01:24:17.360> to<01:24:17.600> have<01:24:17.920> all<01:24:18.080> of<01:24:18.280> these
01:24:18.550 --> 01:24:18.560 align:start position:0%
object that's going to have all of these
01:24:18.560 --> 01:24:22.030 align:start position:0%
object that's going to have all of these
properties<01:24:19.560> an<01:24:19.760> account<01:24:20.120> ID<01:24:20.840> equal<01:24:21.199> to<01:24:21.760> new
01:24:22.030 --> 01:24:22.040 align:start position:0%
properties an account ID equal to new
01:24:22.040 --> 01:24:24.510 align:start position:0%
properties an account ID equal to new
account
01:24:24.510 --> 01:24:24.520 align:start position:0%
01:24:24.520 --> 01:24:27.669 align:start position:0%
and<01:24:24.679> then<01:24:25.080> dot<01:24:25.880> dollar<01:24:26.320> sign<01:24:26.639> ID<01:24:27.320> that's<01:24:27.480> how
01:24:27.669 --> 01:24:27.679 align:start position:0%
and then dot dollar sign ID that's how
01:24:27.679 --> 01:24:30.590 align:start position:0%
and then dot dollar sign ID that's how
app<01:24:27.960> write<01:24:28.120> stores<01:24:28.520> IDs<01:24:29.400> we<01:24:29.520> can<01:24:29.719> pass<01:24:29.880> a<01:24:30.080> name
01:24:30.590 --> 01:24:30.600 align:start position:0%
app write stores IDs we can pass a name
01:24:30.600 --> 01:24:32.629 align:start position:0%
app write stores IDs we can pass a name
equal<01:24:30.920> to<01:24:31.239> new
01:24:32.629 --> 01:24:32.639 align:start position:0%
equal to new
01:24:32.639 --> 01:24:36.110 align:start position:0%
equal to new
account.<01:24:33.639> name<01:24:34.440> we<01:24:34.560> can<01:24:34.760> pass<01:24:34.960> an<01:24:35.159> email<01:24:35.800> equal
01:24:36.110 --> 01:24:36.120 align:start position:0%
account. name we can pass an email equal
01:24:36.120 --> 01:24:39.709 align:start position:0%
account. name we can pass an email equal
to<01:24:36.280> new<01:24:37.040> account.<01:24:38.040> email<01:24:38.840> we<01:24:38.960> can<01:24:39.199> pass<01:24:39.360> a
01:24:39.709 --> 01:24:39.719 align:start position:0%
to new account. email we can pass a
01:24:39.719 --> 01:24:43.910 align:start position:0%
to new account. email we can pass a
username<01:24:40.719> equal<01:24:41.040> to<01:24:41.239> new<01:24:41.679> account.<01:24:42.920> username
01:24:43.910 --> 01:24:43.920 align:start position:0%
username equal to new account. username
01:24:43.920 --> 01:24:46.109 align:start position:0%
username equal to new account. username
or<01:24:44.280> rather<01:24:44.800> this<01:24:44.960> username<01:24:45.440> is<01:24:45.600> not<01:24:45.800> going<01:24:45.960> to
01:24:46.109 --> 01:24:46.119 align:start position:0%
or rather this username is not going to
01:24:46.119 --> 01:24:48.310 align:start position:0%
or rather this username is not going to
be<01:24:46.400> within<01:24:46.639> a<01:24:46.800> new<01:24:47.040> account<01:24:47.920> because<01:24:48.119> we're
01:24:48.310 --> 01:24:48.320 align:start position:0%
be within a new account because we're
01:24:48.320 --> 01:24:50.430 align:start position:0%
be within a new account because we're
not<01:24:48.560> passing<01:24:48.880> it<01:24:49.040> initially<01:24:49.840> but<01:24:50.040> we<01:24:50.159> are
01:24:50.430 --> 01:24:50.440 align:start position:0%
not passing it initially but we are
01:24:50.440 --> 01:24:52.350 align:start position:0%
not passing it initially but we are
passing<01:24:50.760> it<01:24:51.000> right<01:24:51.199> here<01:24:51.600> when<01:24:51.840> saving<01:24:52.159> the
01:24:52.350 --> 01:24:52.360 align:start position:0%
passing it right here when saving the
01:24:52.360 --> 01:24:54.590 align:start position:0%
passing it right here when saving the
user<01:24:52.560> in<01:24:52.639> the<01:24:52.840> database<01:24:53.840> and<01:24:54.000> that's<01:24:54.239> coming
01:24:54.590 --> 01:24:54.600 align:start position:0%
user in the database and that's coming
01:24:54.600 --> 01:24:57.070 align:start position:0%
user in the database and that's coming
from<01:24:54.880> our<01:24:55.080> form<01:24:55.679> we<01:24:55.880> have<01:24:56.040> a<01:24:56.159> field<01:24:56.760> here
01:24:57.070 --> 01:24:57.080 align:start position:0%
from our form we have a field here
01:24:57.080 --> 01:25:00.109 align:start position:0%
from our form we have a field here
called<01:24:57.520> username<01:24:58.520> so<01:24:58.960> instead<01:24:59.880> we're<01:25:00.040> going
01:25:00.109 --> 01:25:00.119 align:start position:0%
called username so instead we're going
01:25:00.119 --> 01:25:02.149 align:start position:0%
called username so instead we're going
to<01:25:00.360> say
01:25:02.149 --> 01:25:02.159 align:start position:0%
to say
01:25:02.159 --> 01:25:04.830 align:start position:0%
to say
user.
01:25:04.830 --> 01:25:04.840 align:start position:0%
user.
01:25:04.840 --> 01:25:07.270 align:start position:0%
user.
username<01:25:05.840> and<01:25:06.080> finally<01:25:06.440> we<01:25:06.560> need<01:25:06.679> to<01:25:06.880> pass<01:25:07.119> the
01:25:07.270 --> 01:25:07.280 align:start position:0%
username and finally we need to pass the
01:25:07.280 --> 01:25:10.709 align:start position:0%
username and finally we need to pass the
image<01:25:07.560> URL<01:25:08.360> of<01:25:08.560> a<01:25:08.760> type<01:25:09.159> Avatar<01:25:09.760> URL<01:25:10.560> which
01:25:10.709 --> 01:25:10.719 align:start position:0%
image URL of a type Avatar URL which
01:25:10.719 --> 01:25:13.790 align:start position:0%
image URL of a type Avatar URL which
we're<01:25:10.920> also<01:25:11.320> passing<01:25:12.239> above<01:25:13.239> now<01:25:13.400> we<01:25:13.560> have
01:25:13.790 --> 01:25:13.800 align:start position:0%
we're also passing above now we have
01:25:13.800 --> 01:25:16.590 align:start position:0%
we're also passing above now we have
this<01:25:13.960> new<01:25:14.400> user<01:25:15.400> which<01:25:15.560> is<01:25:15.760> equal<01:25:16.040> to<01:25:16.480> the
01:25:16.590 --> 01:25:16.600 align:start position:0%
this new user which is equal to the
01:25:16.600 --> 01:25:19.430 align:start position:0%
this new user which is equal to the
function<01:25:16.960> call<01:25:17.360> of<01:25:17.520> our<01:25:17.719> save<01:25:18.000> user<01:25:18.280> to<01:25:18.440> DB<01:25:19.280> and
01:25:19.430 --> 01:25:19.440 align:start position:0%
function call of our save user to DB and
01:25:19.440 --> 01:25:21.470 align:start position:0%
function call of our save user to DB and
then<01:25:19.679> instead<01:25:19.920> of<01:25:20.040> returning<01:25:20.400> a<01:25:20.560> new<01:25:20.800> account
01:25:21.470 --> 01:25:21.480 align:start position:0%
then instead of returning a new account
01:25:21.480 --> 01:25:24.910 align:start position:0%
then instead of returning a new account
we<01:25:21.600> can<01:25:21.920> return<01:25:22.360> a<01:25:22.560> new<01:25:23.080> user<01:25:24.080> which<01:25:24.239> means
01:25:24.910 --> 01:25:24.920 align:start position:0%
we can return a new user which means
01:25:24.920 --> 01:25:27.470 align:start position:0%
we can return a new user which means
that<01:25:25.119> our<01:25:25.440> create<01:25:26.000> user<01:25:26.400> account<01:25:26.760> function<01:25:27.280> is
01:25:27.470 --> 01:25:27.480 align:start position:0%
that our create user account function is
01:25:27.480 --> 01:25:30.629 align:start position:0%
that our create user account function is
now<01:25:27.760> done<01:25:28.560> but<01:25:28.760> of<01:25:28.920> course<01:25:29.400> it's<01:25:29.679> dependent<01:25:30.440> on
01:25:30.629 --> 01:25:30.639 align:start position:0%
now done but of course it's dependent on
01:25:30.639 --> 01:25:33.750 align:start position:0%
now done but of course it's dependent on
the<01:25:30.880> save<01:25:31.360> user<01:25:31.760> to<01:25:32.000> DB<01:25:32.520> function<01:25:33.320> so<01:25:33.520> let's
01:25:33.750 --> 01:25:33.760 align:start position:0%
the save user to DB function so let's
01:25:33.760 --> 01:25:35.910 align:start position:0%
the save user to DB function so let's
collapse<01:25:34.280> this<01:25:34.679> and<01:25:34.880> let's<01:25:35.119> focus<01:25:35.560> on<01:25:35.760> the
01:25:35.910 --> 01:25:35.920 align:start position:0%
collapse this and let's focus on the
01:25:35.920 --> 01:25:39.470 align:start position:0%
collapse this and let's focus on the
save<01:25:36.280> user<01:25:36.560> to<01:25:36.920> DB<01:25:37.920> remember<01:25:38.679> above<01:25:39.159> we're
01:25:39.470 --> 01:25:39.480 align:start position:0%
save user to DB remember above we're
01:25:39.480 --> 01:25:42.070 align:start position:0%
save user to DB remember above we're
only<01:25:39.840> using<01:25:40.239> the<01:25:40.440> O<01:25:41.000> functionalities<01:25:41.920> where
01:25:42.070 --> 01:25:42.080 align:start position:0%
only using the O functionalities where
01:25:42.080 --> 01:25:44.149 align:start position:0%
only using the O functionalities where
we're<01:25:42.239> doing<01:25:42.520> authentication<01:25:43.520> but<01:25:43.719> now<01:25:44.040> we
01:25:44.149 --> 01:25:44.159 align:start position:0%
we're doing authentication but now we
01:25:44.159 --> 01:25:46.430 align:start position:0%
we're doing authentication but now we
want<01:25:44.280> to<01:25:44.440> save<01:25:44.679> it<01:25:45.280> so<01:25:45.480> for<01:25:45.679> the<01:25:45.840> first<01:25:46.080> time<01:25:46.239> in
01:25:46.430 --> 01:25:46.440 align:start position:0%
want to save it so for the first time in
01:25:46.440 --> 01:25:48.990 align:start position:0%
want to save it so for the first time in
this<01:25:46.679> app<01:25:46.960> we're<01:25:47.119> going<01:25:47.280> to<01:25:47.520> save<01:25:47.920> a<01:25:48.199> document
01:25:48.990 --> 01:25:49.000 align:start position:0%
this app we're going to save a document
01:25:49.000 --> 01:25:51.910 align:start position:0%
this app we're going to save a document
to<01:25:49.360> app<01:25:49.679> right<01:25:50.080> database<01:25:51.080> let's<01:25:51.320> open<01:25:51.560> up<01:25:51.760> a
01:25:51.910 --> 01:25:51.920 align:start position:0%
to app right database let's open up a
01:25:51.920 --> 01:25:55.109 align:start position:0%
to app right database let's open up a
new<01:25:52.360> try<01:25:52.639> and<01:25:52.960> catch<01:25:53.280> Block<01:25:54.280> in<01:25:54.400> the<01:25:54.560> error<01:25:55.040> we
01:25:55.109 --> 01:25:55.119 align:start position:0%
new try and catch Block in the error we
01:25:55.119 --> 01:25:58.390 align:start position:0%
new try and catch Block in the error we
can<01:25:55.320> simply<01:25:55.880> console.log<01:25:56.880> the
01:25:58.390 --> 01:25:58.400 align:start position:0%
can simply console.log the
01:25:58.400 --> 01:26:02.149 align:start position:0%
can simply console.log the
error<01:25:59.400> in<01:25:59.560> the<01:25:59.719> try<01:26:00.400> we<01:26:00.480> can<01:26:00.639> say<01:26:00.920> const<01:26:01.880> new
01:26:02.149 --> 01:26:02.159 align:start position:0%
error in the try we can say const new
01:26:02.159 --> 01:26:06.390 align:start position:0%
error in the try we can say const new
user<01:26:03.159> is<01:26:03.440> equal<01:26:03.760> to<01:26:04.440> await
01:26:06.390 --> 01:26:06.400 align:start position:0%
user is equal to await
01:26:06.400 --> 01:26:10.430 align:start position:0%
user is equal to await
databases.<01:26:07.400> create<01:26:08.440> document<01:26:09.440> one<01:26:09.600> more<01:26:09.880> time
01:26:10.430 --> 01:26:10.440 align:start position:0%
databases. create document one more time
01:26:10.440 --> 01:26:12.870 align:start position:0%
databases. create document one more time
where<01:26:10.719> is<01:26:11.000> databases<01:26:11.639> coming<01:26:11.960> from<01:26:12.440> try<01:26:12.679> to
01:26:12.870 --> 01:26:12.880 align:start position:0%
where is databases coming from try to
01:26:12.880 --> 01:26:16.310 align:start position:0%
where is databases coming from try to
think<01:26:13.119> about<01:26:13.320> it<01:26:14.040> it's<01:26:14.280> coming<01:26:14.560> fromc<01:26:15.560> config
01:26:16.310 --> 01:26:16.320 align:start position:0%
think about it it's coming fromc config
01:26:16.320 --> 01:26:17.950 align:start position:0%
think about it it's coming fromc config
because<01:26:16.520> we're<01:26:16.760> utilizing<01:26:17.639> what<01:26:17.800> we
01:26:17.950 --> 01:26:17.960 align:start position:0%
because we're utilizing what we
01:26:17.960 --> 01:26:21.149 align:start position:0%
because we're utilizing what we
configured<01:26:18.639> not<01:26:18.960> that<01:26:19.199> long<01:26:19.600> ago<01:26:20.600> and<01:26:20.800> now<01:26:21.040> we
01:26:21.149 --> 01:26:21.159 align:start position:0%
configured not that long ago and now we
01:26:21.159 --> 01:26:23.709 align:start position:0%
configured not that long ago and now we
have<01:26:21.280> to<01:26:21.560> pass<01:26:21.960> what<01:26:22.360> want<01:26:22.440> to<01:26:22.639> create<01:26:23.520> so
01:26:23.709 --> 01:26:23.719 align:start position:0%
have to pass what want to create so
01:26:23.719 --> 01:26:26.950 align:start position:0%
have to pass what want to create so
we're<01:26:23.880> going<01:26:23.960> to<01:26:24.159> pass<01:26:24.440> the<01:26:24.639> ight<01:26:25.440> config<01:26:26.440> do
01:26:26.950 --> 01:26:26.960 align:start position:0%
we're going to pass the ight config do
01:26:26.960 --> 01:26:29.390 align:start position:0%
we're going to pass the ight config do
database<01:26:27.560> ID<01:26:28.520> we<01:26:28.639> need<01:26:28.760> to<01:26:28.880> know<01:26:29.159> which
01:26:29.390 --> 01:26:29.400 align:start position:0%
database ID we need to know which
01:26:29.400 --> 01:26:32.270 align:start position:0%
database ID we need to know which
database<01:26:29.960> are<01:26:30.159> we<01:26:30.760> modifying<01:26:31.760> then<01:26:32.000> we<01:26:32.119> need
01:26:32.270 --> 01:26:32.280 align:start position:0%
database are we modifying then we need
01:26:32.280 --> 01:26:34.390 align:start position:0%
database are we modifying then we need
to<01:26:32.480> pass<01:26:32.760> the<01:26:32.960> upright
01:26:34.390 --> 01:26:34.400 align:start position:0%
to pass the upright
01:26:34.400 --> 01:26:38.070 align:start position:0%
to pass the upright
config<01:26:35.400> do<01:26:35.920> user<01:26:36.639> collection<01:26:37.080> ID<01:26:37.639> to<01:26:37.840> know
01:26:38.070 --> 01:26:38.080 align:start position:0%
config do user collection ID to know
01:26:38.080 --> 01:26:40.430 align:start position:0%
config do user collection ID to know
which<01:26:38.360> collection<01:26:38.840> are<01:26:39.000> we<01:26:39.320> modifying<01:26:40.320> we
01:26:40.430 --> 01:26:40.440 align:start position:0%
which collection are we modifying we
01:26:40.440 --> 01:26:44.350 align:start position:0%
which collection are we modifying we
need<01:26:40.560> to<01:26:40.800> pass<01:26:41.119> the<01:26:41.440> id.<01:26:42.920> unique<01:26:43.920> and<01:26:44.119> we<01:26:44.199> need
01:26:44.350 --> 01:26:44.360 align:start position:0%
need to pass the id. unique and we need
01:26:44.360 --> 01:26:47.270 align:start position:0%
need to pass the id. unique and we need
to<01:26:44.520> pass<01:26:44.760> the<01:26:44.960> actual<01:26:45.280> user<01:26:46.040> object<01:26:47.040> now
01:26:47.270 --> 01:26:47.280 align:start position:0%
to pass the actual user object now
01:26:47.280 --> 01:26:48.350 align:start position:0%
to pass the actual user object now
you're<01:26:47.440> going<01:26:47.560> to<01:26:47.679> notice<01:26:47.960> it's<01:26:48.119> going<01:26:48.239> to
01:26:48.350 --> 01:26:48.360 align:start position:0%
you're going to notice it's going to
01:26:48.360 --> 01:26:50.149 align:start position:0%
you're going to notice it's going to
start<01:26:48.639> complaining<01:26:49.239> about<01:26:49.480> the<01:26:49.679> app<01:26:49.960> right
01:26:50.149 --> 01:26:50.159 align:start position:0%
start complaining about the app right
01:26:50.159 --> 01:26:52.189 align:start position:0%
start complaining about the app right
config<01:26:50.920> which<01:26:51.040> we<01:26:51.199> have<01:26:51.320> to<01:26:51.520> import<01:26:51.840> from
01:26:52.189 --> 01:26:52.199 align:start position:0%
config which we have to import from
01:26:52.199 --> 01:26:53.990 align:start position:0%
config which we have to import from
config<01:26:52.960> that's<01:26:53.199> exactly<01:26:53.639> why<01:26:53.800> we're
01:26:53.990 --> 01:26:54.000 align:start position:0%
config that's exactly why we're
01:26:54.000 --> 01:26:56.830 align:start position:0%
config that's exactly why we're
exporting<01:26:54.480> it<01:26:54.679> in<01:26:54.800> the<01:26:54.960> first<01:26:55.360> place<01:26:56.360> and<01:26:56.520> then
01:26:56.830 --> 01:26:56.840 align:start position:0%
exporting it in the first place and then
01:26:56.840 --> 01:27:00.950 align:start position:0%
exporting it in the first place and then
we<01:26:57.000> simply<01:26:57.360> can<01:26:57.960> return<01:26:58.600> this<01:26:58.840> new<01:26:59.760> user<01:27:00.760> and
01:27:00.950 --> 01:27:00.960 align:start position:0%
we simply can return this new user and
01:27:00.960 --> 01:27:03.790 align:start position:0%
we simply can return this new user and
now<01:27:01.520> not<01:27:01.800> only<01:27:02.320> are<01:27:02.520> we<01:27:02.719> creating<01:27:03.280> the<01:27:03.400> user<01:27:03.679> in
01:27:03.790 --> 01:27:03.800 align:start position:0%
now not only are we creating the user in
01:27:03.800 --> 01:27:07.950 align:start position:0%
now not only are we creating the user in
the<01:27:03.920> authentication<01:27:04.600> part<01:27:05.239> which<01:27:05.400> is<01:27:06.000> right
01:27:07.950 --> 01:27:07.960 align:start position:0%
the authentication part which is right
01:27:07.960 --> 01:27:11.390 align:start position:0%
the authentication part which is right
here<01:27:08.960> but<01:27:09.159> we're<01:27:09.480> also<01:27:09.800> creating<01:27:10.159> it<01:27:10.360> in<01:27:10.440> the
01:27:11.390 --> 01:27:11.400 align:start position:0%
here but we're also creating it in the
01:27:11.400 --> 01:27:14.270 align:start position:0%
here but we're also creating it in the
database<01:27:12.400> so<01:27:12.800> let's<01:27:13.040> collapse<01:27:13.480> it<01:27:13.960> and<01:27:14.159> would
01:27:14.270 --> 01:27:14.280 align:start position:0%
database so let's collapse it and would
01:27:14.280 --> 01:27:15.910 align:start position:0%
database so let's collapse it and would
you<01:27:14.400> look<01:27:14.520> at<01:27:14.719> that<01:27:15.119> with<01:27:15.280> two<01:27:15.520> simple
01:27:15.910 --> 01:27:15.920 align:start position:0%
you look at that with two simple
01:27:15.920 --> 01:27:18.189 align:start position:0%
you look at that with two simple
functions<01:27:16.920> we<01:27:17.239> actually<01:27:17.560> have<01:27:17.719> a<01:27:17.840> connection
01:27:18.189 --> 01:27:18.199 align:start position:0%
functions we actually have a connection
01:27:18.199 --> 01:27:21.270 align:start position:0%
functions we actually have a connection
to<01:27:18.360> the<01:27:18.800> database<01:27:19.800> so<01:27:20.159> what's<01:27:20.560> remaining<01:27:21.159> is
01:27:21.270 --> 01:27:21.280 align:start position:0%
to the database so what's remaining is
01:27:21.280 --> 01:27:24.350 align:start position:0%
to the database so what's remaining is
to<01:27:21.560> actually<01:27:21.840> try<01:27:22.520> to<01:27:22.719> create<01:27:23.000> our<01:27:23.199> user<01:27:24.040> so
01:27:24.350 --> 01:27:24.360 align:start position:0%
to actually try to create our user so
01:27:24.360 --> 01:27:26.350 align:start position:0%
to actually try to create our user so
let's<01:27:24.600> go<01:27:24.800> back<01:27:24.920> to<01:27:25.080> our<01:27:25.239> signup<01:27:25.440> up<01:27:25.600> form
01:27:26.350 --> 01:27:26.360 align:start position:0%
let's go back to our signup up form
01:27:26.360 --> 01:27:28.510 align:start position:0%
let's go back to our signup up form
we're<01:27:26.600> calling<01:27:26.960> the<01:27:27.119> create<01:27:27.400> user<01:27:27.760> account
01:27:28.510 --> 01:27:28.520 align:start position:0%
we're calling the create user account
01:27:28.520 --> 01:27:30.270 align:start position:0%
we're calling the create user account
and<01:27:28.679> let's<01:27:28.880> figure<01:27:29.159> out<01:27:29.520> what<01:27:29.679> we<01:27:29.800> want<01:27:29.960> to
01:27:30.270 --> 01:27:30.280 align:start position:0%
and let's figure out what we want to
01:27:30.280 --> 01:27:32.830 align:start position:0%
and let's figure out what we want to
happen<01:27:31.000> after<01:27:31.280> the<01:27:31.440> account<01:27:31.760> gets<01:27:32.000> created<01:27:32.719> we
01:27:32.830 --> 01:27:32.840 align:start position:0%
happen after the account gets created we
01:27:32.840 --> 01:27:34.709 align:start position:0%
happen after the account gets created we
surely<01:27:33.239> don't<01:27:33.480> simply<01:27:33.719> want<01:27:33.880> to<01:27:34.040> consel<01:27:34.520> lock
01:27:34.709 --> 01:27:34.719 align:start position:0%
surely don't simply want to consel lock
01:27:34.719 --> 01:27:37.390 align:start position:0%
surely don't simply want to consel lock
the<01:27:34.840> newly<01:27:35.159> created<01:27:35.560> user<01:27:36.560> after<01:27:36.840> the<01:27:36.960> user<01:27:37.239> is
01:27:37.390 --> 01:27:37.400 align:start position:0%
the newly created user after the user is
01:27:37.400 --> 01:27:41.550 align:start position:0%
the newly created user after the user is
created<01:27:38.159> we<01:27:38.280> want<01:27:38.440> to<01:27:38.679> check<01:27:39.520> if<01:27:40.239> there<01:27:40.520> is<01:27:40.960> no
01:27:41.550 --> 01:27:41.560 align:start position:0%
created we want to check if there is no
01:27:41.560 --> 01:27:44.510 align:start position:0%
created we want to check if there is no
new<01:27:41.840> user<01:27:42.480> means<01:27:42.920> something<01:27:43.239> went<01:27:43.520> wrong<01:27:44.320> in
01:27:44.510 --> 01:27:44.520 align:start position:0%
new user means something went wrong in
01:27:44.520 --> 01:27:47.669 align:start position:0%
new user means something went wrong in
that<01:27:44.760> case<01:27:45.239> we<01:27:45.400> can<01:27:45.600> simply<01:27:46.520> return<01:27:47.080> meaning
01:27:47.669 --> 01:27:47.679 align:start position:0%
that case we can simply return meaning
01:27:47.679 --> 01:27:50.510 align:start position:0%
that case we can simply return meaning
exit<01:27:48.159> out<01:27:48.320> of<01:27:48.440> the<01:27:48.760> function<01:27:49.760> but<01:27:50.080> we<01:27:50.280> also
01:27:50.510 --> 01:27:50.520 align:start position:0%
exit out of the function but we also
01:27:50.520 --> 01:27:51.830 align:start position:0%
exit out of the function but we also
want<01:27:50.639> to<01:27:50.840> play<01:27:51.119> with<01:27:51.280> some<01:27:51.480> additional
01:27:51.830 --> 01:27:51.840 align:start position:0%
want to play with some additional
01:27:51.840 --> 01:27:53.629 align:start position:0%
want to play with some additional
function<01:27:52.080> functionality<01:27:53.040> which<01:27:53.159> is<01:27:53.320> going<01:27:53.480> to
01:27:53.629 --> 01:27:53.639 align:start position:0%
function functionality which is going to
01:27:53.639 --> 01:27:56.830 align:start position:0%
function functionality which is going to
be<01:27:53.880> a<01:27:54.119> small<01:27:54.639> toast<01:27:55.280> that<01:27:55.440> appears<01:27:56.360> or<01:27:56.679> at
01:27:56.830 --> 01:27:56.840 align:start position:0%
be a small toast that appears or at
01:27:56.840 --> 01:27:59.470 align:start position:0%
be a small toast that appears or at
least<01:27:57.080> we<01:27:57.199> call<01:27:57.400> it<01:27:57.600> that<01:27:57.800> way<01:27:58.639> a<01:27:58.840> toast<01:27:59.360> that
01:27:59.470 --> 01:27:59.480 align:start position:0%
least we call it that way a toast that
01:27:59.480 --> 01:28:02.149 align:start position:0%
least we call it that way a toast that
we<01:27:59.560> can<01:27:59.719> check<01:28:00.199> by<01:28:00.400> going<01:28:00.600> to<01:28:00.800> our<01:28:01.040> Shaden
01:28:02.149 --> 01:28:02.159 align:start position:0%
we can check by going to our Shaden
01:28:02.159 --> 01:28:04.310 align:start position:0%
we can check by going to our Shaden
documentation<01:28:03.159> and<01:28:03.320> then<01:28:03.520> checking<01:28:03.960> the
01:28:04.310 --> 01:28:04.320 align:start position:0%
documentation and then checking the
01:28:04.320 --> 01:28:07.550 align:start position:0%
documentation and then checking the
toast<01:28:05.400> functionality<01:28:06.400> a<01:28:06.600> toast<01:28:06.960> is<01:28:07.080> a<01:28:07.239> little
01:28:07.550 --> 01:28:07.560 align:start position:0%
toast functionality a toast is a little
01:28:07.560 --> 01:28:09.990 align:start position:0%
toast functionality a toast is a little
popup<01:28:08.119> that<01:28:08.239> you<01:28:08.440> click<01:28:09.080> and<01:28:09.280> then<01:28:09.480> it<01:28:09.639> jumps
01:28:09.990 --> 01:28:10.000 align:start position:0%
popup that you click and then it jumps
01:28:10.000 --> 01:28:12.950 align:start position:0%
popup that you click and then it jumps
out<01:28:10.560> it<01:28:10.679> can<01:28:10.840> be<01:28:11.080> dark<01:28:11.480> like<01:28:11.639> it<01:28:11.760> is<01:28:12.040> here<01:28:12.760> but
01:28:12.950 --> 01:28:12.960 align:start position:0%
out it can be dark like it is here but
01:28:12.960 --> 01:28:14.790 align:start position:0%
out it can be dark like it is here but
you<01:28:13.080> can<01:28:13.239> also<01:28:13.480> have<01:28:13.679> different<01:28:14.040> examples
01:28:14.790 --> 01:28:14.800 align:start position:0%
you can also have different examples
01:28:14.800 --> 01:28:17.270 align:start position:0%
you can also have different examples
where<01:28:15.119> it<01:28:15.280> can<01:28:15.440> be<01:28:15.880> light<01:28:16.480> meaning<01:28:16.920> something
01:28:17.270 --> 01:28:17.280 align:start position:0%
where it can be light meaning something
01:28:17.280 --> 01:28:19.830 align:start position:0%
where it can be light meaning something
was<01:28:17.560> good<01:28:18.040> or<01:28:18.480> a<01:28:18.679> red<01:28:18.880> one<01:28:19.199> meaning<01:28:19.560> something
01:28:19.830 --> 01:28:19.840 align:start position:0%
was good or a red one meaning something
01:28:19.840 --> 01:28:22.350 align:start position:0%
was good or a red one meaning something
was<01:28:20.159> really<01:28:20.480> really<01:28:20.760> bad<01:28:21.520> so<01:28:21.840> let's<01:28:22.159> go<01:28:22.199> ahead
01:28:22.350 --> 01:28:22.360 align:start position:0%
was really really bad so let's go ahead
01:28:22.360 --> 01:28:23.830 align:start position:0%
was really really bad so let's go ahead
and<01:28:22.480> implement<01:28:23.000> this<01:28:23.280> which<01:28:23.400> is<01:28:23.560> just<01:28:23.719> going
01:28:23.830 --> 01:28:23.840 align:start position:0%
and implement this which is just going
01:28:23.840 --> 01:28:26.669 align:start position:0%
and implement this which is just going
to<01:28:24.119> provide<01:28:24.800> much<01:28:25.000> more<01:28:25.400> intuitive<01:28:26.000> workflow
01:28:26.669 --> 01:28:26.679 align:start position:0%
to provide much more intuitive workflow
01:28:26.679 --> 01:28:28.790 align:start position:0%
to provide much more intuitive workflow
so<01:28:26.920> we<01:28:27.080> immediately<01:28:27.600> know<01:28:28.159> whether<01:28:28.400> the<01:28:28.480> user
01:28:28.790 --> 01:28:28.800 align:start position:0%
so we immediately know whether the user
01:28:28.800 --> 01:28:32.109 align:start position:0%
so we immediately know whether the user
was<01:28:29.000> created<01:28:29.760> or<01:28:30.280> not<01:28:31.280> now<01:28:31.480> I'm<01:28:31.600> going<01:28:31.719> to<01:28:31.880> show
01:28:32.109 --> 01:28:32.119 align:start position:0%
was created or not now I'm going to show
01:28:32.119 --> 01:28:34.790 align:start position:0%
was created or not now I'm going to show
you<01:28:32.520> how<01:28:32.679> to<01:28:32.960> add<01:28:33.320> this<01:28:33.560> second<01:28:34.080> shaten
01:28:34.790 --> 01:28:34.800 align:start position:0%
you how to add this second shaten
01:28:34.800 --> 01:28:36.910 align:start position:0%
you how to add this second shaten
component<01:28:35.400> to<01:28:35.520> our<01:28:35.679> workflow<01:28:36.520> we<01:28:36.679> just<01:28:36.800> have
01:28:36.910 --> 01:28:36.920 align:start position:0%
component to our workflow we just have
01:28:36.920 --> 01:28:38.030 align:start position:0%
component to our workflow we just have
to<01:28:37.000> follow<01:28:37.320> the
01:28:38.030 --> 01:28:38.040 align:start position:0%
to follow the
01:28:38.040 --> 01:28:39.910 align:start position:0%
to follow the
documentation<01:28:39.040> first<01:28:39.400> you<01:28:39.560> run<01:28:39.800> the
01:28:39.910 --> 01:28:39.920 align:start position:0%
documentation first you run the
01:28:39.920 --> 01:28:43.830 align:start position:0%
documentation first you run the
following<01:28:40.320> command<01:28:41.159> MPX<01:28:41.840> Shad<01:28:42.239> CN<01:28:42.480> UI<01:28:43.119> latest
01:28:43.830 --> 01:28:43.840 align:start position:0%
following command MPX Shad CN UI latest
01:28:43.840 --> 01:28:47.229 align:start position:0%
following command MPX Shad CN UI latest
add<01:28:44.719> toast<01:28:45.719> we<01:28:45.840> can<01:28:46.040> do<01:28:46.239> that<01:28:46.560> by<01:28:46.719> opening<01:28:47.080> the
01:28:47.229 --> 01:28:47.239 align:start position:0%
add toast we can do that by opening the
01:28:47.239 --> 01:28:49.830 align:start position:0%
add toast we can do that by opening the
second<01:28:47.520> terminal<01:28:48.000> we<01:28:48.159> have<01:28:48.400> here<01:28:49.199> and<01:28:49.480> simply
01:28:49.830 --> 01:28:49.840 align:start position:0%
second terminal we have here and simply
01:28:49.840 --> 01:28:53.229 align:start position:0%
second terminal we have here and simply
pasting<01:28:50.239> it<01:28:50.840> once<01:28:51.119> again<01:28:51.560> that's<01:28:52.000> MPX<01:28:52.719> shaty
01:28:53.229 --> 01:28:53.239 align:start position:0%
pasting it once again that's MPX shaty
01:28:53.239 --> 01:28:57.470 align:start position:0%
pasting it once again that's MPX shaty
and<01:28:53.400> UI<01:28:54.040> add<01:28:54.320> latest<01:28:55.199> add<01:28:55.719> toast<01:28:56.679> this<01:28:57.119> is<01:28:57.280> now
01:28:57.470 --> 01:28:57.480 align:start position:0%
and UI add latest add toast this is now
01:28:57.480 --> 01:29:00.310 align:start position:0%
and UI add latest add toast this is now
going<01:28:57.679> to<01:28:57.960> add<01:28:58.159> it<01:28:58.560> within<01:28:58.800> our<01:28:59.320> components
01:29:00.310 --> 01:29:00.320 align:start position:0%
going to add it within our components
01:29:00.320 --> 01:29:02.629 align:start position:0%
going to add it within our components
and<01:29:00.480> then<01:29:00.719> UI<01:29:01.719> and<01:29:01.840> you<01:29:01.920> can<01:29:02.040> see<01:29:02.320> that<01:29:02.480> the
01:29:02.629 --> 01:29:02.639 align:start position:0%
and then UI and you can see that the
01:29:02.639 --> 01:29:04.629 align:start position:0%
and then UI and you can see that the
toast<01:29:03.080> and<01:29:03.239> the<01:29:03.400> toaster<01:29:04.080> as<01:29:04.239> well<01:29:04.360> as<01:29:04.480> the
01:29:04.629 --> 01:29:04.639 align:start position:0%
toast and the toaster as well as the
01:29:04.639 --> 01:29:07.070 align:start position:0%
toast and the toaster as well as the
used<01:29:04.960> toast<01:29:05.320> functionality<01:29:06.159> were<01:29:06.480> added
01:29:07.070 --> 01:29:07.080 align:start position:0%
used toast functionality were added
01:29:07.080 --> 01:29:09.070 align:start position:0%
used toast functionality were added
automatically<01:29:08.080> don't<01:29:08.280> worry<01:29:08.639> you<01:29:08.760> don't<01:29:08.960> have
01:29:09.070 --> 01:29:09.080 align:start position:0%
automatically don't worry you don't have
01:29:09.080 --> 01:29:11.149 align:start position:0%
automatically don't worry you don't have
to<01:29:09.239> modify<01:29:09.760> these<01:29:10.159> we<01:29:10.320> just<01:29:10.440> want<01:29:10.560> to<01:29:10.719> use<01:29:10.960> them
01:29:11.149 --> 01:29:11.159 align:start position:0%
to modify these we just want to use them
01:29:11.159 --> 01:29:14.109 align:start position:0%
to modify these we just want to use them
within<01:29:11.400> our<01:29:11.600> code<01:29:12.600> so<01:29:12.840> how<01:29:12.960> do<01:29:13.119> we<01:29:13.239> use<01:29:13.520> them
01:29:14.109 --> 01:29:14.119 align:start position:0%
within our code so how do we use them
01:29:14.119 --> 01:29:16.149 align:start position:0%
within our code so how do we use them
well<01:29:14.320> we<01:29:14.440> can<01:29:14.639> refer<01:29:15.000> to<01:29:15.199> the<01:29:15.360> documentation
01:29:16.149 --> 01:29:16.159 align:start position:0%
well we can refer to the documentation
01:29:16.159 --> 01:29:19.229 align:start position:0%
well we can refer to the documentation
here<01:29:17.119> we<01:29:17.239> need<01:29:17.400> to<01:29:17.600> add<01:29:17.800> it<01:29:18.080> to<01:29:18.239> the<01:29:18.480> most<01:29:18.800> outer
01:29:19.229 --> 01:29:19.239 align:start position:0%
here we need to add it to the most outer
01:29:19.239 --> 01:29:21.629 align:start position:0%
here we need to add it to the most outer
part<01:29:19.480> of<01:29:19.600> our<01:29:20.119> application<01:29:21.119> in<01:29:21.320> this<01:29:21.480> case
01:29:21.629 --> 01:29:21.639 align:start position:0%
part of our application in this case
01:29:21.639 --> 01:29:24.350 align:start position:0%
part of our application in this case
it's<01:29:22.000> not<01:29:22.159> going<01:29:22.320> to<01:29:22.400> be<01:29:22.639> app<01:29:22.880> layout<01:29:23.239> TSX<01:29:24.159> it's
01:29:24.350 --> 01:29:24.360 align:start position:0%
it's not going to be app layout TSX it's
01:29:24.360 --> 01:29:26.590 align:start position:0%
it's not going to be app layout TSX it's
going<01:29:24.520> to<01:29:24.639> be<01:29:24.880> our<01:29:25.280> app<01:29:25.960> so<01:29:26.119> let's<01:29:26.280> go<01:29:26.400> ahead
01:29:26.590 --> 01:29:26.600 align:start position:0%
going to be our app so let's go ahead
01:29:26.600 --> 01:29:29.669 align:start position:0%
going to be our app so let's go ahead
and<01:29:26.800> copy<01:29:27.119> this<01:29:27.520> import<01:29:28.520> let's<01:29:28.840> go<01:29:29.239> right<01:29:29.440> here
01:29:29.669 --> 01:29:29.679 align:start position:0%
and copy this import let's go right here
01:29:29.679 --> 01:29:32.669 align:start position:0%
and copy this import let's go right here
to<01:29:30.040> our<01:29:30.480> app<01:29:31.480> and<01:29:31.760> let's<01:29:32.000> import<01:29:32.320> it<01:29:32.560> right
01:29:32.669 --> 01:29:32.679 align:start position:0%
to our app and let's import it right
01:29:32.679 --> 01:29:34.790 align:start position:0%
to our app and let's import it right
here<01:29:32.840> at<01:29:33.000> the<01:29:33.159> top<01:29:33.960> we<01:29:34.119> don't<01:29:34.360> need<01:29:34.639> this
01:29:34.790 --> 01:29:34.800 align:start position:0%
here at the top we don't need this
01:29:34.800 --> 01:29:37.750 align:start position:0%
here at the top we don't need this
entire<01:29:35.199> part<01:29:35.800> we<01:29:35.960> simply<01:29:36.280> need<01:29:36.600> the<01:29:36.760> import<01:29:37.600> so
01:29:37.750 --> 01:29:37.760 align:start position:0%
entire part we simply need the import so
01:29:37.760 --> 01:29:39.990 align:start position:0%
entire part we simply need the import so
we're<01:29:37.960> importing<01:29:38.320> it<01:29:38.520> from<01:29:38.760> toaster<01:29:39.280> UI
01:29:39.990 --> 01:29:40.000 align:start position:0%
we're importing it from toaster UI
01:29:40.000 --> 01:29:42.149 align:start position:0%
we're importing it from toaster UI
components<01:29:41.000> and<01:29:41.119> then<01:29:41.239> we<01:29:41.360> want<01:29:41.440> to<01:29:41.600> put<01:29:41.719> it
01:29:42.149 --> 01:29:42.159 align:start position:0%
components and then we want to put it
01:29:42.159 --> 01:29:44.550 align:start position:0%
components and then we want to put it
right<01:29:42.400> here<01:29:42.679> at<01:29:42.840> the<01:29:42.960> end<01:29:43.480> near<01:29:43.760> the<01:29:44.000> closing
01:29:44.550 --> 01:29:44.560 align:start position:0%
right here at the end near the closing
01:29:44.560 --> 01:29:47.510 align:start position:0%
right here at the end near the closing
main<01:29:45.280> toaster<01:29:46.080> like<01:29:46.280> so<01:29:47.000> this<01:29:47.119> is<01:29:47.239> going<01:29:47.360> to
01:29:47.510 --> 01:29:47.520 align:start position:0%
main toaster like so this is going to
01:29:47.520 --> 01:29:50.189 align:start position:0%
main toaster like so this is going to
allow<01:29:47.760> us<01:29:47.880> to<01:29:48.000> see<01:29:48.159> the<01:29:48.440> toaster<01:29:49.440> and<01:29:49.679> then<01:29:50.080> we
01:29:50.189 --> 01:29:50.199 align:start position:0%
allow us to see the toaster and then we
01:29:50.199 --> 01:29:52.470 align:start position:0%
allow us to see the toaster and then we
have<01:29:50.320> to<01:29:50.520> use<01:29:50.760> the<01:29:50.920> used<01:29:51.280> toast<01:29:51.639> hook<01:29:52.159> whenever
01:29:52.470 --> 01:29:52.480 align:start position:0%
have to use the used toast hook whenever
01:29:52.480 --> 01:29:55.030 align:start position:0%
have to use the used toast hook whenever
you<01:29:52.560> want<01:29:52.679> to<01:29:52.840> call<01:29:53.119> it<01:29:53.719> so<01:29:54.199> right<01:29:54.400> here<01:29:54.719> we<01:29:54.800> can
01:29:55.030 --> 01:29:55.040 align:start position:0%
you want to call it so right here we can
01:29:55.040 --> 01:29:58.669 align:start position:0%
you want to call it so right here we can
import<01:29:55.560> this<01:29:56.480> go<01:29:56.760> back<01:29:56.920> to<01:29:57.080> the<01:29:57.199> signup<01:29:57.679> form
01:29:58.669 --> 01:29:58.679 align:start position:0%
import this go back to the signup form
01:29:58.679 --> 01:30:01.830 align:start position:0%
import this go back to the signup form
we<01:29:58.800> can<01:29:59.080> import<01:29:59.480> it<01:29:59.960> right<01:30:00.199> here<01:30:00.400> at<01:30:00.560> the
01:30:01.830 --> 01:30:01.840 align:start position:0%
we can import it right here at the
01:30:01.840 --> 01:30:04.470 align:start position:0%
we can import it right here at the
top<01:30:02.840> we<01:30:03.000> don't<01:30:03.239> need<01:30:03.400> the<01:30:03.520> form<01:30:03.840> description
01:30:04.470 --> 01:30:04.480 align:start position:0%
top we don't need the form description
01:30:04.480 --> 01:30:06.830 align:start position:0%
top we don't need the form description
as<01:30:04.600> we're<01:30:04.760> not<01:30:04.960> using<01:30:05.280> it<01:30:05.920> and<01:30:06.080> then<01:30:06.480> where<01:30:06.679> do
01:30:06.830 --> 01:30:06.840 align:start position:0%
as we're not using it and then where do
01:30:06.840 --> 01:30:08.910 align:start position:0%
as we're not using it and then where do
we<01:30:06.960> want<01:30:07.040> to<01:30:07.239> use<01:30:07.440> it<01:30:08.040> we<01:30:08.119> have<01:30:08.239> to<01:30:08.440> declare<01:30:08.800> it
01:30:08.910 --> 01:30:08.920 align:start position:0%
we want to use it we have to declare it
01:30:08.920 --> 01:30:11.910 align:start position:0%
we want to use it we have to declare it
as<01:30:09.040> a<01:30:09.199> hook<01:30:09.719> right<01:30:09.920> here<01:30:10.119> at<01:30:10.239> the<01:30:10.480> top<01:30:11.480> cons
01:30:11.910 --> 01:30:11.920 align:start position:0%
as a hook right here at the top cons
01:30:11.920 --> 01:30:14.390 align:start position:0%
as a hook right here at the top cons
toast<01:30:12.320> is<01:30:12.480> equal<01:30:12.719> to<01:30:12.840> use<01:30:13.159> toast<01:30:14.000> and<01:30:14.119> then<01:30:14.239> we
01:30:14.390 --> 01:30:14.400 align:start position:0%
toast is equal to use toast and then we
01:30:14.400 --> 01:30:17.070 align:start position:0%
toast is equal to use toast and then we
call<01:30:14.719> it<01:30:15.119> whenever<01:30:15.440> we<01:30:15.520> want<01:30:15.679> it<01:30:15.880> to<01:30:16.040> appear<01:30:16.840> in
01:30:17.070 --> 01:30:17.080 align:start position:0%
call it whenever we want it to appear in
01:30:17.080 --> 01:30:20.310 align:start position:0%
call it whenever we want it to appear in
this<01:30:17.280> case<01:30:18.040> right<01:30:18.280> here<01:30:18.679> after<01:30:19.000> the<01:30:19.360> return<01:30:20.159> so
01:30:20.310 --> 01:30:20.320 align:start position:0%
this case right here after the return so
01:30:20.320 --> 01:30:23.310 align:start position:0%
this case right here after the return so
we<01:30:20.440> say<01:30:20.719> toast<01:30:21.320> schedule<01:30:22.199> description<01:30:23.199> this
01:30:23.310 --> 01:30:23.320 align:start position:0%
we say toast schedule description this
01:30:23.320 --> 01:30:25.669 align:start position:0%
we say toast schedule description this
is<01:30:23.520> it<01:30:24.199> but<01:30:24.360> of<01:30:24.480> course<01:30:24.679> we<01:30:24.800> want<01:30:24.960> our<01:30:25.159> toes<01:30:25.520> to
01:30:25.669 --> 01:30:25.679 align:start position:0%
is it but of course we want our toes to
01:30:25.679 --> 01:30:28.189 align:start position:0%
is it but of course we want our toes to
say<01:30:25.920> something<01:30:26.320> different<01:30:27.239> so<01:30:27.639> we<01:30:27.760> can<01:30:28.000> just
01:30:28.189 --> 01:30:28.199 align:start position:0%
say something different so we can just
01:30:28.199 --> 01:30:30.510 align:start position:0%
say something different so we can just
give<01:30:28.320> it<01:30:28.440> a<01:30:28.679> title<01:30:29.199> no<01:30:29.400> need<01:30:29.560> for<01:30:29.719> a
01:30:30.510 --> 01:30:30.520 align:start position:0%
give it a title no need for a
01:30:30.520 --> 01:30:32.189 align:start position:0%
give it a title no need for a
description<01:30:31.520> that's<01:30:31.719> going<01:30:31.840> to<01:30:32.000> look
01:30:32.189 --> 01:30:32.199 align:start position:0%
description that's going to look
01:30:32.199 --> 01:30:38.189 align:start position:0%
description that's going to look
something<01:30:32.520> like<01:30:32.760> this<01:30:33.639> title<01:30:34.679> is<01:30:35.679> sign<01:30:36.960> up
01:30:38.189 --> 01:30:38.199 align:start position:0%
something like this title is sign up
01:30:38.199 --> 01:30:43.270 align:start position:0%
something like this title is sign up
failed<01:30:39.199> please<01:30:40.040> try<01:30:41.040> again<01:30:42.040> as<01:30:42.320> simple<01:30:42.920> as<01:30:43.040> it
01:30:43.270 --> 01:30:43.280 align:start position:0%
failed please try again as simple as it
01:30:43.280 --> 01:30:45.109 align:start position:0%
failed please try again as simple as it
gets<01:30:43.880> now<01:30:44.159> in<01:30:44.320> this<01:30:44.520> case<01:30:44.760> let's<01:30:44.960> be
01:30:45.109 --> 01:30:45.119 align:start position:0%
gets now in this case let's be
01:30:45.119 --> 01:30:47.310 align:start position:0%
gets now in this case let's be
optimistic<01:30:45.920> we're<01:30:46.119> not<01:30:46.320> going<01:30:46.520> to<01:30:46.760> test<01:30:47.080> our
01:30:47.310 --> 01:30:47.320 align:start position:0%
optimistic we're not going to test our
01:30:47.320 --> 01:30:49.910 align:start position:0%
optimistic we're not going to test our
application<01:30:48.000> or<01:30:48.199> our<01:30:48.440> function<01:30:48.920> failing<01:30:49.800> we
01:30:49.910 --> 01:30:49.920 align:start position:0%
application or our function failing we
01:30:49.920 --> 01:30:51.510 align:start position:0%
application or our function failing we
want<01:30:50.040> to<01:30:50.199> test<01:30:50.400> the<01:30:50.560> toast<01:30:51.000> if<01:30:51.199> everything
01:30:51.510 --> 01:30:51.520 align:start position:0%
want to test the toast if everything
01:30:51.520 --> 01:30:52.510 align:start position:0%
want to test the toast if everything
works
01:30:52.510 --> 01:30:52.520 align:start position:0%
works
01:30:52.520 --> 01:30:55.350 align:start position:0%
works
so<01:30:53.040> what<01:30:53.159> do<01:30:53.320> we<01:30:53.440> want<01:30:53.560> to<01:30:53.760> do<01:30:54.440> we<01:30:54.560> want<01:30:54.719> to<01:30:55.000> sign
01:30:55.350 --> 01:30:55.360 align:start position:0%
so what do we want to do we want to sign
01:30:55.360 --> 01:30:57.950 align:start position:0%
so what do we want to do we want to sign
our<01:30:55.560> user<01:30:56.199> into<01:30:56.480> a<01:30:56.679> session<01:30:57.360> that's<01:30:57.600> the<01:30:57.760> next
01:30:57.950 --> 01:30:57.960 align:start position:0%
our user into a session that's the next
01:30:57.960 --> 01:31:01.390 align:start position:0%
our user into a session that's the next
step<01:30:58.520> so<01:30:58.679> we<01:30:58.760> can<01:30:58.920> say<01:30:59.199> con<01:30:59.719> session<01:31:00.719> is<01:31:01.080> equal
01:31:01.390 --> 01:31:01.400 align:start position:0%
step so we can say con session is equal
01:31:01.400 --> 01:31:02.870 align:start position:0%
step so we can say con session is equal
to
01:31:02.870 --> 01:31:02.880 align:start position:0%
to
01:31:02.880 --> 01:31:07.590 align:start position:0%
to
await<01:31:03.880> sign<01:31:04.719> in<01:31:05.679> account<01:31:06.679> okay<01:31:07.159> and<01:31:07.360> this<01:31:07.480> is
01:31:07.590 --> 01:31:07.600 align:start position:0%
await sign in account okay and this is
01:31:07.600 --> 01:31:09.870 align:start position:0%
await sign in account okay and this is
another<01:31:08.000> function<01:31:08.360> that<01:31:08.480> we<01:31:08.600> have<01:31:08.719> to<01:31:08.920> call
01:31:09.870 --> 01:31:09.880 align:start position:0%
another function that we have to call
01:31:09.880 --> 01:31:12.790 align:start position:0%
another function that we have to call
that<01:31:10.159> will<01:31:10.400> soon<01:31:10.880> Implement<01:31:11.880> for<01:31:12.159> now<01:31:12.560> let's
01:31:12.790 --> 01:31:12.800 align:start position:0%
that will soon Implement for now let's
01:31:12.800 --> 01:31:15.229 align:start position:0%
that will soon Implement for now let's
comment<01:31:13.119> and<01:31:13.480> out<01:31:14.480> and<01:31:14.600> let<01:31:14.719> me<01:31:14.880> tell<01:31:15.040> you
01:31:15.229 --> 01:31:15.239 align:start position:0%
comment and out and let me tell you
01:31:15.239 --> 01:31:17.870 align:start position:0%
comment and out and let me tell you
about<01:31:15.480> something<01:31:15.880> more<01:31:16.280> important<01:31:17.280> in<01:31:17.600> this
01:31:17.870 --> 01:31:17.880 align:start position:0%
about something more important in this
01:31:17.880 --> 01:31:20.550 align:start position:0%
about something more important in this
course<01:31:18.480> you'll<01:31:18.800> also<01:31:19.119> learn<01:31:19.679> how<01:31:19.800> to<01:31:20.040> use
01:31:20.550 --> 01:31:20.560 align:start position:0%
course you'll also learn how to use
01:31:20.560 --> 01:31:24.229 align:start position:0%
course you'll also learn how to use
react<01:31:21.199> query<01:31:22.159> recently<01:31:22.840> renamed<01:31:23.440> to<01:31:23.639> 10stack
01:31:24.229 --> 01:31:24.239 align:start position:0%
react query recently renamed to 10stack
01:31:24.239 --> 01:31:26.750 align:start position:0%
react query recently renamed to 10stack
query<01:31:24.800> as<01:31:24.960> they<01:31:25.119> started<01:31:25.480> supporting<01:31:26.040> view
01:31:26.750 --> 01:31:26.760 align:start position:0%
query as they started supporting view
01:31:26.760 --> 01:31:30.270 align:start position:0%
query as they started supporting view
spelt<01:31:27.560> solid<01:31:28.280> and<01:31:28.520> more<01:31:29.280> but<01:31:29.440> in<01:31:29.560> our<01:31:29.840> hearts
01:31:30.270 --> 01:31:30.280 align:start position:0%
spelt solid and more but in our hearts
01:31:30.280 --> 01:31:32.870 align:start position:0%
spelt solid and more but in our hearts
it's<01:31:30.440> still<01:31:30.679> called<01:31:31.119> react<01:31:31.600> query<01:31:32.520> it's<01:31:32.719> going
01:31:32.870 --> 01:31:32.880 align:start position:0%
it's still called react query it's going
01:31:32.880 --> 01:31:35.030 align:start position:0%
it's still called react query it's going
to<01:31:33.080> allow<01:31:33.360> us<01:31:33.520> to<01:31:33.679> do<01:31:33.920> a<01:31:34.119> lot<01:31:34.320> of<01:31:34.520> things<01:31:34.840> right
01:31:35.030 --> 01:31:35.040 align:start position:0%
to allow us to do a lot of things right
01:31:35.040 --> 01:31:37.470 align:start position:0%
to allow us to do a lot of things right
out<01:31:35.199> of<01:31:35.280> the<01:31:35.480> box<01:31:36.199> it's<01:31:36.360> going<01:31:36.520> to<01:31:36.639> be<01:31:36.880> simple
01:31:37.470 --> 01:31:37.480 align:start position:0%
out of the box it's going to be simple
01:31:37.480 --> 01:31:40.070 align:start position:0%
out of the box it's going to be simple
and<01:31:37.800> familiar<01:31:38.600> but<01:31:38.840> more<01:31:39.040> importantly<01:31:39.960> it
01:31:40.070 --> 01:31:40.080 align:start position:0%
and familiar but more importantly it
01:31:40.080 --> 01:31:42.350 align:start position:0%
and familiar but more importantly it
will<01:31:40.320> allow<01:31:40.679> us<01:31:40.880> to<01:31:41.199> Cache<01:31:41.719> the<01:31:41.920> data<01:31:42.199> we're
01:31:42.350 --> 01:31:42.360 align:start position:0%
will allow us to Cache the data we're
01:31:42.360 --> 01:31:44.910 align:start position:0%
will allow us to Cache the data we're
fetching<01:31:42.719> from<01:31:42.880> the<01:31:43.000> server<01:31:44.000> it<01:31:44.199> also<01:31:44.560> has
01:31:44.910 --> 01:31:44.920 align:start position:0%
fetching from the server it also has
01:31:44.920 --> 01:31:47.390 align:start position:0%
fetching from the server it also has
Auto<01:31:45.360> ref<01:31:45.639> fetching<01:31:46.360> server<01:31:46.840> side<01:31:46.960> rendering
01:31:47.390 --> 01:31:47.400 align:start position:0%
Auto ref fetching server side rendering
01:31:47.400 --> 01:31:50.669 align:start position:0%
Auto ref fetching server side rendering
support<01:31:48.159> pation<01:31:48.880> out<01:31:49.040> of<01:31:49.199> the<01:31:49.360> box<01:31:50.040> mutations
01:31:50.669 --> 01:31:50.679 align:start position:0%
support pation out of the box mutations
01:31:50.679 --> 01:31:52.830 align:start position:0%
support pation out of the box mutations
meaning<01:31:51.040> changes<01:31:51.440> to<01:31:51.560> the<01:31:51.800> server<01:31:52.159> data
01:31:52.830 --> 01:31:52.840 align:start position:0%
meaning changes to the server data
01:31:52.840 --> 01:31:54.629 align:start position:0%
meaning changes to the server data
infinite<01:31:53.360> scrolling<01:31:54.080> which<01:31:54.239> we're<01:31:54.360> going<01:31:54.440> to
01:31:54.629 --> 01:31:54.639 align:start position:0%
infinite scrolling which we're going to
01:31:54.639 --> 01:31:57.629 align:start position:0%
infinite scrolling which we're going to
use<01:31:55.000> and<01:31:55.239> Implement<01:31:55.800> in<01:31:56.080> this<01:31:56.480> video<01:31:57.480> and
01:31:57.629 --> 01:31:57.639 align:start position:0%
use and Implement in this video and
01:31:57.639 --> 01:31:59.350 align:start position:0%
use and Implement in this video and
there<01:31:57.719> are<01:31:57.920> so<01:31:58.119> many<01:31:58.360> more<01:31:58.639> reasons<01:31:58.960> to<01:31:59.119> use
01:31:59.350 --> 01:31:59.360 align:start position:0%
there are so many more reasons to use
01:31:59.360 --> 01:32:02.270 align:start position:0%
there are so many more reasons to use
react<01:31:59.800> query<01:32:00.199> in<01:32:00.360> your<01:32:00.520> react<01:32:01.280> applications
01:32:02.270 --> 01:32:02.280 align:start position:0%
react query in your react applications
01:32:02.280 --> 01:32:04.390 align:start position:0%
react query in your react applications
and<01:32:02.480> in<01:32:02.719> this<01:32:02.920> video<01:32:03.480> I'll<01:32:03.679> teach<01:32:03.920> you<01:32:04.119> how<01:32:04.239> to
01:32:04.390 --> 01:32:04.400 align:start position:0%
and in this video I'll teach you how to
01:32:04.400 --> 01:32:07.109 align:start position:0%
and in this video I'll teach you how to
use<01:32:04.639> it<01:32:05.040> from<01:32:05.320> scratch<01:32:06.320> so<01:32:06.639> what<01:32:06.760> do<01:32:06.880> we<01:32:06.960> need
01:32:07.109 --> 01:32:07.119 align:start position:0%
use it from scratch so what do we need
01:32:07.119 --> 01:32:09.629 align:start position:0%
use it from scratch so what do we need
to<01:32:07.280> do<01:32:07.719> to<01:32:07.880> get<01:32:08.040> started<01:32:08.480> with<01:32:08.679> react<01:32:09.119> query
01:32:09.629 --> 01:32:09.639 align:start position:0%
to do to get started with react query
01:32:09.639 --> 01:32:13.189 align:start position:0%
to do to get started with react query
and<01:32:09.840> using<01:32:10.159> it<01:32:10.440> alongside<01:32:11.520> aite<01:32:12.520> well<01:32:12.880> we<01:32:13.000> can
01:32:13.189 --> 01:32:13.199 align:start position:0%
and using it alongside aite well we can
01:32:13.199 --> 01:32:16.830 align:start position:0%
and using it alongside aite well we can
go<01:32:13.560> right<01:32:13.840> here<01:32:14.400> to<01:32:14.960> our<01:32:15.440> lib<01:32:16.280> and<01:32:16.400> then<01:32:16.600> next
01:32:16.830 --> 01:32:16.840 align:start position:0%
go right here to our lib and then next
01:32:16.840 --> 01:32:19.629 align:start position:0%
go right here to our lib and then next
to<01:32:17.040> aight<01:32:17.760> we<01:32:17.840> can<01:32:18.080> also<01:32:18.400> add<01:32:18.639> a<01:32:18.800> new<01:32:19.000> folder
01:32:19.629 --> 01:32:19.639 align:start position:0%
to aight we can also add a new folder
01:32:19.639 --> 01:32:22.629 align:start position:0%
to aight we can also add a new folder
called<01:32:20.000> react<01:32:20.920> D<01:32:21.320> query
01:32:22.629 --> 01:32:22.639 align:start position:0%
called react D query
01:32:22.639 --> 01:32:25.430 align:start position:0%
called react D query
within<01:32:23.080> here<01:32:23.639> we<01:32:23.760> can<01:32:23.960> create<01:32:24.360> a<01:32:24.560> new<01:32:24.880> file
01:32:25.430 --> 01:32:25.440 align:start position:0%
within here we can create a new file
01:32:25.440 --> 01:32:28.270 align:start position:0%
within here we can create a new file
called<01:32:26.080> queries<01:32:27.080> and
01:32:28.270 --> 01:32:28.280 align:start position:0%
called queries and
01:32:28.280 --> 01:32:31.790 align:start position:0%
called queries and
mutations.<01:32:29.600> TS<01:32:30.600> within<01:32:31.000> here<01:32:31.320> we're<01:32:31.480> going<01:32:31.600> to
01:32:31.790 --> 01:32:31.800 align:start position:0%
mutations. TS within here we're going to
01:32:31.800 --> 01:32:33.790 align:start position:0%
mutations. TS within here we're going to
import<01:32:32.239> a<01:32:32.440> couple<01:32:32.679> of<01:32:32.840> things<01:32:33.080> we'll<01:32:33.360> use<01:32:33.600> from
01:32:33.790 --> 01:32:33.800 align:start position:0%
import a couple of things we'll use from
01:32:33.800 --> 01:32:36.669 align:start position:0%
import a couple of things we'll use from
react<01:32:34.239> query<01:32:35.239> but<01:32:35.400> of<01:32:35.560> course<01:32:35.920> first<01:32:36.440> we<01:32:36.560> have
01:32:36.669 --> 01:32:36.679 align:start position:0%
react query but of course first we have
01:32:36.679 --> 01:32:39.910 align:start position:0%
react query but of course first we have
to<01:32:36.880> install<01:32:37.239> it<01:32:37.679> so<01:32:37.840> that's<01:32:38.000> going<01:32:38.159> to<01:32:38.320> be<01:32:38.560> at
01:32:39.910 --> 01:32:39.920 align:start position:0%
to install it so that's going to be at
01:32:39.920 --> 01:32:45.669 align:start position:0%
to install it so that's going to be at
10stack<01:32:40.920> SL<01:32:41.360> react<01:32:42.760> dqu<01:32:43.760> so<01:32:43.960> let's<01:32:44.239> copy<01:32:44.679> this
01:32:45.669 --> 01:32:45.679 align:start position:0%
10stack SL react dqu so let's copy this
01:32:45.679 --> 01:32:49.070 align:start position:0%
10stack SL react dqu so let's copy this
open<01:32:45.920> up<01:32:46.080> our<01:32:46.239> terminal<01:32:47.119> and<01:32:47.280> say<01:32:47.560> mpm<01:32:48.080> install
01:32:49.070 --> 01:32:49.080 align:start position:0%
open up our terminal and say mpm install
01:32:49.080 --> 01:32:54.070 align:start position:0%
open up our terminal and say mpm install
at<01:32:49.600> tanack<01:32:50.600> SL<01:32:51.040> react<01:32:51.639> query<01:32:52.480> press<01:32:52.920> enter<01:32:53.920> and
01:32:54.070 --> 01:32:54.080 align:start position:0%
at tanack SL react query press enter and
01:32:54.080 --> 01:32:56.229 align:start position:0%
at tanack SL react query press enter and
soon<01:32:54.400> enough<01:32:54.719> it<01:32:54.840> will<01:32:55.000> be<01:32:55.280> installed<01:32:55.920> it's<01:32:56.080> a
01:32:56.229 --> 01:32:56.239 align:start position:0%
soon enough it will be installed it's a
01:32:56.239 --> 01:32:58.830 align:start position:0%
soon enough it will be installed it's a
pretty<01:32:56.520> lightweight<01:32:57.440> Library<01:32:58.440> once<01:32:58.639> it's
01:32:58.830 --> 01:32:58.840 align:start position:0%
pretty lightweight Library once it's
01:32:58.840 --> 01:33:01.149 align:start position:0%
pretty lightweight Library once it's
installed<01:32:59.440> we're<01:32:59.639> going<01:32:59.760> to<01:32:59.920> import<01:33:00.520> use
01:33:01.149 --> 01:33:01.159 align:start position:0%
installed we're going to import use
01:33:01.159 --> 01:33:03.750 align:start position:0%
installed we're going to import use
Query<01:33:02.159> and<01:33:02.400> queries<01:33:02.840> are<01:33:03.000> for<01:33:03.199> fetching<01:33:03.600> the
01:33:03.750 --> 01:33:03.760 align:start position:0%
Query and queries are for fetching the
01:33:03.760 --> 01:33:06.910 align:start position:0%
Query and queries are for fetching the
data<01:33:04.719> use<01:33:05.199> mutation<01:33:06.040> mutations<01:33:06.480> are<01:33:06.719> for
01:33:06.910 --> 01:33:06.920 align:start position:0%
data use mutation mutations are for
01:33:06.920 --> 01:33:10.149 align:start position:0%
data use mutation mutations are for
modifying<01:33:07.440> the<01:33:07.679> data<01:33:08.600> use<01:33:09.040> Query
01:33:10.149 --> 01:33:10.159 align:start position:0%
modifying the data use Query
01:33:10.159 --> 01:33:13.510 align:start position:0%
modifying the data use Query
client<01:33:11.159> as<01:33:11.280> well<01:33:11.440> as<01:33:11.679> use<01:33:12.119> infinite
01:33:13.510 --> 01:33:13.520 align:start position:0%
client as well as use infinite
01:33:13.520 --> 01:33:16.070 align:start position:0%
client as well as use infinite
query<01:33:14.520> these<01:33:14.639> are<01:33:14.880> all<01:33:15.080> the<01:33:15.199> things<01:33:15.440> we'll<01:33:15.719> use
01:33:16.070 --> 01:33:16.080 align:start position:0%
query these are all the things we'll use
01:33:16.080 --> 01:33:18.270 align:start position:0%
query these are all the things we'll use
from<01:33:16.520> react
01:33:18.270 --> 01:33:18.280 align:start position:0%
from react
01:33:18.280 --> 01:33:20.470 align:start position:0%
from react
query<01:33:19.280> and<01:33:19.440> once<01:33:19.679> again<01:33:19.920> the<01:33:20.080> reason<01:33:20.360> why
01:33:20.470 --> 01:33:20.480 align:start position:0%
query and once again the reason why
01:33:20.480 --> 01:33:22.590 align:start position:0%
query and once again the reason why
we're<01:33:20.679> using<01:33:21.000> it<01:33:21.360> is<01:33:21.679> to<01:33:21.840> simplify<01:33:22.320> data
01:33:22.590 --> 01:33:22.600 align:start position:0%
we're using it is to simplify data
01:33:22.600 --> 01:33:25.910 align:start position:0%
we're using it is to simplify data
fetching<01:33:23.280> and<01:33:23.800> mutation<01:33:24.800> while<01:33:25.280> getting<01:33:25.639> all
01:33:25.910 --> 01:33:25.920 align:start position:0%
fetching and mutation while getting all
01:33:25.920 --> 01:33:28.470 align:start position:0%
fetching and mutation while getting all
the<01:33:26.119> benefits<01:33:26.800> such<01:33:26.960> as<01:33:27.239> caching<01:33:28.040> infinite
01:33:28.470 --> 01:33:28.480 align:start position:0%
the benefits such as caching infinite
01:33:28.480 --> 01:33:31.790 align:start position:0%
the benefits such as caching infinite
scroll<01:33:29.119> and<01:33:29.280> more<01:33:29.840> out<01:33:30.000> of<01:33:30.119> the<01:33:30.400> box<01:33:31.400> now<01:33:31.679> what
01:33:31.790 --> 01:33:31.800 align:start position:0%
scroll and more out of the box now what
01:33:31.800 --> 01:33:33.590 align:start position:0%
scroll and more out of the box now what
you<01:33:31.880> want<01:33:32.000> to<01:33:32.159> do<01:33:32.440> here<01:33:32.920> is<01:33:33.080> you<01:33:33.199> want<01:33:33.320> to
01:33:33.590 --> 01:33:33.600 align:start position:0%
you want to do here is you want to
01:33:33.600 --> 01:33:36.430 align:start position:0%
you want to do here is you want to
export<01:33:34.119> our<01:33:34.440> first<01:33:34.880> mutation<01:33:35.719> so<01:33:35.880> we<01:33:36.000> can<01:33:36.119> say
01:33:36.430 --> 01:33:36.440 align:start position:0%
export our first mutation so we can say
01:33:36.440 --> 01:33:41.669 align:start position:0%
export our first mutation so we can say
export<01:33:37.040> const<01:33:38.040> use<01:33:38.840> create<01:33:39.679> user<01:33:40.480> account
01:33:41.669 --> 01:33:41.679 align:start position:0%
export const use create user account
01:33:41.679 --> 01:33:44.550 align:start position:0%
export const use create user account
mutation<01:33:42.679> it's<01:33:42.800> a<01:33:42.960> long<01:33:43.280> name<01:33:43.760> I<01:33:43.880> know<01:33:44.280> but<01:33:44.400> we
01:33:44.550 --> 01:33:44.560 align:start position:0%
mutation it's a long name I know but we
01:33:44.560 --> 01:33:47.390 align:start position:0%
mutation it's a long name I know but we
try<01:33:44.800> to<01:33:45.000> make<01:33:45.280> them<01:33:45.719> as<01:33:45.960> meaningful<01:33:46.920> as
01:33:47.390 --> 01:33:47.400 align:start position:0%
try to make them as meaningful as
01:33:47.400 --> 01:33:50.270 align:start position:0%
try to make them as meaningful as
possible<01:33:48.400> it's<01:33:48.560> an<01:33:48.719> arrow<01:33:49.119> function<01:33:49.880> that
01:33:50.270 --> 01:33:50.280 align:start position:0%
possible it's an arrow function that
01:33:50.280 --> 01:33:53.149 align:start position:0%
possible it's an arrow function that
returns<01:33:50.880> a<01:33:51.080> call<01:33:51.639> to<01:33:51.920> use
01:33:53.149 --> 01:33:53.159 align:start position:0%
returns a call to use
01:33:53.159 --> 01:33:56.430 align:start position:0%
returns a call to use
mutation<01:33:54.159> that<01:33:54.360> then<01:33:54.600> gets<01:33:54.760> an<01:33:55.040> object<01:33:55.440> in<01:33:56.280> and
01:33:56.430 --> 01:33:56.440 align:start position:0%
mutation that then gets an object in and
01:33:56.440 --> 01:33:58.030 align:start position:0%
mutation that then gets an object in and
then<01:33:56.560> we<01:33:56.639> want<01:33:56.760> to<01:33:57.000> pass<01:33:57.320> the<01:33:57.440> mutation
01:33:58.030 --> 01:33:58.040 align:start position:0%
then we want to pass the mutation
01:33:58.040 --> 01:34:01.109 align:start position:0%
then we want to pass the mutation
function<01:33:58.639> so<01:33:58.920> what<01:33:59.040> are<01:33:59.199> we<01:33:59.520> actually<01:34:00.119> doing
01:34:01.109 --> 01:34:01.119 align:start position:0%
function so what are we actually doing
01:34:01.119 --> 01:34:03.070 align:start position:0%
function so what are we actually doing
and<01:34:01.280> in<01:34:01.480> this<01:34:01.719> case<01:34:02.199> it's<01:34:02.400> going<01:34:02.520> to<01:34:02.679> be<01:34:02.880> an
01:34:03.070 --> 01:34:03.080 align:start position:0%
and in this case it's going to be an
01:34:03.080 --> 01:34:05.510 align:start position:0%
and in this case it's going to be an
arrow<01:34:03.480> function<01:34:04.280> that's<01:34:04.480> going<01:34:04.600> to<01:34:04.960> return<01:34:05.280> a
01:34:05.510 --> 01:34:05.520 align:start position:0%
arrow function that's going to return a
01:34:05.520 --> 01:34:09.830 align:start position:0%
arrow function that's going to return a
call<01:34:06.040> to<01:34:06.239> our<01:34:06.560> create<01:34:07.320> user<01:34:08.000> account<01:34:08.840> function
01:34:09.830 --> 01:34:09.840 align:start position:0%
call to our create user account function
01:34:09.840 --> 01:34:12.030 align:start position:0%
call to our create user account function
that<01:34:10.000> we<01:34:10.119> have<01:34:10.320> created<01:34:10.719> not<01:34:11.000> that<01:34:11.239> long<01:34:11.440> ago
01:34:12.030 --> 01:34:12.040 align:start position:0%
that we have created not that long ago
01:34:12.040 --> 01:34:13.390 align:start position:0%
that we have created not that long ago
within
01:34:13.390 --> 01:34:13.400 align:start position:0%
within
01:34:13.400 --> 01:34:15.709 align:start position:0%
within
upright<01:34:14.400> SL
01:34:15.709 --> 01:34:15.719 align:start position:0%
upright SL
01:34:15.719 --> 01:34:18.669 align:start position:0%
upright SL
API<01:34:16.719> and<01:34:16.960> it's<01:34:17.119> going<01:34:17.280> to<01:34:17.440> get<01:34:17.600> the<01:34:17.760> user<01:34:18.480> right
01:34:18.669 --> 01:34:18.679 align:start position:0%
API and it's going to get the user right
01:34:18.679 --> 01:34:21.669 align:start position:0%
API and it's going to get the user right
here<01:34:19.080> as<01:34:19.239> its<01:34:19.480> first<01:34:19.840> and<01:34:20.040> only<01:34:20.520> parameter<01:34:21.560> and
01:34:21.669 --> 01:34:21.679 align:start position:0%
here as its first and only parameter and
01:34:21.679 --> 01:34:23.390 align:start position:0%
here as its first and only parameter and
that<01:34:21.840> user<01:34:22.119> is<01:34:22.280> coming<01:34:22.679> right<01:34:22.880> here<01:34:23.199> through
01:34:23.390 --> 01:34:23.400 align:start position:0%
that user is coming right here through
01:34:23.400 --> 01:34:25.270 align:start position:0%
that user is coming right here through
the<01:34:23.560> function<01:34:24.239> which<01:34:24.360> is<01:34:24.480> going<01:34:24.639> to<01:34:24.760> be<01:34:24.920> of<01:34:25.040> a
01:34:25.270 --> 01:34:25.280 align:start position:0%
the function which is going to be of a
01:34:25.280 --> 01:34:28.990 align:start position:0%
the function which is going to be of a
type<01:34:25.960> I<01:34:26.760> new<01:34:27.360> user<01:34:28.000> which<01:34:28.159> we<01:34:28.239> can<01:34:28.440> import<01:34:28.760> from
01:34:28.990 --> 01:34:29.000 align:start position:0%
type I new user which we can import from
01:34:29.000 --> 01:34:32.030 align:start position:0%
type I new user which we can import from
types<01:34:29.840> so<01:34:30.080> essentially<01:34:30.600> what<01:34:30.760> we've<01:34:31.000> done<01:34:31.600> is
01:34:32.030 --> 01:34:32.040 align:start position:0%
types so essentially what we've done is
01:34:32.040 --> 01:34:34.430 align:start position:0%
types so essentially what we've done is
we've<01:34:32.400> initialized<01:34:33.360> a<01:34:33.560> new<01:34:33.800> mutation
01:34:34.430 --> 01:34:34.440 align:start position:0%
we've initialized a new mutation
01:34:34.440 --> 01:34:37.990 align:start position:0%
we've initialized a new mutation
function<01:34:35.119> so<01:34:35.360> that<01:34:35.600> now<01:34:36.520> react<01:34:36.960> query<01:34:37.719> also
01:34:37.990 --> 01:34:38.000 align:start position:0%
function so that now react query also
01:34:38.000 --> 01:34:41.149 align:start position:0%
function so that now react query also
knows<01:34:38.360> what<01:34:38.520> we<01:34:38.600> are<01:34:39.000> doing<01:34:40.000> now<01:34:40.520> we<01:34:40.600> can<01:34:40.840> use
01:34:41.149 --> 01:34:41.159 align:start position:0%
knows what we are doing now we can use
01:34:41.159 --> 01:34:43.629 align:start position:0%
knows what we are doing now we can use
this<01:34:41.480> use<01:34:41.840> create<01:34:42.119> user<01:34:42.440> account<01:34:42.760> mutation
01:34:43.629 --> 01:34:43.639 align:start position:0%
this use create user account mutation
01:34:43.639 --> 01:34:46.149 align:start position:0%
this use create user account mutation
within<01:34:44.040> our<01:34:44.280> signup<01:34:44.800> form<01:34:45.800> and<01:34:45.920> you<01:34:46.040> might
01:34:46.149 --> 01:34:46.159 align:start position:0%
within our signup form and you might
01:34:46.159 --> 01:34:47.950 align:start position:0%
within our signup form and you might
have<01:34:46.280> seen<01:34:46.560> this<01:34:46.800> right<01:34:47.000> here<01:34:47.239> I<01:34:47.320> was<01:34:47.520> testing
01:34:47.950 --> 01:34:47.960 align:start position:0%
have seen this right here I was testing
01:34:47.960 --> 01:34:50.430 align:start position:0%
have seen this right here I was testing
that<01:34:48.199> but<01:34:48.360> let's<01:34:48.560> create<01:34:48.760> it<01:34:48.920> from<01:34:49.440> scratch
01:34:50.430 --> 01:34:50.440 align:start position:0%
that but let's create it from scratch
01:34:50.440 --> 01:34:52.550 align:start position:0%
that but let's create it from scratch
right<01:34:50.639> here<01:34:50.920> at<01:34:51.040> the<01:34:51.239> top<01:34:51.719> we<01:34:51.800> can<01:34:51.920> do<01:34:52.080> it<01:34:52.239> even
01:34:52.550 --> 01:34:52.560 align:start position:0%
right here at the top we can do it even
01:34:52.560 --> 01:34:56.430 align:start position:0%
right here at the top we can do it even
above<01:34:53.360> the<01:34:53.520> form<01:34:54.360> we<01:34:54.480> can<01:34:54.639> say<01:34:55.159> const<01:34:56.159> get
01:34:56.430 --> 01:34:56.440 align:start position:0%
above the form we can say const get
01:34:56.440 --> 01:34:59.270 align:start position:0%
above the form we can say const get
something<01:34:56.960> an<01:34:57.199> object<01:34:57.560> out<01:34:57.679> of<01:34:57.880> it<01:34:58.400> and<01:34:58.639> call<01:34:59.040> a
01:34:59.270 --> 01:34:59.280 align:start position:0%
something an object out of it and call a
01:34:59.280 --> 01:35:04.030 align:start position:0%
something an object out of it and call a
use<01:35:00.040> create<01:35:01.040> user<01:35:01.840> account<01:35:02.719> mutation<01:35:03.719> just
01:35:04.030 --> 01:35:04.040 align:start position:0%
use create user account mutation just
01:35:04.040 --> 01:35:07.590 align:start position:0%
use create user account mutation just
like<01:35:04.280> so<01:35:05.080> as<01:35:05.199> a<01:35:05.800> hook<01:35:06.800> we<01:35:06.920> can<01:35:07.080> immediately
01:35:07.590 --> 01:35:07.600 align:start position:0%
like so as a hook we can immediately
01:35:07.600 --> 01:35:09.229 align:start position:0%
like so as a hook we can immediately
import<01:35:07.920> it<01:35:08.119> from
01:35:09.229 --> 01:35:09.239 align:start position:0%
import it from
01:35:09.239 --> 01:35:13.310 align:start position:0%
import it from
addlib<01:35:10.239> SL<01:35:10.760> react<01:35:11.199> query<01:35:12.000> forqueries<01:35:13.000> and
01:35:13.310 --> 01:35:13.320 align:start position:0%
addlib SL react query forqueries and
01:35:13.320 --> 01:35:15.629 align:start position:0%
addlib SL react query forqueries and
mutations<01:35:14.320> there<01:35:14.440> we
01:35:15.629 --> 01:35:15.639 align:start position:0%
mutations there we
01:35:15.639 --> 01:35:19.229 align:start position:0%
mutations there we
go<01:35:16.639> and<01:35:16.880> now<01:35:17.520> what<01:35:17.679> do<01:35:17.800> we<01:35:18.000> get<01:35:18.239> back<01:35:18.880> well<01:35:19.080> we
01:35:19.229 --> 01:35:19.239 align:start position:0%
go and now what do we get back well we
01:35:19.239 --> 01:35:22.950 align:start position:0%
go and now what do we get back well we
get<01:35:19.520> back<01:35:20.159> mutate<01:35:21.159> a
01:35:22.950 --> 01:35:22.960 align:start position:0%
get back mutate a
01:35:22.960 --> 01:35:26.750 align:start position:0%
get back mutate a
sync<01:35:23.960> as<01:35:24.080> well<01:35:24.280> as<01:35:24.520> is<01:35:25.040> loading<01:35:26.040> the<01:35:26.199> mutate
01:35:26.750 --> 01:35:26.760 align:start position:0%
sync as well as is loading the mutate
01:35:26.760 --> 01:35:29.990 align:start position:0%
sync as well as is loading the mutate
async<01:35:27.760> if<01:35:27.880> I<01:35:28.000> can<01:35:28.159> spell<01:35:28.400> it<01:35:28.600> properly<01:35:29.600> is<01:35:29.800> the
01:35:29.990 --> 01:35:30.000 align:start position:0%
async if I can spell it properly is the
01:35:30.000 --> 01:35:31.870 align:start position:0%
async if I can spell it properly is the
actual<01:35:30.400> function<01:35:30.920> that<01:35:31.040> we're<01:35:31.199> calling<01:35:31.679> right
01:35:31.870 --> 01:35:31.880 align:start position:0%
actual function that we're calling right
01:35:31.880 --> 01:35:35.070 align:start position:0%
actual function that we're calling right
here<01:35:32.560> in<01:35:32.800> this<01:35:33.000> case<01:35:33.560> it<01:35:33.679> is<01:35:33.840> the<01:35:34.040> create<01:35:34.560> user
01:35:35.070 --> 01:35:35.080 align:start position:0%
here in this case it is the create user
01:35:35.080 --> 01:35:37.629 align:start position:0%
here in this case it is the create user
account<01:35:35.800> function<01:35:36.600> that<01:35:36.719> we<01:35:36.880> have<01:35:37.040> created
01:35:37.629 --> 01:35:37.639 align:start position:0%
account function that we have created
01:35:37.639 --> 01:35:40.229 align:start position:0%
account function that we have created
not<01:35:37.960> that<01:35:38.159> long<01:35:38.400> ago<01:35:39.159> that<01:35:39.480> creates<01:35:39.880> the<01:35:40.000> user
01:35:40.229 --> 01:35:40.239 align:start position:0%
not that long ago that creates the user
01:35:40.239 --> 01:35:42.910 align:start position:0%
not that long ago that creates the user
in<01:35:40.360> the<01:35:40.719> authentication<01:35:41.719> and<01:35:41.960> also<01:35:42.320> saves<01:35:42.800> the
01:35:42.910 --> 01:35:42.920 align:start position:0%
in the authentication and also saves the
01:35:42.920 --> 01:35:46.629 align:start position:0%
in the authentication and also saves the
user<01:35:43.400> in<01:35:43.520> the<01:35:44.119> database<01:35:45.119> so<01:35:45.960> now<01:35:46.400> we're
01:35:46.629 --> 01:35:46.639 align:start position:0%
user in the database so now we're
01:35:46.639 --> 01:35:49.149 align:start position:0%
user in the database so now we're
calling<01:35:47.040> that<01:35:47.239> as<01:35:47.360> a<01:35:47.560> hook<01:35:48.480> and<01:35:48.679> it's<01:35:48.880> giving
01:35:49.149 --> 01:35:49.159 align:start position:0%
calling that as a hook and it's giving
01:35:49.159 --> 01:35:51.870 align:start position:0%
calling that as a hook and it's giving
us<01:35:49.440> this<01:35:49.600> mutate<01:35:50.040> async<01:35:50.560> function<01:35:51.440> but<01:35:51.560> we<01:35:51.679> can
01:35:51.870 --> 01:35:51.880 align:start position:0%
us this mutate async function but we can
01:35:51.880 --> 01:35:54.870 align:start position:0%
us this mutate async function but we can
rename<01:35:52.320> it<01:35:52.560> so<01:35:52.760> we<01:35:52.920> know<01:35:53.199> what<01:35:53.320> it<01:35:53.560> means<01:35:54.560> this
01:35:54.870 --> 01:35:54.880 align:start position:0%
rename it so we know what it means this
01:35:54.880 --> 01:35:58.229 align:start position:0%
rename it so we know what it means this
is<01:35:55.040> going<01:35:55.239> to<01:35:55.480> create<01:35:56.119> a<01:35:56.360> new<01:35:57.000> user<01:35:57.679> account<01:35:58.119> so
01:35:58.229 --> 01:35:58.239 align:start position:0%
is going to create a new user account so
01:35:58.239 --> 01:36:01.750 align:start position:0%
is going to create a new user account so
we<01:35:58.360> can<01:35:58.480> say<01:35:58.760> create<01:35:59.520> user<01:36:00.320> account<01:36:01.320> so<01:36:01.600> this
01:36:01.750 --> 01:36:01.760 align:start position:0%
we can say create user account so this
01:36:01.760 --> 01:36:03.990 align:start position:0%
we can say create user account so this
syntax<01:36:02.199> simply<01:36:02.600> renames<01:36:03.320> this<01:36:03.520> mutate
01:36:03.990 --> 01:36:04.000 align:start position:0%
syntax simply renames this mutate
01:36:04.000 --> 01:36:06.870 align:start position:0%
syntax simply renames this mutate
function<01:36:04.560> into<01:36:04.840> create<01:36:05.159> user<01:36:05.600> account<01:36:06.600> and<01:36:06.800> we
01:36:06.870 --> 01:36:06.880 align:start position:0%
function into create user account and we
01:36:06.880 --> 01:36:10.310 align:start position:0%
function into create user account and we
can<01:36:07.080> also<01:36:07.440> rename<01:36:07.960> is<01:36:08.199> loading<01:36:09.000> to<01:36:09.840> is
01:36:10.310 --> 01:36:10.320 align:start position:0%
can also rename is loading to is
01:36:10.320 --> 01:36:13.950 align:start position:0%
can also rename is loading to is
creating<01:36:11.119> user<01:36:11.679> so<01:36:11.840> it<01:36:12.000> makes<01:36:12.239> more<01:36:12.800> sense<01:36:13.800> and
01:36:13.950 --> 01:36:13.960 align:start position:0%
creating user so it makes more sense and
01:36:13.960 --> 01:36:16.390 align:start position:0%
creating user so it makes more sense and
we<01:36:14.119> no<01:36:14.320> longer<01:36:14.639> need<01:36:14.920> this<01:36:15.080> fake<01:36:15.719> is<01:36:15.880> loading
01:36:16.390 --> 01:36:16.400 align:start position:0%
we no longer need this fake is loading
01:36:16.400 --> 01:36:18.390 align:start position:0%
we no longer need this fake is loading
right<01:36:16.600> here<01:36:16.960> so<01:36:17.119> we<01:36:17.239> can<01:36:17.400> remove<01:36:17.719> it<01:36:18.199> and<01:36:18.320> we
01:36:18.390 --> 01:36:18.400 align:start position:0%
right here so we can remove it and we
01:36:18.400 --> 01:36:21.430 align:start position:0%
right here so we can remove it and we
can<01:36:18.600> immediately<01:36:19.159> use<01:36:19.679> is<01:36:20.080> creating<01:36:20.560> user
01:36:21.430 --> 01:36:21.440 align:start position:0%
can immediately use is creating user
01:36:21.440 --> 01:36:24.390 align:start position:0%
can immediately use is creating user
right<01:36:21.600> here<01:36:21.800> at<01:36:21.960> the<01:36:22.280> bottom<01:36:23.280> there<01:36:23.440> we<01:36:23.639> go
01:36:24.390 --> 01:36:24.400 align:start position:0%
right here at the bottom there we go
01:36:24.400 --> 01:36:27.510 align:start position:0%
right here at the bottom there we go
that's<01:36:24.600> our<01:36:24.800> new<01:36:25.080> is<01:36:25.280> loading<01:36:26.280> so<01:36:26.560> react<01:36:26.960> query
01:36:27.510 --> 01:36:27.520 align:start position:0%
that's our new is loading so react query
01:36:27.520 --> 01:36:30.629 align:start position:0%
that's our new is loading so react query
provides<01:36:27.960> this<01:36:28.119> out<01:36:28.280> of<01:36:28.400> the<01:36:28.560> box<01:36:28.880> as<01:36:29.239> well<01:36:30.239> now
01:36:30.629 --> 01:36:30.639 align:start position:0%
provides this out of the box as well now
01:36:30.639 --> 01:36:32.750 align:start position:0%
provides this out of the box as well now
right<01:36:30.840> now<01:36:31.199> it<01:36:31.320> says<01:36:31.639> is<01:36:31.880> loading<01:36:32.320> is<01:36:32.480> not
01:36:32.750 --> 01:36:32.760 align:start position:0%
right now it says is loading is not
01:36:32.760 --> 01:36:34.709 align:start position:0%
right now it says is loading is not
defined<01:36:33.159> or<01:36:33.400> does<01:36:33.560> not<01:36:33.840> exist<01:36:34.360> but<01:36:34.520> don't
01:36:34.709 --> 01:36:34.719 align:start position:0%
defined or does not exist but don't
01:36:34.719 --> 01:36:36.669 align:start position:0%
defined or does not exist but don't
worry<01:36:34.920> we're<01:36:35.080> going<01:36:35.159> to<01:36:35.320> fix<01:36:35.600> this<01:36:35.800> soon<01:36:36.440> for
01:36:36.669 --> 01:36:36.679 align:start position:0%
worry we're going to fix this soon for
01:36:36.679 --> 01:36:38.310 align:start position:0%
worry we're going to fix this soon for
now<01:36:36.920> it's<01:36:37.119> important<01:36:37.639> that<01:36:37.800> we<01:36:37.960> have<01:36:38.159> this
01:36:38.310 --> 01:36:38.320 align:start position:0%
now it's important that we have this
01:36:38.320 --> 01:36:40.590 align:start position:0%
now it's important that we have this
create<01:36:38.719> user<01:36:39.080> account<01:36:39.560> which<01:36:39.679> we<01:36:39.800> can<01:36:40.000> call
01:36:40.590 --> 01:36:40.600 align:start position:0%
create user account which we can call
01:36:40.600 --> 01:36:42.470 align:start position:0%
create user account which we can call
and<01:36:40.760> we<01:36:40.880> no<01:36:41.040> longer<01:36:41.320> need<01:36:41.440> to<01:36:41.560> use<01:36:41.719> it<01:36:41.960> directly
01:36:42.470 --> 01:36:42.480 align:start position:0%
and we no longer need to use it directly
01:36:42.480 --> 01:36:45.109 align:start position:0%
and we no longer need to use it directly
from<01:36:42.840> aight<01:36:43.560> because<01:36:43.880> this<01:36:44.040> mutation<01:36:44.880> is
01:36:45.109 --> 01:36:45.119 align:start position:0%
from aight because this mutation is
01:36:45.119 --> 01:36:47.669 align:start position:0%
from aight because this mutation is
actually<01:36:45.600> calling<01:36:46.360> create<01:36:46.880> user<01:36:47.320> account
01:36:47.669 --> 01:36:47.679 align:start position:0%
actually calling create user account
01:36:47.679 --> 01:36:50.510 align:start position:0%
actually calling create user account
from<01:36:47.920> aight<01:36:48.679> for<01:36:48.960> us<01:36:49.480> it's<01:36:49.679> kind<01:36:49.800> of<01:36:49.920> a<01:36:50.119> level
01:36:50.510 --> 01:36:50.520 align:start position:0%
from aight for us it's kind of a level
01:36:50.520 --> 01:36:52.669 align:start position:0%
from aight for us it's kind of a level
in<01:36:50.719> between<01:36:51.480> the<01:36:51.639> app<01:36:51.960> right<01:36:52.159> in<01:36:52.280> our<01:36:52.440> front
01:36:52.669 --> 01:36:52.679 align:start position:0%
in between the app right in our front
01:36:52.679 --> 01:36:55.470 align:start position:0%
in between the app right in our front
end<01:36:53.159> to<01:36:53.400> ensure<01:36:54.000> that<01:36:54.239> we<01:36:54.440> have<01:36:54.719> easier<01:36:55.199> time
01:36:55.470 --> 01:36:55.480 align:start position:0%
end to ensure that we have easier time
01:36:55.480 --> 01:36:58.470 align:start position:0%
end to ensure that we have easier time
fetching<01:36:55.920> data<01:36:56.400> on<01:36:56.639> react<01:36:57.480> and<01:36:57.800> querying<01:36:58.320> and
01:36:58.470 --> 01:36:58.480 align:start position:0%
fetching data on react and querying and
01:36:58.480 --> 01:37:01.550 align:start position:0%
fetching data on react and querying and
mutating<01:36:58.960> the<01:36:59.119> data<01:36:59.920> as<01:37:00.119> well<01:37:00.280> as<01:37:00.520> caching<01:37:00.920> it
01:37:01.550 --> 01:37:01.560 align:start position:0%
mutating the data as well as caching it
01:37:01.560 --> 01:37:04.030 align:start position:0%
mutating the data as well as caching it
so<01:37:01.840> now<01:37:02.320> we<01:37:02.520> have<01:37:02.920> this<01:37:03.360> and<01:37:03.480> we're<01:37:03.679> calling
01:37:04.030 --> 01:37:04.040 align:start position:0%
so now we have this and we're calling
01:37:04.040 --> 01:37:05.870 align:start position:0%
so now we have this and we're calling
the<01:37:04.199> create<01:37:04.520> user<01:37:04.880> account<01:37:05.280> as<01:37:05.400> we<01:37:05.560> were
01:37:05.870 --> 01:37:05.880 align:start position:0%
the create user account as we were
01:37:05.880 --> 01:37:08.550 align:start position:0%
the create user account as we were
before<01:37:06.560> but<01:37:06.760> now<01:37:07.159> this<01:37:07.320> is<01:37:07.440> a<01:37:07.600> mutation<01:37:08.280> from
01:37:08.550 --> 01:37:08.560 align:start position:0%
before but now this is a mutation from
01:37:08.560 --> 01:37:12.030 align:start position:0%
before but now this is a mutation from
react<01:37:09.040> query<01:37:09.719> now<01:37:10.040> we<01:37:10.119> can<01:37:10.360> also<01:37:10.760> do<01:37:11.119> a<01:37:11.360> session
01:37:12.030 --> 01:37:12.040 align:start position:0%
react query now we can also do a session
01:37:12.040 --> 01:37:14.270 align:start position:0%
react query now we can also do a session
which<01:37:12.159> is<01:37:12.280> the<01:37:12.520> sign<01:37:12.800> in<01:37:13.199> account<01:37:14.040> which<01:37:14.159> is
01:37:14.270 --> 01:37:14.280 align:start position:0%
which is the sign in account which is
01:37:14.280 --> 01:37:16.990 align:start position:0%
which is the sign in account which is
going<01:37:14.480> to<01:37:14.639> be<01:37:15.119> yet<01:37:15.440> another<01:37:15.800> mutation<01:37:16.800> so
01:37:16.990 --> 01:37:17.000 align:start position:0%
going to be yet another mutation so
01:37:17.000 --> 01:37:20.310 align:start position:0%
going to be yet another mutation so
let's<01:37:17.239> go<01:37:17.440> to<01:37:17.760> our<01:37:18.320> mutations<01:37:19.320> right<01:37:19.560> here<01:37:20.199> and
01:37:20.310 --> 01:37:20.320 align:start position:0%
let's go to our mutations right here and
01:37:20.320 --> 01:37:22.030 align:start position:0%
let's go to our mutations right here and
we<01:37:20.400> can<01:37:20.560> create<01:37:20.840> another<01:37:21.360> one<01:37:21.679> just<01:37:21.840> by
01:37:22.030 --> 01:37:22.040 align:start position:0%
we can create another one just by
01:37:22.040 --> 01:37:24.669 align:start position:0%
we can create another one just by
duplicating<01:37:22.639> this<01:37:22.760> one<01:37:23.080> below<01:37:24.080> we<01:37:24.199> can<01:37:24.440> call
01:37:24.669 --> 01:37:24.679 align:start position:0%
duplicating this one below we can call
01:37:24.679 --> 01:37:29.790 align:start position:0%
duplicating this one below we can call
it<01:37:25.360> use<01:37:26.000> sign<01:37:26.360> in<01:37:26.800> account<01:37:27.239> mutation<01:37:28.080> so<01:37:28.760> use
01:37:29.790 --> 01:37:29.800 align:start position:0%
it use sign in account mutation so use
01:37:29.800 --> 01:37:33.790 align:start position:0%
it use sign in account mutation so use
sign<01:37:30.800> in<01:37:31.920> account<01:37:32.920> and<01:37:33.159> now<01:37:33.320> that<01:37:33.440> I<01:37:33.600> think
01:37:33.790 --> 01:37:33.800 align:start position:0%
sign in account and now that I think
01:37:33.800 --> 01:37:35.669 align:start position:0%
sign in account and now that I think
about<01:37:34.000> it<01:37:34.280> we<01:37:34.400> don't<01:37:34.639> have<01:37:34.760> to<01:37:34.960> add<01:37:35.199> mutation
01:37:35.669 --> 01:37:35.679 align:start position:0%
about it we don't have to add mutation
01:37:35.679 --> 01:37:37.550 align:start position:0%
about it we don't have to add mutation
at<01:37:35.800> the<01:37:35.880> end<01:37:36.040> of<01:37:36.199> every<01:37:36.440> single<01:37:36.719> one<01:37:37.119> so<01:37:37.320> we<01:37:37.400> can
01:37:37.550 --> 01:37:37.560 align:start position:0%
at the end of every single one so we can
01:37:37.560 --> 01:37:40.709 align:start position:0%
at the end of every single one so we can
simply<01:37:37.920> fix<01:37:38.239> this<01:37:38.480> right<01:37:38.840> here<01:37:39.840> and<01:37:40.040> modify<01:37:40.480> it
01:37:40.709 --> 01:37:40.719 align:start position:0%
simply fix this right here and modify it
01:37:40.719 --> 01:37:44.109 align:start position:0%
simply fix this right here and modify it
right<01:37:40.920> here<01:37:41.280> at<01:37:41.400> the<01:37:41.840> top<01:37:42.840> as<01:37:43.000> well<01:37:43.199> as<01:37:43.480> in<01:37:43.599> the
01:37:44.109 --> 01:37:44.119 align:start position:0%
right here at the top as well as in the
01:37:44.119 --> 01:37:47.149 align:start position:0%
right here at the top as well as in the
import<01:37:45.119> so<01:37:45.400> now<01:37:45.880> if<01:37:45.960> we<01:37:46.119> go<01:37:46.400> back<01:37:46.679> we<01:37:46.800> have<01:37:46.960> the
01:37:47.149 --> 01:37:47.159 align:start position:0%
import so now if we go back we have the
01:37:47.159 --> 01:37:49.870 align:start position:0%
import so now if we go back we have the
use<01:37:47.639> signin<01:37:48.199> account<01:37:48.960> and<01:37:49.239> here<01:37:49.560> what<01:37:49.679> we<01:37:49.800> want
01:37:49.870 --> 01:37:49.880 align:start position:0%
use signin account and here what we want
01:37:49.880 --> 01:37:52.750 align:start position:0%
use signin account and here what we want
to<01:37:50.040> do<01:37:50.639> is<01:37:50.880> have<01:37:51.239> a<01:37:51.400> mutation<01:37:51.960> function<01:37:52.560> that's
01:37:52.750 --> 01:37:52.760 align:start position:0%
to do is have a mutation function that's
01:37:52.760 --> 01:37:55.229 align:start position:0%
to do is have a mutation function that's
going<01:37:52.920> to<01:37:53.040> get<01:37:53.199> the<01:37:53.360> user<01:37:54.119> but<01:37:54.280> in<01:37:54.480> this<01:37:54.679> case
01:37:55.229 --> 01:37:55.239 align:start position:0%
going to get the user but in this case
01:37:55.239 --> 01:37:57.950 align:start position:0%
going to get the user but in this case
the<01:37:55.360> user<01:37:55.760> is<01:37:55.920> going<01:37:56.080> to<01:37:56.239> be<01:37:56.440> just<01:37:56.639> the<01:37:56.960> email
01:37:57.950 --> 01:37:57.960 align:start position:0%
the user is going to be just the email
01:37:57.960 --> 01:38:01.510 align:start position:0%
the user is going to be just the email
of<01:37:58.119> a<01:37:58.320> type<01:37:58.719> string<01:37:59.719> as<01:37:59.920> well<01:38:00.239> as<01:38:00.400> a<01:38:00.719> password
01:38:01.510 --> 01:38:01.520 align:start position:0%
of a type string as well as a password
01:38:01.520 --> 01:38:02.990 align:start position:0%
of a type string as well as a password
of<01:38:01.639> a<01:38:01.840> type
01:38:02.990 --> 01:38:03.000 align:start position:0%
of a type
01:38:03.000 --> 01:38:05.470 align:start position:0%
of a type
string<01:38:04.000> we<01:38:04.080> can<01:38:04.280> put<01:38:04.440> this<01:38:04.520> in<01:38:04.639> a<01:38:04.800> new<01:38:05.000> line<01:38:05.320> so
01:38:05.470 --> 01:38:05.480 align:start position:0%
string we can put this in a new line so
01:38:05.480 --> 01:38:08.270 align:start position:0%
string we can put this in a new line so
it<01:38:05.599> makes<01:38:05.800> a<01:38:05.920> bit<01:38:06.119> more<01:38:06.560> sense<01:38:07.560> and<01:38:07.760> now<01:38:08.119> of
01:38:08.270 --> 01:38:08.280 align:start position:0%
it makes a bit more sense and now of
01:38:08.280 --> 01:38:09.790 align:start position:0%
it makes a bit more sense and now of
course<01:38:08.480> we're<01:38:08.639> not<01:38:08.840> going<01:38:08.920> to<01:38:09.080> call<01:38:09.360> the<01:38:09.520> same
01:38:09.790 --> 01:38:09.800 align:start position:0%
course we're not going to call the same
01:38:09.800 --> 01:38:12.470 align:start position:0%
course we're not going to call the same
function<01:38:10.199> once<01:38:10.800> again<01:38:11.800> which<01:38:11.920> is<01:38:12.040> the<01:38:12.199> create
01:38:12.470 --> 01:38:12.480 align:start position:0%
function once again which is the create
01:38:12.480 --> 01:38:14.870 align:start position:0%
function once again which is the create
user<01:38:12.840> account<01:38:13.719> in<01:38:13.960> this<01:38:14.199> case<01:38:14.480> we're<01:38:14.639> going<01:38:14.719> to
01:38:14.870 --> 01:38:14.880 align:start position:0%
user account in this case we're going to
01:38:14.880 --> 01:38:18.629 align:start position:0%
user account in this case we're going to
call<01:38:15.599> a<01:38:15.920> sign<01:38:16.440> in<01:38:17.000> account<01:38:18.000> and<01:38:18.159> we<01:38:18.280> want<01:38:18.400> to
01:38:18.629 --> 01:38:18.639 align:start position:0%
call a sign in account and we want to
01:38:18.639 --> 01:38:22.070 align:start position:0%
call a sign in account and we want to
pass<01:38:19.000> the<01:38:19.280> user<01:38:20.280> and<01:38:20.639> this<01:38:20.880> sign<01:38:21.400> in<01:38:21.639> account
01:38:22.070 --> 01:38:22.080 align:start position:0%
pass the user and this sign in account
01:38:22.080 --> 01:38:25.910 align:start position:0%
pass the user and this sign in account
will<01:38:22.400> create<01:38:22.880> in<01:38:23.159> aide<01:38:23.920> so<01:38:24.119> let's<01:38:24.320> go<01:38:24.480> to<01:38:24.719> aite
01:38:25.910 --> 01:38:25.920 align:start position:0%
will create in aide so let's go to aite
01:38:25.920 --> 01:38:30.070 align:start position:0%
will create in aide so let's go to aite
API<01:38:26.920> we<01:38:27.119> now<01:38:27.400> have<01:38:28.199> create<01:38:28.520> user<01:38:28.880> account<01:38:29.760> save
01:38:30.070 --> 01:38:30.080 align:start position:0%
API we now have create user account save
01:38:30.080 --> 01:38:31.070 align:start position:0%
API we now have create user account save
user<01:38:30.320> to
01:38:31.070 --> 01:38:31.080 align:start position:0%
user to
01:38:31.080 --> 01:38:33.910 align:start position:0%
user to
DB<01:38:32.080> but<01:38:32.440> right<01:38:32.679> below<01:38:33.000> it<01:38:33.199> we're<01:38:33.400> going<01:38:33.560> to
01:38:33.910 --> 01:38:33.920 align:start position:0%
DB but right below it we're going to
01:38:33.920 --> 01:38:39.510 align:start position:0%
DB but right below it we're going to
export<01:38:35.040> async<01:38:36.239> function<01:38:37.239> sign<01:38:37.840> in<01:38:38.520> account
01:38:39.510 --> 01:38:39.520 align:start position:0%
export async function sign in account
01:38:39.520 --> 01:38:41.589 align:start position:0%
export async function sign in account
that's<01:38:39.719> going<01:38:39.920> to<01:38:40.040> get<01:38:40.199> the<01:38:40.360> user<01:38:41.360> which<01:38:41.480> is
01:38:41.589 --> 01:38:41.599 align:start position:0%
that's going to get the user which is
01:38:41.599 --> 01:38:44.910 align:start position:0%
that's going to get the user which is
going<01:38:41.800> to<01:38:42.119> have<01:38:42.520> a<01:38:42.840> email<01:38:43.400> of<01:38:43.560> a<01:38:43.760> type<01:38:44.040> string
01:38:44.910 --> 01:38:44.920 align:start position:0%
going to have a email of a type string
01:38:44.920 --> 01:38:47.709 align:start position:0%
going to have a email of a type string
as<01:38:45.159> well<01:38:45.440> as<01:38:45.760> a<01:38:46.040> password<01:38:46.760> of<01:38:46.920> a<01:38:47.119> type<01:38:47.360> string
01:38:47.709 --> 01:38:47.719 align:start position:0%
as well as a password of a type string
01:38:47.719 --> 01:38:49.870 align:start position:0%
as well as a password of a type string
as<01:38:47.840> well<01:38:48.480> and<01:38:48.639> then<01:38:49.000> it's<01:38:49.159> going<01:38:49.320> to<01:38:49.520> have<01:38:49.679> a
01:38:49.870 --> 01:38:49.880 align:start position:0%
as well and then it's going to have a
01:38:49.880 --> 01:38:51.910 align:start position:0%
as well and then it's going to have a
try<01:38:50.239> and<01:38:50.520> catch<01:38:50.800> block
01:38:51.910 --> 01:38:51.920 align:start position:0%
try and catch block
01:38:51.920 --> 01:38:54.709 align:start position:0%
try and catch block
here<01:38:52.159> we<01:38:52.280> can<01:38:52.440> simply<01:38:52.760> kolck<01:38:53.520> the<01:38:53.639> error<01:38:54.560> and
01:38:54.709 --> 01:38:54.719 align:start position:0%
here we can simply kolck the error and
01:38:54.719 --> 01:38:57.430 align:start position:0%
here we can simply kolck the error and
in<01:38:54.880> the<01:38:55.040> try<01:38:55.639> we<01:38:55.719> can<01:38:55.920> create<01:38:56.280> a<01:38:56.520> new<01:38:56.960> email
01:38:57.430 --> 01:38:57.440 align:start position:0%
in the try we can create a new email
01:38:57.440 --> 01:39:00.750 align:start position:0%
in the try we can create a new email
session<01:38:58.239> by<01:38:58.400> saying<01:38:58.760> cons<01:38:59.239> session<01:39:00.159> is<01:39:00.440> equal
01:39:00.750 --> 01:39:00.760 align:start position:0%
session by saying cons session is equal
01:39:00.760 --> 01:39:05.709 align:start position:0%
session by saying cons session is equal
to<01:39:01.840> await<01:39:03.119> account.<01:39:04.119> create<01:39:04.639> session<01:39:05.520> and
01:39:05.709 --> 01:39:05.719 align:start position:0%
to await account. create session and
01:39:05.719 --> 01:39:07.910 align:start position:0%
to await account. create session and
again<01:39:06.040> this<01:39:06.159> is<01:39:06.320> another<01:39:06.599> utility<01:39:07.480> provided
01:39:07.910 --> 01:39:07.920 align:start position:0%
again this is another utility provided
01:39:07.920 --> 01:39:11.870 align:start position:0%
again this is another utility provided
to<01:39:08.159> us<01:39:08.679> by<01:39:08.960> aight<01:39:09.800> it's<01:39:10.119> create<01:39:10.679> email<01:39:11.159> session
01:39:11.870 --> 01:39:11.880 align:start position:0%
to us by aight it's create email session
01:39:11.880 --> 01:39:15.629 align:start position:0%
to us by aight it's create email session
to<01:39:12.239> which<01:39:12.679> we<01:39:12.840> have<01:39:12.960> to<01:39:13.199> pass<01:39:13.520> user.<01:39:14.440> email<01:39:15.440> as
01:39:15.629 --> 01:39:15.639 align:start position:0%
to which we have to pass user. email as
01:39:15.639 --> 01:39:18.390 align:start position:0%
to which we have to pass user. email as
well<01:39:16.080> as<01:39:16.320> the<01:39:16.520> password<01:39:17.159> by<01:39:17.280> saying<01:39:17.599> user.
01:39:18.390 --> 01:39:18.400 align:start position:0%
well as the password by saying user.
01:39:18.400 --> 01:39:21.109 align:start position:0%
well as the password by saying user.
password<01:39:19.199> and<01:39:19.400> then<01:39:19.679> we<01:39:19.800> can<01:39:20.159> return<01:39:20.679> this
01:39:21.109 --> 01:39:21.119 align:start position:0%
password and then we can return this
01:39:21.119 --> 01:39:24.109 align:start position:0%
password and then we can return this
session<01:39:21.800> so<01:39:22.040> once<01:39:22.320> again<01:39:23.000> we<01:39:23.159> have<01:39:23.360> created<01:39:23.840> an
01:39:24.109 --> 01:39:24.119 align:start position:0%
session so once again we have created an
01:39:24.119 --> 01:39:26.629 align:start position:0%
session so once again we have created an
App<01:39:24.920> function<01:39:25.920> that's<01:39:26.159> then<01:39:26.320> getting
01:39:26.629 --> 01:39:26.639 align:start position:0%
App function that's then getting
01:39:26.639 --> 01:39:29.390 align:start position:0%
App function that's then getting
utilized<01:39:27.480> by<01:39:27.800> react<01:39:28.239> query<01:39:28.920> and<01:39:29.119> we<01:39:29.199> can
01:39:29.390 --> 01:39:29.400 align:start position:0%
utilized by react query and we can
01:39:29.400 --> 01:39:32.589 align:start position:0%
utilized by react query and we can
import<01:39:29.760> it<01:39:30.040> right<01:39:30.239> here<01:39:30.639> from<01:39:30.960> aight<01:39:31.520> API<01:39:32.400> so
01:39:32.589 --> 01:39:32.599 align:start position:0%
import it right here from aight API so
01:39:32.599 --> 01:39:34.669 align:start position:0%
import it right here from aight API so
now<01:39:32.920> this<01:39:33.040> one<01:39:33.199> is<01:39:33.320> for<01:39:33.480> creating<01:39:33.840> the<01:39:33.960> user
01:39:34.669 --> 01:39:34.679 align:start position:0%
now this one is for creating the user
01:39:34.679 --> 01:39:36.629 align:start position:0%
now this one is for creating the user
and<01:39:34.920> this<01:39:35.040> one<01:39:35.360> is<01:39:35.480> for<01:39:35.719> signing<01:39:36.159> into<01:39:36.440> the
01:39:36.629 --> 01:39:36.639 align:start position:0%
and this one is for signing into the
01:39:36.639 --> 01:39:38.790 align:start position:0%
and this one is for signing into the
account<01:39:37.280> and<01:39:37.440> now<01:39:37.599> we<01:39:37.719> can<01:39:37.840> repeat<01:39:38.280> this<01:39:38.599> with
01:39:38.790 --> 01:39:38.800 align:start position:0%
account and now we can repeat this with
01:39:38.800 --> 01:39:40.669 align:start position:0%
account and now we can repeat this with
the<01:39:38.960> other<01:39:39.239> hook<01:39:39.719> that<01:39:39.840> we<01:39:40.000> have<01:39:40.280> right<01:39:40.480> here
01:39:40.669 --> 01:39:40.679 align:start position:0%
the other hook that we have right here
01:39:40.679 --> 01:39:44.189 align:start position:0%
the other hook that we have right here
in<01:39:40.800> our<01:39:41.000> signup<01:39:41.400> form<01:39:42.320> we<01:39:42.440> can<01:39:42.560> say<01:39:43.040> const<01:39:44.040> we
01:39:44.189 --> 01:39:44.199 align:start position:0%
in our signup form we can say const we
01:39:44.199 --> 01:39:46.510 align:start position:0%
in our signup form we can say const we
get<01:39:44.400> a<01:39:44.800> mutate
01:39:46.510 --> 01:39:46.520 align:start position:0%
get a mutate
01:39:46.520 --> 01:39:48.790 align:start position:0%
get a mutate
async<01:39:47.520> which<01:39:47.639> is<01:39:47.760> going<01:39:47.920> to<01:39:48.080> be<01:39:48.239> equal<01:39:48.520> to<01:39:48.639> a
01:39:48.790 --> 01:39:48.800 align:start position:0%
async which is going to be equal to a
01:39:48.800 --> 01:39:51.910 align:start position:0%
async which is going to be equal to a
function<01:39:49.119> of<01:39:49.360> sign<01:39:49.679> in<01:39:50.119> account<01:39:51.400> and<01:39:51.560> we<01:39:51.679> get
01:39:51.910 --> 01:39:51.920 align:start position:0%
function of sign in account and we get
01:39:51.920 --> 01:39:55.189 align:start position:0%
function of sign in account and we get
is<01:39:52.119> loading<01:39:52.760> which<01:39:52.880> is<01:39:53.080> equal<01:39:53.360> to<01:39:53.639> is<01:39:54.080> signing
01:39:55.189 --> 01:39:55.199 align:start position:0%
is loading which is equal to is signing
01:39:55.199 --> 01:39:57.790 align:start position:0%
is loading which is equal to is signing
in<01:39:56.199> and<01:39:56.400> once<01:39:56.599> we<01:39:56.760> get<01:39:56.960> that<01:39:57.280> we<01:39:57.360> can<01:39:57.520> say
01:39:57.790 --> 01:39:57.800 align:start position:0%
in and once we get that we can say
01:39:57.800 --> 01:40:01.229 align:start position:0%
in and once we get that we can say
that's<01:39:58.080> equal<01:39:58.360> to<01:39:59.119> use<01:39:59.639> sign<01:40:00.000> in<01:40:00.400> account
01:40:01.229 --> 01:40:01.239 align:start position:0%
that's equal to use sign in account
01:40:01.239 --> 01:40:04.189 align:start position:0%
that's equal to use sign in account
which<01:40:01.400> we<01:40:01.520> have<01:40:01.639> to<01:40:01.840> import<01:40:02.520> from<01:40:03.040> react<01:40:03.599> query
01:40:04.189 --> 01:40:04.199 align:start position:0%
which we have to import from react query
01:40:04.199 --> 01:40:06.830 align:start position:0%
which we have to import from react query
queries<01:40:04.719> and<01:40:05.000> mutations<01:40:05.960> and<01:40:06.119> now<01:40:06.320> we<01:40:06.400> can<01:40:06.560> use
01:40:06.830 --> 01:40:06.840 align:start position:0%
queries and mutations and now we can use
01:40:06.840 --> 01:40:10.430 align:start position:0%
queries and mutations and now we can use
this<01:40:07.080> function<01:40:07.760> right<01:40:08.000> here<01:40:09.000> await<01:40:09.760> sign<01:40:10.080> in
01:40:10.430 --> 01:40:10.440 align:start position:0%
this function right here await sign in
01:40:10.440 --> 01:40:12.870 align:start position:0%
this function right here await sign in
account<01:40:11.119> to<01:40:11.440> which<01:40:11.920> we<01:40:12.080> have<01:40:12.199> to<01:40:12.440> pass<01:40:12.679> the
01:40:12.870 --> 01:40:12.880 align:start position:0%
account to which we have to pass the
01:40:12.880 --> 01:40:16.350 align:start position:0%
account to which we have to pass the
email<01:40:13.560> which<01:40:13.679> is<01:40:13.800> going<01:40:14.000> to<01:40:14.159> be<01:40:14.719> values.<01:40:15.719> mail
01:40:16.350 --> 01:40:16.360 align:start position:0%
email which is going to be values. mail
01:40:16.360 --> 01:40:18.790 align:start position:0%
email which is going to be values. mail
right<01:40:16.599> here<01:40:17.360> and<01:40:17.520> then<01:40:17.800> password<01:40:18.520> which<01:40:18.639> is
01:40:18.790 --> 01:40:18.800 align:start position:0%
right here and then password which is
01:40:18.800 --> 01:40:22.270 align:start position:0%
right here and then password which is
going<01:40:18.960> to<01:40:19.119> be<01:40:19.960> values.<01:40:21.040> password<01:40:21.760> and<01:40:21.920> all<01:40:22.080> of
01:40:22.270 --> 01:40:22.280 align:start position:0%
going to be values. password and all of
01:40:22.280 --> 01:40:25.030 align:start position:0%
going to be values. password and all of
this<01:40:22.400> is<01:40:22.560> coming<01:40:22.960> from<01:40:23.239> our<01:40:23.639> form<01:40:24.639> once<01:40:24.840> we
01:40:25.030 --> 01:40:25.040 align:start position:0%
this is coming from our form once we
01:40:25.040 --> 01:40:27.189 align:start position:0%
this is coming from our form once we
have<01:40:25.280> that<01:40:25.599> we<01:40:25.679> can<01:40:25.840> check<01:40:26.080> if<01:40:26.239> session<01:40:26.639> exists
01:40:27.189 --> 01:40:27.199 align:start position:0%
have that we can check if session exists
01:40:27.199 --> 01:40:29.990 align:start position:0%
have that we can check if session exists
by<01:40:27.320> saying<01:40:27.719> if<01:40:28.040> no<01:40:28.440> session<01:40:29.440> we<01:40:29.560> want<01:40:29.679> to
01:40:29.990 --> 01:40:30.000 align:start position:0%
by saying if no session we want to
01:40:30.000 --> 01:40:33.390 align:start position:0%
by saying if no session we want to
return<01:40:30.280> a<01:40:30.480> new<01:40:30.760> toast<01:40:31.480> saying<01:40:32.040> sign<01:40:32.360> in<01:40:32.639> failed
01:40:33.390 --> 01:40:33.400 align:start position:0%
return a new toast saying sign in failed
01:40:33.400 --> 01:40:36.470 align:start position:0%
return a new toast saying sign in failed
please<01:40:33.719> try<01:40:34.119> again<01:40:35.000> and<01:40:35.239> bear<01:40:35.560> with<01:40:35.719> me<01:40:36.199> I<01:40:36.280> know
01:40:36.470 --> 01:40:36.480 align:start position:0%
please try again and bear with me I know
01:40:36.480 --> 01:40:37.910 align:start position:0%
please try again and bear with me I know
this<01:40:36.599> is<01:40:36.719> taking<01:40:37.080> some<01:40:37.320> time<01:40:37.679> but
01:40:37.910 --> 01:40:37.920 align:start position:0%
this is taking some time but
01:40:37.920 --> 01:40:39.589 align:start position:0%
this is taking some time but
authentication<01:40:38.719> and<01:40:38.920> creating<01:40:39.239> user
01:40:39.589 --> 01:40:39.599 align:start position:0%
authentication and creating user
01:40:39.599 --> 01:40:41.629 align:start position:0%
authentication and creating user
accounts<01:40:40.199> is<01:40:40.360> one<01:40:40.520> of<01:40:40.639> the<01:40:40.760> most<01:40:41.040> complicated
01:40:41.629 --> 01:40:41.639 align:start position:0%
accounts is one of the most complicated
01:40:41.639 --> 01:40:44.189 align:start position:0%
accounts is one of the most complicated
parts<01:40:41.880> of<01:40:42.119> every<01:40:42.360> single<01:40:42.800> application<01:40:43.800> now
01:40:44.189 --> 01:40:44.199 align:start position:0%
parts of every single application now
01:40:44.199 --> 01:40:46.229 align:start position:0%
parts of every single application now
after<01:40:44.440> we<01:40:44.599> have<01:40:44.800> the<01:40:45.040> session<01:40:45.760> we<01:40:45.920> have<01:40:46.040> to
01:40:46.229 --> 01:40:46.239 align:start position:0%
after we have the session we have to
01:40:46.239 --> 01:40:49.350 align:start position:0%
after we have the session we have to
store<01:40:46.639> that<01:40:46.880> session<01:40:47.520> in<01:40:47.760> our<01:40:48.080> react<01:40:48.639> context
01:40:49.350 --> 01:40:49.360 align:start position:0%
store that session in our react context
01:40:49.360 --> 01:40:51.669 align:start position:0%
store that session in our react context
at<01:40:49.520> all<01:40:49.880> times<01:40:50.400> we<01:40:50.520> need<01:40:50.679> to<01:40:50.960> know<01:40:51.320> that<01:40:51.480> we
01:40:51.669 --> 01:40:51.679 align:start position:0%
at all times we need to know that we
01:40:51.679 --> 01:40:55.109 align:start position:0%
at all times we need to know that we
have<01:40:51.960> a<01:40:52.199> logged<01:40:52.560> in<01:40:52.920> user<01:40:53.880> so<01:40:54.159> for<01:40:54.440> that<01:40:54.639> reason
01:40:55.109 --> 01:40:55.119 align:start position:0%
have a logged in user so for that reason
01:40:55.119 --> 01:40:57.589 align:start position:0%
have a logged in user so for that reason
we<01:40:55.239> can<01:40:55.440> create<01:40:55.800> a<01:40:56.000> new<01:40:56.239> folder<01:40:57.199> right<01:40:57.400> here
01:40:57.589 --> 01:40:57.599 align:start position:0%
we can create a new folder right here
01:40:57.599 --> 01:40:59.470 align:start position:0%
we can create a new folder right here
within<01:40:57.840> the<01:40:58.000> source<01:40:58.679> which<01:40:58.880> is<01:40:59.000> going<01:40:59.159> to<01:40:59.280> be
01:40:59.470 --> 01:40:59.480 align:start position:0%
within the source which is going to be
01:40:59.480 --> 01:41:00.629 align:start position:0%
within the source which is going to be
called
01:41:00.629 --> 01:41:00.639 align:start position:0%
called
01:41:00.639 --> 01:41:03.270 align:start position:0%
called
context<01:41:01.639> within<01:41:01.920> the<01:41:02.119> context<01:41:02.719> we<01:41:02.800> can<01:41:03.000> create
01:41:03.270 --> 01:41:03.280 align:start position:0%
context within the context we can create
01:41:03.280 --> 01:41:08.030 align:start position:0%
context within the context we can create
a<01:41:03.480> new<01:41:03.840> file<01:41:04.840> called<01:41:05.320> oth<01:41:06.320> context.
01:41:08.030 --> 01:41:08.040 align:start position:0%
a new file called oth context.
01:41:08.040 --> 01:41:10.830 align:start position:0%
a new file called oth context.
TSX<01:41:09.040> there<01:41:09.360> we<01:41:09.480> can<01:41:09.639> run
01:41:10.830 --> 01:41:10.840 align:start position:0%
TSX there we can run
01:41:10.840 --> 01:41:13.229 align:start position:0%
TSX there we can run
RFC<01:41:11.840> and<01:41:12.000> we'll<01:41:12.199> need<01:41:12.320> to<01:41:12.520> import<01:41:13.000> some
01:41:13.229 --> 01:41:13.239 align:start position:0%
RFC and we'll need to import some
01:41:13.239 --> 01:41:15.350 align:start position:0%
RFC and we'll need to import some
utilities<01:41:13.920> for<01:41:14.159> creating<01:41:14.560> context<01:41:15.119> from
01:41:15.350 --> 01:41:15.360 align:start position:0%
utilities for creating context from
01:41:15.360 --> 01:41:20.550 align:start position:0%
utilities for creating context from
react<01:41:16.280> such<01:41:16.480> as<01:41:16.760> create<01:41:17.679> context<01:41:18.679> use<01:41:19.560> context
01:41:20.550 --> 01:41:20.560 align:start position:0%
react such as create context use context
01:41:20.560 --> 01:41:25.270 align:start position:0%
react such as create context use context
use<01:41:20.920> use<01:41:21.280> effect<01:41:22.280> as<01:41:22.440> well<01:41:22.679> as<01:41:23.080> use<01:41:24.040> State<01:41:25.040> now
01:41:25.270 --> 01:41:25.280 align:start position:0%
use use effect as well as use State now
01:41:25.280 --> 01:41:27.189 align:start position:0%
use use effect as well as use State now
we<01:41:25.360> need<01:41:25.480> to<01:41:25.679> Define<01:41:26.080> how<01:41:26.239> an<01:41:26.400> empty<01:41:26.760> user<01:41:27.080> is
01:41:27.189 --> 01:41:27.199 align:start position:0%
we need to Define how an empty user is
01:41:27.199 --> 01:41:29.589 align:start position:0%
we need to Define how an empty user is
going<01:41:27.360> to<01:41:27.560> look<01:41:27.800> like<01:41:28.280> so<01:41:28.400> we<01:41:28.520> can<01:41:28.639> say<01:41:28.960> export
01:41:29.589 --> 01:41:29.599 align:start position:0%
going to look like so we can say export
01:41:29.599 --> 01:41:33.189 align:start position:0%
going to look like so we can say export
const<01:41:30.560> initial<01:41:31.159> uncore<01:41:31.800> user<01:41:32.400> is<01:41:32.560> equal<01:41:32.800> to<01:41:32.960> an
01:41:33.189 --> 01:41:33.199 align:start position:0%
const initial uncore user is equal to an
01:41:33.199 --> 01:41:36.750 align:start position:0%
const initial uncore user is equal to an
object<01:41:34.119> where<01:41:34.440> the<01:41:34.679> ID<01:41:35.360> is<01:41:35.480> equal<01:41:35.760> to<01:41:35.840> an<01:41:35.960> empty
01:41:36.750 --> 01:41:36.760 align:start position:0%
object where the ID is equal to an empty
01:41:36.760 --> 01:41:40.510 align:start position:0%
object where the ID is equal to an empty
string<01:41:37.760> name<01:41:38.239> is<01:41:38.400> equal<01:41:38.639> to<01:41:38.760> an<01:41:38.880> empty<01:41:39.520> string
01:41:40.510 --> 01:41:40.520 align:start position:0%
string name is equal to an empty string
01:41:40.520 --> 01:41:43.950 align:start position:0%
string name is equal to an empty string
username<01:41:41.320> is<01:41:41.480> equal<01:41:41.800> to<01:41:42.119> an<01:41:42.320> empty<01:41:42.960> string
01:41:43.950 --> 01:41:43.960 align:start position:0%
username is equal to an empty string
01:41:43.960 --> 01:41:47.709 align:start position:0%
username is equal to an empty string
email<01:41:44.560> is<01:41:44.760> again<01:41:45.159> an<01:41:45.320> empty<01:41:45.639> string<01:41:46.159> as<01:41:46.719> well
01:41:47.709 --> 01:41:47.719 align:start position:0%
email is again an empty string as well
01:41:47.719 --> 01:41:51.350 align:start position:0%
email is again an empty string as well
image<01:41:48.159> URL<01:41:48.960> is<01:41:49.080> an<01:41:49.239> empty<01:41:49.599> string<01:41:50.599> and<01:41:50.840> and<01:41:51.080> a
01:41:51.350 --> 01:41:51.360 align:start position:0%
image URL is an empty string and and a
01:41:51.360 --> 01:41:54.270 align:start position:0%
image URL is an empty string and and a
bio<01:41:52.040> is<01:41:52.239> also<01:41:52.599> an<01:41:52.760> empty<01:41:53.080> string<01:41:53.920> so
01:41:54.270 --> 01:41:54.280 align:start position:0%
bio is also an empty string so
01:41:54.280 --> 01:41:55.910 align:start position:0%
bio is also an empty string so
everything<01:41:54.719> is
01:41:55.910 --> 01:41:55.920 align:start position:0%
everything is
01:41:55.920 --> 01:41:58.629 align:start position:0%
everything is
empty<01:41:56.920> after<01:41:57.239> that<01:41:57.480> we<01:41:57.599> have<01:41:57.719> to<01:41:57.880> declare<01:41:58.440> the
01:41:58.629 --> 01:41:58.639 align:start position:0%
empty after that we have to declare the
01:41:58.639 --> 01:42:02.070 align:start position:0%
empty after that we have to declare the
initial<01:41:59.400> of<01:42:00.080> state<01:42:00.760> so<01:42:00.920> we<01:42:01.000> can<01:42:01.159> say<01:42:01.440> initial
01:42:02.070 --> 01:42:02.080 align:start position:0%
initial of state so we can say initial
01:42:02.080 --> 01:42:06.270 align:start position:0%
initial of state so we can say initial
undor<01:42:02.679> state<01:42:03.480> is<01:42:03.719> equal<01:42:04.040> to<01:42:04.840> an<01:42:05.159> object<01:42:06.080> where
01:42:06.270 --> 01:42:06.280 align:start position:0%
undor state is equal to an object where
01:42:06.280 --> 01:42:10.149 align:start position:0%
undor state is equal to an object where
the<01:42:06.440> user<01:42:07.080> is<01:42:07.320> equal<01:42:07.639> to<01:42:07.840> the<01:42:08.000> initial<01:42:08.840> user<01:42:09.840> is
01:42:10.149 --> 01:42:10.159 align:start position:0%
the user is equal to the initial user is
01:42:10.159 --> 01:42:14.270 align:start position:0%
the user is equal to the initial user is
loading<01:42:10.880> is<01:42:11.119> set<01:42:11.480> to<01:42:11.719> false<01:42:12.599> is<01:42:13.280> authenticated
01:42:14.270 --> 01:42:14.280 align:start position:0%
loading is set to false is authenticated
01:42:14.280 --> 01:42:16.790 align:start position:0%
loading is set to false is authenticated
is<01:42:14.480> by<01:42:14.800> default<01:42:15.119> set<01:42:15.320> to<01:42:15.599> false<01:42:16.599> and<01:42:16.719> then
01:42:16.790 --> 01:42:16.800 align:start position:0%
is by default set to false and then
01:42:16.800 --> 01:42:18.470 align:start position:0%
is by default set to false and then
we're<01:42:16.960> going<01:42:17.040> to<01:42:17.199> also<01:42:17.520> have<01:42:17.719> the<01:42:17.880> function<01:42:18.239> to
01:42:18.470 --> 01:42:18.480 align:start position:0%
we're going to also have the function to
01:42:18.480 --> 01:42:21.870 align:start position:0%
we're going to also have the function to
set<01:42:18.840> the<01:42:18.960> authenticated<01:42:19.639> user<01:42:20.520> so<01:42:20.920> set<01:42:21.159> user
01:42:21.870 --> 01:42:21.880 align:start position:0%
set the authenticated user so set user
01:42:21.880 --> 01:42:24.310 align:start position:0%
set the authenticated user so set user
is<01:42:22.080> equal<01:42:22.360> to<01:42:22.520> a<01:42:22.679> function<01:42:23.560> set<01:42:24.040> is
01:42:24.310 --> 01:42:24.320 align:start position:0%
is equal to a function set is
01:42:24.320 --> 01:42:26.229 align:start position:0%
is equal to a function set is
authenticated<01:42:25.280> this<01:42:25.360> is<01:42:25.480> for<01:42:25.679> setting<01:42:25.960> up<01:42:26.119> a
01:42:26.229 --> 01:42:26.239 align:start position:0%
authenticated this is for setting up a
01:42:26.239 --> 01:42:28.390 align:start position:0%
authenticated this is for setting up a
Boolean<01:42:26.800> value<01:42:27.520> which<01:42:27.639> is<01:42:27.800> also<01:42:28.040> going<01:42:28.159> to<01:42:28.320> be
01:42:28.390 --> 01:42:28.400 align:start position:0%
Boolean value which is also going to be
01:42:28.400 --> 01:42:30.750 align:start position:0%
Boolean value which is also going to be
a<01:42:28.560> function<01:42:29.560> and<01:42:29.800> then<01:42:30.159> we're<01:42:30.320> going<01:42:30.440> to<01:42:30.560> have
01:42:30.750 --> 01:42:30.760 align:start position:0%
a function and then we're going to have
01:42:30.760 --> 01:42:33.830 align:start position:0%
a function and then we're going to have
a<01:42:30.920> check<01:42:31.599> off<01:42:32.119> user<01:42:33.000> which<01:42:33.119> is<01:42:33.239> going<01:42:33.400> to<01:42:33.520> be<01:42:33.639> an
01:42:33.830 --> 01:42:33.840 align:start position:0%
a check off user which is going to be an
01:42:33.840 --> 01:42:36.950 align:start position:0%
a check off user which is going to be an
async<01:42:34.440> function<01:42:35.440> that's<01:42:35.639> going<01:42:35.760> to<01:42:36.119> return
01:42:36.950 --> 01:42:36.960 align:start position:0%
async function that's going to return
01:42:36.960 --> 01:42:39.910 align:start position:0%
async function that's going to return
either<01:42:37.199> a<01:42:37.440> false<01:42:38.239> or<01:42:38.560> a<01:42:38.800> true<01:42:39.480> which<01:42:39.639> is<01:42:39.760> a
01:42:39.910 --> 01:42:39.920 align:start position:0%
either a false or a true which is a
01:42:39.920 --> 01:42:44.070 align:start position:0%
either a false or a true which is a
Boolean<01:42:40.440> value<01:42:41.400> just<01:42:41.920> like<01:42:42.400> so<01:42:43.400> why<01:42:43.599> we<01:42:43.800> have
01:42:44.070 --> 01:42:44.080 align:start position:0%
Boolean value just like so why we have
01:42:44.080 --> 01:42:46.310 align:start position:0%
Boolean value just like so why we have
this<01:42:44.480> to<01:42:44.800> know<01:42:45.199> whether<01:42:45.400> we<01:42:45.560> have<01:42:45.679> a<01:42:45.840> logged<01:42:46.119> in
01:42:46.310 --> 01:42:46.320 align:start position:0%
this to know whether we have a logged in
01:42:46.320 --> 01:42:49.709 align:start position:0%
this to know whether we have a logged in
user<01:42:46.800> at<01:42:47.000> all<01:42:47.480> times<01:42:48.480> and<01:42:48.679> now<01:42:49.000> we<01:42:49.119> can<01:42:49.320> declare
01:42:49.709 --> 01:42:49.719 align:start position:0%
user at all times and now we can declare
01:42:49.719 --> 01:42:52.390 align:start position:0%
user at all times and now we can declare
our<01:42:50.000> context<01:42:50.599> but<01:42:50.760> by<01:42:50.880> saying<01:42:51.199> const<01:42:51.920> O
01:42:52.390 --> 01:42:52.400 align:start position:0%
our context but by saying const O
01:42:52.400 --> 01:42:56.149 align:start position:0%
our context but by saying const O
context<01:42:53.239> is<01:42:53.480> equal<01:42:53.800> to<01:42:54.400> create<01:42:55.040> context<01:42:56.040> we
01:42:56.149 --> 01:42:56.159 align:start position:0%
context is equal to create context we
01:42:56.159 --> 01:42:58.470 align:start position:0%
context is equal to create context we
can<01:42:56.320> Define<01:42:56.639> the<01:42:56.880> type<01:42:57.199> of<01:42:57.360> that<01:42:57.679> context<01:42:58.320> by
01:42:58.470 --> 01:42:58.480 align:start position:0%
can Define the type of that context by
01:42:58.480 --> 01:43:00.550 align:start position:0%
can Define the type of that context by
providing<01:42:59.000> this<01:42:59.199> syntax<01:43:00.199> and<01:43:00.360> then
01:43:00.550 --> 01:43:00.560 align:start position:0%
providing this syntax and then
01:43:00.560 --> 01:43:03.430 align:start position:0%
providing this syntax and then
referencing<01:43:01.159> the<01:43:01.400> I<01:43:01.920> context<01:43:02.480> type<01:43:03.159> which<01:43:03.280> is
01:43:03.430 --> 01:43:03.440 align:start position:0%
referencing the I context type which is
01:43:03.440 --> 01:43:07.030 align:start position:0%
referencing the I context type which is
coming<01:43:03.719> from<01:43:04.199> addtype<01:43:05.400> if<01:43:06.400> you<01:43:06.560> look<01:43:06.760> into
01:43:07.030 --> 01:43:07.040 align:start position:0%
coming from addtype if you look into
01:43:07.040 --> 01:43:09.229 align:start position:0%
coming from addtype if you look into
this<01:43:07.480> this<01:43:07.560> is<01:43:07.719> simply<01:43:08.040> declaring<01:43:08.520> the<01:43:08.719> types
01:43:09.229 --> 01:43:09.239 align:start position:0%
this this is simply declaring the types
01:43:09.239 --> 01:43:10.870 align:start position:0%
this this is simply declaring the types
of<01:43:09.440> everything<01:43:09.760> we<01:43:09.920> have<01:43:10.080> now
01:43:10.870 --> 01:43:10.880 align:start position:0%
of everything we have now
01:43:10.880 --> 01:43:13.950 align:start position:0%
of everything we have now
discussed<01:43:11.880> and<01:43:12.199> finally<01:43:12.760> we<01:43:12.880> need<01:43:13.040> to<01:43:13.199> set<01:43:13.480> it
01:43:13.950 --> 01:43:13.960 align:start position:0%
discussed and finally we need to set it
01:43:13.960 --> 01:43:17.189 align:start position:0%
discussed and finally we need to set it
to<01:43:14.199> the<01:43:14.400> initial<01:43:15.440> State<01:43:16.440> now<01:43:16.760> instead<01:43:17.040> of
01:43:17.189 --> 01:43:17.199 align:start position:0%
to the initial State now instead of
01:43:17.199 --> 01:43:19.750 align:start position:0%
to the initial State now instead of
calling<01:43:17.560> this<01:43:17.800> component<01:43:18.360> o<01:43:18.760> context<01:43:19.480> we<01:43:19.560> can
01:43:19.750 --> 01:43:19.760 align:start position:0%
calling this component o context we can
01:43:19.760 --> 01:43:21.430 align:start position:0%
calling this component o context we can
call<01:43:20.000> it<01:43:20.199> o
01:43:21.430 --> 01:43:21.440 align:start position:0%
call it o
01:43:21.440 --> 01:43:23.629 align:start position:0%
call it o
provider<01:43:22.440> because<01:43:22.760> that's<01:43:22.920> going<01:43:23.080> to<01:43:23.280> wrap
01:43:23.629 --> 01:43:23.639 align:start position:0%
provider because that's going to wrap
01:43:23.639 --> 01:43:26.510 align:start position:0%
provider because that's going to wrap
our<01:43:23.880> entire<01:43:24.400> app<01:43:24.760> and<01:43:25.080> provide<01:43:25.760> the<01:43:26.000> access<01:43:26.320> to
01:43:26.510 --> 01:43:26.520 align:start position:0%
our entire app and provide the access to
01:43:26.520 --> 01:43:29.350 align:start position:0%
our entire app and provide the access to
the<01:43:27.040> context<01:43:28.040> every<01:43:28.320> context<01:43:28.800> needs<01:43:29.000> to<01:43:29.159> have
01:43:29.350 --> 01:43:29.360 align:start position:0%
the context every context needs to have
01:43:29.360 --> 01:43:32.149 align:start position:0%
the context every context needs to have
children<01:43:30.360> because<01:43:30.599> it<01:43:30.800> wraps<01:43:31.239> the<01:43:31.360> entire<01:43:31.760> app
01:43:32.149 --> 01:43:32.159 align:start position:0%
children because it wraps the entire app
01:43:32.159 --> 01:43:34.709 align:start position:0%
children because it wraps the entire app
and<01:43:32.320> then<01:43:32.520> displays<01:43:33.080> whatever<01:43:33.400> is<01:43:33.639> within<01:43:33.880> it
01:43:34.709 --> 01:43:34.719 align:start position:0%
and then displays whatever is within it
01:43:34.719 --> 01:43:37.189 align:start position:0%
and then displays whatever is within it
we<01:43:34.840> can<01:43:35.040> also<01:43:35.280> Define<01:43:35.599> the<01:43:35.840> type<01:43:36.159> of<01:43:36.320> children
01:43:37.189 --> 01:43:37.199 align:start position:0%
we can also Define the type of children
01:43:37.199 --> 01:43:40.709 align:start position:0%
we can also Define the type of children
to<01:43:37.360> be<01:43:37.560> equal<01:43:37.840> to<01:43:38.239> a<01:43:38.679> react.<01:43:39.679> node<01:43:40.480> and<01:43:40.599> I
01:43:40.709 --> 01:43:40.719 align:start position:0%
to be equal to a react. node and I
01:43:40.719 --> 01:43:42.709 align:start position:0%
to be equal to a react. node and I
believe<01:43:40.960> it's<01:43:41.159> called<01:43:41.480> react<01:43:42.000> node<01:43:42.480> so<01:43:42.599> we
01:43:42.709 --> 01:43:42.719 align:start position:0%
believe it's called react node so we
01:43:42.719 --> 01:43:45.189 align:start position:0%
believe it's called react node so we
have<01:43:42.840> to<01:43:43.040> add<01:43:43.280> that<01:43:43.520> here<01:43:44.280> so<01:43:44.480> now<01:43:44.840> what<01:43:44.920> do<01:43:45.080> we
01:43:45.189 --> 01:43:45.199 align:start position:0%
have to add that here so now what do we
01:43:45.199 --> 01:43:47.550 align:start position:0%
have to add that here so now what do we
do<01:43:45.560> right<01:43:45.760> here<01:43:46.159> within<01:43:46.440> it<01:43:46.960> well<01:43:47.159> we<01:43:47.239> want<01:43:47.360> to
01:43:47.550 --> 01:43:47.560 align:start position:0%
do right here within it well we want to
01:43:47.560 --> 01:43:50.030 align:start position:0%
do right here within it well we want to
define<01:43:48.000> the<01:43:48.239> state<01:43:48.760> of<01:43:48.960> this<01:43:49.119> user<01:43:49.719> so<01:43:49.880> that's
01:43:50.030 --> 01:43:50.040 align:start position:0%
define the state of this user so that's
01:43:50.040 --> 01:43:52.510 align:start position:0%
define the state of this user so that's
going<01:43:50.199> to<01:43:50.280> be<01:43:50.440> us<01:43:50.679> use<01:43:51.000> State<01:43:51.360> snippet<01:43:52.119> called
01:43:52.510 --> 01:43:52.520 align:start position:0%
going to be us use State snippet called
01:43:52.520 --> 01:43:56.189 align:start position:0%
going to be us use State snippet called
user<01:43:53.239> set<01:43:53.639> user<01:43:54.159> as<01:43:54.360> well<01:43:55.159> and<01:43:55.360> at<01:43:55.520> the<01:43:55.719> start
01:43:56.189 --> 01:43:56.199 align:start position:0%
user set user as well and at the start
01:43:56.199 --> 01:43:58.870 align:start position:0%
user set user as well and at the start
it's<01:43:56.400> going<01:43:56.560> to<01:43:56.679> be<01:43:56.920> equal<01:43:57.239> to<01:43:57.800> the<01:43:58.080> initial
01:43:58.870 --> 01:43:58.880 align:start position:0%
it's going to be equal to the initial
01:43:58.880 --> 01:44:01.070 align:start position:0%
it's going to be equal to the initial
user<01:43:59.679> variable<01:44:00.159> that<01:44:00.280> we<01:44:00.400> have<01:44:00.560> declared
01:44:01.070 --> 01:44:01.080 align:start position:0%
user variable that we have declared
01:44:01.080 --> 01:44:03.790 align:start position:0%
user variable that we have declared
before<01:44:01.840> and<01:44:01.960> we<01:44:02.040> can<01:44:02.280> also<01:44:02.560> give<01:44:02.679> it<01:44:02.920> a<01:44:03.159> context
01:44:03.790 --> 01:44:03.800 align:start position:0%
before and we can also give it a context
01:44:03.800 --> 01:44:08.430 align:start position:0%
before and we can also give it a context
or<01:44:04.040> a<01:44:04.280> type<01:44:04.960> of<01:44:05.360> I<01:44:06.320> user<01:44:07.320> which<01:44:07.520> we<01:44:07.639> can<01:44:07.920> import
01:44:08.430 --> 01:44:08.440 align:start position:0%
or a type of I user which we can import
01:44:08.440 --> 01:44:10.669 align:start position:0%
or a type of I user which we can import
from<01:44:08.880> types<01:44:09.760> so<01:44:09.960> this<01:44:10.040> is<01:44:10.239> just<01:44:10.360> so<01:44:10.520> our
01:44:10.669 --> 01:44:10.679 align:start position:0%
from types so this is just so our
01:44:10.679 --> 01:44:13.030 align:start position:0%
from types so this is just so our
typescript<01:44:11.199> knows<01:44:11.679> exactly<01:44:12.239> how<01:44:12.440> our<01:44:12.599> user<01:44:12.880> is
01:44:13.030 --> 01:44:13.040 align:start position:0%
typescript knows exactly how our user is
01:44:13.040 --> 01:44:14.830 align:start position:0%
typescript knows exactly how our user is
going<01:44:13.199> to<01:44:13.360> look<01:44:13.599> like<01:44:14.080> we're<01:44:14.239> going<01:44:14.360> to<01:44:14.480> also
01:44:14.830 --> 01:44:14.840 align:start position:0%
going to look like we're going to also
01:44:14.840 --> 01:44:17.270 align:start position:0%
going to look like we're going to also
need<01:44:15.080> States<01:44:15.480> for<01:44:15.800> loading<01:44:16.639> so<01:44:16.760> we<01:44:16.880> can<01:44:17.000> say
01:44:17.270 --> 01:44:17.280 align:start position:0%
need States for loading so we can say
01:44:17.280 --> 01:44:21.430 align:start position:0%
need States for loading so we can say
use<01:44:17.800> state<01:44:18.719> is<01:44:19.080> loading<01:44:20.080> set<01:44:20.440> is<01:44:20.639> is<01:44:20.800> loading
01:44:21.430 --> 01:44:21.440 align:start position:0%
use state is loading set is is loading
01:44:21.440 --> 01:44:24.550 align:start position:0%
use state is loading set is is loading
so<01:44:21.599> we<01:44:21.679> can<01:44:21.880> write<01:44:22.119> here<01:44:22.639> declare<01:44:23.480> that<01:44:24.400> and
01:44:24.550 --> 01:44:24.560 align:start position:0%
so we can write here declare that and
01:44:24.560 --> 01:44:27.229 align:start position:0%
so we can write here declare that and
then<01:44:24.800> at<01:44:24.960> the<01:44:25.119> start<01:44:25.440> it's<01:44:25.560> going<01:44:25.719> to<01:44:25.880> be<01:44:26.239> false
01:44:27.229 --> 01:44:27.239 align:start position:0%
then at the start it's going to be false
01:44:27.239 --> 01:44:29.550 align:start position:0%
then at the start it's going to be false
and<01:44:27.360> we<01:44:27.480> can<01:44:27.639> repeat<01:44:28.040> this<01:44:28.199> as<01:44:28.360> well<01:44:28.880> for
01:44:29.550 --> 01:44:29.560 align:start position:0%
and we can repeat this as well for
01:44:29.560 --> 01:44:31.750 align:start position:0%
and we can repeat this as well for
another<01:44:29.920> one<01:44:30.599> use
01:44:31.750 --> 01:44:31.760 align:start position:0%
another one use
01:44:31.760 --> 01:44:35.950 align:start position:0%
another one use
state<01:44:32.760> which<01:44:32.880> is<01:44:33.040> going<01:44:33.199> to<01:44:33.360> be<01:44:33.960> is
01:44:35.950 --> 01:44:35.960 align:start position:0%
state which is going to be is
01:44:35.960 --> 01:44:39.030 align:start position:0%
state which is going to be is
authenticated<01:44:36.960> set<01:44:37.400> is<01:44:37.880> authenticated<01:44:38.880> at
01:44:39.030 --> 01:44:39.040 align:start position:0%
authenticated set is authenticated at
01:44:39.040 --> 01:44:41.270 align:start position:0%
authenticated set is authenticated at
the<01:44:39.159> start<01:44:39.520> set<01:44:39.760> to<01:44:39.960> false<01:44:40.560> because<01:44:40.840> we<01:44:41.000> don't
01:44:41.270 --> 01:44:41.280 align:start position:0%
the start set to false because we don't
01:44:41.280 --> 01:44:44.270 align:start position:0%
the start set to false because we don't
yet<01:44:41.520> have<01:44:41.719> users<01:44:42.400> that<01:44:42.480> are<01:44:42.639> logged<01:44:43.159> in<01:44:44.159> what
01:44:44.270 --> 01:44:44.280 align:start position:0%
yet have users that are logged in what
01:44:44.280 --> 01:44:46.229 align:start position:0%
yet have users that are logged in what
are<01:44:44.400> we<01:44:44.520> going<01:44:44.719> to<01:44:44.840> do<01:44:45.080> then<01:44:45.760> well<01:44:45.960> we're<01:44:46.119> going
01:44:46.229 --> 01:44:46.239 align:start position:0%
are we going to do then well we're going
01:44:46.239 --> 01:44:49.109 align:start position:0%
are we going to do then well we're going
to<01:44:46.440> wrap<01:44:46.960> everything<01:44:47.560> in<01:44:47.679> our<01:44:47.880> o<01:44:48.280> context
01:44:49.109 --> 01:44:49.119 align:start position:0%
to wrap everything in our o context
01:44:49.119 --> 01:44:52.830 align:start position:0%
to wrap everything in our o context
that's<01:44:49.280> going<01:44:49.440> to<01:44:49.599> look<01:44:49.840> like<01:44:50.080> this<01:44:50.840> of
01:44:52.830 --> 01:44:52.840 align:start position:0%
that's going to look like this of
01:44:52.840 --> 01:44:56.109 align:start position:0%
that's going to look like this of
context.<01:44:53.880> provider<01:44:54.880> and<01:44:55.119> we<01:44:55.239> need<01:44:55.360> to<01:44:55.599> pass<01:44:55.800> it
01:44:56.109 --> 01:44:56.119 align:start position:0%
context. provider and we need to pass it
01:44:56.119 --> 01:44:58.790 align:start position:0%
context. provider and we need to pass it
the<01:44:56.320> value<01:44:56.920> so<01:44:57.119> the<01:44:57.280> value<01:44:57.760> will<01:44:57.920> be<01:44:58.119> equal<01:44:58.520> to
01:44:58.790 --> 01:44:58.800 align:start position:0%
the value so the value will be equal to
01:44:58.800 --> 01:45:01.390 align:start position:0%
the value so the value will be equal to
value<01:44:59.639> and<01:44:59.800> we<01:44:59.880> can<01:45:00.080> declare<01:45:01.040> what<01:45:01.159> we're
01:45:01.390 --> 01:45:01.400 align:start position:0%
value and we can declare what we're
01:45:01.400 --> 01:45:03.430 align:start position:0%
value and we can declare what we're
passing<01:45:01.840> right<01:45:02.000> here<01:45:02.199> on<01:45:02.360> the<01:45:02.560> top<01:45:03.000> by<01:45:03.119> saying
01:45:03.430 --> 01:45:03.440 align:start position:0%
passing right here on the top by saying
01:45:03.440 --> 01:45:06.149 align:start position:0%
passing right here on the top by saying
const<01:45:03.960> value<01:45:04.480> is<01:45:04.639> equal<01:45:04.880> to<01:45:05.040> an<01:45:05.239> object<01:45:05.960> that's
01:45:06.149 --> 01:45:06.159 align:start position:0%
const value is equal to an object that's
01:45:06.159 --> 01:45:08.709 align:start position:0%
const value is equal to an object that's
going<01:45:06.280> to<01:45:06.440> have<01:45:06.639> the<01:45:06.840> user<01:45:07.840> the<01:45:08.040> set<01:45:08.360> user
01:45:08.709 --> 01:45:08.719 align:start position:0%
going to have the user the set user
01:45:08.719 --> 01:45:11.270 align:start position:0%
going to have the user the set user
function<01:45:09.320> which<01:45:09.480> we<01:45:09.560> will<01:45:09.760> declare<01:45:10.159> soon<01:45:11.119> it's
01:45:11.270 --> 01:45:11.280 align:start position:0%
function which we will declare soon it's
01:45:11.280 --> 01:45:13.790 align:start position:0%
function which we will declare soon it's
also<01:45:11.520> going<01:45:11.639> to<01:45:11.800> have<01:45:11.960> the<01:45:12.119> is<01:45:12.599> loading<01:45:13.599> it's
01:45:13.790 --> 01:45:13.800 align:start position:0%
also going to have the is loading it's
01:45:13.800 --> 01:45:16.189 align:start position:0%
also going to have the is loading it's
going<01:45:13.960> to<01:45:14.119> have<01:45:14.320> the<01:45:14.599> is
01:45:16.189 --> 01:45:16.199 align:start position:0%
going to have the is
01:45:16.199 --> 01:45:18.629 align:start position:0%
going to have the is
authenticated<01:45:17.199> it<01:45:17.320> will<01:45:17.560> have<01:45:17.800> the<01:45:18.040> set<01:45:18.440> is
01:45:18.629 --> 01:45:18.639 align:start position:0%
authenticated it will have the set is
01:45:18.639 --> 01:45:21.350 align:start position:0%
authenticated it will have the set is
authenticated<01:45:19.360> as<01:45:19.520> well<01:45:20.639> and<01:45:20.800> it's<01:45:20.960> going<01:45:21.119> to
01:45:21.350 --> 01:45:21.360 align:start position:0%
authenticated as well and it's going to
01:45:21.360 --> 01:45:24.910 align:start position:0%
authenticated as well and it's going to
have<01:45:21.679> a<01:45:21.880> function<01:45:22.320> called<01:45:22.719> check<01:45:23.400> o<01:45:23.920> user
01:45:24.910 --> 01:45:24.920 align:start position:0%
have a function called check o user
01:45:24.920 --> 01:45:27.589 align:start position:0%
have a function called check o user
which<01:45:25.119> we<01:45:25.199> can<01:45:25.440> Define<01:45:26.119> right<01:45:26.360> here<01:45:26.960> const
01:45:27.589 --> 01:45:27.599 align:start position:0%
which we can Define right here const
01:45:27.599 --> 01:45:32.030 align:start position:0%
which we can Define right here const
check<01:45:28.239> o<01:45:28.840> user<01:45:29.760> is<01:45:30.000> equal<01:45:30.360> to<01:45:31.040> a<01:45:31.280> function
01:45:32.030 --> 01:45:32.040 align:start position:0%
check o user is equal to a function
01:45:32.040 --> 01:45:34.589 align:start position:0%
check o user is equal to a function
right<01:45:32.320> here<01:45:33.320> and<01:45:33.480> now<01:45:33.599> we're<01:45:33.920> passing<01:45:34.320> that
01:45:34.589 --> 01:45:34.599 align:start position:0%
right here and now we're passing that
01:45:34.599 --> 01:45:37.629 align:start position:0%
right here and now we're passing that
value<01:45:35.159> to<01:45:35.360> our<01:45:35.719> provider<01:45:36.719> also<01:45:37.239> we<01:45:37.400> need<01:45:37.520> to
01:45:37.629 --> 01:45:37.639 align:start position:0%
value to our provider also we need to
01:45:37.639 --> 01:45:40.430 align:start position:0%
value to our provider also we need to
render<01:45:38.000> the<01:45:38.119> children<01:45:38.760> within<01:45:39.040> it<01:45:39.560> right<01:45:39.760> here
01:45:40.430 --> 01:45:40.440 align:start position:0%
render the children within it right here
01:45:40.440 --> 01:45:41.910 align:start position:0%
render the children within it right here
now<01:45:40.639> of<01:45:40.800> course<01:45:41.080> the<01:45:41.239> value<01:45:41.480> is<01:45:41.599> going<01:45:41.760> to
01:45:41.910 --> 01:45:41.920 align:start position:0%
now of course the value is going to
01:45:41.920 --> 01:45:43.830 align:start position:0%
now of course the value is going to
complain<01:45:42.599> because<01:45:43.000> there's<01:45:43.199> going<01:45:43.360> to<01:45:43.480> be<01:45:43.639> a
01:45:43.830 --> 01:45:43.840 align:start position:0%
complain because there's going to be a
01:45:43.840 --> 01:45:46.109 align:start position:0%
complain because there's going to be a
mismatch<01:45:44.520> between<01:45:44.840> the<01:45:45.000> types<01:45:45.679> but<01:45:45.880> we'll
01:45:46.109 --> 01:45:46.119 align:start position:0%
mismatch between the types but we'll
01:45:46.119 --> 01:45:48.550 align:start position:0%
mismatch between the types but we'll
solve<01:45:46.480> that<01:45:46.679> really<01:45:46.920> soon<01:45:47.520> once<01:45:47.719> we<01:45:47.920> utilize
01:45:48.550 --> 01:45:48.560 align:start position:0%
solve that really soon once we utilize
01:45:48.560 --> 01:45:51.310 align:start position:0%
solve that really soon once we utilize
the<01:45:48.760> check<01:45:49.239> off<01:45:49.599> user<01:45:50.000> function<01:45:50.719> so<01:45:51.040> what<01:45:51.159> is
01:45:51.310 --> 01:45:51.320 align:start position:0%
the check off user function so what is
01:45:51.320 --> 01:45:53.229 align:start position:0%
the check off user function so what is
this<01:45:51.480> function<01:45:51.760> going<01:45:51.920> to<01:45:52.080> do<01:45:52.880> well<01:45:53.080> it's
01:45:53.229 --> 01:45:53.239 align:start position:0%
this function going to do well it's
01:45:53.239 --> 01:45:55.830 align:start position:0%
this function going to do well it's
going<01:45:53.400> to<01:45:53.520> be<01:45:53.679> an<01:45:53.840> async<01:45:54.639> function<01:45:55.639> that's
01:45:55.830 --> 01:45:55.840 align:start position:0%
going to be an async function that's
01:45:55.840 --> 01:45:59.510 align:start position:0%
going to be an async function that's
going<01:45:56.000> to<01:45:56.159> have<01:45:56.360> a<01:45:56.599> try<01:45:57.040> and<01:45:57.440> catch<01:45:58.320> Block<01:45:59.320> in
01:45:59.510 --> 01:45:59.520 align:start position:0%
going to have a try and catch Block in
01:45:59.520 --> 01:46:04.030 align:start position:0%
going to have a try and catch Block in
the<01:45:59.719> catch<01:46:00.440> we<01:46:00.560> can<01:46:00.760> simply<01:46:01.119> say<01:46:01.840> console.<01:46:03.040> log
01:46:04.030 --> 01:46:04.040 align:start position:0%
the catch we can simply say console. log
01:46:04.040 --> 01:46:06.910 align:start position:0%
the catch we can simply say console. log
error<01:46:04.840> and<01:46:05.000> we<01:46:05.080> can<01:46:05.360> return<01:46:05.599> a<01:46:05.760> false<01:46:06.480> meaning
01:46:06.910 --> 01:46:06.920 align:start position:0%
error and we can return a false meaning
01:46:06.920 --> 01:46:09.390 align:start position:0%
error and we can return a false meaning
user<01:46:07.239> is<01:46:07.400> not<01:46:07.880> authenticated<01:46:08.880> we<01:46:08.960> can<01:46:09.119> also
01:46:09.390 --> 01:46:09.400 align:start position:0%
user is not authenticated we can also
01:46:09.400 --> 01:46:12.629 align:start position:0%
user is not authenticated we can also
have<01:46:09.560> a<01:46:09.760> finally<01:46:10.639> clause<01:46:11.639> which<01:46:11.760> is<01:46:11.920> going<01:46:12.080> to
01:46:12.629 --> 01:46:12.639 align:start position:0%
have a finally clause which is going to
01:46:12.639 --> 01:46:15.109 align:start position:0%
have a finally clause which is going to
set<01:46:13.000> is<01:46:13.239> loading<01:46:13.719> to<01:46:13.960> false<01:46:14.560> meaning<01:46:14.880> we're
01:46:15.109 --> 01:46:15.119 align:start position:0%
set is loading to false meaning we're
01:46:15.119 --> 01:46:17.629 align:start position:0%
set is loading to false meaning we're
done<01:46:15.360> with<01:46:15.520> loading<01:46:16.280> but<01:46:16.440> in<01:46:16.560> the<01:46:16.760> try<01:46:17.320> we'll
01:46:17.629 --> 01:46:17.639 align:start position:0%
done with loading but in the try we'll
01:46:17.639 --> 01:46:19.669 align:start position:0%
done with loading but in the try we'll
actually<01:46:18.040> try<01:46:18.520> to<01:46:18.760> get<01:46:18.920> to<01:46:19.119> the<01:46:19.280> currently
01:46:19.669 --> 01:46:19.679 align:start position:0%
actually try to get to the currently
01:46:19.679 --> 01:46:21.950 align:start position:0%
actually try to get to the currently
logged<01:46:20.000> in<01:46:20.119> user<01:46:20.639> account<01:46:21.239> so<01:46:21.440> we<01:46:21.520> can<01:46:21.679> say
01:46:21.950 --> 01:46:21.960 align:start position:0%
logged in user account so we can say
01:46:21.960 --> 01:46:27.629 align:start position:0%
logged in user account so we can say
const<01:46:22.920> current<01:46:23.719> account<01:46:24.719> is<01:46:25.040> equal<01:46:25.360> to<01:46:26.639> await
01:46:27.629 --> 01:46:27.639 align:start position:0%
const current account is equal to await
01:46:27.639 --> 01:46:31.750 align:start position:0%
const current account is equal to await
get<01:46:28.480> current<01:46:29.400> user<01:46:30.400> and<01:46:30.679> this<01:46:30.920> is<01:46:31.080> a<01:46:31.320> function
01:46:31.750 --> 01:46:31.760 align:start position:0%
get current user and this is a function
01:46:31.760 --> 01:46:35.070 align:start position:0%
get current user and this is a function
will<01:46:32.000> create<01:46:32.440> directly<01:46:33.199> within<01:46:33.639> aite<01:46:34.639> so
01:46:35.070 --> 01:46:35.080 align:start position:0%
will create directly within aite so
01:46:35.080 --> 01:46:38.669 align:start position:0%
will create directly within aite so
let's<01:46:35.360> go<01:46:35.560> to<01:46:36.280> aite<01:46:37.280> API<01:46:37.960> that's<01:46:38.159> going<01:46:38.320> to<01:46:38.440> be
01:46:38.669 --> 01:46:38.679 align:start position:0%
let's go to aite API that's going to be
01:46:38.679 --> 01:46:41.310 align:start position:0%
let's go to aite API that's going to be
right<01:46:38.920> here<01:46:39.599> and<01:46:39.719> let's<01:46:39.960> go<01:46:40.199> below<01:46:40.800> the<01:46:41.000> sign
01:46:41.310 --> 01:46:41.320 align:start position:0%
right here and let's go below the sign
01:46:41.320 --> 01:46:46.629 align:start position:0%
right here and let's go below the sign
in<01:46:41.840> account<01:46:42.840> export<01:46:44.000> async<01:46:45.000> function<01:46:45.960> get
01:46:46.629 --> 01:46:46.639 align:start position:0%
in account export async function get
01:46:46.639 --> 01:46:49.669 align:start position:0%
in account export async function get
current<01:46:47.440> user<01:46:48.280> and<01:46:48.480> we<01:46:48.560> can<01:46:48.719> open<01:46:49.000> up<01:46:49.199> a<01:46:49.360> try
01:46:49.669 --> 01:46:49.679 align:start position:0%
current user and we can open up a try
01:46:49.679 --> 01:46:52.310 align:start position:0%
current user and we can open up a try
and<01:46:49.920> catch<01:46:50.159> block<01:46:50.400> block<01:46:50.880> as<01:46:51.000> we<01:46:51.199> always<01:46:51.480> do<01:46:52.159> in
01:46:52.310 --> 01:46:52.320 align:start position:0%
and catch block block as we always do in
01:46:52.320 --> 01:46:56.709 align:start position:0%
and catch block block as we always do in
the<01:46:52.520> catch<01:46:53.320> simply<01:46:54.560> console.log<01:46:55.560> the<01:46:55.760> error
01:46:56.709 --> 01:46:56.719 align:start position:0%
the catch simply console.log the error
01:46:56.719 --> 01:46:58.910 align:start position:0%
the catch simply console.log the error
and<01:46:57.000> here<01:46:57.360> we<01:46:57.480> can<01:46:57.599> say<01:46:57.880> const<01:46:58.360> current
01:46:58.910 --> 01:46:58.920 align:start position:0%
and here we can say const current
01:46:58.920 --> 01:47:04.550 align:start position:0%
and here we can say const current
account<01:46:59.920> is<01:47:00.239> equal<01:47:00.599> to<01:47:01.639> await<01:47:02.880> account.<01:47:03.880> getet
01:47:04.550 --> 01:47:04.560 align:start position:0%
account is equal to await account. getet
01:47:04.560 --> 01:47:07.030 align:start position:0%
account is equal to await account. getet
and<01:47:04.719> then<01:47:05.040> we<01:47:05.159> can<01:47:05.400> check<01:47:06.040> if<01:47:06.400> that<01:47:06.639> current
01:47:07.030 --> 01:47:07.040 align:start position:0%
and then we can check if that current
01:47:07.040 --> 01:47:08.990 align:start position:0%
and then we can check if that current
account<01:47:07.320> doesn't<01:47:07.719> exist<01:47:08.400> we<01:47:08.480> can<01:47:08.679> simply
01:47:08.990 --> 01:47:09.000 align:start position:0%
account doesn't exist we can simply
01:47:09.000 --> 01:47:11.830 align:start position:0%
account doesn't exist we can simply
throw<01:47:09.239> a<01:47:09.400> new<01:47:09.599> error<01:47:10.520> but<01:47:10.760> if<01:47:10.880> it<01:47:11.040> does<01:47:11.360> exist
01:47:11.830 --> 01:47:11.840 align:start position:0%
throw a new error but if it does exist
01:47:11.840 --> 01:47:14.030 align:start position:0%
throw a new error but if it does exist
we<01:47:11.920> can<01:47:12.080> try<01:47:12.280> to<01:47:12.480> retrieve<01:47:13.320> that<01:47:13.599> current
01:47:14.030 --> 01:47:14.040 align:start position:0%
we can try to retrieve that current
01:47:14.040 --> 01:47:17.910 align:start position:0%
we can try to retrieve that current
account<01:47:14.800> by<01:47:14.960> saying<01:47:15.360> const<01:47:16.199> current<01:47:16.639> user<01:47:17.639> is
01:47:17.910 --> 01:47:17.920 align:start position:0%
account by saying const current user is
01:47:17.920 --> 01:47:20.830 align:start position:0%
account by saying const current user is
equal<01:47:18.239> to<01:47:18.840> a<01:47:19.119> wait<01:47:19.920> datab
01:47:20.830 --> 01:47:20.840 align:start position:0%
equal to a wait datab
01:47:20.840 --> 01:47:24.790 align:start position:0%
equal to a wait datab
bases.<01:47:21.840> list<01:47:22.960> documents<01:47:23.960> so<01:47:24.199> here<01:47:24.400> we<01:47:24.520> need<01:47:24.639> to
01:47:24.790 --> 01:47:24.800 align:start position:0%
bases. list documents so here we need to
01:47:24.800 --> 01:47:26.830 align:start position:0%
bases. list documents so here we need to
pass<01:47:25.000> the<01:47:25.159> database<01:47:25.639> ID<01:47:26.280> from<01:47:26.480> which<01:47:26.639> we<01:47:26.719> want
01:47:26.830 --> 01:47:26.840 align:start position:0%
pass the database ID from which we want
01:47:26.840 --> 01:47:28.790 align:start position:0%
pass the database ID from which we want
to<01:47:27.000> read<01:47:27.560> The<01:47:27.719> Collection<01:47:28.119> ID<01:47:28.440> from<01:47:28.599> which<01:47:28.719> we
01:47:28.790 --> 01:47:28.800 align:start position:0%
to read The Collection ID from which we
01:47:28.800 --> 01:47:30.910 align:start position:0%
to read The Collection ID from which we
want<01:47:28.920> to<01:47:29.080> read<01:47:29.639> and<01:47:29.760> then<01:47:29.920> the<01:47:30.080> query<01:47:30.639> of<01:47:30.800> what
01:47:30.910 --> 01:47:30.920 align:start position:0%
want to read and then the query of what
01:47:30.920 --> 01:47:32.870 align:start position:0%
want to read and then the query of what
we're<01:47:31.080> trying<01:47:31.320> to<01:47:31.480> fetch<01:47:32.119> so<01:47:32.280> we<01:47:32.400> need<01:47:32.520> to<01:47:32.679> get
01:47:32.870 --> 01:47:32.880 align:start position:0%
we're trying to fetch so we need to get
01:47:32.880 --> 01:47:35.550 align:start position:0%
we're trying to fetch so we need to get
a<01:47:33.040> list<01:47:33.320> of<01:47:33.480> all<01:47:33.760> user<01:47:34.199> documents<01:47:34.679> in<01:47:34.800> a<01:47:34.960> given
01:47:35.550 --> 01:47:35.560 align:start position:0%
a list of all user documents in a given
01:47:35.560 --> 01:47:37.910 align:start position:0%
a list of all user documents in a given
collection<01:47:36.560> first<01:47:36.920> we<01:47:37.000> need<01:47:37.159> to<01:47:37.360> pass<01:47:37.679> the
01:47:37.910 --> 01:47:37.920 align:start position:0%
collection first we need to pass the
01:47:37.920 --> 01:47:40.109 align:start position:0%
collection first we need to pass the
aite
01:47:40.109 --> 01:47:40.119 align:start position:0%
aite
01:47:40.119 --> 01:47:43.910 align:start position:0%
aite
config<01:47:41.119> database<01:47:42.000> ID<01:47:43.000> then<01:47:43.199> we<01:47:43.320> need<01:47:43.480> to<01:47:43.639> pass
01:47:43.910 --> 01:47:43.920 align:start position:0%
config database ID then we need to pass
01:47:43.920 --> 01:47:48.950 align:start position:0%
config database ID then we need to pass
the<01:47:44.080> app<01:47:44.840> config<01:47:45.840> do<01:47:46.320> user<01:47:47.000> collection<01:47:47.800> ID<01:47:48.800> and
01:47:48.950 --> 01:47:48.960 align:start position:0%
the app config do user collection ID and
01:47:48.960 --> 01:47:50.709 align:start position:0%
the app config do user collection ID and
then<01:47:49.119> we<01:47:49.239> need<01:47:49.360> to<01:47:49.599> pass<01:47:50.000> what<01:47:50.320> we're<01:47:50.480> trying
01:47:50.709 --> 01:47:50.719 align:start position:0%
then we need to pass what we're trying
01:47:50.719 --> 01:47:53.870 align:start position:0%
then we need to pass what we're trying
to<01:47:50.880> fetch<01:47:51.840> which<01:47:52.000> is<01:47:52.199> a<01:47:52.440> query<01:47:53.119> of<01:47:53.280> a<01:47:53.480> type
01:47:53.870 --> 01:47:53.880 align:start position:0%
to fetch which is a query of a type
01:47:53.880 --> 01:47:56.270 align:start position:0%
to fetch which is a query of a type
array<01:47:54.880> so<01:47:55.040> we<01:47:55.159> can<01:47:55.280> say
01:47:56.270 --> 01:47:56.280 align:start position:0%
array so we can say
01:47:56.280 --> 01:47:59.430 align:start position:0%
array so we can say
query.<01:47:57.280> equal<01:47:57.960> we<01:47:58.119> want<01:47:58.320> to<01:47:58.440> get<01:47:58.599> the<01:47:58.800> account
01:47:59.430 --> 01:47:59.440 align:start position:0%
query. equal we want to get the account
01:47:59.440 --> 01:48:03.070 align:start position:0%
query. equal we want to get the account
ID<01:48:00.440> and<01:48:00.679> we<01:48:00.800> want<01:48:00.960> to<01:48:01.159> get<01:48:01.520> only<01:48:01.880> the<01:48:02.080> current
01:48:03.070 --> 01:48:03.080 align:start position:0%
ID and we want to get only the current
01:48:03.080 --> 01:48:07.310 align:start position:0%
ID and we want to get only the current
account<01:48:04.080> do<01:48:04.560> dollar<01:48:04.960> sign<01:48:05.280> ID<01:48:06.280> and<01:48:06.480> this<01:48:06.639> query
01:48:07.310 --> 01:48:07.320 align:start position:0%
account do dollar sign ID and this query
01:48:07.320 --> 01:48:10.070 align:start position:0%
account do dollar sign ID and this query
is<01:48:07.560> coming<01:48:07.960> from<01:48:08.520> aight<01:48:09.199> so<01:48:09.360> we<01:48:09.440> can<01:48:09.599> import<01:48:09.920> it
01:48:10.070 --> 01:48:10.080 align:start position:0%
is coming from aight so we can import it
01:48:10.080 --> 01:48:12.270 align:start position:0%
is coming from aight so we can import it
at<01:48:10.199> the<01:48:10.400> top<01:48:11.080> finally<01:48:11.520> we<01:48:11.639> can<01:48:11.760> do<01:48:11.960> another
01:48:12.270 --> 01:48:12.280 align:start position:0%
at the top finally we can do another
01:48:12.280 --> 01:48:14.669 align:start position:0%
at the top finally we can do another
check<01:48:12.760> saying<01:48:13.159> if<01:48:13.400> there's<01:48:13.719> no<01:48:14.280> current
01:48:14.669 --> 01:48:14.679 align:start position:0%
check saying if there's no current
01:48:14.679 --> 01:48:16.750 align:start position:0%
check saying if there's no current
account<01:48:15.119> or<01:48:15.360> current<01:48:15.639> user<01:48:16.040> this<01:48:16.239> time<01:48:16.599> we're
01:48:16.750 --> 01:48:16.760 align:start position:0%
account or current user this time we're
01:48:16.760 --> 01:48:18.790 align:start position:0%
account or current user this time we're
going<01:48:16.880> to<01:48:16.960> throw<01:48:17.159> an<01:48:17.320> error<01:48:18.119> but<01:48:18.320> if<01:48:18.440> we<01:48:18.639> have
01:48:18.790 --> 01:48:18.800 align:start position:0%
going to throw an error but if we have
01:48:18.800 --> 01:48:21.229 align:start position:0%
going to throw an error but if we have
it<01:48:19.239> we<01:48:19.360> can<01:48:19.679> return<01:48:20.040> a<01:48:20.400> current
01:48:21.229 --> 01:48:21.239 align:start position:0%
it we can return a current
01:48:21.239 --> 01:48:24.030 align:start position:0%
it we can return a current
user.<01:48:22.440> documents
01:48:24.030 --> 01:48:24.040 align:start position:0%
user. documents
01:48:24.040 --> 01:48:27.229 align:start position:0%
user. documents
zero<01:48:25.040> there<01:48:25.199> we<01:48:25.400> go<01:48:26.000> so<01:48:26.199> now<01:48:26.400> we<01:48:26.560> have<01:48:26.719> the<01:48:26.960> get
01:48:27.229 --> 01:48:27.239 align:start position:0%
zero there we go so now we have the get
01:48:27.239 --> 01:48:29.950 align:start position:0%
zero there we go so now we have the get
current<01:48:27.599> user<01:48:28.239> function<01:48:29.159> which<01:48:29.360> we<01:48:29.480> can<01:48:29.679> now
01:48:29.950 --> 01:48:29.960 align:start position:0%
current user function which we can now
01:48:29.960 --> 01:48:33.070 align:start position:0%
current user function which we can now
use<01:48:30.560> within<01:48:30.840> our<01:48:31.080> OD<01:48:31.480> context<01:48:32.440> by<01:48:32.679> simply
01:48:33.070 --> 01:48:33.080 align:start position:0%
use within our OD context by simply
01:48:33.080 --> 01:48:37.510 align:start position:0%
use within our OD context by simply
importing<01:48:33.560> it<01:48:33.840> from<01:48:34.080> lib<01:48:34.599> ight<01:48:35.679> API<01:48:36.679> so<01:48:37.000> here
01:48:37.510 --> 01:48:37.520 align:start position:0%
importing it from lib ight API so here
01:48:37.520 --> 01:48:40.550 align:start position:0%
importing it from lib ight API so here
now<01:48:37.719> we<01:48:37.880> check<01:48:38.320> if<01:48:39.000> the<01:48:39.159> current<01:48:39.560> account
01:48:40.550 --> 01:48:40.560 align:start position:0%
now we check if the current account
01:48:40.560 --> 01:48:43.910 align:start position:0%
now we check if the current account
exists<01:48:41.560> in<01:48:41.800> that<01:48:42.080> case<01:48:42.480> we<01:48:42.599> want<01:48:42.760> to<01:48:43.040> set<01:48:43.440> our
01:48:43.910 --> 01:48:43.920 align:start position:0%
exists in that case we want to set our
01:48:43.920 --> 01:48:46.629 align:start position:0%
exists in that case we want to set our
user<01:48:44.520> so<01:48:44.679> we<01:48:44.760> can<01:48:44.880> say<01:48:45.119> set<01:48:45.440> user<01:48:46.280> and<01:48:46.400> then<01:48:46.520> we
01:48:46.629 --> 01:48:46.639 align:start position:0%
user so we can say set user and then we
01:48:46.639 --> 01:48:49.189 align:start position:0%
user so we can say set user and then we
set<01:48:46.880> the<01:48:47.040> ID<01:48:47.639> to<01:48:47.800> be<01:48:48.000> equal<01:48:48.280> to<01:48:48.440> the<01:48:48.599> current
01:48:49.189 --> 01:48:49.199 align:start position:0%
set the ID to be equal to the current
01:48:49.199 --> 01:48:53.350 align:start position:0%
set the ID to be equal to the current
account<01:48:50.520> dollar<01:48:50.840> sign<01:48:51.360> ID<01:48:52.360> the<01:48:52.560> name<01:48:52.960> to<01:48:53.159> be
01:48:53.350 --> 01:48:53.360 align:start position:0%
account dollar sign ID the name to be
01:48:53.360 --> 01:48:57.390 align:start position:0%
account dollar sign ID the name to be
current
01:48:57.390 --> 01:48:57.400 align:start position:0%
01:48:57.400 --> 01:48:59.950 align:start position:0%
accountname<01:48:58.400> username<01:48:59.159> to<01:48:59.360> be<01:48:59.520> equal<01:48:59.800> to
01:48:59.950 --> 01:48:59.960 align:start position:0%
accountname username to be equal to
01:48:59.960 --> 01:49:02.950 align:start position:0%
accountname username to be equal to
current<01:49:00.360> account.
01:49:02.950 --> 01:49:02.960 align:start position:0%
current account.
01:49:02.960 --> 01:49:05.830 align:start position:0%
current account.
username<01:49:03.960> email<01:49:04.599> to<01:49:04.800> be<01:49:05.000> equal<01:49:05.280> to<01:49:05.480> current
01:49:05.830 --> 01:49:05.840 align:start position:0%
username email to be equal to current
01:49:05.840 --> 01:49:09.350 align:start position:0%
username email to be equal to current
account.<01:49:06.560> email<01:49:07.560> image<01:49:07.880> URL<01:49:08.440> to<01:49:08.639> be<01:49:08.800> equal<01:49:09.080> to
01:49:09.350 --> 01:49:09.360 align:start position:0%
account. email image URL to be equal to
01:49:09.360 --> 01:49:12.550 align:start position:0%
account. email image URL to be equal to
current<01:49:09.760> account<01:49:10.639> dot<01:49:11.639> that's<01:49:11.840> going<01:49:12.040> to<01:49:12.199> be
01:49:12.550 --> 01:49:12.560 align:start position:0%
current account dot that's going to be
01:49:12.560 --> 01:49:15.950 align:start position:0%
current account dot that's going to be
image<01:49:13.360> URL<01:49:14.360> and<01:49:14.480> then<01:49:14.719> bio<01:49:15.159> to<01:49:15.320> be<01:49:15.520> equal<01:49:15.760> to
01:49:15.950 --> 01:49:15.960 align:start position:0%
image URL and then bio to be equal to
01:49:15.960 --> 01:49:19.310 align:start position:0%
image URL and then bio to be equal to
current<01:49:16.320> account.<01:49:17.679> bio<01:49:18.679> of<01:49:18.840> course<01:49:19.080> what<01:49:19.199> you
01:49:19.310 --> 01:49:19.320 align:start position:0%
current account. bio of course what you
01:49:19.320 --> 01:49:20.510 align:start position:0%
current account. bio of course what you
could<01:49:19.440> have<01:49:19.599> done<01:49:19.840> is<01:49:20.199> you<01:49:20.280> could<01:49:20.360> have
01:49:20.510 --> 01:49:20.520 align:start position:0%
could have done is you could have
01:49:20.520 --> 01:49:23.470 align:start position:0%
could have done is you could have
destructured<01:49:21.400> all<01:49:21.560> of<01:49:21.760> these<01:49:22.040> values<01:49:22.880> from
01:49:23.470 --> 01:49:23.480 align:start position:0%
destructured all of these values from
01:49:23.480 --> 01:49:25.950 align:start position:0%
destructured all of these values from
the<01:49:23.599> current<01:49:24.000> account<01:49:24.800> right<01:49:25.080> here<01:49:25.560> by<01:49:25.679> using
01:49:25.950 --> 01:49:25.960 align:start position:0%
the current account right here by using
01:49:25.960 --> 01:49:27.910 align:start position:0%
the current account right here by using
the<01:49:26.080> destructuring<01:49:26.760> assignment<01:49:27.639> and<01:49:27.760> then
01:49:27.910 --> 01:49:27.920 align:start position:0%
the destructuring assignment and then
01:49:27.920 --> 01:49:31.109 align:start position:0%
the destructuring assignment and then
pasting<01:49:28.320> them<01:49:29.000> here<01:49:30.000> you<01:49:30.159> also<01:49:30.360> need<01:49:30.520> to<01:49:30.760> add
01:49:31.109 --> 01:49:31.119 align:start position:0%
pasting them here you also need to add
01:49:31.119 --> 01:49:32.830 align:start position:0%
pasting them here you also need to add
commas<01:49:31.719> to<01:49:31.880> the
01:49:32.830 --> 01:49:32.840 align:start position:0%
commas to the
01:49:32.840 --> 01:49:36.149 align:start position:0%
commas to the
end<01:49:33.840> and<01:49:34.040> if<01:49:34.159> you<01:49:34.320> did<01:49:34.599> that<01:49:35.400> you<01:49:35.520> can<01:49:35.719> also<01:49:35.960> put
01:49:36.149 --> 01:49:36.159 align:start position:0%
end and if you did that you can also put
01:49:36.159 --> 01:49:38.189 align:start position:0%
end and if you did that you can also put
it<01:49:36.280> all<01:49:36.440> in<01:49:36.639> one<01:49:36.840> line<01:49:37.320> as<01:49:37.440> it's<01:49:37.639> not<01:49:37.840> taking
01:49:38.189 --> 01:49:38.199 align:start position:0%
it all in one line as it's not taking
01:49:38.199 --> 01:49:39.470 align:start position:0%
it all in one line as it's not taking
too<01:49:38.400> much
01:49:39.470 --> 01:49:39.480 align:start position:0%
too much
01:49:39.480 --> 01:49:42.189 align:start position:0%
too much
space<01:49:40.480> and<01:49:40.639> now<01:49:40.960> you<01:49:41.119> don't<01:49:41.360> have<01:49:41.480> to<01:49:41.599> mention
01:49:42.189 --> 01:49:42.199 align:start position:0%
space and now you don't have to mention
01:49:42.199 --> 01:49:45.109 align:start position:0%
space and now you don't have to mention
current<01:49:42.599> account<01:49:43.239> every<01:49:43.639> single<01:49:44.000> time<01:49:44.960> so
01:49:45.109 --> 01:49:45.119 align:start position:0%
current account every single time so
01:49:45.119 --> 01:49:46.950 align:start position:0%
current account every single time so
it's<01:49:45.239> going<01:49:45.400> to<01:49:45.560> look<01:49:45.920> a<01:49:46.040> bit<01:49:46.239> cleaner<01:49:46.719> like
01:49:46.950 --> 01:49:46.960 align:start position:0%
it's going to look a bit cleaner like
01:49:46.960 --> 01:49:49.830 align:start position:0%
it's going to look a bit cleaner like
this<01:49:47.760> and<01:49:47.920> for<01:49:48.199> other<01:49:48.520> properties<01:49:49.440> you<01:49:49.599> don't
01:49:49.830 --> 01:49:49.840 align:start position:0%
this and for other properties you don't
01:49:49.840 --> 01:49:52.470 align:start position:0%
this and for other properties you don't
even<01:49:50.280> have<01:49:50.440> to<01:49:50.679> say<01:49:51.400> what<01:49:51.560> it<01:49:51.719> is<01:49:52.040> if<01:49:52.159> the<01:49:52.280> name
01:49:52.470 --> 01:49:52.480 align:start position:0%
even have to say what it is if the name
01:49:52.480 --> 01:49:54.750 align:start position:0%
even have to say what it is if the name
is<01:49:52.679> the<01:49:52.800> same<01:49:53.440> which<01:49:53.560> in<01:49:53.719> all<01:49:53.880> of<01:49:54.080> these<01:49:54.280> cases
01:49:54.750 --> 01:49:54.760 align:start position:0%
is the same which in all of these cases
01:49:54.760 --> 01:49:58.390 align:start position:0%
is the same which in all of these cases
is<01:49:55.239> so<01:49:55.400> you<01:49:55.520> can<01:49:55.719> simply<01:49:56.119> keep<01:49:56.639> the<01:49:56.840> key<01:49:57.400> name
01:49:58.390 --> 01:49:58.400 align:start position:0%
is so you can simply keep the key name
01:49:58.400 --> 01:50:00.189 align:start position:0%
is so you can simply keep the key name
here<01:49:58.719> since<01:49:58.920> we<01:49:59.040> no<01:49:59.199> longer<01:49:59.560> have<01:49:59.800> access<01:50:00.040> to
01:50:00.189 --> 01:50:00.199 align:start position:0%
here since we no longer have access to
01:50:00.199 --> 01:50:02.149 align:start position:0%
here since we no longer have access to
the<01:50:00.360> entire<01:50:00.719> current<01:50:01.119> account<01:50:01.760> we<01:50:01.880> can<01:50:02.000> just
01:50:02.149 --> 01:50:02.159 align:start position:0%
the entire current account we can just
01:50:02.159 --> 01:50:03.270 align:start position:0%
the entire current account we can just
refer<01:50:02.480> to<01:50:02.599> the
01:50:03.270 --> 01:50:03.280 align:start position:0%
refer to the
01:50:03.280 --> 01:50:06.550 align:start position:0%
refer to the
ID<01:50:04.280> and<01:50:04.440> then<01:50:04.800> all<01:50:05.000> of<01:50:05.199> this<01:50:05.440> also<01:50:05.719> fits<01:50:06.119> in<01:50:06.280> one
01:50:06.550 --> 01:50:06.560 align:start position:0%
ID and then all of this also fits in one
01:50:06.560 --> 01:50:08.790 align:start position:0%
ID and then all of this also fits in one
line<01:50:06.920> so<01:50:07.080> we<01:50:07.199> can<01:50:07.320> put<01:50:07.520> it<01:50:07.639> in<01:50:07.760> one<01:50:08.040> line<01:50:08.520> like
01:50:08.790 --> 01:50:08.800 align:start position:0%
line so we can put it in one line like
01:50:08.800 --> 01:50:12.270 align:start position:0%
line so we can put it in one line like
so<01:50:09.800> this<01:50:09.960> is<01:50:10.280> in<01:50:10.480> my<01:50:10.719> opinion<01:50:11.119> a<01:50:11.239> bit<01:50:11.480> easier<01:50:11.800> to
01:50:12.270 --> 01:50:12.280 align:start position:0%
so this is in my opinion a bit easier to
01:50:12.280 --> 01:50:14.310 align:start position:0%
so this is in my opinion a bit easier to
understand<01:50:12.560> what<01:50:12.679> we're<01:50:12.880> doing<01:50:13.760> but<01:50:14.080> we<01:50:14.199> have
01:50:14.310 --> 01:50:14.320 align:start position:0%
understand what we're doing but we have
01:50:14.320 --> 01:50:16.229 align:start position:0%
understand what we're doing but we have
to<01:50:14.440> be<01:50:14.599> careful<01:50:15.199> and<01:50:15.360> typescript<01:50:15.880> comes<01:50:16.000> in
01:50:16.229 --> 01:50:16.239 align:start position:0%
to be careful and typescript comes in
01:50:16.239 --> 01:50:18.189 align:start position:0%
to be careful and typescript comes in
really<01:50:16.520> handy<01:50:16.880> here<01:50:17.320> if<01:50:17.480> I<01:50:17.599> wasn't<01:50:17.880> using
01:50:18.189 --> 01:50:18.199 align:start position:0%
really handy here if I wasn't using
01:50:18.199 --> 01:50:20.430 align:start position:0%
really handy here if I wasn't using
typescript<01:50:18.840> I<01:50:18.880> would<01:50:19.080> do<01:50:19.199> it<01:50:19.599> exactly<01:50:20.199> like
01:50:20.430 --> 01:50:20.440 align:start position:0%
typescript I would do it exactly like
01:50:20.440 --> 01:50:22.750 align:start position:0%
typescript I would do it exactly like
this<01:50:21.080> I<01:50:21.199> would<01:50:21.400> destructure<01:50:22.040> everything<01:50:22.599> and
01:50:22.750 --> 01:50:22.760 align:start position:0%
this I would destructure everything and
01:50:22.760 --> 01:50:25.270 align:start position:0%
this I would destructure everything and
get<01:50:22.920> the<01:50:23.199> values<01:50:24.199> but<01:50:24.400> if<01:50:24.480> you<01:50:24.639> read<01:50:24.920> this<01:50:25.080> in
01:50:25.270 --> 01:50:25.280 align:start position:0%
get the values but if you read this in
01:50:25.280 --> 01:50:27.270 align:start position:0%
get the values but if you read this in
typescript<01:50:25.880> it's<01:50:26.000> going<01:50:26.159> to<01:50:26.280> say<01:50:26.639> property
01:50:27.270 --> 01:50:27.280 align:start position:0%
typescript it's going to say property
01:50:27.280 --> 01:50:30.189 align:start position:0%
typescript it's going to say property
dollar<01:50:27.639> sign<01:50:28.040> ID<01:50:29.040> as<01:50:29.199> well<01:50:29.400> as<01:50:29.560> all<01:50:29.800> the<01:50:29.960> other
01:50:30.189 --> 01:50:30.199 align:start position:0%
dollar sign ID as well as all the other
01:50:30.199 --> 01:50:34.070 align:start position:0%
dollar sign ID as well as all the other
ones<01:50:30.920> do<01:50:31.159> not<01:50:31.520> exist<01:50:31.960> on<01:50:32.199> type<01:50:32.560> document<01:50:33.280> or
01:50:34.070 --> 01:50:34.080 align:start position:0%
ones do not exist on type document or
01:50:34.080 --> 01:50:36.350 align:start position:0%
ones do not exist on type document or
undefined<01:50:35.080> so<01:50:35.239> if<01:50:35.320> you<01:50:35.480> look<01:50:35.719> into<01:50:35.960> the<01:50:36.159> get
01:50:36.350 --> 01:50:36.360 align:start position:0%
undefined so if you look into the get
01:50:36.360 --> 01:50:38.990 align:start position:0%
undefined so if you look into the get
current<01:50:36.679> user<01:50:37.440> you<01:50:37.560> can<01:50:37.760> notice<01:50:38.199> that<01:50:38.520> here
01:50:38.990 --> 01:50:39.000 align:start position:0%
current user you can notice that here
01:50:39.000 --> 01:50:41.189 align:start position:0%
current user you can notice that here
it's<01:50:39.280> great<01:50:40.000> it's<01:50:40.159> returning<01:50:40.639> all<01:50:40.800> of<01:50:40.960> these
01:50:41.189 --> 01:50:41.199 align:start position:0%
it's great it's returning all of these
01:50:41.199 --> 01:50:43.790 align:start position:0%
it's great it's returning all of these
values<01:50:42.199> but<01:50:42.400> in<01:50:42.520> the<01:50:42.760> catch<01:50:43.480> it's<01:50:43.639> not
01:50:43.790 --> 01:50:43.800 align:start position:0%
values but in the catch it's not
01:50:43.800 --> 01:50:46.510 align:start position:0%
values but in the catch it's not
returning<01:50:44.360> anything<01:50:45.320> so<01:50:45.599> if<01:50:45.800> this<01:50:46.000> function
01:50:46.510 --> 01:50:46.520 align:start position:0%
returning anything so if this function
01:50:46.520 --> 01:50:48.910 align:start position:0%
returning anything so if this function
fails<01:50:47.520> then<01:50:48.040> these<01:50:48.280> values<01:50:48.560> will<01:50:48.719> be
01:50:48.910 --> 01:50:48.920 align:start position:0%
fails then these values will be
01:50:48.920 --> 01:50:51.750 align:start position:0%
fails then these values will be
undefined<01:50:49.800> and<01:50:50.040> and<01:50:50.119> they'll<01:50:50.400> cause<01:50:50.880> an<01:50:51.079> error
01:50:51.750 --> 01:50:51.760 align:start position:0%
undefined and and they'll cause an error
01:50:51.760 --> 01:50:53.830 align:start position:0%
undefined and and they'll cause an error
so<01:50:52.000> in<01:50:52.239> this<01:50:52.480> case<01:50:52.679> to<01:50:52.840> make<01:50:53.000> our<01:50:53.239> application
01:50:53.830 --> 01:50:53.840 align:start position:0%
so in this case to make our application
01:50:53.840 --> 01:50:56.149 align:start position:0%
so in this case to make our application
less<01:50:54.079> error<01:50:54.480> prone<01:50:55.199> I<01:50:55.280> would<01:50:55.560> actually<01:50:55.920> get
01:50:56.149 --> 01:50:56.159 align:start position:0%
less error prone I would actually get
01:50:56.159 --> 01:50:58.229 align:start position:0%
less error prone I would actually get
back<01:50:56.400> a<01:50:56.599> bit<01:50:57.119> and<01:50:57.239> I<01:50:57.360> wouldn't<01:50:57.639> D<01:50:57.880> structure
01:50:58.229 --> 01:50:58.239 align:start position:0%
back a bit and I wouldn't D structure
01:50:58.239 --> 01:51:00.510 align:start position:0%
back a bit and I wouldn't D structure
the<01:50:58.400> value<01:50:59.239> although<01:50:59.719> it's<01:50:59.880> taking<01:51:00.199> a<01:51:00.320> bit
01:51:00.510 --> 01:51:00.520 align:start position:0%
the value although it's taking a bit
01:51:00.520 --> 01:51:02.910 align:start position:0%
the value although it's taking a bit
more<01:51:00.800> space<01:51:01.520> and<01:51:01.719> maybe<01:51:02.000> includes<01:51:02.360> a<01:51:02.520> bit<01:51:02.679> more
01:51:02.910 --> 01:51:02.920 align:start position:0%
more space and maybe includes a bit more
01:51:02.920 --> 01:51:05.629 align:start position:0%
more space and maybe includes a bit more
words<01:51:03.679> I<01:51:03.800> would<01:51:03.960> still<01:51:04.199> keep<01:51:04.360> it<01:51:04.560> like<01:51:04.760> this
01:51:05.629 --> 01:51:05.639 align:start position:0%
words I would still keep it like this
01:51:05.639 --> 01:51:07.990 align:start position:0%
words I would still keep it like this
sometimes<01:51:06.079> more<01:51:06.320> words<01:51:06.639> is<01:51:06.800> not<01:51:07.119> bad<01:51:07.679> if<01:51:07.800> your
01:51:07.990 --> 01:51:08.000 align:start position:0%
sometimes more words is not bad if your
01:51:08.000 --> 01:51:10.910 align:start position:0%
sometimes more words is not bad if your
application<01:51:08.719> is<01:51:08.880> more<01:51:09.199> robust<01:51:10.199> finally<01:51:10.679> if<01:51:10.800> we
01:51:10.910 --> 01:51:10.920 align:start position:0%
application is more robust finally if we
01:51:10.920 --> 01:51:13.470 align:start position:0%
application is more robust finally if we
get<01:51:11.079> to<01:51:11.320> here<01:51:11.760> once<01:51:11.960> we<01:51:12.119> set<01:51:12.280> our<01:51:12.440> user<01:51:13.119> we<01:51:13.239> can
01:51:13.470 --> 01:51:13.480 align:start position:0%
get to here once we set our user we can
01:51:13.480 --> 01:51:15.870 align:start position:0%
get to here once we set our user we can
also<01:51:14.000> set<01:51:14.159> the<01:51:14.320> authenticated<01:51:15.040> status<01:51:15.639> to
01:51:15.870 --> 01:51:15.880 align:start position:0%
also set the authenticated status to
01:51:15.880 --> 01:51:20.149 align:start position:0%
also set the authenticated status to
true<01:51:16.760> and<01:51:17.360> return<01:51:18.360> true<01:51:18.760> as<01:51:18.920> well<01:51:19.599> if<01:51:19.719> we
01:51:20.149 --> 01:51:20.159 align:start position:0%
true and return true as well if we
01:51:20.159 --> 01:51:21.790 align:start position:0%
true and return true as well if we
outside<01:51:20.480> of<01:51:20.639> this<01:51:20.840> block<01:51:21.280> we're<01:51:21.400> going<01:51:21.520> to
01:51:21.790 --> 01:51:21.800 align:start position:0%
outside of this block we're going to
01:51:21.800 --> 01:51:22.910 align:start position:0%
outside of this block we're going to
return
01:51:22.910 --> 01:51:22.920 align:start position:0%
return
01:51:22.920 --> 01:51:26.270 align:start position:0%
return
false<01:51:23.920> and<01:51:24.400> this<01:51:24.719> is<01:51:24.880> our<01:51:25.199> check<01:51:25.599> off<01:51:25.920> user
01:51:26.270 --> 01:51:26.280 align:start position:0%
false and this is our check off user
01:51:26.280 --> 01:51:28.589 align:start position:0%
false and this is our check off user
function<01:51:27.159> now<01:51:27.560> this<01:51:27.760> has<01:51:28.000> to<01:51:28.079> be<01:51:28.199> called
01:51:28.589 --> 01:51:28.599 align:start position:0%
function now this has to be called
01:51:28.599 --> 01:51:31.430 align:start position:0%
function now this has to be called
whenever<01:51:28.960> we<01:51:29.119> reload<01:51:29.599> our<01:51:29.880> page<01:51:30.679> and<01:51:30.840> for<01:51:31.119> that
01:51:31.430 --> 01:51:31.440 align:start position:0%
whenever we reload our page and for that
01:51:31.440 --> 01:51:34.550 align:start position:0%
whenever we reload our page and for that
we<01:51:31.560> have<01:51:31.679> to<01:51:31.880> use<01:51:32.400> the<01:51:32.599> use<01:51:33.159> effect<01:51:34.119> so<01:51:34.280> we<01:51:34.360> can
01:51:34.550 --> 01:51:34.560 align:start position:0%
we have to use the use effect so we can
01:51:34.560 --> 01:51:36.870 align:start position:0%
we have to use the use effect so we can
define<01:51:35.000> a<01:51:35.199> new<01:51:35.440> use<01:51:35.719> effect<01:51:36.079> hook<01:51:36.639> that's
01:51:36.870 --> 01:51:36.880 align:start position:0%
define a new use effect hook that's
01:51:36.880 --> 01:51:39.950 align:start position:0%
define a new use effect hook that's
going<01:51:37.040> to<01:51:37.280> have<01:51:37.520> a<01:51:37.719> function<01:51:38.599> like<01:51:38.800> so<01:51:39.599> and<01:51:39.800> a
01:51:39.950 --> 01:51:39.960 align:start position:0%
going to have a function like so and a
01:51:39.960 --> 01:51:42.830 align:start position:0%
going to have a function like so and a
dependency<01:51:40.440> array<01:51:40.960> like<01:51:41.199> this<01:51:41.840> empty<01:51:42.480> meaning
01:51:42.830 --> 01:51:42.840 align:start position:0%
dependency array like this empty meaning
01:51:42.840 --> 01:51:44.589 align:start position:0%
dependency array like this empty meaning
it's<01:51:43.040> only<01:51:43.239> going<01:51:43.400> to<01:51:43.520> be<01:51:43.679> called<01:51:44.239> whenever
01:51:44.589 --> 01:51:44.599 align:start position:0%
it's only going to be called whenever
01:51:44.599 --> 01:51:47.510 align:start position:0%
it's only going to be called whenever
the<01:51:44.800> app<01:51:45.119> reloads<01:51:46.119> here<01:51:46.560> we<01:51:46.679> can<01:51:46.880> look<01:51:47.159> into
01:51:47.510 --> 01:51:47.520 align:start position:0%
the app reloads here we can look into
01:51:47.520 --> 01:51:51.149 align:start position:0%
the app reloads here we can look into
our<01:51:47.760> local<01:51:48.119> storage<01:51:48.760> so<01:51:48.960> we<01:51:49.040> can<01:51:49.159> say<01:51:49.480> if<01:51:50.079> local
01:51:51.149 --> 01:51:51.159 align:start position:0%
our local storage so we can say if local
01:51:51.159 --> 01:51:54.390 align:start position:0%
our local storage so we can say if local
storage.<01:51:52.159> get<01:51:52.440> item<01:51:53.119> upright<01:51:53.560> called<01:51:53.880> it
01:51:54.390 --> 01:51:54.400 align:start position:0%
storage. get item upright called it
01:51:54.400 --> 01:51:56.149 align:start position:0%
storage. get item upright called it
cookie
01:51:56.149 --> 01:51:56.159 align:start position:0%
cookie
01:51:56.159 --> 01:51:59.589 align:start position:0%
cookie
foldback<01:51:57.159> is<01:51:57.560> triple<01:51:58.040> equal<01:51:58.320> to<01:51:58.880> a<01:51:59.040> string<01:51:59.480> of
01:51:59.589 --> 01:51:59.599 align:start position:0%
foldback is triple equal to a string of
01:51:59.599 --> 01:52:03.990 align:start position:0%
foldback is triple equal to a string of
an<01:51:59.800> empty<01:52:00.400> array<01:52:01.320> or<01:52:02.040> it's<01:52:02.360> a<01:52:02.560> local<01:52:03.000> storage.
01:52:03.990 --> 01:52:04.000 align:start position:0%
an empty array or it's a local storage.
01:52:04.000 --> 01:52:06.390 align:start position:0%
an empty array or it's a local storage.
getet<01:52:04.239> item<01:52:04.800> cookie<01:52:05.119> fullback<01:52:05.679> is<01:52:05.920> equal<01:52:06.199> to
01:52:06.390 --> 01:52:06.400 align:start position:0%
getet item cookie fullback is equal to
01:52:06.400 --> 01:52:09.109 align:start position:0%
getet item cookie fullback is equal to
null<01:52:07.400> in<01:52:07.599> that<01:52:07.840> case<01:52:08.320> we<01:52:08.480> simply<01:52:08.760> want<01:52:08.920> to
01:52:09.109 --> 01:52:09.119 align:start position:0%
null in that case we simply want to
01:52:09.119 --> 01:52:11.430 align:start position:0%
null in that case we simply want to
navigate<01:52:09.560> the<01:52:09.679> user<01:52:10.159> back<01:52:10.639> to<01:52:10.840> the<01:52:11.000> sign-in
01:52:11.430 --> 01:52:11.440 align:start position:0%
navigate the user back to the sign-in
01:52:11.440 --> 01:52:14.149 align:start position:0%
navigate the user back to the sign-in
screen<01:52:12.159> so<01:52:12.440> in<01:52:12.639> that<01:52:12.880> case<01:52:13.239> we<01:52:13.360> can<01:52:13.560> import<01:52:14.000> a
01:52:14.149 --> 01:52:14.159 align:start position:0%
screen so in that case we can import a
01:52:14.159 --> 01:52:18.870 align:start position:0%
screen so in that case we can import a
new<01:52:14.440> hook<01:52:14.880> at<01:52:15.040> the<01:52:15.360> top<01:52:16.639> import<01:52:17.639> use
01:52:18.870 --> 01:52:18.880 align:start position:0%
new hook at the top import use
01:52:18.880 --> 01:52:21.990 align:start position:0%
new hook at the top import use
navigate<01:52:20.280> which<01:52:20.400> is<01:52:20.560> coming<01:52:20.920> from<01:52:21.520> react
01:52:21.990 --> 01:52:22.000 align:start position:0%
navigate which is coming from react
01:52:22.000 --> 01:52:24.709 align:start position:0%
navigate which is coming from react
router<01:52:22.360> Dom<01:52:23.320> and<01:52:23.520> we<01:52:23.599> need<01:52:23.760> to<01:52:23.960> initialize<01:52:24.520> it
01:52:24.709 --> 01:52:24.719 align:start position:0%
router Dom and we need to initialize it
01:52:24.719 --> 01:52:26.950 align:start position:0%
router Dom and we need to initialize it
right<01:52:24.880> here<01:52:25.040> at<01:52:25.159> the<01:52:25.360> top<01:52:26.040> by<01:52:26.199> saying<01:52:26.560> cons
01:52:26.950 --> 01:52:26.960 align:start position:0%
right here at the top by saying cons
01:52:26.960 --> 01:52:30.030 align:start position:0%
right here at the top by saying cons
navigate<01:52:27.719> is<01:52:28.000> equal<01:52:28.239> to<01:52:28.400> use<01:52:28.880> navigate<01:52:29.880> and
01:52:30.030 --> 01:52:30.040 align:start position:0%
navigate is equal to use navigate and
01:52:30.040 --> 01:52:35.470 align:start position:0%
navigate is equal to use navigate and
now<01:52:30.239> we<01:52:30.360> can<01:52:30.560> call<01:52:30.800> it<01:52:31.520> navigate<01:52:32.040> to<01:52:33.079> SL<01:52:34.280> in<01:52:35.280> and
01:52:35.470 --> 01:52:35.480 align:start position:0%
now we can call it navigate to SL in and
01:52:35.480 --> 01:52:37.390 align:start position:0%
now we can call it navigate to SL in and
I<01:52:35.599> notied<01:52:35.960> that<01:52:36.079> I<01:52:36.199> didn't<01:52:36.480> close<01:52:37.000> the<01:52:37.159> local
01:52:37.390 --> 01:52:37.400 align:start position:0%
I notied that I didn't close the local
01:52:37.400 --> 01:52:39.790 align:start position:0%
I notied that I didn't close the local
storage.<01:52:38.079> getet<01:52:38.280> item<01:52:38.880> so<01:52:39.159> here<01:52:39.400> I'm<01:52:39.520> going<01:52:39.599> to
01:52:39.790 --> 01:52:39.800 align:start position:0%
storage. getet item so here I'm going to
01:52:39.800 --> 01:52:42.189 align:start position:0%
storage. getet item so here I'm going to
close<01:52:40.079> it<01:52:40.800> and<01:52:41.040> this<01:52:41.159> is<01:52:41.360> how<01:52:41.719> it's<01:52:41.920> supposed
01:52:42.189 --> 01:52:42.199 align:start position:0%
close it and this is how it's supposed
01:52:42.199 --> 01:52:44.830 align:start position:0%
close it and this is how it's supposed
to<01:52:42.360> look<01:52:42.560> like<01:52:43.320> finally<01:52:43.920> whenever<01:52:44.280> we<01:52:44.440> reload
01:52:44.830 --> 01:52:44.840 align:start position:0%
to look like finally whenever we reload
01:52:44.840 --> 01:52:48.629 align:start position:0%
to look like finally whenever we reload
the<01:52:45.000> page<01:52:45.520> we<01:52:45.599> want<01:52:45.760> to<01:52:46.040> recall<01:52:46.920> the<01:52:47.119> check<01:52:48.079> o
01:52:48.629 --> 01:52:48.639 align:start position:0%
the page we want to recall the check o
01:52:48.639 --> 01:52:51.709 align:start position:0%
the page we want to recall the check o
user<01:52:49.079> function<01:52:49.880> we<01:52:49.960> have<01:52:50.119> created<01:52:50.560> above<01:52:51.520> so
01:52:51.709 --> 01:52:51.719 align:start position:0%
user function we have created above so
01:52:51.719 --> 01:52:53.510 align:start position:0%
user function we have created above so
now<01:52:51.920> we<01:52:52.040> have<01:52:52.199> our<01:52:52.360> use<01:52:52.679> effect<01:52:53.119> we<01:52:53.239> have<01:52:53.360> our
01:52:53.510 --> 01:52:53.520 align:start position:0%
now we have our use effect we have our
01:52:53.520 --> 01:52:55.870 align:start position:0%
now we have our use effect we have our
check<01:52:53.800> off<01:52:54.119> user<01:52:54.840> we're<01:52:55.079> passing<01:52:55.520> all<01:52:55.679> of
01:52:55.870 --> 01:52:55.880 align:start position:0%
check off user we're passing all of
01:52:55.880 --> 01:52:58.229 align:start position:0%
check off user we're passing all of
these<01:52:56.079> as<01:52:56.320> values<01:52:57.159> and<01:52:57.360> we're<01:52:57.560> wrapping<01:52:58.040> our
01:52:58.229 --> 01:52:58.239 align:start position:0%
these as values and we're wrapping our
01:52:58.239 --> 01:53:00.430 align:start position:0%
these as values and we're wrapping our
entire<01:52:58.639> application<01:52:59.560> with<01:52:59.800> all<01:53:00.000> of<01:53:00.199> these
01:53:00.430 --> 01:53:00.440 align:start position:0%
entire application with all of these
01:53:00.440 --> 01:53:03.109 align:start position:0%
entire application with all of these
values<01:53:01.119> so<01:53:01.400> that<01:53:01.599> at<01:53:01.800> any<01:53:02.040> point<01:53:02.239> in<01:53:02.480> time<01:53:02.880> we
01:53:03.109 --> 01:53:03.119 align:start position:0%
values so that at any point in time we
01:53:03.119 --> 01:53:05.270 align:start position:0%
values so that at any point in time we
completely<01:53:04.000> understand<01:53:04.560> whether<01:53:04.840> our<01:53:05.000> user
01:53:05.270 --> 01:53:05.280 align:start position:0%
completely understand whether our user
01:53:05.280 --> 01:53:08.990 align:start position:0%
completely understand whether our user
is<01:53:05.440> logged<01:53:05.760> in<01:53:06.400> or<01:53:06.840> not<01:53:07.520> finally<01:53:08.079> we<01:53:08.199> can<01:53:08.480> also
01:53:08.990 --> 01:53:09.000 align:start position:0%
is logged in or not finally we can also
01:53:09.000 --> 01:53:11.709 align:start position:0%
is logged in or not finally we can also
export<01:53:09.639> right<01:53:09.800> here<01:53:09.920> at<01:53:10.040> the<01:53:10.199> bottom<01:53:11.159> export
01:53:11.709 --> 01:53:11.719 align:start position:0%
export right here at the bottom export
01:53:11.719 --> 01:53:15.910 align:start position:0%
export right here at the bottom export
const<01:53:12.599> use<01:53:13.599> user<01:53:14.520> context<01:53:15.360> this<01:53:15.480> is<01:53:15.599> going<01:53:15.760> to
01:53:15.910 --> 01:53:15.920 align:start position:0%
const use user context this is going to
01:53:15.920 --> 01:53:17.870 align:start position:0%
const use user context this is going to
make<01:53:16.040> it<01:53:16.199> simple<01:53:16.520> for<01:53:16.719> us<01:53:16.840> to<01:53:17.040> call<01:53:17.679> this
01:53:17.870 --> 01:53:17.880 align:start position:0%
make it simple for us to call this
01:53:17.880 --> 01:53:20.470 align:start position:0%
make it simple for us to call this
context<01:53:18.400> every<01:53:18.679> time<01:53:19.440> which<01:53:19.560> is<01:53:19.960> a<01:53:20.119> function
01:53:20.470 --> 01:53:20.480 align:start position:0%
context every time which is a function
01:53:20.480 --> 01:53:24.430 align:start position:0%
context every time which is a function
call<01:53:21.440> to<01:53:21.719> use<01:53:22.159> context<01:53:23.119> and<01:53:23.280> then<01:53:23.400> we<01:53:23.639> pass<01:53:23.880> in
01:53:24.430 --> 01:53:24.440 align:start position:0%
call to use context and then we pass in
01:53:24.440 --> 01:53:28.830 align:start position:0%
call to use context and then we pass in
the<01:53:24.679> O<01:53:25.440> context<01:53:26.440> great<01:53:27.400> so<01:53:27.679> now<01:53:28.239> we<01:53:28.360> have<01:53:28.560> this
01:53:28.830 --> 01:53:28.840 align:start position:0%
the O context great so now we have this
01:53:28.840 --> 01:53:31.310 align:start position:0%
the O context great so now we have this
phenomenal<01:53:29.520> context<01:53:30.400> and<01:53:30.639> I<01:53:30.719> notice<01:53:31.079> that
01:53:31.310 --> 01:53:31.320 align:start position:0%
phenomenal context and I notice that
01:53:31.320 --> 01:53:33.870 align:start position:0%
phenomenal context and I notice that
here<01:53:31.639> it<01:53:31.760> says<01:53:32.119> o<01:53:32.679> provider<01:53:33.400> which<01:53:33.520> is<01:53:33.679> not
01:53:33.870 --> 01:53:33.880 align:start position:0%
here it says o provider which is not
01:53:33.880 --> 01:53:36.310 align:start position:0%
here it says o provider which is not
really<01:53:34.159> used<01:53:35.000> we<01:53:35.119> have<01:53:35.239> to<01:53:35.480> export<01:53:35.920> it<01:53:36.159> right
01:53:36.310 --> 01:53:36.320 align:start position:0%
really used we have to export it right
01:53:36.320 --> 01:53:40.550 align:start position:0%
really used we have to export it right
here<01:53:36.880> export<01:53:37.480> default<01:53:38.199> o<01:53:38.639> provider<01:53:39.599> not<01:53:39.960> o
01:53:40.550 --> 01:53:40.560 align:start position:0%
here export default o provider not o
01:53:40.560 --> 01:53:42.390 align:start position:0%
here export default o provider not o
context<01:53:41.560> and<01:53:41.719> I<01:53:41.800> want<01:53:41.920> to<01:53:42.079> point<01:53:42.280> your
01:53:42.390 --> 01:53:42.400 align:start position:0%
context and I want to point your
01:53:42.400 --> 01:53:45.390 align:start position:0%
context and I want to point your
attention<01:53:42.719> to<01:53:43.079> something<01:53:44.079> this<01:53:44.400> is<01:53:44.560> a<01:53:44.800> complex
01:53:45.390 --> 01:53:45.400 align:start position:0%
attention to something this is a complex
01:53:45.400 --> 01:53:47.950 align:start position:0%
attention to something this is a complex
app<01:53:46.159> the<01:53:46.360> files<01:53:46.639> are<01:53:46.880> also<01:53:47.199> complex<01:53:47.639> there's<01:53:47.800> a
01:53:47.950 --> 01:53:47.960 align:start position:0%
app the files are also complex there's a
01:53:47.960 --> 01:53:50.229 align:start position:0%
app the files are also complex there's a
lot<01:53:48.079> of<01:53:48.280> logic<01:53:48.679> Happening<01:53:49.119> Here<01:53:49.760> and<01:53:49.960> although
01:53:50.229 --> 01:53:50.239 align:start position:0%
lot of logic Happening Here and although
01:53:50.239 --> 01:53:52.189 align:start position:0%
lot of logic Happening Here and although
I<01:53:50.360> try<01:53:50.599> to<01:53:50.760> explain<01:53:51.239> everything<01:53:51.599> to<01:53:51.800> the<01:53:52.000> best
01:53:52.189 --> 01:53:52.199 align:start position:0%
I try to explain everything to the best
01:53:52.199 --> 01:53:54.709 align:start position:0%
I try to explain everything to the best
of<01:53:52.360> my<01:53:52.520> ability<01:53:53.360> it's<01:53:53.639> possible<01:53:54.079> that<01:53:54.320> either
01:53:54.709 --> 01:53:54.719 align:start position:0%
of my ability it's possible that either
01:53:54.719 --> 01:53:57.510 align:start position:0%
of my ability it's possible that either
I<01:53:55.159> or<01:53:55.360> maybe<01:53:55.679> you<01:53:56.119> miss<01:53:56.400> something<01:53:57.040> it's<01:53:57.239> easy
01:53:57.510 --> 01:53:57.520 align:start position:0%
I or maybe you miss something it's easy
01:53:57.520 --> 01:54:00.350 align:start position:0%
I or maybe you miss something it's easy
to<01:53:57.719> make<01:53:57.840> a<01:53:58.000> typo<01:53:58.719> right<01:53:59.280> so<01:53:59.920> test<01:54:00.159> your
01:54:00.350 --> 01:54:00.360 align:start position:0%
to make a typo right so test your
01:54:00.360 --> 01:54:01.830 align:start position:0%
to make a typo right so test your
application<01:54:00.880> thoroughly<01:54:01.440> we're<01:54:01.560> going<01:54:01.679> to
01:54:01.830 --> 01:54:01.840 align:start position:0%
application thoroughly we're going to
01:54:01.840 --> 01:54:03.430 align:start position:0%
application thoroughly we're going to
test<01:54:02.000> it<01:54:02.280> together<01:54:02.599> after<01:54:02.880> we're<01:54:03.079> done<01:54:03.280> with
01:54:03.430 --> 01:54:03.440 align:start position:0%
test it together after we're done with
01:54:03.440 --> 01:54:05.510 align:start position:0%
test it together after we're done with
this<01:54:03.840> authentication<01:54:04.840> and<01:54:05.079> if<01:54:05.239> something
01:54:05.510 --> 01:54:05.520 align:start position:0%
this authentication and if something
01:54:05.520 --> 01:54:07.629 align:start position:0%
this authentication and if something
doesn't<01:54:05.880> work<01:54:06.480> the<01:54:06.679> complete<01:54:07.199> GitHub
01:54:07.629 --> 01:54:07.639 align:start position:0%
doesn't work the complete GitHub
01:54:07.639 --> 01:54:09.510 align:start position:0%
doesn't work the complete GitHub
repository<01:54:08.400> is<01:54:08.560> going<01:54:08.719> to<01:54:08.840> be<01:54:09.040> down<01:54:09.239> in<01:54:09.360> the
01:54:09.510 --> 01:54:09.520 align:start position:0%
repository is going to be down in the
01:54:09.520 --> 01:54:11.950 align:start position:0%
repository is going to be down in the
description<01:54:10.400> so<01:54:10.599> simply<01:54:10.920> refer<01:54:11.400> to<01:54:11.599> all<01:54:11.840> the
01:54:11.950 --> 01:54:11.960 align:start position:0%
description so simply refer to all the
01:54:11.960 --> 01:54:14.350 align:start position:0%
description so simply refer to all the
finished<01:54:12.360> files<01:54:13.159> and<01:54:13.320> simply<01:54:13.760> override<01:54:14.239> the
01:54:14.350 --> 01:54:14.360 align:start position:0%
finished files and simply override the
01:54:14.360 --> 01:54:16.270 align:start position:0%
finished files and simply override the
things<01:54:14.560> you<01:54:14.719> have<01:54:14.920> so<01:54:15.159> far<01:54:15.599> to<01:54:15.800> ensure<01:54:16.079> that
01:54:16.270 --> 01:54:16.280 align:start position:0%
things you have so far to ensure that
01:54:16.280 --> 01:54:17.870 align:start position:0%
things you have so far to ensure that
everything<01:54:16.599> is<01:54:16.840> good<01:54:17.199> and<01:54:17.360> if<01:54:17.440> you're<01:54:17.599> still
01:54:17.870 --> 01:54:17.880 align:start position:0%
everything is good and if you're still
01:54:17.880 --> 01:54:20.109 align:start position:0%
everything is good and if you're still
having<01:54:18.119> some<01:54:18.320> errors<01:54:19.040> or<01:54:19.239> disc<01:54:19.760> Community
01:54:20.109 --> 01:54:20.119 align:start position:0%
having some errors or disc Community
01:54:20.119 --> 01:54:22.390 align:start position:0%
having some errors or disc Community
Link<01:54:20.440> is<01:54:20.599> going<01:54:20.760> to<01:54:20.880> be<01:54:21.079> down<01:54:21.719> and<01:54:21.960> we<01:54:22.119> have<01:54:22.239> a
01:54:22.390 --> 01:54:22.400 align:start position:0%
Link is going to be down and we have a
01:54:22.400 --> 01:54:24.790 align:start position:0%
Link is going to be down and we have a
forum<01:54:23.000> specifically<01:54:23.480> for<01:54:23.719> this<01:54:23.880> video<01:54:24.480> for
01:54:24.790 --> 01:54:24.800 align:start position:0%
forum specifically for this video for
01:54:24.800 --> 01:54:26.310 align:start position:0%
forum specifically for this video for
everybody<01:54:25.199> to<01:54:25.400> assist<01:54:25.679> you<01:54:26.000> with<01:54:26.159> the
01:54:26.310 --> 01:54:26.320 align:start position:0%
everybody to assist you with the
01:54:26.320 --> 01:54:29.030 align:start position:0%
everybody to assist you with the
problems<01:54:26.599> you're<01:54:26.840> having<01:54:27.719> so<01:54:28.000> with<01:54:28.159> that<01:54:28.360> said
01:54:29.030 --> 01:54:29.040 align:start position:0%
problems you're having so with that said
01:54:29.040 --> 01:54:31.790 align:start position:0%
problems you're having so with that said
let's<01:54:29.280> now<01:54:29.520> utilize<01:54:30.320> this<01:54:30.480> odd<01:54:30.960> context
01:54:31.790 --> 01:54:31.800 align:start position:0%
let's now utilize this odd context
01:54:31.800 --> 01:54:35.109 align:start position:0%
let's now utilize this odd context
within<01:54:32.400> our<01:54:32.679> signup<01:54:33.280> form<01:54:34.280> right<01:54:34.520> here<01:54:34.880> we<01:54:35.000> can
01:54:35.109 --> 01:54:35.119 align:start position:0%
within our signup form right here we can
01:54:35.119 --> 01:54:39.470 align:start position:0%
within our signup form right here we can
say<01:54:35.480> const<01:54:36.360> is<01:54:36.840> logged<01:54:37.280> in<01:54:38.239> is<01:54:38.440> equal<01:54:38.760> to<01:54:39.239> a
01:54:39.470 --> 01:54:39.480 align:start position:0%
say const is logged in is equal to a
01:54:39.480 --> 01:54:42.990 align:start position:0%
say const is logged in is equal to a
wait<01:54:40.159> check<01:54:40.760> off<01:54:41.239> user<01:54:42.040> which<01:54:42.239> we<01:54:42.360> can<01:54:42.560> import
01:54:42.990 --> 01:54:43.000 align:start position:0%
wait check off user which we can import
01:54:43.000 --> 01:54:45.629 align:start position:0%
wait check off user which we can import
from<01:54:43.159> our<01:54:43.520> context<01:54:44.520> so<01:54:44.840> right<01:54:45.079> here<01:54:45.400> we<01:54:45.520> can
01:54:45.629 --> 01:54:45.639 align:start position:0%
from our context so right here we can
01:54:45.639 --> 01:54:49.910 align:start position:0%
from our context so right here we can
say<01:54:46.040> const<01:54:47.040> check<01:54:47.639> off<01:54:48.360> user<01:54:49.360> as<01:54:49.480> well<01:54:49.639> as<01:54:49.760> well
01:54:49.910 --> 01:54:49.920 align:start position:0%
say const check off user as well as well
01:54:49.920 --> 01:54:52.910 align:start position:0%
say const check off user as well as well
as<01:54:50.239> is<01:54:50.520> loading<01:54:51.480> which<01:54:51.639> we<01:54:51.760> can<01:54:51.920> rename<01:54:52.280> to<01:54:52.560> is
01:54:52.910 --> 01:54:52.920 align:start position:0%
as is loading which we can rename to is
01:54:52.920 --> 01:54:58.629 align:start position:0%
as is loading which we can rename to is
user<01:54:54.079> loading<01:54:55.079> is<01:54:55.320> equal<01:54:55.639> to<01:54:56.599> use<01:54:57.239> user
01:54:58.629 --> 01:54:58.639 align:start position:0%
user loading is equal to use user
01:54:58.639 --> 01:55:01.550 align:start position:0%
user loading is equal to use user
context<01:54:59.639> like<01:54:59.880> so<01:55:00.440> and<01:55:00.560> we<01:55:00.679> can<01:55:00.880> import<01:55:01.280> it
01:55:01.550 --> 01:55:01.560 align:start position:0%
context like so and we can import it
01:55:01.560 --> 01:55:05.990 align:start position:0%
context like so and we can import it
from<01:55:02.360> use<01:55:02.719> user<01:55:03.119> context<01:55:04.000> context<01:55:04.599> o<01:55:05.000> context
01:55:05.990 --> 01:55:06.000 align:start position:0%
from use user context context o context
01:55:06.000 --> 01:55:08.430 align:start position:0%
from use user context context o context
there<01:55:06.119> we<01:55:06.320> go<01:55:06.920> so<01:55:07.199> now<01:55:07.520> we're<01:55:07.719> calling<01:55:08.119> it<01:55:08.320> and
01:55:08.430 --> 01:55:08.440 align:start position:0%
there we go so now we're calling it and
01:55:08.440 --> 01:55:11.189 align:start position:0%
there we go so now we're calling it and
we're<01:55:08.599> getting<01:55:08.800> the<01:55:08.920> Boolean<01:55:09.520> value<01:55:09.960> back<01:55:10.679> is
01:55:11.189 --> 01:55:11.199 align:start position:0%
we're getting the Boolean value back is
01:55:11.199 --> 01:55:14.589 align:start position:0%
we're getting the Boolean value back is
logged<01:55:11.719> in<01:55:12.320> finally<01:55:13.119> what<01:55:13.280> we<01:55:13.400> want<01:55:13.520> to<01:55:13.719> do<01:55:14.239> is
01:55:14.589 --> 01:55:14.599 align:start position:0%
logged in finally what we want to do is
01:55:14.599 --> 01:55:19.069 align:start position:0%
logged in finally what we want to do is
if<01:55:15.440> is<01:55:15.840> logged<01:55:16.440> in<01:55:17.440> in<01:55:17.719> that<01:55:17.960> case<01:55:18.679> we<01:55:18.800> want<01:55:18.920> to
01:55:19.069 --> 01:55:19.079 align:start position:0%
if is logged in in that case we want to
01:55:19.079 --> 01:55:21.950 align:start position:0%
if is logged in in that case we want to
call<01:55:19.360> the<01:55:19.679> form.<01:55:20.360> reset<01:55:21.040> so<01:55:21.159> we<01:55:21.280> want<01:55:21.400> to<01:55:21.599> reset
01:55:21.950 --> 01:55:21.960 align:start position:0%
call the form. reset so we want to reset
01:55:21.960 --> 01:55:24.069 align:start position:0%
call the form. reset so we want to reset
the<01:55:22.079> form<01:55:22.840> and<01:55:23.000> we<01:55:23.119> want<01:55:23.239> to<01:55:23.360> call<01:55:23.639> that<01:55:23.800> same
01:55:24.069 --> 01:55:24.079 align:start position:0%
the form and we want to call that same
01:55:24.079 --> 01:55:27.109 align:start position:0%
the form and we want to call that same
navigate<01:55:24.840> remember<01:55:25.560> from<01:55:25.920> react<01:55:26.360> router<01:55:26.920> so
01:55:27.109 --> 01:55:27.119 align:start position:0%
navigate remember from react router so
01:55:27.119 --> 01:55:31.629 align:start position:0%
navigate remember from react router so
that's<01:55:27.320> going<01:55:27.480> to<01:55:27.760> be<01:55:28.199> link<01:55:28.920> but<01:55:29.119> also<01:55:29.520> use
01:55:31.629 --> 01:55:31.639 align:start position:0%
that's going to be link but also use
01:55:31.639 --> 01:55:34.270 align:start position:0%
that's going to be link but also use
navigate<01:55:32.639> and<01:55:32.800> we<01:55:32.960> Define<01:55:33.239> it<01:55:33.480> right<01:55:33.679> here
01:55:34.270 --> 01:55:34.280 align:start position:0%
navigate and we Define it right here
01:55:34.280 --> 01:55:38.629 align:start position:0%
navigate and we Define it right here
cons<01:55:35.199> navigate<01:55:36.199> is<01:55:36.480> equal<01:55:36.800> to<01:55:37.560> use
01:55:38.629 --> 01:55:38.639 align:start position:0%
cons navigate is equal to use
01:55:38.639 --> 01:55:41.270 align:start position:0%
cons navigate is equal to use
navigate<01:55:39.639> and<01:55:39.800> now<01:55:40.040> we<01:55:40.119> want<01:55:40.239> to<01:55:40.440> navigate<01:55:41.040> to
01:55:41.270 --> 01:55:41.280 align:start position:0%
navigate and now we want to navigate to
01:55:41.280 --> 01:55:43.990 align:start position:0%
navigate and now we want to navigate to
the<01:55:41.400> homepage<01:55:42.159> because<01:55:42.480> we<01:55:42.639> are<01:55:43.079> successfully
01:55:43.990 --> 01:55:44.000 align:start position:0%
the homepage because we are successfully
01:55:44.000 --> 01:55:46.750 align:start position:0%
the homepage because we are successfully
logged<01:55:44.400> in<01:55:45.159> so<01:55:45.320> we<01:55:45.440> can<01:55:45.560> say
01:55:46.750 --> 01:55:46.760 align:start position:0%
logged in so we can say
01:55:46.760 --> 01:55:50.470 align:start position:0%
logged in so we can say
navigate<01:55:47.760> to<01:55:48.320> forward<01:55:48.800> slash
01:55:50.470 --> 01:55:50.480 align:start position:0%
navigate to forward slash
01:55:50.480 --> 01:55:53.270 align:start position:0%
navigate to forward slash
else<01:55:50.960> if<01:55:51.079> we're<01:55:51.320> not<01:55:51.560> successfully<01:55:52.119> logged<01:55:52.440> in
01:55:53.270 --> 01:55:53.280 align:start position:0%
else if we're not successfully logged in
01:55:53.280 --> 01:55:56.350 align:start position:0%
else if we're not successfully logged in
we<01:55:53.400> can<01:55:53.599> again<01:55:53.840> show<01:55:54.199> a<01:55:54.400> toast<01:55:55.280> saying<01:55:55.880> sign<01:55:56.119> up
01:55:56.350 --> 01:55:56.360 align:start position:0%
we can again show a toast saying sign up
01:55:56.360 --> 01:55:58.870 align:start position:0%
we can again show a toast saying sign up
failed<01:55:57.040> please<01:55:57.280> try<01:55:57.679> again<01:55:58.400> and<01:55:58.520> we<01:55:58.599> can
01:55:58.870 --> 01:55:58.880 align:start position:0%
failed please try again and we can
01:55:58.880 --> 01:56:02.030 align:start position:0%
failed please try again and we can
immediately<01:55:59.880> return<01:56:00.119> it<01:56:00.840> and<01:56:01.159> this<01:56:01.719> is<01:56:01.840> our
01:56:02.030 --> 01:56:02.040 align:start position:0%
immediately return it and this is our
01:56:02.040 --> 01:56:04.589 align:start position:0%
immediately return it and this is our
onsubmit<01:56:02.719> function<01:56:03.719> a<01:56:03.880> lot<01:56:04.040> of<01:56:04.199> things<01:56:04.360> were
01:56:04.589 --> 01:56:04.599 align:start position:0%
onsubmit function a lot of things were
01:56:04.599 --> 01:56:06.830 align:start position:0%
onsubmit function a lot of things were
happening<01:56:05.000> in<01:56:05.159> the<01:56:05.280> meantime<01:56:06.159> we<01:56:06.320> worked<01:56:06.639> out
01:56:06.830 --> 01:56:06.840 align:start position:0%
happening in the meantime we worked out
01:56:06.840 --> 01:56:09.069 align:start position:0%
happening in the meantime we worked out
our<01:56:07.079> database<01:56:07.719> we<01:56:07.880> worked<01:56:08.159> out<01:56:08.360> our<01:56:08.639> react
01:56:09.069 --> 01:56:09.079 align:start position:0%
our database we worked out our react
01:56:09.079 --> 01:56:12.470 align:start position:0%
our database we worked out our react
query<01:56:09.920> ight<01:56:10.719> we<01:56:10.880> did<01:56:11.239> everything<01:56:12.079> also<01:56:12.360> we
01:56:12.470 --> 01:56:12.480 align:start position:0%
query ight we did everything also we
01:56:12.480 --> 01:56:14.790 align:start position:0%
query ight we did everything also we
created<01:56:12.880> contact<01:56:13.280> in<01:56:13.400> the<01:56:13.560> meantime<01:56:14.239> so<01:56:14.520> a<01:56:14.639> lot
01:56:14.790 --> 01:56:14.800 align:start position:0%
created contact in the meantime so a lot
01:56:14.800 --> 01:56:17.350 align:start position:0%
created contact in the meantime so a lot
of<01:56:14.960> stuff<01:56:15.199> has<01:56:15.360> happened<01:56:16.119> let's<01:56:16.360> go<01:56:16.520> ahead<01:56:17.119> and
01:56:17.350 --> 01:56:17.360 align:start position:0%
of stuff has happened let's go ahead and
01:56:17.360 --> 01:56:19.589 align:start position:0%
of stuff has happened let's go ahead and
test<01:56:17.599> it<01:56:17.800> out<01:56:18.560> so<01:56:18.719> we<01:56:18.800> can<01:56:18.960> go<01:56:19.119> back<01:56:19.280> through
01:56:19.589 --> 01:56:19.599 align:start position:0%
test it out so we can go back through
01:56:19.599 --> 01:56:21.629 align:start position:0%
test it out so we can go back through
application<01:56:20.560> I'm<01:56:20.719> sure<01:56:21.119> something's<01:56:21.520> going
01:56:21.629 --> 01:56:21.639 align:start position:0%
application I'm sure something's going
01:56:21.639 --> 01:56:25.629 align:start position:0%
application I'm sure something's going
to<01:56:21.760> be<01:56:21.920> broken<01:56:22.639> so<01:56:22.800> let's<01:56:23.000> go<01:56:23.119> to
01:56:25.629 --> 01:56:25.639 align:start position:0%
01:56:25.639 --> 01:56:28.669 align:start position:0%
inspect<01:56:26.639> console<01:56:27.639> and<01:56:27.760> let's<01:56:28.000> reload<01:56:28.440> the
01:56:28.669 --> 01:56:28.679 align:start position:0%
inspect console and let's reload the
01:56:28.679 --> 01:56:31.950 align:start position:0%
inspect console and let's reload the
page<01:56:29.679> as<01:56:29.800> you<01:56:29.880> can<01:56:30.040> see<01:56:30.560> it's<01:56:30.760> saying<01:56:31.639> that<01:56:31.800> we
01:56:31.950 --> 01:56:31.960 align:start position:0%
page as you can see it's saying that we
01:56:31.960 --> 01:56:33.310 align:start position:0%
page as you can see it's saying that we
have<01:56:32.079> an
01:56:33.310 --> 01:56:33.320 align:start position:0%
have an
01:56:33.320 --> 01:56:36.470 align:start position:0%
have an
error<01:56:34.320> in<01:56:34.520> the<01:56:34.679> signup<01:56:35.040> form<01:56:36.040> saying<01:56:36.320> that
01:56:36.470 --> 01:56:36.480 align:start position:0%
error in the signup form saying that
01:56:36.480 --> 01:56:39.270 align:start position:0%
error in the signup form saying that
there's<01:56:36.760> no<01:56:37.040> query<01:56:37.400> client<01:56:37.800> set<01:56:38.520> use<01:56:38.880> Query
01:56:39.270 --> 01:56:39.280 align:start position:0%
there's no query client set use Query
01:56:39.280 --> 01:56:42.030 align:start position:0%
there's no query client set use Query
client<01:56:39.679> provider<01:56:40.320> to<01:56:40.520> set<01:56:40.800> one<01:56:41.599> the<01:56:41.719> reason
01:56:42.030 --> 01:56:42.040 align:start position:0%
client provider to set one the reason
01:56:42.040 --> 01:56:43.910 align:start position:0%
client provider to set one the reason
why<01:56:42.159> we're<01:56:42.320> getting<01:56:42.560> this<01:56:42.719> error<01:56:43.400> is<01:56:43.679> because
01:56:43.910 --> 01:56:43.920 align:start position:0%
why we're getting this error is because
01:56:43.920 --> 01:56:47.430 align:start position:0%
why we're getting this error is because
we<01:56:44.079> didn't<01:56:44.480> actually<01:56:44.880> utilize<01:56:45.599> our<01:56:45.920> o<01:56:46.719> nor<01:56:47.199> our
01:56:47.430 --> 01:56:47.440 align:start position:0%
we didn't actually utilize our o nor our
01:56:47.440 --> 01:56:49.790 align:start position:0%
we didn't actually utilize our o nor our
react<01:56:47.880> query<01:56:48.400> in<01:56:48.520> our<01:56:48.800> app<01:56:49.280> with<01:56:49.480> we<01:56:49.560> simply
01:56:49.790 --> 01:56:49.800 align:start position:0%
react query in our app with we simply
01:56:49.800 --> 01:56:52.550 align:start position:0%
react query in our app with we simply
wrote<01:56:50.119> some<01:56:50.320> code<01:56:50.679> in<01:56:50.840> some<01:56:51.199> files<01:56:52.119> but<01:56:52.239> to
01:56:52.550 --> 01:56:52.560 align:start position:0%
wrote some code in some files but to
01:56:52.560 --> 01:56:55.069 align:start position:0%
wrote some code in some files but to
actually<01:56:52.920> utilize<01:56:53.400> it<01:56:53.880> we<01:56:54.000> have<01:56:54.119> to<01:56:54.320> go<01:56:54.679> way
01:56:55.069 --> 01:56:55.079 align:start position:0%
actually utilize it we have to go way
01:56:55.079 --> 01:56:59.310 align:start position:0%
actually utilize it we have to go way
back<01:56:55.560> to<01:56:55.760> our<01:56:56.000> source<01:56:57.079> main.<01:56:58.079> TSX<01:56:58.960> and<01:56:59.079> we<01:56:59.239> have
01:56:59.310 --> 01:56:59.320 align:start position:0%
back to our source main. TSX and we have
01:56:59.320 --> 01:57:01.830 align:start position:0%
back to our source main. TSX and we have
to<01:56:59.560> wrap<01:56:59.920> our<01:57:00.159> app<01:57:00.679> with<01:57:00.920> all<01:57:01.079> of<01:57:01.280> these
01:57:01.830 --> 01:57:01.840 align:start position:0%
to wrap our app with all of these
01:57:01.840 --> 01:57:04.430 align:start position:0%
to wrap our app with all of these
providers<01:57:02.840> so<01:57:03.159> first<01:57:03.599> let's<01:57:03.800> wrap<01:57:04.119> it<01:57:04.280> with
01:57:04.430 --> 01:57:04.440 align:start position:0%
providers so first let's wrap it with
01:57:04.440 --> 01:57:07.990 align:start position:0%
providers so first let's wrap it with
the<01:57:04.639> O<01:57:05.320> provider<01:57:06.320> which<01:57:06.440> is<01:57:06.599> coming<01:57:07.000> fromc
01:57:07.990 --> 01:57:08.000 align:start position:0%
the O provider which is coming fromc
01:57:08.000 --> 01:57:11.109 align:start position:0%
the O provider which is coming fromc
context<01:57:08.800> o<01:57:09.400> context<01:57:10.400> and<01:57:10.520> then<01:57:10.639> we<01:57:10.760> can<01:57:10.960> put
01:57:11.109 --> 01:57:11.119 align:start position:0%
context o context and then we can put
01:57:11.119 --> 01:57:13.790 align:start position:0%
context o context and then we can put
our<01:57:11.400> app<01:57:11.960> right<01:57:12.199> here<01:57:12.639> within<01:57:12.920> it<01:57:13.480> and
01:57:13.790 --> 01:57:13.800 align:start position:0%
our app right here within it and
01:57:13.800 --> 01:57:16.910 align:start position:0%
our app right here within it and
indented<01:57:14.679> properly<01:57:15.679> this<01:57:15.880> is<01:57:16.040> the<01:57:16.199> context<01:57:16.760> we
01:57:16.910 --> 01:57:16.920 align:start position:0%
indented properly this is the context we
01:57:16.920 --> 01:57:19.950 align:start position:0%
indented properly this is the context we
have<01:57:17.199> created<01:57:18.199> but<01:57:18.480> with<01:57:18.679> react<01:57:19.079> query<01:57:19.760> we
01:57:19.950 --> 01:57:19.960 align:start position:0%
have created but with react query we
01:57:19.960 --> 01:57:22.870 align:start position:0%
have created but with react query we
also<01:57:20.239> have<01:57:20.360> to<01:57:20.560> create<01:57:20.960> our<01:57:21.159> own<01:57:21.679> context<01:57:22.679> so
01:57:22.870 --> 01:57:22.880 align:start position:0%
also have to create our own context so
01:57:22.880 --> 01:57:26.750 align:start position:0%
also have to create our own context so
let's<01:57:23.159> go<01:57:23.360> into<01:57:23.920> lib<01:57:24.800> react<01:57:25.320> query<01:57:26.079> and<01:57:26.320> create
01:57:26.750 --> 01:57:26.760 align:start position:0%
let's go into lib react query and create
01:57:26.760 --> 01:57:29.950 align:start position:0%
let's go into lib react query and create
a<01:57:27.000> query<01:57:28.440> provider.
01:57:29.950 --> 01:57:29.960 align:start position:0%
a query provider.
01:57:29.960 --> 01:57:32.470 align:start position:0%
a query provider.
DSX<01:57:30.960> here<01:57:31.119> we<01:57:31.280> have<01:57:31.400> to<01:57:31.520> do<01:57:31.679> something<01:57:32.000> similar
01:57:32.470 --> 01:57:32.480 align:start position:0%
DSX here we have to do something similar
01:57:32.480 --> 01:57:35.030 align:start position:0%
DSX here we have to do something similar
we've<01:57:32.679> done<01:57:32.880> with<01:57:33.000> our<01:57:33.199> own<01:57:33.840> context<01:57:34.840> by
01:57:35.030 --> 01:57:35.040 align:start position:0%
we've done with our own context by
01:57:35.040 --> 01:57:37.390 align:start position:0%
we've done with our own context by
running
01:57:37.390 --> 01:57:37.400 align:start position:0%
running
01:57:37.400 --> 01:57:40.470 align:start position:0%
running
rafc<01:57:38.400> instead<01:57:38.679> of<01:57:38.800> a<01:57:39.000> default<01:57:39.679> export<01:57:40.199> we<01:57:40.320> can
01:57:40.470 --> 01:57:40.480 align:start position:0%
rafc instead of a default export we can
01:57:40.480 --> 01:57:43.030 align:start position:0%
rafc instead of a default export we can
simply<01:57:40.719> use<01:57:40.920> a<01:57:41.119> named<01:57:41.440> one<01:57:42.040> export<01:57:42.560> const
01:57:43.030 --> 01:57:43.040 align:start position:0%
simply use a named one export const
01:57:43.040 --> 01:57:45.950 align:start position:0%
simply use a named one export const
query<01:57:43.480> provider<01:57:44.320> we<01:57:44.560> also<01:57:44.920> get<01:57:45.159> the<01:57:45.280> children
01:57:45.950 --> 01:57:45.960 align:start position:0%
query provider we also get the children
01:57:45.960 --> 01:57:48.069 align:start position:0%
query provider we also get the children
right<01:57:46.199> here<01:57:47.079> because<01:57:47.320> we<01:57:47.400> need<01:57:47.560> to<01:57:47.639> show<01:57:47.920> the
01:57:48.069 --> 01:57:48.079 align:start position:0%
right here because we need to show the
01:57:48.079 --> 01:57:50.069 align:start position:0%
right here because we need to show the
entire<01:57:48.480> app<01:57:48.719> within<01:57:48.960> it<01:57:49.520> which<01:57:49.639> is<01:57:49.760> going<01:57:49.960> to
01:57:50.069 --> 01:57:50.079 align:start position:0%
entire app within it which is going to
01:57:50.079 --> 01:57:56.109 align:start position:0%
entire app within it which is going to
be<01:57:50.280> of<01:57:50.440> a<01:57:50.880> type<01:57:51.960> children<01:57:53.079> react.<01:57:54.079> react<01:57:55.119> node
01:57:56.109 --> 01:57:56.119 align:start position:0%
be of a type children react. react node
01:57:56.119 --> 01:57:58.990 align:start position:0%
be of a type children react. react node
like<01:57:56.320> so<01:57:57.280> we<01:57:57.440> can<01:57:57.599> also<01:57:57.880> just<01:57:58.079> import<01:57:58.560> react
01:57:58.990 --> 01:57:59.000 align:start position:0%
like so we can also just import react
01:57:59.000 --> 01:58:01.470 align:start position:0%
like so we can also just import react
node<01:57:59.599> at<01:57:59.760> the<01:57:59.960> top<01:58:00.639> that's<01:58:00.840> going<01:58:01.000> to<01:58:01.079> be<01:58:01.199> a<01:58:01.320> bit
01:58:01.470 --> 01:58:01.480 align:start position:0%
node at the top that's going to be a bit
01:58:01.480 --> 01:58:04.550 align:start position:0%
node at the top that's going to be a bit
simpler<01:58:01.880> so<01:58:02.000> we<01:58:02.079> can<01:58:02.679> destructure<01:58:03.679> react<01:58:04.119> node
01:58:04.550 --> 01:58:04.560 align:start position:0%
simpler so we can destructure react node
01:58:04.560 --> 01:58:07.310 align:start position:0%
simpler so we can destructure react node
from<01:58:05.119> react<01:58:06.119> and<01:58:06.320> now<01:58:06.599> it's<01:58:06.760> going<01:58:06.880> to<01:58:07.000> fit<01:58:07.159> in
01:58:07.310 --> 01:58:07.320 align:start position:0%
from react and now it's going to fit in
01:58:07.320 --> 01:58:10.030 align:start position:0%
from react and now it's going to fit in
one<01:58:07.560> line<01:58:08.440> and<01:58:08.599> then<01:58:08.800> we<01:58:08.920> need<01:58:09.079> to
01:58:10.030 --> 01:58:10.040 align:start position:0%
one line and then we need to
01:58:10.040 --> 01:58:13.149 align:start position:0%
one line and then we need to
return<01:58:11.239> query
01:58:13.149 --> 01:58:13.159 align:start position:0%
return query
01:58:13.159 --> 01:58:15.109 align:start position:0%
return query
client
01:58:15.109 --> 01:58:15.119 align:start position:0%
client
01:58:15.119 --> 01:58:18.790 align:start position:0%
client
provider<01:58:16.119> like<01:58:16.800> this<01:58:17.800> that<01:58:17.920> we<01:58:18.040> can<01:58:18.280> import
01:58:18.790 --> 01:58:18.800 align:start position:0%
provider like this that we can import
01:58:18.800 --> 01:58:21.470 align:start position:0%
provider like this that we can import
from<01:58:19.040> t<01:58:19.480> stack<01:58:19.840> react
01:58:21.470 --> 01:58:21.480 align:start position:0%
from t stack react
01:58:21.480 --> 01:58:24.390 align:start position:0%
from t stack react
query<01:58:22.480> it's<01:58:22.679> going<01:58:22.840> to<01:58:23.079> have<01:58:23.400> a<01:58:23.679> client
01:58:24.390 --> 01:58:24.400 align:start position:0%
query it's going to have a client
01:58:24.400 --> 01:58:27.550 align:start position:0%
query it's going to have a client
property<01:58:25.199> equal<01:58:25.480> to<01:58:25.719> query<01:58:26.480> client<01:58:27.199> which<01:58:27.400> is
01:58:27.550 --> 01:58:27.560 align:start position:0%
property equal to query client which is
01:58:27.560 --> 01:58:30.030 align:start position:0%
property equal to query client which is
once<01:58:27.800> again<01:58:28.079> coming<01:58:28.400> from<01:58:28.800> T<01:58:29.199> stack<01:58:29.599> react
01:58:30.030 --> 01:58:30.040 align:start position:0%
once again coming from T stack react
01:58:30.040 --> 01:58:33.229 align:start position:0%
once again coming from T stack react
query<01:58:30.560> so<01:58:30.719> we<01:58:30.800> can<01:58:30.960> import<01:58:31.320> it<01:58:31.719> at<01:58:31.840> the<01:58:32.079> top<01:58:33.079> and
01:58:33.229 --> 01:58:33.239 align:start position:0%
query so we can import it at the top and
01:58:33.239 --> 01:58:34.669 align:start position:0%
query so we can import it at the top and
I<01:58:33.400> believe<01:58:33.760> it<01:58:33.840> should<01:58:34.040> start<01:58:34.400> with<01:58:34.560> a
01:58:34.669 --> 01:58:34.679 align:start position:0%
I believe it should start with a
01:58:34.679 --> 01:58:37.629 align:start position:0%
I believe it should start with a
lowercase<01:58:35.440> letter<01:58:35.920> so<01:58:36.079> it's<01:58:36.199> a<01:58:36.360> query<01:58:36.840> client
01:58:37.629 --> 01:58:37.639 align:start position:0%
lowercase letter so it's a query client
01:58:37.639 --> 01:58:40.149 align:start position:0%
lowercase letter so it's a query client
like<01:58:37.840> so<01:58:38.480> and<01:58:38.639> it's<01:58:38.840> complaining<01:58:39.440> right<01:58:39.639> here
01:58:40.149 --> 01:58:40.159 align:start position:0%
like so and it's complaining right here
01:58:40.159 --> 01:58:42.510 align:start position:0%
like so and it's complaining right here
that's<01:58:40.400> because<01:58:40.639> we<01:58:40.800> have<01:58:40.960> to<01:58:41.520> set<01:58:41.719> up<01:58:42.000> a<01:58:42.159> new
01:58:42.510 --> 01:58:42.520 align:start position:0%
that's because we have to set up a new
01:58:42.520 --> 01:58:45.030 align:start position:0%
that's because we have to set up a new
instance<01:58:43.119> of<01:58:43.360> that<01:58:43.520> query<01:58:43.880> client<01:58:44.560> by<01:58:44.679> saying
01:58:45.030 --> 01:58:45.040 align:start position:0%
instance of that query client by saying
01:58:45.040 --> 01:58:48.189 align:start position:0%
instance of that query client by saying
const<01:58:45.440> query<01:58:45.800> client<01:58:46.360> with<01:58:46.520> a<01:58:46.639> lowercase<01:58:47.280> Q<01:58:48.000> is
01:58:48.189 --> 01:58:48.199 align:start position:0%
const query client with a lowercase Q is
01:58:48.199 --> 01:58:50.750 align:start position:0%
const query client with a lowercase Q is
equal<01:58:48.520> to<01:58:49.000> new<01:58:49.320> new<01:58:49.440> query<01:58:49.800> client<01:58:50.480> that<01:58:50.599> we
01:58:50.750 --> 01:58:50.760 align:start position:0%
equal to new new query client that we
01:58:50.760 --> 01:58:52.750 align:start position:0%
equal to new new query client that we
call<01:58:51.000> like<01:58:51.239> this<01:58:51.960> and<01:58:52.079> then<01:58:52.239> we<01:58:52.400> pass<01:58:52.639> the
01:58:52.750 --> 01:58:52.760 align:start position:0%
call like this and then we pass the
01:58:52.760 --> 01:58:55.750 align:start position:0%
call like this and then we pass the
lowercase<01:58:53.360> one<01:58:53.960> right<01:58:54.199> here<01:58:55.000> and<01:58:55.239> finally<01:58:55.679> we
01:58:55.750 --> 01:58:55.760 align:start position:0%
lowercase one right here and finally we
01:58:55.760 --> 01:58:58.229 align:start position:0%
lowercase one right here and finally we
can<01:58:55.920> render<01:58:56.239> the<01:58:56.400> children<01:58:57.040> right<01:58:57.280> here<01:58:58.119> this
01:58:58.229 --> 01:58:58.239 align:start position:0%
can render the children right here this
01:58:58.239 --> 01:59:00.270 align:start position:0%
can render the children right here this
is<01:58:58.400> similar<01:58:58.719> to<01:58:58.880> our<01:58:59.040> own<01:58:59.440> context<01:59:00.000> we<01:59:00.119> have
01:59:00.270 --> 01:59:00.280 align:start position:0%
is similar to our own context we have
01:59:00.280 --> 01:59:03.030 align:start position:0%
is similar to our own context we have
created<01:59:00.800> before<01:59:01.800> so<01:59:02.040> now<01:59:02.280> going<01:59:02.599> back<01:59:02.719> to<01:59:02.880> our
01:59:03.030 --> 01:59:03.040 align:start position:0%
created before so now going back to our
01:59:03.040 --> 01:59:05.270 align:start position:0%
created before so now going back to our
main<01:59:03.560> alongside<01:59:04.119> wrapping<01:59:04.480> it<01:59:04.599> in<01:59:04.719> the<01:59:04.880> O
01:59:05.270 --> 01:59:05.280 align:start position:0%
main alongside wrapping it in the O
01:59:05.280 --> 01:59:07.510 align:start position:0%
main alongside wrapping it in the O
provider<01:59:05.960> we<01:59:06.040> can<01:59:06.280> also<01:59:06.599> wrap<01:59:06.880> it<01:59:07.079> in<01:59:07.280> the
01:59:07.510 --> 01:59:07.520 align:start position:0%
provider we can also wrap it in the
01:59:07.520 --> 01:59:09.030 align:start position:0%
provider we can also wrap it in the
query
01:59:09.030 --> 01:59:09.040 align:start position:0%
query
01:59:09.040 --> 01:59:11.830 align:start position:0%
query
provider<01:59:10.040> which<01:59:10.159> is<01:59:10.320> coming<01:59:10.599> from<01:59:10.880> lib<01:59:11.360> react
01:59:11.830 --> 01:59:11.840 align:start position:0%
provider which is coming from lib react
01:59:11.840 --> 01:59:14.149 align:start position:0%
provider which is coming from lib react
query<01:59:12.400> query
01:59:14.149 --> 01:59:14.159 align:start position:0%
query query
01:59:14.159 --> 01:59:16.990 align:start position:0%
query query
provider<01:59:15.159> and<01:59:15.320> we<01:59:15.400> can<01:59:15.639> put<01:59:16.079> all<01:59:16.239> of<01:59:16.480> this
01:59:16.990 --> 01:59:17.000 align:start position:0%
provider and we can put all of this
01:59:17.000 --> 01:59:21.069 align:start position:0%
provider and we can put all of this
within<01:59:17.639> it<01:59:18.639> and<01:59:18.880> in<01:59:19.079> then<01:59:19.440> it<01:59:19.719> properly<01:59:20.719> so<01:59:20.920> now
01:59:21.069 --> 01:59:21.079 align:start position:0%
within it and in then it properly so now
01:59:21.079 --> 01:59:22.790 align:start position:0%
within it and in then it properly so now
we're<01:59:21.360> properly<01:59:21.719> wrapping<01:59:22.079> our<01:59:22.320> app<01:59:22.560> with
01:59:22.790 --> 01:59:22.800 align:start position:0%
we're properly wrapping our app with
01:59:22.800 --> 01:59:24.669 align:start position:0%
we're properly wrapping our app with
everything<01:59:23.159> we<01:59:23.280> need<01:59:23.840> and<01:59:24.000> we<01:59:24.119> can<01:59:24.360> again
01:59:24.669 --> 01:59:24.679 align:start position:0%
everything we need and we can again
01:59:24.679 --> 01:59:27.310 align:start position:0%
everything we need and we can again
check<01:59:24.920> the<01:59:25.239> errors<01:59:26.239> now<01:59:26.480> the<01:59:26.599> error<01:59:26.840> is<01:59:26.960> saying
01:59:27.310 --> 01:59:27.320 align:start position:0%
check the errors now the error is saying
01:59:27.320 --> 01:59:30.470 align:start position:0%
check the errors now the error is saying
that<01:59:27.520> is<01:59:27.800> creating<01:59:28.199> user<01:59:28.800> is<01:59:29.000> not<01:59:29.280> defined<01:59:30.159> add
01:59:30.470 --> 01:59:30.480 align:start position:0%
that is creating user is not defined add
01:59:30.480 --> 01:59:33.910 align:start position:0%
that is creating user is not defined add
signup<01:59:30.920> form<01:59:31.800> so<01:59:32.119> let's<01:59:32.360> go<01:59:32.480> to<01:59:32.639> our<01:59:32.840> signup
01:59:33.910 --> 01:59:33.920 align:start position:0%
signup form so let's go to our signup
01:59:33.920 --> 01:59:38.069 align:start position:0%
signup form so let's go to our signup
form<01:59:34.920> and<01:59:35.079> let's<01:59:35.320> search<01:59:35.639> for<01:59:36.360> is<01:59:36.639> creating
01:59:38.069 --> 01:59:38.079 align:start position:0%
form and let's search for is creating
01:59:38.079 --> 01:59:41.149 align:start position:0%
form and let's search for is creating
user<01:59:39.079> that<01:59:39.280> is<01:59:39.560> creating<01:59:39.920> user<01:59:40.480> is<01:59:40.639> coming
01:59:41.149 --> 01:59:41.159 align:start position:0%
user that is creating user is coming
01:59:41.159 --> 01:59:44.669 align:start position:0%
user that is creating user is coming
right<01:59:41.440> here<01:59:42.199> from<01:59:42.520> our<01:59:42.960> use<01:59:43.520> create<01:59:43.960> user
01:59:44.669 --> 01:59:44.679 align:start position:0%
right here from our use create user
01:59:44.679 --> 01:59:47.950 align:start position:0%
right here from our use create user
account<01:59:45.679> so<01:59:46.119> why<01:59:46.480> would<01:59:46.679> this<01:59:46.880> is<01:59:47.159> loading<01:59:47.639> not
01:59:47.950 --> 01:59:47.960 align:start position:0%
account so why would this is loading not
01:59:47.960 --> 01:59:50.149 align:start position:0%
account so why would this is loading not
be<01:59:48.239> there<01:59:49.079> if<01:59:49.239> it's<01:59:49.480> actually<01:59:49.719> saying<01:59:50.040> that
01:59:50.149 --> 01:59:50.159 align:start position:0%
be there if it's actually saying that
01:59:50.159 --> 01:59:52.390 align:start position:0%
be there if it's actually saying that
it's<01:59:50.360> not<01:59:50.520> returning<01:59:51.079> the<01:59:51.199> is<01:59:51.360> loading
01:59:52.390 --> 01:59:52.400 align:start position:0%
it's not returning the is loading
01:59:52.400 --> 01:59:54.990 align:start position:0%
it's not returning the is loading
property<01:59:53.400> well<01:59:53.719> this<01:59:53.840> is<01:59:54.000> coming<01:59:54.280> from<01:59:54.560> use
01:59:54.990 --> 01:59:55.000 align:start position:0%
property well this is coming from use
01:59:55.000 --> 01:59:58.270 align:start position:0%
property well this is coming from use
create<01:59:55.360> user<01:59:55.960> account<01:59:56.960> and<01:59:57.320> that<01:59:57.800> is<01:59:58.079> a
01:59:58.270 --> 01:59:58.280 align:start position:0%
create user account and that is a
01:59:58.280 --> 02:00:01.589 align:start position:0%
create user account and that is a
mutation<01:59:58.880> from<01:59:59.119> react<01:59:59.760> query<02:00:00.760> so<02:00:01.239> let's<02:00:01.480> go
02:00:01.589 --> 02:00:01.599 align:start position:0%
mutation from react query so let's go
02:00:01.599 --> 02:00:05.030 align:start position:0%
mutation from react query so let's go
ahead<02:00:01.960> and<02:00:02.280> check<02:00:02.560> out<02:00:02.960> our<02:00:03.520> package
02:00:05.030 --> 02:00:05.040 align:start position:0%
ahead and check out our package
02:00:05.040 --> 02:00:09.270 align:start position:0%
ahead and check out our package
Json<02:00:06.040> and<02:00:06.679> would<02:00:06.880> you<02:00:07.119> look<02:00:07.360> at<02:00:07.599> that<02:00:08.360> tanac
02:00:09.270 --> 02:00:09.280 align:start position:0%
Json and would you look at that tanac
02:00:09.280 --> 02:00:11.790 align:start position:0%
Json and would you look at that tanac
just<02:00:09.599> recently<02:00:10.400> changed<02:00:10.920> its<02:00:11.159> version<02:00:11.560> to
02:00:11.790 --> 02:00:11.800 align:start position:0%
just recently changed its version to
02:00:11.800 --> 02:00:13.589 align:start position:0%
just recently changed its version to
version
02:00:13.589 --> 02:00:13.599 align:start position:0%
version
02:00:13.599 --> 02:00:16.109 align:start position:0%
version
5.0.0<02:00:14.599> and<02:00:14.840> When<02:00:15.040> developing<02:00:15.560> these<02:00:15.800> projects
02:00:16.109 --> 02:00:16.119 align:start position:0%
5.0.0 and When developing these projects
02:00:16.119 --> 02:00:18.790 align:start position:0%
5.0.0 and When developing these projects
for<02:00:16.320> JSM<02:00:17.199> they<02:00:17.400> take<02:00:17.719> a<02:00:17.880> couple<02:00:18.079> of<02:00:18.280> weeks<02:00:18.679> up
02:00:18.790 --> 02:00:18.800 align:start position:0%
for JSM they take a couple of weeks up
02:00:18.800 --> 02:00:21.830 align:start position:0%
for JSM they take a couple of weeks up
to<02:00:18.920> a<02:00:19.239> couple<02:00:19.440> of<02:00:19.679> months<02:00:20.040> to<02:00:20.320> create<02:00:21.199> so<02:00:21.480> it's
02:00:21.830 --> 02:00:21.840 align:start position:0%
to a couple of months to create so it's
02:00:21.840 --> 02:00:23.990 align:start position:0%
to a couple of months to create so it's
possible<02:00:22.360> that<02:00:22.520> our<02:00:22.719> development<02:00:23.320> version<02:00:23.880> is
02:00:23.990 --> 02:00:24.000 align:start position:0%
possible that our development version is
02:00:24.000 --> 02:00:27.589 align:start position:0%
possible that our development version is
using<02:00:24.360> an<02:00:24.599> older<02:00:25.199> version<02:00:25.639> of<02:00:25.960> react<02:00:26.599> query
02:00:27.589 --> 02:00:27.599 align:start position:0%
using an older version of react query
02:00:27.599 --> 02:00:29.270 align:start position:0%
using an older version of react query
this<02:00:27.719> is<02:00:27.920> actually<02:00:28.239> quite<02:00:28.480> exciting<02:00:28.840> for<02:00:29.000> you
02:00:29.270 --> 02:00:29.280 align:start position:0%
this is actually quite exciting for you
02:00:29.280 --> 02:00:31.189 align:start position:0%
this is actually quite exciting for you
right<02:00:29.440> now<02:00:29.840> because<02:00:30.239> we're<02:00:30.400> going<02:00:30.480> to<02:00:30.639> do<02:00:30.840> some
02:00:31.189 --> 02:00:31.199 align:start position:0%
right now because we're going to do some
02:00:31.199 --> 02:00:33.589 align:start position:0%
right now because we're going to do some
live<02:00:31.560> debugging<02:00:32.560> we're<02:00:32.719> going<02:00:32.800> to<02:00:33.040> go<02:00:33.280> over
02:00:33.589 --> 02:00:33.599 align:start position:0%
live debugging we're going to go over
02:00:33.599 --> 02:00:36.030 align:start position:0%
live debugging we're going to go over
the<02:00:33.760> documentation<02:00:34.520> of<02:00:34.679> the<02:00:34.800> new<02:00:35.000> version<02:00:35.880> and
02:00:36.030 --> 02:00:36.040 align:start position:0%
the documentation of the new version and
02:00:36.040 --> 02:00:38.589 align:start position:0%
the documentation of the new version and
I'm<02:00:36.159> going<02:00:36.280> to<02:00:36.480> show<02:00:36.760> you<02:00:37.440> how<02:00:37.679> you<02:00:37.800> would<02:00:38.040> deal
02:00:38.589 --> 02:00:38.599 align:start position:0%
I'm going to show you how you would deal
02:00:38.599 --> 02:00:40.550 align:start position:0%
I'm going to show you how you would deal
with<02:00:38.800> this<02:00:39.000> error<02:00:39.599> if<02:00:39.719> you're<02:00:39.960> following<02:00:40.400> a
02:00:40.550 --> 02:00:40.560 align:start position:0%
with this error if you're following a
02:00:40.560 --> 02:00:43.669 align:start position:0%
with this error if you're following a
video<02:00:41.199> and<02:00:41.440> something<02:00:41.840> got<02:00:42.360> outdated<02:00:43.360> so<02:00:43.520> the
02:00:43.669 --> 02:00:43.679 align:start position:0%
video and something got outdated so the
02:00:43.679 --> 02:00:45.470 align:start position:0%
video and something got outdated so the
first<02:00:43.920> thing<02:00:44.040> you<02:00:44.159> have<02:00:44.280> to<02:00:44.440> do<02:00:44.840> is<02:00:45.040> go<02:00:45.199> to<02:00:45.360> the
02:00:45.470 --> 02:00:45.480 align:start position:0%
first thing you have to do is go to the
02:00:45.480 --> 02:00:47.750 align:start position:0%
first thing you have to do is go to the
library<02:00:45.920> we're<02:00:46.119> using<02:00:46.920> and<02:00:47.040> then<02:00:47.239> go<02:00:47.440> to<02:00:47.599> the
02:00:47.750 --> 02:00:47.760 align:start position:0%
library we're using and then go to the
02:00:47.760 --> 02:00:50.030 align:start position:0%
library we're using and then go to the
docs<02:00:48.719> in<02:00:48.880> this<02:00:49.159> this<02:00:49.280> case<02:00:49.440> we're<02:00:49.599> wondering
02:00:50.030 --> 02:00:50.040 align:start position:0%
docs in this this case we're wondering
02:00:50.040 --> 02:00:52.390 align:start position:0%
docs in this this case we're wondering
about<02:00:50.280> the<02:00:50.440> loading<02:00:51.040> so<02:00:51.199> if<02:00:51.320> I<02:00:51.440> search<02:00:51.719> for<02:00:52.000> is
02:00:52.390 --> 02:00:52.400 align:start position:0%
about the loading so if I search for is
02:00:52.400 --> 02:00:55.629 align:start position:0%
about the loading so if I search for is
loading<02:00:53.400> no<02:00:53.880> nothing<02:00:54.239> is<02:00:54.560> here<02:00:55.239> but<02:00:55.400> if<02:00:55.520> I
02:00:55.629 --> 02:00:55.639 align:start position:0%
loading no nothing is here but if I
02:00:55.639 --> 02:00:58.270 align:start position:0%
loading no nothing is here but if I
search<02:00:55.920> for<02:00:56.199> just<02:00:56.400> loading<02:00:57.079> itself<02:00:58.079> we<02:00:58.159> can
02:00:58.270 --> 02:00:58.280 align:start position:0%
search for just loading itself we can
02:00:58.280 --> 02:01:00.069 align:start position:0%
search for just loading itself we can
see<02:00:58.560> displaying<02:00:59.199> Global<02:00:59.639> background
02:01:00.069 --> 02:01:00.079 align:start position:0%
see displaying Global background
02:01:00.079 --> 02:01:02.990 align:start position:0%
see displaying Global background
fetching<02:01:00.520> loading<02:01:01.199> State<02:01:02.199> maybe<02:01:02.520> that's
02:01:02.990 --> 02:01:03.000 align:start position:0%
fetching loading State maybe that's
02:01:03.000 --> 02:01:05.470 align:start position:0%
fetching loading State maybe that's
useful<02:01:04.000> now<02:01:04.320> we<02:01:04.440> can<02:01:04.560> see<02:01:04.719> that<02:01:04.880> this<02:01:04.960> is<02:01:05.159> for
02:01:05.470 --> 02:01:05.480 align:start position:0%
useful now we can see that this is for
02:01:05.480 --> 02:01:08.589 align:start position:0%
useful now we can see that this is for
Global<02:01:06.079> fetching<02:01:06.800> right<02:01:07.400> but<02:01:07.599> we<02:01:07.719> want<02:01:07.840> to<02:01:08.040> see
02:01:08.589 --> 02:01:08.599 align:start position:0%
Global fetching right but we want to see
02:01:08.599 --> 02:01:11.750 align:start position:0%
Global fetching right but we want to see
maybe<02:01:09.040> use<02:01:09.520> is<02:01:09.880> fetching<02:01:10.679> no<02:01:11.199> let's<02:01:11.360> see<02:01:11.520> if<02:01:11.639> I
02:01:11.750 --> 02:01:11.760 align:start position:0%
maybe use is fetching no let's see if I
02:01:11.760 --> 02:01:15.350 align:start position:0%
maybe use is fetching no let's see if I
can<02:01:11.960> find<02:01:12.239> anything<02:01:12.639> useful<02:01:13.639> now<02:01:14.639> no<02:01:15.079> this<02:01:15.199> is
02:01:15.350 --> 02:01:15.360 align:start position:0%
can find anything useful now no this is
02:01:15.360 --> 02:01:18.350 align:start position:0%
can find anything useful now no this is
not<02:01:15.679> that<02:01:15.840> useful<02:01:16.560> let's<02:01:16.760> see<02:01:17.119> a<02:01:17.400> quick<02:01:17.639> start
02:01:18.350 --> 02:01:18.360 align:start position:0%
not that useful let's see a quick start
02:01:18.360 --> 02:01:21.350 align:start position:0%
not that useful let's see a quick start
here<02:01:18.679> we<02:01:18.800> can<02:01:19.159> use<02:01:19.440> the<02:01:19.599> use<02:01:20.239> mutation<02:01:21.239> they
02:01:21.350 --> 02:01:21.360 align:start position:0%
here we can use the use mutation they
02:01:21.360 --> 02:01:23.390 align:start position:0%
here we can use the use mutation they
are<02:01:21.639> creating<02:01:22.360> everything<02:01:22.679> we<02:01:22.840> discussed<02:01:23.280> in
02:01:23.390 --> 02:01:23.400 align:start position:0%
are creating everything we discussed in
02:01:23.400 --> 02:01:26.470 align:start position:0%
are creating everything we discussed in
this<02:01:23.599> video<02:01:24.079> creating<02:01:24.520> a<02:01:24.679> new<02:01:24.920> query<02:01:25.480> client
02:01:26.470 --> 02:01:26.480 align:start position:0%
this video creating a new query client
02:01:26.480 --> 02:01:28.750 align:start position:0%
this video creating a new query client
using<02:01:26.840> that<02:01:27.079> query<02:01:27.400> client<02:01:27.840> and<02:01:28.000> using<02:01:28.440> one
02:01:28.750 --> 02:01:28.760 align:start position:0%
using that query client and using one
02:01:28.760 --> 02:01:32.510 align:start position:0%
using that query client and using one
mutation<02:01:29.760> exactly<02:01:30.320> as<02:01:30.520> we<02:01:30.960> are<02:01:31.960> but<02:01:32.119> in<02:01:32.320> this
02:01:32.510 --> 02:01:32.520 align:start position:0%
mutation exactly as we are but in this
02:01:32.520 --> 02:01:33.910 align:start position:0%
mutation exactly as we are but in this
case<02:01:32.800> I<02:01:32.880> don't<02:01:33.040> see<02:01:33.239> there're<02:01:33.440> using<02:01:33.760> the
02:01:33.910 --> 02:01:33.920 align:start position:0%
case I don't see there're using the
02:01:33.920 --> 02:01:36.629 align:start position:0%
case I don't see there're using the
loading<02:01:34.639> so<02:01:34.840> let's<02:01:35.119> go<02:01:35.480> a<02:01:35.639> bit<02:01:35.840> more<02:01:36.119> in<02:01:36.360> depth
02:01:36.629 --> 02:01:36.639 align:start position:0%
loading so let's go a bit more in depth
02:01:36.639 --> 02:01:39.430 align:start position:0%
loading so let's go a bit more in depth
into<02:01:36.840> the<02:01:37.320> overview<02:01:38.320> and<02:01:38.480> there<02:01:38.639> we<02:01:38.800> go<02:01:39.199> here
02:01:39.430 --> 02:01:39.440 align:start position:0%
into the overview and there we go here
02:01:39.440 --> 02:01:42.510 align:start position:0%
into the overview and there we go here
the<02:01:39.560> user<02:01:39.880> query<02:01:40.599> and<02:01:40.840> it<02:01:41.040> indeed<02:01:41.719> is<02:01:42.079> using
02:01:42.510 --> 02:01:42.520 align:start position:0%
the user query and it indeed is using
02:01:42.520 --> 02:01:44.950 align:start position:0%
the user query and it indeed is using
the<02:01:42.719> is<02:01:43.079> loading<02:01:43.480> property<02:01:44.280> but<02:01:44.480> this<02:01:44.560> is<02:01:44.719> a
02:01:44.950 --> 02:01:44.960 align:start position:0%
the is loading property but this is a
02:01:44.960 --> 02:01:47.430 align:start position:0%
the is loading property but this is a
query<02:01:45.520> and<02:01:45.760> not<02:01:46.000> a<02:01:46.199> mutation<02:01:47.040> we<02:01:47.159> have<02:01:47.280> to
02:01:47.430 --> 02:01:47.440 align:start position:0%
query and not a mutation we have to
02:01:47.440 --> 02:01:48.990 align:start position:0%
query and not a mutation we have to
differentiate<02:01:48.000> the<02:01:48.159> query<02:01:48.480> from<02:01:48.639> a<02:01:48.760> mutation
02:01:48.990 --> 02:01:49.000 align:start position:0%
differentiate the query from a mutation
02:01:49.000 --> 02:01:51.270 align:start position:0%
differentiate the query from a mutation
mutation<02:01:49.880> so<02:01:50.079> maybe<02:01:50.320> we<02:01:50.440> want<02:01:50.520> to<02:01:50.679> read<02:01:50.880> a<02:01:51.040> bit
02:01:51.270 --> 02:01:51.280 align:start position:0%
mutation so maybe we want to read a bit
02:01:51.280 --> 02:01:55.069 align:start position:0%
mutation so maybe we want to read a bit
more<02:01:51.960> about<02:01:52.280> the<02:01:52.440> mutation<02:01:53.400> so<02:01:53.560> let's<02:01:53.840> go<02:01:54.079> into
02:01:55.069 --> 02:01:55.079 align:start position:0%
more about the mutation so let's go into
02:01:55.079 --> 02:01:57.910 align:start position:0%
more about the mutation so let's go into
mutations<02:01:56.079> and<02:01:56.239> let's<02:01:56.400> see<02:01:56.560> how<02:01:56.800> that
02:01:57.910 --> 02:01:57.920 align:start position:0%
mutations and let's see how that
02:01:57.920 --> 02:02:01.350 align:start position:0%
mutations and let's see how that
works<02:01:58.920> so<02:01:59.199> we<02:01:59.320> can<02:01:59.480> use<02:01:59.679> a<02:01:59.880> mutation<02:02:00.719> and
02:02:01.350 --> 02:02:01.360 align:start position:0%
works so we can use a mutation and
02:02:01.360 --> 02:02:04.189 align:start position:0%
works so we can use a mutation and
apparently<02:02:02.360> there<02:02:02.639> is<02:02:02.920> a<02:02:03.119> mutation<02:02:03.719> that<02:02:04.000> is
02:02:04.189 --> 02:02:04.199 align:start position:0%
apparently there is a mutation that is
02:02:04.199 --> 02:02:07.990 align:start position:0%
apparently there is a mutation that is
loading<02:02:05.199> also<02:02:05.480> the<02:02:05.639> is<02:02:05.920> error<02:02:06.480> and<02:02:06.760> is
02:02:07.990 --> 02:02:08.000 align:start position:0%
loading also the is error and is
02:02:08.000 --> 02:02:11.310 align:start position:0%
loading also the is error and is
Success<02:02:09.000> so<02:02:09.199> let's<02:02:09.440> compare<02:02:09.840> the<02:02:09.960> two<02:02:10.920> con
02:02:11.310 --> 02:02:11.320 align:start position:0%
Success so let's compare the two con
02:02:11.320 --> 02:02:14.470 align:start position:0%
Success so let's compare the two con
mutation<02:02:12.199> is<02:02:12.400> equal<02:02:12.679> to<02:02:12.840> use<02:02:13.280> mutation<02:02:14.280> and
02:02:14.470 --> 02:02:14.480 align:start position:0%
mutation is equal to use mutation and
02:02:14.480 --> 02:02:16.229 align:start position:0%
mutation is equal to use mutation and
they<02:02:14.639> use<02:02:14.840> it<02:02:15.079> directly<02:02:15.639> right<02:02:15.840> here<02:02:16.040> within
02:02:16.229 --> 02:02:16.239 align:start position:0%
they use it directly right here within
02:02:16.239 --> 02:02:19.069 align:start position:0%
they use it directly right here within
the<02:02:16.440> code<02:02:17.400> oh<02:02:17.639> this<02:02:17.760> is<02:02:17.920> interesting<02:02:18.599> so
02:02:19.069 --> 02:02:19.079 align:start position:0%
the code oh this is interesting so
02:02:19.079 --> 02:02:21.430 align:start position:0%
the code oh this is interesting so
unlike<02:02:19.520> queries<02:02:20.320> mutations<02:02:20.880> are<02:02:21.119> typically
02:02:21.430 --> 02:02:21.440 align:start position:0%
unlike queries mutations are typically
02:02:21.440 --> 02:02:24.310 align:start position:0%
unlike queries mutations are typically
used<02:02:21.719> to<02:02:21.960> create<02:02:22.560> update<02:02:23.000> delete<02:02:23.480> data<02:02:24.000> or
02:02:24.310 --> 02:02:24.320 align:start position:0%
used to create update delete data or
02:02:24.320 --> 02:02:27.229 align:start position:0%
used to create update delete data or
perform<02:02:25.159> side<02:02:25.440> effects<02:02:26.320> for<02:02:26.560> this<02:02:26.760> purpose
02:02:27.229 --> 02:02:27.239 align:start position:0%
perform side effects for this purpose
02:02:27.239 --> 02:02:31.030 align:start position:0%
perform side effects for this purpose
stack<02:02:27.800> query<02:02:28.320> exports<02:02:28.840> a<02:02:29.040> used<02:02:29.360> mutation<02:02:30.040> hook
02:02:31.030 --> 02:02:31.040 align:start position:0%
stack query exports a used mutation hook
02:02:31.040 --> 02:02:32.669 align:start position:0%
stack query exports a used mutation hook
but<02:02:31.239> I<02:02:31.360> just<02:02:31.480> figured<02:02:31.800> out<02:02:32.000> I'm<02:02:32.159> reading<02:02:32.480> the
02:02:32.669 --> 02:02:32.679 align:start position:0%
but I just figured out I'm reading the
02:02:32.679 --> 02:02:35.189 align:start position:0%
but I just figured out I'm reading the
V4<02:02:33.320> docs<02:02:34.040> we<02:02:34.159> want<02:02:34.280> to<02:02:34.440> redirect<02:02:34.880> to<02:02:35.040> the
02:02:35.189 --> 02:02:35.199 align:start position:0%
V4 docs we want to redirect to the
02:02:35.199 --> 02:02:38.350 align:start position:0%
V4 docs we want to redirect to the
latest<02:02:35.800> version<02:02:36.800> oh<02:02:37.360> there<02:02:37.520> we<02:02:37.679> go<02:02:38.159> can<02:02:38.280> you
02:02:38.350 --> 02:02:38.360 align:start position:0%
latest version oh there we go can you
02:02:38.360 --> 02:02:41.350 align:start position:0%
latest version oh there we go can you
see<02:02:38.520> the<02:02:38.920> difference<02:02:39.920> mutation<02:02:40.639> that<02:02:40.960> is
02:02:41.350 --> 02:02:41.360 align:start position:0%
see the difference mutation that is
02:02:41.360 --> 02:02:45.629 align:start position:0%
see the difference mutation that is
pending<02:02:42.239> and<02:02:42.440> not<02:02:42.760> is<02:02:43.400> loading<02:02:44.400> okay<02:02:45.040> okay<02:02:45.480> I
02:02:45.629 --> 02:02:45.639 align:start position:0%
pending and not is loading okay okay I
02:02:45.639 --> 02:02:47.310 align:start position:0%
pending and not is loading okay okay I
get<02:02:45.760> it<02:02:46.360> maybe<02:02:46.599> they<02:02:46.719> wanted<02:02:46.920> to<02:02:47.079> make<02:02:47.199> a
02:02:47.310 --> 02:02:47.320 align:start position:0%
get it maybe they wanted to make a
02:02:47.320 --> 02:02:49.390 align:start position:0%
get it maybe they wanted to make a
change<02:02:47.639> from<02:02:47.800> the<02:02:47.960> query<02:02:48.440> so<02:02:48.599> in<02:02:48.679> the<02:02:48.960> query
02:02:49.390 --> 02:02:49.400 align:start position:0%
change from the query so in the query
02:02:49.400 --> 02:02:52.069 align:start position:0%
change from the query so in the query
right<02:02:49.599> here<02:02:50.440> once<02:02:50.599> we<02:02:50.760> try<02:02:50.960> to<02:02:51.119> call<02:02:51.400> it<02:02:51.920> yeah
02:02:52.069 --> 02:02:52.079 align:start position:0%
right here once we try to call it yeah
02:02:52.079 --> 02:02:54.149 align:start position:0%
right here once we try to call it yeah
they're<02:02:52.280> also<02:02:52.480> calling<02:02:52.840> it<02:02:53.000> is<02:02:53.239> pending<02:02:53.960> so
02:02:54.149 --> 02:02:54.159 align:start position:0%
they're also calling it is pending so
02:02:54.159 --> 02:02:55.709 align:start position:0%
they're also calling it is pending so
kind<02:02:54.280> of<02:02:54.480> waiting<02:02:54.840> for<02:02:55.079> something<02:02:55.480> not
02:02:55.709 --> 02:02:55.719 align:start position:0%
kind of waiting for something not
02:02:55.719 --> 02:02:59.229 align:start position:0%
kind of waiting for something not
loading<02:02:56.480> but<02:02:56.920> pending<02:02:57.520> right<02:02:58.520> okay<02:02:58.960> okay<02:02:59.159> I'm
02:02:59.229 --> 02:02:59.239 align:start position:0%
loading but pending right okay okay I'm
02:02:59.239 --> 02:03:01.390 align:start position:0%
loading but pending right okay okay I'm
going<02:02:59.360> to<02:02:59.480> give<02:02:59.599> it<02:02:59.719> to<02:02:59.920> them<02:03:00.360> but<02:03:00.840> now<02:03:01.119> if<02:03:01.239> we
02:03:01.390 --> 02:03:01.400 align:start position:0%
going to give it to them but now if we
02:03:01.400 --> 02:03:04.310 align:start position:0%
going to give it to them but now if we
go<02:03:01.599> back<02:03:01.719> to<02:03:01.840> our<02:03:02.440> application<02:03:03.440> and<02:03:03.719> go<02:03:04.000> back
02:03:04.310 --> 02:03:04.320 align:start position:0%
go back to our application and go back
02:03:04.320 --> 02:03:07.390 align:start position:0%
go back to our application and go back
here<02:03:04.960> and<02:03:05.119> simply<02:03:05.440> use<02:03:05.840> is<02:03:06.199> pending<02:03:07.119> instead
02:03:07.390 --> 02:03:07.400 align:start position:0%
here and simply use is pending instead
02:03:07.400 --> 02:03:10.430 align:start position:0%
here and simply use is pending instead
of<02:03:07.560> is<02:03:07.760> loading<02:03:08.639> you<02:03:08.760> can<02:03:08.920> see<02:03:09.480> it<02:03:09.760> actually
02:03:10.430 --> 02:03:10.440 align:start position:0%
of is loading you can see it actually
02:03:10.440 --> 02:03:13.470 align:start position:0%
of is loading you can see it actually
works<02:03:11.280> this<02:03:11.400> is<02:03:11.599> amazing<02:03:12.480> so<02:03:12.679> now<02:03:12.920> if<02:03:13.040> I<02:03:13.199> save
02:03:13.470 --> 02:03:13.480 align:start position:0%
works this is amazing so now if I save
02:03:13.480 --> 02:03:17.510 align:start position:0%
works this is amazing so now if I save
the<02:03:14.000> file<02:03:15.000> and<02:03:15.199> reload<02:03:15.599> the<02:03:16.199> page<02:03:17.199> everything
02:03:17.510 --> 02:03:17.520 align:start position:0%
the file and reload the page everything
02:03:17.520 --> 02:03:19.910 align:start position:0%
the file and reload the page everything
seems<02:03:17.960> good<02:03:18.639> but<02:03:18.960> it's<02:03:19.040> saying<02:03:19.320> is<02:03:19.560> creating
02:03:19.910 --> 02:03:19.920 align:start position:0%
seems good but it's saying is creating
02:03:19.920 --> 02:03:22.470 align:start position:0%
seems good but it's saying is creating
user<02:03:20.239> is<02:03:20.400> not<02:03:20.639> defined<02:03:21.639> I<02:03:21.719> think<02:03:21.880> we<02:03:22.000> called<02:03:22.280> it
02:03:22.470 --> 02:03:22.480 align:start position:0%
user is not defined I think we called it
02:03:22.480 --> 02:03:25.270 align:start position:0%
user is not defined I think we called it
is<02:03:22.760> creating<02:03:23.239> account<02:03:24.239> so<02:03:24.400> let's<02:03:24.599> simply<02:03:24.960> copy
02:03:25.270 --> 02:03:25.280 align:start position:0%
is creating account so let's simply copy
02:03:25.280 --> 02:03:28.069 align:start position:0%
is creating account so let's simply copy
is<02:03:25.520> creating<02:03:26.079> account<02:03:27.079> move<02:03:27.400> all<02:03:27.639> the<02:03:27.760> way
02:03:28.069 --> 02:03:28.079 align:start position:0%
is creating account move all the way
02:03:28.079 --> 02:03:31.270 align:start position:0%
is creating account move all the way
down<02:03:28.719> and<02:03:28.880> then<02:03:29.079> modify<02:03:29.560> it<02:03:30.560> and<02:03:30.760> now<02:03:31.000> we're
02:03:31.270 --> 02:03:31.280 align:start position:0%
down and then modify it and now we're
02:03:31.280 --> 02:03:33.589 align:start position:0%
down and then modify it and now we're
back<02:03:31.440> to<02:03:31.599> our<02:03:31.840> sign<02:03:32.119> in<02:03:32.440> form<02:03:33.119> which<02:03:33.239> means<02:03:33.480> we
02:03:33.589 --> 02:03:33.599 align:start position:0%
back to our sign in form which means we
02:03:33.599 --> 02:03:34.390 align:start position:0%
back to our sign in form which means we
were
02:03:34.390 --> 02:03:34.400 align:start position:0%
were
02:03:34.400 --> 02:03:37.790 align:start position:0%
were
redirected<02:03:35.400> let's<02:03:35.599> try<02:03:35.800> to<02:03:36.000> close<02:03:36.280> and<02:03:36.800> reload
02:03:37.790 --> 02:03:37.800 align:start position:0%
redirected let's try to close and reload
02:03:37.800 --> 02:03:40.229 align:start position:0%
redirected let's try to close and reload
okay<02:03:38.000> no<02:03:38.199> errors<02:03:38.679> that's<02:03:38.960> good<02:03:39.520> but<02:03:39.679> let's<02:03:39.920> go
02:03:40.229 --> 02:03:40.239 align:start position:0%
okay no errors that's good but let's go
02:03:40.239 --> 02:03:42.790 align:start position:0%
okay no errors that's good but let's go
back<02:03:40.599> to<02:03:40.800> the<02:03:41.000> sign<02:03:41.400> up<02:03:41.679> form<02:03:42.360> that's<02:03:42.559> what<02:03:42.679> we
02:03:42.790 --> 02:03:42.800 align:start position:0%
back to the sign up form that's what we
02:03:42.800 --> 02:03:44.750 align:start position:0%
back to the sign up form that's what we
were<02:03:42.960> working<02:03:43.239> on<02:03:43.520> this<02:03:43.719> entire
02:03:44.750 --> 02:03:44.760 align:start position:0%
were working on this entire
02:03:44.760 --> 02:03:47.270 align:start position:0%
were working on this entire
time<02:03:45.760> okay<02:03:45.960> this<02:03:46.079> is<02:03:46.239> interesting<02:03:46.719> so<02:03:47.040> every
02:03:47.270 --> 02:03:47.280 align:start position:0%
time okay this is interesting so every
02:03:47.280 --> 02:03:49.750 align:start position:0%
time okay this is interesting so every
time<02:03:47.559> we<02:03:47.760> go<02:03:48.040> back<02:03:48.199> to<02:03:48.400> sign<02:03:48.639> up<02:03:49.000> it<02:03:49.199> redirects
02:03:49.750 --> 02:03:49.760 align:start position:0%
time we go back to sign up it redirects
02:03:49.760 --> 02:03:51.830 align:start position:0%
time we go back to sign up it redirects
us<02:03:50.040> back<02:03:50.239> to<02:03:50.480> sign
02:03:51.830 --> 02:03:51.840 align:start position:0%
us back to sign
02:03:51.840 --> 02:03:54.350 align:start position:0%
us back to sign
in<02:03:52.840> I'm<02:03:53.000> guessing<02:03:53.360> that's<02:03:53.599> because<02:03:53.840> it<02:03:54.040> thinks
02:03:54.350 --> 02:03:54.360 align:start position:0%
in I'm guessing that's because it thinks
02:03:54.360 --> 02:03:56.950 align:start position:0%
in I'm guessing that's because it thinks
we<02:03:54.480> have<02:03:54.679> already<02:03:55.079> created<02:03:55.400> a<02:03:55.559> user<02:03:56.520> so<02:03:56.840> what
02:03:56.950 --> 02:03:56.960 align:start position:0%
we have already created a user so what
02:03:56.960 --> 02:04:00.149 align:start position:0%
we have already created a user so what
we<02:03:57.079> can<02:03:57.239> do<02:03:57.760> is<02:03:58.000> just<02:03:58.239> go<02:03:58.520> back<02:03:58.840> here<02:03:59.639> go<02:03:59.800> to<02:04:00.000> the
02:04:00.149 --> 02:04:00.159 align:start position:0%
we can do is just go back here go to the
02:04:00.159 --> 02:04:03.149 align:start position:0%
we can do is just go back here go to the
application<02:04:00.840> Tab<02:04:01.639> and<02:04:01.800> check<02:04:02.119> our<02:04:02.440> local
02:04:03.149 --> 02:04:03.159 align:start position:0%
application Tab and check our local
02:04:03.159 --> 02:04:06.229 align:start position:0%
application Tab and check our local
storage<02:04:04.159> it<02:04:04.280> seems<02:04:04.520> to<02:04:04.639> be<02:04:04.880> empty<02:04:05.679> as<02:04:05.840> well<02:04:06.079> as
02:04:06.229 --> 02:04:06.239 align:start position:0%
storage it seems to be empty as well as
02:04:06.239 --> 02:04:09.109 align:start position:0%
storage it seems to be empty as well as
the<02:04:06.360> session<02:04:06.840> storage<02:04:07.840> so<02:04:08.040> the<02:04:08.239> question<02:04:08.599> is
02:04:09.109 --> 02:04:09.119 align:start position:0%
the session storage so the question is
02:04:09.119 --> 02:04:10.790 align:start position:0%
the session storage so the question is
why<02:04:09.320> are<02:04:09.480> we<02:04:09.639> getting
02:04:10.790 --> 02:04:10.800 align:start position:0%
why are we getting
02:04:10.800 --> 02:04:13.069 align:start position:0%
why are we getting
redirected<02:04:11.800> the<02:04:11.920> only<02:04:12.320> place<02:04:12.599> where<02:04:12.920> this
02:04:13.069 --> 02:04:13.079 align:start position:0%
redirected the only place where this
02:04:13.079 --> 02:04:16.189 align:start position:0%
redirected the only place where this
could<02:04:13.320> occur<02:04:14.119> is<02:04:14.360> the<02:04:14.599> place<02:04:15.320> that<02:04:15.639> happens<02:04:16.079> as
02:04:16.189 --> 02:04:16.199 align:start position:0%
could occur is the place that happens as
02:04:16.199 --> 02:04:18.430 align:start position:0%
could occur is the place that happens as
soon<02:04:16.360> as<02:04:16.520> we<02:04:16.639> load<02:04:16.920> the<02:04:17.159> page<02:04:17.960> do<02:04:18.119> you<02:04:18.239> know
02:04:18.430 --> 02:04:18.440 align:start position:0%
soon as we load the page do you know
02:04:18.440 --> 02:04:21.270 align:start position:0%
soon as we load the page do you know
such<02:04:18.920> place<02:04:19.920> I<02:04:20.119> think<02:04:20.599> that's<02:04:20.800> going<02:04:20.960> to<02:04:21.119> be
02:04:21.270 --> 02:04:21.280 align:start position:0%
such place I think that's going to be
02:04:21.280 --> 02:04:24.430 align:start position:0%
such place I think that's going to be
our<02:04:21.559> odd<02:04:22.280> context<02:04:23.280> here<02:04:23.679> we<02:04:23.840> have<02:04:23.960> a<02:04:24.119> use
02:04:24.430 --> 02:04:24.440 align:start position:0%
our odd context here we have a use
02:04:24.440 --> 02:04:27.870 align:start position:0%
our odd context here we have a use
effect<02:04:25.199> and<02:04:25.520> here<02:04:25.960> we<02:04:26.119> navigate<02:04:26.800> to<02:04:27.000> sign
02:04:27.870 --> 02:04:27.880 align:start position:0%
effect and here we navigate to sign
02:04:27.880 --> 02:04:31.069 align:start position:0%
effect and here we navigate to sign
in<02:04:28.880> so<02:04:29.239> right<02:04:29.400> in<02:04:29.639> here<02:04:30.040> for<02:04:30.360> now<02:04:30.719> we're<02:04:30.920> going
02:04:31.069 --> 02:04:31.079 align:start position:0%
in so right in here for now we're going
02:04:31.079 --> 02:04:33.589 align:start position:0%
in so right in here for now we're going
to<02:04:31.320> comment<02:04:31.760> out<02:04:32.239> this<02:04:32.440> second<02:04:32.800> line<02:04:33.360> and<02:04:33.520> we
02:04:33.589 --> 02:04:33.599 align:start position:0%
to comment out this second line and we
02:04:33.599 --> 02:04:36.870 align:start position:0%
to comment out this second line and we
can<02:04:33.800> put<02:04:33.920> it<02:04:34.239> right<02:04:34.400> here<02:04:34.639> above<02:04:35.520> and<02:04:35.920> save<02:04:36.199> it
02:04:36.870 --> 02:04:36.880 align:start position:0%
can put it right here above and save it
02:04:36.880 --> 02:04:40.270 align:start position:0%
can put it right here above and save it
and<02:04:37.119> remove<02:04:37.599> this<02:04:37.840> or<02:04:38.280> sign<02:04:39.199> if<02:04:39.320> we<02:04:39.480> do<02:04:39.760> this
02:04:40.270 --> 02:04:40.280 align:start position:0%
and remove this or sign if we do this
02:04:40.280 --> 02:04:44.229 align:start position:0%
and remove this or sign if we do this
and<02:04:40.559> now<02:04:40.920> if<02:04:41.040> we<02:04:41.199> go<02:04:41.400> to<02:04:41.719> sign<02:04:42.639> up<02:04:43.639> you<02:04:43.760> can<02:04:43.920> see
02:04:44.229 --> 02:04:44.239 align:start position:0%
and now if we go to sign up you can see
02:04:44.239 --> 02:04:46.390 align:start position:0%
and now if we go to sign up you can see
it's<02:04:44.440> no<02:04:44.599> longer<02:04:44.920> going<02:04:45.079> to<02:04:45.280> redirect<02:04:45.920> us
02:04:46.390 --> 02:04:46.400 align:start position:0%
it's no longer going to redirect us
02:04:46.400 --> 02:04:49.390 align:start position:0%
it's no longer going to redirect us
everything<02:04:46.800> is<02:04:47.159> working<02:04:48.159> and<02:04:48.320> there<02:04:48.440> we<02:04:48.599> go<02:04:48.880> go
02:04:49.390 --> 02:04:49.400 align:start position:0%
everything is working and there we go go
02:04:49.400 --> 02:04:52.310 align:start position:0%
everything is working and there we go go
we<02:04:49.520> can<02:04:49.840> finally<02:04:50.280> see<02:04:51.000> our<02:04:51.280> signup<02:04:51.760> screen
02:04:52.310 --> 02:04:52.320 align:start position:0%
we can finally see our signup screen
02:04:52.320 --> 02:04:54.470 align:start position:0%
we can finally see our signup screen
we've<02:04:52.520> been<02:04:52.719> working<02:04:53.079> on<02:04:53.480> for<02:04:53.760> such<02:04:53.960> a<02:04:54.119> long
02:04:54.470 --> 02:04:54.480 align:start position:0%
we've been working on for such a long
02:04:54.480 --> 02:04:56.790 align:start position:0%
we've been working on for such a long
time<02:04:55.199> but<02:04:55.360> if<02:04:55.480> you<02:04:55.679> think<02:04:55.920> about<02:04:56.159> it<02:04:56.520> we
02:04:56.790 --> 02:04:56.800 align:start position:0%
time but if you think about it we
02:04:56.800 --> 02:04:58.430 align:start position:0%
time but if you think about it we
weren't<02:04:57.159> working<02:04:57.480> on<02:04:57.639> just<02:04:57.800> the<02:04:57.960> signup
02:04:58.430 --> 02:04:58.440 align:start position:0%
weren't working on just the signup
02:04:58.440 --> 02:05:00.870 align:start position:0%
weren't working on just the signup
screen<02:04:59.040> we<02:04:59.159> were<02:04:59.400> working<02:04:59.800> on<02:05:00.320> everything
02:05:00.870 --> 02:05:00.880 align:start position:0%
screen we were working on everything
02:05:00.880 --> 02:05:03.870 align:start position:0%
screen we were working on everything
else<02:05:01.400> we'll<02:05:01.679> need<02:05:02.000> for<02:05:02.320> the<02:05:02.599> entirety<02:05:03.440> of<02:05:03.599> our
02:05:03.870 --> 02:05:03.880 align:start position:0%
else we'll need for the entirety of our
02:05:03.880 --> 02:05:06.510 align:start position:0%
else we'll need for the entirety of our
application<02:05:04.880> so<02:05:05.159> now<02:05:05.599> if<02:05:05.719> we<02:05:05.880> go<02:05:06.079> back<02:05:06.239> to<02:05:06.360> our
02:05:06.510 --> 02:05:06.520 align:start position:0%
application so now if we go back to our
02:05:06.520 --> 02:05:10.430 align:start position:0%
application so now if we go back to our
signup<02:05:06.880> form<02:05:07.639> we<02:05:07.840> know<02:05:08.320> what<02:05:08.480> needs<02:05:08.760> to<02:05:09.440> happen
02:05:10.430 --> 02:05:10.440 align:start position:0%
signup form we know what needs to happen
02:05:10.440 --> 02:05:12.470 align:start position:0%
signup form we know what needs to happen
after<02:05:10.679> we<02:05:10.840> successfully<02:05:11.440> create<02:05:11.719> an<02:05:11.920> account
02:05:12.470 --> 02:05:12.480 align:start position:0%
after we successfully create an account
02:05:12.480 --> 02:05:14.549 align:start position:0%
after we successfully create an account
we're<02:05:12.719> going<02:05:12.800> to<02:05:12.920> create<02:05:13.159> a<02:05:13.320> session<02:05:14.199> add<02:05:14.400> that
02:05:14.549 --> 02:05:14.559 align:start position:0%
we're going to create a session add that
02:05:14.559 --> 02:05:17.629 align:start position:0%
we're going to create a session add that
to<02:05:14.679> the<02:05:14.760> user<02:05:15.199> context<02:05:16.199> and<02:05:16.400> then<02:05:16.840> navigate<02:05:17.440> to
02:05:17.629 --> 02:05:17.639 align:start position:0%
to the user context and then navigate to
02:05:17.639 --> 02:05:21.350 align:start position:0%
to the user context and then navigate to
the<02:05:17.800> homepage<02:05:18.760> so<02:05:18.920> let's<02:05:19.119> see<02:05:19.639> if<02:05:19.880> that<02:05:20.360> works
02:05:21.350 --> 02:05:21.360 align:start position:0%
the homepage so let's see if that works
02:05:21.360 --> 02:05:25.470 align:start position:0%
the homepage so let's see if that works
let's<02:05:21.639> try<02:05:22.119> with<02:05:22.520> something<02:05:23.040> like<02:05:23.760> the<02:05:24.199> real
02:05:25.470 --> 02:05:25.480 align:start position:0%
let's try with something like the real
02:05:25.480 --> 02:05:28.270 align:start position:0%
let's try with something like the real
JSM<02:05:26.480> we<02:05:26.599> can<02:05:26.840> also<02:05:27.040> do<02:05:27.239> that<02:05:27.520> right<02:05:27.719> here<02:05:28.079> the
02:05:28.270 --> 02:05:28.280 align:start position:0%
JSM we can also do that right here the
02:05:28.280 --> 02:05:31.669 align:start position:0%
JSM we can also do that right here the
real<02:05:28.800> JSM<02:05:29.800> the<02:05:30.000> email<02:05:30.400> can<02:05:30.559> be<02:05:30.840> something<02:05:31.320> like
02:05:31.669 --> 02:05:31.679 align:start position:0%
real JSM the email can be something like
02:05:31.679 --> 02:05:35.589 align:start position:0%
real JSM the email can be something like
let's<02:05:31.880> do<02:05:32.320> Adrien<02:05:33.320> JSM<02:05:33.800> mastery.<02:05:34.559> proo<02:05:35.239> and<02:05:35.480> we
02:05:35.589 --> 02:05:35.599 align:start position:0%
let's do Adrien JSM mastery. proo and we
02:05:35.599 --> 02:05:38.270 align:start position:0%
let's do Adrien JSM mastery. proo and we
can<02:05:35.760> choose<02:05:36.199> a<02:05:36.440> specific<02:05:36.960> password<02:05:37.599> and<02:05:37.840> click
02:05:38.270 --> 02:05:38.280 align:start position:0%
can choose a specific password and click
02:05:38.280 --> 02:05:42.149 align:start position:0%
can choose a specific password and click
sign<02:05:38.800> up<02:05:39.800> it<02:05:39.920> says<02:05:40.639> loading<02:05:41.639> and<02:05:42.000> it
02:05:42.149 --> 02:05:42.159 align:start position:0%
sign up it says loading and it
02:05:42.159 --> 02:05:45.149 align:start position:0%
sign up it says loading and it
disappeared<02:05:43.119> or<02:05:43.440> no<02:05:43.679> it<02:05:43.800> didn't<02:05:44.440> it<02:05:44.719> actually
02:05:45.149 --> 02:05:45.159 align:start position:0%
disappeared or no it didn't it actually
02:05:45.159 --> 02:05:47.310 align:start position:0%
disappeared or no it didn't it actually
redirected<02:05:45.800> us<02:05:45.960> to<02:05:46.119> the<02:05:46.280> homepage<02:05:47.079> which
02:05:47.310 --> 02:05:47.320 align:start position:0%
redirected us to the homepage which
02:05:47.320 --> 02:05:49.549 align:start position:0%
redirected us to the homepage which
right<02:05:47.520> now<02:05:47.840> is<02:05:48.040> completely<02:05:48.440> empty<02:05:48.679> empty<02:05:49.320> and
02:05:49.549 --> 02:05:49.559 align:start position:0%
right now is completely empty empty and
02:05:49.559 --> 02:05:52.109 align:start position:0%
right now is completely empty empty and
has<02:05:49.719> the<02:05:49.880> root<02:05:50.199> layout<02:05:51.159> after<02:05:51.440> all<02:05:51.679> this<02:05:51.880> hard
02:05:52.109 --> 02:05:52.119 align:start position:0%
has the root layout after all this hard
02:05:52.119 --> 02:05:53.709 align:start position:0%
has the root layout after all this hard
work<02:05:52.440> we<02:05:52.559> should<02:05:52.760> have<02:05:52.920> implemented<02:05:53.520> that
02:05:53.709 --> 02:05:53.719 align:start position:0%
work we should have implemented that
02:05:53.719 --> 02:05:56.470 align:start position:0%
work we should have implemented that
confetti<02:05:54.199> screen<02:05:54.559> to<02:05:54.760> also<02:05:55.159> pop<02:05:55.400> up<02:05:55.880> as<02:05:56.320> this
02:05:56.470 --> 02:05:56.480 align:start position:0%
confetti screen to also pop up as this
02:05:56.480 --> 02:05:59.069 align:start position:0%
confetti screen to also pop up as this
was<02:05:56.800> stuff<02:05:57.320> what<02:05:57.480> we've<02:05:57.679> gotten<02:05:58.040> here<02:05:58.880> if
02:05:59.069 --> 02:05:59.079 align:start position:0%
was stuff what we've gotten here if
02:05:59.079 --> 02:06:01.390 align:start position:0%
was stuff what we've gotten here if
something<02:05:59.440> didn't<02:05:59.760> work<02:05:59.960> for<02:06:00.199> you<02:06:00.880> definitely
02:06:01.390 --> 02:06:01.400 align:start position:0%
something didn't work for you definitely
02:06:01.400 --> 02:06:03.390 align:start position:0%
something didn't work for you definitely
make<02:06:01.559> sure<02:06:01.719> to<02:06:01.880> refer<02:06:02.199> to<02:06:02.360> the<02:06:02.480> codebase
02:06:03.390 --> 02:06:03.400 align:start position:0%
make sure to refer to the codebase
02:06:03.400 --> 02:06:05.629 align:start position:0%
make sure to refer to the codebase
what's<02:06:03.679> also<02:06:04.079> possible<02:06:04.880> is<02:06:05.119> that<02:06:05.360> while<02:06:05.559> you
02:06:05.629 --> 02:06:05.639 align:start position:0%
what's also possible is that while you
02:06:05.639 --> 02:06:08.069 align:start position:0%
what's also possible is that while you
were<02:06:05.800> trying<02:06:06.040> to<02:06:06.199> log<02:06:06.480> in<02:06:07.159> maybe<02:06:07.440> you<02:06:07.599> use<02:06:07.920> the
02:06:08.069 --> 02:06:08.079 align:start position:0%
were trying to log in maybe you use the
02:06:08.079 --> 02:06:10.549 align:start position:0%
were trying to log in maybe you use the
same<02:06:08.360> email<02:06:08.800> before<02:06:09.360> so<02:06:09.559> your<02:06:09.760> user<02:06:10.159> already
02:06:10.549 --> 02:06:10.559 align:start position:0%
same email before so your user already
02:06:10.559 --> 02:06:13.990 align:start position:0%
same email before so your user already
got<02:06:11.040> created<02:06:12.040> if<02:06:12.239> that's<02:06:12.440> the<02:06:12.639> case<02:06:13.440> try<02:06:13.840> a
02:06:13.990 --> 02:06:14.000 align:start position:0%
got created if that's the case try a
02:06:14.000 --> 02:06:16.390 align:start position:0%
got created if that's the case try a
couple<02:06:14.239> of<02:06:14.400> different<02:06:14.719> emails<02:06:15.199> and<02:06:15.400> usernames
02:06:16.390 --> 02:06:16.400 align:start position:0%
couple of different emails and usernames
02:06:16.400 --> 02:06:19.310 align:start position:0%
couple of different emails and usernames
and<02:06:16.679> ensure<02:06:17.079> that<02:06:17.280> isn't<02:06:17.559> the<02:06:17.719> case<02:06:18.760> but<02:06:19.079> now
02:06:19.310 --> 02:06:19.320 align:start position:0%
and ensure that isn't the case but now
02:06:19.320 --> 02:06:20.870 align:start position:0%
and ensure that isn't the case but now
that<02:06:19.440> we<02:06:19.599> have<02:06:19.800> successfully<02:06:20.360> created<02:06:20.719> our
02:06:20.870 --> 02:06:20.880 align:start position:0%
that we have successfully created our
02:06:20.880 --> 02:06:23.430 align:start position:0%
that we have successfully created our
user<02:06:21.559> you<02:06:21.679> can<02:06:21.840> see<02:06:22.199> that<02:06:22.520> we<02:06:22.719> have<02:06:22.880> it<02:06:23.239> right
02:06:23.430 --> 02:06:23.440 align:start position:0%
user you can see that we have it right
02:06:23.440 --> 02:06:26.950 align:start position:0%
user you can see that we have it right
here<02:06:23.880> under<02:06:24.280> a<02:06:24.480> user<02:06:25.119> collection<02:06:26.119> no<02:06:26.360> longer
02:06:26.950 --> 02:06:26.960 align:start position:0%
here under a user collection no longer
02:06:26.960 --> 02:06:29.669 align:start position:0%
here under a user collection no longer
is<02:06:27.079> it<02:06:27.320> just<02:06:27.520> under<02:06:27.840> o<02:06:28.480> but<02:06:28.719> also<02:06:29.040> under
02:06:29.669 --> 02:06:29.679 align:start position:0%
is it just under o but also under
02:06:29.679 --> 02:06:33.149 align:start position:0%
is it just under o but also under
databases<02:06:30.679> users<02:06:31.520> and<02:06:31.679> we<02:06:31.840> have<02:06:32.000> the<02:06:32.159> real<02:06:32.480> JSM
02:06:33.149 --> 02:06:33.159 align:start position:0%
databases users and we have the real JSM
02:06:33.159 --> 02:06:36.629 align:start position:0%
databases users and we have the real JSM
with<02:06:33.320> the<02:06:33.440> username<02:06:34.239> account<02:06:34.559> ID<02:06:35.320> email<02:06:36.280> and
02:06:36.629 --> 02:06:36.639 align:start position:0%
with the username account ID email and
02:06:36.639 --> 02:06:39.270 align:start position:0%
with the username account ID email and
everything<02:06:37.040> else<02:06:37.719> so<02:06:37.960> this<02:06:38.079> is
02:06:39.270 --> 02:06:39.280 align:start position:0%
everything else so this is
02:06:39.280 --> 02:06:42.229 align:start position:0%
everything else so this is
great<02:06:40.280> this<02:06:40.440> means<02:06:40.840> that<02:06:41.000> we<02:06:41.119> have<02:06:41.360> just<02:06:41.639> added
02:06:42.229 --> 02:06:42.239 align:start position:0%
great this means that we have just added
02:06:42.239 --> 02:06:45.270 align:start position:0%
great this means that we have just added
a<02:06:42.639> document<02:06:43.159> in<02:06:43.239> our<02:06:43.559> database<02:06:44.559> and<02:06:44.800> also<02:06:45.159> that
02:06:45.270 --> 02:06:45.280 align:start position:0%
a document in our database and also that
02:06:45.280 --> 02:06:47.589 align:start position:0%
a document in our database and also that
we<02:06:45.400> have<02:06:45.599> logged<02:06:45.920> in<02:06:46.040> our<02:06:46.239> user<02:06:46.840> so<02:06:47.079> now<02:06:47.320> if<02:06:47.400> we
02:06:47.589 --> 02:06:47.599 align:start position:0%
we have logged in our user so now if we
02:06:47.599 --> 02:06:49.990 align:start position:0%
we have logged in our user so now if we
go<02:06:47.840> back<02:06:48.119> and<02:06:48.280> reload<02:06:48.840> the<02:06:49.000> page<02:06:49.639> you<02:06:49.800> can
02:06:49.990 --> 02:06:50.000 align:start position:0%
go back and reload the page you can
02:06:50.000 --> 02:06:52.229 align:start position:0%
go back and reload the page you can
notice<02:06:50.400> that<02:06:50.559> we<02:06:50.760> stay<02:06:51.119> here<02:06:51.840> because<02:06:52.079> it
02:06:52.229 --> 02:06:52.239 align:start position:0%
notice that we stay here because it
02:06:52.239 --> 02:06:54.870 align:start position:0%
notice that we stay here because it
knows<02:06:52.520> that<02:06:52.679> the<02:06:52.800> user<02:06:53.119> is<02:06:53.280> already<02:06:53.599> logged<02:06:53.960> in
02:06:54.870 --> 02:06:54.880 align:start position:0%
knows that the user is already logged in
02:06:54.880 --> 02:06:57.270 align:start position:0%
knows that the user is already logged in
but<02:06:55.079> of<02:06:55.239> course<02:06:55.520> to<02:06:55.719> completely<02:06:56.239> finalize<02:06:56.960> our
02:06:57.270 --> 02:06:57.280 align:start position:0%
but of course to completely finalize our
02:06:57.280 --> 02:07:00.189 align:start position:0%
but of course to completely finalize our
o<02:06:58.000> we<02:06:58.119> need<02:06:58.239> to<02:06:58.440> implement<02:06:58.840> the<02:06:59.040> login<02:06:59.559> screen
02:07:00.189 --> 02:07:00.199 align:start position:0%
o we need to implement the login screen
02:07:00.199 --> 02:07:03.669 align:start position:0%
o we need to implement the login screen
as<02:07:00.400> well<02:07:01.159> so<02:07:01.400> what<02:07:01.559> we<02:07:01.679> can<02:07:01.840> do<02:07:02.440> is<02:07:02.800> right<02:07:03.079> click
02:07:03.669 --> 02:07:03.679 align:start position:0%
as well so what we can do is right click
02:07:03.679 --> 02:07:07.109 align:start position:0%
as well so what we can do is right click
go<02:07:03.880> to<02:07:04.280> inspect<02:07:05.280> go<02:07:05.480> to<02:07:05.639> the<02:07:05.840> application<02:07:06.520> tab
02:07:07.109 --> 02:07:07.119 align:start position:0%
go to inspect go to the application tab
02:07:07.119 --> 02:07:10.350 align:start position:0%
go to inspect go to the application tab
right<02:07:07.400> here<02:07:08.280> and<02:07:08.480> then<02:07:08.960> under<02:07:09.320> local<02:07:09.639> storage
02:07:10.350 --> 02:07:10.360 align:start position:0%
right here and then under local storage
02:07:10.360 --> 02:07:13.149 align:start position:0%
right here and then under local storage
you'll<02:07:10.559> be<02:07:10.719> able<02:07:10.880> to<02:07:11.000> see<02:07:11.280> a<02:07:11.480> cookie<02:07:12.159> fullback
02:07:13.149 --> 02:07:13.159 align:start position:0%
you'll be able to see a cookie fullback
02:07:13.159 --> 02:07:15.790 align:start position:0%
you'll be able to see a cookie fullback
this<02:07:13.320> was<02:07:13.559> added<02:07:13.920> by<02:07:14.280> ight<02:07:15.280> what<02:07:15.400> you<02:07:15.520> need<02:07:15.639> to
02:07:15.790 --> 02:07:15.800 align:start position:0%
this was added by ight what you need to
02:07:15.800 --> 02:07:18.229 align:start position:0%
this was added by ight what you need to
do<02:07:16.360> is<02:07:16.599> just<02:07:16.840> clear<02:07:17.199> it<02:07:17.679> this<02:07:17.800> is<02:07:17.960> going<02:07:18.119> to
02:07:18.229 --> 02:07:18.239 align:start position:0%
do is just clear it this is going to
02:07:18.239 --> 02:07:20.870 align:start position:0%
do is just clear it this is going to
clear<02:07:18.599> here<02:07:18.760> our<02:07:19.000> existing<02:07:19.480> session<02:07:20.360> and<02:07:20.559> then
02:07:20.870 --> 02:07:20.880 align:start position:0%
clear here our existing session and then
02:07:20.880 --> 02:07:23.589 align:start position:0%
clear here our existing session and then
we<02:07:21.000> can<02:07:21.199> go<02:07:21.480> back<02:07:21.760> right<02:07:21.960> here<02:07:22.280> to<02:07:22.520> OD
02:07:23.589 --> 02:07:23.599 align:start position:0%
we can go back right here to OD
02:07:23.599 --> 02:07:26.030 align:start position:0%
we can go back right here to OD
context<02:07:24.599> and<02:07:24.760> we<02:07:24.880> can<02:07:25.079> check<02:07:25.520> if<02:07:25.719> local
02:07:26.030 --> 02:07:26.040 align:start position:0%
context and we can check if local
02:07:26.040 --> 02:07:28.830 align:start position:0%
context and we can check if local
storage<02:07:26.559> that<02:07:26.760> get<02:07:27.040> item<02:07:27.559> cookie<02:07:27.880> fback<02:07:28.599> is
02:07:28.830 --> 02:07:28.840 align:start position:0%
storage that get item cookie fback is
02:07:28.840 --> 02:07:31.910 align:start position:0%
storage that get item cookie fback is
null<02:07:29.679> in<02:07:29.880> that<02:07:30.079> case<02:07:30.360> want<02:07:30.480> to<02:07:30.679> redirect<02:07:31.360> back
02:07:31.910 --> 02:07:31.920 align:start position:0%
null in that case want to redirect back
02:07:31.920 --> 02:07:35.109 align:start position:0%
null in that case want to redirect back
to<02:07:32.239> the<02:07:32.480> sign<02:07:32.800> in<02:07:33.079> screen<02:07:33.840> so<02:07:34.079> now<02:07:34.360> if<02:07:34.599> we<02:07:34.760> save
02:07:35.109 --> 02:07:35.119 align:start position:0%
to the sign in screen so now if we save
02:07:35.119 --> 02:07:37.870 align:start position:0%
to the sign in screen so now if we save
this<02:07:35.960> you<02:07:36.079> can<02:07:36.199> see<02:07:36.440> we're<02:07:36.760> redirected<02:07:37.520> to<02:07:37.719> the
02:07:37.870 --> 02:07:37.880 align:start position:0%
this you can see we're redirected to the
02:07:37.880 --> 02:07:40.750 align:start position:0%
this you can see we're redirected to the
signin<02:07:38.400> form<02:07:39.320> so<02:07:39.559> now<02:07:40.159> let's<02:07:40.360> try<02:07:40.559> to
02:07:40.750 --> 02:07:40.760 align:start position:0%
signin form so now let's try to
02:07:40.760 --> 02:07:44.430 align:start position:0%
signin form so now let's try to
implement<02:07:41.360> the<02:07:41.559> sign<02:07:42.239> in<02:07:43.239> trust<02:07:43.559> me<02:07:43.840> to<02:07:44.000> do<02:07:44.159> it
02:07:44.430 --> 02:07:44.440 align:start position:0%
implement the sign in trust me to do it
02:07:44.440 --> 02:07:46.870 align:start position:0%
implement the sign in trust me to do it
it<02:07:44.520> won't<02:07:44.800> be<02:07:45.079> as<02:07:45.520> difficult<02:07:45.960> as<02:07:46.119> implementing
02:07:46.870 --> 02:07:46.880 align:start position:0%
it won't be as difficult as implementing
02:07:46.880 --> 02:07:50.709 align:start position:0%
it won't be as difficult as implementing
the<02:07:47.079> sign<02:07:47.360> up<02:07:48.159> what<02:07:48.320> we<02:07:48.599> can<02:07:48.760> do<02:07:49.320> is<02:07:49.800> copy
02:07:50.709 --> 02:07:50.719 align:start position:0%
the sign up what we can do is copy
02:07:50.719 --> 02:07:54.270 align:start position:0%
the sign up what we can do is copy
literally<02:07:51.360> the<02:07:51.719> entire<02:07:52.480> sign<02:07:52.880> up<02:07:53.280> form
02:07:54.270 --> 02:07:54.280 align:start position:0%
literally the entire sign up form
02:07:54.280 --> 02:07:58.229 align:start position:0%
literally the entire sign up form
exactly<02:07:54.960> as<02:07:55.079> it<02:07:55.280> is<02:07:56.280> and<02:07:56.599> then<02:07:57.079> go<02:07:57.280> to<02:07:57.520> sign<02:07:57.920> in
02:07:58.229 --> 02:07:58.239 align:start position:0%
exactly as it is and then go to sign in
02:07:58.239 --> 02:08:02.069 align:start position:0%
exactly as it is and then go to sign in
form<02:07:59.119> and<02:07:59.559> paste<02:07:59.920> it<02:08:00.360> right<02:08:00.719> here<02:08:01.719> first<02:08:01.920> of
02:08:02.069 --> 02:08:02.079 align:start position:0%
form and paste it right here first of
02:08:02.079 --> 02:08:05.030 align:start position:0%
form and paste it right here first of
all<02:08:02.559> rename<02:08:03.000> it<02:08:03.199> from<02:08:03.480> sign<02:08:04.079> up<02:08:04.400> form<02:08:04.920> right
02:08:05.030 --> 02:08:05.040 align:start position:0%
all rename it from sign up form right
02:08:05.040 --> 02:08:08.270 align:start position:0%
all rename it from sign up form right
here<02:08:05.159> at<02:08:05.280> the<02:08:05.440> bottom<02:08:06.119> to<02:08:06.360> sign<02:08:06.719> in<02:08:07.079> form<02:08:08.000> also
02:08:08.270 --> 02:08:08.280 align:start position:0%
here at the bottom to sign in form also
02:08:08.280 --> 02:08:12.149 align:start position:0%
here at the bottom to sign in form also
rename<02:08:08.639> it<02:08:09.280> right<02:08:09.719> here<02:08:10.000> at<02:08:10.159> the<02:08:10.679> top<02:08:11.679> and<02:08:11.880> now
02:08:12.149 --> 02:08:12.159 align:start position:0%
rename it right here at the top and now
02:08:12.159 --> 02:08:14.109 align:start position:0%
rename it right here at the top and now
there<02:08:12.280> are<02:08:12.520> couple<02:08:12.760> of<02:08:12.920> modifications<02:08:13.880> we'll
02:08:14.109 --> 02:08:14.119 align:start position:0%
there are couple of modifications we'll
02:08:14.119 --> 02:08:16.870 align:start position:0%
there are couple of modifications we'll
have<02:08:14.239> to<02:08:14.559> make<02:08:15.559> let's<02:08:15.760> start<02:08:16.040> from<02:08:16.199> the<02:08:16.400> top<02:08:16.719> to
02:08:16.870 --> 02:08:16.880 align:start position:0%
have to make let's start from the top to
02:08:16.880 --> 02:08:19.109 align:start position:0%
have to make let's start from the top to
the<02:08:17.040> bottom<02:08:17.800> we'll<02:08:18.000> be<02:08:18.119> using<02:08:18.520> the<02:08:18.599> use<02:08:18.800> user
02:08:19.109 --> 02:08:19.119 align:start position:0%
the bottom we'll be using the use user
02:08:19.119 --> 02:08:21.629 align:start position:0%
the bottom we'll be using the use user
context<02:08:19.760> that's<02:08:20.119> okay<02:08:20.880> and<02:08:21.040> we'll<02:08:21.239> use<02:08:21.480> the
02:08:21.629 --> 02:08:21.639 align:start position:0%
context that's okay and we'll use the
02:08:21.639 --> 02:08:24.030 align:start position:0%
context that's okay and we'll use the
use<02:08:21.920> signin<02:08:22.719> in<02:08:22.920> this<02:08:23.079> case<02:08:23.280> we<02:08:23.440> don't<02:08:23.719> need
02:08:24.030 --> 02:08:24.040 align:start position:0%
use signin in this case we don't need
02:08:24.040 --> 02:08:27.109 align:start position:0%
use signin in this case we don't need
the<02:08:24.159> use<02:08:24.520> create<02:08:25.000> account<02:08:25.960> the<02:08:26.119> form<02:08:26.679> is<02:08:26.880> only
02:08:27.109 --> 02:08:27.119 align:start position:0%
the use create account the form is only
02:08:27.119 --> 02:08:28.750 align:start position:0%
the use create account the form is only
going<02:08:27.320> to<02:08:27.559> accept<02:08:27.880> the<02:08:28.079> email<02:08:28.400> and<02:08:28.520> the
02:08:28.750 --> 02:08:28.760 align:start position:0%
going to accept the email and the
02:08:28.760 --> 02:08:30.750 align:start position:0%
going to accept the email and the
password<02:08:29.440> not<02:08:29.639> the<02:08:29.800> name<02:08:30.000> and<02:08:30.159> the<02:08:30.280> username
02:08:30.750 --> 02:08:30.760 align:start position:0%
password not the name and the username
02:08:30.760 --> 02:08:33.549 align:start position:0%
password not the name and the username
as<02:08:30.960> well<02:08:31.960> and<02:08:32.239> we<02:08:32.400> have<02:08:32.520> to<02:08:32.679> change<02:08:33.079> this<02:08:33.280> to
02:08:33.549 --> 02:08:33.559 align:start position:0%
as well and we have to change this to
02:08:33.559 --> 02:08:36.990 align:start position:0%
as well and we have to change this to
sign<02:08:33.960> in<02:08:34.639> validation<02:08:35.639> so<02:08:36.199> let's<02:08:36.440> go<02:08:36.599> to<02:08:36.760> our
02:08:36.990 --> 02:08:37.000 align:start position:0%
sign in validation so let's go to our
02:08:37.000 --> 02:08:39.549 align:start position:0%
sign in validation so let's go to our
Zod<02:08:37.679> which<02:08:37.840> is<02:08:38.079> right<02:08:38.280> here<02:08:38.520> under<02:08:38.880> validation
02:08:39.549 --> 02:08:39.559 align:start position:0%
Zod which is right here under validation
02:08:39.559 --> 02:08:42.709 align:start position:0%
Zod which is right here under validation
index<02:08:40.119> DS<02:08:41.119> and<02:08:41.280> we<02:08:41.400> can<02:08:41.559> duplicate<02:08:42.119> this<02:08:42.520> right
02:08:42.709 --> 02:08:42.719 align:start position:0%
index DS and we can duplicate this right
02:08:42.719 --> 02:08:46.669 align:start position:0%
index DS and we can duplicate this right
below<02:08:43.719> rename<02:08:44.159> it<02:08:44.440> to<02:08:44.800> sign<02:08:45.199> in<02:08:45.679> validation
02:08:46.669 --> 02:08:46.679 align:start position:0%
below rename it to sign in validation
02:08:46.679 --> 02:08:49.149 align:start position:0%
below rename it to sign in validation
and<02:08:46.920> only<02:08:47.440> contain<02:08:48.079> the<02:08:48.440> email<02:08:48.800> and<02:08:48.960> the
02:08:49.149 --> 02:08:49.159 align:start position:0%
and only contain the email and the
02:08:49.159 --> 02:08:51.470 align:start position:0%
and only contain the email and the
password<02:08:49.760> we<02:08:49.880> can<02:08:50.040> remove<02:08:50.360> the<02:08:50.520> name<02:08:50.679> and<02:08:50.840> the
02:08:51.470 --> 02:08:51.480 align:start position:0%
password we can remove the name and the
02:08:51.480 --> 02:08:54.830 align:start position:0%
password we can remove the name and the
username<02:08:52.480> then<02:08:52.800> you<02:08:52.880> can<02:08:53.119> go<02:08:53.360> back<02:08:54.280> and
02:08:54.830 --> 02:08:54.840 align:start position:0%
username then you can go back and
02:08:54.840 --> 02:08:58.149 align:start position:0%
username then you can go back and
doubleclick<02:08:55.520> this<02:08:56.119> and<02:08:56.480> press<02:08:56.920> f2<02:08:57.920> this<02:08:58.040> is
02:08:58.149 --> 02:08:58.159 align:start position:0%
doubleclick this and press f2 this is
02:08:58.159 --> 02:09:00.510 align:start position:0%
doubleclick this and press f2 this is
going<02:08:58.320> to<02:08:58.520> open<02:08:58.800> up<02:08:58.960> a<02:08:59.159> rename<02:08:59.719> window<02:09:00.280> or<02:09:00.440> you
02:09:00.510 --> 02:09:00.520 align:start position:0%
going to open up a rename window or you
02:09:00.520 --> 02:09:03.470 align:start position:0%
going to open up a rename window or you
can<02:09:00.719> just<02:09:00.880> simply<02:09:01.239> press<02:09:01.639> sign<02:09:02.040> in<02:09:03.040> and<02:09:03.239> press
02:09:03.470 --> 02:09:03.480 align:start position:0%
can just simply press sign in and press
02:09:03.480 --> 02:09:05.950 align:start position:0%
can just simply press sign in and press
enter<02:09:04.360> it's<02:09:04.480> going<02:09:04.639> to<02:09:04.800> automatically<02:09:05.559> change
02:09:05.950 --> 02:09:05.960 align:start position:0%
enter it's going to automatically change
02:09:05.960 --> 02:09:08.189 align:start position:0%
enter it's going to automatically change
all<02:09:06.199> of<02:09:06.320> the<02:09:06.480> naming<02:09:07.480> if<02:09:07.639> this<02:09:07.760> didn't<02:09:08.000> work
02:09:08.189 --> 02:09:08.199 align:start position:0%
all of the naming if this didn't work
02:09:08.199 --> 02:09:10.430 align:start position:0%
all of the naming if this didn't work
for<02:09:08.360> you<02:09:08.880> simply<02:09:09.280> exchange<02:09:09.840> every<02:09:10.119> time<02:09:10.320> that
02:09:10.430 --> 02:09:10.440 align:start position:0%
for you simply exchange every time that
02:09:10.440 --> 02:09:13.470 align:start position:0%
for you simply exchange every time that
it<02:09:10.520> says<02:09:10.800> sign<02:09:11.040> up<02:09:11.480> to<02:09:11.679> say<02:09:11.960> sign<02:09:12.199> in<02:09:13.119> after
02:09:13.470 --> 02:09:13.480 align:start position:0%
it says sign up to say sign in after
02:09:13.480 --> 02:09:16.510 align:start position:0%
it says sign up to say sign in after
that<02:09:13.880> we<02:09:14.119> have<02:09:14.320> our<02:09:14.559> submit<02:09:15.000> Handler<02:09:16.000> we<02:09:16.199> also
02:09:16.510 --> 02:09:16.520 align:start position:0%
that we have our submit Handler we also
02:09:16.520 --> 02:09:18.790 align:start position:0%
that we have our submit Handler we also
get<02:09:16.679> the<02:09:16.880> values<02:09:17.440> but<02:09:17.599> we<02:09:17.719> can<02:09:17.880> skip<02:09:18.400> the<02:09:18.520> user
02:09:18.790 --> 02:09:18.800 align:start position:0%
get the values but we can skip the user
02:09:18.800 --> 02:09:21.109 align:start position:0%
get the values but we can skip the user
creation<02:09:19.320> process<02:09:19.840> and<02:09:20.040> only<02:09:20.400> focus<02:09:20.760> on<02:09:20.960> the
02:09:21.109 --> 02:09:21.119 align:start position:0%
creation process and only focus on the
02:09:21.119 --> 02:09:23.270 align:start position:0%
creation process and only focus on the
session<02:09:21.960> still<02:09:22.440> the<02:09:22.559> check-in<02:09:22.960> is<02:09:23.040> going<02:09:23.159> to
02:09:23.270 --> 02:09:23.280 align:start position:0%
session still the check-in is going to
02:09:23.280 --> 02:09:25.790 align:start position:0%
session still the check-in is going to
be<02:09:23.440> the<02:09:23.599> same<02:09:24.320> and<02:09:24.639> everything<02:09:25.040> else<02:09:25.480> is<02:09:25.639> going
02:09:25.790 --> 02:09:25.800 align:start position:0%
be the same and everything else is going
02:09:25.800 --> 02:09:28.950 align:start position:0%
be the same and everything else is going
to<02:09:25.960> be<02:09:26.599> exactly<02:09:27.159> the<02:09:27.320> same<02:09:28.239> but<02:09:28.480> we'll<02:09:28.679> have<02:09:28.800> to
02:09:28.950 --> 02:09:28.960 align:start position:0%
to be exactly the same but we'll have to
02:09:28.960 --> 02:09:31.709 align:start position:0%
to be exactly the same but we'll have to
modify<02:09:29.520> our<02:09:29.760> form<02:09:30.639> instead<02:09:30.920> of<02:09:31.079> create<02:09:31.360> a<02:09:31.480> new
02:09:31.709 --> 02:09:31.719 align:start position:0%
modify our form instead of create a new
02:09:31.719 --> 02:09:35.709 align:start position:0%
modify our form instead of create a new
account<02:09:32.280> we<02:09:32.400> can<02:09:32.599> say<02:09:33.400> log<02:09:33.880> in<02:09:34.480> to<02:09:34.840> your
02:09:35.709 --> 02:09:35.719 align:start position:0%
account we can say log in to your
02:09:35.719 --> 02:09:37.950 align:start position:0%
account we can say log in to your
account<02:09:36.719> we<02:09:36.840> can<02:09:37.000> say<02:09:37.360> something<02:09:37.639> more
02:09:37.950 --> 02:09:37.960 align:start position:0%
account we can say something more
02:09:37.960 --> 02:09:40.390 align:start position:0%
account we can say something more
personal<02:09:38.679> something<02:09:39.040> like<02:09:39.280> welcome<02:09:39.760> back
02:09:40.390 --> 02:09:40.400 align:start position:0%
personal something like welcome back
02:09:40.400 --> 02:09:43.510 align:start position:0%
personal something like welcome back
please<02:09:41.239> enter<02:09:41.719> your
02:09:43.510 --> 02:09:43.520 align:start position:0%
please enter your
02:09:43.520 --> 02:09:46.189 align:start position:0%
please enter your
details<02:09:44.520> then<02:09:44.920> we<02:09:45.119> don't<02:09:45.440> have<02:09:45.599> the<02:09:45.760> first<02:09:46.000> two
02:09:46.189 --> 02:09:46.199 align:start position:0%
details then we don't have the first two
02:09:46.199 --> 02:09:48.830 align:start position:0%
details then we don't have the first two
Fields<02:09:46.719> so<02:09:46.880> we<02:09:47.000> can<02:09:47.199> completely<02:09:47.679> remove<02:09:48.079> them
02:09:48.830 --> 02:09:48.840 align:start position:0%
Fields so we can completely remove them
02:09:48.840 --> 02:09:51.030 align:start position:0%
Fields so we can completely remove them
the<02:09:49.000> only<02:09:49.280> thing<02:09:49.480> we<02:09:49.639> do<02:09:49.960> have<02:09:50.440> is<02:09:50.599> going<02:09:50.760> to<02:09:50.880> be
02:09:51.030 --> 02:09:51.040 align:start position:0%
the only thing we do have is going to be
02:09:51.040 --> 02:09:54.310 align:start position:0%
the only thing we do have is going to be
the<02:09:51.199> email<02:09:52.000> and<02:09:52.159> the<02:09:52.679> password<02:09:53.679> so<02:09:53.880> now<02:09:54.079> if<02:09:54.159> you
02:09:54.310 --> 02:09:54.320 align:start position:0%
the email and the password so now if you
02:09:54.320 --> 02:09:56.390 align:start position:0%
the email and the password so now if you
save<02:09:54.679> this<02:09:55.199> you<02:09:55.320> can<02:09:55.480> see<02:09:55.760> it's<02:09:55.960> no<02:09:56.119> longer
02:09:56.390 --> 02:09:56.400 align:start position:0%
save this you can see it's no longer
02:09:56.400 --> 02:09:58.709 align:start position:0%
save this you can see it's no longer
going<02:09:56.480> to<02:09:56.599> be<02:09:56.800> is<02:09:57.040> creating<02:09:57.559> account<02:09:58.520> this
02:09:58.709 --> 02:09:58.719 align:start position:0%
going to be is creating account this
02:09:58.719 --> 02:10:02.549 align:start position:0%
going to be is creating account this
time<02:09:58.960> it's<02:09:59.159> going<02:09:59.280> to<02:09:59.480> be<02:09:59.840> is<02:10:00.559> user
02:10:02.549 --> 02:10:02.559 align:start position:0%
time it's going to be is user
02:10:02.559 --> 02:10:06.589 align:start position:0%
time it's going to be is user
loading<02:10:03.840> and<02:10:04.840> is<02:10:05.000> that<02:10:05.199> it<02:10:05.840> we<02:10:05.960> won't<02:10:06.280> need
02:10:06.589 --> 02:10:06.599 align:start position:0%
loading and is that it we won't need
02:10:06.599 --> 02:10:09.830 align:start position:0%
loading and is that it we won't need
this<02:10:06.840> rename<02:10:07.400> right<02:10:07.960> here<02:10:08.960> and<02:10:09.199> we<02:10:09.320> won't<02:10:09.559> need
02:10:09.830 --> 02:10:09.840 align:start position:0%
this rename right here and we won't need
02:10:09.840 --> 02:10:13.189 align:start position:0%
this rename right here and we won't need
use<02:10:10.159> create<02:10:10.760> account<02:10:11.760> if<02:10:11.880> we<02:10:12.000> save<02:10:12.360> this<02:10:13.000> our
02:10:13.189 --> 02:10:13.199 align:start position:0%
use create account if we save this our
02:10:13.199 --> 02:10:16.149 align:start position:0%
use create account if we save this our
form<02:10:13.840> is<02:10:14.159> back<02:10:14.920> and<02:10:15.119> we<02:10:15.280> also<02:10:15.520> need<02:10:15.679> to<02:10:15.840> change
02:10:16.149 --> 02:10:16.159 align:start position:0%
form is back and we also need to change
02:10:16.159 --> 02:10:18.390 align:start position:0%
form is back and we also need to change
the<02:10:16.400> last<02:10:16.639> thing<02:10:16.840> that<02:10:16.960> it<02:10:17.079> says<02:10:17.400> right<02:10:17.599> here
02:10:18.390 --> 02:10:18.400 align:start position:0%
the last thing that it says right here
02:10:18.400 --> 02:10:20.149 align:start position:0%
the last thing that it says right here
as<02:10:18.480> well<02:10:18.639> as<02:10:18.760> the<02:10:18.920> button<02:10:19.400> it's<02:10:19.520> going<02:10:19.719> to<02:10:19.840> say
02:10:20.149 --> 02:10:20.159 align:start position:0%
as well as the button it's going to say
02:10:20.159 --> 02:10:24.790 align:start position:0%
as well as the button it's going to say
sign<02:10:20.800> in<02:10:21.800> and<02:10:21.920> then<02:10:22.199> here<02:10:22.599> we<02:10:22.719> can<02:10:22.880> say<02:10:23.880> don't
02:10:24.790 --> 02:10:24.800 align:start position:0%
sign in and then here we can say don't
02:10:24.800 --> 02:10:25.950 align:start position:0%
sign in and then here we can say don't
have<02:10:25.079> an
02:10:25.950 --> 02:10:25.960 align:start position:0%
have an
02:10:25.960 --> 02:10:30.189 align:start position:0%
have an
account<02:10:26.960> in<02:10:27.199> that<02:10:27.480> case<02:10:28.159> you<02:10:28.320> can<02:10:28.960> sign
02:10:30.189 --> 02:10:30.199 align:start position:0%
account in that case you can sign
02:10:30.199 --> 02:10:33.430 align:start position:0%
account in that case you can sign
up<02:10:31.199> and<02:10:31.360> then<02:10:31.520> this<02:10:31.639> is<02:10:31.760> going<02:10:31.920> to<02:10:32.079> redirect<02:10:32.639> to
02:10:33.430 --> 02:10:33.440 align:start position:0%
up and then this is going to redirect to
02:10:33.440 --> 02:10:37.350 align:start position:0%
up and then this is going to redirect to
sign<02:10:34.159> up<02:10:35.159> you<02:10:35.280> see<02:10:35.520> how<02:10:35.679> simple<02:10:36.040> that<02:10:36.239> was<02:10:37.199> and
02:10:37.350 --> 02:10:37.360 align:start position:0%
sign up you see how simple that was and
02:10:37.360 --> 02:10:39.390 align:start position:0%
sign up you see how simple that was and
there<02:10:37.480> we<02:10:37.639> go<02:10:38.199> now<02:10:38.360> if<02:10:38.480> you<02:10:38.639> click<02:10:38.840> it<02:10:39.119> you<02:10:39.280> go
02:10:39.390 --> 02:10:39.400 align:start position:0%
there we go now if you click it you go
02:10:39.400 --> 02:10:41.709 align:start position:0%
there we go now if you click it you go
to<02:10:39.599> sign<02:10:39.840> up<02:10:40.280> you<02:10:40.440> go<02:10:40.559> to<02:10:40.719> login<02:10:41.440> this<02:10:41.559> is
02:10:41.709 --> 02:10:41.719 align:start position:0%
to sign up you go to login this is
02:10:41.719 --> 02:10:43.990 align:start position:0%
to sign up you go to login this is
looking<02:10:42.040> great<02:10:42.880> and<02:10:43.040> now<02:10:43.280> let's<02:10:43.440> try<02:10:43.599> to<02:10:43.760> log
02:10:43.990 --> 02:10:44.000 align:start position:0%
looking great and now let's try to log
02:10:44.000 --> 02:10:45.549 align:start position:0%
looking great and now let's try to log
in<02:10:44.159> with<02:10:44.280> the<02:10:44.440> account<02:10:44.760> we<02:10:44.880> have
02:10:45.549 --> 02:10:45.559 align:start position:0%
in with the account we have
02:10:45.559 --> 02:10:47.910 align:start position:0%
in with the account we have
created<02:10:46.559> I'll<02:10:46.760> use<02:10:47.000> the<02:10:47.159> same<02:10:47.440> email<02:10:47.719> and
02:10:47.910 --> 02:10:47.920 align:start position:0%
created I'll use the same email and
02:10:47.920 --> 02:10:51.510 align:start position:0%
created I'll use the same email and
password<02:10:48.679> and<02:10:48.880> click<02:10:49.119> sign<02:10:49.760> in<02:10:50.760> this<02:10:51.000> time<02:10:51.320> it
02:10:51.510 --> 02:10:51.520 align:start position:0%
password and click sign in this time it
02:10:51.520 --> 02:10:53.990 align:start position:0%
password and click sign in this time it
doesn't<02:10:51.800> seem<02:10:51.960> to<02:10:52.159> go<02:10:52.360> through<02:10:53.199> let's<02:10:53.400> see<02:10:53.760> why
02:10:53.990 --> 02:10:54.000 align:start position:0%
doesn't seem to go through let's see why
02:10:54.000 --> 02:10:56.030 align:start position:0%
doesn't seem to go through let's see why
that<02:10:54.159> might<02:10:54.360> be<02:10:54.520> the<02:10:54.679> case<02:10:55.559> I'm<02:10:55.679> going<02:10:55.760> to<02:10:55.920> go
02:10:56.030 --> 02:10:56.040 align:start position:0%
that might be the case I'm going to go
02:10:56.040 --> 02:10:58.430 align:start position:0%
that might be the case I'm going to go
to<02:10:56.320> inspect<02:10:57.320> and<02:10:57.480> then<02:10:57.719> I'm<02:10:57.840> going<02:10:57.920> to<02:10:58.119> go<02:10:58.239> to
02:10:58.430 --> 02:10:58.440 align:start position:0%
to inspect and then I'm going to go to
02:10:58.440 --> 02:11:01.470 align:start position:0%
to inspect and then I'm going to go to
console<02:10:59.199> and<02:10:59.320> reload<02:10:59.719> the<02:10:59.920> page<02:11:00.920> I'll<02:11:01.119> try<02:11:01.280> to
02:11:01.470 --> 02:11:01.480 align:start position:0%
console and reload the page I'll try to
02:11:01.480 --> 02:11:03.750 align:start position:0%
console and reload the page I'll try to
enter<02:11:01.880> my<02:11:02.159> same<02:11:02.480> email<02:11:02.880> and<02:11:03.159> password<02:11:03.599> one
02:11:03.750 --> 02:11:03.760 align:start position:0%
enter my same email and password one
02:11:03.760 --> 02:11:06.310 align:start position:0%
enter my same email and password one
more<02:11:04.000> time<02:11:04.639> and<02:11:04.840> click<02:11:05.079> sign
02:11:06.310 --> 02:11:06.320 align:start position:0%
more time and click sign
02:11:06.320 --> 02:11:09.189 align:start position:0%
more time and click sign
in<02:11:07.320> it<02:11:07.599> almost<02:11:07.920> seems<02:11:08.239> like<02:11:08.440> nothing<02:11:08.719> is
02:11:09.189 --> 02:11:09.199 align:start position:0%
in it almost seems like nothing is
02:11:09.199 --> 02:11:12.510 align:start position:0%
in it almost seems like nothing is
happening<02:11:10.199> so<02:11:10.800> our<02:11:11.079> submit<02:11:11.520> button<02:11:12.239> is
02:11:12.510 --> 02:11:12.520 align:start position:0%
happening so our submit button is
02:11:12.520 --> 02:11:14.350 align:start position:0%
happening so our submit button is
actually<02:11:12.840> submitting<02:11:13.239> the
02:11:14.350 --> 02:11:14.360 align:start position:0%
actually submitting the
02:11:14.360 --> 02:11:17.189 align:start position:0%
actually submitting the
form<02:11:15.360> we<02:11:15.480> don't<02:11:15.760> need<02:11:16.000> this<02:11:16.239> is<02:11:16.520> pending<02:11:17.000> right
02:11:17.189 --> 02:11:17.199 align:start position:0%
form we don't need this is pending right
02:11:17.199 --> 02:11:19.870 align:start position:0%
form we don't need this is pending right
here<02:11:17.960> and<02:11:18.360> then<02:11:18.639> we<02:11:18.800> call<02:11:19.159> the<02:11:19.280> onsubmit
02:11:19.870 --> 02:11:19.880 align:start position:0%
here and then we call the onsubmit
02:11:19.880 --> 02:11:22.669 align:start position:0%
here and then we call the onsubmit
Handler<02:11:20.719> which<02:11:20.880> should<02:11:21.159> sign<02:11:21.440> us<02:11:21.719> right<02:11:21.880> in
02:11:22.669 --> 02:11:22.679 align:start position:0%
Handler which should sign us right in
02:11:22.679 --> 02:11:24.790 align:start position:0%
Handler which should sign us right in
and<02:11:22.840> then<02:11:23.040> if<02:11:23.199> we<02:11:23.320> are<02:11:23.599> logged<02:11:23.960> in<02:11:24.440> it<02:11:24.559> should
02:11:24.790 --> 02:11:24.800 align:start position:0%
and then if we are logged in it should
02:11:24.800 --> 02:11:27.629 align:start position:0%
and then if we are logged in it should
navigate<02:11:25.400> to<02:11:25.599> forward<02:11:26.000> slash<02:11:27.000> but<02:11:27.199> in<02:11:27.440> this
02:11:27.629 --> 02:11:27.639 align:start position:0%
navigate to forward slash but in this
02:11:27.639 --> 02:11:30.109 align:start position:0%
navigate to forward slash but in this
case<02:11:27.920> for<02:11:28.079> some<02:11:28.320> reason<02:11:28.880> it<02:11:29.040> doesn't<02:11:29.360> do<02:11:29.520> it
02:11:30.109 --> 02:11:30.119 align:start position:0%
case for some reason it doesn't do it
02:11:30.119 --> 02:11:32.870 align:start position:0%
case for some reason it doesn't do it
I'll<02:11:30.360> try<02:11:30.559> to<02:11:30.880> reload<02:11:31.880> even<02:11:32.079> if<02:11:32.199> I<02:11:32.400> reload
02:11:32.870 --> 02:11:32.880 align:start position:0%
I'll try to reload even if I reload
02:11:32.880 --> 02:11:36.109 align:start position:0%
I'll try to reload even if I reload
we're<02:11:33.159> still<02:11:33.480> here<02:11:33.800> on<02:11:34.000> square<02:11:34.920> one<02:11:35.920> but
02:11:36.109 --> 02:11:36.119 align:start position:0%
we're still here on square one but
02:11:36.119 --> 02:11:38.310 align:start position:0%
we're still here on square one but
that's<02:11:36.440> okay<02:11:36.880> let's<02:11:37.079> figure<02:11:37.320> it<02:11:37.440> out<02:11:37.719> together
02:11:38.310 --> 02:11:38.320 align:start position:0%
that's okay let's figure it out together
02:11:38.320 --> 02:11:41.310 align:start position:0%
that's okay let's figure it out together
let's<02:11:38.520> see<02:11:38.800> if<02:11:38.960> we<02:11:39.199> actually<02:11:39.719> get<02:11:40.280> right<02:11:40.559> here
02:11:41.310 --> 02:11:41.320 align:start position:0%
let's see if we actually get right here
02:11:41.320 --> 02:11:42.629 align:start position:0%
let's see if we actually get right here
so<02:11:41.480> let's<02:11:41.639> try<02:11:41.840> to
02:11:42.629 --> 02:11:42.639 align:start position:0%
so let's try to
02:11:42.639 --> 02:11:46.669 align:start position:0%
so let's try to
console.log<02:11:43.639> is<02:11:44.239> logged<02:11:45.079> in<02:11:46.079> and<02:11:46.199> then<02:11:46.360> we<02:11:46.480> can
02:11:46.669 --> 02:11:46.679 align:start position:0%
console.log is logged in and then we can
02:11:46.679 --> 02:11:50.589 align:start position:0%
console.log is logged in and then we can
say<02:11:47.559> console.<02:11:48.239> log<02:11:49.119> navigating<02:11:50.119> I'm<02:11:50.320> guessing
02:11:50.589 --> 02:11:50.599 align:start position:0%
say console. log navigating I'm guessing
02:11:50.599 --> 02:11:53.149 align:start position:0%
say console. log navigating I'm guessing
we're<02:11:50.880> not<02:11:51.199> getting<02:11:51.800> to<02:11:52.079> right<02:11:52.360> here<02:11:52.920> so<02:11:53.079> I'm
02:11:53.149 --> 02:11:53.159 align:start position:0%
we're not getting to right here so I'm
02:11:53.159 --> 02:11:55.830 align:start position:0%
we're not getting to right here so I'm
going<02:11:53.280> to<02:11:53.440> save<02:11:54.000> it<02:11:55.000> and<02:11:55.199> I'll<02:11:55.400> enter<02:11:55.719> my
02:11:55.830 --> 02:11:55.840 align:start position:0%
going to save it and I'll enter my
02:11:55.840 --> 02:11:57.549 align:start position:0%
going to save it and I'll enter my
details<02:11:56.320> one<02:11:56.480> more
02:11:57.549 --> 02:11:57.559 align:start position:0%
details one more
02:11:57.559 --> 02:12:00.629 align:start position:0%
details one more
time<02:11:58.559> and<02:11:59.000> press<02:11:59.360> sign
02:12:00.629 --> 02:12:00.639 align:start position:0%
time and press sign
02:12:00.639 --> 02:12:04.470 align:start position:0%
time and press sign
in<02:12:01.639> it's<02:12:01.880> almost<02:12:02.280> as<02:12:02.400> if<02:12:02.760> nothing<02:12:03.480> happens
02:12:04.470 --> 02:12:04.480 align:start position:0%
in it's almost as if nothing happens
02:12:04.480 --> 02:12:06.709 align:start position:0%
in it's almost as if nothing happens
we're<02:12:04.760> also<02:12:05.000> not<02:12:05.199> getting<02:12:05.440> any<02:12:05.639> toasts<02:12:06.360> so
02:12:06.709 --> 02:12:06.719 align:start position:0%
we're also not getting any toasts so
02:12:06.719 --> 02:12:08.790 align:start position:0%
we're also not getting any toasts so
that's<02:12:06.920> a<02:12:07.040> bit<02:12:07.239> suspicious<02:12:08.199> let's<02:12:08.440> add<02:12:08.639> some
02:12:08.790 --> 02:12:08.800 align:start position:0%
that's a bit suspicious let's add some
02:12:08.800 --> 02:12:11.430 align:start position:0%
that's a bit suspicious let's add some
more<02:12:09.040> conso<02:12:09.440> locks<02:12:09.760> a<02:12:09.880> bit<02:12:10.119> higher<02:12:10.559> right<02:12:10.760> here
02:12:11.430 --> 02:12:11.440 align:start position:0%
more conso locks a bit higher right here
02:12:11.440 --> 02:12:13.629 align:start position:0%
more conso locks a bit higher right here
let's<02:12:11.679> conso<02:12:12.040> loog
02:12:13.629 --> 02:12:13.639 align:start position:0%
let's conso loog
02:12:13.639 --> 02:12:16.149 align:start position:0%
let's conso loog
session<02:12:14.639> and<02:12:14.840> let's<02:12:15.000> also<02:12:15.239> cons<02:12:15.599> log<02:12:16.000> right
02:12:16.149 --> 02:12:16.159 align:start position:0%
session and let's also cons log right
02:12:16.159 --> 02:12:18.870 align:start position:0%
session and let's also cons log right
here<02:12:16.360> at<02:12:16.480> the<02:12:16.679> top<02:12:17.400> by<02:12:17.559> saying
02:12:18.870 --> 02:12:18.880 align:start position:0%
here at the top by saying
02:12:18.880 --> 02:12:19.830 align:start position:0%
here at the top by saying
we're
02:12:19.830 --> 02:12:19.840 align:start position:0%
we're
02:12:19.840 --> 02:12:22.149 align:start position:0%
we're
in<02:12:20.840> that's<02:12:21.000> the<02:12:21.119> whole<02:12:21.320> point<02:12:21.520> of<02:12:21.679> coding
02:12:22.149 --> 02:12:22.159 align:start position:0%
in that's the whole point of coding
02:12:22.159 --> 02:12:24.189 align:start position:0%
in that's the whole point of coding
right<02:12:22.559> getting<02:12:22.880> stuck<02:12:23.320> and<02:12:23.480> getting<02:12:23.840> past
02:12:24.189 --> 02:12:24.199 align:start position:0%
right getting stuck and getting past
02:12:24.199 --> 02:12:27.229 align:start position:0%
right getting stuck and getting past
these<02:12:24.400> errors<02:12:25.400> once<02:12:25.679> again<02:12:26.119> let's<02:12:26.320> try<02:12:26.520> it
02:12:27.229 --> 02:12:27.239 align:start position:0%
these errors once again let's try it
02:12:27.239 --> 02:12:30.229 align:start position:0%
these errors once again let's try it
together<02:12:28.239> and<02:12:28.480> once<02:12:28.760> again<02:12:29.440> absolutely
02:12:30.229 --> 02:12:30.239 align:start position:0%
together and once again absolutely
02:12:30.239 --> 02:12:33.229 align:start position:0%
together and once again absolutely
nothing<02:12:30.760> happens<02:12:31.760> here<02:12:32.320> nor
02:12:33.229 --> 02:12:33.239 align:start position:0%
nothing happens here nor
02:12:33.239 --> 02:12:36.109 align:start position:0%
nothing happens here nor
here<02:12:34.239> now<02:12:34.559> it<02:12:34.719> seems<02:12:35.079> like<02:12:35.280> this<02:12:35.440> onsubmit
02:12:36.109 --> 02:12:36.119 align:start position:0%
here now it seems like this onsubmit
02:12:36.119 --> 02:12:38.709 align:start position:0%
here now it seems like this onsubmit
function<02:12:36.599> is<02:12:36.880> not<02:12:37.280> actually<02:12:37.639> getting<02:12:37.960> cold
02:12:38.709 --> 02:12:38.719 align:start position:0%
function is not actually getting cold
02:12:38.719 --> 02:12:40.510 align:start position:0%
function is not actually getting cold
even<02:12:39.000> though<02:12:39.159> we<02:12:39.320> have<02:12:39.480> it<02:12:39.719> right<02:12:39.920> here<02:12:40.199> under
02:12:40.510 --> 02:12:40.520 align:start position:0%
even though we have it right here under
02:12:40.520 --> 02:12:43.629 align:start position:0%
even though we have it right here under
form<02:12:40.920> submit<02:12:41.599> and<02:12:41.760> the<02:12:41.920> button<02:12:42.520> should<02:12:42.880> indeed
02:12:43.629 --> 02:12:43.639 align:start position:0%
form submit and the button should indeed
02:12:43.639 --> 02:12:46.510 align:start position:0%
form submit and the button should indeed
submit<02:12:44.079> that<02:12:44.280> form<02:12:44.800> as<02:12:44.920> it<02:12:45.119> has<02:12:45.320> the<02:12:45.559> type<02:12:45.920> of
02:12:46.510 --> 02:12:46.520 align:start position:0%
submit that form as it has the type of
02:12:46.520 --> 02:12:49.790 align:start position:0%
submit that form as it has the type of
submit<02:12:47.520> so<02:12:47.719> one<02:12:48.079> thing<02:12:48.159> I'll<02:12:48.320> try<02:12:48.520> to<02:12:48.679> do<02:12:49.400> is
02:12:49.790 --> 02:12:49.800 align:start position:0%
submit so one thing I'll try to do is
02:12:49.800 --> 02:12:52.030 align:start position:0%
submit so one thing I'll try to do is
just<02:12:50.040> restart<02:12:50.520> our<02:12:50.760> application<02:12:51.520> so<02:12:51.719> go<02:12:51.880> to
02:12:52.030 --> 02:12:52.040 align:start position:0%
just restart our application so go to
02:12:52.040 --> 02:12:55.270 align:start position:0%
just restart our application so go to
our<02:12:52.199> terminal<02:12:52.880> press<02:12:53.119> contrl<02:12:53.360> +<02:12:53.480> C<02:12:53.960> and<02:12:54.119> then<02:12:54.360> Y
02:12:55.270 --> 02:12:55.280 align:start position:0%
our terminal press contrl + C and then Y
02:12:55.280 --> 02:12:57.870 align:start position:0%
our terminal press contrl + C and then Y
and<02:12:55.400> then<02:12:55.559> simply<02:12:55.840> run<02:12:56.239> mpm<02:12:56.679> run<02:12:56.960> Dev<02:12:57.400> one<02:12:57.599> more
02:12:57.870 --> 02:12:57.880 align:start position:0%
and then simply run mpm run Dev one more
02:12:57.880 --> 02:13:00.870 align:start position:0%
and then simply run mpm run Dev one more
time<02:12:58.840> it's<02:12:58.960> a<02:12:59.119> wild<02:12:59.440> guess<02:13:00.040> but<02:13:00.440> sometimes<02:13:00.679> who
02:13:00.870 --> 02:13:00.880 align:start position:0%
time it's a wild guess but sometimes who
02:13:00.880 --> 02:13:03.950 align:start position:0%
time it's a wild guess but sometimes who
know<02:13:01.400> it<02:13:01.559> might<02:13:01.840> make<02:13:02.079> things
02:13:03.950 --> 02:13:03.960 align:start position:0%
know it might make things
02:13:03.960 --> 02:13:06.830 align:start position:0%
know it might make things
work<02:13:04.960> I'm<02:13:05.119> going<02:13:05.320> to<02:13:05.679> make<02:13:05.880> this<02:13:06.040> a<02:13:06.159> bit<02:13:06.320> larger
02:13:06.830 --> 02:13:06.840 align:start position:0%
work I'm going to make this a bit larger
02:13:06.840 --> 02:13:09.430 align:start position:0%
work I'm going to make this a bit larger
so<02:13:06.960> we<02:13:07.079> can<02:13:07.199> see<02:13:07.360> it<02:13:07.480> a<02:13:07.639> bit
02:13:09.430 --> 02:13:09.440 align:start position:0%
so we can see it a bit
02:13:09.440 --> 02:13:11.990 align:start position:0%
so we can see it a bit
better<02:13:10.440> let's<02:13:10.639> make<02:13:10.760> it<02:13:10.880> so<02:13:11.159> large<02:13:11.559> so<02:13:11.679> we<02:13:11.800> can
02:13:11.990 --> 02:13:12.000 align:start position:0%
better let's make it so large so we can
02:13:12.000 --> 02:13:14.229 align:start position:0%
better let's make it so large so we can
see<02:13:12.199> this<02:13:12.400> nice<02:13:12.639> image<02:13:12.960> as<02:13:13.119> well<02:13:13.800> I'm<02:13:13.960> going<02:13:14.040> to
02:13:14.229 --> 02:13:14.239 align:start position:0%
see this nice image as well I'm going to
02:13:14.239 --> 02:13:17.549 align:start position:0%
see this nice image as well I'm going to
enter<02:13:14.760> my<02:13:15.199> email<02:13:16.159> and<02:13:16.360> the<02:13:16.599> password<02:13:17.360> and
02:13:17.549 --> 02:13:17.559 align:start position:0%
enter my email and the password and
02:13:17.559 --> 02:13:18.870 align:start position:0%
enter my email and the password and
click<02:13:17.760> sign<02:13:18.040> sign
02:13:18.870 --> 02:13:18.880 align:start position:0%
click sign sign
02:13:18.880 --> 02:13:22.910 align:start position:0%
click sign sign
in<02:13:19.880> and<02:13:20.079> once<02:13:20.320> again<02:13:20.880> no<02:13:21.119> conso<02:13:21.559> logs<02:13:22.440> no
02:13:22.910 --> 02:13:22.920 align:start position:0%
in and once again no conso logs no
02:13:22.920 --> 02:13:25.589 align:start position:0%
in and once again no conso logs no
errors<02:13:23.920> nothing<02:13:24.320> is<02:13:24.520> even<02:13:24.840> in<02:13:24.960> the<02:13:25.159> network
02:13:25.589 --> 02:13:25.599 align:start position:0%
errors nothing is even in the network
02:13:25.599 --> 02:13:27.510 align:start position:0%
errors nothing is even in the network
tab<02:13:25.880> right<02:13:26.159> here<02:13:26.520> so<02:13:26.719> if<02:13:26.800> you<02:13:26.920> clean<02:13:27.159> it<02:13:27.320> and
02:13:27.510 --> 02:13:27.520 align:start position:0%
tab right here so if you clean it and
02:13:27.520 --> 02:13:30.790 align:start position:0%
tab right here so if you clean it and
click<02:13:28.239> nothing<02:13:28.599> is<02:13:28.960> here<02:13:29.960> it<02:13:30.119> seems<02:13:30.440> like<02:13:30.639> this
02:13:30.790 --> 02:13:30.800 align:start position:0%
click nothing is here it seems like this
02:13:30.800 --> 02:13:33.750 align:start position:0%
click nothing is here it seems like this
form<02:13:31.199> is<02:13:31.360> not<02:13:31.599> getting<02:13:32.079> fired<02:13:33.079> and<02:13:33.320> I<02:13:33.520> really
02:13:33.750 --> 02:13:33.760 align:start position:0%
form is not getting fired and I really
02:13:33.760 --> 02:13:36.189 align:start position:0%
form is not getting fired and I really
like<02:13:34.000> it<02:13:34.159> when<02:13:34.360> this<02:13:34.520> happens<02:13:35.360> it<02:13:35.559> exposes<02:13:36.040> me
02:13:36.189 --> 02:13:36.199 align:start position:0%
like it when this happens it exposes me
02:13:36.199 --> 02:13:38.950 align:start position:0%
like it when this happens it exposes me
to<02:13:36.400> you<02:13:36.920> and<02:13:37.159> it<02:13:37.360> makes<02:13:37.639> me<02:13:37.960> think<02:13:38.440> it<02:13:38.599> makes<02:13:38.800> me
02:13:38.950 --> 02:13:38.960 align:start position:0%
to you and it makes me think it makes me
02:13:38.960 --> 02:13:41.189 align:start position:0%
to you and it makes me think it makes me
want<02:13:39.119> to<02:13:39.360> resolve<02:13:39.840> this<02:13:40.159> together<02:13:40.760> with<02:13:40.920> you
02:13:41.189 --> 02:13:41.199 align:start position:0%
want to resolve this together with you
02:13:41.199 --> 02:13:43.430 align:start position:0%
want to resolve this together with you
watching<02:13:41.559> this<02:13:41.760> video<02:13:42.639> so<02:13:42.880> let's<02:13:43.079> try<02:13:43.280> to
02:13:43.430 --> 02:13:43.440 align:start position:0%
watching this video so let's try to
02:13:43.440 --> 02:13:46.069 align:start position:0%
watching this video so let's try to
figure<02:13:43.719> it<02:13:43.840> out<02:13:44.199> together<02:13:45.159> let's<02:13:45.440> go<02:13:45.679> all<02:13:45.960> the
02:13:46.069 --> 02:13:46.079 align:start position:0%
figure it out together let's go all the
02:13:46.079 --> 02:13:47.950 align:start position:0%
figure it out together let's go all the
way<02:13:46.239> to<02:13:46.400> the<02:13:46.599> top<02:13:46.800> of<02:13:46.880> the<02:13:47.079> file<02:13:47.639> and<02:13:47.760> let's
02:13:47.950 --> 02:13:47.960 align:start position:0%
way to the top of the file and let's
02:13:47.960 --> 02:13:49.990 align:start position:0%
way to the top of the file and let's
let's<02:13:48.079> see<02:13:48.199> if<02:13:48.360> everything<02:13:48.639> is<02:13:48.800> looking<02:13:49.159> good
02:13:49.990 --> 02:13:50.000 align:start position:0%
let's see if everything is looking good
02:13:50.000 --> 02:13:52.109 align:start position:0%
let's see if everything is looking good
we<02:13:50.119> have<02:13:50.280> some<02:13:50.520> imports<02:13:51.000> from<02:13:51.239> Hook<02:13:51.520> form
02:13:52.109 --> 02:13:52.119 align:start position:0%
we have some imports from Hook form
02:13:52.119 --> 02:13:55.189 align:start position:0%
we have some imports from Hook form
react<02:13:52.520> router<02:13:53.040> Dom<02:13:54.040> then<02:13:54.239> we<02:13:54.320> can<02:13:54.520> divide<02:13:55.040> our
02:13:55.189 --> 02:13:55.199 align:start position:0%
react router Dom then we can divide our
02:13:55.199 --> 02:13:57.470 align:start position:0%
react router Dom then we can divide our
internal<02:13:55.639> Imports<02:13:56.159> coming<02:13:56.360> from<02:13:56.639> components
02:13:57.470 --> 02:13:57.480 align:start position:0%
internal Imports coming from components
02:13:57.480 --> 02:14:00.270 align:start position:0%
internal Imports coming from components
right<02:13:57.760> here<02:13:58.440> we<02:13:58.639> also<02:13:58.920> have<02:13:59.079> some<02:13:59.280> more<02:13:59.760> react
02:14:00.270 --> 02:14:00.280 align:start position:0%
right here we also have some more react
02:14:00.280 --> 02:14:02.589 align:start position:0%
right here we also have some more react
hook<02:14:00.559> form<02:14:01.360> rather<02:14:01.639> this<02:14:01.760> is<02:14:01.960> this<02:14:02.040> was<02:14:02.280> react
02:14:02.589 --> 02:14:02.599 align:start position:0%
hook form rather this is this was react
02:14:02.599 --> 02:14:05.149 align:start position:0%
hook form rather this is this was react
ROM<02:14:03.199> this<02:14:03.280> is<02:14:03.440> react<02:14:03.679> hook<02:14:03.960> form<02:14:04.719> and<02:14:04.840> then<02:14:05.000> we
02:14:05.149 --> 02:14:05.159 align:start position:0%
ROM this is react hook form and then we
02:14:05.159 --> 02:14:07.750 align:start position:0%
ROM this is react hook form and then we
have<02:14:05.400> something<02:14:05.800> from<02:14:06.040> lib<02:14:06.639> validation<02:14:07.639> this
02:14:07.750 --> 02:14:07.760 align:start position:0%
have something from lib validation this
02:14:07.760 --> 02:14:09.390 align:start position:0%
have something from lib validation this
is<02:14:07.960> the<02:14:08.199> signup
02:14:09.390 --> 02:14:09.400 align:start position:0%
is the signup
02:14:09.400 --> 02:14:11.750 align:start position:0%
is the signup
validation<02:14:10.400> oh<02:14:10.559> no<02:14:10.880> wait<02:14:11.199> this<02:14:11.320> was<02:14:11.520> supposed
02:14:11.750 --> 02:14:11.760 align:start position:0%
validation oh no wait this was supposed
02:14:11.760 --> 02:14:14.709 align:start position:0%
validation oh no wait this was supposed
to<02:14:11.920> be<02:14:12.079> sign<02:14:12.719> in<02:14:13.719> looks<02:14:14.000> like<02:14:14.199> it<02:14:14.360> auto
02:14:14.709 --> 02:14:14.719 align:start position:0%
to be sign in looks like it auto
02:14:14.719 --> 02:14:17.430 align:start position:0%
to be sign in looks like it auto
imported<02:14:15.159> it<02:14:15.360> in<02:14:15.520> the<02:14:15.760> wrong<02:14:16.159> way<02:14:17.040> this<02:14:17.280> right
02:14:17.430 --> 02:14:17.440 align:start position:0%
imported it in the wrong way this right
02:14:17.440 --> 02:14:21.270 align:start position:0%
imported it in the wrong way this right
here<02:14:17.639> was<02:14:18.000> supposed<02:14:18.320> to<02:14:18.440> be<02:14:18.800> only<02:14:19.280> sign<02:14:19.760> in<02:14:20.760> yes
02:14:21.270 --> 02:14:21.280 align:start position:0%
here was supposed to be only sign in yes
02:14:21.280 --> 02:14:24.069 align:start position:0%
here was supposed to be only sign in yes
because<02:14:21.840> now<02:14:22.040> we're<02:14:22.280> talking<02:14:22.639> about<02:14:23.000> sign<02:14:23.360> in
02:14:24.069 --> 02:14:24.079 align:start position:0%
because now we're talking about sign in
02:14:24.079 --> 02:14:26.950 align:start position:0%
because now we're talking about sign in
right<02:14:24.280> here<02:14:24.559> and<02:14:24.719> not<02:14:25.000> sign<02:14:25.559> up<02:14:26.559> actually
02:14:26.950 --> 02:14:26.960 align:start position:0%
right here and not sign up actually
02:14:26.960 --> 02:14:29.270 align:start position:0%
right here and not sign up actually
disallowed<02:14:27.559> us<02:14:27.760> from<02:14:27.960> submitting<02:14:28.440> the<02:14:28.559> form
02:14:29.270 --> 02:14:29.280 align:start position:0%
disallowed us from submitting the form
02:14:29.280 --> 02:14:31.470 align:start position:0%
disallowed us from submitting the form
well<02:14:29.520> I<02:14:29.639> guess<02:14:29.880> that's<02:14:30.040> its<02:14:30.320> job<02:14:30.679> right<02:14:31.199> so<02:14:31.320> I'm
02:14:31.470 --> 02:14:31.480 align:start position:0%
well I guess that's its job right so I'm
02:14:31.480 --> 02:14:33.589 align:start position:0%
well I guess that's its job right so I'm
going<02:14:31.639> to<02:14:31.960> delete<02:14:32.400> all<02:14:32.559> of<02:14:32.679> the<02:14:32.800> conso<02:14:33.199> logs
02:14:33.589 --> 02:14:33.599 align:start position:0%
going to delete all of the conso logs
02:14:33.599 --> 02:14:35.069 align:start position:0%
going to delete all of the conso logs
right
02:14:35.069 --> 02:14:35.079 align:start position:0%
right
02:14:35.079 --> 02:14:39.350 align:start position:0%
right
now<02:14:36.079> and<02:14:36.719> save<02:14:37.040> the<02:14:37.239> file<02:14:38.079> there<02:14:38.239> we
02:14:39.350 --> 02:14:39.360 align:start position:0%
now and save the file there we
02:14:39.360 --> 02:14:42.430 align:start position:0%
now and save the file there we
go<02:14:40.360> and<02:14:40.599> hope<02:14:41.000> that<02:14:41.239> it<02:14:41.400> was<02:14:41.599> just<02:14:41.760> the<02:14:41.920> wrong
02:14:42.430 --> 02:14:42.440 align:start position:0%
go and hope that it was just the wrong
02:14:42.440 --> 02:14:45.510 align:start position:0%
go and hope that it was just the wrong
import<02:14:43.440> right<02:14:43.679> here<02:14:44.520> so<02:14:44.800> now<02:14:45.079> I'm<02:14:45.199> going<02:14:45.320> to
02:14:45.510 --> 02:14:45.520 align:start position:0%
import right here so now I'm going to
02:14:45.520 --> 02:14:48.669 align:start position:0%
import right here so now I'm going to
expand<02:14:46.000> the<02:14:46.159> entire<02:14:46.599> app<02:14:47.599> we<02:14:47.719> can<02:14:47.920> can<02:14:48.040> see<02:14:48.400> how
02:14:48.669 --> 02:14:48.679 align:start position:0%
expand the entire app we can can see how
02:14:48.679 --> 02:14:52.430 align:start position:0%
expand the entire app we can can see how
wonderful<02:14:49.440> this<02:14:49.599> signin<02:14:50.119> is<02:14:50.880> sign<02:14:51.199> up<02:14:51.559> as<02:14:51.800> well
02:14:52.430 --> 02:14:52.440 align:start position:0%
wonderful this signin is sign up as well
02:14:52.440 --> 02:14:54.430 align:start position:0%
wonderful this signin is sign up as well
it's<02:14:52.800> instantaneous<02:14:53.599> moving<02:14:54.000> between<02:14:54.320> the
02:14:54.430 --> 02:14:54.440 align:start position:0%
it's instantaneous moving between the
02:14:54.440 --> 02:14:57.270 align:start position:0%
it's instantaneous moving between the
two<02:14:55.440> and<02:14:55.639> we<02:14:55.760> can<02:14:55.920> try<02:14:56.119> to<02:14:56.320> log<02:14:56.599> in<02:14:56.920> with<02:14:57.079> the
02:14:57.270 --> 02:14:57.280 align:start position:0%
two and we can try to log in with the
02:14:57.280 --> 02:14:59.149 align:start position:0%
two and we can try to log in with the
account<02:14:57.639> we<02:14:57.760> have<02:14:57.960> previously
02:14:59.149 --> 02:14:59.159 align:start position:0%
account we have previously
02:14:59.159 --> 02:15:01.669 align:start position:0%
account we have previously
created<02:15:00.159> I'm<02:15:00.280> going<02:15:00.360> to<02:15:00.520> enter<02:15:00.840> my<02:15:01.079> password
02:15:01.669 --> 02:15:01.679 align:start position:0%
created I'm going to enter my password
02:15:01.679 --> 02:15:03.589 align:start position:0%
created I'm going to enter my password
and<02:15:01.880> click<02:15:02.199> sign
02:15:03.589 --> 02:15:03.599 align:start position:0%
and click sign
02:15:03.599 --> 02:15:07.229 align:start position:0%
and click sign
in<02:15:04.599> and<02:15:04.960> we<02:15:05.159> are<02:15:05.440> on<02:15:05.599> our<02:15:05.960> homepage<02:15:06.840> this<02:15:06.960> is
02:15:07.229 --> 02:15:07.239 align:start position:0%
in and we are on our homepage this is
02:15:07.239 --> 02:15:09.709 align:start position:0%
in and we are on our homepage this is
phenomenal<02:15:08.239> I<02:15:08.360> know<02:15:08.599> it<02:15:08.719> took<02:15:08.920> some<02:15:09.159> time<02:15:09.400> to
02:15:09.709 --> 02:15:09.719 align:start position:0%
phenomenal I know it took some time to
02:15:09.719 --> 02:15:12.750 align:start position:0%
phenomenal I know it took some time to
do<02:15:10.159> this<02:15:10.360> entire<02:15:10.840> Au<02:15:11.280> and<02:15:11.440> everything<02:15:11.880> else
02:15:12.750 --> 02:15:12.760 align:start position:0%
do this entire Au and everything else
02:15:12.760 --> 02:15:15.950 align:start position:0%
do this entire Au and everything else
but<02:15:13.040> hey<02:15:13.440> we're<02:15:13.800> finally<02:15:14.480> in<02:15:15.239> and<02:15:15.440> now<02:15:15.679> we<02:15:15.800> can
02:15:15.950 --> 02:15:15.960 align:start position:0%
but hey we're finally in and now we can
02:15:15.960 --> 02:15:18.709 align:start position:0%
but hey we're finally in and now we can
start<02:15:16.320> focusing<02:15:16.960> on<02:15:17.119> our<02:15:17.320> homepage<02:15:18.239> so<02:15:18.440> we<02:15:18.520> can
02:15:18.709 --> 02:15:18.719 align:start position:0%
start focusing on our homepage so we can
02:15:18.719 --> 02:15:21.430 align:start position:0%
start focusing on our homepage so we can
close<02:15:19.040> our<02:15:19.239> sign<02:15:19.480> in<02:15:19.920> and<02:15:20.119> the<02:15:20.320> sign<02:15:20.599> up<02:15:21.159> and<02:15:21.320> we
02:15:21.430 --> 02:15:21.440 align:start position:0%
close our sign in and the sign up and we
02:15:21.440 --> 02:15:26.229 align:start position:0%
close our sign in and the sign up and we
can<02:15:21.760> go<02:15:22.760> right<02:15:22.960> here<02:15:23.159> to<02:15:23.559> Source<02:15:24.639> root
02:15:26.229 --> 02:15:26.239 align:start position:0%
can go right here to Source root
02:15:26.239 --> 02:15:29.030 align:start position:0%
can go right here to Source root
pages<02:15:27.239> and<02:15:27.360> then<02:15:27.599> homepage<02:15:28.320> or<02:15:28.599> rather<02:15:28.840> we'll
02:15:29.030 --> 02:15:29.040 align:start position:0%
pages and then homepage or rather we'll
02:15:29.040 --> 02:15:31.030 align:start position:0%
pages and then homepage or rather we'll
have<02:15:29.159> to<02:15:29.239> do<02:15:29.400> the<02:15:29.520> root<02:15:29.880> layout<02:15:30.360> first<02:15:30.760> because
02:15:31.030 --> 02:15:31.040 align:start position:0%
have to do the root layout first because
02:15:31.040 --> 02:15:32.910 align:start position:0%
have to do the root layout first because
that<02:15:31.239> we're<02:15:31.440> seeing<02:15:32.040> but<02:15:32.199> then<02:15:32.360> soon<02:15:32.639> enough
02:15:32.910 --> 02:15:32.920 align:start position:0%
that we're seeing but then soon enough
02:15:32.920 --> 02:15:35.149 align:start position:0%
that we're seeing but then soon enough
we'll<02:15:33.079> move<02:15:33.320> to<02:15:33.440> the<02:15:33.559> homage<02:15:34.360> and<02:15:34.559> the<02:15:34.760> rest<02:15:35.000> of
02:15:35.149 --> 02:15:35.159 align:start position:0%
we'll move to the homage and the rest of
02:15:35.159 --> 02:15:38.149 align:start position:0%
we'll move to the homage and the rest of
the<02:15:35.400> content<02:15:36.360> I<02:15:36.480> know<02:15:36.760> it<02:15:36.880> took<02:15:37.119> some<02:15:37.320> time<02:15:37.880> but
02:15:38.149 --> 02:15:38.159 align:start position:0%
the content I know it took some time but
02:15:38.159 --> 02:15:41.229 align:start position:0%
the content I know it took some time but
we<02:15:38.400> laid<02:15:38.800> out<02:15:39.119> a<02:15:39.639> strong<02:15:40.000> foundation<02:15:40.920> for
02:15:41.229 --> 02:15:41.239 align:start position:0%
we laid out a strong foundation for
02:15:41.239 --> 02:15:43.629 align:start position:0%
we laid out a strong foundation for
everything<02:15:41.639> else<02:15:42.079> we're<02:15:42.320> about<02:15:42.559> to<02:15:42.719> build<02:15:43.320> so
02:15:43.629 --> 02:15:43.639 align:start position:0%
everything else we're about to build so
02:15:43.639 --> 02:15:45.669 align:start position:0%
everything else we're about to build so
phenomenal<02:15:44.239> job<02:15:44.520> coming<02:15:44.920> this<02:15:45.079> far<02:15:45.320> into<02:15:45.520> the
02:15:45.669 --> 02:15:45.679 align:start position:0%
phenomenal job coming this far into the
02:15:45.679 --> 02:15:48.589 align:start position:0%
phenomenal job coming this far into the
video<02:15:46.400> and<02:15:46.639> now<02:15:47.040> the<02:15:47.239> exciting<02:15:47.559> stuff<02:15:47.840> stuff
02:15:48.589 --> 02:15:48.599 align:start position:0%
video and now the exciting stuff stuff
02:15:48.599 --> 02:15:51.430 align:start position:0%
video and now the exciting stuff stuff
begins<02:15:49.599> let's<02:15:49.840> get<02:15:50.040> started<02:15:50.599> with<02:15:50.760> the<02:15:50.880> root
02:15:51.430 --> 02:15:51.440 align:start position:0%
begins let's get started with the root
02:15:51.440 --> 02:15:54.069 align:start position:0%
begins let's get started with the root
layout<02:15:52.360> the<02:15:52.520> layout<02:15:53.000> is<02:15:53.119> going<02:15:53.280> to<02:15:53.480> play<02:15:53.760> a
02:15:54.069 --> 02:15:54.079 align:start position:0%
layout the layout is going to play a
02:15:54.079 --> 02:15:57.629 align:start position:0%
layout the layout is going to play a
major<02:15:54.599> role<02:15:55.199> in<02:15:55.480> turning<02:15:55.880> our<02:15:56.119> app<02:15:56.400> from<02:15:56.800> this
02:15:57.629 --> 02:15:57.639 align:start position:0%
major role in turning our app from this
02:15:57.639 --> 02:16:00.109 align:start position:0%
major role in turning our app from this
to<02:15:58.000> this<02:15:58.599> where<02:15:58.760> we<02:15:58.920> have<02:15:59.159> the<02:15:59.360> sidebar<02:15:59.840> on<02:15:59.960> the
02:16:00.109 --> 02:16:00.119 align:start position:0%
to this where we have the sidebar on the
02:16:00.119 --> 02:16:02.390 align:start position:0%
to this where we have the sidebar on the
left<02:16:00.400> side<02:16:01.000> the<02:16:01.119> whole<02:16:01.480> middle<02:16:01.840> part<02:16:02.040> for<02:16:02.199> the
02:16:02.390 --> 02:16:02.400 align:start position:0%
left side the whole middle part for the
02:16:02.400 --> 02:16:04.790 align:start position:0%
left side the whole middle part for the
post<02:16:03.199> and<02:16:03.360> then<02:16:03.559> the<02:16:03.800> top<02:16:04.000> creators<02:16:04.440> on<02:16:04.599> the
02:16:04.790 --> 02:16:04.800 align:start position:0%
post and then the top creators on the
02:16:04.800 --> 02:16:07.069 align:start position:0%
post and then the top creators on the
right<02:16:05.400> and<02:16:05.559> of<02:16:05.719> course<02:16:06.040> it's<02:16:06.280> all<02:16:06.679> fully
02:16:07.069 --> 02:16:07.079 align:start position:0%
right and of course it's all fully
02:16:07.079 --> 02:16:09.430 align:start position:0%
right and of course it's all fully
mobile<02:16:07.520> responsive<02:16:08.119> so<02:16:08.360> as<02:16:08.480> you<02:16:08.639> scroll<02:16:09.280> we
02:16:09.430 --> 02:16:09.440 align:start position:0%
mobile responsive so as you scroll we
02:16:09.440 --> 02:16:12.830 align:start position:0%
mobile responsive so as you scroll we
have<02:16:09.639> this<02:16:09.840> beautiful<02:16:10.320> mobile<02:16:11.040> UI<02:16:12.040> so<02:16:12.599> let's
02:16:12.830 --> 02:16:12.840 align:start position:0%
have this beautiful mobile UI so let's
02:16:12.840 --> 02:16:15.270 align:start position:0%
have this beautiful mobile UI so let's
get<02:16:13.040> started<02:16:13.400> with<02:16:13.520> the<02:16:13.639> root<02:16:14.000> layout<02:16:15.000> by
02:16:15.270 --> 02:16:15.280 align:start position:0%
get started with the root layout by
02:16:15.280 --> 02:16:17.310 align:start position:0%
get started with the root layout by
wrapping<02:16:15.880> everything<02:16:16.239> in<02:16:16.360> a<02:16:16.559> div<02:16:17.159> that's
02:16:17.310 --> 02:16:17.320 align:start position:0%
wrapping everything in a div that's
02:16:17.320 --> 02:16:22.030 align:start position:0%
wrapping everything in a div that's
going<02:16:17.480> to<02:16:17.840> have<02:16:18.079> a<02:16:18.400> class<02:16:19.040> name<02:16:20.040> equal<02:16:20.400> to<02:16:21.280> w-
02:16:22.030 --> 02:16:22.040 align:start position:0%
going to have a class name equal to w-
02:16:22.040 --> 02:16:24.229 align:start position:0%
going to have a class name equal to w-
fold<02:16:22.320> for<02:16:22.520> full<02:16:22.880> width<02:16:23.520> and<02:16:23.679> on<02:16:23.840> medium
02:16:24.229 --> 02:16:24.239 align:start position:0%
fold for full width and on medium
02:16:24.239 --> 02:16:27.830 align:start position:0%
fold for full width and on medium
devices<02:16:25.480> Flex<02:16:26.480> now<02:16:26.800> within<02:16:27.199> here<02:16:27.440> we'll<02:16:27.679> have
02:16:27.830 --> 02:16:27.840 align:start position:0%
devices Flex now within here we'll have
02:16:27.840 --> 02:16:29.870 align:start position:0%
devices Flex now within here we'll have
a<02:16:28.000> couple<02:16:28.239> of<02:16:28.440> components<02:16:29.199> so<02:16:29.360> let's<02:16:29.559> go<02:16:29.679> ahead
02:16:29.870 --> 02:16:29.880 align:start position:0%
a couple of components so let's go ahead
02:16:29.880 --> 02:16:31.990 align:start position:0%
a couple of components so let's go ahead
and<02:16:30.079> create<02:16:30.400> them<02:16:31.040> we<02:16:31.159> can<02:16:31.280> do<02:16:31.520> them<02:16:31.719> within
02:16:31.990 --> 02:16:32.000 align:start position:0%
and create them we can do them within
02:16:32.000 --> 02:16:34.389 align:start position:0%
and create them we can do them within
the<02:16:32.120> shared<02:16:33.040> and<02:16:33.200> we<02:16:33.280> can<02:16:33.439> create<02:16:33.639> a<02:16:33.800> new<02:16:34.040> file
02:16:34.389 --> 02:16:34.399 align:start position:0%
the shared and we can create a new file
02:16:34.399 --> 02:16:39.549 align:start position:0%
the shared and we can create a new file
called<02:16:34.880> top<02:16:35.519> bar.<02:16:36.920> TSX<02:16:37.920> and<02:16:38.080> run<02:16:38.319> R<02:16:38.679> efce
02:16:39.549 --> 02:16:39.559 align:start position:0%
called top bar. TSX and run R efce
02:16:39.559 --> 02:16:42.669 align:start position:0%
called top bar. TSX and run R efce
inside<02:16:39.880> of<02:16:40.120> there<02:16:40.960> we<02:16:41.040> can<02:16:41.240> do<02:16:41.559> a<02:16:41.880> second<02:16:42.200> one
02:16:42.669 --> 02:16:42.679 align:start position:0%
inside of there we can do a second one
02:16:42.679 --> 02:16:48.629 align:start position:0%
inside of there we can do a second one
called<02:16:43.240> Left<02:16:44.240> sidebar.<02:16:45.280> TSX<02:16:46.280> and<02:16:46.439> run<02:16:46.719> r<02:16:47.160> fce
02:16:48.629 --> 02:16:48.639 align:start position:0%
called Left sidebar. TSX and run r fce
02:16:48.639 --> 02:16:50.629 align:start position:0%
called Left sidebar. TSX and run r fce
if<02:16:48.760> we<02:16:48.880> have<02:16:49.000> a<02:16:49.200> left<02:16:49.439> one<02:16:50.080> we're<02:16:50.240> going<02:16:50.359> to
02:16:50.629 --> 02:16:50.639 align:start position:0%
if we have a left one we're going to
02:16:50.639 --> 02:16:53.469 align:start position:0%
if we have a left one we're going to
also<02:16:51.040> have<02:16:51.399> a<02:16:51.679> bottom<02:16:52.080> bar<02:16:52.519> so<02:16:52.679> let's<02:16:52.920> create<02:16:53.200> a
02:16:53.469 --> 02:16:53.479 align:start position:0%
also have a bottom bar so let's create a
02:16:53.479 --> 02:16:57.750 align:start position:0%
also have a bottom bar so let's create a
bottom<02:16:54.439> bar.<02:16:55.439> TSX<02:16:56.439> run
02:16:57.750 --> 02:16:57.760 align:start position:0%
bottom bar. TSX run
02:16:57.760 --> 02:17:00.230 align:start position:0%
bottom bar. TSX run
rafc<02:16:58.760> and<02:16:59.000> that's<02:16:59.240> everything<02:16:59.599> we<02:16:59.719> need<02:16:59.960> so
02:17:00.230 --> 02:17:00.240 align:start position:0%
rafc and that's everything we need so
02:17:00.240 --> 02:17:02.549 align:start position:0%
rafc and that's everything we need so
far<02:17:00.760> so<02:17:00.960> let's<02:17:01.240> go<02:17:01.559> back<02:17:01.880> into<02:17:02.160> our<02:17:02.280> root
02:17:02.549 --> 02:17:02.559 align:start position:0%
far so let's go back into our root
02:17:02.559 --> 02:17:04.990 align:start position:0%
far so let's go back into our root
layout<02:17:03.280> and<02:17:03.479> let's<02:17:03.840> use<02:17:04.280> all<02:17:04.439> of<02:17:04.639> these
02:17:04.990 --> 02:17:05.000 align:start position:0%
layout and let's use all of these
02:17:05.000 --> 02:17:07.830 align:start position:0%
layout and let's use all of these
components<02:17:06.000> so<02:17:06.319> here<02:17:06.719> we<02:17:06.880> can<02:17:07.120> put<02:17:07.319> the<02:17:07.519> top
02:17:07.830 --> 02:17:07.840 align:start position:0%
components so here we can put the top
02:17:07.840 --> 02:17:11.349 align:start position:0%
components so here we can put the top
bar<02:17:08.280> at<02:17:08.439> the<02:17:08.639> top<02:17:09.080> and<02:17:09.240> just<02:17:09.359> self<02:17:09.760> close<02:17:10.359> it
02:17:11.349 --> 02:17:11.359 align:start position:0%
bar at the top and just self close it
02:17:11.359 --> 02:17:13.589 align:start position:0%
bar at the top and just self close it
and<02:17:11.639> import<02:17:12.000> it<02:17:12.359> by<02:17:12.599> double<02:17:12.960> clicking<02:17:13.399> and
02:17:13.589 --> 02:17:13.599 align:start position:0%
and import it by double clicking and
02:17:13.599 --> 02:17:16.150 align:start position:0%
and import it by double clicking and
pressing<02:17:13.920> control<02:17:14.679> space<02:17:15.679> then<02:17:15.920> we're<02:17:16.040> going
02:17:16.150 --> 02:17:16.160 align:start position:0%
pressing control space then we're going
02:17:16.160 --> 02:17:18.270 align:start position:0%
pressing control space then we're going
to<02:17:16.319> have<02:17:16.479> the<02:17:16.679> left<02:17:17.000> side<02:17:17.200> bar<02:17:17.679> immediately
02:17:18.270 --> 02:17:18.280 align:start position:0%
to have the left side bar immediately
02:17:18.280 --> 02:17:21.830 align:start position:0%
to have the left side bar immediately
below<02:17:19.000> also<02:17:19.319> you<02:17:19.399> need<02:17:19.559> to<02:17:19.719> import<02:17:20.319> it<02:17:21.319> then
02:17:21.830 --> 02:17:21.840 align:start position:0%
below also you need to import it then
02:17:21.840 --> 02:17:24.070 align:start position:0%
below also you need to import it then
below<02:17:22.160> it<02:17:22.319> we're<02:17:22.439> going<02:17:22.559> to<02:17:22.679> have<02:17:22.840> a
02:17:24.070 --> 02:17:24.080 align:start position:0%
below it we're going to have a
02:17:24.080 --> 02:17:26.750 align:start position:0%
below it we're going to have a
section<02:17:25.080> and<02:17:25.439> this<02:17:25.719> section<02:17:26.160> is<02:17:26.280> going<02:17:26.479> to
02:17:26.750 --> 02:17:26.760 align:start position:0%
section and this section is going to
02:17:26.760 --> 02:17:30.910 align:start position:0%
section and this section is going to
have<02:17:27.080> a<02:17:27.359> class<02:17:27.760> name<02:17:28.479> equal<02:17:28.800> to<02:17:29.000> flex<02:17:29.840> Flex<02:17:30.359> D1
02:17:30.910 --> 02:17:30.920 align:start position:0%
have a class name equal to flex Flex D1
02:17:30.920 --> 02:17:33.990 align:start position:0%
have a class name equal to flex Flex D1
so<02:17:31.120> it<02:17:31.319> expands<02:17:32.240> and<02:17:32.399> then<02:17:32.599> h-<02:17:33.240> full<02:17:33.719> for<02:17:33.920> the
02:17:33.990 --> 02:17:34.000 align:start position:0%
so it expands and then h- full for the
02:17:34.000 --> 02:17:36.709 align:start position:0%
so it expands and then h- full for the
full<02:17:34.399> height<02:17:35.399> and<02:17:35.679> within<02:17:36.000> it<02:17:36.319> we<02:17:36.439> want<02:17:36.559> to
02:17:36.709 --> 02:17:36.719 align:start position:0%
full height and within it we want to
02:17:36.719 --> 02:17:40.150 align:start position:0%
full height and within it we want to
render<02:17:37.479> the<02:17:37.800> outlet<02:17:38.920> component<02:17:39.920> this
02:17:40.150 --> 02:17:40.160 align:start position:0%
render the outlet component this
02:17:40.160 --> 02:17:42.709 align:start position:0%
render the outlet component this
component<02:17:40.679> has<02:17:40.800> to<02:17:40.960> be<02:17:41.120> imported<02:17:41.719> from<02:17:42.240> react
02:17:42.709 --> 02:17:42.719 align:start position:0%
component has to be imported from react
02:17:42.719 --> 02:17:48.150 align:start position:0%
component has to be imported from react
router<02:17:43.120> Dom<02:17:44.040> so<02:17:44.880> outlet<02:17:46.120> from<02:17:47.120> react
02:17:48.150 --> 02:17:48.160 align:start position:0%
router Dom so outlet from react
02:17:48.160 --> 02:17:49.990 align:start position:0%
router Dom so outlet from react
router
02:17:49.990 --> 02:17:50.000 align:start position:0%
router
02:17:50.000 --> 02:17:52.509 align:start position:0%
router
Dom<02:17:51.000> this<02:17:51.120> is<02:17:51.319> similar<02:17:51.679> to<02:17:51.840> what<02:17:51.960> we<02:17:52.080> have<02:17:52.240> done
02:17:52.509 --> 02:17:52.519 align:start position:0%
Dom this is similar to what we have done
02:17:52.519 --> 02:17:55.870 align:start position:0%
Dom this is similar to what we have done
before<02:17:53.160> for<02:17:53.519> our<02:17:54.040> off<02:17:54.399> layout<02:17:55.200> where<02:17:55.599> this
02:17:55.870 --> 02:17:55.880 align:start position:0%
before for our off layout where this
02:17:55.880 --> 02:17:58.750 align:start position:0%
before for our off layout where this
Outlet<02:17:56.760> actually<02:17:57.280> lets<02:17:57.599> us<02:17:57.880> show<02:17:58.519> what's
02:17:58.750 --> 02:17:58.760 align:start position:0%
Outlet actually lets us show what's
02:17:58.760 --> 02:18:01.830 align:start position:0%
Outlet actually lets us show what's
going<02:17:58.920> to<02:17:59.120> be<02:17:59.399> on<02:17:59.559> the<02:17:59.719> homepage<02:18:00.439> later<02:18:00.719> on<02:18:01.719> and
02:18:01.830 --> 02:18:01.840 align:start position:0%
going to be on the homepage later on and
02:18:01.840 --> 02:18:04.190 align:start position:0%
going to be on the homepage later on and
then<02:18:02.040> below<02:18:02.359> it<02:18:02.679> we<02:18:02.840> also<02:18:03.080> want<02:18:03.200> to<02:18:03.359> render<02:18:04.000> the
02:18:04.190 --> 02:18:04.200 align:start position:0%
then below it we also want to render the
02:18:04.200 --> 02:18:05.709 align:start position:0%
then below it we also want to render the
Bottom
02:18:05.709 --> 02:18:05.719 align:start position:0%
Bottom
02:18:05.719 --> 02:18:08.270 align:start position:0%
Bottom
bar<02:18:06.719> there<02:18:06.880> we<02:18:07.040> go<02:18:07.399> so<02:18:07.639> now<02:18:07.800> we<02:18:08.000> have
02:18:08.270 --> 02:18:08.280 align:start position:0%
bar there we go so now we have
02:18:08.280 --> 02:18:10.349 align:start position:0%
bar there we go so now we have
everything<02:18:08.679> we<02:18:08.800> need<02:18:09.319> right<02:18:09.559> here<02:18:10.120> if<02:18:10.240> you
02:18:10.349 --> 02:18:10.359 align:start position:0%
everything we need right here if you
02:18:10.359 --> 02:18:12.429 align:start position:0%
everything we need right here if you
scroll<02:18:10.760> all<02:18:11.000> the<02:18:11.120> way<02:18:11.599> you'll<02:18:11.760> see<02:18:11.960> a<02:18:12.120> bottom
02:18:12.429 --> 02:18:12.439 align:start position:0%
scroll all the way you'll see a bottom
02:18:12.439 --> 02:18:15.549 align:start position:0%
scroll all the way you'll see a bottom
bar<02:18:12.880> there<02:18:13.280> as<02:18:13.479> well<02:18:14.359> so<02:18:14.639> now<02:18:14.960> before<02:18:15.200> we<02:18:15.319> start
02:18:15.549 --> 02:18:15.559 align:start position:0%
bar there as well so now before we start
02:18:15.559 --> 02:18:17.669 align:start position:0%
bar there as well so now before we start
with<02:18:15.719> the<02:18:15.840> homepage<02:18:16.599> let's<02:18:16.840> start<02:18:17.120> with<02:18:17.280> these
02:18:17.669 --> 02:18:17.679 align:start position:0%
with the homepage let's start with these
02:18:17.679 --> 02:18:20.669 align:start position:0%
with the homepage let's start with these
individual<02:18:18.200> Pages<02:18:19.000> such<02:18:19.200> as<02:18:19.599> the<02:18:19.800> top<02:18:20.080> bar
02:18:20.669 --> 02:18:20.679 align:start position:0%
individual Pages such as the top bar
02:18:20.679 --> 02:18:23.750 align:start position:0%
individual Pages such as the top bar
since<02:18:21.080> it's<02:18:21.280> at<02:18:21.439> the<02:18:21.960> top<02:18:22.960> this<02:18:23.240> is<02:18:23.399> going<02:18:23.599> to
02:18:23.750 --> 02:18:23.760 align:start position:0%
since it's at the top this is going to
02:18:23.760 --> 02:18:26.349 align:start position:0%
since it's at the top this is going to
be<02:18:24.040> a<02:18:24.280> simple<02:18:24.760> section<02:18:25.399> so<02:18:25.719> let's<02:18:25.920> turn<02:18:26.160> it
02:18:26.349 --> 02:18:26.359 align:start position:0%
be a simple section so let's turn it
02:18:26.359 --> 02:18:27.589 align:start position:0%
be a simple section so let's turn it
into<02:18:26.599> a
02:18:27.589 --> 02:18:27.599 align:start position:0%
into a
02:18:27.599 --> 02:18:29.990 align:start position:0%
into a
section<02:18:28.599> and<02:18:28.800> it's<02:18:28.960> going<02:18:29.120> to<02:18:29.280> have<02:18:29.439> a<02:18:29.679> class
02:18:29.990 --> 02:18:30.000 align:start position:0%
section and it's going to have a class
02:18:30.000 --> 02:18:33.230 align:start position:0%
section and it's going to have a class
name<02:18:30.599> equal<02:18:30.960> to<02:18:31.599> Top
02:18:33.230 --> 02:18:33.240 align:start position:0%
name equal to Top
02:18:33.240 --> 02:18:36.669 align:start position:0%
name equal to Top
Bar<02:18:34.240> within<02:18:34.519> it<02:18:34.800> we<02:18:34.920> can<02:18:35.120> create<02:18:35.399> a<02:18:35.639> div<02:18:36.439> and
02:18:36.669 --> 02:18:36.679 align:start position:0%
Bar within it we can create a div and
02:18:36.679 --> 02:18:39.110 align:start position:0%
Bar within it we can create a div and
that<02:18:36.880> div<02:18:37.200> is<02:18:37.319> going<02:18:37.519> to<02:18:37.679> have<02:18:37.840> a<02:18:38.080> class<02:18:38.399> name
02:18:39.110 --> 02:18:39.120 align:start position:0%
that div is going to have a class name
02:18:39.120 --> 02:18:40.870 align:start position:0%
that div is going to have a class name
equal<02:18:39.399> to<02:18:39.599> flex
02:18:40.870 --> 02:18:40.880 align:start position:0%
equal to flex
02:18:40.880 --> 02:18:43.830 align:start position:0%
equal to flex
between<02:18:41.880> padding<02:18:42.319> y<02:18:42.559> of<02:18:42.760> four<02:18:43.200> meaning<02:18:43.639> top
02:18:43.830 --> 02:18:43.840 align:start position:0%
between padding y of four meaning top
02:18:43.840 --> 02:18:46.270 align:start position:0%
between padding y of four meaning top
and<02:18:44.040> bottom<02:18:44.679> and<02:18:44.880> padding<02:18:45.280> X<02:18:45.679> meaning<02:18:46.040> left
02:18:46.270 --> 02:18:46.280 align:start position:0%
and bottom and padding X meaning left
02:18:46.280 --> 02:18:48.790 align:start position:0%
and bottom and padding X meaning left
and<02:18:46.519> right<02:18:47.000> of<02:18:47.240> five
02:18:48.790 --> 02:18:48.800 align:start position:0%
and right of five
02:18:48.800 --> 02:18:52.110 align:start position:0%
and right of five
right<02:18:49.040> here<02:18:49.399> we<02:18:49.559> can<02:18:49.679> render<02:18:50.120> a<02:18:50.639> link<02:18:51.639> and<02:18:51.920> that
02:18:52.110 --> 02:18:52.120 align:start position:0%
right here we can render a link and that
02:18:52.120 --> 02:18:55.349 align:start position:0%
right here we can render a link and that
link<02:18:52.439> is<02:18:52.599> going<02:18:52.760> to<02:18:53.000> point<02:18:53.399> to<02:18:54.040> the<02:18:54.359> homepage
02:18:55.349 --> 02:18:55.359 align:start position:0%
link is going to point to the homepage
02:18:55.359 --> 02:18:57.429 align:start position:0%
link is going to point to the homepage
it's<02:18:55.599> also<02:18:55.800> going<02:18:55.960> to<02:18:56.120> have<02:18:56.280> a<02:18:56.479> class<02:18:56.840> name
02:18:57.429 --> 02:18:57.439 align:start position:0%
it's also going to have a class name
02:18:57.439 --> 02:19:01.870 align:start position:0%
it's also going to have a class name
equal<02:18:57.760> to<02:18:58.399> flex<02:18:59.399> Gap<02:18:59.920> D3<02:19:00.920> and<02:19:01.200> items<02:19:01.639> Das
02:19:01.870 --> 02:19:01.880 align:start position:0%
equal to flex Gap D3 and items Das
02:19:01.880 --> 02:19:05.230 align:start position:0%
equal to flex Gap D3 and items Das
Center<02:19:02.719> because<02:19:03.040> it<02:19:03.200> needs<02:19:03.479> to<02:19:03.679> Center<02:19:04.359> our
02:19:05.230 --> 02:19:05.240 align:start position:0%
Center because it needs to Center our
02:19:05.240 --> 02:19:08.389 align:start position:0%
Center because it needs to Center our
image<02:19:06.240> so<02:19:06.519> first<02:19:06.840> let's<02:19:07.120> import<02:19:07.559> this<02:19:07.760> link
02:19:08.389 --> 02:19:08.399 align:start position:0%
image so first let's import this link
02:19:08.399 --> 02:19:11.469 align:start position:0%
image so first let's import this link
from<02:19:08.760> react<02:19:09.160> router<02:19:09.519> Dom<02:19:10.040> by<02:19:10.160> saying<02:19:10.559> import
02:19:11.469 --> 02:19:11.479 align:start position:0%
from react router Dom by saying import
02:19:11.479 --> 02:19:15.190 align:start position:0%
from react router Dom by saying import
link<02:19:12.439> from<02:19:12.920> react<02:19:13.719> router
02:19:15.190 --> 02:19:15.200 align:start position:0%
link from react router
02:19:15.200 --> 02:19:17.870 align:start position:0%
link from react router
Dom<02:19:16.200> and<02:19:16.399> then<02:19:16.639> this<02:19:16.880> image<02:19:17.280> is<02:19:17.519> is<02:19:17.599> going<02:19:17.760> to
02:19:17.870 --> 02:19:17.880 align:start position:0%
Dom and then this image is is going to
02:19:17.880 --> 02:19:21.429 align:start position:0%
Dom and then this image is is going to
have<02:19:18.040> a<02:19:18.240> source<02:19:19.000> equal<02:19:19.319> to<02:19:20.280> SL
02:19:21.429 --> 02:19:21.439 align:start position:0%
have a source equal to SL
02:19:21.439 --> 02:19:23.030 align:start position:0%
have a source equal to SL
assets
02:19:23.030 --> 02:19:23.040 align:start position:0%
assets
02:19:23.040 --> 02:19:27.990 align:start position:0%
assets
slimes<02:19:24.040> SL<02:19:24.559> logo.<02:19:25.840> SVG<02:19:26.840> once<02:19:27.000> we<02:19:27.160> save<02:19:27.439> it<02:19:27.880> you
02:19:27.990 --> 02:19:28.000 align:start position:0%
slimes SL logo. SVG once we save it you
02:19:28.000 --> 02:19:31.270 align:start position:0%
slimes SL logo. SVG once we save it you
can<02:19:28.160> see<02:19:28.359> snapgram<02:19:29.160> appear<02:19:29.639> on<02:19:30.000> top<02:19:31.000> let's
02:19:31.270 --> 02:19:31.280 align:start position:0%
can see snapgram appear on top let's
02:19:31.280 --> 02:19:34.790 align:start position:0%
can see snapgram appear on top let's
also<02:19:31.519> give<02:19:31.639> it<02:19:31.760> an<02:19:31.920> Al<02:19:32.280> tag<02:19:32.519> off<02:19:33.040> logo<02:19:34.040> a<02:19:34.319> width
02:19:34.790 --> 02:19:34.800 align:start position:0%
also give it an Al tag off logo a width
02:19:34.800 --> 02:19:40.389 align:start position:0%
also give it an Al tag off logo a width
of<02:19:35.040> 130<02:19:36.040> pixels<02:19:36.760> and<02:19:37.000> a<02:19:37.280> height<02:19:37.639> of<02:19:38.240> 325<02:19:39.399> pixels
02:19:40.389 --> 02:19:40.399 align:start position:0%
of 130 pixels and a height of 325 pixels
02:19:40.399 --> 02:19:43.349 align:start position:0%
of 130 pixels and a height of 325 pixels
there<02:19:40.559> we<02:19:40.760> go<02:19:41.599> now<02:19:41.880> below<02:19:42.240> the<02:19:42.399> link<02:19:43.000> still
02:19:43.349 --> 02:19:43.359 align:start position:0%
there we go now below the link still
02:19:43.359 --> 02:19:45.150 align:start position:0%
there we go now below the link still
within<02:19:43.679> this<02:19:43.840> div<02:19:44.280> we<02:19:44.359> want<02:19:44.479> to<02:19:44.639> do<02:19:44.800> another
02:19:45.150 --> 02:19:45.160 align:start position:0%
within this div we want to do another
02:19:45.160 --> 02:19:47.629 align:start position:0%
within this div we want to do another
div<02:19:45.840> that's<02:19:46.040> going<02:19:46.200> to<02:19:46.399> have<02:19:46.559> a<02:19:46.760> class<02:19:47.080> name
02:19:47.629 --> 02:19:47.639 align:start position:0%
div that's going to have a class name
02:19:47.639 --> 02:19:50.870 align:start position:0%
div that's going to have a class name
equal<02:19:47.960> to<02:19:48.240> flex<02:19:49.240> and<02:19:49.520> a<02:19:49.760> gap<02:19:50.040> of
02:19:50.870 --> 02:19:50.880 align:start position:0%
equal to flex and a gap of
02:19:50.880 --> 02:19:54.309 align:start position:0%
equal to flex and a gap of
four<02:19:51.880> within<02:19:52.160> it<02:19:52.359> we<02:19:52.439> can<02:19:52.640> create<02:19:53.040> a<02:19:53.319> button
02:19:54.309 --> 02:19:54.319 align:start position:0%
four within it we can create a button
02:19:54.319 --> 02:19:56.150 align:start position:0%
four within it we can create a button
and<02:19:54.479> this<02:19:54.600> is<02:19:54.720> going<02:19:54.880> to<02:19:55.000> be<02:19:55.160> a<02:19:55.399> reusable
02:19:56.150 --> 02:19:56.160 align:start position:0%
and this is going to be a reusable
02:19:56.160 --> 02:19:59.349 align:start position:0%
and this is going to be a reusable
button<02:19:57.000> component<02:19:58.000> of<02:19:58.200> course<02:19:58.680> coming<02:19:59.040> from
02:19:59.349 --> 02:19:59.359 align:start position:0%
button component of course coming from
02:19:59.359 --> 02:20:03.070 align:start position:0%
button component of course coming from
Shad<02:19:59.840> CN<02:20:00.560> meaning<02:20:01.000> from<02:20:01.240> UI<02:20:01.800> button<02:20:02.800> within
02:20:03.070 --> 02:20:03.080 align:start position:0%
Shad CN meaning from UI button within
02:20:03.080 --> 02:20:05.910 align:start position:0%
Shad CN meaning from UI button within
the<02:20:03.200> button<02:20:03.800> we<02:20:03.920> can<02:20:04.080> render<02:20:04.720> the<02:20:04.920> image<02:20:05.680> that
02:20:05.910 --> 02:20:05.920 align:start position:0%
the button we can render the image that
02:20:05.920 --> 02:20:09.750 align:start position:0%
the button we can render the image that
has<02:20:06.160> a<02:20:06.399> source<02:20:07.000> equal<02:20:07.280> to<02:20:07.479> for<02:20:07.840> SL<02:20:08.319> assets<02:20:09.319> SL
02:20:09.750 --> 02:20:09.760 align:start position:0%
has a source equal to for SL assets SL
02:20:09.760 --> 02:20:14.070 align:start position:0%
has a source equal to for SL assets SL
ions<02:20:10.760> SL<02:20:11.160> log<02:20:11.399> out.<02:20:12.040> SVG<02:20:13.040> and<02:20:13.200> the<02:20:13.319> alt<02:20:13.640> tag<02:20:13.920> can
02:20:14.070 --> 02:20:14.080 align:start position:0%
ions SL log out. SVG and the alt tag can
02:20:14.080 --> 02:20:15.870 align:start position:0%
ions SL log out. SVG and the alt tag can
be<02:20:14.240> log<02:20:14.520> out<02:20:14.880> as
02:20:15.870 --> 02:20:15.880 align:start position:0%
be log out as
02:20:15.880 --> 02:20:19.110 align:start position:0%
be log out as
well<02:20:16.880> there<02:20:17.000> we<02:20:17.160> go<02:20:17.520> you<02:20:17.600> can<02:20:17.720> see<02:20:17.920> it<02:20:18.040> on<02:20:18.319> there
02:20:19.110 --> 02:20:19.120 align:start position:0%
well there we go you can see it on there
02:20:19.120 --> 02:20:22.150 align:start position:0%
well there we go you can see it on there
and<02:20:19.359> then<02:20:19.760> we<02:20:19.960> also<02:20:20.240> need<02:20:20.399> to<02:20:20.640> have<02:20:20.920> a<02:20:21.200> variant
02:20:22.150 --> 02:20:22.160 align:start position:0%
and then we also need to have a variant
02:20:22.160 --> 02:20:25.590 align:start position:0%
and then we also need to have a variant
equal<02:20:22.439> to<02:20:22.800> ghost<02:20:23.720> that's<02:20:23.920> an<02:20:24.080> interesting<02:20:24.600> one
02:20:25.590 --> 02:20:25.600 align:start position:0%
equal to ghost that's an interesting one
02:20:25.600 --> 02:20:27.910 align:start position:0%
equal to ghost that's an interesting one
we<02:20:25.720> can<02:20:25.880> give<02:20:26.000> it<02:20:26.120> a<02:20:26.319> class<02:20:26.720> name<02:20:27.359> equal<02:20:27.680> to
02:20:27.910 --> 02:20:27.920 align:start position:0%
we can give it a class name equal to
02:20:27.920 --> 02:20:31.910 align:start position:0%
we can give it a class name equal to
Shad<02:20:28.880> button<02:20:30.120> ghost<02:20:31.120> and<02:20:31.319> we<02:20:31.439> can<02:20:31.560> give<02:20:31.680> it<02:20:31.800> an
02:20:31.910 --> 02:20:31.920 align:start position:0%
Shad button ghost and we can give it an
02:20:31.920 --> 02:20:33.270 align:start position:0%
Shad button ghost and we can give it an
onclick
02:20:33.270 --> 02:20:33.280 align:start position:0%
onclick
02:20:33.280 --> 02:20:35.429 align:start position:0%
onclick
property<02:20:34.280> so<02:20:34.479> that's<02:20:34.640> going<02:20:34.800> to<02:20:34.960> be<02:20:35.240> right
02:20:35.429 --> 02:20:35.439 align:start position:0%
property so that's going to be right
02:20:35.439 --> 02:20:38.150 align:start position:0%
property so that's going to be right
here<02:20:35.680> on<02:20:36.120> click<02:20:37.040> and<02:20:37.200> we<02:20:37.319> simply<02:20:37.600> want<02:20:37.680> to<02:20:37.840> call
02:20:38.150 --> 02:20:38.160 align:start position:0%
here on click and we simply want to call
02:20:38.160 --> 02:20:41.510 align:start position:0%
here on click and we simply want to call
the<02:20:38.439> sign<02:20:38.880> out<02:20:39.640> functionality<02:20:40.640> now<02:20:40.960> this<02:20:41.120> sign
02:20:41.510 --> 02:20:41.520 align:start position:0%
the sign out functionality now this sign
02:20:41.520 --> 02:20:44.309 align:start position:0%
the sign out functionality now this sign
out<02:20:42.000> is<02:20:42.200> something<02:20:42.560> we<02:20:42.720> also<02:20:43.040> have<02:20:43.160> to<02:20:43.399> Define
02:20:44.309 --> 02:20:44.319 align:start position:0%
out is something we also have to Define
02:20:44.319 --> 02:20:47.469 align:start position:0%
out is something we also have to Define
so<02:20:44.560> we'll<02:20:44.800> have<02:20:44.920> to<02:20:45.200> go<02:20:45.640> to<02:20:45.880> our<02:20:46.319> queries
02:20:47.469 --> 02:20:47.479 align:start position:0%
so we'll have to go to our queries
02:20:47.479 --> 02:20:49.590 align:start position:0%
so we'll have to go to our queries
that's<02:20:47.680> going<02:20:47.880> to<02:20:48.000> be<02:20:48.240> within<02:20:48.560> lib<02:20:49.080> react
02:20:49.590 --> 02:20:49.600 align:start position:0%
that's going to be within lib react
02:20:49.600 --> 02:20:52.670 align:start position:0%
that's going to be within lib react
query<02:20:50.479> and<02:20:50.600> then<02:20:50.800> queries<02:20:51.160> and<02:20:51.439> mutations<02:20:52.439> and
02:20:52.670 --> 02:20:52.680 align:start position:0%
query and then queries and mutations and
02:20:52.680 --> 02:20:55.270 align:start position:0%
query and then queries and mutations and
right<02:20:52.920> here<02:20:53.319> we'll<02:20:53.560> have<02:20:53.720> to<02:20:54.000> copy<02:20:54.600> the<02:20:54.800> Ed
02:20:55.270 --> 02:20:55.280 align:start position:0%
right here we'll have to copy the Ed
02:20:55.280 --> 02:20:59.429 align:start position:0%
right here we'll have to copy the Ed
sign<02:20:55.520> in<02:20:56.120> account<02:20:57.120> duplicate<02:20:57.640> it<02:20:58.040> right<02:20:58.439> below
02:20:59.429 --> 02:20:59.439 align:start position:0%
sign in account duplicate it right below
02:20:59.439 --> 02:21:04.030 align:start position:0%
sign in account duplicate it right below
and<02:20:59.760> call<02:21:00.000> it<02:21:00.399> use<02:21:01.120> sign<02:21:01.720> out<02:21:02.760> account<02:21:03.760> and<02:21:03.920> we
02:21:04.030 --> 02:21:04.040 align:start position:0%
and call it use sign out account and we
02:21:04.040 --> 02:21:06.550 align:start position:0%
and call it use sign out account and we
simply<02:21:04.319> want<02:21:04.439> to<02:21:04.640> use<02:21:04.960> a<02:21:05.120> mutation<02:21:06.000> or<02:21:06.359> return
02:21:06.550 --> 02:21:06.560 align:start position:0%
simply want to use a mutation or return
02:21:06.560 --> 02:21:09.630 align:start position:0%
simply want to use a mutation or return
a<02:21:06.800> mutation<02:21:07.800> that<02:21:07.960> doesn't<02:21:08.280> have<02:21:08.439> to<02:21:08.960> get<02:21:09.240> any
02:21:09.630 --> 02:21:09.640 align:start position:0%
a mutation that doesn't have to get any
02:21:09.640 --> 02:21:12.630 align:start position:0%
a mutation that doesn't have to get any
properties<02:21:10.160> in<02:21:10.920> but<02:21:11.120> it<02:21:11.319> has<02:21:11.479> to<02:21:11.680> call<02:21:12.359> the
02:21:12.630 --> 02:21:12.640 align:start position:0%
properties in but it has to call the
02:21:12.640 --> 02:21:16.710 align:start position:0%
properties in but it has to call the
sign<02:21:13.479> out<02:21:14.479> account<02:21:15.359> function<02:21:16.120> so<02:21:16.280> we<02:21:16.399> can<02:21:16.560> do
02:21:16.710 --> 02:21:16.720 align:start position:0%
sign out account function so we can do
02:21:16.720 --> 02:21:20.110 align:start position:0%
sign out account function so we can do
it<02:21:16.960> just<02:21:17.399> like<02:21:17.600> so<02:21:18.399> but<02:21:18.560> of<02:21:18.760> course<02:21:19.439> this<02:21:19.960> has
02:21:20.110 --> 02:21:20.120 align:start position:0%
it just like so but of course this has
02:21:20.120 --> 02:21:23.309 align:start position:0%
it just like so but of course this has
to<02:21:20.319> come<02:21:20.600> from<02:21:21.000> aight<02:21:21.880> so<02:21:22.080> in<02:21:22.240> the<02:21:22.439> aight<02:21:23.080> we'll
02:21:23.309 --> 02:21:23.319 align:start position:0%
to come from aight so in the aight we'll
02:21:23.319 --> 02:21:25.710 align:start position:0%
to come from aight so in the aight we'll
have<02:21:23.439> to<02:21:23.600> create<02:21:23.920> a<02:21:24.160> new<02:21:24.720> function<02:21:25.399> like<02:21:25.560> we
02:21:25.710 --> 02:21:25.720 align:start position:0%
have to create a new function like we
02:21:25.720 --> 02:21:28.590 align:start position:0%
have to create a new function like we
have<02:21:25.920> sign<02:21:26.240> in<02:21:26.600> account<02:21:27.600> we'll<02:21:27.880> also<02:21:28.200> have<02:21:28.319> to
02:21:28.590 --> 02:21:28.600 align:start position:0%
have sign in account we'll also have to
02:21:28.600 --> 02:21:31.950 align:start position:0%
have sign in account we'll also have to
have<02:21:29.000> another<02:21:30.000> export<02:21:30.600> async
02:21:31.950 --> 02:21:31.960 align:start position:0%
have another export async
02:21:31.960 --> 02:21:35.429 align:start position:0%
have another export async
function<02:21:32.960> sign<02:21:33.680> out
02:21:35.429 --> 02:21:35.439 align:start position:0%
function sign out
02:21:35.439 --> 02:21:38.190 align:start position:0%
function sign out
account<02:21:36.439> we<02:21:36.520> can<02:21:36.720> open<02:21:36.960> up<02:21:37.080> a<02:21:37.240> new<02:21:37.520> try<02:21:37.840> and
02:21:38.190 --> 02:21:38.200 align:start position:0%
account we can open up a new try and
02:21:38.200 --> 02:21:41.910 align:start position:0%
account we can open up a new try and
catch<02:21:38.840> block<02:21:39.840> consol<02:21:40.399> log<02:21:40.680> the<02:21:40.880> error<02:21:41.680> right
02:21:41.910 --> 02:21:41.920 align:start position:0%
catch block consol log the error right
02:21:41.920 --> 02:21:45.190 align:start position:0%
catch block consol log the error right
here<02:21:42.680> and<02:21:42.840> then<02:21:43.000> on<02:21:43.280> try<02:21:44.080> we<02:21:44.200> can<02:21:44.359> say<02:21:44.680> con
02:21:45.190 --> 02:21:45.200 align:start position:0%
here and then on try we can say con
02:21:45.200 --> 02:21:51.030 align:start position:0%
here and then on try we can say con
session<02:21:46.120> is<02:21:46.319> equal<02:21:46.640> to<02:21:47.479> await<02:21:48.560> account.
02:21:51.030 --> 02:21:51.040 align:start position:0%
session is equal to await account.
02:21:51.040 --> 02:21:54.950 align:start position:0%
session is equal to await account.
delete<02:21:52.439> session<02:21:53.439> and<02:21:53.560> then<02:21:53.720> we<02:21:53.840> need<02:21:54.000> to<02:21:54.280> pass
02:21:54.950 --> 02:21:54.960 align:start position:0%
delete session and then we need to pass
02:21:54.960 --> 02:21:57.389 align:start position:0%
delete session and then we need to pass
current<02:21:55.960> this<02:21:56.080> is<02:21:56.240> so<02:21:56.479> cool<02:21:56.840> so<02:21:57.040> this<02:21:57.160> was
02:21:57.389 --> 02:21:57.399 align:start position:0%
current this is so cool so this was
02:21:57.399 --> 02:22:00.270 align:start position:0%
current this is so cool so this was
provided<02:21:57.800> to<02:21:58.040> us<02:21:58.640> by<02:21:59.040> app<02:21:59.439> right<02:21:59.840> so<02:22:00.000> we<02:22:00.120> can
02:22:00.270 --> 02:22:00.280 align:start position:0%
provided to us by app right so we can
02:22:00.280 --> 02:22:02.469 align:start position:0%
provided to us by app right so we can
delete<02:22:00.640> the<02:22:00.840> session<02:22:01.680> and<02:22:01.840> then<02:22:01.960> we<02:22:02.080> can
02:22:02.469 --> 02:22:02.479 align:start position:0%
delete the session and then we can
02:22:02.479 --> 02:22:04.309 align:start position:0%
delete the session and then we can
return<02:22:02.880> deleted
02:22:04.309 --> 02:22:04.319 align:start position:0%
return deleted
02:22:04.319 --> 02:22:07.590 align:start position:0%
return deleted
session<02:22:05.319> now<02:22:06.080> we<02:22:06.240> have<02:22:06.479> this<02:22:06.680> sign<02:22:06.960> out
02:22:07.590 --> 02:22:07.600 align:start position:0%
session now we have this sign out
02:22:07.600 --> 02:22:10.230 align:start position:0%
session now we have this sign out
account<02:22:08.600> within<02:22:09.000> queries<02:22:09.359> and<02:22:09.520> mutations<02:22:10.120> we
02:22:10.230 --> 02:22:10.240 align:start position:0%
account within queries and mutations we
02:22:10.240 --> 02:22:13.230 align:start position:0%
account within queries and mutations we
can<02:22:10.479> import<02:22:10.840> it<02:22:11.200> from<02:22:11.520> app<02:22:11.960> right<02:22:12.960> and<02:22:13.120> we
02:22:13.230 --> 02:22:13.240 align:start position:0%
can import it from app right and we
02:22:13.240 --> 02:22:14.990 align:start position:0%
can import it from app right and we
don't<02:22:13.439> have<02:22:13.560> to<02:22:13.720> call<02:22:13.960> it<02:22:14.280> because<02:22:14.760> it's<02:22:14.920> going
02:22:14.990 --> 02:22:15.000 align:start position:0%
don't have to call it because it's going
02:22:15.000 --> 02:22:17.429 align:start position:0%
don't have to call it because it's going
to<02:22:15.080> be<02:22:15.200> self<02:22:15.640> calling<02:22:16.000> function<02:22:16.800> or<02:22:17.240> rather
02:22:17.429 --> 02:22:17.439 align:start position:0%
to be self calling function or rather
02:22:17.439 --> 02:22:19.389 align:start position:0%
to be self calling function or rather
just<02:22:17.560> a<02:22:17.680> function<02:22:18.000> declaration<02:22:18.640> here<02:22:19.280> and
02:22:19.389 --> 02:22:19.399 align:start position:0%
just a function declaration here and
02:22:19.399 --> 02:22:21.510 align:start position:0%
just a function declaration here and
then<02:22:19.600> going<02:22:19.960> back<02:22:20.120> to<02:22:20.280> the<02:22:20.439> top<02:22:20.680> bar<02:22:21.120> we<02:22:21.240> can
02:22:21.510 --> 02:22:21.520 align:start position:0%
then going back to the top bar we can
02:22:21.520 --> 02:22:24.990 align:start position:0%
then going back to the top bar we can
Define<02:22:22.359> that<02:22:23.160> mutation<02:22:24.160> we<02:22:24.280> can<02:22:24.439> do<02:22:24.680> that<02:22:24.840> by
02:22:24.990 --> 02:22:25.000 align:start position:0%
Define that mutation we can do that by
02:22:25.000 --> 02:22:28.750 align:start position:0%
Define that mutation we can do that by
going<02:22:25.319> here<02:22:25.479> to<02:22:25.640> the<02:22:25.880> top<02:22:26.560> and<02:22:26.760> saying<02:22:27.760> const
02:22:28.750 --> 02:22:28.760 align:start position:0%
going here to the top and saying const
02:22:28.760 --> 02:22:32.429 align:start position:0%
going here to the top and saying const
mutate<02:22:29.720> in<02:22:29.920> this<02:22:30.160> case<02:22:30.399> it's<02:22:30.560> going<02:22:30.760> to<02:22:31.200> sign
02:22:32.429 --> 02:22:32.439 align:start position:0%
mutate in this case it's going to sign
02:22:32.439 --> 02:22:35.309 align:start position:0%
mutate in this case it's going to sign
out<02:22:33.439> we're<02:22:33.600> going<02:22:33.720> to<02:22:34.040> get<02:22:34.280> the<02:22:34.479> is<02:22:34.840> Success
02:22:35.309 --> 02:22:35.319 align:start position:0%
out we're going to get the is Success
02:22:35.319 --> 02:22:37.349 align:start position:0%
out we're going to get the is Success
variable<02:22:35.840> as<02:22:36.000> well<02:22:36.640> and<02:22:36.800> that's<02:22:36.960> going<02:22:37.040> to<02:22:37.160> be
02:22:37.349 --> 02:22:37.359 align:start position:0%
variable as well and that's going to be
02:22:37.359 --> 02:22:40.910 align:start position:0%
variable as well and that's going to be
equal<02:22:37.600> to<02:22:37.840> use<02:22:38.439> sign<02:22:39.160> out<02:22:39.920> account<02:22:40.680> coming
02:22:40.910 --> 02:22:40.920 align:start position:0%
equal to use sign out account coming
02:22:40.920 --> 02:22:44.750 align:start position:0%
equal to use sign out account coming
from<02:22:41.240> lib<02:22:41.720> react<02:22:42.200> query<02:22:42.920> queries<02:22:43.399> and
02:22:44.750 --> 02:22:44.760 align:start position:0%
from lib react query queries and
02:22:44.760 --> 02:22:47.190 align:start position:0%
from lib react query queries and
mutations<02:22:45.760> and<02:22:45.920> now<02:22:46.200> we<02:22:46.280> can<02:22:46.439> call<02:22:46.680> the<02:22:46.800> sign
02:22:47.190 --> 02:22:47.200 align:start position:0%
mutations and now we can call the sign
02:22:47.200 --> 02:22:51.550 align:start position:0%
mutations and now we can call the sign
now<02:22:47.560> on<02:22:48.439> click<02:22:49.439> and<02:22:49.560> we<02:22:49.680> can<02:22:49.880> also<02:22:50.200> make<02:22:50.359> it<02:22:51.040> a
02:22:51.550 --> 02:22:51.560 align:start position:0%
now on click and we can also make it a
02:22:51.560 --> 02:22:55.110 align:start position:0%
now on click and we can also make it a
an<02:22:51.760> actual<02:22:52.200> function<02:22:53.200> like<02:22:53.680> so<02:22:54.479> and<02:22:54.640> call<02:22:54.840> it
02:22:55.110 --> 02:22:55.120 align:start position:0%
an actual function like so and call it
02:22:55.120 --> 02:22:57.750 align:start position:0%
an actual function like so and call it
here<02:22:55.800> there<02:22:56.000> we<02:22:56.160> go<02:22:56.920> so<02:22:57.120> now<02:22:57.280> we<02:22:57.359> can<02:22:57.479> see<02:22:57.640> the
02:22:57.750 --> 02:22:57.760 align:start position:0%
here there we go so now we can see the
02:22:57.760 --> 02:23:01.110 align:start position:0%
here there we go so now we can see the
log<02:22:58.000> out<02:22:58.280> button<02:22:58.840> as<02:22:59.160> well<02:23:00.160> here<02:23:00.520> we<02:23:00.720> also<02:23:01.000> want
02:23:01.110 --> 02:23:01.120 align:start position:0%
log out button as well here we also want
02:23:01.120 --> 02:23:05.030 align:start position:0%
log out button as well here we also want
to<02:23:01.319> add<02:23:01.600> a<02:23:01.800> use<02:23:02.160> effect<02:23:02.600> so<02:23:02.760> we<02:23:02.840> can<02:23:02.960> say<02:23:03.319> use
02:23:05.030 --> 02:23:05.040 align:start position:0%
to add a use effect so we can say use
02:23:05.040 --> 02:23:08.750 align:start position:0%
to add a use effect so we can say use
effect<02:23:06.040> and<02:23:06.520> if<02:23:07.080> we<02:23:07.240> have<02:23:07.760> successfully
02:23:08.750 --> 02:23:08.760 align:start position:0%
effect and if we have successfully
02:23:08.760 --> 02:23:12.030 align:start position:0%
effect and if we have successfully
navigated<02:23:09.439> so<02:23:09.760> if<02:23:10.080> is<02:23:10.439> Success<02:23:11.439> then<02:23:11.800> we<02:23:11.920> want
02:23:12.030 --> 02:23:12.040 align:start position:0%
navigated so if is Success then we want
02:23:12.040 --> 02:23:16.070 align:start position:0%
navigated so if is Success then we want
to<02:23:12.200> use<02:23:12.439> the<02:23:12.600> navigate<02:23:13.479> so<02:23:13.760> right<02:23:14.000> here<02:23:14.520> we<02:23:14.640> can
02:23:16.070 --> 02:23:16.080 align:start position:0%
to use the navigate so right here we can
02:23:16.080 --> 02:23:20.070 align:start position:0%
to use the navigate so right here we can
import<02:23:17.160> const<02:23:17.960> so<02:23:18.160> at<02:23:18.319> the<02:23:18.520> top<02:23:18.880> we<02:23:19.000> can<02:23:19.240> import
02:23:20.070 --> 02:23:20.080 align:start position:0%
import const so at the top we can import
02:23:20.080 --> 02:23:23.670 align:start position:0%
import const so at the top we can import
use<02:23:20.680> navigate<02:23:21.600> from<02:23:21.800> react<02:23:22.359> Rd<02:23:23.359> we<02:23:23.439> can
02:23:23.670 --> 02:23:23.680 align:start position:0%
use navigate from react Rd we can
02:23:23.680 --> 02:23:26.590 align:start position:0%
use navigate from react Rd we can
declare<02:23:24.080> it<02:23:24.240> as<02:23:24.359> a<02:23:24.520> function<02:23:25.000> con<02:23:25.399> navigate<02:23:26.359> is
02:23:26.590 --> 02:23:26.600 align:start position:0%
declare it as a function con navigate is
02:23:26.600 --> 02:23:30.389 align:start position:0%
declare it as a function con navigate is
equal<02:23:26.880> to<02:23:27.120> use<02:23:27.600> navigate<02:23:28.600> and<02:23:28.800> then<02:23:29.439> if<02:23:30.120> is
02:23:30.389 --> 02:23:30.399 align:start position:0%
equal to use navigate and then if is
02:23:30.399 --> 02:23:34.030 align:start position:0%
equal to use navigate and then if is
Success<02:23:31.240> we<02:23:31.359> can<02:23:31.479> say<02:23:31.800> navigate<02:23:32.800> Z<02:23:33.800> this<02:23:33.920> is
02:23:34.030 --> 02:23:34.040 align:start position:0%
Success we can say navigate Z this is
02:23:34.040 --> 02:23:36.349 align:start position:0%
Success we can say navigate Z this is
going<02:23:34.200> to<02:23:34.399> navigate<02:23:34.880> us<02:23:35.240> to<02:23:35.479> the<02:23:35.760> sign<02:23:36.000> up<02:23:36.200> or
02:23:36.349 --> 02:23:36.359 align:start position:0%
going to navigate us to the sign up or
02:23:36.359 --> 02:23:39.110 align:start position:0%
going to navigate us to the sign up or
the<02:23:36.520> signin<02:23:36.960> screen<02:23:37.880> and<02:23:38.000> we<02:23:38.160> also<02:23:38.359> need<02:23:38.520> to
02:23:39.110 --> 02:23:39.120 align:start position:0%
the signin screen and we also need to
02:23:39.120 --> 02:23:42.070 align:start position:0%
the signin screen and we also need to
add<02:23:40.120> the<02:23:40.319> dependency<02:23:40.800> array<02:23:41.399> or<02:23:41.600> we<02:23:41.680> can<02:23:41.840> check
02:23:42.070 --> 02:23:42.080 align:start position:0%
add the dependency array or we can check
02:23:42.080 --> 02:23:45.030 align:start position:0%
add the dependency array or we can check
for<02:23:42.319> is<02:23:42.600> success<02:23:43.520> and<02:23:43.640> then<02:23:43.880> import<02:23:44.640> use
02:23:45.030 --> 02:23:45.040 align:start position:0%
for is success and then import use
02:23:45.040 --> 02:23:48.150 align:start position:0%
for is success and then import use
effect<02:23:45.520> from<02:23:45.840> react<02:23:46.479> so<02:23:46.720> the<02:23:46.840> task<02:23:47.520> we<02:23:47.600> can
02:23:48.150 --> 02:23:48.160 align:start position:0%
effect from react so the task we can
02:23:48.160 --> 02:23:51.830 align:start position:0%
effect from react so the task we can
import<02:23:49.160> use<02:23:49.880> effect<02:23:50.880> coming
02:23:51.830 --> 02:23:51.840 align:start position:0%
import use effect coming
02:23:51.840 --> 02:23:53.870 align:start position:0%
import use effect coming
from
02:23:53.870 --> 02:23:53.880 align:start position:0%
from
02:23:53.880 --> 02:23:57.990 align:start position:0%
from
react<02:23:54.880> there<02:23:55.319> we<02:23:55.960> go<02:23:56.960> finally<02:23:57.399> we<02:23:57.479> can<02:23:57.680> also
02:23:57.990 --> 02:23:58.000 align:start position:0%
react there we go finally we can also
02:23:58.000 --> 02:24:00.469 align:start position:0%
react there we go finally we can also
add<02:23:58.319> a<02:23:58.560> profile<02:23:58.960> photo<02:23:59.600> that<02:23:59.720> we<02:23:59.840> can<02:24:00.040> click<02:24:00.319> to
02:24:00.469 --> 02:24:00.479 align:start position:0%
add a profile photo that we can click to
02:24:00.479 --> 02:24:02.710 align:start position:0%
add a profile photo that we can click to
go<02:24:00.600> to<02:24:00.760> our<02:24:01.040> profile<02:24:01.680> so<02:24:02.000> right<02:24:02.240> below<02:24:02.560> the
02:24:02.710 --> 02:24:02.720 align:start position:0%
go to our profile so right below the
02:24:02.720 --> 02:24:05.630 align:start position:0%
go to our profile so right below the
button<02:24:03.359> we<02:24:03.479> can<02:24:03.680> add<02:24:03.840> a<02:24:04.040> link<02:24:05.040> that's<02:24:05.240> going<02:24:05.399> to
02:24:05.630 --> 02:24:05.640 align:start position:0%
button we can add a link that's going to
02:24:05.640 --> 02:24:09.830 align:start position:0%
button we can add a link that's going to
have<02:24:05.840> a<02:24:06.439> two<02:24:07.439> and<02:24:07.680> then<02:24:07.960> we<02:24:08.080> want<02:24:08.200> to<02:24:08.399> go<02:24:08.720> to<02:24:09.359> for
02:24:09.830 --> 02:24:09.840 align:start position:0%
have a two and then we want to go to for
02:24:09.840 --> 02:24:13.309 align:start position:0%
have a two and then we want to go to for
SL<02:24:10.319> profile<02:24:11.200> but<02:24:11.399> now<02:24:11.680> how<02:24:11.880> do<02:24:12.040> we<02:24:12.200> get<02:24:12.399> the<02:24:12.640> ID
02:24:13.309 --> 02:24:13.319 align:start position:0%
SL profile but now how do we get the ID
02:24:13.319 --> 02:24:15.750 align:start position:0%
SL profile but now how do we get the ID
of<02:24:13.439> the<02:24:13.600> currently<02:24:14.000> logged<02:24:14.319> in<02:24:14.520> user<02:24:15.439> well
02:24:15.750 --> 02:24:15.760 align:start position:0%
of the currently logged in user well
02:24:15.760 --> 02:24:18.309 align:start position:0%
of the currently logged in user well
thankfully<02:24:16.359> we<02:24:16.520> have<02:24:16.640> created<02:24:17.160> our<02:24:17.439> context
02:24:18.309 --> 02:24:18.319 align:start position:0%
thankfully we have created our context
02:24:18.319 --> 02:24:20.710 align:start position:0%
thankfully we have created our context
so<02:24:18.680> right<02:24:18.880> here<02:24:19.080> at<02:24:19.240> the<02:24:19.479> top<02:24:20.000> we<02:24:20.120> can<02:24:20.319> say
02:24:20.710 --> 02:24:20.720 align:start position:0%
so right here at the top we can say
02:24:20.720 --> 02:24:26.550 align:start position:0%
so right here at the top we can say
const<02:24:21.720> user<02:24:22.720> is<02:24:22.960> equal<02:24:23.279> to<02:24:24.040> use<02:24:24.720> user<02:24:25.640> context
02:24:26.550 --> 02:24:26.560 align:start position:0%
const user is equal to use user context
02:24:26.560 --> 02:24:30.469 align:start position:0%
const user is equal to use user context
which<02:24:26.720> we<02:24:26.880> have<02:24:27.000> to<02:24:27.279> import<02:24:27.960> from<02:24:28.760> atcontext
02:24:30.469 --> 02:24:30.479 align:start position:0%
which we have to import from atcontext
02:24:30.479 --> 02:24:34.670 align:start position:0%
which we have to import from atcontext
SLO<02:24:31.640> context<02:24:32.640> and<02:24:32.800> then<02:24:33.359> right<02:24:33.600> here<02:24:34.439> we<02:24:34.560> can
02:24:34.670 --> 02:24:34.680 align:start position:0%
SLO context and then right here we can
02:24:34.680 --> 02:24:36.990 align:start position:0%
SLO context and then right here we can
use<02:24:34.880> dollar<02:24:35.200> sign<02:24:35.359> and<02:24:35.520> curly<02:24:35.840> braces<02:24:36.840> and
02:24:36.990 --> 02:24:37.000 align:start position:0%
use dollar sign and curly braces and
02:24:37.000 --> 02:24:39.030 align:start position:0%
use dollar sign and curly braces and
then<02:24:37.160> say<02:24:37.479> user.
02:24:39.030 --> 02:24:39.040 align:start position:0%
then say user.
02:24:39.040 --> 02:24:41.670 align:start position:0%
then say user.
ID<02:24:40.040> we<02:24:40.120> can<02:24:40.279> also<02:24:40.520> give<02:24:40.720> this<02:24:40.840> link<02:24:41.120> a<02:24:41.359> class
02:24:41.670 --> 02:24:41.680 align:start position:0%
ID we can also give this link a class
02:24:41.680 --> 02:24:46.590 align:start position:0%
ID we can also give this link a class
name<02:24:42.479> equal<02:24:42.800> to<02:24:43.120> flex<02:24:44.200> Center<02:24:45.200> Gap<02:24:45.520> 3<02:24:46.439> and
02:24:46.590 --> 02:24:46.600 align:start position:0%
name equal to flex Center Gap 3 and
02:24:46.600 --> 02:24:48.630 align:start position:0%
name equal to flex Center Gap 3 and
write<02:24:47.040> within<02:24:47.319> the<02:24:47.439> link<02:24:47.840> we<02:24:47.960> can<02:24:48.080> render<02:24:48.359> an
02:24:48.630 --> 02:24:48.640 align:start position:0%
write within the link we can render an
02:24:48.640 --> 02:24:51.349 align:start position:0%
write within the link we can render an
image<02:24:49.640> that's<02:24:49.840> going<02:24:50.000> to<02:24:50.200> have<02:24:50.439> a<02:24:50.680> source
02:24:51.349 --> 02:24:51.359 align:start position:0%
image that's going to have a source
02:24:51.359 --> 02:24:56.550 align:start position:0%
image that's going to have a source
equal<02:24:51.720> to<02:24:52.720> either<02:24:53.760> user.<02:24:54.760> image<02:24:55.240> URL<02:24:56.240> or<02:24:56.439> we
02:24:56.550 --> 02:24:56.560 align:start position:0%
equal to either user. image URL or we
02:24:56.560 --> 02:24:58.510 align:start position:0%
equal to either user. image URL or we
can<02:24:56.680> use<02:24:56.880> some<02:24:57.040> kind<02:24:57.160> of<02:24:57.240> a<02:24:57.439> placeholder<02:24:58.359> just
02:24:58.510 --> 02:24:58.520 align:start position:0%
can use some kind of a placeholder just
02:24:58.520 --> 02:25:03.190 align:start position:0%
can use some kind of a placeholder just
to<02:24:58.680> be<02:24:58.880> safe<02:24:59.359> so<02:24:59.560> that's<02:24:59.760> for/<02:25:00.600> assets<02:25:01.600> SL
02:25:03.190 --> 02:25:03.200 align:start position:0%
to be safe so that's for/ assets SL
02:25:03.200 --> 02:25:06.910 align:start position:0%
to be safe so that's for/ assets SL
imagesprofile<02:25:04.200> dplace<02:25:05.120> holder.
02:25:06.910 --> 02:25:06.920 align:start position:0%
imagesprofile dplace holder.
02:25:06.920 --> 02:25:11.550 align:start position:0%
imagesprofile dplace holder.
SVG<02:25:07.920> if<02:25:08.000> we<02:25:08.160> save<02:25:08.439> it<02:25:09.200> we<02:25:09.319> can<02:25:09.439> see<02:25:09.640> our<02:25:09.960> huge
02:25:11.550 --> 02:25:11.560 align:start position:0%
SVG if we save it we can see our huge
02:25:11.560 --> 02:25:14.950 align:start position:0%
SVG if we save it we can see our huge
TR<02:25:12.560> soon<02:25:12.880> enough<02:25:13.120> we'll<02:25:13.319> figure<02:25:13.560> out<02:25:13.840> why<02:25:14.120> TR<02:25:14.880> I
02:25:14.950 --> 02:25:14.960 align:start position:0%
TR soon enough we'll figure out why TR I
02:25:14.960 --> 02:25:16.469 align:start position:0%
TR soon enough we'll figure out why TR I
don't<02:25:15.160> think<02:25:15.319> I've<02:25:15.520> called<02:25:15.840> myself<02:25:16.200> something
02:25:16.469 --> 02:25:16.479 align:start position:0%
don't think I've called myself something
02:25:16.479 --> 02:25:19.790 align:start position:0%
don't think I've called myself something
with<02:25:16.640> t<02:25:17.000> are<02:25:17.560> oh<02:25:17.760> I<02:25:18.000> have<02:25:18.439> it's<02:25:18.640> the<02:25:18.800> real<02:25:19.160> JSM
02:25:19.790 --> 02:25:19.800 align:start position:0%
with t are oh I have it's the real JSM
02:25:19.800 --> 02:25:22.429 align:start position:0%
with t are oh I have it's the real JSM
so<02:25:20.000> that's<02:25:20.120> why<02:25:20.279> it<02:25:20.479> has<02:25:20.680> those<02:25:21.040> initials<02:25:22.040> alt
02:25:22.429 --> 02:25:22.439 align:start position:0%
so that's why it has those initials alt
02:25:22.439 --> 02:25:24.950 align:start position:0%
so that's why it has those initials alt
is<02:25:22.560> going<02:25:22.720> to<02:25:22.840> be<02:25:23.160> profile<02:25:24.160> and<02:25:24.279> then<02:25:24.560> class
02:25:24.950 --> 02:25:24.960 align:start position:0%
is going to be profile and then class
02:25:24.960 --> 02:25:27.550 align:start position:0%
is going to be profile and then class
name<02:25:25.319> is<02:25:25.520> going<02:25:25.720> to<02:25:25.920> be
02:25:27.550 --> 02:25:27.560 align:start position:0%
name is going to be
02:25:27.560 --> 02:25:30.150 align:start position:0%
name is going to be
h-8<02:25:28.560> for<02:25:28.840> height
02:25:30.150 --> 02:25:30.160 align:start position:0%
h-8 for height
02:25:30.160 --> 02:25:32.670 align:start position:0%
h-8 for height
w-8<02:25:31.160> and<02:25:31.279> then<02:25:31.439> Tailwind<02:25:32.040> allows<02:25:32.319> us<02:25:32.439> to<02:25:32.560> make
02:25:32.670 --> 02:25:32.680 align:start position:0%
w-8 and then Tailwind allows us to make
02:25:32.680 --> 02:25:34.790 align:start position:0%
w-8 and then Tailwind allows us to make
it<02:25:32.920> rounded<02:25:33.399> really<02:25:33.680> easily<02:25:34.279> by<02:25:34.439> saying
02:25:34.790 --> 02:25:34.800 align:start position:0%
it rounded really easily by saying
02:25:34.800 --> 02:25:38.150 align:start position:0%
it rounded really easily by saying
rounded<02:25:35.399> Das<02:25:35.880> full<02:25:36.880> and<02:25:37.080> now<02:25:37.319> we<02:25:37.479> have<02:25:37.640> our<02:25:37.880> top
02:25:38.150 --> 02:25:38.160 align:start position:0%
rounded Das full and now we have our top
02:25:38.160 --> 02:25:41.030 align:start position:0%
rounded Das full and now we have our top
bar<02:25:38.840> you<02:25:39.000> might<02:25:39.160> have<02:25:39.279> been<02:25:39.600> wondering<02:25:40.600> where
02:25:41.030 --> 02:25:41.040 align:start position:0%
bar you might have been wondering where
02:25:41.040 --> 02:25:43.309 align:start position:0%
bar you might have been wondering where
is<02:25:41.200> this<02:25:41.359> stop<02:25:41.680> bar<02:25:42.000> right<02:25:42.399> on<02:25:42.560> the<02:25:42.720> desktop<02:25:43.200> we
02:25:43.309 --> 02:25:43.319 align:start position:0%
is this stop bar right on the desktop we
02:25:43.319 --> 02:25:45.389 align:start position:0%
is this stop bar right on the desktop we
don't<02:25:43.600> have<02:25:43.760> it<02:25:44.399> but<02:25:44.520> we're<02:25:44.760> immediately
02:25:45.389 --> 02:25:45.399 align:start position:0%
don't have it but we're immediately
02:25:45.399 --> 02:25:47.870 align:start position:0%
don't have it but we're immediately
building<02:25:45.840> this<02:25:46.040> application<02:25:46.920> so<02:25:47.240> it<02:25:47.439> works
02:25:47.870 --> 02:25:47.880 align:start position:0%
building this application so it works
02:25:47.880 --> 02:25:50.790 align:start position:0%
building this application so it works
well<02:25:48.359> not<02:25:48.680> well<02:25:49.080> so<02:25:49.279> it<02:25:49.399> works<02:25:49.840> phenomenally
02:25:50.790 --> 02:25:50.800 align:start position:0%
well not well so it works phenomenally
02:25:50.800 --> 02:25:53.389 align:start position:0%
well not well so it works phenomenally
on<02:25:51.000> mobile<02:25:51.399> devices<02:25:52.319> so<02:25:52.560> that's<02:25:52.800> why<02:25:53.000> here<02:25:53.200> in
02:25:53.389 --> 02:25:53.399 align:start position:0%
on mobile devices so that's why here in
02:25:53.399 --> 02:25:57.110 align:start position:0%
on mobile devices so that's why here in
Mobile<02:25:54.120> this<02:25:54.359> phenomenal<02:25:55.120> top<02:25:55.399> bar<02:25:56.120> appears
02:25:57.110 --> 02:25:57.120 align:start position:0%
Mobile this phenomenal top bar appears
02:25:57.120 --> 02:25:59.269 align:start position:0%
Mobile this phenomenal top bar appears
that's<02:25:57.399> great<02:25:58.240> and<02:25:58.479> now<02:25:58.640> we<02:25:58.800> also<02:25:59.000> have<02:25:59.160> the
02:25:59.269 --> 02:25:59.279 align:start position:0%
that's great and now we also have the
02:25:59.279 --> 02:26:02.230 align:start position:0%
that's great and now we also have the
log<02:25:59.520> out<02:25:59.760> functionality<02:26:00.600> so<02:26:00.760> if<02:26:00.880> we<02:26:01.040> click<02:26:01.279> it
02:26:02.230 --> 02:26:02.240 align:start position:0%
log out functionality so if we click it
02:26:02.240 --> 02:26:04.790 align:start position:0%
log out functionality so if we click it
actually<02:26:02.560> redirects<02:26:03.319> back<02:26:04.240> and<02:26:04.479> we<02:26:04.600> can
02:26:04.790 --> 02:26:04.800 align:start position:0%
actually redirects back and we can
02:26:04.800 --> 02:26:08.110 align:start position:0%
actually redirects back and we can
immediately<02:26:05.680> jump<02:26:06.359> back<02:26:06.720> in<02:26:07.520> everything<02:26:07.920> is
02:26:08.110 --> 02:26:08.120 align:start position:0%
immediately jump back in everything is
02:26:08.120 --> 02:26:11.070 align:start position:0%
immediately jump back in everything is
working<02:26:08.520> flawlessly<02:26:09.240> so<02:26:09.479> far<02:26:10.120> the<02:26:10.359> top<02:26:10.600> bar<02:26:10.880> is
02:26:11.070 --> 02:26:11.080 align:start position:0%
working flawlessly so far the top bar is
02:26:11.080 --> 02:26:14.030 align:start position:0%
working flawlessly so far the top bar is
done<02:26:11.720> let's<02:26:12.000> focus<02:26:12.399> on<02:26:12.560> the<02:26:12.840> left<02:26:13.279> sidebar
02:26:14.030 --> 02:26:14.040 align:start position:0%
done let's focus on the left sidebar
02:26:14.040 --> 02:26:16.110 align:start position:0%
done let's focus on the left sidebar
next<02:26:15.000> here<02:26:15.120> is<02:26:15.279> where<02:26:15.399> we're<02:26:15.520> going<02:26:15.600> to<02:26:15.800> have
02:26:16.110 --> 02:26:16.120 align:start position:0%
next here is where we're going to have
02:26:16.120 --> 02:26:19.710 align:start position:0%
next here is where we're going to have
all<02:26:16.399> of<02:26:16.560> the<02:26:16.920> links<02:26:17.720> that<02:26:17.880> we<02:26:18.120> have<02:26:18.720> right
02:26:19.710 --> 02:26:19.720 align:start position:0%
all of the links that we have right
02:26:19.720 --> 02:26:22.190 align:start position:0%
all of the links that we have right
here<02:26:20.720> to<02:26:21.080> get<02:26:21.279> started<02:26:21.640> with<02:26:21.800> the<02:26:21.960> left
02:26:22.190 --> 02:26:22.200 align:start position:0%
here to get started with the left
02:26:22.200 --> 02:26:24.150 align:start position:0%
here to get started with the left
sidebar<02:26:22.760> we'll<02:26:23.040> have<02:26:23.160> to<02:26:23.359> keep<02:26:23.520> our<02:26:23.720> window
02:26:24.150 --> 02:26:24.160 align:start position:0%
sidebar we'll have to keep our window
02:26:24.160 --> 02:26:26.510 align:start position:0%
sidebar we'll have to keep our window
expanded<02:26:24.960> so<02:26:25.080> we<02:26:25.200> can<02:26:25.319> see<02:26:25.520> it<02:26:25.680> on<02:26:25.840> the<02:26:26.040> desktop
02:26:26.510 --> 02:26:26.520 align:start position:0%
expanded so we can see it on the desktop
02:26:26.520 --> 02:26:28.950 align:start position:0%
expanded so we can see it on the desktop
mode<02:26:27.080> which<02:26:27.240> we<02:26:27.319> can<02:26:27.560> see<02:26:28.120> right<02:26:28.399> here<02:26:28.720> I<02:26:28.840> guess
02:26:28.950 --> 02:26:28.960 align:start position:0%
mode which we can see right here I guess
02:26:28.960 --> 02:26:31.750 align:start position:0%
mode which we can see right here I guess
it's<02:26:29.200> tablet<02:26:29.680> as<02:26:29.840> well<02:26:30.840> and<02:26:31.040> then<02:26:31.240> we<02:26:31.359> can<02:26:31.479> move
02:26:31.750 --> 02:26:31.760 align:start position:0%
it's tablet as well and then we can move
02:26:31.760 --> 02:26:34.830 align:start position:0%
it's tablet as well and then we can move
our<02:26:31.960> code<02:26:32.359> just<02:26:32.560> a<02:26:32.840> bit<02:26:33.520> to<02:26:33.760> the<02:26:33.960> left<02:26:34.479> there<02:26:34.640> we
02:26:34.830 --> 02:26:34.840 align:start position:0%
our code just a bit to the left there we
02:26:34.840 --> 02:26:37.990 align:start position:0%
our code just a bit to the left there we
go<02:26:35.600> so<02:26:35.840> let's<02:26:36.080> start<02:26:36.439> with<02:26:36.640> creating<02:26:37.080> a<02:26:37.279> nav
02:26:37.990 --> 02:26:38.000 align:start position:0%
go so let's start with creating a nav
02:26:38.000 --> 02:26:39.790 align:start position:0%
go so let's start with creating a nav
because<02:26:38.439> yeah<02:26:38.640> even<02:26:38.840> though<02:26:38.960> it's<02:26:39.040> a<02:26:39.240> sidebar
02:26:39.790 --> 02:26:39.800 align:start position:0%
because yeah even though it's a sidebar
02:26:39.800 --> 02:26:42.429 align:start position:0%
because yeah even though it's a sidebar
it<02:26:39.880> is<02:26:40.000> a<02:26:40.160> navigation<02:26:40.760> bar<02:26:41.760> we<02:26:41.880> can<02:26:42.000> give<02:26:42.120> it<02:26:42.240> a
02:26:42.429 --> 02:26:42.439 align:start position:0%
it is a navigation bar we can give it a
02:26:42.439 --> 02:26:46.830 align:start position:0%
it is a navigation bar we can give it a
class<02:26:42.800> name<02:26:43.399> equal<02:26:43.760> to<02:26:44.560> left<02:26:45.399> sidebar<02:26:46.399> we<02:26:46.520> can
02:26:46.830 --> 02:26:46.840 align:start position:0%
class name equal to left sidebar we can
02:26:46.840 --> 02:26:49.230 align:start position:0%
class name equal to left sidebar we can
save<02:26:47.080> it<02:26:47.319> and<02:26:47.520> go<02:26:47.800> back<02:26:48.399> and<02:26:48.520> now<02:26:48.840> here<02:26:49.040> you<02:26:49.120> can
02:26:49.230 --> 02:26:49.240 align:start position:0%
save it and go back and now here you can
02:26:49.240 --> 02:26:51.429 align:start position:0%
save it and go back and now here you can
see<02:26:49.520> immediately<02:26:50.080> that<02:26:50.279> this<02:26:50.479> shifted<02:26:51.279> the
02:26:51.429 --> 02:26:51.439 align:start position:0%
see immediately that this shifted the
02:26:51.439 --> 02:26:53.910 align:start position:0%
see immediately that this shifted the
homepage<02:26:52.040> a<02:26:52.200> bit<02:26:52.399> to<02:26:52.560> the<02:26:52.760> right<02:26:53.479> within<02:26:53.800> the
02:26:53.910 --> 02:26:53.920 align:start position:0%
homepage a bit to the right within the
02:26:53.920 --> 02:26:56.269 align:start position:0%
homepage a bit to the right within the
nav<02:26:54.359> let's<02:26:54.600> create<02:26:54.960> a<02:26:55.200> div<02:26:55.720> that's<02:26:55.920> going<02:26:56.080> to
02:26:56.269 --> 02:26:56.279 align:start position:0%
nav let's create a div that's going to
02:26:56.279 --> 02:27:00.190 align:start position:0%
nav let's create a div that's going to
have<02:26:56.439> a<02:26:56.680> class<02:26:57.040> name<02:26:57.520> equal<02:26:57.800> to<02:26:58.000> flex<02:26:59.200> flex-all
02:27:00.190 --> 02:27:00.200 align:start position:0%
have a class name equal to flex flex-all
02:27:00.200 --> 02:27:01.910 align:start position:0%
have a class name equal to flex flex-all
as<02:27:00.319> the<02:27:00.439> elements<02:27:00.760> are<02:27:00.880> going<02:27:01.040> to<02:27:01.240> appear<02:27:01.680> one
02:27:01.910 --> 02:27:01.920 align:start position:0%
as the elements are going to appear one
02:27:01.920 --> 02:27:04.910 align:start position:0%
as the elements are going to appear one
on<02:27:02.200> top<02:27:02.359> of<02:27:02.479> another<02:27:03.279> and<02:27:03.399> then<02:27:03.560> a<02:27:03.800> gap<02:27:04.120> of<02:27:04.439> 11
02:27:04.910 --> 02:27:04.920 align:start position:0%
on top of another and then a gap of 11
02:27:04.920 --> 02:27:07.590 align:start position:0%
on top of another and then a gap of 11
to<02:27:05.160> create<02:27:05.439> some<02:27:05.760> space<02:27:06.760> right<02:27:07.000> within<02:27:07.359> that
02:27:07.590 --> 02:27:07.600 align:start position:0%
to create some space right within that
02:27:07.600 --> 02:27:10.230 align:start position:0%
to create some space right within that
div<02:27:07.960> we're<02:27:08.080> going<02:27:08.200> to<02:27:08.439> have<02:27:08.680> our<02:27:08.920> first<02:27:09.399> link
02:27:10.230 --> 02:27:10.240 align:start position:0%
div we're going to have our first link
02:27:10.240 --> 02:27:12.230 align:start position:0%
div we're going to have our first link
and<02:27:10.359> this<02:27:10.439> is<02:27:10.560> going<02:27:10.760> to<02:27:10.840> be<02:27:11.000> the<02:27:11.120> same<02:27:11.399> link<02:27:12.000> as
02:27:12.230 --> 02:27:12.240 align:start position:0%
and this is going to be the same link as
02:27:12.240 --> 02:27:16.349 align:start position:0%
and this is going to be the same link as
on<02:27:12.520> mobile<02:27:13.160> so<02:27:13.319> we<02:27:13.439> can<02:27:13.720> go<02:27:14.160> back<02:27:14.840> to<02:27:15.439> our<02:27:16.000> top
02:27:16.349 --> 02:27:16.359 align:start position:0%
on mobile so we can go back to our top
02:27:16.359 --> 02:27:19.510 align:start position:0%
on mobile so we can go back to our top
bar<02:27:17.080> and<02:27:17.240> we<02:27:17.359> can<02:27:17.640> copy<02:27:18.279> this<02:27:18.520> entire<02:27:18.960> link
02:27:19.510 --> 02:27:19.520 align:start position:0%
bar and we can copy this entire link
02:27:19.520 --> 02:27:21.910 align:start position:0%
bar and we can copy this entire link
right<02:27:19.760> here<02:27:20.439> and<02:27:20.760> paste<02:27:21.000> it<02:27:21.160> in<02:27:21.279> the<02:27:21.439> left<02:27:21.720> side
02:27:21.910 --> 02:27:21.920 align:start position:0%
right here and paste it in the left side
02:27:21.920 --> 02:27:24.910 align:start position:0%
right here and paste it in the left side
bar<02:27:22.720> we<02:27:22.840> of<02:27:22.960> course<02:27:23.160> need<02:27:23.319> to<02:27:23.520> import<02:27:24.040> Link<02:27:24.800> at
02:27:24.910 --> 02:27:24.920 align:start position:0%
bar we of course need to import Link at
02:27:24.920 --> 02:27:27.469 align:start position:0%
bar we of course need to import Link at
the<02:27:25.120> top<02:27:25.520> from<02:27:25.760> react<02:27:26.120> router<02:27:26.439> Dom<02:27:27.080> so<02:27:27.240> we<02:27:27.359> can
02:27:27.469 --> 02:27:27.479 align:start position:0%
the top from react router Dom so we can
02:27:27.479 --> 02:27:31.429 align:start position:0%
the top from react router Dom so we can
say<02:27:28.160> link<02:27:29.160> and<02:27:29.319> that's<02:27:29.520> coming<02:27:29.800> from<02:27:30.080> react
02:27:31.429 --> 02:27:31.439 align:start position:0%
say link and that's coming from react
02:27:31.439 --> 02:27:32.990 align:start position:0%
say link and that's coming from react
router
02:27:32.990 --> 02:27:33.000 align:start position:0%
router
02:27:33.000 --> 02:27:36.269 align:start position:0%
router
Dom<02:27:34.000> if<02:27:34.120> we<02:27:34.279> save<02:27:34.520> it<02:27:35.279> it's<02:27:35.479> looking<02:27:35.840> good<02:27:36.160> but
02:27:36.269 --> 02:27:36.279 align:start position:0%
Dom if we save it it's looking good but
02:27:36.279 --> 02:27:39.269 align:start position:0%
Dom if we save it it's looking good but
we<02:27:36.399> can<02:27:36.560> modify<02:27:37.000> the<02:27:37.160> width<02:27:37.600> to<02:27:37.920> 170<02:27:38.920> and<02:27:39.080> the
02:27:39.269 --> 02:27:39.279 align:start position:0%
we can modify the width to 170 and the
02:27:39.279 --> 02:27:41.030 align:start position:0%
we can modify the width to 170 and the
height<02:27:39.560> to
02:27:41.030 --> 02:27:41.040 align:start position:0%
height to
02:27:41.040 --> 02:27:43.550 align:start position:0%
height to
36<02:27:42.040> there<02:27:42.200> we<02:27:42.359> go<02:27:42.640> that<02:27:42.800> looks<02:27:43.000> a<02:27:43.160> bit<02:27:43.319> better
02:27:43.550 --> 02:27:43.560 align:start position:0%
36 there we go that looks a bit better
02:27:43.560 --> 02:27:46.750 align:start position:0%
36 there we go that looks a bit better
for<02:27:43.800> the<02:27:44.279> sidebar<02:27:45.279> right<02:27:45.520> below<02:27:45.880> it<02:27:46.279> we<02:27:46.399> can
02:27:46.750 --> 02:27:46.760 align:start position:0%
for the sidebar right below it we can
02:27:46.760 --> 02:27:48.990 align:start position:0%
for the sidebar right below it we can
show<02:27:47.040> our<02:27:47.279> link<02:27:47.520> to<02:27:47.680> the<02:27:47.880> profile
02:27:48.990 --> 02:27:49.000 align:start position:0%
show our link to the profile
02:27:49.000 --> 02:27:52.910 align:start position:0%
show our link to the profile
page<02:27:50.000> so<02:27:50.359> let's<02:27:50.600> go<02:27:50.840> below<02:27:51.200> the<02:27:51.359> link<02:27:52.359> and<02:27:52.560> then
02:27:52.910 --> 02:27:52.920 align:start position:0%
page so let's go below the link and then
02:27:52.920 --> 02:27:55.750 align:start position:0%
page so let's go below the link and then
create<02:27:53.319> another<02:27:53.880> link<02:27:54.880> this<02:27:55.080> link<02:27:55.439> is<02:27:55.600> going
02:27:55.750 --> 02:27:55.760 align:start position:0%
create another link this link is going
02:27:55.760 --> 02:27:58.830 align:start position:0%
create another link this link is going
to<02:27:56.000> point<02:27:56.479> to<02:27:57.160> forward<02:27:57.640> slash<02:27:58.399> and<02:27:58.560> it's<02:27:58.720> going
02:27:58.830 --> 02:27:58.840 align:start position:0%
to point to forward slash and it's going
02:27:58.840 --> 02:28:01.150 align:start position:0%
to point to forward slash and it's going
to<02:27:58.960> be<02:27:59.120> as<02:27:59.319> before<02:28:00.080> a<02:28:00.319> dynamic<02:28:00.760> link<02:28:01.000> to
02:28:01.150 --> 02:28:01.160 align:start position:0%
to be as before a dynamic link to
02:28:01.160 --> 02:28:04.190 align:start position:0%
to be as before a dynamic link to
forward<02:28:01.520> SL<02:28:02.040> profile<02:28:03.040> not<02:28:03.399> this<02:28:03.760> what<02:28:03.880> I<02:28:04.040> just
02:28:04.190 --> 02:28:04.200 align:start position:0%
forward SL profile not this what I just
02:28:04.200 --> 02:28:07.389 align:start position:0%
forward SL profile not this what I just
typed<02:28:04.840> but<02:28:05.160> profile<02:28:05.800> and<02:28:05.920> then<02:28:06.120> forward<02:28:06.520> slash
02:28:07.389 --> 02:28:07.399 align:start position:0%
typed but profile and then forward slash
02:28:07.399 --> 02:28:10.710 align:start position:0%
typed but profile and then forward slash
the<02:28:07.600> user<02:28:08.319> ID<02:28:09.040> right<02:28:09.920> and<02:28:10.080> we<02:28:10.200> already<02:28:10.439> know
02:28:10.710 --> 02:28:10.720 align:start position:0%
the user ID right and we already know
02:28:10.720 --> 02:28:12.510 align:start position:0%
the user ID right and we already know
where<02:28:10.880> the<02:28:10.960> user<02:28:11.200> ID<02:28:11.439> is<02:28:11.600> coming<02:28:11.920> from<02:28:12.359> it's
02:28:12.510 --> 02:28:12.520 align:start position:0%
where the user ID is coming from it's
02:28:12.520 --> 02:28:15.469 align:start position:0%
where the user ID is coming from it's
going<02:28:12.680> to<02:28:12.800> be<02:28:13.040> similar<02:28:13.720> as<02:28:13.960> with<02:28:14.080> the<02:28:14.319> top<02:28:14.640> bar
02:28:15.469 --> 02:28:15.479 align:start position:0%
going to be similar as with the top bar
02:28:15.479 --> 02:28:18.030 align:start position:0%
going to be similar as with the top bar
so<02:28:15.840> here<02:28:16.160> we<02:28:16.279> can<02:28:16.399> IM<02:28:16.640> immediately<02:28:17.160> copy<02:28:17.880> what
02:28:18.030 --> 02:28:18.040 align:start position:0%
so here we can IM immediately copy what
02:28:18.040 --> 02:28:20.710 align:start position:0%
so here we can IM immediately copy what
we<02:28:18.319> have<02:28:19.319> because<02:28:19.600> in<02:28:19.720> the<02:28:19.920> sidebar<02:28:20.520> we'll
02:28:20.710 --> 02:28:20.720 align:start position:0%
we have because in the sidebar we'll
02:28:20.720 --> 02:28:22.389 align:start position:0%
we have because in the sidebar we'll
also<02:28:20.960> have<02:28:21.080> to<02:28:21.240> deal<02:28:21.439> with<02:28:21.560> the<02:28:21.720> logout
02:28:22.389 --> 02:28:22.399 align:start position:0%
also have to deal with the logout
02:28:22.399 --> 02:28:25.590 align:start position:0%
also have to deal with the logout
functionality<02:28:23.399> so<02:28:23.720> we<02:28:23.880> might<02:28:24.120> as<02:28:24.279> well<02:28:24.680> copy
02:28:25.590 --> 02:28:25.600 align:start position:0%
functionality so we might as well copy
02:28:25.600 --> 02:28:27.750 align:start position:0%
functionality so we might as well copy
most<02:28:25.880> of<02:28:26.040> the<02:28:26.160> things<02:28:26.439> we<02:28:26.600> have<02:28:26.880> here<02:28:27.319> on<02:28:27.520> the
02:28:27.750 --> 02:28:27.760 align:start position:0%
most of the things we have here on the
02:28:27.760 --> 02:28:30.070 align:start position:0%
most of the things we have here on the
top<02:28:28.520> as<02:28:28.680> well<02:28:28.840> as<02:28:29.000> what<02:28:29.120> we<02:28:29.240> have<02:28:29.439> defined<02:28:29.960> in
02:28:30.070 --> 02:28:30.080 align:start position:0%
top as well as what we have defined in
02:28:30.080 --> 02:28:32.710 align:start position:0%
top as well as what we have defined in
the<02:28:30.399> component<02:28:31.399> so<02:28:31.600> let's<02:28:31.840> copy<02:28:32.240> everything
02:28:32.710 --> 02:28:32.720 align:start position:0%
the component so let's copy everything
02:28:32.720 --> 02:28:35.469 align:start position:0%
the component so let's copy everything
from<02:28:33.240> here<02:28:34.240> and<02:28:34.479> paste<02:28:34.760> it<02:28:34.920> in<02:28:35.080> the<02:28:35.240> left
02:28:35.469 --> 02:28:35.479 align:start position:0%
from here and paste it in the left
02:28:35.479 --> 02:28:38.790 align:start position:0%
from here and paste it in the left
sidebar<02:28:36.240> on<02:28:36.520> top<02:28:37.479> just<02:28:37.800> replacing<02:28:38.399> the<02:28:38.560> name
02:28:38.790 --> 02:28:38.800 align:start position:0%
sidebar on top just replacing the name
02:28:38.800 --> 02:28:41.990 align:start position:0%
sidebar on top just replacing the name
of<02:28:38.960> the<02:28:39.160> component<02:28:39.800> to<02:28:40.160> left<02:28:40.840> sidebar<02:28:41.840> there
02:28:41.990 --> 02:28:42.000 align:start position:0%
of the component to left sidebar there
02:28:42.000 --> 02:28:44.389 align:start position:0%
of the component to left sidebar there
we<02:28:42.200> go<02:28:42.720> now<02:28:42.880> if<02:28:43.000> we<02:28:43.160> save<02:28:43.479> this<02:28:44.000> everything
02:28:44.389 --> 02:28:44.399 align:start position:0%
we go now if we save this everything
02:28:44.399 --> 02:28:47.550 align:start position:0%
we go now if we save this everything
still<02:28:44.680> works<02:28:45.680> we<02:28:45.840> have<02:28:45.960> the<02:28:46.080> user<02:28:46.359> ID<02:28:46.680> D<02:28:47.240> we<02:28:47.359> can
02:28:47.550 --> 02:28:47.560 align:start position:0%
still works we have the user ID D we can
02:28:47.560 --> 02:28:53.110 align:start position:0%
still works we have the user ID D we can
give<02:28:47.680> it<02:28:47.880> a<02:28:48.200> class<02:28:48.800> name<02:28:49.800> equal<02:28:50.319> to<02:28:51.520> flex
02:28:53.110 --> 02:28:53.120 align:start position:0%
give it a class name equal to flex
02:28:53.120 --> 02:28:57.030 align:start position:0%
give it a class name equal to flex
g-3<02:28:54.120> and<02:28:54.479> items<02:28:55.000> Das<02:28:55.240> center<02:28:56.200> right<02:28:56.439> within<02:28:56.720> it
02:28:57.030 --> 02:28:57.040 align:start position:0%
g-3 and items Das center right within it
02:28:57.040 --> 02:28:58.870 align:start position:0%
g-3 and items Das center right within it
we<02:28:57.160> can<02:28:57.279> show<02:28:57.560> an<02:28:57.760> image<02:28:58.319> that's<02:28:58.520> going<02:28:58.680> to
02:28:58.870 --> 02:28:58.880 align:start position:0%
we can show an image that's going to
02:28:58.880 --> 02:29:04.510 align:start position:0%
we can show an image that's going to
have<02:28:59.080> a<02:28:59.279> source<02:28:59.960> equal<02:29:00.640> to<02:29:01.800> user.<02:29:02.800> image<02:29:03.160> URL
02:29:04.510 --> 02:29:04.520 align:start position:0%
have a source equal to user. image URL
02:29:04.520 --> 02:29:12.630 align:start position:0%
have a source equal to user. image URL
or<02:29:05.520> SL<02:29:06.040> assets<02:29:07.040> SL<02:29:07.520> ions<02:29:08.520> SL<02:29:09.359> profile<02:29:10.200> Das
02:29:12.630 --> 02:29:12.640 align:start position:0%
or SL assets SL ions SL profile Das
02:29:12.640 --> 02:29:14.790 align:start position:0%
or SL assets SL ions SL profile Das
placeholder.svg
02:29:14.790 --> 02:29:14.800 align:start position:0%
placeholder.svg
02:29:14.800 --> 02:29:17.870 align:start position:0%
placeholder.svg
there<02:29:15.800> we<02:29:15.960> go<02:29:16.160> we<02:29:16.240> have<02:29:16.359> our<02:29:16.720> huge<02:29:17.160> the<02:29:17.279> real
02:29:17.870 --> 02:29:17.880 align:start position:0%
there we go we have our huge the real
02:29:17.880 --> 02:29:20.990 align:start position:0%
there we go we have our huge the real
JSM<02:29:18.880> let's<02:29:19.080> give<02:29:19.200> it<02:29:19.279> an<02:29:19.439> ALT<02:29:19.760> tag<02:29:20.080> of
02:29:20.990 --> 02:29:21.000 align:start position:0%
JSM let's give it an ALT tag of
02:29:21.000 --> 02:29:25.550 align:start position:0%
JSM let's give it an ALT tag of
profile<02:29:22.000> as<02:29:22.240> well<02:29:22.560> as<02:29:22.680> a<02:29:22.960> class<02:29:23.359> name<02:29:24.040> equal<02:29:24.319> to
02:29:25.550 --> 02:29:25.560 align:start position:0%
profile as well as a class name equal to
02:29:25.560 --> 02:29:29.469 align:start position:0%
profile as well as a class name equal to
age-14<02:29:26.560> width<02:29:27.000> of<02:29:27.240> 14<02:29:27.800> as<02:29:28.000> well<02:29:28.640> and<02:29:28.840> rounded
02:29:29.469 --> 02:29:29.479 align:start position:0%
age-14 width of 14 as well and rounded
02:29:29.479 --> 02:29:32.469 align:start position:0%
age-14 width of 14 as well and rounded
Das<02:29:30.040> full<02:29:31.040> now<02:29:31.279> next<02:29:31.520> to<02:29:31.720> this<02:29:32.040> we<02:29:32.160> also<02:29:32.359> want
02:29:32.469 --> 02:29:32.479 align:start position:0%
Das full now next to this we also want
02:29:32.479 --> 02:29:34.230 align:start position:0%
Das full now next to this we also want
to<02:29:32.600> show<02:29:32.840> the<02:29:33.040> name<02:29:33.439> of<02:29:33.600> the<02:29:33.760> person<02:29:34.040> that's
02:29:34.230 --> 02:29:34.240 align:start position:0%
to show the name of the person that's
02:29:34.240 --> 02:29:36.110 align:start position:0%
to show the name of the person that's
logged<02:29:34.600> in<02:29:35.000> because<02:29:35.240> we<02:29:35.359> have<02:29:35.479> a<02:29:35.640> bit<02:29:35.840> more
02:29:36.110 --> 02:29:36.120 align:start position:0%
logged in because we have a bit more
02:29:36.120 --> 02:29:38.550 align:start position:0%
logged in because we have a bit more
space<02:29:36.439> than<02:29:36.560> on<02:29:36.800> mobile<02:29:37.720> so<02:29:37.920> let's<02:29:38.120> create<02:29:38.359> a
02:29:38.550 --> 02:29:38.560 align:start position:0%
space than on mobile so let's create a
02:29:38.560 --> 02:29:41.830 align:start position:0%
space than on mobile so let's create a
div<02:29:39.560> that's<02:29:39.760> going<02:29:39.960> to<02:29:40.120> have<02:29:40.279> a<02:29:40.600> class<02:29:40.960> name
02:29:41.830 --> 02:29:41.840 align:start position:0%
div that's going to have a class name
02:29:41.840 --> 02:29:45.910 align:start position:0%
div that's going to have a class name
equal<02:29:42.160> to<02:29:42.560> flex<02:29:43.920> flex-all<02:29:44.920> so<02:29:45.120> it<02:29:45.319> appears<02:29:45.720> one
02:29:45.910 --> 02:29:45.920 align:start position:0%
equal to flex flex-all so it appears one
02:29:45.920 --> 02:29:47.469 align:start position:0%
equal to flex flex-all so it appears one
below<02:29:46.240> another
02:29:47.469 --> 02:29:47.479 align:start position:0%
below another
02:29:47.479 --> 02:29:50.910 align:start position:0%
below another
and<02:29:47.760> here<02:29:48.200> we<02:29:48.319> can<02:29:48.479> do<02:29:48.600> a<02:29:48.760> P<02:29:49.520> tag<02:29:50.520> that's<02:29:50.720> going
02:29:50.910 --> 02:29:50.920 align:start position:0%
and here we can do a P tag that's going
02:29:50.920 --> 02:29:57.190 align:start position:0%
and here we can do a P tag that's going
to<02:29:51.200> have<02:29:51.600> a<02:29:51.960> class<02:29:52.800> name<02:29:53.800> equal<02:29:54.120> to<02:29:55.120> body-<02:29:56.200> bold
02:29:57.190 --> 02:29:57.200 align:start position:0%
to have a class name equal to body- bold
02:29:57.200 --> 02:30:01.150 align:start position:0%
to have a class name equal to body- bold
here<02:29:57.680> we<02:29:57.840> can<02:29:57.960> render<02:29:59.160> user.name<02:30:00.160> and<02:30:00.960> that's
02:30:01.150 --> 02:30:01.160 align:start position:0%
here we can render user.name and that's
02:30:01.160 --> 02:30:03.950 align:start position:0%
here we can render user.name and that's
going<02:30:01.279> to<02:30:01.399> show<02:30:01.680> the<02:30:01.800> real<02:30:02.479> JSM<02:30:03.479> and<02:30:03.720> right
02:30:03.950 --> 02:30:03.960 align:start position:0%
going to show the real JSM and right
02:30:03.960 --> 02:30:06.870 align:start position:0%
going to show the real JSM and right
below<02:30:04.960> we<02:30:05.080> can<02:30:05.240> render<02:30:05.600> another<02:30:05.880> P
02:30:06.870 --> 02:30:06.880 align:start position:0%
below we can render another P
02:30:06.880 --> 02:30:10.030 align:start position:0%
below we can render another P
tag<02:30:07.880> that's<02:30:08.080> going<02:30:08.240> to<02:30:08.439> have<02:30:08.640> a<02:30:08.920> class<02:30:09.240> name
02:30:10.030 --> 02:30:10.040 align:start position:0%
tag that's going to have a class name
02:30:10.040 --> 02:30:14.630 align:start position:0%
tag that's going to have a class name
equal<02:30:10.479> to<02:30:11.160> small-<02:30:12.200> regular<02:30:13.200> text-
02:30:14.630 --> 02:30:14.640 align:start position:0%
equal to small- regular text-
02:30:14.640 --> 02:30:16.950 align:start position:0%
equal to small- regular text-
light-3<02:30:15.640> and<02:30:15.800> it's<02:30:15.960> going<02:30:16.120> to<02:30:16.200> say
02:30:16.950 --> 02:30:16.960 align:start position:0%
light-3 and it's going to say
02:30:16.960 --> 02:30:21.110 align:start position:0%
light-3 and it's going to say
at<02:30:17.760> and<02:30:17.920> then<02:30:18.120> dynamically<02:30:18.920> user.<02:30:20.120> username
02:30:21.110 --> 02:30:21.120 align:start position:0%
at and then dynamically user. username
02:30:21.120 --> 02:30:23.309 align:start position:0%
at and then dynamically user. username
if<02:30:21.279> we<02:30:21.439> save<02:30:21.680> it<02:30:22.439> now<02:30:22.600> we<02:30:22.720> can<02:30:22.840> see<02:30:23.040> this<02:30:23.160> is
02:30:23.309 --> 02:30:23.319 align:start position:0%
if we save it now we can see this is
02:30:23.319 --> 02:30:24.990 align:start position:0%
if we save it now we can see this is
going<02:30:23.479> to<02:30:23.640> work<02:30:23.920> but<02:30:24.040> we<02:30:24.160> can<02:30:24.279> remove<02:30:24.840> the
02:30:24.990 --> 02:30:25.000 align:start position:0%
going to work but we can remove the
02:30:25.000 --> 02:30:28.230 align:start position:0%
going to work but we can remove the
dollar<02:30:25.359> sign<02:30:25.920> there<02:30:26.080> we<02:30:26.479> go<02:30:27.479> how<02:30:27.680> cool<02:30:27.920> it<02:30:28.040> is
02:30:28.230 --> 02:30:28.240 align:start position:0%
dollar sign there we go how cool it is
02:30:28.240 --> 02:30:30.429 align:start position:0%
dollar sign there we go how cool it is
that<02:30:28.399> we<02:30:28.479> can<02:30:28.680> immediately<02:30:29.359> extract<02:30:30.120> all<02:30:30.240> of
02:30:30.429 --> 02:30:30.439 align:start position:0%
that we can immediately extract all of
02:30:30.439 --> 02:30:33.830 align:start position:0%
that we can immediately extract all of
this<02:30:30.560> user<02:30:30.960> information<02:30:32.080> directly<02:30:33.080> from<02:30:33.720> the
02:30:33.830 --> 02:30:33.840 align:start position:0%
this user information directly from the
02:30:33.840 --> 02:30:36.110 align:start position:0%
this user information directly from the
user<02:30:34.399> context<02:30:35.399> that's<02:30:35.680> what<02:30:35.800> we've<02:30:35.960> been
02:30:36.110 --> 02:30:36.120 align:start position:0%
user context that's what we've been
02:30:36.120 --> 02:30:38.150 align:start position:0%
user context that's what we've been
working<02:30:36.359> on<02:30:36.600> so<02:30:36.920> hard<02:30:37.279> while<02:30:37.520> creating<02:30:37.840> the
02:30:38.150 --> 02:30:38.160 align:start position:0%
working on so hard while creating the
02:30:38.160 --> 02:30:40.510 align:start position:0%
working on so hard while creating the
authentication<02:30:39.160> so<02:30:39.399> now<02:30:39.640> we<02:30:39.760> can<02:30:39.920> simply<02:30:40.240> use
02:30:40.510 --> 02:30:40.520 align:start position:0%
authentication so now we can simply use
02:30:40.520 --> 02:30:43.150 align:start position:0%
authentication so now we can simply use
it<02:30:41.200> now<02:30:41.439> going<02:30:41.720> below<02:30:42.240> we<02:30:42.319> want<02:30:42.439> to<02:30:42.560> render<02:30:42.960> the
02:30:43.150 --> 02:30:43.160 align:start position:0%
it now going below we want to render the
02:30:43.160 --> 02:30:45.910 align:start position:0%
it now going below we want to render the
sidebar<02:30:43.640> links<02:30:44.399> so<02:30:44.600> let's<02:30:44.880> move<02:30:45.279> below<02:30:45.720> this
02:30:45.910 --> 02:30:45.920 align:start position:0%
sidebar links so let's move below this
02:30:45.920 --> 02:30:46.950 align:start position:0%
sidebar links so let's move below this
link
02:30:46.950 --> 02:30:46.960 align:start position:0%
link
02:30:46.960 --> 02:30:50.190 align:start position:0%
link
and<02:30:47.160> let's<02:30:47.359> create<02:30:47.720> a<02:30:47.920> new<02:30:48.319> UL<02:30:49.319> an<02:30:49.520> unordered
02:30:50.190 --> 02:30:50.200 align:start position:0%
and let's create a new UL an unordered
02:30:50.200 --> 02:30:53.230 align:start position:0%
and let's create a new UL an unordered
list<02:30:51.080> that's<02:30:51.279> going<02:30:51.439> to<02:30:51.680> have<02:30:51.880> a<02:30:52.120> class<02:30:52.520> name
02:30:53.230 --> 02:30:53.240 align:start position:0%
list that's going to have a class name
02:30:53.240 --> 02:30:55.590 align:start position:0%
list that's going to have a class name
equal<02:30:53.520> to<02:30:53.920> flex
02:30:55.590 --> 02:30:55.600 align:start position:0%
equal to flex
02:30:55.600 --> 02:30:59.790 align:start position:0%
equal to flex
flex-all<02:30:56.600> and<02:30:56.880> a<02:30:57.120> gap<02:30:57.399> of<02:30:57.600> six<02:30:58.479> right<02:30:58.720> here<02:30:59.399> we
02:30:59.790 --> 02:30:59.800 align:start position:0%
flex-all and a gap of six right here we
02:30:59.800 --> 02:31:02.389 align:start position:0%
flex-all and a gap of six right here we
might<02:31:00.040> as<02:31:00.240> well<02:31:00.600> render<02:31:01.080> all<02:31:01.359> the<02:31:01.479> nav<02:31:01.840> links
02:31:02.389 --> 02:31:02.399 align:start position:0%
might as well render all the nav links
02:31:02.399 --> 02:31:05.469 align:start position:0%
might as well render all the nav links
one<02:31:02.560> by<02:31:02.760> one<02:31:03.160> by<02:31:03.279> saying<02:31:03.640> Link<02:31:04.279> Link<02:31:04.800> Link<02:31:05.359> and
02:31:05.469 --> 02:31:05.479 align:start position:0%
one by one by saying Link Link Link and
02:31:05.479 --> 02:31:07.990 align:start position:0%
one by one by saying Link Link Link and
then<02:31:05.640> duplicate<02:31:06.120> this<02:31:06.359> many<02:31:06.600> many<02:31:06.960> times<02:31:07.880> of
02:31:07.990 --> 02:31:08.000 align:start position:0%
then duplicate this many many times of
02:31:08.000 --> 02:31:10.230 align:start position:0%
then duplicate this many many times of
course<02:31:08.319> each<02:31:08.520> link<02:31:08.840> has<02:31:08.960> to<02:31:09.160> have<02:31:09.279> a<02:31:09.560> path<02:31:10.080> it
02:31:10.230 --> 02:31:10.240 align:start position:0%
course each link has to have a path it
02:31:10.240 --> 02:31:12.710 align:start position:0%
course each link has to have a path it
has<02:31:10.399> to<02:31:10.600> have<02:31:10.720> some<02:31:11.000> content<02:31:11.960> so<02:31:12.359> it's<02:31:12.520> going
02:31:12.710 --> 02:31:12.720 align:start position:0%
has to have some content so it's going
02:31:12.720 --> 02:31:15.790 align:start position:0%
has to have some content so it's going
to<02:31:13.120> expand<02:31:13.640> on<02:31:13.840> many<02:31:14.080> many<02:31:14.319> lines<02:31:14.760> right<02:31:14.960> here
02:31:15.790 --> 02:31:15.800 align:start position:0%
to expand on many many lines right here
02:31:15.800 --> 02:31:18.150 align:start position:0%
to expand on many many lines right here
instead<02:31:16.120> of<02:31:16.520> that<02:31:16.920> what<02:31:17.040> we<02:31:17.240> try<02:31:17.439> to<02:31:17.600> do<02:31:17.920> as
02:31:18.150 --> 02:31:18.160 align:start position:0%
instead of that what we try to do as
02:31:18.160 --> 02:31:21.030 align:start position:0%
instead of that what we try to do as
good<02:31:18.399> developers<02:31:19.000> being<02:31:19.279> more<02:31:19.760> structured<02:31:20.760> is
02:31:21.030 --> 02:31:21.040 align:start position:0%
good developers being more structured is
02:31:21.040 --> 02:31:22.750 align:start position:0%
good developers being more structured is
we<02:31:21.120> can<02:31:21.359> create<02:31:21.760> something<02:31:22.080> known<02:31:22.439> as
02:31:22.750 --> 02:31:22.760 align:start position:0%
we can create something known as
02:31:22.760 --> 02:31:26.070 align:start position:0%
we can create something known as
constants<02:31:23.640> file<02:31:24.600> that's<02:31:24.760> a<02:31:25.040> special<02:31:25.479> file<02:31:25.880> and
02:31:26.070 --> 02:31:26.080 align:start position:0%
constants file that's a special file and
02:31:26.080 --> 02:31:28.950 align:start position:0%
constants file that's a special file and
folder<02:31:26.960> right<02:31:27.200> here<02:31:27.600> above<02:31:27.880> our<02:31:28.120> context
02:31:28.950 --> 02:31:28.960 align:start position:0%
folder right here above our context
02:31:28.960 --> 02:31:31.110 align:start position:0%
folder right here above our context
still<02:31:29.319> within<02:31:29.560> the<02:31:29.760> source<02:31:30.319> so<02:31:30.560> create<02:31:30.800> a<02:31:30.960> new
02:31:31.110 --> 02:31:31.120 align:start position:0%
still within the source so create a new
02:31:31.120 --> 02:31:32.830 align:start position:0%
still within the source so create a new
folder<02:31:31.560> called
02:31:32.830 --> 02:31:32.840 align:start position:0%
folder called
02:31:32.840 --> 02:31:35.510 align:start position:0%
folder called
constants<02:31:33.840> and<02:31:33.960> then<02:31:34.120> create<02:31:34.359> a<02:31:34.560> new
02:31:35.510 --> 02:31:35.520 align:start position:0%
constants and then create a new
02:31:35.520 --> 02:31:38.429 align:start position:0%
constants and then create a new
index.ts<02:31:36.520> right<02:31:36.800> within<02:31:37.040> it<02:31:37.720> here<02:31:38.080> you<02:31:38.200> can
02:31:38.429 --> 02:31:38.439 align:start position:0%
index.ts right within it here you can
02:31:38.439 --> 02:31:41.630 align:start position:0%
index.ts right within it here you can
Define<02:31:38.960> some<02:31:39.240> sidebar<02:31:39.760> links<02:31:40.680> just<02:31:40.920> like<02:31:41.120> so
02:31:41.630 --> 02:31:41.640 align:start position:0%
Define some sidebar links just like so
02:31:41.640 --> 02:31:43.230 align:start position:0%
Define some sidebar links just like so
it's<02:31:41.800> going<02:31:41.960> to<02:31:42.080> be<02:31:42.200> an<02:31:42.359> array<02:31:42.920> and<02:31:43.000> then<02:31:43.160> we
02:31:43.230 --> 02:31:43.240 align:start position:0%
it's going to be an array and then we
02:31:43.240 --> 02:31:45.389 align:start position:0%
it's going to be an array and then we
can<02:31:43.399> say<02:31:43.760> home<02:31:44.479> anything<02:31:44.800> else<02:31:45.000> you<02:31:45.120> want<02:31:45.240> to
02:31:45.389 --> 02:31:45.399 align:start position:0%
can say home anything else you want to
02:31:45.399 --> 02:31:48.590 align:start position:0%
can say home anything else you want to
say<02:31:45.800> you<02:31:45.920> can<02:31:46.080> add<02:31:46.720> here<02:31:47.720> since<02:31:48.040> this<02:31:48.160> is<02:31:48.319> not
02:31:48.590 --> 02:31:48.600 align:start position:0%
say you can add here since this is not
02:31:48.600 --> 02:31:51.429 align:start position:0%
say you can add here since this is not
any<02:31:48.960> logic<02:31:49.560> but<02:31:49.760> rather<02:31:50.040> just<02:31:50.279> static<02:31:50.680> code
02:31:51.429 --> 02:31:51.439 align:start position:0%
any logic but rather just static code
02:31:51.439 --> 02:31:53.389 align:start position:0%
any logic but rather just static code
what<02:31:51.600> we<02:31:51.720> can<02:31:51.880> do<02:31:52.319> is<02:31:52.680> in<02:31:52.800> the<02:31:52.960> description
02:31:53.389 --> 02:31:53.399 align:start position:0%
what we can do is in the description
02:31:53.399 --> 02:31:55.830 align:start position:0%
what we can do is in the description
Down<02:31:53.640> Below<02:31:54.200> in<02:31:54.399> the<02:31:54.520> GitHub<02:31:54.880> gist<02:31:55.520> you<02:31:55.640> can
02:31:55.830 --> 02:31:55.840 align:start position:0%
Down Below in the GitHub gist you can
02:31:55.840 --> 02:31:58.910 align:start position:0%
Down Below in the GitHub gist you can
find<02:31:56.120> the<02:31:56.319> complete<02:31:57.200> constants<02:31:57.920> index.ts
02:31:58.910 --> 02:31:58.920 align:start position:0%
find the complete constants index.ts
02:31:58.920 --> 02:32:02.429 align:start position:0%
find the complete constants index.ts
file<02:31:59.680> so<02:32:00.000> copy<02:32:00.279> it<02:32:00.760> and<02:32:01.000> paste<02:32:01.240> it<02:32:01.479> here<02:32:02.319> you
02:32:02.429 --> 02:32:02.439 align:start position:0%
file so copy it and paste it here you
02:32:02.439 --> 02:32:04.269 align:start position:0%
file so copy it and paste it here you
can<02:32:02.600> notice<02:32:03.000> that<02:32:03.160> this<02:32:03.279> is<02:32:03.479> mostly<02:32:03.920> Bottom
02:32:04.269 --> 02:32:04.279 align:start position:0%
can notice that this is mostly Bottom
02:32:04.279 --> 02:32:08.510 align:start position:0%
can notice that this is mostly Bottom
bar<02:32:04.560> links<02:32:05.479> as<02:32:05.680> well<02:32:06.040> as<02:32:06.560> sidebar<02:32:07.240> links<02:32:08.240> so
02:32:08.510 --> 02:32:08.520 align:start position:0%
bar links as well as sidebar links so
02:32:08.520 --> 02:32:11.349 align:start position:0%
bar links as well as sidebar links so
what<02:32:08.720> this<02:32:08.880> allows<02:32:09.200> us<02:32:09.359> to<02:32:09.479> do<02:32:10.240> is<02:32:10.560> just<02:32:10.840> jump
02:32:11.349 --> 02:32:11.359 align:start position:0%
what this allows us to do is just jump
02:32:11.359 --> 02:32:14.990 align:start position:0%
what this allows us to do is just jump
right<02:32:11.600> into<02:32:12.080> here<02:32:13.080> and<02:32:13.840> open<02:32:14.120> up<02:32:14.279> a<02:32:14.439> dynamic
02:32:14.990 --> 02:32:15.000 align:start position:0%
right into here and open up a dynamic
02:32:15.000 --> 02:32:19.510 align:start position:0%
right into here and open up a dynamic
block<02:32:15.240> of<02:32:15.439> code<02:32:16.319> and<02:32:16.439> say<02:32:16.760> sidebar<02:32:17.800> links.<02:32:18.800> map
02:32:19.510 --> 02:32:19.520 align:start position:0%
block of code and say sidebar links. map
02:32:19.520 --> 02:32:22.510 align:start position:0%
block of code and say sidebar links. map
where<02:32:19.720> we<02:32:19.880> get<02:32:20.279> each<02:32:20.600> individual<02:32:21.359> link<02:32:22.359> which
02:32:22.510 --> 02:32:22.520 align:start position:0%
where we get each individual link which
02:32:22.520 --> 02:32:25.910 align:start position:0%
where we get each individual link which
is<02:32:22.640> of<02:32:22.800> a<02:32:23.000> type<02:32:23.359> I<02:32:24.040> nav<02:32:24.439> link<02:32:25.040> interface<02:32:25.600> nav
02:32:25.910 --> 02:32:25.920 align:start position:0%
is of a type I nav link interface nav
02:32:25.920 --> 02:32:29.469 align:start position:0%
is of a type I nav link interface nav
link<02:32:26.439> which<02:32:26.600> we<02:32:26.720> can<02:32:26.960> import<02:32:27.399> from<02:32:27.640> at/<02:32:28.600> types
02:32:29.469 --> 02:32:29.479 align:start position:0%
link which we can import from at/ types
02:32:29.479 --> 02:32:31.510 align:start position:0%
link which we can import from at/ types
and<02:32:29.600> then<02:32:29.720> you<02:32:29.840> can<02:32:30.000> open<02:32:30.240> up<02:32:30.439> a<02:32:30.640> new<02:32:30.880> function
02:32:31.510 --> 02:32:31.520 align:start position:0%
and then you can open up a new function
02:32:31.520 --> 02:32:35.309 align:start position:0%
and then you can open up a new function
block<02:32:32.520> also<02:32:33.080> import<02:32:33.520> sidebar<02:32:33.960> links<02:32:34.479> from<02:32:34.720> ad
02:32:35.309 --> 02:32:35.319 align:start position:0%
block also import sidebar links from ad
02:32:35.319 --> 02:32:38.910 align:start position:0%
block also import sidebar links from ad
SLC<02:32:35.680> constants<02:32:36.680> here<02:32:37.040> we<02:32:37.160> can<02:32:37.399> simply<02:32:38.080> return
02:32:38.910 --> 02:32:38.920 align:start position:0%
SLC constants here we can simply return
02:32:38.920 --> 02:32:42.389 align:start position:0%
SLC constants here we can simply return
something<02:32:39.240> known<02:32:39.600> as<02:32:39.760> a<02:32:39.960> nav<02:32:40.720> link<02:32:41.720> and<02:32:41.880> a<02:32:42.080> nav
02:32:42.389 --> 02:32:42.399 align:start position:0%
something known as a nav link and a nav
02:32:42.399 --> 02:32:44.870 align:start position:0%
something known as a nav link and a nav
link<02:32:42.640> is<02:32:42.760> a<02:32:42.960> component<02:32:43.680> coming<02:32:44.000> from<02:32:44.359> react
02:32:44.870 --> 02:32:44.880 align:start position:0%
link is a component coming from react
02:32:44.880 --> 02:32:47.590 align:start position:0%
link is a component coming from react
router<02:32:45.279> Dom<02:32:45.800> so<02:32:46.040> right<02:32:46.279> right<02:32:46.479> here<02:32:46.680> on<02:32:47.000> top<02:32:47.479> we
02:32:47.590 --> 02:32:47.600 align:start position:0%
router Dom so right right here on top we
02:32:47.600 --> 02:32:52.510 align:start position:0%
router Dom so right right here on top we
can<02:32:47.760> import<02:32:48.160> link<02:32:49.160> as<02:32:49.319> well<02:32:49.600> as<02:32:49.800> a<02:32:50.279> nav<02:32:51.520> link
02:32:52.510 --> 02:32:52.520 align:start position:0%
can import link as well as a nav link
02:32:52.520 --> 02:32:55.910 align:start position:0%
can import link as well as a nav link
there<02:32:52.680> we<02:32:52.880> go<02:32:53.640> so<02:32:53.840> now<02:32:54.200> going<02:32:54.520> here<02:32:55.240> each<02:32:55.520> nav
02:32:55.910 --> 02:32:55.920 align:start position:0%
there we go so now going here each nav
02:32:55.920 --> 02:32:58.990 align:start position:0%
there we go so now going here each nav
link<02:32:56.479> has<02:32:56.640> to<02:32:56.920> have<02:32:57.160> a<02:32:57.359> two<02:32:57.800> property<02:32:58.520> so<02:32:58.800> where
02:32:58.990 --> 02:32:59.000 align:start position:0%
link has to have a two property so where
02:32:59.000 --> 02:33:01.670 align:start position:0%
link has to have a two property so where
are<02:32:59.160> we<02:32:59.359> going<02:32:59.680> to<02:33:00.680> in<02:33:00.920> this<02:33:01.120> case<02:33:01.319> we're<02:33:01.520> going
02:33:01.670 --> 02:33:01.680 align:start position:0%
are we going to in this case we're going
02:33:01.680 --> 02:33:04.429 align:start position:0%
are we going to in this case we're going
to<02:33:01.840> link<02:33:02.240> that<02:33:02.600> route<02:33:03.319> because<02:33:03.640> each<02:33:03.920> sidebar
02:33:04.429 --> 02:33:04.439 align:start position:0%
to link that route because each sidebar
02:33:04.439 --> 02:33:08.469 align:start position:0%
to link that route because each sidebar
link<02:33:05.160> has<02:33:05.319> a<02:33:05.560> route<02:33:06.319> an<02:33:06.479> image<02:33:06.760> URL<02:33:07.640> and<02:33:07.880> a
02:33:08.469 --> 02:33:08.479 align:start position:0%
link has a route an image URL and a
02:33:08.479 --> 02:33:11.790 align:start position:0%
link has a route an image URL and a
label<02:33:09.479> so<02:33:09.800> now<02:33:10.479> we<02:33:10.600> can<02:33:10.760> also<02:33:11.000> give<02:33:11.120> it<02:33:11.240> a<02:33:11.439> class
02:33:11.790 --> 02:33:11.800 align:start position:0%
label so now we can also give it a class
02:33:11.800 --> 02:33:17.030 align:start position:0%
label so now we can also give it a class
name<02:33:12.600> equal<02:33:12.920> to<02:33:13.200> left<02:33:14.240> sidebar<02:33:15.240> daslink
02:33:17.030 --> 02:33:17.040 align:start position:0%
name equal to left sidebar daslink
02:33:17.040 --> 02:33:18.710 align:start position:0%
name equal to left sidebar daslink
and<02:33:17.200> as<02:33:17.319> a<02:33:17.439> matter<02:33:17.680> of<02:33:17.920> fact<02:33:18.240> I<02:33:18.359> think<02:33:18.479> we<02:33:18.600> need
02:33:18.710 --> 02:33:18.720 align:start position:0%
and as a matter of fact I think we need
02:33:18.720 --> 02:33:22.230 align:start position:0%
and as a matter of fact I think we need
to<02:33:19.000> wrap<02:33:19.640> this<02:33:20.040> nav<02:33:20.439> link<02:33:20.840> with<02:33:21.000> an<02:33:21.200> Li<02:33:22.000> because
02:33:22.230 --> 02:33:22.240 align:start position:0%
to wrap this nav link with an Li because
02:33:22.240 --> 02:33:25.150 align:start position:0%
to wrap this nav link with an Li because
An<02:33:22.399> Li<02:33:22.800> is<02:33:22.920> a<02:33:23.160> list<02:33:23.560> item<02:33:23.880> that<02:33:24.040> has<02:33:24.319> to<02:33:24.520> go
02:33:25.150 --> 02:33:25.160 align:start position:0%
An Li is a list item that has to go
02:33:25.160 --> 02:33:27.950 align:start position:0%
An Li is a list item that has to go
between<02:33:25.600> the<02:33:25.960> uls<02:33:26.960> so<02:33:27.120> you<02:33:27.200> can<02:33:27.359> put<02:33:27.520> the<02:33:27.680> nav
02:33:27.950 --> 02:33:27.960 align:start position:0%
between the uls so you can put the nav
02:33:27.960 --> 02:33:29.790 align:start position:0%
between the uls so you can put the nav
link<02:33:28.319> between<02:33:29.040> the
02:33:29.790 --> 02:33:29.800 align:start position:0%
link between the
02:33:29.800 --> 02:33:32.389 align:start position:0%
link between the
Li<02:33:30.800> and<02:33:31.000> then<02:33:31.240> the<02:33:31.439> class<02:33:31.760> name<02:33:31.920> of<02:33:32.200> left
02:33:32.389 --> 02:33:32.399 align:start position:0%
Li and then the class name of left
02:33:32.399 --> 02:33:35.110 align:start position:0%
Li and then the class name of left
sidebar<02:33:32.840> link<02:33:33.359> is<02:33:33.560> actually<02:33:33.880> going<02:33:34.040> to<02:33:34.240> go<02:33:34.520> to
02:33:35.110 --> 02:33:35.120 align:start position:0%
sidebar link is actually going to go to
02:33:35.120 --> 02:33:37.429 align:start position:0%
sidebar link is actually going to go to
the<02:33:35.279> LI<02:33:36.000> since<02:33:36.200> we're<02:33:36.399> mapping<02:33:36.800> over<02:33:37.040> it<02:33:37.279> we
02:33:37.429 --> 02:33:37.439 align:start position:0%
the LI since we're mapping over it we
02:33:37.439 --> 02:33:39.630 align:start position:0%
the LI since we're mapping over it we
also<02:33:37.640> have<02:33:37.760> to<02:33:37.880> give<02:33:38.000> it<02:33:38.120> a<02:33:38.279> key<02:33:38.960> equal<02:33:39.319> to
02:33:39.630 --> 02:33:39.640 align:start position:0%
also have to give it a key equal to
02:33:39.640 --> 02:33:42.790 align:start position:0%
also have to give it a key equal to
link.<02:33:40.319> label<02:33:41.080> now<02:33:41.640> our<02:33:41.840> nav<02:33:42.200> link<02:33:42.399> is<02:33:42.520> going<02:33:42.680> to
02:33:42.790 --> 02:33:42.800 align:start position:0%
link. label now our nav link is going to
02:33:42.800 --> 02:33:45.070 align:start position:0%
link. label now our nav link is going to
say<02:33:43.120> something<02:33:43.600> right<02:33:44.000> and<02:33:44.240> that<02:33:44.479> something
02:33:45.070 --> 02:33:45.080 align:start position:0%
say something right and that something
02:33:45.080 --> 02:33:46.670 align:start position:0%
say something right and that something
is<02:33:45.439> link
02:33:46.670 --> 02:33:46.680 align:start position:0%
is link
02:33:46.680 --> 02:33:49.510 align:start position:0%
is link
label<02:33:47.640> so<02:33:47.800> if<02:33:47.880> we<02:33:48.040> save<02:33:48.319> it<02:33:48.680> now<02:33:48.880> you<02:33:49.000> can<02:33:49.120> see
02:33:49.510 --> 02:33:49.520 align:start position:0%
label so if we save it now you can see
02:33:49.520 --> 02:33:51.990 align:start position:0%
label so if we save it now you can see
all<02:33:49.800> of<02:33:50.040> these<02:33:50.319> different<02:33:50.800> labels<02:33:51.800> let's
02:33:51.990 --> 02:33:52.000 align:start position:0%
all of these different labels let's
02:33:52.000 --> 02:33:54.510 align:start position:0%
all of these different labels let's
style<02:33:52.319> it<02:33:52.439> a<02:33:52.560> bit<02:33:52.760> further<02:33:53.479> by<02:33:53.720> giving<02:33:53.960> it<02:33:54.240> a
02:33:54.510 --> 02:33:54.520 align:start position:0%
style it a bit further by giving it a
02:33:54.520 --> 02:33:59.830 align:start position:0%
style it a bit further by giving it a
class<02:33:54.840> name<02:33:55.479> equal<02:33:56.200> to<02:33:57.399> flex<02:33:58.399> gap<02:33:58.680> of<02:33:58.880> four
02:33:59.830 --> 02:33:59.840 align:start position:0%
class name equal to flex gap of four
02:33:59.840 --> 02:34:04.070 align:start position:0%
class name equal to flex gap of four
items<02:34:00.319> Das<02:34:00.560> Center<02:34:01.479> and<02:34:01.920> padding<02:34:02.399> off<02:34:03.080> four
02:34:04.070 --> 02:34:04.080 align:start position:0%
items Das Center and padding off four
02:34:04.080 --> 02:34:05.990 align:start position:0%
items Das Center and padding off four
there<02:34:04.240> we<02:34:04.439> go<02:34:04.840> this<02:34:05.000> gives<02:34:05.200> us<02:34:05.479> much<02:34:05.680> more
02:34:05.990 --> 02:34:06.000 align:start position:0%
there we go this gives us much more
02:34:06.000 --> 02:34:08.830 align:start position:0%
there we go this gives us much more
space<02:34:06.920> we<02:34:07.040> can<02:34:07.240> also<02:34:07.520> render<02:34:07.880> an<02:34:08.120> image<02:34:08.640> right
02:34:08.830 --> 02:34:08.840 align:start position:0%
space we can also render an image right
02:34:08.840 --> 02:34:11.870 align:start position:0%
space we can also render an image right
here<02:34:09.040> next<02:34:09.200> to<02:34:09.319> the<02:34:09.479> label<02:34:10.200> by<02:34:10.319> saying
02:34:11.870 --> 02:34:11.880 align:start position:0%
here next to the label by saying
02:34:11.880 --> 02:34:16.870 align:start position:0%
here next to the label by saying
IMG<02:34:12.880> we<02:34:13.000> can<02:34:13.160> give<02:34:13.279> it<02:34:13.439> a<02:34:14.040> source<02:34:15.040> equal<02:34:15.359> to
02:34:16.870 --> 02:34:16.880 align:start position:0%
IMG we can give it a source equal to
02:34:16.880 --> 02:34:22.110 align:start position:0%
IMG we can give it a source equal to
link.<02:34:17.880> image<02:34:18.399> URL<02:34:19.399> alt<02:34:19.960> is<02:34:20.120> equal<02:34:20.359> to<02:34:20.600> link.
02:34:22.110 --> 02:34:22.120 align:start position:0%
link. image URL alt is equal to link.
02:34:22.120 --> 02:34:24.870 align:start position:0%
link. image URL alt is equal to link.
label<02:34:23.120> and<02:34:23.279> we<02:34:23.399> can<02:34:23.560> give<02:34:23.640> it<02:34:23.760> a<02:34:23.880> class<02:34:24.319> name
02:34:24.870 --> 02:34:24.880 align:start position:0%
label and we can give it a class name
02:34:24.880 --> 02:34:27.950 align:start position:0%
label and we can give it a class name
equal<02:34:25.439> to<02:34:26.439> group-
02:34:27.950 --> 02:34:27.960 align:start position:0%
equal to group-
02:34:27.960 --> 02:34:31.550 align:start position:0%
equal to group-
hover<02:34:28.960> invert<02:34:29.800> D<02:34:30.319> white<02:34:30.880> so<02:34:31.080> this<02:34:31.160> is<02:34:31.319> just<02:34:31.439> to
02:34:31.550 --> 02:34:31.560 align:start position:0%
hover invert D white so this is just to
02:34:31.560 --> 02:34:34.710 align:start position:0%
hover invert D white so this is just to
make<02:34:31.760> the<02:34:31.880> color<02:34:32.840> work<02:34:33.840> and<02:34:34.040> there<02:34:34.160> we<02:34:34.319> go<02:34:34.560> so
02:34:34.710 --> 02:34:34.720 align:start position:0%
make the color work and there we go so
02:34:34.720 --> 02:34:36.630 align:start position:0%
make the color work and there we go so
now<02:34:34.840> if<02:34:34.920> you<02:34:35.040> hover<02:34:35.359> over<02:34:35.600> it<02:34:35.960> you<02:34:36.120> cannot<02:34:36.439> see
02:34:36.630 --> 02:34:36.640 align:start position:0%
now if you hover over it you cannot see
02:34:36.640 --> 02:34:39.269 align:start position:0%
now if you hover over it you cannot see
it<02:34:36.960> we're<02:34:37.200> about<02:34:37.359> to<02:34:37.560> fix<02:34:37.920> that<02:34:38.680> but<02:34:38.960> this<02:34:39.080> is
02:34:39.269 --> 02:34:39.279 align:start position:0%
it we're about to fix that but this is
02:34:39.279 --> 02:34:41.590 align:start position:0%
it we're about to fix that but this is
looking<02:34:39.640> good<02:34:40.359> but<02:34:40.520> on<02:34:40.680> the<02:34:40.880> final<02:34:41.200> version<02:34:41.479> of
02:34:41.590 --> 02:34:41.600 align:start position:0%
looking good but on the final version of
02:34:41.600 --> 02:34:43.790 align:start position:0%
looking good but on the final version of
our<02:34:41.800> application<02:34:42.800> you<02:34:42.920> can<02:34:43.080> see<02:34:43.279> that<02:34:43.439> we<02:34:43.600> have
02:34:43.790 --> 02:34:43.800 align:start position:0%
our application you can see that we have
02:34:43.800 --> 02:34:47.110 align:start position:0%
our application you can see that we have
a<02:34:44.040> currently<02:34:44.760> active<02:34:45.439> link<02:34:46.439> so<02:34:46.640> we<02:34:46.760> can<02:34:46.920> do
02:34:47.110 --> 02:34:47.120 align:start position:0%
a currently active link so we can do
02:34:47.120 --> 02:34:49.510 align:start position:0%
a currently active link so we can do
that<02:34:47.399> here<02:34:47.680> as<02:34:47.840> well<02:34:48.600> but<02:34:48.800> how<02:34:48.920> do<02:34:49.080> we<02:34:49.240> figure
02:34:49.510 --> 02:34:49.520 align:start position:0%
that here as well but how do we figure
02:34:49.520 --> 02:34:53.150 align:start position:0%
that here as well but how do we figure
out<02:34:49.960> on<02:34:50.279> which<02:34:50.560> link<02:34:50.920> are<02:34:51.160> we<02:34:51.680> on<02:34:52.680> well<02:34:52.880> we<02:34:53.040> have
02:34:53.150 --> 02:34:53.160 align:start position:0%
out on which link are we on well we have
02:34:53.160 --> 02:34:56.510 align:start position:0%
out on which link are we on well we have
to<02:34:53.319> use<02:34:53.680> something<02:34:54.040> known<02:34:54.359> as<02:34:54.479> a<02:34:54.760> use<02:34:55.520> location
02:34:56.510 --> 02:34:56.520 align:start position:0%
to use something known as a use location
02:34:56.520 --> 02:34:59.190 align:start position:0%
to use something known as a use location
so<02:34:56.880> right<02:34:57.080> here<02:34:57.359> from<02:34:57.640> react<02:34:58.000> R<02:34:58.359> Dom<02:34:58.880> we<02:34:58.960> can
02:34:59.190 --> 02:34:59.200 align:start position:0%
so right here from react R Dom we can
02:34:59.200 --> 02:35:03.150 align:start position:0%
so right here from react R Dom we can
also<02:34:59.600> import<02:35:00.200> use<02:35:00.760> location<02:35:01.680> which<02:35:01.800> is<02:35:01.920> a<02:35:02.200> hook
02:35:03.150 --> 02:35:03.160 align:start position:0%
also import use location which is a hook
02:35:03.160 --> 02:35:05.349 align:start position:0%
also import use location which is a hook
and<02:35:03.319> then<02:35:03.439> we<02:35:03.560> can<02:35:03.760> declare<02:35:04.200> it<02:35:04.800> right<02:35:05.000> here<02:35:05.200> at
02:35:05.349 --> 02:35:05.359 align:start position:0%
and then we can declare it right here at
02:35:05.359 --> 02:35:09.710 align:start position:0%
and then we can declare it right here at
the<02:35:05.600> top<02:35:06.200> by<02:35:06.399> saying<02:35:07.080> const<02:35:08.080> path
02:35:09.710 --> 02:35:09.720 align:start position:0%
the top by saying const path
02:35:09.720 --> 02:35:14.070 align:start position:0%
the top by saying const path
name<02:35:10.720> is<02:35:11.000> equal<02:35:11.319> to<02:35:12.040> use
02:35:14.070 --> 02:35:14.080 align:start position:0%
name is equal to use
02:35:14.080 --> 02:35:16.550 align:start position:0%
name is equal to use
location<02:35:15.080> and<02:35:15.240> now<02:35:15.439> we<02:35:15.520> can<02:35:15.680> use<02:35:16.080> that<02:35:16.319> path
02:35:16.550 --> 02:35:16.560 align:start position:0%
location and now we can use that path
02:35:16.560 --> 02:35:19.990 align:start position:0%
location and now we can use that path
name<02:35:17.080> right<02:35:17.319> here<02:35:17.800> in<02:35:17.960> the<02:35:18.120> sidebar<02:35:18.800> links<02:35:19.800> to
02:35:19.990 --> 02:35:20.000 align:start position:0%
name right here in the sidebar links to
02:35:20.000 --> 02:35:22.190 align:start position:0%
name right here in the sidebar links to
create<02:35:20.240> a<02:35:20.399> Boolean<02:35:20.960> variable<02:35:21.520> called<02:35:21.880> is
02:35:22.190 --> 02:35:22.200 align:start position:0%
create a Boolean variable called is
02:35:22.200 --> 02:35:26.469 align:start position:0%
create a Boolean variable called is
active<02:35:22.960> so<02:35:23.240> const<02:35:23.800> is<02:35:24.240> active<02:35:25.160> is<02:35:25.399> equal<02:35:25.680> to
02:35:26.469 --> 02:35:26.479 align:start position:0%
active so const is active is equal to
02:35:26.479 --> 02:35:28.910 align:start position:0%
active so const is active is equal to
and<02:35:26.720> it's<02:35:27.080> active<02:35:27.720> if<02:35:27.880> the<02:35:28.120> path<02:35:28.359> name<02:35:28.680> is
02:35:28.910 --> 02:35:28.920 align:start position:0%
and it's active if the path name is
02:35:28.920 --> 02:35:33.030 align:start position:0%
and it's active if the path name is
equal<02:35:29.240> to<02:35:29.760> link.<02:35:30.840> route<02:35:31.840> based<02:35:32.439> off<02:35:32.680> of<02:35:32.840> this
02:35:33.030 --> 02:35:33.040 align:start position:0%
equal to link. route based off of this
02:35:33.040 --> 02:35:35.429 align:start position:0%
equal to link. route based off of this
is<02:35:33.359> active<02:35:33.680> Boolean<02:35:34.560> we<02:35:34.680> can<02:35:34.880> also<02:35:35.160> change
02:35:35.429 --> 02:35:35.439 align:start position:0%
is active Boolean we can also change
02:35:35.439 --> 02:35:38.790 align:start position:0%
is active Boolean we can also change
some<02:35:35.680> Styles<02:35:36.680> so<02:35:36.880> in<02:35:37.080> this<02:35:37.279> Li<02:35:38.120> we<02:35:38.240> can<02:35:38.399> make<02:35:38.520> it
02:35:38.790 --> 02:35:38.800 align:start position:0%
some Styles so in this Li we can make it
02:35:38.800 --> 02:35:41.550 align:start position:0%
some Styles so in this Li we can make it
Dynamic<02:35:39.800> by<02:35:40.000> turning<02:35:40.279> it<02:35:40.479> into<02:35:40.880> a<02:35:41.080> template
02:35:41.550 --> 02:35:41.560 align:start position:0%
Dynamic by turning it into a template
02:35:41.560 --> 02:35:46.590 align:start position:0%
Dynamic by turning it into a template
string<02:35:42.399> like<02:35:42.840> so<02:35:43.840> and<02:35:44.080> then<02:35:44.520> we<02:35:44.640> can<02:35:44.960> say
02:35:46.590 --> 02:35:46.600 align:start position:0%
string like so and then we can say
02:35:46.600 --> 02:35:48.230 align:start position:0%
string like so and then we can say
if<02:35:47.319> is
02:35:48.230 --> 02:35:48.240 align:start position:0%
if is
02:35:48.240 --> 02:35:52.309 align:start position:0%
if is
active<02:35:49.240> then<02:35:49.800> also<02:35:50.120> render<02:35:50.560> the<02:35:50.720> BG<02:35:51.240> primary
02:35:52.309 --> 02:35:52.319 align:start position:0%
active then also render the BG primary
02:35:52.319 --> 02:35:54.830 align:start position:0%
active then also render the BG primary
500<02:35:53.319> so<02:35:53.439> if<02:35:53.560> we<02:35:53.680> save<02:35:53.880> it<02:35:54.279> you<02:35:54.399> can<02:35:54.520> see<02:35:54.680> the
02:35:54.830 --> 02:35:54.840 align:start position:0%
500 so if we save it you can see the
02:35:54.840 --> 02:35:57.389 align:start position:0%
500 so if we save it you can see the
color<02:35:55.240> changes<02:35:56.240> now<02:35:56.439> the<02:35:56.600> last<02:35:56.840> thing<02:35:57.000> is<02:35:57.160> also
02:35:57.389 --> 02:35:57.399 align:start position:0%
color changes now the last thing is also
02:35:57.399 --> 02:36:00.070 align:start position:0%
color changes now the last thing is also
to<02:35:57.560> change<02:35:58.000> the<02:35:58.160> color<02:35:58.399> of<02:35:58.560> the<02:35:58.720> icon<02:35:59.640> so<02:35:59.840> let's
02:36:00.070 --> 02:36:00.080 align:start position:0%
to change the color of the icon so let's
02:36:00.080 --> 02:36:02.389 align:start position:0%
to change the color of the icon so let's
change<02:36:00.359> the<02:36:00.560> image<02:36:01.080> to<02:36:01.279> be<02:36:01.479> also<02:36:01.880> dyamic
02:36:02.389 --> 02:36:02.399 align:start position:0%
change the image to be also dyamic
02:36:02.399 --> 02:36:05.910 align:start position:0%
change the image to be also dyamic
template<02:36:02.920> string<02:36:03.920> and<02:36:04.200> if<02:36:04.319> it<02:36:04.479> is
02:36:05.910 --> 02:36:05.920 align:start position:0%
template string and if it is
02:36:05.920 --> 02:36:10.269 align:start position:0%
template string and if it is
active<02:36:06.920> then<02:36:07.319> we<02:36:07.439> can<02:36:07.640> call<02:36:08.080> the<02:36:08.319> invert<02:36:09.279> white
02:36:10.269 --> 02:36:10.279 align:start position:0%
active then we can call the invert white
02:36:10.279 --> 02:36:13.469 align:start position:0%
active then we can call the invert white
so<02:36:10.399> if<02:36:10.520> I<02:36:10.680> now<02:36:10.880> save<02:36:11.640> it<02:36:12.640> we<02:36:12.800> have<02:36:12.920> to<02:36:13.080> properly
02:36:13.469 --> 02:36:13.479 align:start position:0%
so if I now save it we have to properly
02:36:13.479 --> 02:36:14.910 align:start position:0%
so if I now save it we have to properly
spell<02:36:13.720> it<02:36:13.840> for<02:36:14.000> this<02:36:14.160> to
02:36:14.910 --> 02:36:14.920 align:start position:0%
spell it for this to
02:36:14.920 --> 02:36:17.150 align:start position:0%
spell it for this to
work<02:36:15.960> it<02:36:16.040> seems<02:36:16.240> like<02:36:16.359> we<02:36:16.479> have<02:36:16.640> one<02:36:16.840> extra
02:36:17.150 --> 02:36:17.160 align:start position:0%
work it seems like we have one extra
02:36:17.160 --> 02:36:20.710 align:start position:0%
work it seems like we have one extra
brace<02:36:17.840> so<02:36:17.960> if<02:36:18.080> we<02:36:18.279> fix<02:36:18.479> it<02:36:19.160> there<02:36:19.359> we<02:36:19.560> go<02:36:20.439> but<02:36:20.600> if
02:36:20.710 --> 02:36:20.720 align:start position:0%
brace so if we fix it there we go but if
02:36:20.720 --> 02:36:23.110 align:start position:0%
brace so if we fix it there we go but if
we<02:36:20.880> hover<02:36:21.359> it's<02:36:21.520> not<02:36:21.800> yet<02:36:22.000> fixed<02:36:22.520> so<02:36:22.680> let's<02:36:22.840> see
02:36:23.110 --> 02:36:23.120 align:start position:0%
we hover it's not yet fixed so let's see
02:36:23.120 --> 02:36:25.750 align:start position:0%
we hover it's not yet fixed so let's see
what<02:36:23.319> that<02:36:23.479> is<02:36:23.840> about<02:36:24.840> let's<02:36:25.040> try<02:36:25.200> to<02:36:25.399> properly
02:36:25.750 --> 02:36:25.760 align:start position:0%
what that is about let's try to properly
02:36:25.760 --> 02:36:28.150 align:start position:0%
what that is about let's try to properly
space<02:36:26.080> it<02:36:26.200> out<02:36:26.399> so<02:36:26.520> we<02:36:26.640> can<02:36:26.800> better<02:36:27.080> see<02:36:27.279> it
02:36:28.150 --> 02:36:28.160 align:start position:0%
space it out so we can better see it
02:36:28.160 --> 02:36:32.630 align:start position:0%
space it out so we can better see it
group<02:36:28.720> hover<02:36:29.720> invert<02:36:30.760> white<02:36:31.760> and<02:36:32.120> then<02:36:32.479> we
02:36:32.630 --> 02:36:32.640 align:start position:0%
group hover invert white and then we
02:36:32.640 --> 02:36:35.910 align:start position:0%
group hover invert white and then we
have<02:36:32.880> if<02:36:33.120> is<02:36:33.439> active<02:36:34.120> then<02:36:34.359> also<02:36:34.720> invert<02:36:35.120> white
02:36:35.910 --> 02:36:35.920 align:start position:0%
have if is active then also invert white
02:36:35.920 --> 02:36:38.349 align:start position:0%
have if is active then also invert white
if<02:36:36.040> we<02:36:36.200> go<02:36:36.479> here<02:36:37.279> you<02:36:37.399> can<02:36:37.520> see<02:36:37.720> that<02:36:37.840> it<02:36:38.000> works
02:36:38.349 --> 02:36:38.359 align:start position:0%
if we go here you can see that it works
02:36:38.359 --> 02:36:41.750 align:start position:0%
if we go here you can see that it works
really<02:36:38.680> nicely<02:36:39.279> it<02:36:39.479> inverts<02:36:40.479> but<02:36:40.640> in<02:36:40.880> this<02:36:41.080> one
02:36:41.750 --> 02:36:41.760 align:start position:0%
really nicely it inverts but in this one
02:36:41.760 --> 02:36:45.190 align:start position:0%
really nicely it inverts but in this one
it<02:36:42.319> doesn't<02:36:43.319> that's<02:36:43.960> interesting<02:36:44.960> that's
02:36:45.190 --> 02:36:45.200 align:start position:0%
it doesn't that's interesting that's
02:36:45.200 --> 02:36:47.710 align:start position:0%
it doesn't that's interesting that's
because<02:36:45.399> we<02:36:45.520> have<02:36:45.640> to<02:36:45.960> make<02:36:46.279> this<02:36:46.560> a<02:36:46.800> group<02:36:47.479> so
02:36:47.710 --> 02:36:47.720 align:start position:0%
because we have to make this a group so
02:36:47.720 --> 02:36:50.429 align:start position:0%
because we have to make this a group so
this<02:36:47.920> Li<02:36:48.680> actually<02:36:49.040> has<02:36:49.160> to<02:36:49.359> have<02:36:49.560> a<02:36:49.840> group
02:36:50.429 --> 02:36:50.439 align:start position:0%
this Li actually has to have a group
02:36:50.439 --> 02:36:52.710 align:start position:0%
this Li actually has to have a group
property<02:36:51.319> so<02:36:51.479> it<02:36:51.600> knows<02:36:51.920> it's<02:36:52.120> grouped<02:36:52.520> with
02:36:52.710 --> 02:36:52.720 align:start position:0%
property so it knows it's grouped with
02:36:52.720 --> 02:36:54.710 align:start position:0%
property so it knows it's grouped with
this<02:36:52.880> so<02:36:53.000> if<02:36:53.080> we<02:36:53.200> hover<02:36:53.479> over<02:36:53.840> this<02:36:54.560> it
02:36:54.710 --> 02:36:54.720 align:start position:0%
this so if we hover over this it
02:36:54.720 --> 02:36:57.309 align:start position:0%
this so if we hover over this it
actually<02:36:55.080> applies<02:36:55.560> a<02:36:55.800> group<02:36:56.160> hover<02:36:56.960> there<02:36:57.120> we
02:36:57.309 --> 02:36:57.319 align:start position:0%
actually applies a group hover there we
02:36:57.319 --> 02:36:59.950 align:start position:0%
actually applies a group hover there we
go<02:36:57.800> so<02:36:58.080> now<02:36:58.359> this<02:36:58.479> is<02:36:58.760> such<02:36:58.960> a<02:36:59.200> wonderful
02:36:59.950 --> 02:36:59.960 align:start position:0%
go so now this is such a wonderful
02:36:59.960 --> 02:37:02.190 align:start position:0%
go so now this is such a wonderful
sidebar<02:37:00.960> the<02:37:01.160> last<02:37:01.319> thing<02:37:01.439> we're<02:37:01.600> missing<02:37:02.040> is
02:37:02.190 --> 02:37:02.200 align:start position:0%
sidebar the last thing we're missing is
02:37:02.200 --> 02:37:05.150 align:start position:0%
sidebar the last thing we're missing is
the<02:37:02.359> logout<02:37:03.240> functionality<02:37:04.240> so<02:37:04.560> let's<02:37:04.880> add
02:37:05.150 --> 02:37:05.160 align:start position:0%
the logout functionality so let's add
02:37:05.160 --> 02:37:09.030 align:start position:0%
the logout functionality so let's add
that<02:37:05.560> right<02:37:05.800> here<02:37:06.479> below<02:37:07.279> this<02:37:07.720> ul<02:37:08.720> and<02:37:08.880> then
02:37:09.030 --> 02:37:09.040 align:start position:0%
that right here below this ul and then
02:37:09.040 --> 02:37:12.150 align:start position:0%
that right here below this ul and then
going<02:37:09.359> one<02:37:09.560> more<02:37:09.880> time<02:37:10.160> below<02:37:10.520> the<02:37:10.800> div<02:37:11.800> here
02:37:12.150 --> 02:37:12.160 align:start position:0%
going one more time below the div here
02:37:12.160 --> 02:37:14.950 align:start position:0%
going one more time below the div here
we<02:37:12.279> want<02:37:12.399> to<02:37:12.680> add<02:37:12.960> a<02:37:13.240> button<02:37:14.240> and<02:37:14.439> this<02:37:14.600> button
02:37:14.950 --> 02:37:14.960 align:start position:0%
we want to add a button and this button
02:37:14.960 --> 02:37:16.750 align:start position:0%
we want to add a button and this button
is<02:37:15.080> going<02:37:15.240> to<02:37:15.359> be<02:37:15.520> only<02:37:15.880> almost<02:37:16.160> exactly<02:37:16.640> the
02:37:16.750 --> 02:37:16.760 align:start position:0%
is going to be only almost exactly the
02:37:16.760 --> 02:37:19.349 align:start position:0%
is going to be only almost exactly the
same<02:37:17.160> as<02:37:17.240> in<02:37:17.399> the<02:37:17.600> top<02:37:17.880> bar<02:37:18.600> so<02:37:18.760> we<02:37:18.880> can<02:37:19.040> just
02:37:19.349 --> 02:37:19.359 align:start position:0%
same as in the top bar so we can just
02:37:19.359 --> 02:37:22.469 align:start position:0%
same as in the top bar so we can just
copy<02:37:20.160> this<02:37:20.439> entire<02:37:20.960> sign<02:37:21.319> out
02:37:22.469 --> 02:37:22.479 align:start position:0%
copy this entire sign out
02:37:22.479 --> 02:37:26.469 align:start position:0%
copy this entire sign out
button<02:37:23.479> and<02:37:23.680> then<02:37:24.000> paste<02:37:24.240> it<02:37:24.960> here<02:37:25.960> if<02:37:26.080> you<02:37:26.200> do
02:37:26.469 --> 02:37:26.479 align:start position:0%
button and then paste it here if you do
02:37:26.479 --> 02:37:29.070 align:start position:0%
button and then paste it here if you do
that<02:37:27.000> you<02:37:27.120> can<02:37:27.279> notice<02:37:27.600> the<02:37:27.720> icon<02:37:28.120> appear<02:37:28.880> but
02:37:29.070 --> 02:37:29.080 align:start position:0%
that you can notice the icon appear but
02:37:29.080 --> 02:37:31.469 align:start position:0%
that you can notice the icon appear but
here<02:37:29.240> we<02:37:29.399> have<02:37:29.520> a<02:37:29.640> bit<02:37:29.840> more<02:37:30.319> space<02:37:31.000> so<02:37:31.160> we<02:37:31.279> can
02:37:31.469 --> 02:37:31.479 align:start position:0%
here we have a bit more space so we can
02:37:31.479 --> 02:37:34.710 align:start position:0%
here we have a bit more space so we can
also<02:37:31.840> add<02:37:32.040> the<02:37:32.240> text<02:37:32.760> that<02:37:32.880> says<02:37:33.200> log<02:37:33.560> out<02:37:34.560> and
02:37:34.710 --> 02:37:34.720 align:start position:0%
also add the text that says log out and
02:37:34.720 --> 02:37:36.550 align:start position:0%
also add the text that says log out and
let's<02:37:34.880> also<02:37:35.120> space<02:37:35.520> this<02:37:35.720> correctly<02:37:36.319> so<02:37:36.439> we
02:37:36.550 --> 02:37:36.560 align:start position:0%
let's also space this correctly so we
02:37:36.560 --> 02:37:39.510 align:start position:0%
let's also space this correctly so we
have<02:37:36.680> a<02:37:36.880> variant<02:37:37.439> class<02:37:37.800> name<02:37:38.399> onclick<02:37:39.399> and
02:37:39.510 --> 02:37:39.520 align:start position:0%
have a variant class name onclick and
02:37:39.520 --> 02:37:42.429 align:start position:0%
have a variant class name onclick and
then<02:37:39.640> we<02:37:39.840> have<02:37:39.960> an<02:37:40.279> image<02:37:41.279> and<02:37:41.399> then<02:37:41.640> finally
02:37:42.429 --> 02:37:42.439 align:start position:0%
then we have an image and then finally
02:37:42.439 --> 02:37:44.750 align:start position:0%
then we have an image and then finally
below<02:37:42.800> the<02:37:42.960> image<02:37:43.399> we<02:37:43.520> can<02:37:43.680> have<02:37:43.800> a<02:37:43.960> P<02:37:44.240> tag
02:37:44.750 --> 02:37:44.760 align:start position:0%
below the image we can have a P tag
02:37:44.760 --> 02:37:46.910 align:start position:0%
below the image we can have a P tag
that's<02:37:44.920> going<02:37:45.080> to<02:37:45.200> say<02:37:45.439> log<02:37:45.640> out<02:37:45.840> out<02:37:46.680> and<02:37:46.800> we
02:37:46.910 --> 02:37:46.920 align:start position:0%
that's going to say log out out and we
02:37:46.920 --> 02:37:51.429 align:start position:0%
that's going to say log out out and we
can<02:37:47.040> give<02:37:47.160> it<02:37:47.240> a<02:37:47.479> class<02:37:47.960> name<02:37:48.960> equal<02:37:49.279> to<02:37:50.120> small
02:37:51.429 --> 02:37:51.439 align:start position:0%
can give it a class name equal to small
02:37:51.439 --> 02:37:56.429 align:start position:0%
can give it a class name equal to small
medium<02:37:52.439> and<02:37:53.000> LG<02:37:54.000> base<02:37:54.760> medium<02:37:55.760> so<02:37:55.920> if<02:37:56.040> we<02:37:56.200> save
02:37:56.429 --> 02:37:56.439 align:start position:0%
medium and LG base medium so if we save
02:37:56.439 --> 02:37:59.230 align:start position:0%
medium and LG base medium so if we save
it<02:37:56.840> you<02:37:56.960> can<02:37:57.120> see<02:37:57.359> log<02:37:57.600> out<02:37:58.399> and<02:37:58.680> that
02:37:59.230 --> 02:37:59.240 align:start position:0%
it you can see log out and that
02:37:59.240 --> 02:38:02.309 align:start position:0%
it you can see log out and that
concludes<02:38:00.120> our<02:38:00.720> sidebar<02:38:01.720> of<02:38:01.880> course<02:38:02.080> now<02:38:02.240> if
02:38:02.309 --> 02:38:02.319 align:start position:0%
concludes our sidebar of course now if
02:38:02.319 --> 02:38:04.469 align:start position:0%
concludes our sidebar of course now if
you<02:38:02.439> try<02:38:02.680> clicking<02:38:03.080> explore<02:38:04.040> nothing's<02:38:04.399> going
02:38:04.469 --> 02:38:04.479 align:start position:0%
you try clicking explore nothing's going
02:38:04.479 --> 02:38:07.349 align:start position:0%
you try clicking explore nothing's going
to<02:38:04.720> happen<02:38:05.359> because<02:38:05.760> that<02:38:06.040> route<02:38:06.680> doesn't<02:38:07.080> yet
02:38:07.349 --> 02:38:07.359 align:start position:0%
to happen because that route doesn't yet
02:38:07.359 --> 02:38:09.790 align:start position:0%
to happen because that route doesn't yet
exist<02:38:08.319> so<02:38:08.560> while<02:38:08.760> we're<02:38:09.040> here<02:38:09.399> what<02:38:09.479> do<02:38:09.600> you
02:38:09.790 --> 02:38:09.800 align:start position:0%
exist so while we're here what do you
02:38:09.800 --> 02:38:12.269 align:start position:0%
exist so while we're here what do you
say<02:38:10.000> that<02:38:10.120> we<02:38:10.279> implement<02:38:10.800> the<02:38:11.000> routing<02:38:12.000> so
02:38:12.269 --> 02:38:12.279 align:start position:0%
say that we implement the routing so
02:38:12.279 --> 02:38:13.990 align:start position:0%
say that we implement the routing so
that<02:38:12.520> everything<02:38:12.880> we<02:38:13.040> work<02:38:13.279> so<02:38:13.479> hard<02:38:13.720> on
02:38:13.990 --> 02:38:14.000 align:start position:0%
that everything we work so hard on
02:38:14.000 --> 02:38:17.269 align:start position:0%
that everything we work so hard on
doesn't<02:38:14.399> just<02:38:14.840> disappear<02:38:15.960> so<02:38:16.200> to<02:38:16.399> do<02:38:16.640> that<02:38:17.160> we
02:38:17.269 --> 02:38:17.279 align:start position:0%
doesn't just disappear so to do that we
02:38:17.279 --> 02:38:21.389 align:start position:0%
doesn't just disappear so to do that we
can<02:38:17.439> now<02:38:17.680> go<02:38:18.080> back<02:38:18.760> to<02:38:19.120> our<02:38:19.720> main<02:38:20.720> or<02:38:20.960> rather<02:38:21.240> to
02:38:21.389 --> 02:38:21.399 align:start position:0%
can now go back to our main or rather to
02:38:21.399 --> 02:38:23.309 align:start position:0%
can now go back to our main or rather to
our<02:38:21.680> app<02:38:22.160> right<02:38:22.399> here<02:38:22.680> because<02:38:23.000> that's<02:38:23.200> where
02:38:23.309 --> 02:38:23.319 align:start position:0%
our app right here because that's where
02:38:23.319 --> 02:38:25.670 align:start position:0%
our app right here because that's where
we<02:38:23.479> have<02:38:23.600> the<02:38:23.760> routing<02:38:24.520> and<02:38:24.680> we<02:38:24.760> can<02:38:25.000> Implement
02:38:25.670 --> 02:38:25.680 align:start position:0%
we have the routing and we can Implement
02:38:25.680 --> 02:38:27.670 align:start position:0%
we have the routing and we can Implement
all<02:38:25.960> the<02:38:26.160> other<02:38:26.560> private
02:38:27.670 --> 02:38:27.680 align:start position:0%
all the other private
02:38:27.680 --> 02:38:30.910 align:start position:0%
all the other private
routes<02:38:28.680> and<02:38:28.880> trust<02:38:29.200> me<02:38:29.680> we're<02:38:29.880> going<02:38:29.960> to<02:38:30.240> have
02:38:30.910 --> 02:38:30.920 align:start position:0%
routes and trust me we're going to have
02:38:30.920 --> 02:38:34.190 align:start position:0%
routes and trust me we're going to have
quite<02:38:31.319> a<02:38:31.479> few<02:38:32.399> so<02:38:32.640> let's<02:38:32.880> create<02:38:33.120> a<02:38:33.279> new<02:38:33.520> route
02:38:34.190 --> 02:38:34.200 align:start position:0%
quite a few so let's create a new route
02:38:34.200 --> 02:38:35.670 align:start position:0%
quite a few so let's create a new route
which<02:38:34.319> is<02:38:34.439> going<02:38:34.600> to<02:38:34.720> be<02:38:34.840> a<02:38:34.920> self-closing
02:38:35.670 --> 02:38:35.680 align:start position:0%
which is going to be a self-closing
02:38:35.680 --> 02:38:39.990 align:start position:0%
which is going to be a self-closing
component<02:38:36.520> with<02:38:36.720> a<02:38:37.080> path<02:38:37.520> of<02:38:37.800> for<02:38:38.240> SL<02:38:39.000> explore
02:38:39.990 --> 02:38:40.000 align:start position:0%
component with a path of for SL explore
02:38:40.000 --> 02:38:42.190 align:start position:0%
component with a path of for SL explore
and<02:38:40.240> it's<02:38:40.399> going<02:38:40.560> to<02:38:40.720> render<02:38:41.040> an<02:38:41.240> element
02:38:42.190 --> 02:38:42.200 align:start position:0%
and it's going to render an element
02:38:42.200 --> 02:38:44.150 align:start position:0%
and it's going to render an element
that's<02:38:42.399> going<02:38:42.560> to<02:38:42.680> be<02:38:42.880> called<02:38:43.800> I<02:38:43.880> think<02:38:44.040> you
02:38:44.150 --> 02:38:44.160 align:start position:0%
that's going to be called I think you
02:38:44.160 --> 02:38:48.349 align:start position:0%
that's going to be called I think you
can<02:38:44.359> guess<02:38:44.720> it<02:38:45.760> explore<02:38:46.560> there<02:38:46.720> we<02:38:46.920> go<02:38:47.840> so<02:38:48.080> now
02:38:48.349 --> 02:38:48.359 align:start position:0%
can guess it explore there we go so now
02:38:48.359 --> 02:38:50.349 align:start position:0%
can guess it explore there we go so now
we<02:38:48.479> want<02:38:48.600> to<02:38:48.800> duplicate<02:38:49.359> this<02:38:49.800> many<02:38:50.080> many
02:38:50.349 --> 02:38:50.359 align:start position:0%
we want to duplicate this many many
02:38:50.359 --> 02:38:53.349 align:start position:0%
we want to duplicate this many many
times<02:38:51.120> below<02:38:52.120> the<02:38:52.279> second<02:38:52.600> one<02:38:52.880> is<02:38:53.040> going<02:38:53.240> to
02:38:53.349 --> 02:38:53.359 align:start position:0%
times below the second one is going to
02:38:53.359 --> 02:38:56.429 align:start position:0%
times below the second one is going to
be<02:38:53.720> saved<02:38:54.319> meaning<02:38:54.720> all<02:38:55.000> the<02:38:55.160> saved<02:38:55.600> posts
02:38:56.429 --> 02:38:56.439 align:start position:0%
be saved meaning all the saved posts
02:38:56.439 --> 02:38:58.150 align:start position:0%
be saved meaning all the saved posts
right<02:38:56.680> here<02:38:57.040> but<02:38:57.160> we<02:38:57.279> cannot<02:38:57.600> now<02:38:57.760> see<02:38:57.960> it
02:38:58.150 --> 02:38:58.160 align:start position:0%
right here but we cannot now see it
02:38:58.160 --> 02:38:59.830 align:start position:0%
right here but we cannot now see it
because<02:38:58.359> we<02:38:58.520> broke<02:38:58.760> it<02:38:59.200> and<02:38:59.359> that's<02:38:59.560> going<02:38:59.680> to
02:38:59.830 --> 02:38:59.840 align:start position:0%
because we broke it and that's going to
02:38:59.840 --> 02:39:03.630 align:start position:0%
because we broke it and that's going to
render<02:39:00.680> saved<02:39:01.680> then<02:39:01.960> we<02:39:02.120> have<02:39:02.240> to<02:39:02.479> have<02:39:02.800> all
02:39:03.630 --> 02:39:03.640 align:start position:0%
render saved then we have to have all
02:39:03.640 --> 02:39:06.870 align:start position:0%
render saved then we have to have all
users<02:39:04.520> which<02:39:04.640> is<02:39:04.760> going<02:39:04.920> to<02:39:05.120> go<02:39:05.319> to<02:39:05.680> all
02:39:06.870 --> 02:39:06.880 align:start position:0%
users which is going to go to all
02:39:06.880 --> 02:39:11.870 align:start position:0%
users which is going to go to all
users<02:39:07.880> let's<02:39:08.120> expand<02:39:08.479> this<02:39:08.680> just<02:39:08.800> a
02:39:11.870 --> 02:39:11.880 align:start position:0%
02:39:11.880 --> 02:39:16.269 align:start position:0%
bit<02:39:12.880> then<02:39:13.200> we<02:39:13.319> can<02:39:13.560> have<02:39:14.040> create<02:39:15.040> post<02:39:16.120> and
02:39:16.269 --> 02:39:16.279 align:start position:0%
bit then we can have create post and
02:39:16.279 --> 02:39:19.710 align:start position:0%
bit then we can have create post and
that's<02:39:16.479> going<02:39:16.640> to<02:39:16.840> be<02:39:17.359> create<02:39:18.359> post<02:39:19.359> we<02:39:19.479> can
02:39:19.710 --> 02:39:19.720 align:start position:0%
that's going to be create post we can
02:39:19.720 --> 02:39:23.670 align:start position:0%
that's going to be create post we can
also<02:39:20.120> have<02:39:20.520> update<02:39:21.359> Das<02:39:22.200> poost<02:39:23.200> and<02:39:23.399> we<02:39:23.479> need
02:39:23.670 --> 02:39:23.680 align:start position:0%
also have update Das poost and we need
02:39:23.680 --> 02:39:25.590 align:start position:0%
also have update Das poost and we need
to<02:39:23.800> know<02:39:24.000> the<02:39:24.200> ID<02:39:24.680> of<02:39:24.800> the<02:39:24.960> post<02:39:25.240> we're
02:39:25.590 --> 02:39:25.600 align:start position:0%
to know the ID of the post we're
02:39:25.600 --> 02:39:28.389 align:start position:0%
to know the ID of the post we're
updating<02:39:26.600> take<02:39:26.880> care<02:39:27.200> of<02:39:27.439> these<02:39:27.840> columns
02:39:28.389 --> 02:39:28.399 align:start position:0%
updating take care of these columns
02:39:28.399 --> 02:39:32.710 align:start position:0%
updating take care of these columns
right<02:39:28.560> here<02:39:29.439> that's<02:39:29.680> going<02:39:29.840> to<02:39:30.000> be<02:39:30.359> edit<02:39:31.720> post
02:39:32.710 --> 02:39:32.720 align:start position:0%
right here that's going to be edit post
02:39:32.720 --> 02:39:34.950 align:start position:0%
right here that's going to be edit post
then<02:39:33.000> we're<02:39:33.160> going<02:39:33.240> to<02:39:33.479> have<02:39:33.880> a<02:39:34.120> specific<02:39:34.600> post
02:39:34.950 --> 02:39:34.960 align:start position:0%
then we're going to have a specific post
02:39:34.960 --> 02:39:37.190 align:start position:0%
then we're going to have a specific post
details<02:39:35.640> so<02:39:35.800> that's<02:39:36.000> going<02:39:36.120> to<02:39:36.240> be<02:39:36.479> posts<02:39:37.080> and
02:39:37.190 --> 02:39:37.200 align:start position:0%
details so that's going to be posts and
02:39:37.200 --> 02:39:40.070 align:start position:0%
details so that's going to be posts and
then<02:39:37.399> the<02:39:37.600> ID<02:39:37.960> of<02:39:38.160> that<02:39:38.520> post<02:39:39.520> so<02:39:39.760> that's<02:39:39.920> going
02:39:40.070 --> 02:39:40.080 align:start position:0%
then the ID of that post so that's going
02:39:40.080 --> 02:39:41.469 align:start position:0%
then the ID of that post so that's going
to<02:39:40.160> be<02:39:40.399> post
02:39:41.469 --> 02:39:41.479 align:start position:0%
to be post
02:39:41.479 --> 02:39:44.630 align:start position:0%
to be post
details<02:39:42.479> and<02:39:42.680> then<02:39:43.040> we<02:39:43.240> have<02:39:43.520> a<02:39:43.840> profile<02:39:44.479> so
02:39:44.630 --> 02:39:44.640 align:start position:0%
details and then we have a profile so
02:39:44.640 --> 02:39:47.630 align:start position:0%
details and then we have a profile so
that's<02:39:44.840> for/<02:39:45.720> profile
02:39:47.630 --> 02:39:47.640 align:start position:0%
that's for/ profile
02:39:47.640 --> 02:39:50.269 align:start position:0%
that's for/ profile
slid<02:39:48.640> and<02:39:48.760> we<02:39:48.840> can<02:39:49.080> also<02:39:49.399> add<02:39:49.680> this<02:39:49.880> special
02:39:50.269 --> 02:39:50.279 align:start position:0%
slid and we can also add this special
02:39:50.279 --> 02:39:52.230 align:start position:0%
slid and we can also add this special
asterisk<02:39:51.200> which<02:39:51.319> means<02:39:51.560> that<02:39:51.800> everything
02:39:52.230 --> 02:39:52.240 align:start position:0%
asterisk which means that everything
02:39:52.240 --> 02:39:54.630 align:start position:0%
asterisk which means that everything
after<02:39:52.520> the<02:39:52.760> profile<02:39:53.319> is<02:39:53.600> also<02:39:53.800> going<02:39:53.960> to<02:39:54.200> point
02:39:54.630 --> 02:39:54.640 align:start position:0%
after the profile is also going to point
02:39:54.640 --> 02:39:58.389 align:start position:0%
after the profile is also going to point
to<02:39:54.880> that<02:39:55.200> profile<02:39:56.200> we<02:39:56.279> can<02:39:56.439> say<02:39:57.080> profile<02:39:58.080> and
02:39:58.389 --> 02:39:58.399 align:start position:0%
to that profile we can say profile and
02:39:58.399 --> 02:40:00.469 align:start position:0%
to that profile we can say profile and
finally<02:39:58.880> we're<02:39:59.040> going<02:39:59.160> to<02:39:59.319> have<02:39:59.520> the<02:39:59.760> update
02:40:00.469 --> 02:40:00.479 align:start position:0%
finally we're going to have the update
02:40:00.479 --> 02:40:02.670 align:start position:0%
finally we're going to have the update
Das<02:40:01.120> profile
02:40:02.670 --> 02:40:02.680 align:start position:0%
Das profile
02:40:02.680 --> 02:40:05.590 align:start position:0%
Das profile
slid<02:40:03.680> where<02:40:03.960> we're<02:40:04.080> going<02:40:04.200> to<02:40:04.319> render<02:40:05.000> the
02:40:05.590 --> 02:40:05.600 align:start position:0%
slid where we're going to render the
02:40:05.600 --> 02:40:08.070 align:start position:0%
slid where we're going to render the
update
02:40:08.070 --> 02:40:08.080 align:start position:0%
update
02:40:08.080 --> 02:40:10.750 align:start position:0%
update
profile<02:40:09.080> and<02:40:09.279> with<02:40:09.479> that<02:40:09.720> said<02:40:10.120> we<02:40:10.240> now<02:40:10.520> have
02:40:10.750 --> 02:40:10.760 align:start position:0%
profile and with that said we now have
02:40:10.760 --> 02:40:12.710 align:start position:0%
profile and with that said we now have
all<02:40:10.960> of<02:40:11.080> our<02:40:11.279> routes<02:40:11.960> the<02:40:12.120> last<02:40:12.319> thing<02:40:12.479> we<02:40:12.600> have
02:40:12.710 --> 02:40:12.720 align:start position:0%
all of our routes the last thing we have
02:40:12.720 --> 02:40:16.550 align:start position:0%
all of our routes the last thing we have
to<02:40:12.880> do<02:40:13.600> is<02:40:14.000> create<02:40:14.640> those<02:40:14.960> pages<02:40:15.800> within<02:40:16.359> the
02:40:16.550 --> 02:40:16.560 align:start position:0%
to do is create those pages within the
02:40:16.560 --> 02:40:19.790 align:start position:0%
to do is create those pages within the
pages<02:40:16.960> folder<02:40:17.800> right<02:40:18.040> here<02:40:18.840> so<02:40:19.200> let's<02:40:19.439> create
02:40:19.790 --> 02:40:19.800 align:start position:0%
pages folder right here so let's create
02:40:19.800 --> 02:40:22.269 align:start position:0%
pages folder right here so let's create
them<02:40:20.040> one<02:40:20.279> by<02:40:20.479> one<02:40:21.120> that's<02:40:21.359> going<02:40:21.560> to<02:40:21.760> be
02:40:22.269 --> 02:40:22.279 align:start position:0%
them one by one that's going to be
02:40:22.279 --> 02:40:24.030 align:start position:0%
them one by one that's going to be
starting<02:40:22.720> from<02:40:22.960> the
02:40:24.030 --> 02:40:24.040 align:start position:0%
starting from the
02:40:24.040 --> 02:40:30.389 align:start position:0%
starting from the
top<02:40:25.040> all<02:40:26.040> users.<02:40:27.200> TSX<02:40:28.200> where<02:40:28.479> we<02:40:28.600> can<02:40:28.760> run
02:40:30.389 --> 02:40:30.399 align:start position:0%
top all users. TSX where we can run
02:40:30.399 --> 02:40:32.910 align:start position:0%
top all users. TSX where we can run
ource<02:40:31.399> let's<02:40:31.640> go<02:40:31.800> to<02:40:31.960> the<02:40:32.120> next<02:40:32.359> one<02:40:32.720> that's
02:40:32.910 --> 02:40:32.920 align:start position:0%
ource let's go to the next one that's
02:40:32.920 --> 02:40:37.030 align:start position:0%
ource let's go to the next one that's
going<02:40:33.080> to<02:40:33.240> be<02:40:33.479> create<02:40:34.319> post.<02:40:35.399> TSX<02:40:36.399> and<02:40:36.640> again
02:40:37.030 --> 02:40:37.040 align:start position:0%
going to be create post. TSX and again
02:40:37.040 --> 02:40:38.550 align:start position:0%
going to be create post. TSX and again
run
02:40:38.550 --> 02:40:38.560 align:start position:0%
run
02:40:38.560 --> 02:40:41.269 align:start position:0%
run
RFC<02:40:39.560> after<02:40:39.840> create<02:40:40.279> post<02:40:40.840> we're<02:40:40.960> going<02:40:41.080> to
02:40:41.269 --> 02:40:41.279 align:start position:0%
RFC after create post we're going to
02:40:41.279 --> 02:40:45.190 align:start position:0%
RFC after create post we're going to
have<02:40:41.600> edit<02:40:42.520> post.<02:40:43.600> TSX<02:40:44.600> where<02:40:44.840> we're<02:40:44.960> going<02:40:45.080> to
02:40:45.190 --> 02:40:45.200 align:start position:0%
have edit post. TSX where we're going to
02:40:45.200 --> 02:40:46.910 align:start position:0%
have edit post. TSX where we're going to
create
02:40:46.910 --> 02:40:46.920 align:start position:0%
create
02:40:46.920 --> 02:40:49.790 align:start position:0%
create
rafc<02:40:47.920> after<02:40:48.279> that<02:40:48.560> we're<02:40:48.720> going<02:40:48.800> to<02:40:49.040> have
02:40:49.790 --> 02:40:49.800 align:start position:0%
rafc after that we're going to have
02:40:49.800 --> 02:40:54.230 align:start position:0%
rafc after that we're going to have
explore.<02:40:51.080> TSX<02:40:52.080> once<02:40:52.359> again<02:40:52.800> run
02:40:54.230 --> 02:40:54.240 align:start position:0%
explore. TSX once again run
02:40:54.240 --> 02:40:58.630 align:start position:0%
explore. TSX once again run
rce<02:40:55.240> after<02:40:55.600> that<02:40:55.960> we're<02:40:56.120> going<02:40:56.240> to<02:40:56.399> run<02:40:57.279> post
02:40:58.630 --> 02:40:58.640 align:start position:0%
rce after that we're going to run post
02:40:58.640 --> 02:41:01.870 align:start position:0%
rce after that we're going to run post
details.<02:40:59.800> TSX<02:41:00.800> run
02:41:01.870 --> 02:41:01.880 align:start position:0%
details. TSX run
02:41:01.880 --> 02:41:04.550 align:start position:0%
details. TSX run
rce<02:41:02.880> we're<02:41:03.040> going<02:41:03.160> to<02:41:03.319> have<02:41:03.520> our<02:41:03.920> profile<02:41:04.359> of
02:41:04.550 --> 02:41:04.560 align:start position:0%
rce we're going to have our profile of
02:41:04.560 --> 02:41:07.830 align:start position:0%
rce we're going to have our profile of
course<02:41:05.520> TSX<02:41:06.520> and<02:41:06.720> run
02:41:07.830 --> 02:41:07.840 align:start position:0%
course TSX and run
02:41:07.840 --> 02:41:10.510 align:start position:0%
course TSX and run
RFC<02:41:08.840> and<02:41:09.000> we're<02:41:09.120> going<02:41:09.240> to<02:41:09.479> also<02:41:09.840> have<02:41:10.160> our
02:41:10.510 --> 02:41:10.520 align:start position:0%
RFC and we're going to also have our
02:41:10.520 --> 02:41:16.269 align:start position:0%
RFC and we're going to also have our
saved<02:41:11.040> for<02:41:11.319> saved<02:41:11.760> posts.<02:41:12.760> TSX<02:41:13.680> and<02:41:13.840> run<02:41:14.439> RFC
02:41:16.269 --> 02:41:16.279 align:start position:0%
saved for saved posts. TSX and run RFC
02:41:16.279 --> 02:41:19.790 align:start position:0%
saved for saved posts. TSX and run RFC
and<02:41:16.479> we're<02:41:16.600> going<02:41:16.720> to<02:41:16.920> also<02:41:17.319> have<02:41:17.760> the<02:41:18.279> update
02:41:19.790 --> 02:41:19.800 align:start position:0%
and we're going to also have the update
02:41:19.800 --> 02:41:24.510 align:start position:0%
and we're going to also have the update
profile.<02:41:21.040> TSX<02:41:22.040> and<02:41:22.160> we<02:41:22.279> can<02:41:22.399> run<02:41:22.600> R<02:41:23.359> afce<02:41:24.359> so
02:41:24.510 --> 02:41:24.520 align:start position:0%
profile. TSX and we can run R afce so
02:41:24.520 --> 02:41:27.030 align:start position:0%
profile. TSX and we can run R afce so
now<02:41:24.760> we<02:41:24.920> have<02:41:25.200> all<02:41:25.399> of<02:41:25.600> these<02:41:25.880> Pages<02:41:26.720> you<02:41:26.840> can
02:41:27.030 --> 02:41:27.040 align:start position:0%
now we have all of these Pages you can
02:41:27.040 --> 02:41:28.750 align:start position:0%
now we have all of these Pages you can
close<02:41:27.399> them<02:41:27.600> by<02:41:27.720> pressing<02:41:28.040> control<02:41:28.479> or
02:41:28.750 --> 02:41:28.760 align:start position:0%
close them by pressing control or
02:41:28.760 --> 02:41:31.510 align:start position:0%
close them by pressing control or
command<02:41:29.680> W<02:41:30.399> don't<02:41:30.640> do<02:41:30.880> that<02:41:31.080> while<02:41:31.240> you're<02:41:31.359> in
02:41:31.510 --> 02:41:31.520 align:start position:0%
command W don't do that while you're in
02:41:31.520 --> 02:41:33.429 align:start position:0%
command W don't do that while you're in
your<02:41:31.640> browser<02:41:32.279> move<02:41:32.520> to<02:41:32.640> your<02:41:32.800> Visual<02:41:33.080> Studio
02:41:33.429 --> 02:41:33.439 align:start position:0%
your browser move to your Visual Studio
02:41:33.439 --> 02:41:35.469 align:start position:0%
your browser move to your Visual Studio
code<02:41:34.000> because<02:41:34.240> usually<02:41:34.560> it<02:41:34.680> would<02:41:34.840> close<02:41:35.160> your
02:41:35.469 --> 02:41:35.479 align:start position:0%
code because usually it would close your
02:41:35.479 --> 02:41:38.469 align:start position:0%
code because usually it would close your
tab<02:41:36.479> and<02:41:36.600> then<02:41:36.760> you<02:41:36.840> can<02:41:37.080> close<02:41:37.439> all<02:41:37.600> of<02:41:37.800> these
02:41:38.469 --> 02:41:38.479 align:start position:0%
tab and then you can close all of these
02:41:38.479 --> 02:41:41.910 align:start position:0%
tab and then you can close all of these
tabs<02:41:39.479> and<02:41:39.600> we<02:41:39.720> can<02:41:39.960> go<02:41:40.439> to<02:41:40.720> this<02:41:40.960> index<02:41:41.640> within
02:41:41.910 --> 02:41:41.920 align:start position:0%
tabs and we can go to this index within
02:41:41.920 --> 02:41:44.389 align:start position:0%
tabs and we can go to this index within
the<02:41:42.080> pages<02:41:43.000> and<02:41:43.120> we<02:41:43.240> can<02:41:43.479> export<02:41:43.920> all<02:41:44.040> of<02:41:44.200> these
02:41:44.389 --> 02:41:44.399 align:start position:0%
the pages and we can export all of these
02:41:44.399 --> 02:41:46.429 align:start position:0%
the pages and we can export all of these
components<02:41:45.040> so<02:41:45.200> that<02:41:45.479> it's<02:41:45.600> easier<02:41:45.920> to<02:41:46.080> import
02:41:46.429 --> 02:41:46.439 align:start position:0%
components so that it's easier to import
02:41:46.439 --> 02:41:49.590 align:start position:0%
components so that it's easier to import
them<02:41:46.920> so<02:41:47.120> let's<02:41:47.359> duplicate<02:41:47.840> this<02:41:48.000> a<02:41:48.120> few<02:41:48.600> times
02:41:49.590 --> 02:41:49.600 align:start position:0%
them so let's duplicate this a few times
02:41:49.600 --> 02:41:50.870 align:start position:0%
them so let's duplicate this a few times
quite<02:41:49.760> a<02:41:49.920> few
02:41:50.870 --> 02:41:50.880 align:start position:0%
quite a few
02:41:50.880 --> 02:41:54.670 align:start position:0%
quite a few
actually<02:41:51.880> and<02:41:52.000> then<02:41:52.160> we<02:41:52.240> can<02:41:52.800> export<02:41:53.800> explore
02:41:54.670 --> 02:41:54.680 align:start position:0%
actually and then we can export explore
02:41:54.680 --> 02:41:58.870 align:start position:0%
actually and then we can export explore
from<02:41:55.640> exlore<02:41:56.640> we<02:41:56.760> can<02:41:57.000> also<02:41:57.720> export
02:41:58.870 --> 02:41:58.880 align:start position:0%
from exlore we can also export
02:41:58.880 --> 02:42:04.230 align:start position:0%
from exlore we can also export
saved<02:41:59.880> we<02:42:00.000> can<02:42:00.319> export<02:42:01.279> create<02:42:02.720> post<02:42:03.720> we<02:42:03.840> can
02:42:04.230 --> 02:42:04.240 align:start position:0%
saved we can export create post we can
02:42:04.240 --> 02:42:05.990 align:start position:0%
saved we can export create post we can
export
02:42:05.990 --> 02:42:06.000 align:start position:0%
export
02:42:06.000 --> 02:42:09.950 align:start position:0%
export
profile<02:42:07.000> we<02:42:07.120> can<02:42:07.399> export<02:42:08.040> update<02:42:08.920> profile<02:42:09.840> we
02:42:09.950 --> 02:42:09.960 align:start position:0%
profile we can export update profile we
02:42:09.960 --> 02:42:14.830 align:start position:0%
profile we can export update profile we
can<02:42:10.240> export<02:42:10.840> edit<02:42:12.080> post<02:42:13.080> we<02:42:13.200> can<02:42:13.479> export<02:42:14.439> post
02:42:14.830 --> 02:42:14.840 align:start position:0%
can export edit post we can export post
02:42:14.840 --> 02:42:17.309 align:start position:0%
can export edit post we can export post
details
02:42:17.309 --> 02:42:17.319 align:start position:0%
details
02:42:17.319 --> 02:42:19.750 align:start position:0%
details
and<02:42:17.520> we<02:42:17.640> can<02:42:17.880> export<02:42:18.640> all
02:42:19.750 --> 02:42:19.760 align:start position:0%
and we can export all
02:42:19.760 --> 02:42:22.469 align:start position:0%
and we can export all
users<02:42:20.760> right<02:42:21.200> here<02:42:21.600> as
02:42:22.469 --> 02:42:22.479 align:start position:0%
users right here as
02:42:22.479 --> 02:42:25.389 align:start position:0%
users right here as
well<02:42:23.479> and<02:42:23.840> I<02:42:24.040> think<02:42:24.479> we're<02:42:24.640> going<02:42:24.720> to<02:42:24.920> use<02:42:25.200> the
02:42:25.389 --> 02:42:25.399 align:start position:0%
well and I think we're going to use the
02:42:25.399 --> 02:42:28.150 align:start position:0%
well and I think we're going to use the
like<02:42:25.760> post<02:42:26.160> as<02:42:26.319> well<02:42:26.840> so<02:42:27.160> let's<02:42:27.479> add<02:42:27.760> like
02:42:28.150 --> 02:42:28.160 align:start position:0%
like post as well so let's add like
02:42:28.160 --> 02:42:32.550 align:start position:0%
like post as well so let's add like
posts<02:42:29.160> as<02:42:29.840> well<02:42:30.840> and<02:42:31.040> we<02:42:31.160> need<02:42:31.279> to<02:42:31.520> create<02:42:32.359> the
02:42:32.550 --> 02:42:32.560 align:start position:0%
posts as well and we need to create the
02:42:32.560 --> 02:42:38.670 align:start position:0%
posts as well and we need to create the
component<02:42:33.040> for<02:42:34.160> liked<02:42:35.359> posts.<02:42:36.399> TSX<02:42:37.399> and<02:42:37.560> run
02:42:38.670 --> 02:42:38.680 align:start position:0%
component for liked posts. TSX and run
02:42:38.680 --> 02:42:41.150 align:start position:0%
component for liked posts. TSX and run
RFC<02:42:39.680> now<02:42:39.880> that<02:42:40.000> we<02:42:40.160> have<02:42:40.319> created<02:42:40.800> all<02:42:40.960> of
02:42:41.150 --> 02:42:41.160 align:start position:0%
RFC now that we have created all of
02:42:41.160 --> 02:42:43.870 align:start position:0%
RFC now that we have created all of
these<02:42:41.479> Pages<02:42:42.479> within<02:42:43.000> app<02:42:43.479> you<02:42:43.600> can
02:42:43.870 --> 02:42:43.880 align:start position:0%
these Pages within app you can
02:42:43.880 --> 02:42:46.070 align:start position:0%
these Pages within app you can
doubleclick<02:42:44.479> each<02:42:44.720> word<02:42:45.359> press<02:42:45.560> control<02:42:45.880> or
02:42:46.070 --> 02:42:46.080 align:start position:0%
doubleclick each word press control or
02:42:46.080 --> 02:42:47.990 align:start position:0%
doubleclick each word press control or
command<02:42:46.479> space<02:42:47.240> and<02:42:47.439> it's<02:42:47.560> going<02:42:47.760> to
02:42:47.990 --> 02:42:48.000 align:start position:0%
command space and it's going to
02:42:48.000 --> 02:42:50.469 align:start position:0%
command space and it's going to
automatically<02:42:48.720> give<02:42:48.840> you<02:42:49.000> the<02:42:49.160> import<02:42:50.040> repeat
02:42:50.469 --> 02:42:50.479 align:start position:0%
automatically give you the import repeat
02:42:50.479 --> 02:42:53.670 align:start position:0%
automatically give you the import repeat
this<02:42:50.720> procedure<02:42:51.359> all<02:42:51.920> seven<02:42:52.200> or<02:42:52.359> eight<02:42:52.680> times
02:42:53.670 --> 02:42:53.680 align:start position:0%
this procedure all seven or eight times
02:42:53.680 --> 02:42:56.990 align:start position:0%
this procedure all seven or eight times
however<02:42:53.920> many<02:42:54.200> components<02:42:55.160> we<02:42:55.600> have<02:42:56.600> so<02:42:56.880> if
02:42:56.990 --> 02:42:57.000 align:start position:0%
however many components we have so if
02:42:57.000 --> 02:43:00.710 align:start position:0%
however many components we have so if
you<02:42:57.160> do<02:42:57.600> this<02:42:58.600> you<02:42:58.720> can<02:42:58.960> see<02:42:59.840> that<02:43:00.160> they're<02:43:00.479> all
02:43:00.710 --> 02:43:00.720 align:start position:0%
you do this you can see that they're all
02:43:00.720 --> 02:43:02.710 align:start position:0%
you do this you can see that they're all
getting<02:43:00.960> imported<02:43:01.479> from<02:43:01.680> one<02:43:01.920> line<02:43:02.439> which<02:43:02.560> is
02:43:02.710 --> 02:43:02.720 align:start position:0%
getting imported from one line which is
02:43:02.720 --> 02:43:04.630 align:start position:0%
getting imported from one line which is
pretty<02:43:03.000> cool<02:43:03.520> that's<02:43:03.760> exactly<02:43:04.160> why<02:43:04.279> we<02:43:04.399> needed
02:43:04.630 --> 02:43:04.640 align:start position:0%
pretty cool that's exactly why we needed
02:43:04.640 --> 02:43:07.750 align:start position:0%
pretty cool that's exactly why we needed
to<02:43:04.880> export<02:43:05.359> them<02:43:06.120> whereas<02:43:06.680> these<02:43:06.960> components
02:43:07.750 --> 02:43:07.760 align:start position:0%
to export them whereas these components
02:43:07.760 --> 02:43:09.590 align:start position:0%
to export them whereas these components
are<02:43:07.960> being<02:43:08.200> imported<02:43:08.680> in<02:43:08.880> their<02:43:09.040> own
02:43:09.590 --> 02:43:09.600 align:start position:0%
are being imported in their own
02:43:09.600 --> 02:43:13.429 align:start position:0%
are being imported in their own
individual<02:43:10.359> lines<02:43:11.359> so<02:43:11.680> now<02:43:12.160> if<02:43:12.279> we<02:43:12.479> save<02:43:12.800> this
02:43:13.429 --> 02:43:13.439 align:start position:0%
individual lines so now if we save this
02:43:13.439 --> 02:43:16.349 align:start position:0%
individual lines so now if we save this
file<02:43:14.439> and<02:43:14.600> reload<02:43:15.000> the<02:43:15.080> page<02:43:15.399> page<02:43:16.080> you<02:43:16.200> can
02:43:16.349 --> 02:43:16.359 align:start position:0%
file and reload the page page you can
02:43:16.359 --> 02:43:18.870 align:start position:0%
file and reload the page page you can
see<02:43:16.560> the<02:43:16.880> sidebar<02:43:17.880> and<02:43:18.160> you<02:43:18.279> can<02:43:18.439> see<02:43:18.640> that<02:43:18.760> it
02:43:18.870 --> 02:43:18.880 align:start position:0%
see the sidebar and you can see that it
02:43:18.880 --> 02:43:22.150 align:start position:0%
see the sidebar and you can see that it
says<02:43:19.240> explore<02:43:20.240> and<02:43:20.399> it<02:43:20.520> says<02:43:20.800> home<02:43:21.600> the<02:43:21.760> URL
02:43:22.150 --> 02:43:22.160 align:start position:0%
says explore and it says home the URL
02:43:22.160 --> 02:43:26.030 align:start position:0%
says explore and it says home the URL
changes<02:43:23.120> and<02:43:23.680> what<02:43:23.920> it<02:43:24.080> says<02:43:24.640> also<02:43:24.920> changes<02:43:25.760> so
02:43:26.030 --> 02:43:26.040 align:start position:0%
changes and what it says also changes so
02:43:26.040 --> 02:43:28.990 align:start position:0%
changes and what it says also changes so
now<02:43:26.240> we<02:43:26.399> have<02:43:26.640> complete<02:43:27.240> routing<02:43:28.080> implemented
02:43:28.990 --> 02:43:29.000 align:start position:0%
now we have complete routing implemented
02:43:29.000 --> 02:43:31.990 align:start position:0%
now we have complete routing implemented
in<02:43:29.200> our<02:43:29.520> great<02:43:30.200> application<02:43:31.200> before<02:43:31.520> we<02:43:31.680> focus
02:43:31.990 --> 02:43:32.000 align:start position:0%
in our great application before we focus
02:43:32.000 --> 02:43:34.469 align:start position:0%
in our great application before we focus
on<02:43:32.279> that<02:43:32.680> central<02:43:33.200> part<02:43:33.960> we're<02:43:34.120> going<02:43:34.200> to
02:43:34.469 --> 02:43:34.479 align:start position:0%
on that central part we're going to
02:43:34.479 --> 02:43:36.990 align:start position:0%
on that central part we're going to
first<02:43:34.920> focus<02:43:35.399> on<02:43:35.600> the<02:43:35.800> bottom<02:43:36.160> bar<02:43:36.680> which<02:43:36.800> is<02:43:36.920> a
02:43:36.990 --> 02:43:37.000 align:start position:0%
first focus on the bottom bar which is a
02:43:37.000 --> 02:43:39.429 align:start position:0%
first focus on the bottom bar which is a
bit<02:43:37.200> weird<02:43:37.680> right<02:43:38.319> where<02:43:38.560> do<02:43:38.680> we<02:43:38.920> have<02:43:39.160> a
02:43:39.429 --> 02:43:39.439 align:start position:0%
bit weird right where do we have a
02:43:39.439 --> 02:43:43.110 align:start position:0%
bit weird right where do we have a
bottom<02:43:39.840> bar<02:43:40.160> here<02:43:41.080> well<02:43:41.520> as<02:43:41.720> with<02:43:41.920> the<02:43:42.120> top<02:43:42.399> bar
02:43:43.110 --> 02:43:43.120 align:start position:0%
bottom bar here well as with the top bar
02:43:43.120 --> 02:43:47.309 align:start position:0%
bottom bar here well as with the top bar
it<02:43:43.399> only<02:43:44.240> happens<02:43:44.920> on<02:43:45.399> mobile<02:43:45.800> devices<02:43:46.760> I<02:43:46.840> mean
02:43:47.309 --> 02:43:47.319 align:start position:0%
it only happens on mobile devices I mean
02:43:47.319 --> 02:43:50.429 align:start position:0%
it only happens on mobile devices I mean
how<02:43:47.680> cool<02:43:47.960> is<02:43:48.200> this<02:43:48.880> this<02:43:49.040> is<02:43:49.240> a<02:43:49.560> special
02:43:50.429 --> 02:43:50.439 align:start position:0%
how cool is this this is a special
02:43:50.439 --> 02:43:53.670 align:start position:0%
how cool is this this is a special
native<02:43:51.160> mobile<02:43:51.760> like<02:43:52.319> Bottom<02:43:52.680> bar<02:43:53.080> so<02:43:53.319> you<02:43:53.399> can
02:43:53.670 --> 02:43:53.680 align:start position:0%
native mobile like Bottom bar so you can
02:43:53.680 --> 02:43:56.950 align:start position:0%
native mobile like Bottom bar so you can
press<02:43:54.160> your<02:43:55.160> so<02:43:55.359> you<02:43:55.439> can<02:43:55.680> navigate<02:43:56.160> your<02:43:56.439> app
02:43:56.950 --> 02:43:56.960 align:start position:0%
press your so you can navigate your app
02:43:56.960 --> 02:44:00.070 align:start position:0%
press your so you can navigate your app
with<02:43:57.120> your<02:43:57.359> thumb<02:43:58.200> how<02:43:58.439> cool<02:43:58.680> is<02:43:58.880> that<02:43:59.600> so<02:43:59.880> now
02:44:00.070 --> 02:44:00.080 align:start position:0%
with your thumb how cool is that so now
02:44:00.080 --> 02:44:02.230 align:start position:0%
with your thumb how cool is that so now
we're<02:44:00.240> going<02:44:00.319> to<02:44:00.560> definitely<02:44:00.920> stay<02:44:01.279> in<02:44:01.439> mobile
02:44:02.230 --> 02:44:02.240 align:start position:0%
we're going to definitely stay in mobile
02:44:02.240 --> 02:44:05.790 align:start position:0%
we're going to definitely stay in mobile
view<02:44:03.240> we<02:44:03.359> can<02:44:03.800> return<02:44:04.600> back<02:44:04.920> to<02:44:05.160> our<02:44:05.399> root
02:44:05.790 --> 02:44:05.800 align:start position:0%
view we can return back to our root
02:44:05.800 --> 02:44:09.070 align:start position:0%
view we can return back to our root
layout<02:44:06.560> and<02:44:06.840> move<02:44:07.399> to<02:44:07.600> our<02:44:07.840> Bottom<02:44:08.279> bar<02:44:08.880> as
02:44:09.070 --> 02:44:09.080 align:start position:0%
layout and move to our Bottom bar as
02:44:09.080 --> 02:44:10.590 align:start position:0%
layout and move to our Bottom bar as
that's<02:44:09.319> going<02:44:09.439> to<02:44:09.560> be<02:44:09.680> the<02:44:09.840> component<02:44:10.439> we're
02:44:10.590 --> 02:44:10.600 align:start position:0%
that's going to be the component we're
02:44:10.600 --> 02:44:12.990 align:start position:0%
that's going to be the component we're
going<02:44:10.680> to<02:44:10.880> implement<02:44:11.479> next<02:44:12.279> trust<02:44:12.560> me<02:44:12.840> it's
02:44:12.990 --> 02:44:13.000 align:start position:0%
going to implement next trust me it's
02:44:13.000 --> 02:44:15.309 align:start position:0%
going to implement next trust me it's
not<02:44:13.200> going<02:44:13.359> to<02:44:13.520> be<02:44:13.840> that<02:44:14.200> complicated<02:44:15.200> we'll
02:44:15.309 --> 02:44:15.319 align:start position:0%
not going to be that complicated we'll
02:44:15.319 --> 02:44:17.590 align:start position:0%
not going to be that complicated we'll
be<02:44:15.439> able<02:44:15.600> to<02:44:15.800> use<02:44:16.520> the<02:44:16.680> majority<02:44:17.080> of<02:44:17.240> things<02:44:17.479> we
02:44:17.590 --> 02:44:17.600 align:start position:0%
be able to use the majority of things we
02:44:17.600 --> 02:44:19.950 align:start position:0%
be able to use the majority of things we
have<02:44:17.760> in<02:44:17.880> the<02:44:18.040> left<02:44:18.319> sidebar<02:44:19.120> to<02:44:19.319> make<02:44:19.479> it
02:44:19.950 --> 02:44:19.960 align:start position:0%
have in the left sidebar to make it
02:44:19.960 --> 02:44:23.230 align:start position:0%
have in the left sidebar to make it
happen<02:44:20.960> so<02:44:21.279> first<02:44:21.479> of<02:44:21.640> all<02:44:22.160> let's<02:44:22.399> create<02:44:22.680> a
02:44:23.230 --> 02:44:23.240 align:start position:0%
happen so first of all let's create a
02:44:23.240 --> 02:44:26.469 align:start position:0%
happen so first of all let's create a
section<02:44:24.240> and<02:44:24.520> that<02:44:24.760> section<02:44:25.520> is<02:44:25.720> going<02:44:25.960> to
02:44:26.469 --> 02:44:26.479 align:start position:0%
section and that section is going to
02:44:26.479 --> 02:44:31.469 align:start position:0%
section and that section is going to
have<02:44:26.640> a<02:44:26.920> class<02:44:27.279> name<02:44:28.279> equal<02:44:28.600> to<02:44:29.479> bottom<02:44:30.479> dasar
02:44:31.469 --> 02:44:31.479 align:start position:0%
have a class name equal to bottom dasar
02:44:31.479 --> 02:44:32.710 align:start position:0%
have a class name equal to bottom dasar
we<02:44:31.600> can
02:44:32.710 --> 02:44:32.720 align:start position:0%
we can
02:44:32.720 --> 02:44:37.550 align:start position:0%
we can
import<02:44:33.720> a<02:44:34.359> link<02:44:35.359> as<02:44:35.520> well<02:44:35.720> as<02:44:35.960> use<02:44:36.560> location
02:44:37.550 --> 02:44:37.560 align:start position:0%
import a link as well as use location
02:44:37.560 --> 02:44:39.230 align:start position:0%
import a link as well as use location
coming<02:44:37.920> from
02:44:39.230 --> 02:44:39.240 align:start position:0%
coming from
02:44:39.240 --> 02:44:42.870 align:start position:0%
coming from
react<02:44:40.240> router<02:44:41.319> Dom<02:44:42.319> and<02:44:42.439> then<02:44:42.600> we<02:44:42.680> can
02:44:42.870 --> 02:44:42.880 align:start position:0%
react router Dom and then we can
02:44:42.880 --> 02:44:45.590 align:start position:0%
react router Dom and then we can
initialize<02:44:43.560> that<02:44:43.800> path<02:44:44.080> name<02:44:44.640> to<02:44:44.800> know<02:44:45.399> on
02:44:45.590 --> 02:44:45.600 align:start position:0%
initialize that path name to know on
02:44:45.600 --> 02:44:48.710 align:start position:0%
initialize that path name to know on
which<02:44:45.800> page<02:44:46.000> are<02:44:46.120> we<02:44:46.279> currently<02:44:46.680> on<02:44:47.520> so<02:44:47.840> const
02:44:48.710 --> 02:44:48.720 align:start position:0%
which page are we currently on so const
02:44:48.720 --> 02:44:52.870 align:start position:0%
which page are we currently on so const
path<02:44:49.160> name<02:44:49.960> is<02:44:50.240> equal<02:44:50.560> to<02:44:51.359> use
02:44:52.870 --> 02:44:52.880 align:start position:0%
path name is equal to use
02:44:52.880 --> 02:44:55.550 align:start position:0%
path name is equal to use
location<02:44:53.880> now<02:44:54.160> we<02:44:54.279> can<02:44:54.399> do<02:44:54.600> something<02:44:55.000> similar
02:44:55.550 --> 02:44:55.560 align:start position:0%
location now we can do something similar
02:44:55.560 --> 02:44:57.830 align:start position:0%
location now we can do something similar
to<02:44:55.800> what<02:44:55.960> we've<02:44:56.160> done<02:44:56.359> with<02:44:56.479> the<02:44:56.680> sidebar<02:44:57.640> so
02:44:57.830 --> 02:44:57.840 align:start position:0%
to what we've done with the sidebar so
02:44:57.840 --> 02:45:00.710 align:start position:0%
to what we've done with the sidebar so
let's<02:44:58.040> go<02:44:58.240> into<02:44:58.439> the<02:44:58.640> sidebar<02:44:59.600> and<02:44:59.800> let's<02:45:00.120> copy
02:45:00.710 --> 02:45:00.720 align:start position:0%
let's go into the sidebar and let's copy
02:45:00.720 --> 02:45:04.070 align:start position:0%
let's go into the sidebar and let's copy
all<02:45:00.880> of<02:45:01.120> these<02:45:01.399> sidebar
02:45:04.070 --> 02:45:04.080 align:start position:0%
02:45:04.080 --> 02:45:06.670 align:start position:0%
links<02:45:05.080> all<02:45:05.359> the<02:45:05.520> way<02:45:05.720> until<02:45:06.000> the
02:45:06.670 --> 02:45:06.680 align:start position:0%
links all the way until the
02:45:06.680 --> 02:45:09.830 align:start position:0%
links all the way until the
end<02:45:07.680> and<02:45:07.800> then<02:45:08.080> paste<02:45:08.399> it<02:45:08.880> right<02:45:09.160> here<02:45:09.520> in<02:45:09.680> the
02:45:09.830 --> 02:45:09.840 align:start position:0%
end and then paste it right here in the
02:45:09.840 --> 02:45:13.790 align:start position:0%
end and then paste it right here in the
bottom<02:45:10.600> bar<02:45:11.600> so<02:45:11.840> essentially<02:45:12.840> we<02:45:13.000> are<02:45:13.439> going
02:45:13.790 --> 02:45:13.800 align:start position:0%
bottom bar so essentially we are going
02:45:13.800 --> 02:45:17.150 align:start position:0%
bottom bar so essentially we are going
over<02:45:14.399> now<02:45:14.720> the<02:45:14.880> side<02:45:15.399> links<02:45:15.760> this<02:45:15.960> time<02:45:16.600> but
02:45:17.150 --> 02:45:17.160 align:start position:0%
over now the side links this time but
02:45:17.160 --> 02:45:20.030 align:start position:0%
over now the side links this time but
Bottom<02:45:17.920> bar<02:45:18.600> links<02:45:19.439> which<02:45:19.560> you<02:45:19.720> have<02:45:19.840> to
02:45:20.030 --> 02:45:20.040 align:start position:0%
Bottom bar links which you have to
02:45:20.040 --> 02:45:23.510 align:start position:0%
Bottom bar links which you have to
import<02:45:20.479> from<02:45:20.760> at<02:45:21.399> SL<02:45:21.880> constants<02:45:22.880> in<02:45:23.120> this<02:45:23.319> case
02:45:23.510 --> 02:45:23.520 align:start position:0%
import from at SL constants in this case
02:45:23.520 --> 02:45:26.030 align:start position:0%
import from at SL constants in this case
we<02:45:23.640> don't<02:45:23.840> need<02:45:24.000> to<02:45:24.240> provide<02:45:24.840> the
02:45:26.030 --> 02:45:26.040 align:start position:0%
we don't need to provide the
02:45:26.040 --> 02:45:28.429 align:start position:0%
we don't need to provide the
interface<02:45:27.040> and<02:45:27.279> instead<02:45:27.520> of<02:45:27.640> a<02:45:27.760> nav<02:45:28.080> link
02:45:28.429 --> 02:45:28.439 align:start position:0%
interface and instead of a nav link
02:45:28.439 --> 02:45:30.590 align:start position:0%
interface and instead of a nav link
we're<02:45:28.600> going<02:45:28.680> to<02:45:28.840> use<02:45:29.240> a
02:45:30.590 --> 02:45:30.600 align:start position:0%
we're going to use a
02:45:30.600 --> 02:45:33.870 align:start position:0%
we're going to use a
link<02:45:31.600> now<02:45:31.800> if<02:45:31.880> you<02:45:32.040> save<02:45:32.439> this<02:45:32.960> already<02:45:33.680> it's
02:45:33.870 --> 02:45:33.880 align:start position:0%
link now if you save this already it's
02:45:33.880 --> 02:45:36.790 align:start position:0%
link now if you save this already it's
looking<02:45:34.520> okay<02:45:35.240> but<02:45:35.399> we<02:45:35.520> can<02:45:35.680> make<02:45:35.800> it<02:45:36.000> look
02:45:36.790 --> 02:45:36.800 align:start position:0%
looking okay but we can make it look
02:45:36.800 --> 02:45:40.030 align:start position:0%
looking okay but we can make it look
better<02:45:37.800> instead<02:45:38.120> of<02:45:38.279> a<02:45:38.600> left<02:45:39.000> sidebar<02:45:39.479> link
02:45:40.030 --> 02:45:40.040 align:start position:0%
better instead of a left sidebar link
02:45:40.040 --> 02:45:43.710 align:start position:0%
better instead of a left sidebar link
you<02:45:40.120> can<02:45:40.279> say<02:45:40.720> Bottom<02:45:41.680> bar<02:45:42.319> link<02:45:43.200> but<02:45:43.359> in<02:45:43.560> this
02:45:43.710 --> 02:45:43.720 align:start position:0%
you can say Bottom bar link but in this
02:45:43.720 --> 02:45:45.630 align:start position:0%
you can say Bottom bar link but in this
case<02:45:43.920> we<02:45:44.040> don't<02:45:44.279> even<02:45:44.439> need<02:45:44.640> an<02:45:44.800> l
02:45:45.630 --> 02:45:45.640 align:start position:0%
case we don't even need an l
02:45:45.640 --> 02:45:47.790 align:start position:0%
case we don't even need an l
everything<02:45:45.960> is<02:45:46.080> going<02:45:46.240> to<02:45:46.399> be<02:45:46.560> in<02:45:46.680> a<02:45:46.880> link<02:45:47.600> so
02:45:47.790 --> 02:45:47.800 align:start position:0%
everything is going to be in a link so
02:45:47.800 --> 02:45:50.030 align:start position:0%
everything is going to be in a link so
simply<02:45:48.240> copy<02:45:48.600> the<02:45:48.760> key<02:45:49.200> and<02:45:49.359> the<02:45:49.560> class<02:45:49.840> name
02:45:50.030 --> 02:45:50.040 align:start position:0%
simply copy the key and the class name
02:45:50.040 --> 02:45:53.870 align:start position:0%
simply copy the key and the class name
from<02:45:50.200> the<02:45:50.720> LI<02:45:51.720> remove<02:45:52.080> it<02:45:52.640> completely<02:45:53.640> as<02:45:53.760> well
02:45:53.870 --> 02:45:53.880 align:start position:0%
from the LI remove it completely as well
02:45:53.880 --> 02:45:56.429 align:start position:0%
from the LI remove it completely as well
as<02:45:54.000> the<02:45:54.120> ending<02:45:54.520> tag<02:45:55.520> and<02:45:55.680> then<02:45:55.920> add<02:45:56.120> it
02:45:56.429 --> 02:45:56.439 align:start position:0%
as the ending tag and then add it
02:45:56.439 --> 02:45:58.190 align:start position:0%
as the ending tag and then add it
instead<02:45:56.760> of<02:45:56.920> the<02:45:57.120> class<02:45:57.399> name<02:45:57.680> right<02:45:57.840> here<02:45:58.000> to
02:45:58.190 --> 02:45:58.200 align:start position:0%
instead of the class name right here to
02:45:58.200 --> 02:45:59.230 align:start position:0%
instead of the class name right here to
the
02:45:59.230 --> 02:45:59.240 align:start position:0%
the
02:45:59.240 --> 02:46:02.670 align:start position:0%
the
link<02:46:00.240> there<02:46:00.399> we<02:46:00.600> go<02:46:01.040> that's<02:46:01.240> more<02:46:01.560> like<02:46:01.760> it
02:46:02.670 --> 02:46:02.680 align:start position:0%
link there we go that's more like it
02:46:02.680 --> 02:46:04.990 align:start position:0%
link there we go that's more like it
let's<02:46:02.920> put<02:46:03.120> this<02:46:03.200> in<02:46:03.319> a<02:46:03.439> new<02:46:03.760> line<02:46:04.760> let's
02:46:04.990 --> 02:46:05.000 align:start position:0%
let's put this in a new line let's
02:46:05.000 --> 02:46:07.030 align:start position:0%
let's put this in a new line let's
remove<02:46:05.399> the<02:46:05.560> Bottom<02:46:05.840> bar<02:46:06.120> link<02:46:06.600> I<02:46:06.720> don't<02:46:06.880> think
02:46:07.030 --> 02:46:07.040 align:start position:0%
remove the Bottom bar link I don't think
02:46:07.040 --> 02:46:09.230 align:start position:0%
remove the Bottom bar link I don't think
we'll<02:46:07.240> need<02:46:07.439> it<02:46:07.600> in<02:46:07.800> this<02:46:08.040> case<02:46:08.720> we<02:46:08.880> just<02:46:09.080> want
02:46:09.230 --> 02:46:09.240 align:start position:0%
we'll need it in this case we just want
02:46:09.240 --> 02:46:11.190 align:start position:0%
we'll need it in this case we just want
to<02:46:09.399> apply<02:46:09.720> a<02:46:09.840> couple<02:46:10.040> of<02:46:10.240> class<02:46:10.520> names<02:46:10.880> if<02:46:11.040> we
02:46:11.190 --> 02:46:11.200 align:start position:0%
to apply a couple of class names if we
02:46:11.200 --> 02:46:14.230 align:start position:0%
to apply a couple of class names if we
are<02:46:11.600> active<02:46:12.279> so<02:46:12.640> if<02:46:13.000> the<02:46:13.160> current<02:46:13.520> link<02:46:13.920> is
02:46:14.230 --> 02:46:14.240 align:start position:0%
are active so if the current link is
02:46:14.240 --> 02:46:16.790 align:start position:0%
are active so if the current link is
active<02:46:15.120> in<02:46:15.359> that<02:46:15.600> case<02:46:16.000> we<02:46:16.160> want<02:46:16.319> to<02:46:16.520> provide
02:46:16.790 --> 02:46:16.800 align:start position:0%
active in that case we want to provide
02:46:16.800 --> 02:46:21.469 align:start position:0%
active in that case we want to provide
it<02:46:17.120> a<02:46:17.399> BG<02:46:17.800> primary<02:46:18.640> 500<02:46:19.640> as<02:46:19.840> well<02:46:20.160> as<02:46:20.319> a<02:46:20.560> rounded
02:46:21.469 --> 02:46:21.479 align:start position:0%
it a BG primary 500 as well as a rounded
02:46:21.479 --> 02:46:24.830 align:start position:0%
it a BG primary 500 as well as a rounded
Das<02:46:22.120> 10<02:46:22.520> pixels<02:46:23.279> to<02:46:23.479> make<02:46:23.600> it<02:46:23.840> just<02:46:24.000> a<02:46:24.120> bit
02:46:24.830 --> 02:46:24.840 align:start position:0%
Das 10 pixels to make it just a bit
02:46:24.840 --> 02:46:27.790 align:start position:0%
Das 10 pixels to make it just a bit
rounded<02:46:25.840> and<02:46:26.040> then<02:46:26.520> usually<02:46:27.200> it<02:46:27.359> has<02:46:27.479> to<02:46:27.640> be
02:46:27.790 --> 02:46:27.800 align:start position:0%
rounded and then usually it has to be
02:46:27.800 --> 02:46:31.070 align:start position:0%
rounded and then usually it has to be
Flex<02:46:28.279> Center<02:46:28.920> so<02:46:29.120> we<02:46:29.279> Center<02:46:29.680> the<02:46:29.800> link<02:46:30.760> see
02:46:31.070 --> 02:46:31.080 align:start position:0%
Flex Center so we Center the link see
02:46:31.080 --> 02:46:33.389 align:start position:0%
Flex Center so we Center the link see
how<02:46:31.240> it<02:46:31.319> changes<02:46:31.680> on<02:46:31.840> the<02:46:32.040> bottom<02:46:33.040> we<02:46:33.160> want<02:46:33.240> to
02:46:33.389 --> 02:46:33.399 align:start position:0%
how it changes on the bottom we want to
02:46:33.399 --> 02:46:35.830 align:start position:0%
how it changes on the bottom we want to
give<02:46:33.520> it<02:46:33.600> a<02:46:33.760> flex<02:46:34.120> call<02:46:34.720> so<02:46:34.880> it<02:46:35.040> appears<02:46:35.439> one<02:46:35.600> on
02:46:35.830 --> 02:46:35.840 align:start position:0%
give it a flex call so it appears one on
02:46:35.840 --> 02:46:37.950 align:start position:0%
give it a flex call so it appears one on
top<02:46:36.000> of<02:46:36.200> another<02:46:36.800> because<02:46:37.000> on<02:46:37.200> mobile<02:46:37.600> we<02:46:37.760> have
02:46:37.950 --> 02:46:37.960 align:start position:0%
top of another because on mobile we have
02:46:37.960 --> 02:46:40.990 align:start position:0%
top of another because on mobile we have
more<02:46:38.319> vertical<02:46:38.760> space<02:46:39.160> than<02:46:39.800> horizontal<02:46:40.800> a
02:46:40.990 --> 02:46:41.000 align:start position:0%
more vertical space than horizontal a
02:46:41.000 --> 02:46:43.510 align:start position:0%
more vertical space than horizontal a
gap<02:46:41.240> of<02:46:41.399> one<02:46:41.720> to<02:46:41.880> create<02:46:42.160> some<02:46:42.399> space<02:46:43.319> a
02:46:43.510 --> 02:46:43.520 align:start position:0%
gap of one to create some space a
02:46:43.520 --> 02:46:46.469 align:start position:0%
gap of one to create some space a
padding<02:46:43.880> of<02:46:44.040> two<02:46:44.800> and<02:46:45.000> and<02:46:45.200> a<02:46:45.399> transition<02:46:46.359> this
02:46:46.469 --> 02:46:46.479 align:start position:0%
padding of two and and a transition this
02:46:46.479 --> 02:46:48.950 align:start position:0%
padding of two and and a transition this
is<02:46:46.640> going<02:46:46.800> to<02:46:47.120> just<02:46:47.479> make<02:46:47.600> it<02:46:47.840> animate<02:46:48.319> slowly
02:46:48.950 --> 02:46:48.960 align:start position:0%
is going to just make it animate slowly
02:46:48.960 --> 02:46:52.510 align:start position:0%
is going to just make it animate slowly
once<02:46:49.160> we<02:46:49.560> hover<02:46:50.560> finally<02:46:51.359> we<02:46:51.600> want<02:46:51.760> to<02:46:52.080> style
02:46:52.510 --> 02:46:52.520 align:start position:0%
once we hover finally we want to style
02:46:52.520 --> 02:46:56.030 align:start position:0%
once we hover finally we want to style
the<02:46:52.680> image<02:46:53.479> by<02:46:53.800> just<02:46:54.000> giving<02:46:54.279> it<02:46:55.000> on<02:46:55.439> active
02:46:56.030 --> 02:46:56.040 align:start position:0%
the image by just giving it on active
02:46:56.040 --> 02:46:59.110 align:start position:0%
the image by just giving it on active
invert<02:46:56.600> white<02:46:57.479> and<02:46:57.680> then<02:46:58.319> instead<02:46:58.600> of<02:46:58.720> a<02:46:58.840> link
02:46:59.110 --> 02:46:59.120 align:start position:0%
invert white and then instead of a link
02:46:59.120 --> 02:47:02.750 align:start position:0%
invert white and then instead of a link
label<02:46:59.920> let's<02:47:00.160> simply<02:47:00.439> create<02:47:00.640> a<02:47:00.800> P<02:47:01.600> tag<02:47:02.600> that's
02:47:02.750 --> 02:47:02.760 align:start position:0%
label let's simply create a P tag that's
02:47:02.760 --> 02:47:04.910 align:start position:0%
label let's simply create a P tag that's
going<02:47:02.920> to<02:47:03.080> render<02:47:03.479> the<02:47:03.600> link
02:47:04.910 --> 02:47:04.920 align:start position:0%
going to render the link
02:47:04.920 --> 02:47:07.349 align:start position:0%
going to render the link
label<02:47:05.920> but<02:47:06.160> it's<02:47:06.319> going<02:47:06.479> to<02:47:06.640> have<02:47:06.760> a<02:47:07.040> class
02:47:07.349 --> 02:47:07.359 align:start position:0%
label but it's going to have a class
02:47:07.359 --> 02:47:12.630 align:start position:0%
label but it's going to have a class
name<02:47:08.319> equal<02:47:08.640> to<02:47:09.040> Tiny<02:47:09.760> Das<02:47:10.200> medium<02:47:11.200> text-
02:47:12.630 --> 02:47:12.640 align:start position:0%
name equal to Tiny Das medium text-
02:47:12.640 --> 02:47:15.550 align:start position:0%
name equal to Tiny Das medium text-
light-2<02:47:13.640> so<02:47:13.800> if<02:47:13.920> we<02:47:14.080> save<02:47:14.319> it<02:47:15.080> this<02:47:15.200> is<02:47:15.359> now
02:47:15.550 --> 02:47:15.560 align:start position:0%
light-2 so if we save it this is now
02:47:15.560 --> 02:47:17.870 align:start position:0%
light-2 so if we save it this is now
looking<02:47:15.920> good<02:47:16.520> but<02:47:16.720> is<02:47:16.840> it<02:47:17.000> looking<02:47:17.359> close<02:47:17.760> to
02:47:17.870 --> 02:47:17.880 align:start position:0%
looking good but is it looking close to
02:47:17.880 --> 02:47:19.030 align:start position:0%
looking good but is it looking close to
the<02:47:18.000> finished
02:47:19.030 --> 02:47:19.040 align:start position:0%
the finished
02:47:19.040 --> 02:47:21.990 align:start position:0%
the finished
version<02:47:20.040> okay<02:47:20.680> we're<02:47:20.960> almost<02:47:21.399> there<02:47:21.800> the
02:47:21.990 --> 02:47:22.000 align:start position:0%
version okay we're almost there the
02:47:22.000 --> 02:47:24.309 align:start position:0%
version okay we're almost there the
icons<02:47:22.399> have<02:47:22.560> to<02:47:22.640> be<02:47:22.760> a<02:47:22.840> bit<02:47:23.080> smaller<02:47:23.880> so<02:47:24.040> we<02:47:24.120> can
02:47:24.309 --> 02:47:24.319 align:start position:0%
icons have to be a bit smaller so we can
02:47:24.319 --> 02:47:29.950 align:start position:0%
icons have to be a bit smaller so we can
add<02:47:24.520> a<02:47:25.040> width<02:47:26.040> of<02:47:26.680> 16<02:47:27.680> and<02:47:27.960> a<02:47:28.240> height<02:47:28.920> of<02:47:29.160> 16<02:47:29.760> as
02:47:29.950 --> 02:47:29.960 align:start position:0%
add a width of 16 and a height of 16 as
02:47:29.960 --> 02:47:34.630 align:start position:0%
add a width of 16 and a height of 16 as
well<02:47:30.960> and<02:47:31.240> now<02:47:32.160> I<02:47:32.319> think<02:47:33.040> we're<02:47:33.439> there<02:47:34.279> keep<02:47:34.479> in
02:47:34.630 --> 02:47:34.640 align:start position:0%
well and now I think we're there keep in
02:47:34.640 --> 02:47:37.230 align:start position:0%
well and now I think we're there keep in
mind<02:47:35.160> this<02:47:35.399> automatically<02:47:36.040> works<02:47:36.359> as<02:47:36.560> well<02:47:37.080> so
02:47:37.230 --> 02:47:37.240 align:start position:0%
mind this automatically works as well so
02:47:37.240 --> 02:47:40.150 align:start position:0%
mind this automatically works as well so
we<02:47:37.359> can<02:47:37.520> now<02:47:37.800> navigate<02:47:38.520> on<02:47:38.760> mobile<02:47:39.200> devices
02:47:40.150 --> 02:47:40.160 align:start position:0%
we can now navigate on mobile devices
02:47:40.160 --> 02:47:44.429 align:start position:0%
we can now navigate on mobile devices
too<02:47:41.160> this<02:47:41.319> is<02:47:41.720> pretty<02:47:42.479> crazy<02:47:43.479> and<02:47:43.800> it<02:47:44.000> also<02:47:44.279> of
02:47:44.429 --> 02:47:44.439 align:start position:0%
too this is pretty crazy and it also of
02:47:44.439 --> 02:47:46.070 align:start position:0%
too this is pretty crazy and it also of
course<02:47:44.880> works<02:47:45.160> with<02:47:45.319> a
02:47:46.070 --> 02:47:46.080 align:start position:0%
course works with a
02:47:46.080 --> 02:47:48.910 align:start position:0%
course works with a
sidebar<02:47:47.080> this<02:47:47.200> is<02:47:47.439> great<02:47:48.319> and<02:47:48.600> I<02:47:48.680> would<02:47:48.840> want
02:47:48.910 --> 02:47:48.920 align:start position:0%
sidebar this is great and I would want
02:47:48.920 --> 02:47:51.550 align:start position:0%
sidebar this is great and I would want
to<02:47:49.120> focus<02:47:49.439> on<02:47:49.600> the<02:47:49.800> homepage<02:47:50.479> so<02:47:50.960> bad<02:47:51.359> because
02:47:51.550 --> 02:47:51.560 align:start position:0%
to focus on the homepage so bad because
02:47:51.560 --> 02:47:53.070 align:start position:0%
to focus on the homepage so bad because
we've<02:47:51.680> been<02:47:51.840> waiting<02:47:52.120> to<02:47:52.279> implement<02:47:52.720> this
02:47:53.070 --> 02:47:53.080 align:start position:0%
we've been waiting to implement this
02:47:53.080 --> 02:47:56.150 align:start position:0%
we've been waiting to implement this
beautiful<02:47:53.600> homepage<02:47:54.040> for<02:47:54.200> a<02:47:54.399> long<02:47:54.760> time<02:47:55.760> but
02:47:56.150 --> 02:47:56.160 align:start position:0%
beautiful homepage for a long time but
02:47:56.160 --> 02:47:57.710 align:start position:0%
beautiful homepage for a long time but
I'm<02:47:56.279> sure<02:47:56.600> that<02:47:56.720> you're<02:47:56.960> aware<02:47:57.359> that<02:47:57.479> we're
02:47:57.710 --> 02:47:57.720 align:start position:0%
I'm sure that you're aware that we're
02:47:57.720 --> 02:48:00.710 align:start position:0%
I'm sure that you're aware that we're
missing<02:47:58.160> something<02:47:58.920> before<02:47:59.279> we<02:47:59.600> dive<02:47:59.920> into<02:48:00.160> it
02:48:00.710 --> 02:48:00.720 align:start position:0%
missing something before we dive into it
02:48:00.720 --> 02:48:05.030 align:start position:0%
missing something before we dive into it
right<02:48:01.680> and<02:48:01.920> that<02:48:02.399> something<02:48:03.399> is<02:48:03.640> create<02:48:04.080> post
02:48:05.030 --> 02:48:05.040 align:start position:0%
right and that something is create post
02:48:05.040 --> 02:48:07.389 align:start position:0%
right and that something is create post
how<02:48:05.200> can<02:48:05.359> we<02:48:05.479> see<02:48:05.800> the<02:48:06.000> homepage<02:48:06.800> if<02:48:06.920> we<02:48:07.120> don't
02:48:07.389 --> 02:48:07.399 align:start position:0%
how can we see the homepage if we don't
02:48:07.399 --> 02:48:10.790 align:start position:0%
how can we see the homepage if we don't
yet<02:48:07.680> have<02:48:07.960> any<02:48:08.560> posts<02:48:09.560> so<02:48:10.120> I'll<02:48:10.319> have<02:48:10.439> to<02:48:10.640> keep
02:48:10.790 --> 02:48:10.800 align:start position:0%
yet have any posts so I'll have to keep
02:48:10.800 --> 02:48:12.590 align:start position:0%
yet have any posts so I'll have to keep
you<02:48:10.920> waiting<02:48:11.240> a<02:48:11.359> bit<02:48:11.560> longer<02:48:11.920> until<02:48:12.160> we<02:48:12.279> do<02:48:12.479> the
02:48:12.590 --> 02:48:12.600 align:start position:0%
you waiting a bit longer until we do the
02:48:12.600 --> 02:48:15.910 align:start position:0%
you waiting a bit longer until we do the
homepage<02:48:13.600> we'll<02:48:13.960> have<02:48:14.120> to<02:48:14.319> focus<02:48:15.200> on<02:48:15.520> create
02:48:15.910 --> 02:48:15.920 align:start position:0%
homepage we'll have to focus on create
02:48:15.920 --> 02:48:18.790 align:start position:0%
homepage we'll have to focus on create
post<02:48:16.359> first<02:48:17.319> so<02:48:17.479> let's<02:48:17.760> collapse<02:48:18.240> this<02:48:18.640> we
02:48:18.790 --> 02:48:18.800 align:start position:0%
post first so let's collapse this we
02:48:18.800 --> 02:48:20.750 align:start position:0%
post first so let's collapse this we
have<02:48:18.920> a<02:48:19.080> beautiful<02:48:19.520> create<02:48:19.840> post<02:48:20.120> on<02:48:20.279> mobile
02:48:20.750 --> 02:48:20.760 align:start position:0%
have a beautiful create post on mobile
02:48:20.760 --> 02:48:24.630 align:start position:0%
have a beautiful create post on mobile
as<02:48:21.160> well<02:48:22.160> we<02:48:22.279> can<02:48:22.640> close<02:48:23.640> this<02:48:24.200> the<02:48:24.359> root
02:48:24.630 --> 02:48:24.640 align:start position:0%
as well we can close this the root
02:48:24.640 --> 02:48:28.030 align:start position:0%
as well we can close this the root
layout<02:48:25.040> as<02:48:25.240> well<02:48:25.960> and<02:48:26.120> we<02:48:26.200> can<02:48:26.399> move<02:48:26.920> into
02:48:28.030 --> 02:48:28.040 align:start position:0%
layout as well and we can move into
02:48:28.040 --> 02:48:32.630 align:start position:0%
layout as well and we can move into
create<02:48:29.040> post<02:48:30.040> page<02:48:31.040> as<02:48:31.160> soon<02:48:31.359> as<02:48:31.520> we<02:48:31.680> have<02:48:32.000> this
02:48:32.630 --> 02:48:32.640 align:start position:0%
create post page as soon as we have this
02:48:32.640 --> 02:48:34.750 align:start position:0%
create post page as soon as we have this
we'll<02:48:32.840> be<02:48:33.080> ready<02:48:33.359> to<02:48:33.600> fetch<02:48:34.000> those<02:48:34.279> posts<02:48:34.600> on
02:48:34.750 --> 02:48:34.760 align:start position:0%
we'll be ready to fetch those posts on
02:48:34.760 --> 02:48:37.990 align:start position:0%
we'll be ready to fetch those posts on
the<02:48:34.920> homepage<02:48:35.800> and<02:48:36.040> display<02:48:36.520> them<02:48:37.520> so<02:48:37.760> first
02:48:37.990 --> 02:48:38.000 align:start position:0%
the homepage and display them so first
02:48:38.000 --> 02:48:40.550 align:start position:0%
the homepage and display them so first
of<02:48:38.160> all<02:48:38.840> the<02:48:38.960> layout<02:48:39.920> and<02:48:40.120> then<02:48:40.319> the
02:48:40.550 --> 02:48:40.560 align:start position:0%
of all the layout and then the
02:48:40.560 --> 02:48:43.389 align:start position:0%
of all the layout and then the
functionality<02:48:41.560> of<02:48:41.840> creating<02:48:42.680> and<02:48:42.960> finally
02:48:43.389 --> 02:48:43.399 align:start position:0%
functionality of creating and finally
02:48:43.399 --> 02:48:46.469 align:start position:0%
functionality of creating and finally
reading<02:48:43.920> those<02:48:44.200> posts<02:48:44.800> on<02:48:44.960> the<02:48:45.200> homepage<02:48:46.200> once
02:48:46.469 --> 02:48:46.479 align:start position:0%
reading those posts on the homepage once
02:48:46.479 --> 02:48:50.309 align:start position:0%
reading those posts on the homepage once
again<02:48:47.160> exciting<02:48:47.720> stuff<02:48:48.319> coming<02:48:48.760> really<02:48:49.319> soon
02:48:50.309 --> 02:48:50.319 align:start position:0%
again exciting stuff coming really soon
02:48:50.319 --> 02:48:53.670 align:start position:0%
again exciting stuff coming really soon
to<02:48:50.760> start<02:48:51.160> creating<02:48:51.680> our<02:48:52.000> create<02:48:52.439> post<02:48:52.960> page
02:48:53.670 --> 02:48:53.680 align:start position:0%
to start creating our create post page
02:48:53.680 --> 02:48:57.110 align:start position:0%
to start creating our create post page
we<02:48:53.800> can<02:48:54.000> wrap<02:48:54.479> everything<02:48:55.040> inside<02:48:55.359> of<02:48:55.479> a<02:48:56.120> div
02:48:57.110 --> 02:48:57.120 align:start position:0%
we can wrap everything inside of a div
02:48:57.120 --> 02:49:00.190 align:start position:0%
we can wrap everything inside of a div
that<02:48:57.359> div<02:48:57.720> is<02:48:57.880> going<02:48:58.040> to<02:48:58.319> have<02:48:58.640> a<02:48:58.960> class<02:48:59.359> name
02:49:00.190 --> 02:49:00.200 align:start position:0%
that div is going to have a class name
02:49:00.200 --> 02:49:03.070 align:start position:0%
that div is going to have a class name
equal<02:49:00.520> to<02:49:00.760> flex<02:49:01.520> and<02:49:01.640> then<02:49:01.840> Flex<02:49:02.279> one<02:49:02.680> so<02:49:02.880> it
02:49:03.070 --> 02:49:03.080 align:start position:0%
equal to flex and then Flex one so it
02:49:03.080 --> 02:49:05.630 align:start position:0%
equal to flex and then Flex one so it
expands<02:49:03.800> nicely<02:49:04.800> let's<02:49:05.040> go<02:49:05.240> back<02:49:05.359> to<02:49:05.479> our
02:49:05.630 --> 02:49:05.640 align:start position:0%
expands nicely let's go back to our
02:49:05.640 --> 02:49:08.870 align:start position:0%
expands nicely let's go back to our
current<02:49:06.160> website<02:49:07.160> and<02:49:07.439> let's<02:49:07.720> add<02:49:08.080> another
02:49:08.870 --> 02:49:08.880 align:start position:0%
current website and let's add another
02:49:08.880 --> 02:49:11.950 align:start position:0%
current website and let's add another
div<02:49:09.279> that's<02:49:09.640> inside<02:49:10.120> of<02:49:10.319> this<02:49:10.520> existing<02:49:10.960> div
02:49:11.950 --> 02:49:11.960 align:start position:0%
div that's inside of this existing div
02:49:11.960 --> 02:49:14.309 align:start position:0%
div that's inside of this existing div
that's<02:49:12.160> going<02:49:12.319> to<02:49:12.439> have<02:49:12.600> a<02:49:12.800> class<02:49:13.160> name<02:49:14.000> equal
02:49:14.309 --> 02:49:14.319 align:start position:0%
that's going to have a class name equal
02:49:14.319 --> 02:49:17.030 align:start position:0%
that's going to have a class name equal
to<02:49:14.800> common<02:49:15.399> Das<02:49:15.800> container<02:49:16.640> as<02:49:16.800> we're<02:49:16.920> going
02:49:17.030 --> 02:49:17.040 align:start position:0%
to common Das container as we're going
02:49:17.040 --> 02:49:19.790 align:start position:0%
to common Das container as we're going
to<02:49:17.200> reuse<02:49:17.600> it<02:49:17.920> a<02:49:18.040> couple<02:49:18.279> of<02:49:18.520> times<02:49:19.439> within
02:49:19.790 --> 02:49:19.800 align:start position:0%
to reuse it a couple of times within
02:49:19.800 --> 02:49:22.510 align:start position:0%
to reuse it a couple of times within
this<02:49:20.000> div<02:49:20.439> we<02:49:20.560> can<02:49:20.760> have<02:49:21.040> another<02:49:21.439> div<02:49:22.239> and
02:49:22.510 --> 02:49:22.520 align:start position:0%
this div we can have another div and
02:49:22.520 --> 02:49:25.950 align:start position:0%
this div we can have another div and
this<02:49:22.760> div<02:49:23.120> is<02:49:23.239> going<02:49:23.479> to<02:49:23.920> render<02:49:24.399> an<02:49:24.960> image
02:49:25.950 --> 02:49:25.960 align:start position:0%
this div is going to render an image
02:49:25.960 --> 02:49:28.070 align:start position:0%
this div is going to render an image
this<02:49:26.160> image<02:49:26.680> is<02:49:26.840> going<02:49:27.000> to<02:49:27.200> have<02:49:27.319> a<02:49:27.520> source
02:49:28.070 --> 02:49:28.080 align:start position:0%
this image is going to have a source
02:49:28.080 --> 02:49:33.830 align:start position:0%
this image is going to have a source
equal<02:49:28.359> to<02:49:28.560> for<02:49:28.960> slash<02:49:29.520> assets<02:49:30.520> SL<02:49:31.160> icons<02:49:32.160> SL
02:49:33.830 --> 02:49:33.840 align:start position:0%
equal to for slash assets SL icons SL
02:49:33.840 --> 02:49:35.349 align:start position:0%
equal to for slash assets SL icons SL
a-post
02:49:35.349 --> 02:49:35.359 align:start position:0%
a-post
02:49:35.359 --> 02:49:38.190 align:start position:0%
a-post
SVG<02:49:36.359> it's<02:49:36.520> also<02:49:36.720> going<02:49:36.880> to<02:49:37.040> have<02:49:37.160> a<02:49:37.399> width<02:49:37.800> of
02:49:38.190 --> 02:49:38.200 align:start position:0%
SVG it's also going to have a width of
02:49:38.200 --> 02:49:42.389 align:start position:0%
SVG it's also going to have a width of
36<02:49:39.200> and<02:49:39.399> a<02:49:39.680> height<02:49:40.160> of<02:49:40.800> 36<02:49:41.800> and<02:49:42.000> it's<02:49:42.120> going<02:49:42.279> to
02:49:42.389 --> 02:49:42.399 align:start position:0%
36 and a height of 36 and it's going to
02:49:42.399 --> 02:49:45.429 align:start position:0%
36 and a height of 36 and it's going to
have<02:49:42.520> an<02:49:42.640> Al<02:49:43.000> tag<02:49:43.399> of<02:49:43.840> ad<02:49:44.760> that's<02:49:45.000> because<02:49:45.319> this
02:49:45.429 --> 02:49:45.439 align:start position:0%
have an Al tag of ad that's because this
02:49:45.439 --> 02:49:48.710 align:start position:0%
have an Al tag of ad that's because this
is<02:49:45.600> going<02:49:45.760> to<02:49:45.840> be<02:49:46.000> an<02:49:46.160> icon<02:49:46.479> to<02:49:46.760> add<02:49:47.080> a<02:49:47.720> post
02:49:48.710 --> 02:49:48.720 align:start position:0%
is going to be an icon to add a post
02:49:48.720 --> 02:49:51.429 align:start position:0%
is going to be an icon to add a post
finally<02:49:49.359> we<02:49:49.439> can<02:49:49.640> create<02:49:49.880> an<02:49:50.040> H2<02:49:50.920> right<02:49:51.120> below
02:49:51.429 --> 02:49:51.439 align:start position:0%
finally we can create an H2 right below
02:49:51.439 --> 02:49:54.389 align:start position:0%
finally we can create an H2 right below
it<02:49:51.800> that's<02:49:52.000> going<02:49:52.160> to<02:49:52.279> say<02:49:52.800> create
02:49:54.389 --> 02:49:54.399 align:start position:0%
it that's going to say create
02:49:54.399 --> 02:49:57.510 align:start position:0%
it that's going to say create
post<02:49:55.399> there<02:49:55.560> we<02:49:55.760> go<02:49:56.200> we<02:49:56.319> can<02:49:56.479> style<02:49:56.800> it<02:49:56.960> a<02:49:57.080> bit
02:49:57.510 --> 02:49:57.520 align:start position:0%
post there we go we can style it a bit
02:49:57.520 --> 02:50:01.870 align:start position:0%
post there we go we can style it a bit
by<02:49:57.760> giving<02:49:58.000> it<02:49:58.160> a<02:49:58.359> class<02:49:58.720> name<02:49:59.600> equal<02:49:59.920> to<02:50:00.120> H3
02:50:01.870 --> 02:50:01.880 align:start position:0%
by giving it a class name equal to H3
02:50:01.880 --> 02:50:05.030 align:start position:0%
by giving it a class name equal to H3
dasb<02:50:02.880> on<02:50:03.080> medium<02:50:03.520> devices
02:50:05.030 --> 02:50:05.040 align:start position:0%
dasb on medium devices
02:50:05.040 --> 02:50:08.269 align:start position:0%
dasb on medium devices
H2
02:50:08.269 --> 02:50:08.279 align:start position:0%
02:50:08.279 --> 02:50:11.590 align:start position:0%
dasb<02:50:09.279> it's<02:50:09.439> going<02:50:09.600> to<02:50:09.720> be<02:50:09.920> text<02:50:10.279> left<02:50:11.279> as<02:50:11.439> well
02:50:11.590 --> 02:50:11.600 align:start position:0%
dasb it's going to be text left as well
02:50:11.600 --> 02:50:15.710 align:start position:0%
dasb it's going to be text left as well
as<02:50:11.840> w-<02:50:12.600> full<02:50:13.439> we<02:50:13.560> want<02:50:13.680> to<02:50:13.880> style<02:50:14.239> this<02:50:14.359> out<02:50:14.960> div
02:50:15.710 --> 02:50:15.720 align:start position:0%
as w- full we want to style this out div
02:50:15.720 --> 02:50:18.630 align:start position:0%
as w- full we want to style this out div
by<02:50:15.840> giving<02:50:16.080> it<02:50:16.239> a<02:50:16.479> class<02:50:16.800> name<02:50:17.479> equal<02:50:17.760> to<02:50:18.000> Max
02:50:18.630 --> 02:50:18.640 align:start position:0%
by giving it a class name equal to Max
02:50:18.640 --> 02:50:23.950 align:start position:0%
by giving it a class name equal to Max
dw-<02:50:19.640> 5xl<02:50:20.600> so<02:50:20.960> really<02:50:21.439> wide<02:50:22.640> width<02:50:23.640> we<02:50:23.800> also
02:50:23.950 --> 02:50:23.960 align:start position:0%
dw- 5xl so really wide width we also
02:50:23.960 --> 02:50:25.510 align:start position:0%
dw- 5xl so really wide width we also
want<02:50:24.080> to<02:50:24.200> give<02:50:24.319> it<02:50:24.439> a<02:50:24.560> flex
02:50:25.510 --> 02:50:25.520 align:start position:0%
want to give it a flex
02:50:25.520 --> 02:50:28.030 align:start position:0%
want to give it a flex
start<02:50:26.520> so<02:50:26.720> now<02:50:26.880> it<02:50:27.040> appears<02:50:27.359> as<02:50:27.479> a<02:50:27.600> flex
02:50:28.030 --> 02:50:28.040 align:start position:0%
start so now it appears as a flex
02:50:28.040 --> 02:50:30.710 align:start position:0%
start so now it appears as a flex
container<02:50:29.040> a<02:50:29.279> gap<02:50:29.560> of<02:50:29.720> three<02:50:29.960> to<02:50:30.120> create<02:50:30.399> some
02:50:30.710 --> 02:50:30.720 align:start position:0%
container a gap of three to create some
02:50:30.720 --> 02:50:35.830 align:start position:0%
container a gap of three to create some
space<02:50:31.720> a<02:50:31.960> justify<02:50:32.640> Das<02:50:32.960> start<02:50:33.960> and<02:50:34.200> a<02:50:34.600> w-o<02:50:35.600> for
02:50:35.830 --> 02:50:35.840 align:start position:0%
space a justify Das start and a w-o for
02:50:35.840 --> 02:50:38.349 align:start position:0%
space a justify Das start and a w-o for
full<02:50:36.239> width<02:50:37.200> and<02:50:37.319> now<02:50:37.520> we<02:50:37.640> have<02:50:37.800> our<02:50:38.000> create
02:50:38.349 --> 02:50:38.359 align:start position:0%
full width and now we have our create
02:50:38.359 --> 02:50:42.070 align:start position:0%
full width and now we have our create
post<02:50:39.279> similar<02:50:39.880> to<02:50:40.120> what<02:50:40.279> we<02:50:40.479> have<02:50:40.840> here<02:50:41.840> but
02:50:42.070 --> 02:50:42.080 align:start position:0%
post similar to what we have here but
02:50:42.080 --> 02:50:44.870 align:start position:0%
post similar to what we have here but
now<02:50:42.640> as<02:50:42.760> you<02:50:42.880> can<02:50:43.160> notice<02:50:44.160> we<02:50:44.319> start<02:50:44.640> start
02:50:44.870 --> 02:50:44.880 align:start position:0%
now as you can notice we start start
02:50:44.880 --> 02:50:46.990 align:start position:0%
now as you can notice we start start
with<02:50:45.040> something<02:50:45.359> known<02:50:45.640> as<02:50:45.760> a<02:50:45.960> form<02:50:46.600> similar
02:50:46.990 --> 02:50:47.000 align:start position:0%
with something known as a form similar
02:50:47.000 --> 02:50:49.429 align:start position:0%
with something known as a form similar
to<02:50:47.200> what<02:50:47.359> we've<02:50:47.600> done<02:50:48.080> with<02:50:48.239> our<02:50:48.479> sign<02:50:48.760> in<02:50:49.279> and
02:50:49.429 --> 02:50:49.439 align:start position:0%
to what we've done with our sign in and
02:50:49.439 --> 02:50:52.070 align:start position:0%
to what we've done with our sign in and
the<02:50:49.680> sign<02:50:49.920> up<02:50:50.880> a<02:50:51.000> form<02:50:51.399> with<02:50:51.560> a<02:50:51.720> couple<02:50:51.960> of
02:50:52.070 --> 02:50:52.080 align:start position:0%
the sign up a form with a couple of
02:50:52.080 --> 02:50:55.910 align:start position:0%
the sign up a form with a couple of
fields<02:50:52.840> a<02:50:53.080> caption<02:50:54.000> photos<02:50:54.880> location<02:50:55.399> and
02:50:55.910 --> 02:50:55.920 align:start position:0%
fields a caption photos location and
02:50:55.920 --> 02:50:59.070 align:start position:0%
fields a caption photos location and
tags<02:50:56.920> so<02:50:57.160> in<02:50:57.359> this<02:50:57.600> case<02:50:58.200> we<02:50:58.319> want<02:50:58.479> to<02:50:58.680> create
02:50:59.070 --> 02:50:59.080 align:start position:0%
tags so in this case we want to create
02:50:59.080 --> 02:51:01.870 align:start position:0%
tags so in this case we want to create
this<02:50:59.439> as<02:50:59.560> a<02:50:59.800> new<02:51:00.239> component<02:51:01.239> it's<02:51:01.399> going<02:51:01.560> to<02:51:01.720> be
02:51:01.870 --> 02:51:01.880 align:start position:0%
this as a new component it's going to be
02:51:01.880 --> 02:51:05.469 align:start position:0%
this as a new component it's going to be
called<02:51:02.319> a<02:51:02.640> post<02:51:03.120> form<02:51:04.120> so<02:51:04.640> let's<02:51:04.840> create<02:51:05.080> a<02:51:05.239> new
02:51:05.469 --> 02:51:05.479 align:start position:0%
called a post form so let's create a new
02:51:05.479 --> 02:51:08.070 align:start position:0%
called a post form so let's create a new
component<02:51:06.399> within<02:51:06.720> the<02:51:06.920> components<02:51:07.439> folder
02:51:08.070 --> 02:51:08.080 align:start position:0%
component within the components folder
02:51:08.080 --> 02:51:10.309 align:start position:0%
component within the components folder
and<02:51:08.279> then<02:51:08.479> not<02:51:08.840> within<02:51:09.120> shared<02:51:09.840> but<02:51:10.080> rather
02:51:10.309 --> 02:51:10.319 align:start position:0%
and then not within shared but rather
02:51:10.319 --> 02:51:13.550 align:start position:0%
and then not within shared but rather
within<02:51:10.560> a<02:51:10.720> new<02:51:10.960> folder<02:51:11.439> called<02:51:12.000> forms<02:51:13.000> finally
02:51:13.550 --> 02:51:13.560 align:start position:0%
within a new folder called forms finally
02:51:13.560 --> 02:51:16.550 align:start position:0%
within a new folder called forms finally
within<02:51:13.800> the<02:51:13.920> form<02:51:14.319> we<02:51:14.640> can<02:51:14.760> create<02:51:15.200> a<02:51:15.560> post
02:51:16.550 --> 02:51:16.560 align:start position:0%
within the form we can create a post
02:51:16.560 --> 02:51:21.349 align:start position:0%
within the form we can create a post
form.<02:51:17.840> TSX<02:51:18.840> inside<02:51:19.200> of<02:51:19.439> which<02:51:19.640> we<02:51:19.760> can<02:51:19.920> run
02:51:21.349 --> 02:51:21.359 align:start position:0%
form. TSX inside of which we can run
02:51:21.359 --> 02:51:25.070 align:start position:0%
form. TSX inside of which we can run
RFC<02:51:22.359> now<02:51:23.000> back<02:51:23.200> in<02:51:23.319> our<02:51:23.560> create<02:51:23.960> post<02:51:24.760> we<02:51:24.880> can
02:51:25.070 --> 02:51:25.080 align:start position:0%
RFC now back in our create post we can
02:51:25.080 --> 02:51:28.670 align:start position:0%
RFC now back in our create post we can
simply<02:51:25.399> render<02:51:26.120> the<02:51:26.359> post<02:51:26.800> form<02:51:27.680> component
02:51:28.670 --> 02:51:28.680 align:start position:0%
simply render the post form component
02:51:28.680 --> 02:51:31.950 align:start position:0%
simply render the post form component
and<02:51:28.920> import<02:51:29.279> it<02:51:29.600> from<02:51:29.880> components<02:51:30.680> form<02:51:31.439> post
02:51:31.950 --> 02:51:31.960 align:start position:0%
and import it from components form post
02:51:31.960 --> 02:51:35.349 align:start position:0%
and import it from components form post
form<02:51:32.960> there<02:51:33.120> we<02:51:33.319> go<02:51:34.239> this<02:51:34.439> now<02:51:34.640> allows<02:51:34.960> us<02:51:35.120> to
02:51:35.349 --> 02:51:35.359 align:start position:0%
form there we go this now allows us to
02:51:35.359 --> 02:51:37.349 align:start position:0%
form there we go this now allows us to
dive<02:51:35.760> into<02:51:36.080> this<02:51:36.239> form<02:51:36.840> which<02:51:36.960> we're<02:51:37.080> going<02:51:37.200> to
02:51:37.349 --> 02:51:37.359 align:start position:0%
dive into this form which we're going to
02:51:37.359 --> 02:51:40.110 align:start position:0%
dive into this form which we're going to
create<02:51:37.800> as<02:51:37.920> a<02:51:38.080> reusable<02:51:38.840> component<02:51:39.600> so<02:51:39.760> we<02:51:39.880> can
02:51:40.110 --> 02:51:40.120 align:start position:0%
create as a reusable component so we can
02:51:40.120 --> 02:51:42.429 align:start position:0%
create as a reusable component so we can
reuse<02:51:40.520> it<02:51:40.760> later<02:51:41.040> on<02:51:41.560> in<02:51:41.800> many<02:51:42.080> different
02:51:42.429 --> 02:51:42.439 align:start position:0%
reuse it later on in many different
02:51:42.439 --> 02:51:45.030 align:start position:0%
reuse it later on in many different
places<02:51:43.279> so<02:51:43.680> how<02:51:43.840> is<02:51:43.920> our<02:51:44.080> form<02:51:44.319> going<02:51:44.680> to<02:51:44.840> look
02:51:45.030 --> 02:51:45.040 align:start position:0%
places so how is our form going to look
02:51:45.040 --> 02:51:48.070 align:start position:0%
places so how is our form going to look
like<02:51:46.000> well<02:51:46.200> it's<02:51:46.359> going<02:51:46.520> to<02:51:46.680> be<02:51:46.920> a<02:51:47.200> typical
02:51:48.070 --> 02:51:48.080 align:start position:0%
like well it's going to be a typical
02:51:48.080 --> 02:51:50.990 align:start position:0%
like well it's going to be a typical
shaten<02:51:48.920> form<02:51:49.600> so<02:51:49.800> immediately<02:51:50.359> we<02:51:50.439> can<02:51:50.680> go
02:51:50.990 --> 02:51:51.000 align:start position:0%
shaten form so immediately we can go
02:51:51.000 --> 02:51:53.469 align:start position:0%
shaten form so immediately we can go
back<02:51:51.239> here<02:51:51.760> and<02:51:51.920> search<02:51:52.239> for<02:51:52.399> our<02:51:52.640> form<02:51:53.279> and
02:51:53.469 --> 02:51:53.479 align:start position:0%
back here and search for our form and
02:51:53.479 --> 02:51:55.950 align:start position:0%
back here and search for our form and
then<02:51:53.680> we<02:51:53.800> can<02:51:53.960> get<02:51:54.120> our<02:51:54.359> example<02:51:55.359> we<02:51:55.520> know<02:51:55.760> how
02:51:55.950 --> 02:51:55.960 align:start position:0%
then we can get our example we know how
02:51:55.960 --> 02:51:58.190 align:start position:0%
then we can get our example we know how
form<02:51:56.279> Fields<02:51:56.760> look<02:51:57.000> like<02:51:57.600> we<02:51:57.760> know<02:51:57.960> that<02:51:58.120> we
02:51:58.190 --> 02:51:58.200 align:start position:0%
form Fields look like we know that we
02:51:58.200 --> 02:52:01.030 align:start position:0%
form Fields look like we know that we
need<02:51:58.359> to<02:51:58.600> have<02:51:58.920> a<02:51:59.120> form<02:51:59.520> schema<02:52:00.080> as<02:52:00.279> well<02:52:00.880> and
02:52:01.030 --> 02:52:01.040 align:start position:0%
need to have a form schema as well and
02:52:01.040 --> 02:52:03.790 align:start position:0%
need to have a form schema as well and
then<02:52:01.200> we<02:52:01.359> need<02:52:01.479> to<02:52:01.680> define<02:52:02.040> a<02:52:02.279> form<02:52:03.279> Define<02:52:03.640> the
02:52:03.790 --> 02:52:03.800 align:start position:0%
then we need to define a form Define the
02:52:03.800 --> 02:52:07.070 align:start position:0%
then we need to define a form Define the
onsubmit<02:52:04.760> and<02:52:04.960> finally<02:52:05.399> build<02:52:05.720> out<02:52:05.960> our<02:52:06.160> form
02:52:07.070 --> 02:52:07.080 align:start position:0%
onsubmit and finally build out our form
02:52:07.080 --> 02:52:10.590 align:start position:0%
onsubmit and finally build out our form
so<02:52:07.279> let's<02:52:07.520> do<02:52:07.720> so<02:52:08.239> step<02:52:08.720> by<02:52:09.080> step<02:52:09.840> first<02:52:10.239> we<02:52:10.359> can
02:52:10.590 --> 02:52:10.600 align:start position:0%
so let's do so step by step first we can
02:52:10.600 --> 02:52:13.469 align:start position:0%
so let's do so step by step first we can
import<02:52:11.439> everything<02:52:11.800> that<02:52:11.920> we<02:52:12.040> need<02:52:12.279> from
02:52:13.469 --> 02:52:13.479 align:start position:0%
import everything that we need from
02:52:13.479 --> 02:52:18.309 align:start position:0%
import everything that we need from
here<02:52:14.680> and<02:52:15.000> paste<02:52:15.319> it<02:52:15.520> right<02:52:15.760> here<02:52:16.120> at<02:52:16.279> the
02:52:18.309 --> 02:52:18.319 align:start position:0%
here and paste it right here at the
02:52:18.319 --> 02:52:21.950 align:start position:0%
here and paste it right here at the
top<02:52:19.319> then<02:52:19.600> we're<02:52:19.760> going<02:52:19.960> to<02:52:20.399> define<02:52:20.880> the<02:52:21.040> form
02:52:21.950 --> 02:52:21.960 align:start position:0%
top then we're going to define the form
02:52:21.960 --> 02:52:24.950 align:start position:0%
top then we're going to define the form
as<02:52:22.120> well<02:52:22.319> as<02:52:22.840> Define<02:52:23.279> the<02:52:23.760> onsubmit<02:52:24.760> that's
02:52:24.950 --> 02:52:24.960 align:start position:0%
as well as Define the onsubmit that's
02:52:24.960 --> 02:52:27.870 align:start position:0%
as well as Define the onsubmit that's
going<02:52:25.120> to<02:52:25.279> be<02:52:25.560> within<02:52:26.080> the<02:52:26.279> post<02:52:26.640> form<02:52:27.479> then<02:52:27.720> we
02:52:27.870 --> 02:52:27.880 align:start position:0%
going to be within the post form then we
02:52:27.880 --> 02:52:29.750 align:start position:0%
going to be within the post form then we
need<02:52:28.000> to<02:52:28.239> import<02:52:28.760> everything<02:52:29.120> we<02:52:29.239> need<02:52:29.600> to
02:52:29.750 --> 02:52:29.760 align:start position:0%
need to import everything we need to
02:52:29.760 --> 02:52:31.030 align:start position:0%
need to import everything we need to
make<02:52:29.920> her<02:52:30.120> form
02:52:31.030 --> 02:52:31.040 align:start position:0%
make her form
02:52:31.040 --> 02:52:34.910 align:start position:0%
make her form
happen<02:52:32.040> so<02:52:32.239> we<02:52:32.319> can<02:52:32.520> put<02:52:32.800> that<02:52:33.080> right<02:52:33.680> here<02:52:34.680> and
02:52:34.910 --> 02:52:34.920 align:start position:0%
happen so we can put that right here and
02:52:34.920 --> 02:52:37.429 align:start position:0%
happen so we can put that right here and
finally<02:52:35.479> we<02:52:35.600> can<02:52:35.840> Define<02:52:36.359> the<02:52:36.520> form<02:52:37.160> within
02:52:37.429 --> 02:52:37.439 align:start position:0%
finally we can Define the form within
02:52:37.439 --> 02:52:38.229 align:start position:0%
finally we can Define the form within
our
02:52:38.229 --> 02:52:38.239 align:start position:0%
our
02:52:38.239 --> 02:52:41.550 align:start position:0%
our
application<02:52:39.239> right
02:52:41.550 --> 02:52:41.560 align:start position:0%
application right
02:52:41.560 --> 02:52:44.550 align:start position:0%
application right
here<02:52:42.560> now<02:52:42.880> if<02:52:43.000> we<02:52:43.200> save<02:52:43.560> this<02:52:43.960> and<02:52:44.120> go<02:52:44.319> back
02:52:44.550 --> 02:52:44.560 align:start position:0%
here now if we save this and go back
02:52:44.560 --> 02:52:47.590 align:start position:0%
here now if we save this and go back
back<02:52:45.080> you<02:52:45.200> can<02:52:45.319> see<02:52:45.640> simple<02:52:46.040> username<02:52:46.600> form
02:52:47.590 --> 02:52:47.600 align:start position:0%
back you can see simple username form
02:52:47.600 --> 02:52:49.910 align:start position:0%
back you can see simple username form
but<02:52:47.840> instead<02:52:48.120> of<02:52:48.239> a<02:52:48.399> simple<02:52:48.720> username<02:52:49.680> let's
02:52:49.910 --> 02:52:49.920 align:start position:0%
but instead of a simple username let's
02:52:49.920 --> 02:52:52.950 align:start position:0%
but instead of a simple username let's
make<02:52:50.080> it<02:52:50.200> a<02:52:50.319> bit<02:52:50.520> more<02:52:51.080> interesting<02:52:52.080> our<02:52:52.399> form
02:52:52.950 --> 02:52:52.960 align:start position:0%
make it a bit more interesting our form
02:52:52.960 --> 02:52:55.429 align:start position:0%
make it a bit more interesting our form
is<02:52:53.120> going<02:52:53.319> to<02:52:53.479> have<02:52:53.640> a<02:52:53.880> class<02:52:54.279> name<02:52:54.960> not<02:52:55.200> of
02:52:55.429 --> 02:52:55.439 align:start position:0%
is going to have a class name not of
02:52:55.439 --> 02:52:58.510 align:start position:0%
is going to have a class name not of
space<02:52:56.160> Y8<02:52:57.160> but<02:52:57.319> of
02:52:58.510 --> 02:52:58.520 align:start position:0%
space Y8 but of
02:52:58.520 --> 02:53:00.550 align:start position:0%
space Y8 but of
flex
02:53:00.550 --> 02:53:00.560 align:start position:0%
flex
02:53:00.560 --> 02:53:03.670 align:start position:0%
flex
flex-all<02:53:01.560> gap<02:53:01.840> of<02:53:02.040> N
02:53:03.670 --> 02:53:03.680 align:start position:0%
flex-all gap of N
02:53:03.680 --> 02:53:08.790 align:start position:0%
flex-all gap of N
w-o<02:53:04.680> and<02:53:04.840> then<02:53:05.439> maxw<02:53:06.920> d5xl<02:53:07.920> within<02:53:08.200> it<02:53:08.560> we<02:53:08.680> have
02:53:08.790 --> 02:53:08.800 align:start position:0%
w-o and then maxw d5xl within it we have
02:53:08.800 --> 02:53:10.990 align:start position:0%
w-o and then maxw d5xl within it we have
a<02:53:08.960> form<02:53:09.319> field<02:53:09.840> of
02:53:10.990 --> 02:53:11.000 align:start position:0%
a form field of
02:53:11.000 --> 02:53:13.790 align:start position:0%
a form field of
caption<02:53:12.000> it's<02:53:12.200> going<02:53:12.359> to<02:53:12.479> be<02:53:12.600> a<02:53:12.720> form<02:53:13.120> item
02:53:13.790 --> 02:53:13.800 align:start position:0%
caption it's going to be a form item
02:53:13.800 --> 02:53:15.990 align:start position:0%
caption it's going to be a form item
with<02:53:13.960> a<02:53:14.080> form<02:53:14.399> form<02:53:14.640> label<02:53:15.439> that's<02:53:15.640> going<02:53:15.800> to
02:53:15.990 --> 02:53:16.000 align:start position:0%
with a form form label that's going to
02:53:16.000 --> 02:53:17.710 align:start position:0%
with a form form label that's going to
have<02:53:16.120> a<02:53:16.359> class
02:53:17.710 --> 02:53:17.720 align:start position:0%
have a class
02:53:17.720 --> 02:53:22.309 align:start position:0%
have a class
name<02:53:18.720> equal<02:53:19.040> to<02:53:19.760> Shad<02:53:20.399> Das<02:53:20.760> formore
02:53:22.309 --> 02:53:22.319 align:start position:0%
name equal to Shad Das formore
02:53:22.319 --> 02:53:26.469 align:start position:0%
name equal to Shad Das formore
label<02:53:23.319> and<02:53:23.600> it's<02:53:23.800> going<02:53:23.960> to<02:53:24.120> say
02:53:26.469 --> 02:53:26.479 align:start position:0%
label and it's going to say
02:53:26.479 --> 02:53:29.150 align:start position:0%
label and it's going to say
caption<02:53:27.479> instead<02:53:27.760> of<02:53:27.880> an<02:53:28.080> input<02:53:28.880> this<02:53:29.000> is
02:53:29.150 --> 02:53:29.160 align:start position:0%
caption instead of an input this is
02:53:29.160 --> 02:53:32.670 align:start position:0%
caption instead of an input this is
going<02:53:29.319> to<02:53:29.479> be<02:53:29.720> a<02:53:30.000> text<02:53:30.880> area<02:53:31.880> so<02:53:32.399> this<02:53:32.520> is
02:53:32.670 --> 02:53:32.680 align:start position:0%
going to be a text area so this is
02:53:32.680 --> 02:53:34.309 align:start position:0%
going to be a text area so this is
another<02:53:33.000> component<02:53:33.439> that<02:53:33.600> we<02:53:33.760> have<02:53:33.920> to
02:53:34.309 --> 02:53:34.319 align:start position:0%
another component that we have to
02:53:34.319 --> 02:53:37.750 align:start position:0%
another component that we have to
install<02:53:35.319> so<02:53:35.600> let's<02:53:35.880> copy<02:53:36.200> it<02:53:37.120> let's<02:53:37.319> go<02:53:37.479> to<02:53:37.600> our
02:53:37.750 --> 02:53:37.760 align:start position:0%
install so let's copy it let's go to our
02:53:37.760 --> 02:53:41.910 align:start position:0%
install so let's copy it let's go to our
second<02:53:38.359> terminal<02:53:39.359> and<02:53:39.600> let's<02:53:39.840> say<02:53:40.279> MPX<02:53:41.080> shaten
02:53:41.910 --> 02:53:41.920 align:start position:0%
second terminal and let's say MPX shaten
02:53:41.920 --> 02:53:46.469 align:start position:0%
second terminal and let's say MPX shaten
UI<02:53:42.680> latest<02:53:43.600> add<02:53:44.439> text<02:53:44.880> area<02:53:45.479> with<02:53:45.640> a<02:53:45.760> lowercase
02:53:46.469 --> 02:53:46.479 align:start position:0%
UI latest add text area with a lowercase
02:53:46.479 --> 02:53:50.550 align:start position:0%
UI latest add text area with a lowercase
T<02:53:47.479> and<02:53:47.800> press<02:53:48.279> enter<02:53:49.279> once<02:53:49.479> it<02:53:49.600> is<02:53:49.800> installed
02:53:50.550 --> 02:53:50.560 align:start position:0%
T and press enter once it is installed
02:53:50.560 --> 02:53:54.590 align:start position:0%
T and press enter once it is installed
we<02:53:50.680> can<02:53:50.880> simply<02:53:51.239> import<02:53:51.600> it<02:53:52.000> from<02:53:52.520> do/<02:53:53.520> UI<02:53:54.239> text
02:53:54.590 --> 02:53:54.600 align:start position:0%
we can simply import it from do/ UI text
02:53:54.600 --> 02:53:56.630 align:start position:0%
we can simply import it from do/ UI text
area<02:53:55.319> we<02:53:55.479> won't<02:53:55.720> be<02:53:55.880> needing<02:53:56.160> a<02:53:56.319> form
02:53:56.630 --> 02:53:56.640 align:start position:0%
area we won't be needing a form
02:53:56.640 --> 02:53:59.269 align:start position:0%
area we won't be needing a form
description<02:53:57.600> but<02:53:57.840> to<02:53:58.000> our<02:53:58.160> form<02:53:58.520> message<02:53:59.160> we
02:53:59.269 --> 02:53:59.279 align:start position:0%
description but to our form message we
02:53:59.279 --> 02:54:03.349 align:start position:0%
description but to our form message we
can<02:53:59.520> provide<02:54:00.000> a<02:54:00.319> class<02:54:00.840> name<02:54:01.840> equal<02:54:02.160> to<02:54:02.680> Shad
02:54:03.349 --> 02:54:03.359 align:start position:0%
can provide a class name equal to Shad
02:54:03.359 --> 02:54:04.429 align:start position:0%
can provide a class name equal to Shad
Das
02:54:04.429 --> 02:54:04.439 align:start position:0%
Das
02:54:04.439 --> 02:54:07.830 align:start position:0%
Das
formore<02:54:05.560> message<02:54:06.560> and<02:54:06.760> we<02:54:06.840> can<02:54:07.080> also<02:54:07.439> style
02:54:07.830 --> 02:54:07.840 align:start position:0%
formore message and we can also style
02:54:07.840 --> 02:54:11.830 align:start position:0%
formore message and we can also style
our<02:54:08.040> text<02:54:08.720> area<02:54:09.720> by<02:54:09.960> giving<02:54:10.200> it<02:54:10.359> a<02:54:10.560> class
02:54:11.830 --> 02:54:11.840 align:start position:0%
our text area by giving it a class
02:54:11.840 --> 02:54:17.349 align:start position:0%
our text area by giving it a class
name<02:54:12.840> equal<02:54:13.160> to<02:54:13.960> sh<02:54:14.359> p-<02:54:15.160> text<02:54:15.600> area<02:54:16.600> and
02:54:17.349 --> 02:54:17.359 align:start position:0%
name equal to sh p- text area and
02:54:17.359 --> 02:54:19.269 align:start position:0%
name equal to sh p- text area and
custom-
02:54:19.269 --> 02:54:19.279 align:start position:0%
custom-
02:54:19.279 --> 02:54:22.150 align:start position:0%
custom-
scrollbar<02:54:20.279> now<02:54:20.560> this<02:54:20.680> is<02:54:20.840> more<02:54:21.120> like<02:54:21.359> it<02:54:22.040> we
02:54:22.150 --> 02:54:22.160 align:start position:0%
scrollbar now this is more like it we
02:54:22.160 --> 02:54:24.630 align:start position:0%
scrollbar now this is more like it we
can<02:54:22.359> now<02:54:22.600> duplicate<02:54:23.080> this<02:54:23.239> form<02:54:23.600> field<02:54:24.439> one
02:54:24.630 --> 02:54:24.640 align:start position:0%
can now duplicate this form field one
02:54:24.640 --> 02:54:26.389 align:start position:0%
can now duplicate this form field one
more<02:54:24.920> time
02:54:26.389 --> 02:54:26.399 align:start position:0%
more time
02:54:26.399 --> 02:54:30.070 align:start position:0%
more time
below<02:54:27.399> this<02:54:27.640> time<02:54:27.920> it's<02:54:28.080> going<02:54:28.279> to<02:54:28.399> say
02:54:30.070 --> 02:54:30.080 align:start position:0%
below this time it's going to say
02:54:30.080 --> 02:54:33.910 align:start position:0%
below this time it's going to say
file<02:54:31.080> it<02:54:31.200> can<02:54:31.399> say<02:54:31.760> add<02:54:32.120> photos<02:54:33.000> right<02:54:33.279> here<02:54:33.800> as
02:54:33.910 --> 02:54:33.920 align:start position:0%
file it can say add photos right here as
02:54:33.920 --> 02:54:36.910 align:start position:0%
file it can say add photos right here as
the<02:54:34.080> form<02:54:34.720> label<02:54:35.720> but<02:54:35.960> this<02:54:36.200> time<02:54:36.520> it's<02:54:36.680> not
02:54:36.910 --> 02:54:36.920 align:start position:0%
the form label but this time it's not
02:54:36.920 --> 02:54:39.469 align:start position:0%
the form label but this time it's not
going<02:54:37.080> to<02:54:37.200> be<02:54:37.359> a<02:54:37.520> text<02:54:37.840> area<02:54:38.720> it's<02:54:38.920> going<02:54:39.080> to<02:54:39.239> be
02:54:39.469 --> 02:54:39.479 align:start position:0%
going to be a text area it's going to be
02:54:39.479 --> 02:54:42.070 align:start position:0%
going to be a text area it's going to be
our<02:54:39.720> own<02:54:40.120> component<02:54:40.640> that<02:54:40.800> we'll<02:54:41.080> create
02:54:42.070 --> 02:54:42.080 align:start position:0%
our own component that we'll create
02:54:42.080 --> 02:54:45.190 align:start position:0%
our own component that we'll create
called<02:54:42.760> file<02:54:43.359> uploader<02:54:44.479> so<02:54:44.680> let's<02:54:44.880> simply
02:54:45.190 --> 02:54:45.200 align:start position:0%
called file uploader so let's simply
02:54:45.200 --> 02:54:47.950 align:start position:0%
called file uploader so let's simply
call<02:54:45.439> it<02:54:45.680> like<02:54:45.960> this<02:54:46.680> and<02:54:46.840> let's<02:54:47.120> define<02:54:47.479> it
02:54:47.950 --> 02:54:47.960 align:start position:0%
call it like this and let's define it
02:54:47.960 --> 02:54:50.910 align:start position:0%
call it like this and let's define it
within<02:54:48.319> our<02:54:48.640> components<02:54:49.640> and<02:54:49.800> then<02:54:49.960> shared
02:54:50.910 --> 02:54:50.920 align:start position:0%
within our components and then shared
02:54:50.920 --> 02:54:57.030 align:start position:0%
within our components and then shared
called<02:54:51.600> file<02:54:52.680> uploader<02:54:54.000> dtsx<02:54:55.000> and<02:54:55.160> we<02:54:55.239> can<02:54:55.399> run
02:54:57.030 --> 02:54:57.040 align:start position:0%
called file uploader dtsx and we can run
02:54:57.040 --> 02:55:00.150 align:start position:0%
called file uploader dtsx and we can run
RFC<02:54:58.040> back<02:54:58.239> in<02:54:58.359> the<02:54:58.560> post<02:54:58.880> form<02:54:59.560> we<02:54:59.680> can<02:54:59.840> import
02:55:00.150 --> 02:55:00.160 align:start position:0%
RFC back in the post form we can import
02:55:00.160 --> 02:55:03.710 align:start position:0%
RFC back in the post form we can import
it<02:55:01.120> right<02:55:01.399> here<02:55:02.200> save<02:55:02.479> it<02:55:03.120> and<02:55:03.239> we<02:55:03.359> can<02:55:03.479> see
02:55:03.710 --> 02:55:03.720 align:start position:0%
it right here save it and we can see
02:55:03.720 --> 02:55:06.229 align:start position:0%
it right here save it and we can see
file<02:55:04.080> uploader<02:55:05.080> soon<02:55:05.520> we're<02:55:05.680> going<02:55:05.800> to<02:55:06.000> make
02:55:06.229 --> 02:55:06.239 align:start position:0%
file uploader soon we're going to make
02:55:06.239 --> 02:55:09.070 align:start position:0%
file uploader soon we're going to make
that<02:55:06.520> happen<02:55:06.960> as<02:55:07.160> well<02:55:07.880> but<02:55:08.040> for<02:55:08.359> now<02:55:08.840> let's
02:55:09.070 --> 02:55:09.080 align:start position:0%
that happen as well but for now let's
02:55:09.080 --> 02:55:12.110 align:start position:0%
that happen as well but for now let's
duplicate<02:55:09.560> our<02:55:09.720> form<02:55:10.040> field<02:55:10.399> one<02:55:10.600> more<02:55:10.840> time
02:55:12.110 --> 02:55:12.120 align:start position:0%
duplicate our form field one more time
02:55:12.120 --> 02:55:15.510 align:start position:0%
duplicate our form field one more time
below<02:55:13.120> this<02:55:13.359> time<02:55:13.760> it's<02:55:13.920> going<02:55:14.080> to<02:55:14.279> to<02:55:14.399> say
02:55:15.510 --> 02:55:15.520 align:start position:0%
below this time it's going to to say
02:55:15.520 --> 02:55:18.269 align:start position:0%
below this time it's going to to say
location<02:55:16.520> and<02:55:16.680> it's<02:55:16.840> going<02:55:17.000> to<02:55:17.160> render<02:55:17.560> a<02:55:17.760> form
02:55:18.269 --> 02:55:18.279 align:start position:0%
location and it's going to render a form
02:55:18.279 --> 02:55:22.309 align:start position:0%
location and it's going to render a form
label<02:55:19.120> that's<02:55:19.319> going<02:55:19.479> to<02:55:19.680> say<02:55:20.160> add<02:55:21.319> location
02:55:22.309 --> 02:55:22.319 align:start position:0%
label that's going to say add location
02:55:22.319 --> 02:55:24.469 align:start position:0%
label that's going to say add location
instead<02:55:22.560> of<02:55:22.680> a<02:55:22.840> file<02:55:23.160> uploader<02:55:24.000> it's<02:55:24.200> going<02:55:24.319> to
02:55:24.469 --> 02:55:24.479 align:start position:0%
instead of a file uploader it's going to
02:55:24.479 --> 02:55:27.309 align:start position:0%
instead of a file uploader it's going to
render<02:55:24.960> a<02:55:25.160> regular<02:55:25.760> input<02:55:26.760> that's<02:55:26.960> going<02:55:27.120> to
02:55:27.309 --> 02:55:27.319 align:start position:0%
render a regular input that's going to
02:55:27.319 --> 02:55:31.070 align:start position:0%
render a regular input that's going to
have<02:55:27.520> a<02:55:27.760> type<02:55:28.160> is<02:55:28.319> equal<02:55:28.560> to<02:55:29.000> text<02:55:30.000> and<02:55:30.279> a<02:55:30.600> class
02:55:31.070 --> 02:55:31.080 align:start position:0%
have a type is equal to text and a class
02:55:31.080 --> 02:55:35.309 align:start position:0%
have a type is equal to text and a class
name<02:55:32.080> equal<02:55:32.399> to<02:55:33.040> Shad
02:55:35.309 --> 02:55:35.319 align:start position:0%
name equal to Shad
02:55:35.319 --> 02:55:38.389 align:start position:0%
name equal to Shad
input<02:55:36.319> there<02:55:36.479> we<02:55:36.680> go<02:55:37.279> if<02:55:37.399> we<02:55:37.560> save<02:55:37.840> it<02:55:38.080> we<02:55:38.279> have
02:55:38.389 --> 02:55:38.399 align:start position:0%
input there we go if we save it we have
02:55:38.399 --> 02:55:41.309 align:start position:0%
input there we go if we save it we have
a<02:55:38.560> location<02:55:39.080> input<02:55:40.080> and<02:55:40.399> finally<02:55:40.960> we<02:55:41.080> can
02:55:41.309 --> 02:55:41.319 align:start position:0%
a location input and finally we can
02:55:41.319 --> 02:55:43.590 align:start position:0%
a location input and finally we can
duplicate<02:55:41.800> this<02:55:41.960> form<02:55:42.319> field<02:55:42.840> one<02:55:43.000> more<02:55:43.279> time
02:55:43.590 --> 02:55:43.600 align:start position:0%
duplicate this form field one more time
02:55:43.600 --> 02:55:45.710 align:start position:0%
duplicate this form field one more time
below<02:55:44.279> for<02:55:44.520> the<02:55:44.720> last<02:55:45.040> time<02:55:45.319> we're<02:55:45.479> going<02:55:45.560> to
02:55:45.710 --> 02:55:45.720 align:start position:0%
below for the last time we're going to
02:55:45.720 --> 02:55:50.269 align:start position:0%
below for the last time we're going to
say<02:55:46.279> tags<02:55:47.279> we<02:55:47.359> can<02:55:47.560> say<02:55:47.920> add<02:55:48.479> tags<02:55:49.399> and<02:55:49.520> then<02:55:49.680> in
02:55:50.269 --> 02:55:50.279 align:start position:0%
say tags we can say add tags and then in
02:55:50.279 --> 02:55:52.389 align:start position:0%
say tags we can say add tags and then in
parentheses
02:55:52.389 --> 02:55:52.399 align:start position:0%
parentheses
02:55:52.399 --> 02:55:57.030 align:start position:0%
parentheses
separated<02:55:53.399> by<02:55:54.279> Comma<02:55:55.279> just<02:55:55.760> like<02:55:56.160> this<02:55:56.800> so
02:55:57.030 --> 02:55:57.040 align:start position:0%
separated by Comma just like this so
02:55:57.040 --> 02:55:59.150 align:start position:0%
separated by Comma just like this so
people<02:55:57.319> know<02:55:57.560> what<02:55:57.720> they<02:55:57.840> have<02:55:58.000> to<02:55:58.160> do<02:55:58.880> we<02:55:59.000> can
02:55:59.150 --> 02:55:59.160 align:start position:0%
people know what they have to do we can
02:55:59.160 --> 02:56:01.469 align:start position:0%
people know what they have to do we can
end<02:55:59.680> parentheses<02:56:00.680> and<02:56:00.800> then<02:56:00.960> we<02:56:01.040> can<02:56:01.200> also
02:56:01.469 --> 02:56:01.479 align:start position:0%
end parentheses and then we can also
02:56:01.479 --> 02:56:03.990 align:start position:0%
end parentheses and then we can also
render<02:56:01.800> an<02:56:02.080> input<02:56:03.080> it's<02:56:03.279> also<02:56:03.479> going<02:56:03.640> to<02:56:03.760> be<02:56:03.880> of
02:56:03.990 --> 02:56:04.000 align:start position:0%
render an input it's also going to be of
02:56:04.000 --> 02:56:06.950 align:start position:0%
render an input it's also going to be of
a<02:56:04.160> type<02:56:04.479> text<02:56:05.359> but<02:56:05.600> this<02:56:05.800> time<02:56:06.439> we<02:56:06.560> can<02:56:06.720> give<02:56:06.840> it
02:56:06.950 --> 02:56:06.960 align:start position:0%
a type text but this time we can give it
02:56:06.960 --> 02:56:08.030 align:start position:0%
a type text but this time we can give it
a
02:56:08.030 --> 02:56:08.040 align:start position:0%
a
02:56:08.040 --> 02:56:10.469 align:start position:0%
a
placeholder<02:56:09.040> something<02:56:09.479> like
02:56:10.469 --> 02:56:10.479 align:start position:0%
placeholder something like
02:56:10.479 --> 02:56:12.030 align:start position:0%
placeholder something like
art
02:56:12.030 --> 02:56:12.040 align:start position:0%
art
02:56:12.040 --> 02:56:15.429 align:start position:0%
art
expression<02:56:13.040> and<02:56:13.239> learn<02:56:14.239> whatever<02:56:14.760> right<02:56:15.200> some
02:56:15.429 --> 02:56:15.439 align:start position:0%
expression and learn whatever right some
02:56:15.439 --> 02:56:18.590 align:start position:0%
expression and learn whatever right some
tags<02:56:15.760> that<02:56:15.920> we<02:56:16.000> can<02:56:16.680> add<02:56:17.680> there<02:56:17.840> we<02:56:18.000> go<02:56:18.479> if
02:56:18.590 --> 02:56:18.600 align:start position:0%
tags that we can add there we go if
02:56:18.600 --> 02:56:20.469 align:start position:0%
tags that we can add there we go if
we're<02:56:18.760> doing<02:56:18.960> a<02:56:19.120> coding<02:56:19.479> application<02:56:20.200> it<02:56:20.319> can
02:56:20.469 --> 02:56:20.479 align:start position:0%
we're doing a coding application it can
02:56:20.479 --> 02:56:21.229 align:start position:0%
we're doing a coding application it can
be
02:56:21.229 --> 02:56:21.239 align:start position:0%
be
02:56:21.239 --> 02:56:24.790 align:start position:0%
be
JS<02:56:22.600> react<02:56:23.600> and
02:56:24.790 --> 02:56:24.800 align:start position:0%
JS react and
02:56:24.800 --> 02:56:28.590 align:start position:0%
JS react and
nextjs<02:56:25.800> there<02:56:25.920> we<02:56:26.120> go<02:56:26.920> so<02:56:27.080> if<02:56:27.200> we<02:56:27.359> save<02:56:27.600> it<02:56:28.279> this
02:56:28.590 --> 02:56:28.600 align:start position:0%
nextjs there we go so if we save it this
02:56:28.600 --> 02:56:31.750 align:start position:0%
nextjs there we go so if we save it this
looks<02:56:29.160> great<02:56:30.120> and<02:56:30.319> finally<02:56:30.840> we<02:56:31.000> have<02:56:31.120> to<02:56:31.399> have
02:56:31.750 --> 02:56:31.760 align:start position:0%
looks great and finally we have to have
02:56:31.760 --> 02:56:34.950 align:start position:0%
looks great and finally we have to have
a<02:56:31.960> button<02:56:32.960> so<02:56:33.359> below<02:56:34.120> all<02:56:34.279> of<02:56:34.439> these<02:56:34.640> form
02:56:34.950 --> 02:56:34.960 align:start position:0%
a button so below all of these form
02:56:34.960 --> 02:56:38.110 align:start position:0%
a button so below all of these form
fields<02:56:35.640> we<02:56:35.760> can<02:56:35.960> create<02:56:36.279> a<02:56:36.479> new<02:56:36.760> div<02:56:37.560> inside<02:56:37.880> of
02:56:38.110 --> 02:56:38.120 align:start position:0%
fields we can create a new div inside of
02:56:38.120 --> 02:56:41.070 align:start position:0%
fields we can create a new div inside of
that<02:56:38.319> div<02:56:38.760> we<02:56:38.880> can<02:56:39.120> have<02:56:39.399> our<02:56:39.880> button<02:56:40.880> and
02:56:41.070 --> 02:56:41.080 align:start position:0%
that div we can have our button and
02:56:41.080 --> 02:56:42.510 align:start position:0%
that div we can have our button and
below<02:56:41.399> it<02:56:41.560> we're<02:56:41.720> going<02:56:41.800> to<02:56:41.920> have<02:56:42.120> another
02:56:42.510 --> 02:56:42.520 align:start position:0%
below it we're going to have another
02:56:42.520 --> 02:56:45.670 align:start position:0%
below it we're going to have another
button<02:56:43.520> the<02:56:43.680> first<02:56:44.239> button<02:56:44.880> is<02:56:45.040> going<02:56:45.200> to<02:56:45.359> be
02:56:45.670 --> 02:56:45.680 align:start position:0%
button the first button is going to be
02:56:45.680 --> 02:56:48.269 align:start position:0%
button the first button is going to be
not<02:56:45.880> of<02:56:46.040> a<02:56:46.200> type<02:56:46.439> submit<02:56:47.279> but<02:56:47.479> of<02:56:47.640> a<02:56:47.840> type
02:56:48.269 --> 02:56:48.279 align:start position:0%
not of a type submit but of a type
02:56:48.279 --> 02:56:50.910 align:start position:0%
not of a type submit but of a type
button<02:56:49.279> it's<02:56:49.439> going<02:56:49.600> to<02:56:49.760> have<02:56:49.880> a<02:56:50.120> class<02:56:50.439> name
02:56:50.910 --> 02:56:50.920 align:start position:0%
button it's going to have a class name
02:56:50.920 --> 02:56:55.389 align:start position:0%
button it's going to have a class name
equal<02:56:51.200> to<02:56:51.479> Shad<02:56:52.279> button<02:56:52.960> unor
02:56:55.389 --> 02:56:55.399 align:start position:0%
equal to Shad button unor
02:56:55.399 --> 02:56:58.349 align:start position:0%
equal to Shad button unor
dark4<02:56:56.399> and<02:56:56.560> it's<02:56:56.720> going<02:56:56.920> to<02:56:57.080> say<02:56:57.399> not<02:56:57.680> submit
02:56:58.349 --> 02:56:58.359 align:start position:0%
dark4 and it's going to say not submit
02:56:58.359 --> 02:56:59.309 align:start position:0%
dark4 and it's going to say not submit
but
02:56:59.309 --> 02:56:59.319 align:start position:0%
but
02:56:59.319 --> 02:57:01.510 align:start position:0%
but
cancel<02:57:00.319> okay<02:57:00.520> so<02:57:00.680> we<02:57:00.800> need<02:57:00.920> to<02:57:01.040> be<02:57:01.120> able<02:57:01.319> to
02:57:01.510 --> 02:57:01.520 align:start position:0%
cancel okay so we need to be able to
02:57:01.520 --> 02:57:04.630 align:start position:0%
cancel okay so we need to be able to
cancel<02:57:01.960> the<02:57:02.120> submit<02:57:02.640> of<02:57:02.800> the<02:57:03.200> form<02:57:04.200> let's<02:57:04.439> put
02:57:04.630 --> 02:57:04.640 align:start position:0%
cancel the submit of the form let's put
02:57:04.640 --> 02:57:08.590 align:start position:0%
cancel the submit of the form let's put
this<02:57:04.720> in<02:57:04.880> multiple<02:57:05.760> lines<02:57:06.760> there<02:57:06.920> we
02:57:08.590 --> 02:57:08.600 align:start position:0%
this in multiple lines there we
02:57:08.600 --> 02:57:11.910 align:start position:0%
this in multiple lines there we
go<02:57:09.600> so<02:57:09.840> this<02:57:09.960> is<02:57:10.160> one<02:57:10.319> of<02:57:10.479> our<02:57:10.800> buttons<02:57:11.800> and
02:57:11.910 --> 02:57:11.920 align:start position:0%
go so this is one of our buttons and
02:57:11.920 --> 02:57:14.309 align:start position:0%
go so this is one of our buttons and
then<02:57:12.080> the<02:57:12.239> second<02:57:12.520> one<02:57:12.840> will<02:57:13.040> be<02:57:13.239> submit<02:57:14.160> it's
02:57:14.309 --> 02:57:14.319 align:start position:0%
then the second one will be submit it's
02:57:14.319 --> 02:57:17.030 align:start position:0%
then the second one will be submit it's
going<02:57:14.520> to<02:57:14.720> say<02:57:15.160> submit<02:57:16.160> it's<02:57:16.319> going<02:57:16.479> to<02:57:16.640> have<02:57:16.800> a
02:57:17.030 --> 02:57:17.040 align:start position:0%
going to say submit it's going to have a
02:57:17.040 --> 02:57:21.590 align:start position:0%
going to say submit it's going to have a
class<02:57:17.399> name<02:57:18.000> equal<02:57:18.319> to<02:57:18.560> Shad<02:57:19.399> button<02:57:20.600> primary
02:57:21.590 --> 02:57:21.600 align:start position:0%
class name equal to Shad button primary
02:57:21.600 --> 02:57:26.030 align:start position:0%
class name equal to Shad button primary
and<02:57:22.040> wh<02:57:22.359> space<02:57:23.040> no<02:57:23.720> wrap<02:57:24.720> there<02:57:24.880> we<02:57:25.080> go<02:57:25.760> now<02:57:25.960> we
02:57:26.030 --> 02:57:26.040 align:start position:0%
and wh space no wrap there we go now we
02:57:26.040 --> 02:57:27.950 align:start position:0%
and wh space no wrap there we go now we
can<02:57:26.239> style<02:57:26.600> this<02:57:26.800> div<02:57:27.120> that's<02:57:27.319> wrapping<02:57:27.760> these
02:57:27.950 --> 02:57:27.960 align:start position:0%
can style this div that's wrapping these
02:57:27.960 --> 02:57:30.750 align:start position:0%
can style this div that's wrapping these
two<02:57:28.160> buttons<02:57:28.800> by<02:57:28.960> giving<02:57:29.200> it<02:57:29.399> a<02:57:29.640> class<02:57:30.120> name
02:57:30.750 --> 02:57:30.760 align:start position:0%
two buttons by giving it a class name
02:57:30.760 --> 02:57:36.150 align:start position:0%
two buttons by giving it a class name
equal<02:57:31.080> to<02:57:31.479> flex<02:57:32.479> Gap<02:57:33.279> D4<02:57:34.279> items<02:57:34.800> D<02:57:35.040> Center<02:57:35.880> and
02:57:36.150 --> 02:57:36.160 align:start position:0%
equal to flex Gap D4 items D Center and
02:57:36.160 --> 02:57:39.910 align:start position:0%
equal to flex Gap D4 items D Center and
justify<02:57:36.840> Das<02:57:37.399> end<02:57:38.399> there<02:57:38.560> we<02:57:38.760> go<02:57:39.399> now<02:57:39.640> they're
02:57:39.910 --> 02:57:39.920 align:start position:0%
justify Das end there we go now they're
02:57:39.920 --> 02:57:42.590 align:start position:0%
justify Das end there we go now they're
nicely<02:57:40.239> aligned<02:57:40.720> at<02:57:40.840> the<02:57:41.160> end<02:57:42.160> now<02:57:42.439> the
02:57:42.590 --> 02:57:42.600 align:start position:0%
nicely aligned at the end now the
02:57:42.600 --> 02:57:44.550 align:start position:0%
nicely aligned at the end now the
majority<02:57:42.960> of<02:57:43.080> the<02:57:43.200> UI<02:57:43.560> is<02:57:43.720> done
02:57:44.550 --> 02:57:44.560 align:start position:0%
majority of the UI is done
02:57:44.560 --> 02:57:46.510 align:start position:0%
majority of the UI is done
but<02:57:45.040> let's<02:57:45.239> go<02:57:45.359> ahead<02:57:45.520> and<02:57:45.680> focus<02:57:45.960> on<02:57:46.120> the<02:57:46.239> file
02:57:46.510 --> 02:57:46.520 align:start position:0%
but let's go ahead and focus on the file
02:57:46.520 --> 02:57:48.790 align:start position:0%
but let's go ahead and focus on the file
uploader<02:57:47.520> that's<02:57:47.800> one<02:57:48.080> component<02:57:48.600> that's
02:57:48.790 --> 02:57:48.800 align:start position:0%
uploader that's one component that's
02:57:48.800 --> 02:57:50.670 align:start position:0%
uploader that's one component that's
going<02:57:48.960> to<02:57:49.080> be<02:57:49.279> one<02:57:49.399> of<02:57:49.560> the<02:57:49.840> most<02:57:50.160> important
02:57:50.670 --> 02:57:50.680 align:start position:0%
going to be one of the most important
02:57:50.680 --> 02:57:52.990 align:start position:0%
going to be one of the most important
components<02:57:51.319> in<02:57:51.439> our<02:57:51.640> entire<02:57:52.040> application<02:57:52.880> we
02:57:52.990 --> 02:57:53.000 align:start position:0%
components in our entire application we
02:57:53.000 --> 02:57:55.389 align:start position:0%
components in our entire application we
are<02:57:53.200> building<02:57:53.600> a<02:57:53.840> snapgram<02:57:54.800> and<02:57:54.960> you<02:57:55.080> have<02:57:55.200> to
02:57:55.389 --> 02:57:55.399 align:start position:0%
are building a snapgram and you have to
02:57:55.399 --> 02:57:58.150 align:start position:0%
are building a snapgram and you have to
snap<02:57:55.840> some<02:57:56.120> photos<02:57:56.760> right<02:57:57.359> and<02:57:57.520> then<02:57:57.720> upload
02:57:58.150 --> 02:57:58.160 align:start position:0%
snap some photos right and then upload
02:57:58.160 --> 02:58:00.870 align:start position:0%
snap some photos right and then upload
them<02:57:58.840> so<02:57:59.080> let's<02:57:59.319> go<02:57:59.439> ahead<02:57:59.720> and<02:58:00.000> Implement<02:58:00.600> our
02:58:00.870 --> 02:58:00.880 align:start position:0%
them so let's go ahead and Implement our
02:58:00.880 --> 02:58:03.950 align:start position:0%
them so let's go ahead and Implement our
file<02:58:01.200> uploader<02:58:01.800> component<02:58:02.760> to<02:58:03.040> implement<02:58:03.520> it
02:58:03.950 --> 02:58:03.960 align:start position:0%
file uploader component to implement it
02:58:03.960 --> 02:58:06.670 align:start position:0%
file uploader component to implement it
we'll<02:58:04.200> use<02:58:04.399> a<02:58:04.720> package<02:58:05.200> called<02:58:05.600> react<02:58:06.239> drop
02:58:06.670 --> 02:58:06.680 align:start position:0%
we'll use a package called react drop
02:58:06.680 --> 02:58:08.830 align:start position:0%
we'll use a package called react drop
zone<02:58:07.160> that<02:58:07.319> allows<02:58:07.600> you<02:58:07.720> to<02:58:07.960> drop<02:58:08.359> some<02:58:08.560> things
02:58:08.830 --> 02:58:08.840 align:start position:0%
zone that allows you to drop some things
02:58:08.840 --> 02:58:11.990 align:start position:0%
zone that allows you to drop some things
in<02:58:09.800> so<02:58:10.000> let's<02:58:10.239> install<02:58:10.600> it<02:58:10.960> by<02:58:11.080> running<02:58:11.479> mpm
02:58:11.990 --> 02:58:12.000 align:start position:0%
in so let's install it by running mpm
02:58:12.000 --> 02:58:15.910 align:start position:0%
in so let's install it by running mpm
install<02:58:12.920> react<02:58:13.640> d<02:58:14.040> drop
02:58:15.910 --> 02:58:15.920 align:start position:0%
install react d drop
02:58:15.920 --> 02:58:18.670 align:start position:0%
install react d drop
zone<02:58:16.920> and<02:58:17.239> while<02:58:17.439> it's<02:58:17.600> getting<02:58:17.880> installed
02:58:18.670 --> 02:58:18.680 align:start position:0%
zone and while it's getting installed
02:58:18.680 --> 02:58:21.429 align:start position:0%
zone and while it's getting installed
let's<02:58:18.920> browse<02:58:19.279> his<02:58:19.800> docs<02:58:20.800> if<02:58:20.960> you<02:58:21.080> Google
02:58:21.429 --> 02:58:21.439 align:start position:0%
let's browse his docs if you Google
02:58:21.439 --> 02:58:23.389 align:start position:0%
let's browse his docs if you Google
react<02:58:21.760> Drop<02:58:22.080> Zone<02:58:22.600> this<02:58:22.720> is<02:58:22.840> the<02:58:23.000> first<02:58:23.239> thing
02:58:23.389 --> 02:58:23.399 align:start position:0%
react Drop Zone this is the first thing
02:58:23.399 --> 02:58:25.349 align:start position:0%
react Drop Zone this is the first thing
that's<02:58:23.560> going<02:58:23.720> to<02:58:23.840> show<02:58:24.120> up<02:58:24.680> and<02:58:24.920> here<02:58:25.120> you<02:58:25.200> can
02:58:25.349 --> 02:58:25.359 align:start position:0%
that's going to show up and here you can
02:58:25.359 --> 02:58:26.710 align:start position:0%
that's going to show up and here you can
see<02:58:25.600> its
02:58:26.710 --> 02:58:26.720 align:start position:0%
see its
02:58:26.720 --> 02:58:29.590 align:start position:0%
see its
usage<02:58:27.720> first<02:58:28.000> we<02:58:28.120> need<02:58:28.279> to<02:58:28.479> import<02:58:29.000> react<02:58:29.439> and
02:58:29.590 --> 02:58:29.600 align:start position:0%
usage first we need to import react and
02:58:29.600 --> 02:58:32.389 align:start position:0%
usage first we need to import react and
use<02:58:29.960> call<02:58:30.239> back<02:58:30.439> from<02:58:30.720> react<02:58:31.560> as<02:58:31.720> well<02:58:31.880> as<02:58:32.040> use
02:58:32.389 --> 02:58:32.399 align:start position:0%
use call back from react as well as use
02:58:32.399 --> 02:58:35.910 align:start position:0%
use call back from react as well as use
drop<02:58:32.760> zone<02:58:33.359> so<02:58:33.600> let's<02:58:33.800> do<02:58:34.080> just<02:58:34.520> that<02:58:35.520> never
02:58:35.910 --> 02:58:35.920 align:start position:0%
drop zone so let's do just that never
02:58:35.920 --> 02:58:38.590 align:start position:0%
drop zone so let's do just that never
reinvent<02:58:36.520> the<02:58:36.640> wheel<02:58:37.479> always<02:58:37.960> just<02:58:38.080> refer<02:58:38.399> to
02:58:38.590 --> 02:58:38.600 align:start position:0%
reinvent the wheel always just refer to
02:58:38.600 --> 02:58:41.750 align:start position:0%
reinvent the wheel always just refer to
documentation<02:58:39.560> when<02:58:39.720> you<02:58:40.200> can<02:58:41.200> then<02:58:41.479> we<02:58:41.600> need
02:58:41.750 --> 02:58:41.760 align:start position:0%
documentation when you can then we need
02:58:41.760 --> 02:58:44.469 align:start position:0%
documentation when you can then we need
to<02:58:41.920> get<02:58:42.040> a<02:58:42.200> function<02:58:42.640> called<02:58:42.960> on<02:58:43.359> drop<02:58:44.200> that<02:58:44.359> we
02:58:44.469 --> 02:58:44.479 align:start position:0%
to get a function called on drop that we
02:58:44.479 --> 02:58:46.550 align:start position:0%
to get a function called on drop that we
can<02:58:44.640> put<02:58:45.040> right
02:58:46.550 --> 02:58:46.560 align:start position:0%
can put right
02:58:46.560 --> 02:58:51.229 align:start position:0%
can put right
here<02:58:47.560> there<02:58:47.760> we<02:58:48.000> go<02:58:48.920> and<02:58:49.120> then<02:58:49.840> our<02:58:50.080> outer<02:58:50.479> div
02:58:51.229 --> 02:58:51.239 align:start position:0%
here there we go and then our outer div
02:58:51.239 --> 02:58:54.229 align:start position:0%
here there we go and then our outer div
needs<02:58:51.520> to<02:58:51.720> include<02:58:52.359> all<02:58:52.600> the<02:58:52.800> get<02:58:53.040> root<02:58:53.479> props
02:58:54.229 --> 02:58:54.239 align:start position:0%
needs to include all the get root props
02:58:54.239 --> 02:58:56.309 align:start position:0%
needs to include all the get root props
and<02:58:54.439> the<02:58:54.600> input<02:58:55.040> needs<02:58:55.279> to<02:58:55.439> include<02:58:55.920> the<02:58:56.080> get
02:58:56.309 --> 02:58:56.319 align:start position:0%
and the input needs to include the get
02:58:56.319 --> 02:58:59.229 align:start position:0%
and the input needs to include the get
input<02:58:56.720> props<02:58:57.680> so<02:58:57.880> let's<02:58:58.200> copy<02:58:58.640> this<02:58:58.840> entire
02:58:59.229 --> 02:58:59.239 align:start position:0%
input props so let's copy this entire
02:58:59.239 --> 02:59:00.510 align:start position:0%
input props so let's copy this entire
div<02:58:59.600> right
02:59:00.510 --> 02:59:00.520 align:start position:0%
div right
02:59:00.520 --> 02:59:03.910 align:start position:0%
div right
here<02:59:01.520> there<02:59:01.680> we<02:59:02.000> go<02:59:03.000> there<02:59:03.120> are<02:59:03.279> multiple<02:59:03.720> ways
02:59:03.910 --> 02:59:03.920 align:start position:0%
here there we go there are multiple ways
02:59:03.920 --> 02:59:06.630 align:start position:0%
here there we go there are multiple ways
of<02:59:04.080> doing<02:59:04.359> it<02:59:04.760> as<02:59:04.880> you<02:59:05.000> can<02:59:05.160> see<02:59:06.000> but<02:59:06.160> for<02:59:06.359> now
02:59:06.630 --> 02:59:06.640 align:start position:0%
of doing it as you can see but for now
02:59:06.640 --> 02:59:08.190 align:start position:0%
of doing it as you can see but for now
we're<02:59:06.800> going<02:59:06.880> to<02:59:07.040> be<02:59:07.239> happy<02:59:07.560> with<02:59:07.720> what<02:59:08.000> we
02:59:08.190 --> 02:59:08.200 align:start position:0%
we're going to be happy with what we
02:59:08.200 --> 02:59:11.870 align:start position:0%
we're going to be happy with what we
have<02:59:08.840> at<02:59:08.960> least<02:59:09.160> I<02:59:09.560> hope<02:59:10.560> let's<02:59:10.800> save<02:59:11.040> it<02:59:11.680> and
02:59:11.870 --> 02:59:11.880 align:start position:0%
have at least I hope let's save it and
02:59:11.880 --> 02:59:14.070 align:start position:0%
have at least I hope let's save it and
it<02:59:12.000> says<02:59:12.319> drag<02:59:12.600> and<02:59:12.800> drop<02:59:13.080> some<02:59:13.359> files<02:59:13.680> but<02:59:13.960> we
02:59:14.070 --> 02:59:14.080 align:start position:0%
it says drag and drop some files but we
02:59:14.080 --> 02:59:16.150 align:start position:0%
it says drag and drop some files but we
can<02:59:14.359> really<02:59:14.560> see<02:59:14.960> where<02:59:15.120> to<02:59:15.359> drag<02:59:15.600> and<02:59:15.800> drop
02:59:16.150 --> 02:59:16.160 align:start position:0%
can really see where to drag and drop
02:59:16.160 --> 02:59:19.030 align:start position:0%
can really see where to drag and drop
them<02:59:16.800> so<02:59:17.120> let's<02:59:17.319> style<02:59:17.640> this<02:59:17.760> a<02:59:17.880> bit<02:59:18.080> further
02:59:19.030 --> 02:59:19.040 align:start position:0%
them so let's style this a bit further
02:59:19.040 --> 02:59:21.670 align:start position:0%
them so let's style this a bit further
let's<02:59:19.239> give<02:59:19.439> this<02:59:19.640> div<02:59:20.040> a<02:59:20.359> class
02:59:21.670 --> 02:59:21.680 align:start position:0%
let's give this div a class
02:59:21.680 --> 02:59:27.510 align:start position:0%
let's give this div a class
name<02:59:22.680> equal<02:59:23.000> to<02:59:23.960> flex<02:59:24.960> Flex<02:59:25.479> D<02:59:25.760> Center
02:59:27.510 --> 02:59:27.520 align:start position:0%
name equal to flex Flex D Center
02:59:27.520 --> 02:59:33.309 align:start position:0%
name equal to flex Flex D Center
flex-all<02:59:28.520> BG<02:59:29.120> D<02:59:29.560> dark<02:59:30.160> D3<02:59:31.160> and<02:59:31.479> rounded<02:59:32.120> d<02:59:32.439> excl
02:59:33.309 --> 02:59:33.319 align:start position:0%
flex-all BG D dark D3 and rounded d excl
02:59:33.319 --> 02:59:35.910 align:start position:0%
flex-all BG D dark D3 and rounded d excl
as<02:59:33.439> well<02:59:33.600> as<02:59:33.840> cursor<02:59:34.439> Das<02:59:34.840> pointer<02:59:35.399> so<02:59:35.600> we<02:59:35.720> know
02:59:35.910 --> 02:59:35.920 align:start position:0%
as well as cursor Das pointer so we know
02:59:35.920 --> 02:59:38.469 align:start position:0%
as well as cursor Das pointer so we know
it's<02:59:36.239> clickable<02:59:37.239> then<02:59:37.680> let's<02:59:38.000> make<02:59:38.279> this
02:59:38.469 --> 02:59:38.479 align:start position:0%
it's clickable then let's make this
02:59:38.479 --> 02:59:42.950 align:start position:0%
it's clickable then let's make this
input<02:59:39.120> a<02:59:39.479> class<02:59:40.040> name<02:59:41.040> equal<02:59:41.359> to<02:59:42.080> cursor<02:59:42.600> Das
02:59:42.950 --> 02:59:42.960 align:start position:0%
input a class name equal to cursor Das
02:59:42.960 --> 02:59:44.630 align:start position:0%
input a class name equal to cursor Das
pointer
02:59:44.630 --> 02:59:44.640 align:start position:0%
pointer
02:59:44.640 --> 02:59:47.349 align:start position:0%
pointer
so<02:59:44.840> we<02:59:44.960> know<02:59:45.200> we<02:59:45.319> can<02:59:45.520> click<02:59:45.760> it<02:59:46.239> as<02:59:46.439> well<02:59:47.160> and
02:59:47.349 --> 02:59:47.359 align:start position:0%
so we know we can click it as well and
02:59:47.359 --> 02:59:50.510 align:start position:0%
so we know we can click it as well and
then<02:59:47.800> let's<02:59:48.040> create<02:59:48.319> a<02:59:48.520> new<02:59:48.800> use<02:59:49.200> state<02:59:49.840> for<02:59:50.239> a
02:59:50.510 --> 02:59:50.520 align:start position:0%
then let's create a new use state for a
02:59:50.520 --> 02:59:53.389 align:start position:0%
then let's create a new use state for a
file<02:59:50.920> URL<02:59:51.920> so<02:59:52.160> right<02:59:52.279> here<02:59:52.439> at<02:59:52.600> the<02:59:52.800> top<02:59:53.160> we<02:59:53.279> can
02:59:53.389 --> 02:59:53.399 align:start position:0%
file URL so right here at the top we can
02:59:53.399 --> 02:59:56.110 align:start position:0%
file URL so right here at the top we can
say<02:59:53.680> use<02:59:54.200> state<02:59:55.200> which<02:59:55.319> is<02:59:55.439> going<02:59:55.600> to<02:59:55.720> be<02:59:55.880> equal
02:59:56.110 --> 02:59:56.120 align:start position:0%
say use state which is going to be equal
02:59:56.120 --> 02:59:59.790 align:start position:0%
say use state which is going to be equal
to<02:59:56.279> use<02:59:56.560> State<02:59:56.800> snippet<02:59:57.760> and<02:59:57.920> let's<02:59:58.160> call<02:59:58.399> it
02:59:59.790 --> 02:59:59.800 align:start position:0%
to use State snippet and let's call it
02:59:59.800 --> 03:00:02.190 align:start position:0%
to use State snippet and let's call it
file
03:00:02.190 --> 03:00:02.200 align:start position:0%
file
03:00:02.200 --> 03:00:06.309 align:start position:0%
file
URL<03:00:03.200> as<03:00:03.359> well<03:00:03.520> as<03:00:03.800> set<03:00:04.160> file<03:00:04.600> URL<03:00:05.600> at<03:00:05.760> the<03:00:05.960> start
03:00:06.309 --> 03:00:06.319 align:start position:0%
URL as well as set file URL at the start
03:00:06.319 --> 03:00:09.070 align:start position:0%
URL as well as set file URL at the start
equal<03:00:06.640> to<03:00:06.760> an<03:00:06.880> empty<03:00:07.359> string<03:00:08.359> we<03:00:08.439> can<03:00:08.680> also
03:00:09.070 --> 03:00:09.080 align:start position:0%
equal to an empty string we can also
03:00:09.080 --> 03:00:12.590 align:start position:0%
equal to an empty string we can also
import<03:00:09.520> use<03:00:09.840> State<03:00:10.479> coming<03:00:10.840> from<03:00:11.399> react<03:00:12.399> right
03:00:12.590 --> 03:00:12.600 align:start position:0%
import use State coming from react right
03:00:12.600 --> 03:00:15.790 align:start position:0%
import use State coming from react right
here<03:00:12.880> at<03:00:13.040> the<03:00:13.239> top<03:00:14.080> use
03:00:15.790 --> 03:00:15.800 align:start position:0%
here at the top use
03:00:15.800 --> 03:00:19.950 align:start position:0%
here at the top use
State<03:00:16.800> great<03:00:17.640> so<03:00:17.920> now<03:00:18.760> instead<03:00:19.080> of<03:00:19.239> saying<03:00:19.640> is
03:00:19.950 --> 03:00:19.960 align:start position:0%
State great so now instead of saying is
03:00:19.960 --> 03:00:24.110 align:start position:0%
State great so now instead of saying is
drag<03:00:20.560> active<03:00:21.319> let's<03:00:21.560> rather<03:00:22.000> check<03:00:22.279> for<03:00:23.239> is<03:00:23.880> a
03:00:24.110 --> 03:00:24.120 align:start position:0%
drag active let's rather check for is a
03:00:24.120 --> 03:00:27.710 align:start position:0%
drag active let's rather check for is a
file<03:00:24.399> URL<03:00:24.960> there<03:00:25.800> has<03:00:25.920> it<03:00:26.080> been<03:00:26.600> uploaded<03:00:27.600> if
03:00:27.710 --> 03:00:27.720 align:start position:0%
file URL there has it been uploaded if
03:00:27.720 --> 03:00:30.110 align:start position:0%
file URL there has it been uploaded if
it<03:00:27.920> has<03:00:28.120> been<03:00:28.319> uploaded<03:00:29.200> we<03:00:29.319> can<03:00:29.600> return<03:00:29.920> some
03:00:30.110 --> 03:00:30.120 align:start position:0%
it has been uploaded we can return some
03:00:30.120 --> 03:00:32.790 align:start position:0%
it has been uploaded we can return some
kind<03:00:30.239> of<03:00:30.359> a<03:00:30.520> div<03:00:30.880> right<03:00:31.040> here<03:00:31.880> else<03:00:32.439> if<03:00:32.600> it
03:00:32.790 --> 03:00:32.800 align:start position:0%
kind of a div right here else if it
03:00:32.800 --> 03:00:36.190 align:start position:0%
kind of a div right here else if it
hasn't<03:00:33.560> we<03:00:33.680> can<03:00:34.000> return<03:00:34.279> something<03:00:34.800> else<03:00:35.800> so
03:00:36.190 --> 03:00:36.200 align:start position:0%
hasn't we can return something else so
03:00:36.200 --> 03:00:37.910 align:start position:0%
hasn't we can return something else so
let's<03:00:36.439> create<03:00:36.800> a<03:00:36.960> new
03:00:37.910 --> 03:00:37.920 align:start position:0%
let's create a new
03:00:37.920 --> 03:00:41.630 align:start position:0%
let's create a new
div<03:00:38.920> let's<03:00:39.080> say<03:00:39.319> test<03:00:39.680> two<03:00:40.680> and<03:00:40.960> here<03:00:41.399> let's
03:00:41.630 --> 03:00:41.640 align:start position:0%
div let's say test two and here let's
03:00:41.640 --> 03:00:45.070 align:start position:0%
div let's say test two and here let's
say<03:00:42.120> a<03:00:42.359> div<03:00:43.359> that's<03:00:43.560> go<03:00:43.760> going<03:00:43.880> to<03:00:44.000> say<03:00:44.680> test
03:00:45.070 --> 03:00:45.080 align:start position:0%
say a div that's go going to say test
03:00:45.080 --> 03:00:49.110 align:start position:0%
say a div that's go going to say test
one<03:00:46.080> we<03:00:46.200> can<03:00:46.359> delete<03:00:46.800> everything<03:00:47.359> else<03:00:48.359> so<03:00:48.640> now
03:00:49.110 --> 03:00:49.120 align:start position:0%
one we can delete everything else so now
03:00:49.120 --> 03:00:51.550 align:start position:0%
one we can delete everything else so now
you<03:00:49.239> can<03:00:49.399> see<03:00:49.640> test<03:00:49.920> two<03:00:50.479> meaning<03:00:51.040> we<03:00:51.239> don't
03:00:51.550 --> 03:00:51.560 align:start position:0%
you can see test two meaning we don't
03:00:51.560 --> 03:00:54.469 align:start position:0%
you can see test two meaning we don't
yet<03:00:51.880> have<03:00:52.080> a<03:00:52.279> file<03:00:52.560> URL<03:00:53.560> so<03:00:53.760> now<03:00:53.960> let's<03:00:54.160> create
03:00:54.469 --> 03:00:54.479 align:start position:0%
yet have a file URL so now let's create
03:00:54.479 --> 03:00:56.990 align:start position:0%
yet have a file URL so now let's create
this<03:00:54.760> nice<03:00:55.359> interface<03:00:56.239> from<03:00:56.439> which<03:00:56.640> it's<03:00:56.760> app
03:00:56.990 --> 03:00:57.000 align:start position:0%
this nice interface from which it's app
03:00:57.000 --> 03:00:59.030 align:start position:0%
this nice interface from which it's app
parent<03:00:57.399> that<03:00:57.560> we<03:00:57.640> can<03:00:57.880> actually<03:00:58.279> upload<03:00:58.680> the
03:00:59.030 --> 03:00:59.040 align:start position:0%
parent that we can actually upload the
03:00:59.040 --> 03:01:02.229 align:start position:0%
parent that we can actually upload the
files<03:01:00.040> to<03:01:00.239> do<03:01:00.399> it<03:01:00.960> we<03:01:01.080> can<03:01:01.279> give<03:01:01.479> this<03:01:01.680> div<03:01:01.960> a
03:01:02.229 --> 03:01:02.239 align:start position:0%
files to do it we can give this div a
03:01:02.239 --> 03:01:06.070 align:start position:0%
files to do it we can give this div a
class<03:01:02.640> name<03:01:03.560> equal<03:01:03.880> to
03:01:06.070 --> 03:01:06.080 align:start position:0%
class name equal to
03:01:06.080 --> 03:01:09.910 align:start position:0%
class name equal to
fileuploader<03:01:07.479> dashbox<03:01:08.479> and<03:01:08.600> we<03:01:08.720> can<03:01:08.880> save<03:01:09.120> it
03:01:09.910 --> 03:01:09.920 align:start position:0%
fileuploader dashbox and we can save it
03:01:09.920 --> 03:01:13.110 align:start position:0%
fileuploader dashbox and we can save it
within<03:01:10.239> it<03:01:10.680> we<03:01:10.800> can<03:01:10.960> create<03:01:11.239> an<03:01:11.920> image<03:01:12.920> that's
03:01:13.110 --> 03:01:13.120 align:start position:0%
within it we can create an image that's
03:01:13.120 --> 03:01:17.630 align:start position:0%
within it we can create an image that's
going<03:01:13.279> to<03:01:13.439> have<03:01:13.760> have<03:01:13.960> a<03:01:14.520> source<03:01:15.520> equal<03:01:15.840> to<03:01:16.840> SL
03:01:17.630 --> 03:01:17.640 align:start position:0%
going to have have a source equal to SL
03:01:17.640 --> 03:01:23.550 align:start position:0%
going to have have a source equal to SL
assets<03:01:18.640> SL<03:01:19.399> ions<03:01:20.399> SL<03:01:20.840> file-<03:01:21.880> upload.
03:01:23.550 --> 03:01:23.560 align:start position:0%
assets SL ions SL file- upload.
03:01:23.560 --> 03:01:26.790 align:start position:0%
assets SL ions SL file- upload.
SVG<03:01:24.560> that's<03:01:24.840> much<03:01:25.080> better<03:01:26.040> the<03:01:26.239> width<03:01:26.640> is
03:01:26.790 --> 03:01:26.800 align:start position:0%
SVG that's much better the width is
03:01:26.800 --> 03:01:29.950 align:start position:0%
SVG that's much better the width is
going<03:01:27.000> to<03:01:27.120> be<03:01:27.359> about<03:01:27.920> 96<03:01:28.920> and<03:01:29.080> the<03:01:29.319> height<03:01:29.800> is
03:01:29.950 --> 03:01:29.960 align:start position:0%
going to be about 96 and the height is
03:01:29.960 --> 03:01:31.550 align:start position:0%
going to be about 96 and the height is
going<03:01:30.120> to<03:01:30.279> be<03:01:30.479> about
03:01:31.550 --> 03:01:31.560 align:start position:0%
going to be about
03:01:31.560 --> 03:01:34.670 align:start position:0%
going to be about
77<03:01:32.560> finally<03:01:33.200> we<03:01:33.319> can<03:01:33.520> give<03:01:33.600> it<03:01:33.720> an<03:01:33.880> Al<03:01:34.239> tag
03:01:34.670 --> 03:01:34.680 align:start position:0%
77 finally we can give it an Al tag
03:01:34.680 --> 03:01:38.349 align:start position:0%
77 finally we can give it an Al tag
equal<03:01:35.000> to<03:01:35.279> file<03:01:36.239> upload<03:01:37.239> below<03:01:37.600> it<03:01:38.080> we<03:01:38.160> can
03:01:38.349 --> 03:01:38.359 align:start position:0%
equal to file upload below it we can
03:01:38.359 --> 03:01:39.990 align:start position:0%
equal to file upload below it we can
create<03:01:38.720> a<03:01:38.960> new
03:01:39.990 --> 03:01:40.000 align:start position:0%
create a new
03:01:40.000 --> 03:01:44.710 align:start position:0%
create a new
H3<03:01:41.000> that's<03:01:41.200> going<03:01:41.359> to<03:01:41.560> say<03:01:42.040> SVG<03:01:43.040> PNG
03:01:44.710 --> 03:01:44.720 align:start position:0%
H3 that's going to say SVG PNG
03:01:44.720 --> 03:01:47.710 align:start position:0%
H3 that's going to say SVG PNG
JPEG<03:01:45.720> and<03:01:46.000> we<03:01:46.120> can<03:01:46.279> give<03:01:46.359> it<03:01:46.520> a<03:01:46.720> class
03:01:47.710 --> 03:01:47.720 align:start position:0%
JPEG and we can give it a class
03:01:47.720 --> 03:01:51.269 align:start position:0%
JPEG and we can give it a class
name<03:01:48.720> that's<03:01:48.920> going<03:01:49.080> to<03:01:49.239> be<03:01:49.439> equal<03:01:49.760> to<03:01:50.439> text-
03:01:51.269 --> 03:01:51.279 align:start position:0%
name that's going to be equal to text-
03:01:51.279 --> 03:01:52.229 align:start position:0%
name that's going to be equal to text-
light
03:01:52.229 --> 03:01:52.239 align:start position:0%
light
03:01:52.239 --> 03:01:56.469 align:start position:0%
light
D4<03:01:53.239> small<03:01:53.920> regular<03:01:54.920> and<03:01:55.120> margin<03:01:55.600> bottom<03:01:55.920> of
03:01:56.469 --> 03:01:56.479 align:start position:0%
D4 small regular and margin bottom of
03:01:56.479 --> 03:01:59.389 align:start position:0%
D4 small regular and margin bottom of
six<03:01:57.479> there<03:01:57.640> we<03:01:57.800> go<03:01:58.319> now<03:01:58.640> instead<03:01:58.960> of<03:01:59.120> making
03:01:59.389 --> 03:01:59.399 align:start position:0%
six there we go now instead of making
03:01:59.399 --> 03:02:02.070 align:start position:0%
six there we go now instead of making
this<03:01:59.600> an<03:01:59.720> H3<03:02:00.600> let's<03:02:00.840> make<03:02:01.040> this<03:02:01.160> a<03:02:01.359> P<03:02:01.640> tag
03:02:02.070 --> 03:02:02.080 align:start position:0%
this an H3 let's make this a P tag
03:02:02.080 --> 03:02:04.830 align:start position:0%
this an H3 let's make this a P tag
because<03:02:02.319> it's<03:02:02.479> small<03:02:03.359> and<03:02:03.520> then<03:02:03.880> Above<03:02:04.359> This<03:02:04.560> P
03:02:04.830 --> 03:02:04.840 align:start position:0%
because it's small and then Above This P
03:02:04.840 --> 03:02:06.750 align:start position:0%
because it's small and then Above This P
tag<03:02:05.239> let's<03:02:05.479> create<03:02:05.840> an
03:02:06.750 --> 03:02:06.760 align:start position:0%
tag let's create an
03:02:06.760 --> 03:02:10.110 align:start position:0%
tag let's create an
H3<03:02:07.760> this<03:02:07.960> H3<03:02:08.479> is<03:02:08.600> going<03:02:08.760> to<03:02:08.960> say
03:02:10.110 --> 03:02:10.120 align:start position:0%
H3 this H3 is going to say
03:02:10.120 --> 03:02:15.389 align:start position:0%
H3 this H3 is going to say
drag<03:02:11.160> photo<03:02:12.279> here<03:02:13.279> we<03:02:13.399> can<03:02:13.680> give<03:02:13.800> it<03:02:13.880> a<03:02:14.080> class
03:02:15.389 --> 03:02:15.399 align:start position:0%
drag photo here we can give it a class
03:02:15.399 --> 03:02:19.590 align:start position:0%
drag photo here we can give it a class
name<03:02:16.399> equal<03:02:16.720> to<03:02:17.000> base-<03:02:18.080> medium<03:02:19.080> as<03:02:19.200> well<03:02:19.359> as
03:02:19.590 --> 03:02:19.600 align:start position:0%
name equal to base- medium as well as
03:02:19.600 --> 03:02:20.990 align:start position:0%
name equal to base- medium as well as
text-
03:02:20.990 --> 03:02:21.000 align:start position:0%
text-
03:02:21.000 --> 03:02:24.389 align:start position:0%
text-
light-2<03:02:22.000> margin<03:02:22.479> bottom<03:02:22.840> of<03:02:23.040> two<03:02:23.760> and<03:02:23.920> margin
03:02:24.389 --> 03:02:24.399 align:start position:0%
light-2 margin bottom of two and margin
03:02:24.399 --> 03:02:27.870 align:start position:0%
light-2 margin bottom of two and margin
top<03:02:24.680> of<03:02:25.200> six<03:02:26.200> there<03:02:26.359> we<03:02:26.600> go<03:02:27.160> that's<03:02:27.359> more<03:02:27.640> like
03:02:27.870 --> 03:02:27.880 align:start position:0%
top of six there we go that's more like
03:02:27.880 --> 03:02:30.790 align:start position:0%
top of six there we go that's more like
it<03:02:28.720> and<03:02:28.880> we<03:02:28.960> can<03:02:29.160> also<03:02:29.439> add<03:02:29.680> a<03:02:29.880> button<03:02:30.399> in<03:02:30.560> case
03:02:30.790 --> 03:02:30.800 align:start position:0%
it and we can also add a button in case
03:02:30.800 --> 03:02:33.349 align:start position:0%
it and we can also add a button in case
people<03:02:31.040> want<03:02:31.160> to<03:02:31.399> click<03:02:31.800> and<03:02:31.960> not<03:02:32.239> drag<03:02:33.040> so<03:02:33.239> we
03:02:33.349 --> 03:02:33.359 align:start position:0%
people want to click and not drag so we
03:02:33.359 --> 03:02:36.389 align:start position:0%
people want to click and not drag so we
can<03:02:33.560> add<03:02:33.760> a<03:02:34.399> button<03:02:35.399> that's<03:02:35.600> going<03:02:35.760> to<03:02:35.920> say
03:02:36.389 --> 03:02:36.399 align:start position:0%
can add a button that's going to say
03:02:36.399 --> 03:02:38.469 align:start position:0%
can add a button that's going to say
select<03:02:37.399> from
03:02:38.469 --> 03:02:38.479 align:start position:0%
select from
03:02:38.479 --> 03:02:41.910 align:start position:0%
select from
computer<03:02:39.479> we<03:02:39.600> can<03:02:39.880> then<03:02:40.359> import<03:02:40.800> this<03:02:41.040> from<03:02:41.319> UI
03:02:41.910 --> 03:02:41.920 align:start position:0%
computer we can then import this from UI
03:02:41.920 --> 03:02:46.429 align:start position:0%
computer we can then import this from UI
button<03:02:42.920> and<03:02:43.200> give<03:02:43.319> it<03:02:43.399> a<03:02:43.760> class<03:02:44.080> name<03:02:45.080> equal<03:02:45.439> to
03:02:46.429 --> 03:02:46.439 align:start position:0%
button and give it a class name equal to
03:02:46.439 --> 03:02:48.070 align:start position:0%
button and give it a class name equal to
Shad
03:02:48.070 --> 03:02:48.080 align:start position:0%
Shad
03:02:48.080 --> 03:02:50.309 align:start position:0%
Shad
button<03:02:49.080> undor
03:02:50.309 --> 03:02:50.319 align:start position:0%
button undor
03:02:50.319 --> 03:02:54.030 align:start position:0%
button undor
dark4<03:02:51.319> and<03:02:51.640> save<03:02:51.920> it<03:02:52.920> there<03:02:53.080> we<03:02:53.279> go<03:02:53.760> this<03:02:53.880> is
03:02:54.030 --> 03:02:54.040 align:start position:0%
dark4 and save it there we go this is
03:02:54.040 --> 03:02:56.349 align:start position:0%
dark4 and save it there we go this is
more<03:02:54.319> like<03:02:54.520> it<03:02:55.359> now<03:02:55.560> the<03:02:55.760> last<03:02:55.960> thing<03:02:56.120> we<03:02:56.239> have
03:02:56.349 --> 03:02:56.359 align:start position:0%
more like it now the last thing we have
03:02:56.359 --> 03:02:59.229 align:start position:0%
more like it now the last thing we have
to<03:02:56.520> do<03:02:57.160> is<03:02:57.439> implement<03:02:58.160> the
03:02:59.229 --> 03:02:59.239 align:start position:0%
to do is implement the
03:02:59.239 --> 03:03:01.110 align:start position:0%
to do is implement the
functionality<03:03:00.239> so<03:03:00.479> how<03:03:00.600> are<03:03:00.720> we<03:03:00.840> going<03:03:00.920> to
03:03:01.110 --> 03:03:01.120 align:start position:0%
functionality so how are we going to
03:03:01.120 --> 03:03:04.110 align:start position:0%
functionality so how are we going to
figure<03:03:01.399> out<03:03:02.040> when<03:03:02.399> something<03:03:02.720> gets<03:03:03.120> uploaded
03:03:04.110 --> 03:03:04.120 align:start position:0%
figure out when something gets uploaded
03:03:04.120 --> 03:03:06.389 align:start position:0%
figure out when something gets uploaded
well<03:03:04.319> in<03:03:04.560> this<03:03:04.760> case<03:03:05.279> we<03:03:05.439> have<03:03:05.640> the<03:03:05.840> get<03:03:06.040> root
03:03:06.389 --> 03:03:06.399 align:start position:0%
well in this case we have the get root
03:03:06.399 --> 03:03:08.990 align:start position:0%
well in this case we have the get root
props<03:03:06.920> and<03:03:07.080> get<03:03:07.279> input<03:03:07.680> props<03:03:08.520> we<03:03:08.680> won't<03:03:08.880> be
03:03:08.990 --> 03:03:09.000 align:start position:0%
props and get input props we won't be
03:03:09.000 --> 03:03:12.309 align:start position:0%
props and get input props we won't be
needing<03:03:09.359> is<03:03:09.640> drag<03:03:10.080> active<03:03:11.080> from<03:03:11.520> use<03:03:11.920> Drop
03:03:12.309 --> 03:03:12.319 align:start position:0%
needing is drag active from use Drop
03:03:12.319 --> 03:03:14.070 align:start position:0%
needing is drag active from use Drop
Zone<03:03:12.920> on<03:03:13.200> drop
03:03:14.070 --> 03:03:14.080 align:start position:0%
Zone on drop
03:03:14.080 --> 03:03:16.790 align:start position:0%
Zone on drop
to<03:03:15.080> the<03:03:15.239> second<03:03:15.560> parameter<03:03:16.080> to<03:03:16.279> this<03:03:16.439> used
03:03:16.790 --> 03:03:16.800 align:start position:0%
to the second parameter to this used
03:03:16.800 --> 03:03:20.070 align:start position:0%
to the second parameter to this used
drop<03:03:17.120> zone<03:03:18.040> is<03:03:18.239> going<03:03:18.399> to<03:03:18.640> be<03:03:19.560> what<03:03:19.720> do<03:03:19.880> we
03:03:20.070 --> 03:03:20.080 align:start position:0%
drop zone is going to be what do we
03:03:20.080 --> 03:03:24.750 align:start position:0%
drop zone is going to be what do we
accept<03:03:20.800> so<03:03:20.960> we<03:03:21.080> can<03:03:21.200> say<03:03:21.760> accept<03:03:22.760> an<03:03:23.120> object<03:03:24.120> of
03:03:24.750 --> 03:03:24.760 align:start position:0%
accept so we can say accept an object of
03:03:24.760 --> 03:03:27.510 align:start position:0%
accept so we can say accept an object of
image<03:03:25.760> everything<03:03:26.439> and<03:03:26.560> we<03:03:26.680> can<03:03:26.880> Define<03:03:27.239> that
03:03:27.510 --> 03:03:27.520 align:start position:0%
image everything and we can Define that
03:03:27.520 --> 03:03:30.229 align:start position:0%
image everything and we can Define that
right<03:03:27.960> here<03:03:28.960> that's<03:03:29.160> going<03:03:29.319> to<03:03:29.520> be<03:03:29.600> an<03:03:29.760> array
03:03:30.229 --> 03:03:30.239 align:start position:0%
right here that's going to be an array
03:03:30.239 --> 03:03:31.670 align:start position:0%
right here that's going to be an array
of
03:03:31.670 --> 03:03:31.680 align:start position:0%
of
03:03:31.680 --> 03:03:35.710 align:start position:0%
of
PNG<03:03:32.680> we<03:03:32.800> can<03:03:32.960> also<03:03:33.239> do<03:03:33.520> a<03:03:34.279> JPEG<03:03:35.279> and<03:03:35.439> we<03:03:35.520> can
03:03:35.710 --> 03:03:35.720 align:start position:0%
PNG we can also do a JPEG and we can
03:03:35.720 --> 03:03:40.790 align:start position:0%
PNG we can also do a JPEG and we can
also<03:03:36.040> do<03:03:36.479> a<03:03:36.960> DOT<03:03:37.720> jpeg<03:03:38.600> like<03:03:38.920> this<03:03:39.920> also<03:03:40.319> maybe
03:03:40.790 --> 03:03:40.800 align:start position:0%
also do a DOT jpeg like this also maybe
03:03:40.800 --> 03:03:44.950 align:start position:0%
also do a DOT jpeg like this also maybe
an<03:03:41.000> SVG<03:03:41.800> who<03:03:41.960> knows<03:03:42.840> why<03:03:43.000> not<03:03:43.840> there<03:03:44.000> we<03:03:44.160> go<03:03:44.760> so
03:03:44.950 --> 03:03:44.960 align:start position:0%
an SVG who knows why not there we go so
03:03:44.960 --> 03:03:47.309 align:start position:0%
an SVG who knows why not there we go so
now<03:03:45.120> we're<03:03:45.319> defining<03:03:45.920> what<03:03:46.120> can<03:03:46.279> we<03:03:46.479> use<03:03:47.160> but
03:03:47.309 --> 03:03:47.319 align:start position:0%
now we're defining what can we use but
03:03:47.319 --> 03:03:50.190 align:start position:0%
now we're defining what can we use but
now<03:03:47.560> let's<03:03:47.800> define<03:03:48.080> a<03:03:48.279> function<03:03:48.720> on<03:03:49.080> drop<03:03:49.920> what
03:03:50.190 --> 03:03:50.200 align:start position:0%
now let's define a function on drop what
03:03:50.200 --> 03:03:53.630 align:start position:0%
now let's define a function on drop what
happens<03:03:50.960> once<03:03:51.200> we<03:03:51.560> actually<03:03:51.920> drop<03:03:52.279> some<03:03:52.640> files
03:03:53.630 --> 03:03:53.640 align:start position:0%
happens once we actually drop some files
03:03:53.640 --> 03:03:55.870 align:start position:0%
happens once we actually drop some files
well<03:03:53.920> let's<03:03:54.160> also<03:03:54.399> create<03:03:54.760> another<03:03:55.120> use<03:03:55.479> state
03:03:55.870 --> 03:03:55.880 align:start position:0%
well let's also create another use state
03:03:55.880 --> 03:03:58.389 align:start position:0%
well let's also create another use state
right<03:03:56.200> here<03:03:57.200> and<03:03:57.359> this<03:03:57.520> use<03:03:57.840> state<03:03:58.120> is<03:03:58.239> going
03:03:58.389 --> 03:03:58.399 align:start position:0%
right here and this use state is going
03:03:58.399 --> 03:04:01.670 align:start position:0%
right here and this use state is going
to<03:03:58.520> be<03:03:58.640> for<03:03:58.840> the<03:03:59.120> file<03:03:59.560> itself<03:04:00.439> so<03:04:00.760> file<03:04:01.520> and
03:04:01.670 --> 03:04:01.680 align:start position:0%
to be for the file itself so file and
03:04:01.680 --> 03:04:04.389 align:start position:0%
to be for the file itself so file and
then<03:04:01.880> set<03:04:02.319> file<03:04:03.040> at<03:04:03.160> the<03:04:03.359> start<03:04:03.800> equal<03:04:04.120> to<03:04:04.279> an
03:04:04.389 --> 03:04:04.399 align:start position:0%
then set file at the start equal to an
03:04:04.399 --> 03:04:07.429 align:start position:0%
then set file at the start equal to an
empty<03:04:04.720> array<03:04:05.279> because<03:04:05.520> we<03:04:05.640> can<03:04:05.880> pass<03:04:06.160> multiple
03:04:07.429 --> 03:04:07.439 align:start position:0%
empty array because we can pass multiple
03:04:07.439 --> 03:04:10.429 align:start position:0%
empty array because we can pass multiple
files<03:04:08.439> and<03:04:08.600> the<03:04:08.720> file<03:04:08.960> URL<03:04:09.640> is<03:04:09.760> of<03:04:09.920> course<03:04:10.160> only
03:04:10.429 --> 03:04:10.439 align:start position:0%
files and the file URL is of course only
03:04:10.439 --> 03:04:13.990 align:start position:0%
files and the file URL is of course only
the<03:04:10.600> URL<03:04:11.359> of<03:04:11.479> the<03:04:11.640> file<03:04:11.920> we<03:04:12.399> pass<03:04:13.439> so<03:04:13.760> what<03:04:13.880> do
03:04:13.990 --> 03:04:14.000 align:start position:0%
the URL of the file we pass so what do
03:04:14.000 --> 03:04:17.550 align:start position:0%
the URL of the file we pass so what do
we<03:04:14.160> do<03:04:14.359> once<03:04:14.560> we<03:04:14.720> drop<03:04:15.080> it<03:04:15.560> we<03:04:15.760> set<03:04:16.200> file<03:04:17.200> to<03:04:17.359> be
03:04:17.550 --> 03:04:17.560 align:start position:0%
we do once we drop it we set file to be
03:04:17.560 --> 03:04:21.590 align:start position:0%
we do once we drop it we set file to be
equal<03:04:17.840> to<03:04:18.560> accepted<03:04:19.560> files<03:04:20.479> and<03:04:20.720> then<03:04:21.200> as
03:04:21.590 --> 03:04:21.600 align:start position:0%
equal to accepted files and then as
03:04:21.600 --> 03:04:23.670 align:start position:0%
equal to accepted files and then as
props<03:04:22.120> to<03:04:22.359> this<03:04:22.560> component<03:04:23.200> we're<03:04:23.359> going<03:04:23.439> to
03:04:23.670 --> 03:04:23.680 align:start position:0%
props to this component we're going to
03:04:23.680 --> 03:04:26.269 align:start position:0%
props to this component we're going to
pass<03:04:23.960> two<03:04:24.239> additional<03:04:24.720> things<03:04:25.560> so<03:04:25.760> going<03:04:26.120> back
03:04:26.269 --> 03:04:26.279 align:start position:0%
pass two additional things so going back
03:04:26.279 --> 03:04:29.070 align:start position:0%
pass two additional things so going back
to<03:04:26.439> our<03:04:26.640> post<03:04:27.279> form<03:04:28.279> Finding<03:04:28.680> where<03:04:28.840> we<03:04:28.960> have
03:04:29.070 --> 03:04:29.080 align:start position:0%
to our post form Finding where we have
03:04:29.080 --> 03:04:32.150 align:start position:0%
to our post form Finding where we have
the<03:04:29.200> file<03:04:29.520> uploader<03:04:30.479> we<03:04:30.560> can<03:04:30.840> pass<03:04:31.120> two<03:04:31.399> things
03:04:32.150 --> 03:04:32.160 align:start position:0%
the file uploader we can pass two things
03:04:32.160 --> 03:04:34.229 align:start position:0%
the file uploader we can pass two things
we<03:04:32.279> can<03:04:32.479> pass<03:04:32.720> the<03:04:32.840> field
03:04:34.229 --> 03:04:34.239 align:start position:0%
we can pass the field
03:04:34.239 --> 03:04:38.590 align:start position:0%
we can pass the field
change<03:04:35.239> and<03:04:35.359> we<03:04:35.439> can<03:04:35.640> also<03:04:36.000> pass<03:04:36.840> the<03:04:37.000> media
03:04:38.590 --> 03:04:38.600 align:start position:0%
change and we can also pass the media
03:04:38.600 --> 03:04:41.550 align:start position:0%
change and we can also pass the media
URL<03:04:39.600> the<03:04:39.720> field<03:04:40.080> change<03:04:40.760> is<03:04:40.920> coming<03:04:41.359> right
03:04:41.550 --> 03:04:41.560 align:start position:0%
URL the field change is coming right
03:04:41.560 --> 03:04:43.990 align:start position:0%
URL the field change is coming right
here<03:04:41.720> from<03:04:41.920> the<03:04:42.080> field<03:04:42.720> of<03:04:42.880> this<03:04:43.040> form<03:04:43.520> field
03:04:43.990 --> 03:04:44.000 align:start position:0%
here from the field of this form field
03:04:44.000 --> 03:04:46.990 align:start position:0%
here from the field of this form field
so<03:04:44.160> that's<03:04:44.319> going<03:04:44.399> to<03:04:44.520> be<03:04:44.760> field.on
03:04:46.990 --> 03:04:47.000 align:start position:0%
so that's going to be field.on
03:04:47.000 --> 03:04:50.750 align:start position:0%
so that's going to be field.on
change<03:04:48.000> but<03:04:48.359> the<03:04:48.520> media<03:04:48.960> URL<03:04:49.960> how<03:04:50.120> do<03:04:50.239> we<03:04:50.399> know
03:04:50.750 --> 03:04:50.760 align:start position:0%
change but the media URL how do we know
03:04:50.760 --> 03:04:53.710 align:start position:0%
change but the media URL how do we know
what<03:04:50.880> is<03:04:51.000> the<03:04:51.120> URL<03:04:51.600> of<03:04:51.760> this<03:04:52.279> media<03:04:53.279> well
03:04:53.710 --> 03:04:53.720 align:start position:0%
what is the URL of this media well
03:04:53.720 --> 03:04:55.790 align:start position:0%
what is the URL of this media well
that's<03:04:53.920> going<03:04:54.040> to<03:04:54.160> be<03:04:54.279> coming<03:04:54.600> through<03:04:54.920> props
03:04:55.790 --> 03:04:55.800 align:start position:0%
that's going to be coming through props
03:04:55.800 --> 03:04:59.070 align:start position:0%
that's going to be coming through props
so<03:04:56.160> right<03:04:56.399> here<03:04:57.120> we<03:04:57.239> can<03:04:57.439> say<03:04:57.960> the<03:04:58.160> post<03:04:58.479> form
03:04:59.070 --> 03:04:59.080 align:start position:0%
so right here we can say the post form
03:04:59.080 --> 03:05:02.429 align:start position:0%
so right here we can say the post form
is<03:04:59.319> going<03:04:59.520> to<03:04:59.760> accept<03:05:00.760> a<03:05:01.040> post<03:05:01.880> but<03:05:02.080> this<03:05:02.200> is
03:05:02.429 --> 03:05:02.439 align:start position:0%
is going to accept a post but this is
03:05:02.439 --> 03:05:04.750 align:start position:0%
is going to accept a post but this is
only<03:05:02.840> if<03:05:02.960> we're<03:05:03.239> updating<03:05:03.760> it<03:05:04.120> right<03:05:04.359> if<03:05:04.439> we're
03:05:04.750 --> 03:05:04.760 align:start position:0%
only if we're updating it right if we're
03:05:04.760 --> 03:05:06.830 align:start position:0%
only if we're updating it right if we're
updating<03:05:05.239> the<03:05:05.439> post<03:05:06.040> then<03:05:06.279> we<03:05:06.399> need<03:05:06.560> to<03:05:06.680> have
03:05:06.830 --> 03:05:06.840 align:start position:0%
updating the post then we need to have
03:05:06.840 --> 03:05:09.670 align:start position:0%
updating the post then we need to have
an<03:05:07.000> existing<03:05:07.560> post<03:05:08.279> otherwise<03:05:09.040> we<03:05:09.200> don't<03:05:09.479> have
03:05:09.670 --> 03:05:09.680 align:start position:0%
an existing post otherwise we don't have
03:05:09.680 --> 03:05:12.190 align:start position:0%
an existing post otherwise we don't have
anything<03:05:10.600> so<03:05:10.760> in<03:05:10.960> this<03:05:11.120> case<03:05:11.359> if<03:05:11.520> we<03:05:11.640> do<03:05:11.880> have<03:05:12.000> a
03:05:12.190 --> 03:05:12.200 align:start position:0%
anything so in this case if we do have a
03:05:12.200 --> 03:05:15.990 align:start position:0%
anything so in this case if we do have a
post<03:05:13.040> then<03:05:13.479> we<03:05:13.600> can<03:05:13.880> pass<03:05:14.880> post<03:05:15.600> question
03:05:15.990 --> 03:05:16.000 align:start position:0%
post then we can pass post question
03:05:16.000 --> 03:05:17.870 align:start position:0%
post then we can pass post question
mark.<03:05:16.640> image
03:05:17.870 --> 03:05:17.880 align:start position:0%
mark. image
03:05:17.880 --> 03:05:20.670 align:start position:0%
mark. image
URL<03:05:18.880> and<03:05:19.080> now<03:05:19.279> we<03:05:19.399> can<03:05:19.600> dive<03:05:19.960> into<03:05:20.279> the<03:05:20.399> file
03:05:20.670 --> 03:05:20.680 align:start position:0%
URL and now we can dive into the file
03:05:20.680 --> 03:05:23.950 align:start position:0%
URL and now we can dive into the file
uploader<03:05:21.680> and<03:05:22.000> accept<03:05:22.399> those<03:05:22.640> props<03:05:23.600> so<03:05:23.800> we're
03:05:23.950 --> 03:05:23.960 align:start position:0%
uploader and accept those props so we're
03:05:23.960 --> 03:05:27.510 align:start position:0%
uploader and accept those props so we're
getting<03:05:24.239> the<03:05:24.359> field<03:05:25.120> change<03:05:26.120> as<03:05:26.359> well<03:05:27.160> as
03:05:27.510 --> 03:05:27.520 align:start position:0%
getting the field change as well as
03:05:27.520 --> 03:05:30.469 align:start position:0%
getting the field change as well as
media<03:05:28.239> URL<03:05:29.120> and<03:05:29.319> for<03:05:29.520> now<03:05:29.760> we<03:05:29.840> can<03:05:30.000> put<03:05:30.239> these
03:05:30.469 --> 03:05:30.479 align:start position:0%
media URL and for now we can put these
03:05:30.479 --> 03:05:33.510 align:start position:0%
media URL and for now we can put these
as<03:05:30.600> a<03:05:30.840> type<03:05:31.160> any<03:05:32.160> and<03:05:32.479> alongside<03:05:33.000> setting<03:05:33.319> the
03:05:33.510 --> 03:05:33.520 align:start position:0%
as a type any and alongside setting the
03:05:33.520 --> 03:05:36.710 align:start position:0%
as a type any and alongside setting the
file<03:05:34.160> we<03:05:34.239> can<03:05:34.479> also<03:05:34.840> set<03:05:35.160> field<03:05:35.640> change<03:05:36.439> like
03:05:36.710 --> 03:05:36.720 align:start position:0%
file we can also set field change like
03:05:36.720 --> 03:05:39.990 align:start position:0%
file we can also set field change like
this<03:05:37.399> to<03:05:37.760> accepted<03:05:38.439> files<03:05:39.439> and<03:05:39.560> then<03:05:39.720> we<03:05:39.840> can
03:05:39.990 --> 03:05:40.000 align:start position:0%
this to accepted files and then we can
03:05:40.000 --> 03:05:45.110 align:start position:0%
this to accepted files and then we can
set<03:05:40.359> file<03:05:40.800> URL<03:05:41.800> to<03:05:42.000> be<03:05:42.200> equal<03:05:42.479> to
03:05:45.110 --> 03:05:45.120 align:start position:0%
set file URL to be equal to
03:05:45.120 --> 03:05:50.429 align:start position:0%
set file URL to be equal to
URL<03:05:46.120> dot<03:05:47.120> create<03:05:48.120> object<03:05:48.880> URL<03:05:49.880> and<03:05:50.040> then<03:05:50.160> we
03:05:50.429 --> 03:05:50.439 align:start position:0%
URL dot create object URL and then we
03:05:50.439 --> 03:05:53.870 align:start position:0%
URL dot create object URL and then we
pass<03:05:50.640> in<03:05:50.840> the<03:05:51.040> accepted<03:05:51.840> files<03:05:52.840> zero<03:05:53.479> so<03:05:53.720> the
03:05:53.870 --> 03:05:53.880 align:start position:0%
pass in the accepted files zero so the
03:05:53.880 --> 03:05:56.389 align:start position:0%
pass in the accepted files zero so the
first<03:05:54.200> file<03:05:54.439> that<03:05:54.600> we<03:05:54.800> have<03:05:55.080> there<03:05:56.000> and<03:05:56.200> that's
03:05:56.389 --> 03:05:56.399 align:start position:0%
first file that we have there and that's
03:05:56.399 --> 03:05:58.990 align:start position:0%
first file that we have there and that's
going<03:05:56.520> to<03:05:56.680> give<03:05:56.840> us<03:05:56.960> the<03:05:57.279> URL<03:05:58.279> as<03:05:58.439> the<03:05:58.560> Callback
03:05:58.990 --> 03:05:59.000 align:start position:0%
going to give us the URL as the Callback
03:05:59.000 --> 03:06:02.030 align:start position:0%
going to give us the URL as the Callback
we<03:05:59.080> want<03:05:59.239> to<03:05:59.359> add<03:05:59.560> the<03:05:59.720> file<03:06:00.120> right<03:06:00.720> here<03:06:01.720> here
03:06:02.030 --> 03:06:02.040 align:start position:0%
we want to add the file right here here
03:06:02.040 --> 03:06:04.510 align:start position:0%
we want to add the file right here here
we<03:06:02.160> need<03:06:02.319> to<03:06:02.520> define<03:06:02.880> the<03:06:03.120> type<03:06:03.840> and<03:06:04.040> this<03:06:04.239> type
03:06:04.510 --> 03:06:04.520 align:start position:0%
we need to define the type and this type
03:06:04.520 --> 03:06:06.790 align:start position:0%
we need to define the type and this type
has<03:06:04.680> already<03:06:04.920> been<03:06:05.160> defined<03:06:05.720> by<03:06:05.920> react<03:06:06.399> drop
03:06:06.790 --> 03:06:06.800 align:start position:0%
has already been defined by react drop
03:06:06.800 --> 03:06:08.830 align:start position:0%
has already been defined by react drop
zone<03:06:07.359> so<03:06:07.479> we<03:06:07.600> just<03:06:07.720> need<03:06:07.880> to<03:06:08.040> import<03:06:08.359> it<03:06:08.479> at<03:06:08.600> the
03:06:08.830 --> 03:06:08.840 align:start position:0%
zone so we just need to import it at the
03:06:08.840 --> 03:06:14.190 align:start position:0%
zone so we just need to import it at the
top<03:06:09.479> by<03:06:09.640> saying<03:06:10.800> file<03:06:11.800> with<03:06:12.800> path
03:06:14.190 --> 03:06:14.200 align:start position:0%
top by saying file with path
03:06:14.200 --> 03:06:16.990 align:start position:0%
top by saying file with path
and<03:06:14.359> now<03:06:14.560> we<03:06:14.680> can<03:06:14.840> say<03:06:15.200> this<03:06:15.359> is<03:06:15.479> of<03:06:15.680> a<03:06:16.000> type
03:06:16.990 --> 03:06:17.000 align:start position:0%
and now we can say this is of a type
03:06:17.000 --> 03:06:20.950 align:start position:0%
and now we can say this is of a type
right<03:06:17.880> here<03:06:18.880> file<03:06:19.600> with
03:06:20.950 --> 03:06:20.960 align:start position:0%
right here file with
03:06:20.960 --> 03:06:24.750 align:start position:0%
right here file with
path<03:06:21.960> we<03:06:22.080> can<03:06:22.239> also<03:06:22.479> Define<03:06:23.000> these<03:06:23.439> two<03:06:23.840> props
03:06:24.750 --> 03:06:24.760 align:start position:0%
path we can also Define these two props
03:06:24.760 --> 03:06:26.710 align:start position:0%
path we can also Define these two props
by<03:06:24.920> saying<03:06:25.439> file
03:06:26.710 --> 03:06:26.720 align:start position:0%
by saying file
03:06:26.720 --> 03:06:30.750 align:start position:0%
by saying file
uploader<03:06:27.760> props<03:06:28.760> and<03:06:28.880> then<03:06:29.000> we<03:06:29.120> can<03:06:29.760> Define
03:06:30.750 --> 03:06:30.760 align:start position:0%
uploader props and then we can Define
03:06:30.760 --> 03:06:33.150 align:start position:0%
uploader props and then we can Define
this<03:06:31.000> interface<03:06:31.439> or<03:06:31.640> the<03:06:31.880> type<03:06:32.239> right<03:06:32.479> above
03:06:33.150 --> 03:06:33.160 align:start position:0%
this interface or the type right above
03:06:33.160 --> 03:06:37.070 align:start position:0%
this interface or the type right above
by<03:06:33.319> saying<03:06:33.680> type<03:06:34.520> file<03:06:35.040> uploader<03:06:36.040> props<03:06:36.880> is
03:06:37.070 --> 03:06:37.080 align:start position:0%
by saying type file uploader props is
03:06:37.080 --> 03:06:38.269 align:start position:0%
by saying type file uploader props is
equal
03:06:38.269 --> 03:06:38.279 align:start position:0%
equal
03:06:38.279 --> 03:06:41.910 align:start position:0%
equal
to<03:06:39.279> we<03:06:39.479> first<03:06:39.760> have<03:06:39.920> the<03:06:40.040> field
03:06:41.910 --> 03:06:41.920 align:start position:0%
to we first have the field
03:06:41.920 --> 03:06:44.349 align:start position:0%
to we first have the field
change<03:06:42.920> which<03:06:43.279> is<03:06:43.439> a
03:06:44.349 --> 03:06:44.359 align:start position:0%
change which is a
03:06:44.359 --> 03:06:47.950 align:start position:0%
change which is a
function<03:06:45.359> that<03:06:45.720> accepts<03:06:46.560> files<03:06:47.520> which<03:06:47.680> is<03:06:47.800> of
03:06:47.950 --> 03:06:47.960 align:start position:0%
function that accepts files which is of
03:06:47.960 --> 03:06:52.469 align:start position:0%
function that accepts files which is of
a<03:06:48.439> type<03:06:49.439> an<03:06:49.640> array<03:06:50.080> of<03:06:50.680> files<03:06:51.680> and<03:06:51.920> it<03:06:52.040> doesn't
03:06:52.469 --> 03:06:52.479 align:start position:0%
a type an array of files and it doesn't
03:06:52.479 --> 03:06:55.349 align:start position:0%
a type an array of files and it doesn't
return<03:06:52.800> anything<03:06:53.560> so<03:06:53.960> void<03:06:54.960> and<03:06:55.080> then<03:06:55.239> the
03:06:55.349 --> 03:06:55.359 align:start position:0%
return anything so void and then the
03:06:55.359 --> 03:06:59.309 align:start position:0%
return anything so void and then the
media<03:06:55.800> URL<03:06:56.760> which<03:06:56.880> is<03:06:57.000> going<03:06:57.160> to<03:06:57.279> be<03:06:57.399> of<03:06:57.560> a<03:06:57.760> type
03:06:59.309 --> 03:06:59.319 align:start position:0%
media URL which is going to be of a type
03:06:59.319 --> 03:07:02.229 align:start position:0%
media URL which is going to be of a type
string<03:07:00.319> great<03:07:00.920> so<03:07:01.160> now<03:07:01.359> it's<03:07:01.600> complaining<03:07:02.080> a
03:07:02.229 --> 03:07:02.239 align:start position:0%
string great so now it's complaining a
03:07:02.239 --> 03:07:04.870 align:start position:0%
string great so now it's complaining a
bit<03:07:02.520> about<03:07:02.840> these<03:07:03.080> accepted<03:07:03.600> files<03:07:04.600> that's
03:07:04.870 --> 03:07:04.880 align:start position:0%
bit about these accepted files that's
03:07:04.880 --> 03:07:07.469 align:start position:0%
bit about these accepted files that's
because<03:07:05.560> here<03:07:05.800> we<03:07:05.920> can<03:07:06.120> Define<03:07:06.680> what<03:07:06.800> a<03:07:07.000> file
03:07:07.469 --> 03:07:07.479 align:start position:0%
because here we can Define what a file
03:07:07.479 --> 03:07:11.630 align:start position:0%
because here we can Define what a file
is<03:07:08.319> a<03:07:08.600> file<03:07:09.120> is<03:07:09.239> an<03:07:09.439> array<03:07:10.000> of<03:07:10.279> files<03:07:11.200> so<03:07:11.359> we<03:07:11.479> can
03:07:11.630 --> 03:07:11.640 align:start position:0%
is a file is an array of files so we can
03:07:11.640 --> 03:07:13.710 align:start position:0%
is a file is an array of files so we can
Define<03:07:12.000> it<03:07:12.439> like<03:07:12.640> so
03:07:13.710 --> 03:07:13.720 align:start position:0%
Define it like so
03:07:13.720 --> 03:07:15.550 align:start position:0%
Define it like so
and<03:07:13.920> we<03:07:14.000> can<03:07:14.160> put<03:07:14.279> it<03:07:14.399> in<03:07:14.479> a<03:07:14.640> new<03:07:14.840> line<03:07:15.239> so<03:07:15.439> it's
03:07:15.550 --> 03:07:15.560 align:start position:0%
and we can put it in a new line so it's
03:07:15.560 --> 03:07:17.990 align:start position:0%
and we can put it in a new line so it's
easier<03:07:15.920> to<03:07:16.040> see<03:07:16.279> what's<03:07:16.600> happening<03:07:17.600> there<03:07:17.800> we
03:07:17.990 --> 03:07:18.000 align:start position:0%
easier to see what's happening there we
03:07:18.000 --> 03:07:20.750 align:start position:0%
easier to see what's happening there we
go<03:07:18.680> we<03:07:18.880> have<03:07:19.080> the<03:07:19.239> used<03:07:19.560> callback<03:07:20.399> where<03:07:20.600> we
03:07:20.750 --> 03:07:20.760 align:start position:0%
go we have the used callback where we
03:07:20.760 --> 03:07:23.309 align:start position:0%
go we have the used callback where we
have<03:07:21.200> accepted<03:07:21.720> files<03:07:22.600> and<03:07:22.720> this<03:07:22.840> is<03:07:23.040> actually
03:07:23.309 --> 03:07:23.319 align:start position:0%
have accepted files and this is actually
03:07:23.319 --> 03:07:26.309 align:start position:0%
have accepted files and this is actually
going<03:07:23.439> to<03:07:23.560> be<03:07:23.720> an<03:07:23.880> array<03:07:24.560> of<03:07:24.800> file<03:07:25.160> width<03:07:25.479> paths
03:07:26.309 --> 03:07:26.319 align:start position:0%
going to be an array of file width paths
03:07:26.319 --> 03:07:28.830 align:start position:0%
going to be an array of file width paths
and<03:07:26.479> then<03:07:26.760> everything<03:07:27.160> is<03:07:27.399> good<03:07:28.239> once<03:07:28.439> we<03:07:28.600> do
03:07:28.830 --> 03:07:28.840 align:start position:0%
and then everything is good once we do
03:07:28.840 --> 03:07:31.750 align:start position:0%
and then everything is good once we do
that<03:07:29.399> we're<03:07:29.760> actually<03:07:30.200> ready<03:07:30.720> to<03:07:31.000> set<03:07:31.439> all<03:07:31.640> of
03:07:31.750 --> 03:07:31.760 align:start position:0%
that we're actually ready to set all of
03:07:31.760 --> 03:07:33.910 align:start position:0%
that we're actually ready to set all of
our<03:07:32.000> states<03:07:32.720> to<03:07:32.920> the<03:07:33.120> file<03:07:33.399> that<03:07:33.600> gets
03:07:33.910 --> 03:07:33.920 align:start position:0%
our states to the file that gets
03:07:33.920 --> 03:07:36.950 align:start position:0%
our states to the file that gets
uploaded<03:07:34.920> so<03:07:35.120> let's<03:07:35.319> try<03:07:35.479> to<03:07:35.680> upload<03:07:36.040> a<03:07:36.239> file
03:07:36.950 --> 03:07:36.960 align:start position:0%
uploaded so let's try to upload a file
03:07:36.960 --> 03:07:39.349 align:start position:0%
uploaded so let's try to upload a file
I'm<03:07:37.160> going<03:07:37.239> to<03:07:37.439> grab<03:07:37.760> one<03:07:37.920> from<03:07:38.120> our<03:07:38.279> finished
03:07:39.349 --> 03:07:39.359 align:start position:0%
I'm going to grab one from our finished
03:07:39.359 --> 03:07:42.750 align:start position:0%
I'm going to grab one from our finished
application<03:07:40.359> let's<03:07:40.640> do<03:07:41.120> this<03:07:41.560> one<03:07:42.560> I'm<03:07:42.640> going
03:07:42.750 --> 03:07:42.760 align:start position:0%
application let's do this one I'm going
03:07:42.760 --> 03:07:46.269 align:start position:0%
application let's do this one I'm going
to<03:07:42.880> save<03:07:43.120> save<03:07:43.680> it<03:07:44.680> and<03:07:44.960> now<03:07:45.479> I<03:07:45.560> can<03:07:45.760> add<03:07:45.960> it
03:07:46.269 --> 03:07:46.279 align:start position:0%
to save save it and now I can add it
03:07:46.279 --> 03:07:47.590 align:start position:0%
to save save it and now I can add it
right
03:07:47.590 --> 03:07:47.600 align:start position:0%
right
03:07:47.600 --> 03:07:50.229 align:start position:0%
right
here<03:07:48.600> and<03:07:48.760> there<03:07:48.880> we<03:07:49.080> go<03:07:49.479> it<03:07:49.640> gets<03:07:49.920> back<03:07:50.040> to
03:07:50.229 --> 03:07:50.239 align:start position:0%
here and there we go it gets back to
03:07:50.239 --> 03:07:53.190 align:start position:0%
here and there we go it gets back to
test<03:07:50.560> one<03:07:51.279> but<03:07:51.520> hey<03:07:51.920> let's<03:07:52.239> actually<03:07:52.560> show<03:07:53.000> the
03:07:53.190 --> 03:07:53.200 align:start position:0%
test one but hey let's actually show the
03:07:53.200 --> 03:07:56.870 align:start position:0%
test one but hey let's actually show the
file<03:07:53.479> that's<03:07:53.840> there<03:07:54.840> so<03:07:55.439> this<03:07:55.640> div<03:07:56.200> can<03:07:56.399> have<03:07:56.600> a
03:07:56.870 --> 03:07:56.880 align:start position:0%
file that's there so this div can have a
03:07:56.880 --> 03:08:03.190 align:start position:0%
file that's there so this div can have a
class<03:07:57.279> name<03:07:58.120> equal<03:07:58.479> to<03:07:59.439> flex<03:08:00.439> Flex<03:08:01.439> D1<03:08:02.439> justify
03:08:03.190 --> 03:08:03.200 align:start position:0%
class name equal to flex Flex D1 justify
03:08:03.200 --> 03:08:07.229 align:start position:0%
class name equal to flex Flex D1 justify
Das<03:08:03.600> Center<03:08:04.600> w-<03:08:05.359> full<03:08:05.640> for<03:08:05.840> full<03:08:06.239> width
03:08:07.229 --> 03:08:07.239 align:start position:0%
Das Center w- full for full width
03:08:07.239 --> 03:08:09.990 align:start position:0%
Das Center w- full for full width
padding<03:08:07.720> five<03:08:08.399> and<03:08:08.560> en<03:08:08.800> large<03:08:09.120> devices
03:08:09.990 --> 03:08:10.000 align:start position:0%
padding five and en large devices
03:08:10.000 --> 03:08:11.389 align:start position:0%
padding five and en large devices
padding
03:08:11.389 --> 03:08:11.399 align:start position:0%
padding
03:08:11.399 --> 03:08:14.349 align:start position:0%
padding
10<03:08:12.399> okay<03:08:12.800> that<03:08:13.080> just<03:08:13.239> gave<03:08:13.359> it<03:08:13.479> some<03:08:13.680> padding
03:08:14.349 --> 03:08:14.359 align:start position:0%
10 okay that just gave it some padding
03:08:14.359 --> 03:08:17.670 align:start position:0%
10 okay that just gave it some padding
but<03:08:14.600> now<03:08:15.080> let's<03:08:15.399> actually<03:08:15.720> render<03:08:16.200> the<03:08:16.680> image
03:08:17.670 --> 03:08:17.680 align:start position:0%
but now let's actually render the image
03:08:17.680 --> 03:08:19.870 align:start position:0%
but now let's actually render the image
it's<03:08:17.840> going<03:08:18.040> to<03:08:18.120> be<03:08:18.239> a<03:08:18.359> self-closing<03:08:19.120> image
03:08:19.870 --> 03:08:19.880 align:start position:0%
it's going to be a self-closing image
03:08:19.880 --> 03:08:22.030 align:start position:0%
it's going to be a self-closing image
that's<03:08:20.080> going<03:08:20.239> to<03:08:20.399> have<03:08:20.560> a<03:08:20.720> source<03:08:21.520> equal<03:08:21.800> to
03:08:22.030 --> 03:08:22.040 align:start position:0%
that's going to have a source equal to
03:08:22.040 --> 03:08:25.550 align:start position:0%
that's going to have a source equal to
file<03:08:22.720> URL<03:08:23.720> it's<03:08:23.880> going<03:08:24.040> to<03:08:24.200> have<03:08:24.319> an<03:08:24.479> Al<03:08:24.840> tag<03:08:25.200> of
03:08:25.550 --> 03:08:25.560 align:start position:0%
file URL it's going to have an Al tag of
03:08:25.560 --> 03:08:28.150 align:start position:0%
file URL it's going to have an Al tag of
image<03:08:26.560> it's<03:08:26.720> going<03:08:26.880> to<03:08:27.040> have<03:08:27.160> a<03:08:27.399> class<03:08:27.760> name
03:08:28.150 --> 03:08:28.160 align:start position:0%
image it's going to have a class name
03:08:28.160 --> 03:08:30.349 align:start position:0%
image it's going to have a class name
equal<03:08:28.479> to
03:08:30.349 --> 03:08:30.359 align:start position:0%
equal to
03:08:30.359 --> 03:08:32.429 align:start position:0%
equal to
fileuploader<03:08:31.359> das
03:08:32.429 --> 03:08:32.439 align:start position:0%
fileuploader das
03:08:32.439 --> 03:08:36.030 align:start position:0%
fileuploader das
IMG<03:08:33.439> and<03:08:33.640> there<03:08:33.800> we<03:08:33.960> go<03:08:34.640> finally<03:08:35.399> let's<03:08:35.680> add<03:08:35.840> a
03:08:36.030 --> 03:08:36.040 align:start position:0%
IMG and there we go finally let's add a
03:08:36.040 --> 03:08:38.950 align:start position:0%
IMG and there we go finally let's add a
P<03:08:36.319> tag<03:08:36.640> right<03:08:36.800> below<03:08:37.640> that's<03:08:37.880> going<03:08:38.040> to<03:08:38.200> say
03:08:38.950 --> 03:08:38.960 align:start position:0%
P tag right below that's going to say
03:08:38.960 --> 03:08:44.030 align:start position:0%
P tag right below that's going to say
click<03:08:39.520> or<03:08:40.080> drag<03:08:40.960> photo<03:08:41.720> to<03:08:42.080> replace
03:08:44.030 --> 03:08:44.040 align:start position:0%
click or drag photo to replace
03:08:44.040 --> 03:08:46.269 align:start position:0%
click or drag photo to replace
and<03:08:44.359> let's<03:08:44.600> style<03:08:44.880> it<03:08:45.000> a<03:08:45.160> bit<03:08:45.520> by<03:08:45.680> giving<03:08:45.920> it<03:08:46.080> a
03:08:46.269 --> 03:08:46.279 align:start position:0%
and let's style it a bit by giving it a
03:08:46.279 --> 03:08:49.630 align:start position:0%
and let's style it a bit by giving it a
class<03:08:46.640> name<03:08:47.399> equal<03:08:47.720> to
03:08:49.630 --> 03:08:49.640 align:start position:0%
class name equal to
03:08:49.640 --> 03:08:52.830 align:start position:0%
class name equal to
fileuploader<03:08:50.640> das<03:08:51.239> label<03:08:52.239> and<03:08:52.439> we<03:08:52.560> have<03:08:52.680> to
03:08:52.830 --> 03:08:52.840 align:start position:0%
fileuploader das label and we have to
03:08:52.840 --> 03:08:55.510 align:start position:0%
fileuploader das label and we have to
put<03:08:53.040> this<03:08:53.319> outside<03:08:53.920> of<03:08:54.120> this<03:08:54.319> div<03:08:54.720> right<03:08:54.920> here
03:08:55.510 --> 03:08:55.520 align:start position:0%
put this outside of this div right here
03:08:55.520 --> 03:08:58.110 align:start position:0%
put this outside of this div right here
but<03:08:55.800> within<03:08:56.040> a<03:08:56.239> react<03:08:56.680> fragment<03:08:57.560> so<03:08:57.840> here<03:08:58.000> we
03:08:58.110 --> 03:08:58.120 align:start position:0%
but within a react fragment so here we
03:08:58.120 --> 03:09:02.510 align:start position:0%
but within a react fragment so here we
can<03:08:58.279> put<03:08:58.399> a<03:08:58.560> react<03:08:59.319> fragment<03:09:00.359> close<03:09:01.359> the<03:09:01.560> div
03:09:02.510 --> 03:09:02.520 align:start position:0%
can put a react fragment close the div
03:09:02.520 --> 03:09:04.550 align:start position:0%
can put a react fragment close the div
and<03:09:02.680> then<03:09:02.840> put<03:09:03.040> the<03:09:03.200> P<03:09:03.479> tag<03:09:03.880> outside<03:09:04.239> of<03:09:04.359> the
03:09:04.550 --> 03:09:04.560 align:start position:0%
and then put the P tag outside of the
03:09:04.560 --> 03:09:06.830 align:start position:0%
and then put the P tag outside of the
div<03:09:05.200> but<03:09:05.520> inside<03:09:05.920> of<03:09:06.040> the
03:09:06.830 --> 03:09:06.840 align:start position:0%
div but inside of the
03:09:06.840 --> 03:09:09.830 align:start position:0%
div but inside of the
fragment<03:09:07.840> if<03:09:08.000> we<03:09:08.120> save<03:09:08.399> it<03:09:09.200> that's<03:09:09.439> looking
03:09:09.830 --> 03:09:09.840 align:start position:0%
fragment if we save it that's looking
03:09:09.840 --> 03:09:13.510 align:start position:0%
fragment if we save it that's looking
much<03:09:10.120> better<03:09:10.760> so<03:09:11.040> now<03:09:11.560> we<03:09:11.680> can<03:09:11.920> add<03:09:12.120> a<03:09:12.319> caption
03:09:13.510 --> 03:09:13.520 align:start position:0%
much better so now we can add a caption
03:09:13.520 --> 03:09:16.910 align:start position:0%
much better so now we can add a caption
we<03:09:13.640> can<03:09:13.800> add<03:09:13.960> a<03:09:14.200> photo<03:09:14.840> location<03:09:15.720> and<03:09:16.000> the<03:09:16.200> tags
03:09:16.910 --> 03:09:16.920 align:start position:0%
we can add a photo location and the tags
03:09:16.920 --> 03:09:19.830 align:start position:0%
we can add a photo location and the tags
and<03:09:17.120> click<03:09:17.359> submit<03:09:18.279> the<03:09:18.479> file<03:09:18.800> uploader<03:09:19.600> is
03:09:19.830 --> 03:09:19.840 align:start position:0%
and click submit the file uploader is
03:09:19.840 --> 03:09:22.550 align:start position:0%
and click submit the file uploader is
done<03:09:20.800> but<03:09:21.200> let's<03:09:21.520> actually<03:09:21.920> implement<03:09:22.319> the
03:09:22.550 --> 03:09:22.560 align:start position:0%
done but let's actually implement the
03:09:22.560 --> 03:09:24.870 align:start position:0%
done but let's actually implement the
logic<03:09:22.960> for<03:09:23.239> adding<03:09:23.720> all<03:09:23.920> of<03:09:24.160> these<03:09:24.439> other
03:09:24.870 --> 03:09:24.880 align:start position:0%
logic for adding all of these other
03:09:24.880 --> 03:09:27.710 align:start position:0%
logic for adding all of these other
fields<03:09:25.880> first<03:09:26.080> of<03:09:26.279> all<03:09:26.720> the<03:09:26.840> form<03:09:27.200> fields<03:09:27.520> are
03:09:27.710 --> 03:09:27.720 align:start position:0%
fields first of all the form fields are
03:09:27.720 --> 03:09:30.790 align:start position:0%
fields first of all the form fields are
complaining<03:09:28.479> that<03:09:28.960> this<03:09:29.120> doesn't<03:09:29.479> exist<03:09:30.479> file
03:09:30.790 --> 03:09:30.800 align:start position:0%
complaining that this doesn't exist file
03:09:30.800 --> 03:09:33.710 align:start position:0%
complaining that this doesn't exist file
doesn't<03:09:31.160> exist<03:09:31.640> caption<03:09:32.040> doesn't<03:09:32.520> exist<03:09:33.520> and
03:09:33.710 --> 03:09:33.720 align:start position:0%
doesn't exist caption doesn't exist and
03:09:33.720 --> 03:09:36.150 align:start position:0%
doesn't exist caption doesn't exist and
that's<03:09:34.000> because<03:09:34.640> we<03:09:34.840> haven't<03:09:35.120> yet<03:09:35.399> validated
03:09:36.150 --> 03:09:36.160 align:start position:0%
that's because we haven't yet validated
03:09:36.160 --> 03:09:39.670 align:start position:0%
that's because we haven't yet validated
our<03:09:36.399> form<03:09:37.000> using<03:09:37.479> Zod<03:09:38.479> so<03:09:38.800> right<03:09:39.000> here<03:09:39.319> we<03:09:39.439> can
03:09:39.670 --> 03:09:39.680 align:start position:0%
our form using Zod so right here we can
03:09:39.680 --> 03:09:42.550 align:start position:0%
our form using Zod so right here we can
Define<03:09:40.439> what<03:09:40.560> our<03:09:40.760> form<03:09:41.120> should<03:09:41.439> accept<03:09:42.399> this
03:09:42.550 --> 03:09:42.560 align:start position:0%
Define what our form should accept this
03:09:42.560 --> 03:09:45.309 align:start position:0%
Define what our form should accept this
form<03:09:43.120> should<03:09:43.399> accept<03:09:43.800> a<03:09:44.040> caption<03:09:45.040> which<03:09:45.160> is
03:09:45.309 --> 03:09:45.319 align:start position:0%
form should accept a caption which is
03:09:45.319 --> 03:09:48.710 align:start position:0%
form should accept a caption which is
going<03:09:45.479> to<03:09:45.640> be<03:09:46.160> if<03:09:46.319> the<03:09:46.479> post<03:09:46.880> exists<03:09:47.880> then<03:09:48.279> post
03:09:48.710 --> 03:09:48.720 align:start position:0%
going to be if the post exists then post
03:09:48.720 --> 03:09:50.910 align:start position:0%
going to be if the post exists then post
question<03:09:49.040> mark.<03:09:49.600> Caption<03:09:50.239> This<03:09:50.359> is<03:09:50.479> for<03:09:50.720> when
03:09:50.910 --> 03:09:50.920 align:start position:0%
question mark. Caption This is for when
03:09:50.920 --> 03:09:53.110 align:start position:0%
question mark. Caption This is for when
we're<03:09:51.120> editing<03:09:52.080> else<03:09:52.520> it's<03:09:52.640> going<03:09:52.800> to<03:09:52.920> be<03:09:53.000> an
03:09:53.110 --> 03:09:53.120 align:start position:0%
we're editing else it's going to be an
03:09:53.120 --> 03:09:53.990 align:start position:0%
we're editing else it's going to be an
empty
03:09:53.990 --> 03:09:54.000 align:start position:0%
empty
03:09:54.000 --> 03:09:57.870 align:start position:0%
empty
string<03:09:55.000> the<03:09:55.239> file<03:09:55.880> is<03:09:56.080> going<03:09:56.239> to<03:09:56.439> be<03:09:56.760> an<03:09:56.920> array
03:09:57.870 --> 03:09:57.880 align:start position:0%
string the file is going to be an array
03:09:57.880 --> 03:10:01.469 align:start position:0%
string the file is going to be an array
of<03:09:58.279> files<03:09:59.279> location<03:09:59.960> is<03:10:00.120> going<03:10:00.279> to<03:10:00.520> be<03:10:01.160> if<03:10:01.319> we
03:10:01.469 --> 03:10:01.479 align:start position:0%
of files location is going to be if we
03:10:01.479 --> 03:10:04.110 align:start position:0%
of files location is going to be if we
already<03:10:01.840> have<03:10:02.000> a<03:10:02.160> post<03:10:02.479> location<03:10:03.439> then<03:10:03.800> post
03:10:04.110 --> 03:10:04.120 align:start position:0%
already have a post location then post
03:10:04.120 --> 03:10:08.190 align:start position:0%
already have a post location then post
location<03:10:04.920> else<03:10:05.239> an<03:10:05.399> empty<03:10:05.720> string<03:10:06.720> and<03:10:07.200> tags
03:10:08.190 --> 03:10:08.200 align:start position:0%
location else an empty string and tags
03:10:08.200 --> 03:10:10.990 align:start position:0%
location else an empty string and tags
is<03:10:08.359> going<03:10:08.560> to<03:10:08.720> be<03:10:09.120> if<03:10:09.239> we<03:10:09.439> have<03:10:09.560> a<03:10:09.800> post<03:10:10.560> then
03:10:10.990 --> 03:10:11.000 align:start position:0%
is going to be if we have a post then
03:10:11.000 --> 03:10:16.070 align:start position:0%
is going to be if we have a post then
post.<03:10:12.000> tags.<03:10:12.920> join<03:10:13.680> by<03:10:13.840> a<03:10:14.239> comma<03:10:15.239> else<03:10:15.920> it's
03:10:16.070 --> 03:10:16.080 align:start position:0%
post. tags. join by a comma else it's
03:10:16.080 --> 03:10:18.750 align:start position:0%
post. tags. join by a comma else it's
simply<03:10:16.319> going<03:10:16.479> to<03:10:16.600> be<03:10:16.720> an<03:10:16.840> empty<03:10:17.560> string<03:10:18.560> now
03:10:18.750 --> 03:10:18.760 align:start position:0%
simply going to be an empty string now
03:10:18.760 --> 03:10:20.190 align:start position:0%
simply going to be an empty string now
you<03:10:18.880> can<03:10:19.000> see<03:10:19.160> that<03:10:19.279> it's<03:10:19.439> complaining<03:10:20.040> that
03:10:20.190 --> 03:10:20.200 align:start position:0%
you can see that it's complaining that
03:10:20.200 --> 03:10:22.670 align:start position:0%
you can see that it's complaining that
this<03:10:20.439> caption<03:10:20.800> does<03:10:21.000> not<03:10:21.399> exist<03:10:22.399> that's
03:10:22.670 --> 03:10:22.680 align:start position:0%
this caption does not exist that's
03:10:22.680 --> 03:10:25.469 align:start position:0%
this caption does not exist that's
because<03:10:23.239> we<03:10:23.359> are<03:10:23.560> now<03:10:23.840> using<03:10:24.239> a<03:10:24.520> default<03:10:24.960> form
03:10:25.469 --> 03:10:25.479 align:start position:0%
because we are now using a default form
03:10:25.479 --> 03:10:28.469 align:start position:0%
because we are now using a default form
schema<03:10:26.479> but<03:10:26.800> we<03:10:27.080> actually<03:10:27.439> want<03:10:27.600> to<03:10:27.840> turn<03:10:28.239> this
03:10:28.469 --> 03:10:28.479 align:start position:0%
schema but we actually want to turn this
03:10:28.479 --> 03:10:32.190 align:start position:0%
schema but we actually want to turn this
into<03:10:28.920> post<03:10:29.720> validation<03:10:30.720> so<03:10:31.239> let's<03:10:31.560> head<03:10:31.880> into
03:10:32.190 --> 03:10:32.200 align:start position:0%
into post validation so let's head into
03:10:32.200 --> 03:10:33.190 align:start position:0%
into post validation so let's head into
our
03:10:33.190 --> 03:10:33.200 align:start position:0%
our
03:10:33.200 --> 03:10:35.510 align:start position:0%
our
validations<03:10:34.200> right<03:10:34.439> here<03:10:35.040> and<03:10:35.239> we<03:10:35.319> can
03:10:35.510 --> 03:10:35.520 align:start position:0%
validations right here and we can
03:10:35.520 --> 03:10:38.790 align:start position:0%
validations right here and we can
duplicate<03:10:36.200> this<03:10:36.479> sign<03:10:36.960> inv<03:10:37.239> validation<03:10:38.200> right
03:10:38.790 --> 03:10:38.800 align:start position:0%
duplicate this sign inv validation right
03:10:38.800 --> 03:10:42.150 align:start position:0%
duplicate this sign inv validation right
below<03:10:39.800> we<03:10:39.920> can<03:10:40.120> call<03:10:40.520> this<03:10:41.239> something<03:10:41.760> like
03:10:42.150 --> 03:10:42.160 align:start position:0%
below we can call this something like
03:10:42.160 --> 03:10:43.790 align:start position:0%
below we can call this something like
post
03:10:43.790 --> 03:10:43.800 align:start position:0%
post
03:10:43.800 --> 03:10:45.750 align:start position:0%
post
validation<03:10:44.800> it's<03:10:45.000> not<03:10:45.200> going<03:10:45.279> to<03:10:45.439> have<03:10:45.560> an
03:10:45.750 --> 03:10:45.760 align:start position:0%
validation it's not going to have an
03:10:45.760 --> 03:10:48.510 align:start position:0%
validation it's not going to have an
email<03:10:46.680> not<03:10:46.880> a<03:10:47.120> password<03:10:47.960> but<03:10:48.120> it's<03:10:48.279> going<03:10:48.359> to
03:10:48.510 --> 03:10:48.520 align:start position:0%
email not a password but it's going to
03:10:48.520 --> 03:10:51.670 align:start position:0%
email not a password but it's going to
have<03:10:48.640> a<03:10:48.880> caption<03:10:49.800> of<03:10:49.960> a<03:10:50.160> type<03:10:50.399> z.
03:10:51.670 --> 03:10:51.680 align:start position:0%
have a caption of a type z.
03:10:51.680 --> 03:10:54.349 align:start position:0%
have a caption of a type z.
string<03:10:52.680> it's<03:10:52.840> going<03:10:53.000> to<03:10:53.120> be<03:10:53.319> a<03:10:53.479> minimum<03:10:54.080> of
03:10:54.349 --> 03:10:54.359 align:start position:0%
string it's going to be a minimum of
03:10:54.359 --> 03:10:58.110 align:start position:0%
string it's going to be a minimum of
about<03:10:54.760> five<03:10:55.640> characters<03:10:56.640> and<03:10:56.880> a<03:10:57.160> maximum<03:10:57.880> of
03:10:58.110 --> 03:10:58.120 align:start position:0%
about five characters and a maximum of
03:10:58.120 --> 03:11:02.030 align:start position:0%
about five characters and a maximum of
about<03:10:59.000> 2,200<03:11:00.120> characters<03:11:01.120> let's<03:11:01.359> also<03:11:01.640> have<03:11:01.800> a
03:11:02.030 --> 03:11:02.040 align:start position:0%
about 2,200 characters let's also have a
03:11:02.040 --> 03:11:05.510 align:start position:0%
about 2,200 characters let's also have a
file<03:11:02.720> which<03:11:02.840> is<03:11:03.000> going<03:11:03.160> to<03:11:03.279> be<03:11:03.479> z.<03:11:04.399> custom<03:11:05.399> and
03:11:05.510 --> 03:11:05.520 align:start position:0%
file which is going to be z. custom and
03:11:05.520 --> 03:11:09.110 align:start position:0%
file which is going to be z. custom and
we<03:11:05.640> can<03:11:05.840> Define<03:11:06.200> the<03:11:06.439> value<03:11:07.279> right<03:11:07.640> here<03:11:08.640> of
03:11:09.110 --> 03:11:09.120 align:start position:0%
we can Define the value right here of
03:11:09.120 --> 03:11:12.870 align:start position:0%
we can Define the value right here of
file<03:11:09.880> or<03:11:10.080> rather<03:11:10.319> an<03:11:10.479> array<03:11:10.880> of<03:11:11.479> files<03:11:12.479> there
03:11:12.870 --> 03:11:12.880 align:start position:0%
file or rather an array of files there
03:11:12.880 --> 03:11:15.670 align:start position:0%
file or rather an array of files there
we<03:11:13.200> go<03:11:14.200> it's<03:11:14.359> so<03:11:14.640> handy<03:11:14.920> how<03:11:15.040> we<03:11:15.120> can<03:11:15.319> Define
03:11:15.670 --> 03:11:15.680 align:start position:0%
we go it's so handy how we can Define
03:11:15.680 --> 03:11:18.229 align:start position:0%
we go it's so handy how we can Define
custom<03:11:16.080> types<03:11:17.080> it's<03:11:17.239> going<03:11:17.399> to<03:11:17.560> have<03:11:17.680> a
03:11:18.229 --> 03:11:18.239 align:start position:0%
custom types it's going to have a
03:11:18.239 --> 03:11:21.030 align:start position:0%
custom types it's going to have a
location<03:11:19.239> which<03:11:19.359> is<03:11:19.479> going<03:11:19.640> to<03:11:19.800> be<03:11:19.960> of<03:11:20.160> a<03:11:20.399> type
03:11:21.030 --> 03:11:21.040 align:start position:0%
location which is going to be of a type
03:11:21.040 --> 03:11:26.510 align:start position:0%
location which is going to be of a type
z.<03:11:21.960> string<03:11:22.960> let's<03:11:23.200> do<03:11:24.040> Min<03:11:24.319> of<03:11:24.479> two<03:11:25.040> Max<03:11:25.680> 100
03:11:26.510 --> 03:11:26.520 align:start position:0%
z. string let's do Min of two Max 100
03:11:26.520 --> 03:11:30.590 align:start position:0%
z. string let's do Min of two Max 100
and<03:11:26.680> then<03:11:26.920> tags<03:11:27.520> is<03:11:27.640> going<03:11:27.840> to<03:11:27.960> be<03:11:28.200> a<03:11:28.399> z.<03:11:29.600> string
03:11:30.590 --> 03:11:30.600 align:start position:0%
and then tags is going to be a z. string
03:11:30.600 --> 03:11:33.110 align:start position:0%
and then tags is going to be a z. string
there<03:11:30.760> we<03:11:30.960> go<03:11:31.800> so<03:11:32.000> now<03:11:32.200> we<03:11:32.319> have<03:11:32.520> this<03:11:32.720> custom
03:11:33.110 --> 03:11:33.120 align:start position:0%
there we go so now we have this custom
03:11:33.120 --> 03:11:35.990 align:start position:0%
there we go so now we have this custom
post<03:11:33.520> validation<03:11:34.520> and<03:11:34.640> we<03:11:34.760> can<03:11:34.960> use<03:11:35.200> it<03:11:35.760> right
03:11:35.990 --> 03:11:36.000 align:start position:0%
post validation and we can use it right
03:11:36.000 --> 03:11:38.550 align:start position:0%
post validation and we can use it right
here<03:11:36.800> three<03:11:37.120> times<03:11:37.760> where<03:11:38.040> mentioned<03:11:38.399> the
03:11:38.550 --> 03:11:38.560 align:start position:0%
here three times where mentioned the
03:11:38.560 --> 03:11:41.229 align:start position:0%
here three times where mentioned the
form<03:11:39.239> schema<03:11:40.239> and<03:11:40.359> then<03:11:40.479> you<03:11:40.600> have<03:11:40.720> to<03:11:40.920> import
03:11:41.229 --> 03:11:41.239 align:start position:0%
form schema and then you have to import
03:11:41.239 --> 03:11:45.590 align:start position:0%
form schema and then you have to import
it<03:11:41.680> from<03:11:42.080> lib<03:11:43.000> validation<03:11:44.000> there<03:11:44.160> we<03:11:44.359> go<03:11:45.319> so
03:11:45.590 --> 03:11:45.600 align:start position:0%
it from lib validation there we go so
03:11:45.600 --> 03:11:48.030 align:start position:0%
it from lib validation there we go so
now<03:11:45.880> our<03:11:46.160> post<03:11:46.560> knows<03:11:47.279> what<03:11:47.399> we're<03:11:47.600> trying<03:11:47.880> to
03:11:48.030 --> 03:11:48.040 align:start position:0%
now our post knows what we're trying to
03:11:48.040 --> 03:11:50.429 align:start position:0%
now our post knows what we're trying to
render<03:11:49.040> oh<03:11:49.319> I<03:11:49.439> just<03:11:49.600> noticed<03:11:50.080> here<03:11:50.239> we're
03:11:50.429 --> 03:11:50.439 align:start position:0%
render oh I just noticed here we're
03:11:50.439 --> 03:11:52.750 align:start position:0%
render oh I just noticed here we're
using<03:11:50.800> the<03:11:50.960> input<03:11:51.479> we<03:11:51.640> have<03:11:51.760> to<03:11:51.960> spread<03:11:52.600> the
03:11:52.750 --> 03:11:52.760 align:start position:0%
using the input we have to spread the
03:11:52.760 --> 03:11:56.630 align:start position:0%
using the input we have to spread the
field<03:11:53.520> so<03:11:53.680> we<03:11:53.840> have<03:11:53.960> to<03:11:54.160> say<03:11:54.760> do<03:11:55.080> do<03:11:55.359> dot<03:11:55.880> field
03:11:56.630 --> 03:11:56.640 align:start position:0%
field so we have to say do do dot field
03:11:56.640 --> 03:11:59.229 align:start position:0%
field so we have to say do do dot field
like<03:11:56.880> so<03:11:57.600> and<03:11:57.760> also<03:11:58.000> we<03:11:58.120> have<03:11:58.239> to<03:11:58.359> do<03:11:58.520> the<03:11:58.720> same
03:11:59.229 --> 03:11:59.239 align:start position:0%
like so and also we have to do the same
03:11:59.239 --> 03:12:03.309 align:start position:0%
like so and also we have to do the same
for<03:11:59.560> the<03:11:59.840> last<03:12:00.279> one<03:12:00.680> right<03:12:01.160> here<03:12:02.160> do<03:12:02.439> dot<03:12:02.720> dot
03:12:03.309 --> 03:12:03.319 align:start position:0%
for the last one right here do dot dot
03:12:03.319 --> 03:12:06.110 align:start position:0%
for the last one right here do dot dot
field<03:12:04.319> there<03:12:04.479> we<03:12:04.640> go<03:12:05.160> we're<03:12:05.359> getting<03:12:05.680> there<03:12:05.960> we
03:12:06.110 --> 03:12:06.120 align:start position:0%
field there we go we're getting there we
03:12:06.120 --> 03:12:08.830 align:start position:0%
field there we go we're getting there we
have<03:12:06.239> a<03:12:06.359> couple<03:12:06.680> more<03:12:06.920> errors<03:12:07.720> as<03:12:07.800> you<03:12:07.920> can<03:12:08.120> see
03:12:08.830 --> 03:12:08.840 align:start position:0%
have a couple more errors as you can see
03:12:08.840 --> 03:12:10.830 align:start position:0%
have a couple more errors as you can see
we<03:12:09.000> don't<03:12:09.239> need<03:12:09.439> this<03:12:09.600> form<03:12:09.920> schema<03:12:10.520> as<03:12:10.720> we
03:12:10.830 --> 03:12:10.840 align:start position:0%
we don't need this form schema as we
03:12:10.840 --> 03:12:13.190 align:start position:0%
we don't need this form schema as we
have<03:12:11.040> created<03:12:11.439> it<03:12:11.840> in<03:12:12.080> another<03:12:12.399> file
03:12:13.190 --> 03:12:13.200 align:start position:0%
have created it in another file
03:12:13.200 --> 03:12:15.830 align:start position:0%
have created it in another file
file<03:12:14.200> it's<03:12:14.399> also<03:12:14.640> complaining<03:12:15.200> about<03:12:15.680> what
03:12:15.830 --> 03:12:15.840 align:start position:0%
file it's also complaining about what
03:12:15.840 --> 03:12:18.950 align:start position:0%
file it's also complaining about what
we're<03:12:16.399> receiving<03:12:16.800> here<03:12:17.800> typescript<03:12:18.520> is<03:12:18.680> also
03:12:18.950 --> 03:12:18.960 align:start position:0%
we're receiving here typescript is also
03:12:18.960 --> 03:12:21.870 align:start position:0%
we're receiving here typescript is also
complaining<03:12:19.560> about<03:12:19.840> the<03:12:20.080> type<03:12:20.720> of<03:12:21.000> our<03:12:21.399> props
03:12:21.870 --> 03:12:21.880 align:start position:0%
complaining about the type of our props
03:12:21.880 --> 03:12:23.870 align:start position:0%
complaining about the type of our props
here<03:12:22.399> so<03:12:22.560> we<03:12:22.680> can<03:12:22.800> say<03:12:23.080> this<03:12:23.200> is<03:12:23.319> going<03:12:23.479> to<03:12:23.640> be
03:12:23.870 --> 03:12:23.880 align:start position:0%
here so we can say this is going to be
03:12:23.880 --> 03:12:28.030 align:start position:0%
here so we can say this is going to be
of<03:12:24.279> post<03:12:25.080> form<03:12:26.040> props<03:12:27.040> and<03:12:27.160> we<03:12:27.279> can<03:12:27.479> Define<03:12:27.760> it
03:12:28.030 --> 03:12:28.040 align:start position:0%
of post form props and we can Define it
03:12:28.040 --> 03:12:31.750 align:start position:0%
of post form props and we can Define it
right<03:12:28.239> here<03:12:28.960> by<03:12:29.080> saying<03:12:29.600> type<03:12:30.600> post<03:12:31.120> form
03:12:31.750 --> 03:12:31.760 align:start position:0%
right here by saying type post form
03:12:31.760 --> 03:12:35.910 align:start position:0%
right here by saying type post form
props<03:12:32.520> is<03:12:32.720> equal<03:12:33.479> to<03:12:34.479> where<03:12:34.640> we<03:12:34.800> have<03:12:34.960> a<03:12:35.160> post
03:12:35.910 --> 03:12:35.920 align:start position:0%
props is equal to where we have a post
03:12:35.920 --> 03:12:37.750 align:start position:0%
props is equal to where we have a post
question<03:12:36.279> mark<03:12:36.800> meaning<03:12:37.399> sometimes<03:12:37.600> it's
03:12:37.750 --> 03:12:37.760 align:start position:0%
question mark meaning sometimes it's
03:12:37.760 --> 03:12:40.309 align:start position:0%
question mark meaning sometimes it's
going<03:12:37.880> to<03:12:38.040> be<03:12:38.279> here<03:12:38.960> sometimes<03:12:39.239> it<03:12:39.359> will<03:12:39.600> not
03:12:40.309 --> 03:12:40.319 align:start position:0%
going to be here sometimes it will not
03:12:40.319 --> 03:12:44.110 align:start position:0%
going to be here sometimes it will not
and<03:12:40.479> this<03:12:40.600> is<03:12:40.760> of<03:12:40.920> a<03:12:41.120> type<03:12:41.479> models<03:12:42.359> do<03:12:43.120> document
03:12:44.110 --> 03:12:44.120 align:start position:0%
and this is of a type models do document
03:12:44.120 --> 03:12:45.870 align:start position:0%
and this is of a type models do document
and<03:12:44.279> this<03:12:44.479> models<03:12:45.040> is<03:12:45.160> going<03:12:45.239> to<03:12:45.359> be<03:12:45.520> coming
03:12:45.870 --> 03:12:45.880 align:start position:0%
and this models is going to be coming
03:12:45.880 --> 03:12:47.429 align:start position:0%
and this models is going to be coming
from
03:12:47.429 --> 03:12:47.439 align:start position:0%
from
03:12:47.439 --> 03:12:50.750 align:start position:0%
from
aight<03:12:48.439> we<03:12:48.600> also<03:12:48.800> are<03:12:48.960> never<03:12:49.239> using<03:12:49.520> a<03:12:49.640> form
03:12:50.750 --> 03:12:50.760 align:start position:0%
aight we also are never using a form
03:12:50.760 --> 03:12:53.429 align:start position:0%
aight we also are never using a form
description<03:12:51.760> and<03:12:52.080> we<03:12:52.200> can<03:12:52.399> now<03:12:52.920> structure
03:12:53.429 --> 03:12:53.439 align:start position:0%
description and we can now structure
03:12:53.439 --> 03:12:56.030 align:start position:0%
description and we can now structure
this<03:12:53.600> more<03:12:53.960> nicely<03:12:54.760> by<03:12:55.000> putting<03:12:55.279> it<03:12:55.680> in<03:12:55.840> a
03:12:56.030 --> 03:12:56.040 align:start position:0%
this more nicely by putting it in a
03:12:56.040 --> 03:12:57.469 align:start position:0%
this more nicely by putting it in a
single
03:12:57.469 --> 03:12:57.479 align:start position:0%
single
03:12:57.479 --> 03:13:01.469 align:start position:0%
single
line<03:12:58.479> there<03:12:58.720> we<03:12:58.920> go<03:12:59.560> so<03:12:59.800> now<03:13:00.000> we<03:13:00.160> have<03:13:00.279> our<03:13:00.479> form
03:13:01.469 --> 03:13:01.479 align:start position:0%
line there we go so now we have our form
03:13:01.479 --> 03:13:04.030 align:start position:0%
line there we go so now we have our form
which<03:13:01.920> we're<03:13:02.200> almost<03:13:02.640> there<03:13:03.319> we<03:13:03.439> can<03:13:03.680> actually
03:13:04.030 --> 03:13:04.040 align:start position:0%
which we're almost there we can actually
03:13:04.040 --> 03:13:06.269 align:start position:0%
which we're almost there we can actually
put<03:13:04.239> the<03:13:04.399> values<03:13:04.720> in<03:13:05.399> the<03:13:05.560> validation<03:13:06.120> is
03:13:06.269 --> 03:13:06.279 align:start position:0%
put the values in the validation is
03:13:06.279 --> 03:13:08.630 align:start position:0%
put the values in the validation is
working<03:13:06.760> as<03:13:06.840> you<03:13:06.960> can<03:13:07.120> see<03:13:07.880> we<03:13:08.000> can<03:13:08.200> upload
03:13:08.630 --> 03:13:08.640 align:start position:0%
working as you can see we can upload
03:13:08.640 --> 03:13:12.670 align:start position:0%
working as you can see we can upload
images<03:13:09.560> add<03:13:09.720> a<03:13:09.960> location<03:13:10.720> and<03:13:10.960> add<03:13:11.279> tags<03:13:12.239> the
03:13:12.670 --> 03:13:12.680 align:start position:0%
images add a location and add tags the
03:13:12.680 --> 03:13:14.710 align:start position:0%
images add a location and add tags the
last<03:13:12.840> thing<03:13:13.000> we<03:13:13.120> have<03:13:13.239> to<03:13:13.399> do<03:13:14.040> is<03:13:14.279> implement
03:13:14.710 --> 03:13:14.720 align:start position:0%
last thing we have to do is implement
03:13:14.720 --> 03:13:18.110 align:start position:0%
last thing we have to do is implement
the<03:13:15.040> logic<03:13:16.040> what<03:13:16.319> happens<03:13:17.120> once<03:13:17.359> we<03:13:17.560> click
03:13:18.110 --> 03:13:18.120 align:start position:0%
the logic what happens once we click
03:13:18.120 --> 03:13:20.190 align:start position:0%
the logic what happens once we click
submit<03:13:18.960> and<03:13:19.200> this<03:13:19.359> is<03:13:19.600> where<03:13:19.760> we're<03:13:19.920> going<03:13:20.040> to
03:13:20.190 --> 03:13:20.200 align:start position:0%
submit and this is where we're going to
03:13:20.200 --> 03:13:23.630 align:start position:0%
submit and this is where we're going to
connect<03:13:20.680> with<03:13:20.960> aite<03:13:21.960> and<03:13:22.239> create<03:13:22.479> a<03:13:22.640> new<03:13:22.920> post
03:13:23.630 --> 03:13:23.640 align:start position:0%
connect with aite and create a new post
03:13:23.640 --> 03:13:27.389 align:start position:0%
connect with aite and create a new post
based<03:13:24.080> off<03:13:24.279> of<03:13:24.479> these<03:13:25.040> values<03:13:26.040> within<03:13:26.600> here<03:13:27.239> we
03:13:27.389 --> 03:13:27.399 align:start position:0%
based off of these values within here we
03:13:27.399 --> 03:13:30.150 align:start position:0%
based off of these values within here we
can<03:13:27.560> now<03:13:27.840> use<03:13:28.239> this<03:13:28.439> new<03:13:29.080> hook<03:13:29.600> coming<03:13:29.880> from
03:13:30.150 --> 03:13:30.160 align:start position:0%
can now use this new hook coming from
03:13:30.160 --> 03:13:32.790 align:start position:0%
can now use this new hook coming from
react<03:13:30.640> query<03:13:31.600> so<03:13:31.800> let's<03:13:32.040> define<03:13:32.359> it<03:13:32.640> right
03:13:32.790 --> 03:13:32.800 align:start position:0%
react query so let's define it right
03:13:32.800 --> 03:13:36.630 align:start position:0%
react query so let's define it right
here<03:13:33.000> at<03:13:33.160> the<03:13:33.439> top<03:13:34.439> by<03:13:34.960> saying
03:13:36.630 --> 03:13:36.640 align:start position:0%
here at the top by saying
03:13:36.640 --> 03:13:39.389 align:start position:0%
here at the top by saying
const<03:13:37.840> mutate
03:13:39.389 --> 03:13:39.399 align:start position:0%
const mutate
03:13:39.399 --> 03:13:43.750 align:start position:0%
const mutate
async<03:13:40.399> which<03:13:40.560> we<03:13:40.680> can<03:13:40.880> call<03:13:41.239> create<03:13:41.760> post<03:13:42.960> and
03:13:43.750 --> 03:13:43.760 align:start position:0%
async which we can call create post and
03:13:43.760 --> 03:13:49.309 align:start position:0%
async which we can call create post and
is<03:13:44.399> pending<03:13:45.399> which<03:13:45.560> we<03:13:45.680> can<03:13:45.920> call<03:13:46.359> is<03:13:47.000> loading
03:13:49.309 --> 03:13:49.319 align:start position:0%
is pending which we can call is loading
03:13:49.319 --> 03:13:54.630 align:start position:0%
is pending which we can call is loading
create<03:13:50.319> that<03:13:50.520> is<03:13:50.760> equal<03:13:51.040> to<03:13:51.680> use<03:13:52.439> create<03:13:53.640> post
03:13:54.630 --> 03:13:54.640 align:start position:0%
create that is equal to use create post
03:13:54.640 --> 03:13:57.229 align:start position:0%
create that is equal to use create post
and<03:13:54.760> we<03:13:54.880> can<03:13:55.120> import<03:13:55.560> use<03:13:55.880> create<03:13:56.239> post<03:13:56.920> coming
03:13:57.229 --> 03:13:57.239 align:start position:0%
and we can import use create post coming
03:13:57.239 --> 03:13:59.510 align:start position:0%
and we can import use create post coming
from<03:13:57.760> queries<03:13:58.239> and
03:13:59.510 --> 03:13:59.520 align:start position:0%
from queries and
03:13:59.520 --> 03:14:02.150 align:start position:0%
from queries and
mutations<03:14:00.520> now<03:14:00.720> that<03:14:00.880> we<03:14:01.080> have<03:14:01.239> it<03:14:01.880> we<03:14:02.000> can
03:14:02.150 --> 03:14:02.160 align:start position:0%
mutations now that we have it we can
03:14:02.160 --> 03:14:04.590 align:start position:0%
mutations now that we have it we can
simply<03:14:02.560> call<03:14:03.000> this<03:14:03.200> create<03:14:03.640> post<03:14:04.359> right
03:14:04.590 --> 03:14:04.600 align:start position:0%
simply call this create post right
03:14:04.600 --> 03:14:05.830 align:start position:0%
simply call this create post right
within
03:14:05.830 --> 03:14:05.840 align:start position:0%
within
03:14:05.840 --> 03:14:07.870 align:start position:0%
within
onsubmit<03:14:06.840> the<03:14:07.000> way<03:14:07.200> in<03:14:07.359> which<03:14:07.479> we're<03:14:07.640> going<03:14:07.720> to
03:14:07.870 --> 03:14:07.880 align:start position:0%
onsubmit the way in which we're going to
03:14:07.880 --> 03:14:13.269 align:start position:0%
onsubmit the way in which we're going to
call<03:14:08.160> it<03:14:08.760> is<03:14:09.600> const<03:14:10.479> new<03:14:10.880> post<03:14:11.680> is<03:14:11.960> equal<03:14:12.279> to<03:14:12.560> to
03:14:13.269 --> 03:14:13.279 align:start position:0%
call it is const new post is equal to to
03:14:13.279 --> 03:14:17.590 align:start position:0%
call it is const new post is equal to to
await<03:14:14.279> create<03:14:14.760> post<03:14:15.680> to<03:14:16.000> which<03:14:16.600> we<03:14:16.880> pass<03:14:17.279> an
03:14:17.590 --> 03:14:17.600 align:start position:0%
await create post to which we pass an
03:14:17.600 --> 03:14:21.349 align:start position:0%
await create post to which we pass an
object<03:14:18.359> where<03:14:18.560> we<03:14:18.800> spread<03:14:19.560> all<03:14:20.000> values<03:14:20.960> of<03:14:21.120> a
03:14:21.349 --> 03:14:21.359 align:start position:0%
object where we spread all values of a
03:14:21.359 --> 03:14:26.750 align:start position:0%
object where we spread all values of a
post<03:14:22.359> and<03:14:22.479> then<03:14:22.760> pass<03:14:23.080> the<03:14:23.319> user<03:14:24.279> ID<03:14:25.200> of<03:14:25.399> a<03:14:25.640> type
03:14:26.750 --> 03:14:26.760 align:start position:0%
post and then pass the user ID of a type
03:14:26.760 --> 03:14:28.269 align:start position:0%
post and then pass the user ID of a type
user.
03:14:28.269 --> 03:14:28.279 align:start position:0%
user.
03:14:28.279 --> 03:14:32.349 align:start position:0%
user.
ID<03:14:29.279> of<03:14:29.560> a<03:14:29.760> user<03:14:30.319> that<03:14:30.520> has<03:14:30.720> created<03:14:31.080> the<03:14:31.359> post
03:14:32.349 --> 03:14:32.359 align:start position:0%
ID of a user that has created the post
03:14:32.359 --> 03:14:34.510 align:start position:0%
ID of a user that has created the post
once<03:14:32.640> again<03:14:33.439> how<03:14:33.600> are<03:14:33.720> we<03:14:33.840> going<03:14:34.000> to<03:14:34.160> get<03:14:34.359> the
03:14:34.510 --> 03:14:34.520 align:start position:0%
once again how are we going to get the
03:14:34.520 --> 03:14:36.670 align:start position:0%
once again how are we going to get the
user<03:14:34.840> that's<03:14:35.000> creating<03:14:35.359> the<03:14:35.560> post<03:14:36.359> well
03:14:36.670 --> 03:14:36.680 align:start position:0%
user that's creating the post well
03:14:36.680 --> 03:14:39.269 align:start position:0%
user that's creating the post well
that's<03:14:36.920> pretty<03:14:37.239> simple<03:14:38.040> we<03:14:38.200> have<03:14:38.399> created<03:14:38.880> our
03:14:39.269 --> 03:14:39.279 align:start position:0%
that's pretty simple we have created our
03:14:39.279 --> 03:14:42.229 align:start position:0%
that's pretty simple we have created our
context<03:14:40.279> so<03:14:40.560> now<03:14:40.960> at<03:14:41.080> the<03:14:41.319> top<03:14:41.800> we<03:14:41.880> can<03:14:42.000> say
03:14:42.229 --> 03:14:42.239 align:start position:0%
context so now at the top we can say
03:14:42.239 --> 03:14:43.910 align:start position:0%
context so now at the top we can say
cont
03:14:43.910 --> 03:14:43.920 align:start position:0%
cont
03:14:43.920 --> 03:14:49.269 align:start position:0%
cont
user<03:14:44.920> is<03:14:45.279> equal<03:14:45.640> to<03:14:46.680> use<03:14:47.760> user
03:14:49.269 --> 03:14:49.279 align:start position:0%
user is equal to use user
03:14:49.279 --> 03:14:51.670 align:start position:0%
user is equal to use user
context<03:14:50.279> and<03:14:50.439> we<03:14:50.560> can<03:14:50.760> import<03:14:51.200> this<03:14:51.359> from
03:14:51.670 --> 03:14:51.680 align:start position:0%
context and we can import this from
03:14:51.680 --> 03:14:53.309 align:start position:0%
context and we can import this from
Context<03:14:52.279> o
03:14:53.309 --> 03:14:53.319 align:start position:0%
Context o
03:14:53.319 --> 03:14:57.389 align:start position:0%
Context o
context<03:14:54.319> and<03:14:54.800> immediately<03:14:55.640> you<03:14:55.840> get<03:14:56.000> the<03:14:56.399> ID
03:14:57.389 --> 03:14:57.399 align:start position:0%
context and immediately you get the ID
03:14:57.399 --> 03:15:00.389 align:start position:0%
context and immediately you get the ID
so<03:14:57.640> now<03:14:57.880> we<03:14:58.000> have<03:14:58.200> this<03:14:58.439> new<03:14:58.920> post<03:14:59.920> and<03:15:00.160> what<03:15:00.279> do
03:15:00.389 --> 03:15:00.399 align:start position:0%
so now we have this new post and what do
03:15:00.399 --> 03:15:03.110 align:start position:0%
so now we have this new post and what do
we<03:15:00.479> want<03:15:00.560> to<03:15:00.720> do<03:15:00.920> once<03:15:01.120> we<03:15:01.279> create<03:15:01.680> it<03:15:02.680> well<03:15:03.040> we
03:15:03.110 --> 03:15:03.120 align:start position:0%
we want to do once we create it well we
03:15:03.120 --> 03:15:07.389 align:start position:0%
we want to do once we create it well we
can<03:15:03.279> say<03:15:03.640> if<03:15:04.399> there<03:15:04.600> is<03:15:04.880> no<03:15:05.479> new<03:15:05.920> Post<03:15:06.920> in<03:15:07.160> that
03:15:07.389 --> 03:15:07.399 align:start position:0%
can say if there is no new Post in that
03:15:07.399 --> 03:15:09.349 align:start position:0%
can say if there is no new Post in that
case<03:15:07.880> we<03:15:08.000> can<03:15:08.319> return<03:15:08.600> a
03:15:09.349 --> 03:15:09.359 align:start position:0%
case we can return a
03:15:09.359 --> 03:15:13.269 align:start position:0%
case we can return a
toast<03:15:10.359> that's<03:15:10.560> going<03:15:10.720> to<03:15:10.960> have<03:15:11.160> a<03:15:11.399> title<03:15:12.520> of
03:15:13.269 --> 03:15:13.279 align:start position:0%
toast that's going to have a title of
03:15:13.279 --> 03:15:15.269 align:start position:0%
toast that's going to have a title of
something<03:15:13.720> like
03:15:15.269 --> 03:15:15.279 align:start position:0%
something like
03:15:15.279 --> 03:15:19.510 align:start position:0%
something like
please<03:15:16.279> try<03:15:17.200> again<03:15:18.160> and<03:15:18.399> this<03:15:18.640> toast<03:15:19.319> is
03:15:19.510 --> 03:15:19.520 align:start position:0%
please try again and this toast is
03:15:19.520 --> 03:15:24.590 align:start position:0%
please try again and this toast is
coming<03:15:19.880> from<03:15:20.760> const<03:15:21.720> toast<03:15:22.720> is<03:15:22.960> equal<03:15:23.279> to<03:15:24.000> use
03:15:24.590 --> 03:15:24.600 align:start position:0%
coming from const toast is equal to use
03:15:24.600 --> 03:15:28.990 align:start position:0%
coming from const toast is equal to use
toast<03:15:25.319> coming<03:15:25.600> from<03:15:25.880> UI<03:15:26.760> use<03:15:27.640> toast<03:15:28.640> there<03:15:28.800> we
03:15:28.990 --> 03:15:29.000 align:start position:0%
toast coming from UI use toast there we
03:15:29.000 --> 03:15:31.150 align:start position:0%
toast coming from UI use toast there we
go<03:15:29.680> what<03:15:29.880> happens<03:15:30.199> if<03:15:30.359> we<03:15:30.560> successfully
03:15:31.150 --> 03:15:31.160 align:start position:0%
go what happens if we successfully
03:15:31.160 --> 03:15:34.110 align:start position:0%
go what happens if we successfully
created<03:15:31.520> a<03:15:31.680> new<03:15:32.000> post<03:15:33.000> well<03:15:33.160> in<03:15:33.399> that<03:15:33.640> case<03:15:33.960> we
03:15:34.110 --> 03:15:34.120 align:start position:0%
created a new post well in that case we
03:15:34.120 --> 03:15:37.070 align:start position:0%
created a new post well in that case we
simply<03:15:34.399> want<03:15:34.560> to<03:15:34.840> navigate<03:15:35.600> to<03:15:35.800> the<03:15:36.080> homepage
03:15:37.070 --> 03:15:37.080 align:start position:0%
simply want to navigate to the homepage
03:15:37.080 --> 03:15:39.150 align:start position:0%
simply want to navigate to the homepage
so<03:15:37.319> to<03:15:37.479> be<03:15:37.600> able<03:15:37.800> to<03:15:38.000> navigate<03:15:38.680> we<03:15:38.800> have<03:15:38.920> to
03:15:39.150 --> 03:15:39.160 align:start position:0%
so to be able to navigate we have to
03:15:39.160 --> 03:15:42.590 align:start position:0%
so to be able to navigate we have to
import<03:15:39.600> use<03:15:40.000> navigate<03:15:40.920> from<03:15:41.439> react<03:15:42.000> router
03:15:42.590 --> 03:15:42.600 align:start position:0%
import use navigate from react router
03:15:42.600 --> 03:15:49.349 align:start position:0%
import use navigate from react router
Dom<03:15:43.439> let's<03:15:43.640> do<03:15:43.800> it<03:15:44.000> right<03:15:44.399> here<03:15:45.760> import<03:15:46.760> use
03:15:49.349 --> 03:15:49.359 align:start position:0%
03:15:49.359 --> 03:15:55.309 align:start position:0%
navigate<03:15:50.359> from<03:15:51.199> react<03:15:52.199> router<03:15:53.520> Dom<03:15:54.520> and<03:15:54.720> then
03:15:55.309 --> 03:15:55.319 align:start position:0%
navigate from react router Dom and then
03:15:55.319 --> 03:15:58.309 align:start position:0%
navigate from react router Dom and then
we<03:15:55.439> can<03:15:55.680> simply<03:15:56.080> Define<03:15:56.359> it<03:15:56.520> as<03:15:56.640> a<03:15:56.800> hook<03:15:57.760> cons
03:15:58.309 --> 03:15:58.319 align:start position:0%
we can simply Define it as a hook cons
03:15:58.319 --> 03:16:02.269 align:start position:0%
we can simply Define it as a hook cons
navigate<03:15:59.319> is<03:15:59.600> equal<03:15:59.920> to<03:16:00.720> use<03:16:01.160> navigate<03:16:02.040> and
03:16:02.269 --> 03:16:02.279 align:start position:0%
navigate is equal to use navigate and
03:16:02.279 --> 03:16:07.229 align:start position:0%
navigate is equal to use navigate and
then<03:16:02.800> we<03:16:02.960> call<03:16:03.239> it<03:16:03.800> right<03:16:04.120> here<03:16:05.560> navigate<03:16:06.560> to
03:16:07.229 --> 03:16:07.239 align:start position:0%
then we call it right here navigate to
03:16:07.239 --> 03:16:09.950 align:start position:0%
then we call it right here navigate to
forward<03:16:07.880> slash<03:16:08.880> make<03:16:09.040> sure<03:16:09.239> to<03:16:09.479> make<03:16:09.760> the
03:16:09.950 --> 03:16:09.960 align:start position:0%
forward slash make sure to make the
03:16:09.960 --> 03:16:12.990 align:start position:0%
forward slash make sure to make the
onsubmit<03:16:10.920> an<03:16:11.239> async<03:16:12.000> function
03:16:12.990 --> 03:16:13.000 align:start position:0%
onsubmit an async function
03:16:13.000 --> 03:16:15.229 align:start position:0%
onsubmit an async function
because<03:16:13.199> we're<03:16:13.399> using<03:16:13.720> the<03:16:13.880> await<03:16:14.359> action<03:16:14.960> of
03:16:15.229 --> 03:16:15.239 align:start position:0%
because we're using the await action of
03:16:15.239 --> 03:16:18.870 align:start position:0%
because we're using the await action of
create<03:16:15.880> post<03:16:16.880> so<03:16:17.120> with<03:16:17.319> all<03:16:17.520> of<03:16:17.800> this<03:16:18.640> I'm
03:16:18.870 --> 03:16:18.880 align:start position:0%
create post so with all of this I'm
03:16:18.880 --> 03:16:21.309 align:start position:0%
create post so with all of this I'm
hoping<03:16:19.560> we're<03:16:19.840> successfully<03:16:20.560> creating<03:16:20.920> our
03:16:21.309 --> 03:16:21.319 align:start position:0%
hoping we're successfully creating our
03:16:21.319 --> 03:16:23.990 align:start position:0%
hoping we're successfully creating our
post<03:16:22.319> if<03:16:22.479> we<03:16:22.600> get<03:16:22.800> redirected<03:16:23.640> to<03:16:23.840> the
03:16:23.990 --> 03:16:24.000 align:start position:0%
post if we get redirected to the
03:16:24.000 --> 03:16:27.030 align:start position:0%
post if we get redirected to the
homepage<03:16:24.920> it<03:16:25.040> means<03:16:25.520> we're<03:16:25.840> good<03:16:26.560> so<03:16:26.760> let's
03:16:27.030 --> 03:16:27.040 align:start position:0%
homepage it means we're good so let's
03:16:27.040 --> 03:16:30.150 align:start position:0%
homepage it means we're good so let's
expand<03:16:27.479> it<03:16:27.880> to<03:16:28.040> see<03:16:28.319> it<03:16:28.439> in<03:16:28.640> full<03:16:29.000> glory<03:16:29.960> and
03:16:30.150 --> 03:16:30.160 align:start position:0%
expand it to see it in full glory and
03:16:30.160 --> 03:16:33.309 align:start position:0%
expand it to see it in full glory and
let's<03:16:30.439> create<03:16:31.000> our<03:16:31.239> first<03:16:31.840> post<03:16:32.840> I'm<03:16:32.960> going<03:16:33.040> to
03:16:33.309 --> 03:16:33.319 align:start position:0%
let's create our first post I'm going to
03:16:33.319 --> 03:16:35.990 align:start position:0%
let's create our first post I'm going to
add<03:16:33.760> our<03:16:33.960> photo<03:16:34.439> right<03:16:34.680> here<03:16:35.640> I'm<03:16:35.760> going<03:16:35.880> to
03:16:35.990 --> 03:16:36.000 align:start position:0%
add our photo right here I'm going to
03:16:36.000 --> 03:16:40.510 align:start position:0%
add our photo right here I'm going to
say<03:16:36.439> something<03:16:36.840> like<03:16:37.680> nice<03:16:38.720> Greenery<03:16:39.720> on<03:16:40.160> a
03:16:40.510 --> 03:16:40.520 align:start position:0%
say something like nice Greenery on a
03:16:40.520 --> 03:16:42.990 align:start position:0%
say something like nice Greenery on a
nice<03:16:41.279> River
03:16:42.990 --> 03:16:43.000 align:start position:0%
nice River
03:16:43.000 --> 03:16:46.030 align:start position:0%
nice River
not<03:16:43.439> as<03:16:43.720> thoughtful<03:16:44.279> as<03:16:44.479> Chad<03:16:44.800> jpt<03:16:45.600> but<03:16:45.880> what
03:16:46.030 --> 03:16:46.040 align:start position:0%
not as thoughtful as Chad jpt but what
03:16:46.040 --> 03:16:48.950 align:start position:0%
not as thoughtful as Chad jpt but what
can<03:16:46.199> you<03:16:46.359> do<03:16:47.319> and<03:16:47.520> we<03:16:47.640> have<03:16:47.760> a<03:16:47.920> location<03:16:48.760> I'm
03:16:48.950 --> 03:16:48.960 align:start position:0%
can you do and we have a location I'm
03:16:48.960 --> 03:16:51.429 align:start position:0%
can you do and we have a location I'm
not<03:16:49.160> sure<03:16:49.439> where<03:16:49.720> this<03:16:49.960> is<03:16:50.880> let's<03:16:51.120> do
03:16:51.429 --> 03:16:51.439 align:start position:0%
not sure where this is let's do
03:16:51.439 --> 03:16:55.070 align:start position:0%
not sure where this is let's do
something<03:16:51.960> like<03:16:53.080> River<03:16:54.080> and<03:16:54.319> we<03:16:54.439> can<03:16:54.720> add
03:16:55.070 --> 03:16:55.080 align:start position:0%
something like River and we can add
03:16:55.080 --> 03:16:57.349 align:start position:0%
something like River and we can add
something<03:16:55.600> like
03:16:57.349 --> 03:16:57.359 align:start position:0%
something like
03:16:57.359 --> 03:17:00.670 align:start position:0%
something like
nature<03:16:58.359> finally<03:16:58.880> let's<03:16:59.160> click
03:17:00.670 --> 03:17:00.680 align:start position:0%
nature finally let's click
03:17:00.680 --> 03:17:04.910 align:start position:0%
nature finally let's click
submit<03:17:01.880> we<03:17:02.880> got<03:17:03.160> redirected<03:17:04.040> but<03:17:04.199> it<03:17:04.359> does<03:17:04.600> say
03:17:04.910 --> 03:17:04.920 align:start position:0%
submit we got redirected but it does say
03:17:04.920 --> 03:17:07.630 align:start position:0%
submit we got redirected but it does say
please<03:17:05.279> try<03:17:05.720> again<03:17:06.439> so<03:17:06.680> I'm<03:17:06.880> guessing<03:17:07.439> it
03:17:07.630 --> 03:17:07.640 align:start position:0%
please try again so I'm guessing it
03:17:07.640 --> 03:17:10.349 align:start position:0%
please try again so I'm guessing it
broke<03:17:08.439> somewhere<03:17:09.439> let's<03:17:09.720> open<03:17:09.960> up<03:17:10.160> the
03:17:10.349 --> 03:17:10.359 align:start position:0%
broke somewhere let's open up the
03:17:10.359 --> 03:17:13.710 align:start position:0%
broke somewhere let's open up the
inspect<03:17:10.880> element<03:17:11.760> and<03:17:11.920> then<03:17:12.319> let's<03:17:12.560> go<03:17:12.800> to<03:17:12.960> our
03:17:13.710 --> 03:17:13.720 align:start position:0%
inspect element and then let's go to our
03:17:13.720 --> 03:17:16.229 align:start position:0%
inspect element and then let's go to our
console<03:17:14.720> and<03:17:14.920> it<03:17:15.000> says<03:17:15.279> the<03:17:15.399> current<03:17:15.720> user<03:17:16.040> is
03:17:16.229 --> 03:17:16.239 align:start position:0%
console and it says the current user is
03:17:16.239 --> 03:17:19.670 align:start position:0%
console and it says the current user is
not<03:17:16.600> authorized<03:17:17.199> to<03:17:17.439> perform<03:17:17.840> the<03:17:18.040> requested
03:17:19.670 --> 03:17:19.680 align:start position:0%
not authorized to perform the requested
03:17:19.680 --> 03:17:23.189 align:start position:0%
not authorized to perform the requested
action<03:17:20.680> okay<03:17:21.319> that's<03:17:22.000> interesting<03:17:23.000> that
03:17:23.189 --> 03:17:23.199 align:start position:0%
action okay that's interesting that
03:17:23.199 --> 03:17:26.150 align:start position:0%
action okay that's interesting that
could<03:17:23.600> be<03:17:24.600> because<03:17:25.000> we<03:17:25.160> haven't<03:17:25.479> set<03:17:25.720> up<03:17:25.960> the
03:17:26.150 --> 03:17:26.160 align:start position:0%
could be because we haven't set up the
03:17:26.160 --> 03:17:29.950 align:start position:0%
could be because we haven't set up the
permissions<03:17:27.080> for<03:17:27.319> us<03:17:27.520> to<03:17:27.840> upload<03:17:28.399> new<03:17:28.960> items
03:17:29.950 --> 03:17:29.960 align:start position:0%
permissions for us to upload new items
03:17:29.960 --> 03:17:33.670 align:start position:0%
permissions for us to upload new items
so<03:17:30.160> let's<03:17:30.399> go<03:17:30.520> to<03:17:30.800> app<03:17:31.199> right<03:17:32.199> let's<03:17:32.439> go<03:17:32.600> to
03:17:33.670 --> 03:17:33.680 align:start position:0%
so let's go to app right let's go to
03:17:33.680 --> 03:17:35.469 align:start position:0%
so let's go to app right let's go to
storage
03:17:35.469 --> 03:17:35.479 align:start position:0%
storage
03:17:35.479 --> 03:17:38.030 align:start position:0%
storage
media<03:17:36.479> and<03:17:36.640> then<03:17:36.960> here
03:17:38.030 --> 03:17:38.040 align:start position:0%
media and then here
03:17:38.040 --> 03:17:41.269 align:start position:0%
media and then here
settings<03:17:39.040> and<03:17:39.199> we<03:17:39.319> can<03:17:39.560> add<03:17:39.760> a<03:17:39.920> new<03:17:40.160> role<03:17:40.880> for
03:17:41.269 --> 03:17:41.279 align:start position:0%
settings and we can add a new role for
03:17:41.279 --> 03:17:45.110 align:start position:0%
settings and we can add a new role for
any<03:17:42.199> to<03:17:42.399> create<03:17:42.960> read<03:17:43.520> update<03:17:44.000> and<03:17:44.199> delete
03:17:45.110 --> 03:17:45.120 align:start position:0%
any to create read update and delete
03:17:45.120 --> 03:17:47.910 align:start position:0%
any to create read update and delete
different<03:17:45.640> assets<03:17:46.319> from<03:17:46.479> our<03:17:46.760> storage<03:17:47.760> just
03:17:47.910 --> 03:17:47.920 align:start position:0%
different assets from our storage just
03:17:47.920 --> 03:17:51.030 align:start position:0%
different assets from our storage just
to<03:17:48.040> be<03:17:48.199> sure<03:17:48.680> let's<03:17:48.880> go<03:17:49.000> to<03:17:49.479> database
03:17:51.030 --> 03:17:51.040 align:start position:0%
to be sure let's go to database
03:17:51.040 --> 03:17:55.070 align:start position:0%
to be sure let's go to database
snapgram<03:17:52.520> post<03:17:53.520> and<03:17:53.920> it's<03:17:54.160> good<03:17:54.520> it<03:17:54.680> wasn't
03:17:55.070 --> 03:17:55.080 align:start position:0%
snapgram post and it's good it wasn't
03:17:55.080 --> 03:17:57.710 align:start position:0%
snapgram post and it's good it wasn't
actually<03:17:55.439> created<03:17:56.120> so<03:17:56.359> that's<03:17:56.560> what<03:17:56.760> matters
03:17:57.710 --> 03:17:57.720 align:start position:0%
actually created so that's what matters
03:17:57.720 --> 03:18:00.790 align:start position:0%
actually created so that's what matters
so<03:17:57.960> now<03:17:58.600> let's<03:17:58.800> give<03:17:58.920> it<03:17:59.120> one<03:17:59.319> more<03:17:59.680> shot<03:18:00.680> I'm
03:18:00.790 --> 03:18:00.800 align:start position:0%
so now let's give it one more shot I'm
03:18:00.800 --> 03:18:04.229 align:start position:0%
so now let's give it one more shot I'm
going<03:18:00.880> to<03:18:01.040> do<03:18:01.359> something<03:18:01.800> like<03:18:02.399> River<03:18:03.399> and
03:18:04.229 --> 03:18:04.239 align:start position:0%
going to do something like River and
03:18:04.239 --> 03:18:06.750 align:start position:0%
going to do something like River and
nature<03:18:05.239> I'm<03:18:05.359> going<03:18:05.439> to<03:18:05.680> upload<03:18:06.080> the<03:18:06.239> post<03:18:06.600> one
03:18:06.750 --> 03:18:06.760 align:start position:0%
nature I'm going to upload the post one
03:18:06.760 --> 03:18:08.110 align:start position:0%
nature I'm going to upload the post one
more
03:18:08.110 --> 03:18:08.120 align:start position:0%
more
03:18:08.120 --> 03:18:10.790 align:start position:0%
more
time<03:18:09.120> I'm<03:18:09.239> going<03:18:09.359> to<03:18:09.560> add<03:18:09.760> a<03:18:09.920> location
03:18:10.790 --> 03:18:10.800 align:start position:0%
time I'm going to add a location
03:18:10.800 --> 03:18:12.950 align:start position:0%
time I'm going to add a location
something<03:18:11.160> like<03:18:11.279> a<03:18:11.479> river<03:18:12.479> and<03:18:12.600> I'm<03:18:12.720> going<03:18:12.840> to
03:18:12.950 --> 03:18:12.960 align:start position:0%
something like a river and I'm going to
03:18:12.960 --> 03:18:16.630 align:start position:0%
something like a river and I'm going to
say<03:18:13.199> nature<03:18:14.120> right<03:18:14.399> here<03:18:15.000> as<03:18:15.239> well<03:18:16.239> and<03:18:16.520> I'm
03:18:16.630 --> 03:18:16.640 align:start position:0%
say nature right here as well and I'm
03:18:16.640 --> 03:18:19.389 align:start position:0%
say nature right here as well and I'm
going<03:18:16.760> to<03:18:16.960> click
03:18:19.389 --> 03:18:19.399 align:start position:0%
going to click
03:18:19.399 --> 03:18:23.030 align:start position:0%
going to click
submit<03:18:20.399> we<03:18:20.640> indeed<03:18:21.120> get<03:18:21.760> redirected<03:18:22.760> this
03:18:23.030 --> 03:18:23.040 align:start position:0%
submit we indeed get redirected this
03:18:23.040 --> 03:18:26.590 align:start position:0%
submit we indeed get redirected this
time<03:18:23.600> without<03:18:24.160> any<03:18:24.920> errors<03:18:25.920> but<03:18:26.160> we<03:18:26.319> still
03:18:26.590 --> 03:18:26.600 align:start position:0%
time without any errors but we still
03:18:26.600 --> 03:18:28.189 align:start position:0%
time without any errors but we still
cannot<03:18:26.960> know<03:18:27.319> whether<03:18:27.520> the<03:18:27.680> post<03:18:27.960> was
03:18:28.189 --> 03:18:28.199 align:start position:0%
cannot know whether the post was
03:18:28.199 --> 03:18:31.950 align:start position:0%
cannot know whether the post was
actually<03:18:28.640> created<03:18:29.640> or<03:18:30.000> can<03:18:30.279> we<03:18:31.080> if<03:18:31.239> we<03:18:31.399> go<03:18:31.560> to
03:18:31.950 --> 03:18:31.960 align:start position:0%
actually created or can we if we go to
03:18:31.960 --> 03:18:36.189 align:start position:0%
actually created or can we if we go to
aite<03:18:32.960> and<03:18:33.199> go<03:18:33.399> to<03:18:33.920> posts<03:18:34.920> and
03:18:36.189 --> 03:18:36.199 align:start position:0%
aite and go to posts and
03:18:36.199 --> 03:18:40.349 align:start position:0%
aite and go to posts and
reload<03:18:37.199> we<03:18:37.319> can<03:18:37.520> see<03:18:38.040> our<03:18:38.359> first<03:18:38.800> post<03:18:39.399> appear
03:18:40.349 --> 03:18:40.359 align:start position:0%
reload we can see our first post appear
03:18:40.359 --> 03:18:42.590 align:start position:0%
reload we can see our first post appear
right<03:18:40.920> here<03:18:41.560> it<03:18:41.720> was<03:18:41.880> created<03:18:42.080> created<03:18:42.399> on
03:18:42.590 --> 03:18:42.600 align:start position:0%
right here it was created created on
03:18:42.600 --> 03:18:46.910 align:start position:0%
right here it was created created on
this<03:18:42.800> date<03:18:43.800> and<03:18:44.080> it<03:18:44.319> has<03:18:44.880> this<03:18:45.279> data<03:18:46.080> liked
03:18:46.910 --> 03:18:46.920 align:start position:0%
this date and it has this data liked
03:18:46.920 --> 03:18:52.110 align:start position:0%
this date and it has this data liked
posts<03:18:47.840> name<03:18:48.760> username<03:18:49.760> account<03:18:50.160> ID<03:18:50.920> email<03:18:51.600> bio
03:18:52.110 --> 03:18:52.120 align:start position:0%
posts name username account ID email bio
03:18:52.120 --> 03:18:55.469 align:start position:0%
posts name username account ID email bio
image<03:18:52.439> ID<03:18:52.920> image<03:18:53.199> URL<03:18:53.840> save<03:18:54.439> everything<03:18:54.920> is
03:18:55.469 --> 03:18:55.479 align:start position:0%
image ID image URL save everything is
03:18:55.479 --> 03:18:58.150 align:start position:0%
image ID image URL save everything is
here<03:18:56.479> so<03:18:56.680> we<03:18:56.800> know<03:18:57.040> that<03:18:57.199> the<03:18:57.399> post<03:18:57.800> was
03:18:58.150 --> 03:18:58.160 align:start position:0%
here so we know that the post was
03:18:58.160 --> 03:19:01.590 align:start position:0%
here so we know that the post was
created<03:18:59.120> in<03:18:59.279> the<03:18:59.720> database<03:19:00.720> but<03:19:01.080> was<03:19:01.359> the
03:19:01.590 --> 03:19:01.600 align:start position:0%
created in the database but was the
03:19:01.600 --> 03:19:04.630 align:start position:0%
created in the database but was the
image<03:19:02.239> created<03:19:02.680> in<03:19:03.120> storage<03:19:04.120> let's<03:19:04.359> check
03:19:04.630 --> 03:19:04.640 align:start position:0%
image created in storage let's check
03:19:04.640 --> 03:19:07.349 align:start position:0%
image created in storage let's check
that<03:19:04.800> out<03:19:05.600> under<03:19:05.880> media<03:19:06.760> we<03:19:06.920> have<03:19:07.080> our
03:19:07.349 --> 03:19:07.359 align:start position:0%
that out under media we have our
03:19:07.359 --> 03:19:11.229 align:start position:0%
that out under media we have our
preview.png<03:19:08.319> and<03:19:09.199> we<03:19:09.319> can<03:19:09.479> see<03:19:10.080> this<03:19:10.319> image<03:19:10.880> on
03:19:11.229 --> 03:19:11.239 align:start position:0%
preview.png and we can see this image on
03:19:11.239 --> 03:19:13.229 align:start position:0%
preview.png and we can see this image on
aight<03:19:11.760> server
03:19:13.229 --> 03:19:13.239 align:start position:0%
aight server
03:19:13.239 --> 03:19:16.630 align:start position:0%
aight server
this<03:19:13.640> is<03:19:14.199> amazing<03:19:15.199> so<03:19:15.520> now<03:19:16.040> the<03:19:16.239> last<03:19:16.479> thing
03:19:16.630 --> 03:19:16.640 align:start position:0%
this is amazing so now the last thing
03:19:16.640 --> 03:19:19.229 align:start position:0%
this is amazing so now the last thing
we'll<03:19:16.840> have<03:19:16.960> to<03:19:17.120> do<03:19:18.040> is<03:19:18.399> implement<03:19:19.000> the
03:19:19.229 --> 03:19:19.239 align:start position:0%
we'll have to do is implement the
03:19:19.239 --> 03:19:22.670 align:start position:0%
we'll have to do is implement the
homepage<03:19:20.239> and<03:19:20.479> fetch<03:19:21.120> this<03:19:21.359> phenomenal<03:19:22.040> post
03:19:22.670 --> 03:19:22.680 align:start position:0%
homepage and fetch this phenomenal post
03:19:22.680 --> 03:19:26.630 align:start position:0%
homepage and fetch this phenomenal post
we've<03:19:23.080> created<03:19:24.080> so<03:19:24.680> let's<03:19:24.920> do<03:19:25.160> that<03:19:25.439> next<03:19:26.279> to
03:19:26.630 --> 03:19:26.640 align:start position:0%
we've created so let's do that next to
03:19:26.640 --> 03:19:28.670 align:start position:0%
we've created so let's do that next to
create<03:19:26.920> a<03:19:27.080> new<03:19:27.359> post<03:19:27.920> we<03:19:28.120> first<03:19:28.399> have<03:19:28.520> to
03:19:28.670 --> 03:19:28.680 align:start position:0%
create a new post we first have to
03:19:28.680 --> 03:19:30.950 align:start position:0%
create a new post we first have to
create<03:19:28.920> a<03:19:29.120> function<03:19:29.680> that's<03:19:29.880> going<03:19:30.080> to<03:19:30.319> do<03:19:30.560> so
03:19:30.950 --> 03:19:30.960 align:start position:0%
create a function that's going to do so
03:19:30.960 --> 03:19:34.510 align:start position:0%
create a function that's going to do so
in<03:19:31.279> aite<03:19:32.040> before<03:19:32.359> we<03:19:32.479> can<03:19:32.640> call<03:19:32.920> it<03:19:33.760> so<03:19:34.319> let's
03:19:34.510 --> 03:19:34.520 align:start position:0%
in aite before we can call it so let's
03:19:34.520 --> 03:19:38.990 align:start position:0%
in aite before we can call it so let's
go<03:19:34.680> ahead<03:19:35.160> and<03:19:35.399> let's<03:19:35.640> go<03:19:35.960> to<03:19:36.439> our<03:19:36.880> source<03:19:37.960> lib
03:19:38.990 --> 03:19:39.000 align:start position:0%
go ahead and let's go to our source lib
03:19:39.000 --> 03:19:43.349 align:start position:0%
go ahead and let's go to our source lib
aight<03:19:40.160> API<03:19:41.160> and<03:19:41.439> right<03:19:41.600> here<03:19:42.080> below<03:19:42.520> sign<03:19:42.880> out
03:19:43.349 --> 03:19:43.359 align:start position:0%
aight API and right here below sign out
03:19:43.359 --> 03:19:48.389 align:start position:0%
aight API and right here below sign out
account<03:19:44.359> let's<03:19:45.120> export<03:19:46.399> async<03:19:47.399> function
03:19:48.389 --> 03:19:48.399 align:start position:0%
account let's export async function
03:19:48.399 --> 03:19:51.750 align:start position:0%
account let's export async function
create<03:19:49.399> post<03:19:50.359> that's<03:19:50.560> going<03:19:50.760> to<03:19:51.000> receive<03:19:51.479> a
03:19:51.750 --> 03:19:51.760 align:start position:0%
create post that's going to receive a
03:19:51.760 --> 03:19:56.229 align:start position:0%
create post that's going to receive a
post<03:19:52.359> of<03:19:52.520> a<03:19:52.760> type<03:19:53.479> I<03:19:54.479> as<03:19:54.640> an<03:19:54.840> interface<03:19:55.840> new
03:19:56.229 --> 03:19:56.239 align:start position:0%
post of a type I as an interface new
03:19:56.239 --> 03:20:00.189 align:start position:0%
post of a type I as an interface new
post<03:19:57.160> coming<03:19:57.439> from<03:19:57.720> add<03:19:58.040> for/<03:19:59.080> types<03:20:00.080> make
03:20:00.189 --> 03:20:00.199 align:start position:0%
post coming from add for/ types make
03:20:00.199 --> 03:20:03.150 align:start position:0%
post coming from add for/ types make
sure<03:20:00.399> to<03:20:00.600> import<03:20:00.960> it<03:20:01.920> and<03:20:02.120> then<03:20:02.520> we<03:20:02.640> can<03:20:02.880> open
03:20:03.150 --> 03:20:03.160 align:start position:0%
sure to import it and then we can open
03:20:03.160 --> 03:20:06.389 align:start position:0%
sure to import it and then we can open
up<03:20:03.359> a<03:20:03.560> new<03:20:03.920> try<03:20:04.319> and<03:20:04.680> catch<03:20:05.160> block<03:20:06.120> you<03:20:06.199> know
03:20:06.389 --> 03:20:06.399 align:start position:0%
up a new try and catch block you know
03:20:06.399 --> 03:20:09.429 align:start position:0%
up a new try and catch block you know
the<03:20:06.520> drill<03:20:07.199> right<03:20:08.199> in<03:20:08.399> the<03:20:08.640> catch<03:20:09.120> we<03:20:09.239> can
03:20:09.429 --> 03:20:09.439 align:start position:0%
the drill right in the catch we can
03:20:09.439 --> 03:20:12.550 align:start position:0%
the drill right in the catch we can
simply<03:20:09.840> conso<03:20:10.319> log<03:20:10.600> the<03:20:10.720> error<03:20:11.720> but<03:20:12.160> in<03:20:12.399> the
03:20:12.550 --> 03:20:12.560 align:start position:0%
simply conso log the error but in the
03:20:12.560 --> 03:20:15.990 align:start position:0%
simply conso log the error but in the
try<03:20:13.040> is<03:20:13.239> where<03:20:13.439> the<03:20:13.640> magic<03:20:14.160> happens<03:20:15.160> here
03:20:15.990 --> 03:20:16.000 align:start position:0%
try is where the magic happens here
03:20:16.000 --> 03:20:18.910 align:start position:0%
try is where the magic happens here
first<03:20:16.600> we<03:20:16.720> need<03:20:16.920> to<03:20:17.239> upload<03:20:17.800> our<03:20:18.120> file<03:20:18.640> to
03:20:18.910 --> 03:20:18.920 align:start position:0%
first we need to upload our file to
03:20:18.920 --> 03:20:21.750 align:start position:0%
first we need to upload our file to
aight<03:20:19.479> storage<03:20:20.359> let's<03:20:20.600> write<03:20:20.800> that<03:20:21.000> down
03:20:21.750 --> 03:20:21.760 align:start position:0%
aight storage let's write that down
03:20:21.760 --> 03:20:24.990 align:start position:0%
aight storage let's write that down
upload<03:20:22.239> image<03:20:22.720> to<03:20:23.319> storage<03:20:24.319> so<03:20:24.479> we<03:20:24.560> can<03:20:24.680> say
03:20:24.990 --> 03:20:25.000 align:start position:0%
upload image to storage so we can say
03:20:25.000 --> 03:20:26.429 align:start position:0%
upload image to storage so we can say
const
03:20:26.429 --> 03:20:26.439 align:start position:0%
const
03:20:26.439 --> 03:20:32.229 align:start position:0%
const
uploaded<03:20:27.439> file<03:20:28.439> is<03:20:28.720> equal<03:20:29.040> to<03:20:29.479> a<03:20:30.080> wait<03:20:31.239> upload
03:20:32.229 --> 03:20:32.239 align:start position:0%
uploaded file is equal to a wait upload
03:20:32.239 --> 03:20:36.590 align:start position:0%
uploaded file is equal to a wait upload
file<03:20:33.080> where<03:20:33.279> we<03:20:33.560> pass<03:20:33.920> the<03:20:34.199> post.<03:20:35.600> file0
03:20:36.590 --> 03:20:36.600 align:start position:0%
file where we pass the post. file0
03:20:36.600 --> 03:20:37.990 align:start position:0%
file where we pass the post. file0
meaning<03:20:36.920> the<03:20:37.080> first
03:20:37.990 --> 03:20:38.000 align:start position:0%
meaning the first
03:20:38.000 --> 03:20:41.469 align:start position:0%
meaning the first
post<03:20:39.000> now<03:20:39.439> this<03:20:39.720> upload<03:20:40.160> file<03:20:40.520> function<03:20:41.279> is
03:20:41.469 --> 03:20:41.479 align:start position:0%
post now this upload file function is
03:20:41.479 --> 03:20:43.830 align:start position:0%
post now this upload file function is
another<03:20:42.040> function<03:20:42.359> we'll<03:20:42.640> create<03:20:43.520> let's<03:20:43.720> do
03:20:43.830 --> 03:20:43.840 align:start position:0%
another function we'll create let's do
03:20:43.840 --> 03:20:48.710 align:start position:0%
another function we'll create let's do
it<03:20:44.040> right<03:20:44.359> below<03:20:45.359> export<03:20:46.279> a<03:20:46.600> sync<03:20:47.720> function
03:20:48.710 --> 03:20:48.720 align:start position:0%
it right below export a sync function
03:20:48.720 --> 03:20:52.389 align:start position:0%
it right below export a sync function
upload<03:20:49.640> file<03:20:50.640> that<03:20:50.840> accepts<03:20:51.279> a<03:20:51.520> file<03:20:52.000> of<03:20:52.160> a
03:20:52.389 --> 03:20:52.399 align:start position:0%
upload file that accepts a file of a
03:20:52.399 --> 03:20:55.750 align:start position:0%
upload file that accepts a file of a
type<03:20:53.080> file<03:20:54.080> it's<03:20:54.279> going<03:20:54.439> to<03:20:54.680> have<03:20:54.840> a<03:20:55.040> try<03:20:55.399> and
03:20:55.750 --> 03:20:55.760 align:start position:0%
type file it's going to have a try and
03:20:55.760 --> 03:20:58.630 align:start position:0%
type file it's going to have a try and
catch<03:20:56.520> block<03:20:57.520> within<03:20:57.880> the<03:20:58.040> catch<03:20:58.399> we're<03:20:58.520> going
03:20:58.630 --> 03:20:58.640 align:start position:0%
catch block within the catch we're going
03:20:58.640 --> 03:21:01.870 align:start position:0%
catch block within the catch we're going
to<03:20:58.800> consol<03:20:59.279> log<03:20:59.680> the<03:21:00.080> error<03:21:01.080> but<03:21:01.359> within<03:21:01.640> the
03:21:01.870 --> 03:21:01.880 align:start position:0%
to consol log the error but within the
03:21:01.880 --> 03:21:06.389 align:start position:0%
to consol log the error but within the
catch<03:21:02.800> we<03:21:02.920> can<03:21:03.040> say<03:21:03.399> con<03:21:04.000> uploaded<03:21:05.120> file<03:21:06.120> is
03:21:06.389 --> 03:21:06.399 align:start position:0%
catch we can say con uploaded file is
03:21:06.399 --> 03:21:08.510 align:start position:0%
catch we can say con uploaded file is
equal<03:21:06.920> to
03:21:08.510 --> 03:21:08.520 align:start position:0%
equal to
03:21:08.520 --> 03:21:10.150 align:start position:0%
equal to
await
03:21:10.150 --> 03:21:10.160 align:start position:0%
await
03:21:10.160 --> 03:21:13.750 align:start position:0%
await
storage.<03:21:11.160> create<03:21:12.040> file<03:21:12.800> so<03:21:13.040> the<03:21:13.199> first<03:21:13.520> time
03:21:13.750 --> 03:21:13.760 align:start position:0%
storage. create file so the first time
03:21:13.760 --> 03:21:15.590 align:start position:0%
storage. create file so the first time
in<03:21:13.960> this<03:21:14.160> application<03:21:14.720> we're<03:21:15.000> diving<03:21:15.359> into
03:21:15.590 --> 03:21:15.600 align:start position:0%
in this application we're diving into
03:21:15.600 --> 03:21:18.950 align:start position:0%
in this application we're diving into
the<03:21:15.880> storage<03:21:16.840> functionality<03:21:17.840> remember<03:21:18.720> we
03:21:18.950 --> 03:21:18.960 align:start position:0%
the storage functionality remember we
03:21:18.960 --> 03:21:23.030 align:start position:0%
the storage functionality remember we
had<03:21:19.319> account<03:21:20.399> databases<03:21:21.479> avatars<03:21:22.479> but<03:21:22.680> now
03:21:23.030 --> 03:21:23.040 align:start position:0%
had account databases avatars but now
03:21:23.040 --> 03:21:24.510 align:start position:0%
had account databases avatars but now
also
03:21:24.510 --> 03:21:24.520 align:start position:0%
also
03:21:24.520 --> 03:21:28.349 align:start position:0%
also
storage<03:21:25.520> this<03:21:25.640> is<03:21:25.800> used<03:21:26.040> for<03:21:26.279> saving<03:21:27.239> media<03:21:28.239> we
03:21:28.349 --> 03:21:28.359 align:start position:0%
storage this is used for saving media we
03:21:28.359 --> 03:21:30.550 align:start position:0%
storage this is used for saving media we
want<03:21:28.479> to<03:21:28.720> pass<03:21:28.960> a<03:21:29.080> couple<03:21:29.319> of<03:21:29.520> things<03:21:30.120> we<03:21:30.319> first
03:21:30.550 --> 03:21:30.560 align:start position:0%
want to pass a couple of things we first
03:21:30.560 --> 03:21:32.990 align:start position:0%
want to pass a couple of things we first
want<03:21:30.680> to<03:21:30.880> pass<03:21:31.120> the<03:21:31.279> storage<03:21:31.720> ID<03:21:32.439> by<03:21:32.560> saying
03:21:32.990 --> 03:21:33.000 align:start position:0%
want to pass the storage ID by saying
03:21:33.000 --> 03:21:36.710 align:start position:0%
want to pass the storage ID by saying
upright<03:21:33.560> config<03:21:34.479> do<03:21:34.800> storage<03:21:35.319> ID<03:21:36.319> then<03:21:36.600> we
03:21:36.710 --> 03:21:36.720 align:start position:0%
upright config do storage ID then we
03:21:36.720 --> 03:21:40.349 align:start position:0%
upright config do storage ID then we
want<03:21:36.840> to<03:21:37.000> make<03:21:37.160> a<03:21:37.359> unique<03:21:37.880> ID<03:21:38.520> by<03:21:38.640> saying<03:21:39.080> id.
03:21:40.349 --> 03:21:40.359 align:start position:0%
want to make a unique ID by saying id.
03:21:40.359 --> 03:21:42.469 align:start position:0%
want to make a unique ID by saying id.
unique<03:21:41.359> and<03:21:41.479> then<03:21:41.680> want<03:21:41.840> want<03:21:41.920> to<03:21:42.040> pass<03:21:42.279> the
03:21:42.469 --> 03:21:42.479 align:start position:0%
unique and then want want to pass the
03:21:42.479 --> 03:21:45.630 align:start position:0%
unique and then want want to pass the
file<03:21:43.040> which<03:21:43.199> we<03:21:43.439> actually<03:21:43.760> want<03:21:43.960> to<03:21:44.640> upload
03:21:45.630 --> 03:21:45.640 align:start position:0%
file which we actually want to upload
03:21:45.640 --> 03:21:48.910 align:start position:0%
file which we actually want to upload
finally<03:21:46.319> we<03:21:46.439> want<03:21:46.600> to<03:21:46.920> return<03:21:47.479> the<03:21:47.920> uploaded
03:21:48.910 --> 03:21:48.920 align:start position:0%
finally we want to return the uploaded
03:21:48.920 --> 03:21:52.389 align:start position:0%
finally we want to return the uploaded
file<03:21:49.920> so<03:21:50.160> now<03:21:50.720> from<03:21:50.920> the<03:21:51.080> function<03:21:51.520> above<03:21:52.239> we
03:21:52.389 --> 03:21:52.399 align:start position:0%
file so now from the function above we
03:21:52.399 --> 03:21:54.830 align:start position:0%
file so now from the function above we
get<03:21:52.640> this<03:21:52.840> file<03:21:53.199> back<03:21:53.640> and<03:21:53.800> we<03:21:53.880> are<03:21:54.080> ready<03:21:54.439> to
03:21:54.830 --> 03:21:54.840 align:start position:0%
get this file back and we are ready to
03:21:54.840 --> 03:21:57.790 align:start position:0%
get this file back and we are ready to
attach<03:21:55.239> it<03:21:55.640> to<03:21:55.960> a<03:21:56.279> post<03:21:56.960> that<03:21:57.080> we're<03:21:57.319> about<03:21:57.520> to
03:21:57.790 --> 03:21:57.800 align:start position:0%
attach it to a post that we're about to
03:21:57.800 --> 03:22:00.469 align:start position:0%
attach it to a post that we're about to
create<03:21:58.120> in<03:21:58.239> a<03:21:58.520> database<03:21:59.520> just<03:21:59.680> to<03:21:59.840> be<03:21:59.960> sure<03:22:00.359> we
03:22:00.469 --> 03:22:00.479 align:start position:0%
create in a database just to be sure we
03:22:00.479 --> 03:22:03.469 align:start position:0%
create in a database just to be sure we
can<03:22:00.600> do<03:22:00.800> one<03:22:01.040> check<03:22:01.720> if<03:22:02.000> there<03:22:02.120> is<03:22:02.359> no<03:22:02.880> uploaded
03:22:03.469 --> 03:22:03.479 align:start position:0%
can do one check if there is no uploaded
03:22:03.479 --> 03:22:07.670 align:start position:0%
can do one check if there is no uploaded
file<03:22:04.080> throw<03:22:04.439> an<03:22:04.800> error<03:22:05.800> else<03:22:06.279> we<03:22:06.399> need<03:22:06.560> to<03:22:06.920> get
03:22:07.670 --> 03:22:07.680 align:start position:0%
file throw an error else we need to get
03:22:07.680 --> 03:22:10.910 align:start position:0%
file throw an error else we need to get
the<03:22:07.920> file<03:22:08.439> URL<03:22:09.439> so<03:22:09.600> we<03:22:09.720> can<03:22:09.840> say<03:22:10.120> const<03:22:10.640> file
03:22:10.910 --> 03:22:10.920 align:start position:0%
the file URL so we can say const file
03:22:10.920 --> 03:22:17.070 align:start position:0%
the file URL so we can say const file
URL<03:22:11.960> is<03:22:12.199> equal<03:22:12.520> to<03:22:13.520> get<03:22:14.600> file
03:22:17.070 --> 03:22:17.080 align:start position:0%
URL is equal to get file
03:22:17.080 --> 03:22:19.389 align:start position:0%
URL is equal to get file
preview<03:22:18.080> to<03:22:18.319> which<03:22:18.479> we<03:22:18.600> have<03:22:18.720> to<03:22:18.960> pass<03:22:19.239> the
03:22:19.389 --> 03:22:19.399 align:start position:0%
preview to which we have to pass the
03:22:19.399 --> 03:22:20.630 align:start position:0%
preview to which we have to pass the
uploaded
03:22:20.630 --> 03:22:20.640 align:start position:0%
uploaded
03:22:20.640 --> 03:22:23.030 align:start position:0%
uploaded
file.<03:22:21.640> dollar<03:22:22.080> sign
03:22:23.030 --> 03:22:23.040 align:start position:0%
file. dollar sign
03:22:23.040 --> 03:22:26.510 align:start position:0%
file. dollar sign
ID<03:22:24.040> and<03:22:24.279> this<03:22:24.479> get<03:22:24.800> file<03:22:25.080> preview<03:22:25.840> is<03:22:26.120> another
03:22:26.510 --> 03:22:26.520 align:start position:0%
ID and this get file preview is another
03:22:26.520 --> 03:22:28.469 align:start position:0%
ID and this get file preview is another
function<03:22:26.920> we'll<03:22:27.239> create<03:22:27.960> because<03:22:28.199> we'll<03:22:28.359> want
03:22:28.469 --> 03:22:28.479 align:start position:0%
function we'll create because we'll want
03:22:28.479 --> 03:22:31.349 align:start position:0%
function we'll create because we'll want
to<03:22:28.680> reuse<03:22:29.120> it<03:22:29.319> multiple<03:22:29.840> times<03:22:30.560> across<03:22:30.920> this
03:22:31.349 --> 03:22:31.359 align:start position:0%
to reuse it multiple times across this
03:22:31.359 --> 03:22:33.990 align:start position:0%
to reuse it multiple times across this
application<03:22:32.359> so<03:22:32.560> let's<03:22:32.760> create<03:22:33.000> a<03:22:33.120> new<03:22:33.439> export
03:22:33.990 --> 03:22:34.000 align:start position:0%
application so let's create a new export
03:22:34.000 --> 03:22:38.349 align:start position:0%
application so let's create a new export
async<03:22:35.000> function<03:22:36.000> get<03:22:36.520> file<03:22:37.199> preview<03:22:38.199> it's
03:22:38.349 --> 03:22:38.359 align:start position:0%
async function get file preview it's
03:22:38.359 --> 03:22:41.469 align:start position:0%
async function get file preview it's
going<03:22:38.560> to<03:22:38.680> get<03:22:38.920> one<03:22:39.160> program<03:22:39.800> of<03:22:40.120> file<03:22:40.520> ID<03:22:41.199> of<03:22:41.319> a
03:22:41.469 --> 03:22:41.479 align:start position:0%
going to get one program of file ID of a
03:22:41.479 --> 03:22:44.469 align:start position:0%
going to get one program of file ID of a
type<03:22:41.880> string<03:22:42.199> into<03:22:42.600> it<03:22:43.600> it's<03:22:43.800> going<03:22:43.960> to<03:22:44.120> have<03:22:44.279> a
03:22:44.469 --> 03:22:44.479 align:start position:0%
type string into it it's going to have a
03:22:44.479 --> 03:22:47.550 align:start position:0%
type string into it it's going to have a
try<03:22:44.840> and<03:22:45.319> catch<03:22:46.279> where<03:22:46.439> we<03:22:46.640> consel<03:22:47.120> Lo<03:22:47.359> the
03:22:47.550 --> 03:22:47.560 align:start position:0%
try and catch where we consel Lo the
03:22:47.560 --> 03:22:49.030 align:start position:0%
try and catch where we consel Lo the
error<03:22:48.120> in<03:22:48.279> the
03:22:49.030 --> 03:22:49.040 align:start position:0%
error in the
03:22:49.040 --> 03:22:52.990 align:start position:0%
error in the
catch<03:22:50.040> and<03:22:50.239> in<03:22:50.399> the<03:22:50.560> try<03:22:51.520> we<03:22:51.640> need<03:22:51.800> to<03:22:52.560> get<03:22:52.840> the
03:22:52.990 --> 03:22:53.000 align:start position:0%
catch and in the try we need to get the
03:22:53.000 --> 03:22:56.469 align:start position:0%
catch and in the try we need to get the
preview<03:22:53.720> so<03:22:53.880> we<03:22:54.000> can<03:22:54.120> say<03:22:54.399> const<03:22:54.880> file<03:22:55.279> URL<03:22:56.279> is
03:22:56.469 --> 03:22:56.479 align:start position:0%
preview so we can say const file URL is
03:22:56.479 --> 03:22:58.510 align:start position:0%
preview so we can say const file URL is
equal<03:22:56.800> to
03:22:58.510 --> 03:22:58.520 align:start position:0%
equal to
03:22:58.520 --> 03:23:01.550 align:start position:0%
equal to
storage.<03:22:59.520> getet<03:23:00.239> file
03:23:01.550 --> 03:23:01.560 align:start position:0%
storage. getet file
03:23:01.560 --> 03:23:05.389 align:start position:0%
storage. getet file
preview<03:23:02.560> here<03:23:02.960> we<03:23:03.120> first<03:23:03.399> need<03:23:03.560> to<03:23:03.840> pass<03:23:04.239> the
03:23:05.389 --> 03:23:05.399 align:start position:0%
preview here we first need to pass the
03:23:05.399 --> 03:23:10.349 align:start position:0%
preview here we first need to pass the
app<03:23:06.520> config<03:23:07.520> do<03:23:07.880> storage<03:23:08.640> ID<03:23:09.640> we<03:23:09.840> pass<03:23:10.160> the
03:23:10.349 --> 03:23:10.359 align:start position:0%
app config do storage ID we pass the
03:23:10.359 --> 03:23:12.389 align:start position:0%
app config do storage ID we pass the
file<03:23:10.680> ID<03:23:10.960> we<03:23:11.080> want<03:23:11.199> to<03:23:11.399> get
03:23:12.389 --> 03:23:12.399 align:start position:0%
file ID we want to get
03:23:12.399 --> 03:23:14.550 align:start position:0%
file ID we want to get
and<03:23:12.560> then<03:23:12.720> we<03:23:12.880> specify<03:23:13.399> the<03:23:13.600> width<03:23:14.199> and<03:23:14.359> the
03:23:14.550 --> 03:23:14.560 align:start position:0%
and then we specify the width and the
03:23:14.560 --> 03:23:16.349 align:start position:0%
and then we specify the width and the
height<03:23:15.239> which<03:23:15.399> in<03:23:15.560> this<03:23:15.760> case<03:23:16.000> I'm<03:23:16.120> going<03:23:16.239> to
03:23:16.349 --> 03:23:16.359 align:start position:0%
height which in this case I'm going to
03:23:16.359 --> 03:23:17.389 align:start position:0%
height which in this case I'm going to
set<03:23:16.560> to
03:23:17.389 --> 03:23:17.399 align:start position:0%
set to
03:23:17.399 --> 03:23:20.110 align:start position:0%
set to
2,000<03:23:18.399> then<03:23:18.640> we<03:23:18.840> specify<03:23:19.279> the<03:23:19.439> gravity
03:23:20.110 --> 03:23:20.120 align:start position:0%
2,000 then we specify the gravity
03:23:20.120 --> 03:23:22.110 align:start position:0%
2,000 then we specify the gravity
meaning<03:23:20.560> where<03:23:20.720> is<03:23:20.840> it<03:23:21.000> going<03:23:21.160> to<03:23:21.319> show<03:23:21.960> in
03:23:22.110 --> 03:23:22.120 align:start position:0%
meaning where is it going to show in
03:23:22.120 --> 03:23:24.389 align:start position:0%
meaning where is it going to show in
this<03:23:22.319> case<03:23:22.479> we're<03:23:22.600> going<03:23:22.720> to<03:23:22.840> say<03:23:23.160> top<03:23:24.160> and
03:23:24.389 --> 03:23:24.399 align:start position:0%
this case we're going to say top and
03:23:24.399 --> 03:23:27.309 align:start position:0%
this case we're going to say top and
finally<03:23:24.880> you<03:23:25.160> specify<03:23:25.960> the<03:23:26.160> quality<03:23:27.000> in<03:23:27.160> this
03:23:27.309 --> 03:23:27.319 align:start position:0%
finally you specify the quality in this
03:23:27.319 --> 03:23:30.229 align:start position:0%
finally you specify the quality in this
case<03:23:27.479> we're<03:23:27.600> going<03:23:27.760> to<03:23:27.880> get<03:23:28.279> 100<03:23:28.960> the<03:23:29.160> top
03:23:30.229 --> 03:23:30.239 align:start position:0%
case we're going to get 100 the top
03:23:30.239 --> 03:23:33.670 align:start position:0%
case we're going to get 100 the top
quality<03:23:31.239> finally<03:23:31.880> once<03:23:32.080> we<03:23:32.239> get<03:23:32.399> it<03:23:33.359> we<03:23:33.479> can
03:23:33.670 --> 03:23:33.680 align:start position:0%
quality finally once we get it we can
03:23:33.680 --> 03:23:36.630 align:start position:0%
quality finally once we get it we can
simply<03:23:34.520> return<03:23:35.160> a<03:23:35.439> file
03:23:36.630 --> 03:23:36.640 align:start position:0%
simply return a file
03:23:36.640 --> 03:23:39.590 align:start position:0%
simply return a file
URL<03:23:37.640> now<03:23:38.040> we<03:23:38.160> can<03:23:38.359> go<03:23:38.560> back<03:23:38.720> to<03:23:38.880> the<03:23:39.040> function
03:23:39.590 --> 03:23:39.600 align:start position:0%
URL now we can go back to the function
03:23:39.600 --> 03:23:43.990 align:start position:0%
URL now we can go back to the function
above<03:23:40.600> we<03:23:40.760> now<03:23:41.120> have<03:23:41.439> our<03:23:41.680> our<03:23:41.840> file<03:23:42.560> URL<03:23:43.560> and
03:23:43.990 --> 03:23:44.000 align:start position:0%
above we now have our our file URL and
03:23:44.000 --> 03:23:46.269 align:start position:0%
above we now have our our file URL and
just<03:23:44.120> to<03:23:44.279> be<03:23:44.399> sure<03:23:44.840> we<03:23:44.960> can<03:23:45.120> add<03:23:45.279> an<03:23:45.479> if<03:23:45.680> check
03:23:46.269 --> 03:23:46.279 align:start position:0%
just to be sure we can add an if check
03:23:46.279 --> 03:23:50.150 align:start position:0%
just to be sure we can add an if check
if<03:23:46.520> no<03:23:46.800> file<03:23:47.080> URL<03:23:47.880> throw<03:23:48.160> a<03:23:48.319> new<03:23:48.920> error<03:23:49.920> but
03:23:50.150 --> 03:23:50.160 align:start position:0%
if no file URL throw a new error but
03:23:50.160 --> 03:23:52.269 align:start position:0%
if no file URL throw a new error but
also<03:23:51.000> not<03:23:51.199> only<03:23:51.439> do<03:23:51.560> we<03:23:51.680> want<03:23:51.800> to<03:23:51.920> throw<03:23:52.160> an
03:23:52.269 --> 03:23:52.279 align:start position:0%
also not only do we want to throw an
03:23:52.279 --> 03:23:56.070 align:start position:0%
also not only do we want to throw an
error<03:23:53.279> we<03:23:53.520> also<03:23:53.800> want<03:23:53.960> to<03:23:54.520> delete<03:23:55.120> a<03:23:55.399> file
03:23:56.070 --> 03:23:56.080 align:start position:0%
error we also want to delete a file
03:23:56.080 --> 03:23:58.030 align:start position:0%
error we also want to delete a file
because<03:23:56.520> something<03:23:56.920> was<03:23:57.160> corrupted
03:23:58.030 --> 03:23:58.040 align:start position:0%
because something was corrupted
03:23:58.040 --> 03:24:00.630 align:start position:0%
because something was corrupted
something<03:23:58.399> wasn't<03:23:58.840> right<03:23:59.080> with<03:23:59.199> it<03:24:00.160> so<03:24:00.359> let's
03:24:00.630 --> 03:24:00.640 align:start position:0%
something wasn't right with it so let's
03:24:00.640 --> 03:24:02.150 align:start position:0%
something wasn't right with it so let's
create<03:24:01.040> a<03:24:01.239> new
03:24:02.150 --> 03:24:02.160 align:start position:0%
create a new
03:24:02.160 --> 03:24:06.349 align:start position:0%
create a new
function<03:24:03.239> delete<03:24:04.399> file<03:24:05.399> to<03:24:05.840> which<03:24:06.239> we're
03:24:06.349 --> 03:24:06.359 align:start position:0%
function delete file to which we're
03:24:06.359 --> 03:24:10.590 align:start position:0%
function delete file to which we're
going<03:24:06.479> to<03:24:06.760> pass<03:24:07.199> the<03:24:07.640> uploaded
03:24:10.590 --> 03:24:10.600 align:start position:0%
03:24:10.600 --> 03:24:14.950 align:start position:0%
file<03:24:11.880> do<03:24:12.399> dollar<03:24:12.880> sign
03:24:14.950 --> 03:24:14.960 align:start position:0%
file do dollar sign
03:24:14.960 --> 03:24:17.550 align:start position:0%
file do dollar sign
ID<03:24:15.960> there<03:24:16.120> we<03:24:16.319> go<03:24:16.600> so<03:24:16.760> we're<03:24:17.000> thinking<03:24:17.279> up
03:24:17.550 --> 03:24:17.560 align:start position:0%
ID there we go so we're thinking up
03:24:17.560 --> 03:24:19.750 align:start position:0%
ID there we go so we're thinking up
front<03:24:18.000> if<03:24:18.160> something<03:24:18.479> was<03:24:18.680> corrupted<03:24:19.439> we<03:24:19.640> want
03:24:19.750 --> 03:24:19.760 align:start position:0%
front if something was corrupted we want
03:24:19.760 --> 03:24:22.790 align:start position:0%
front if something was corrupted we want
to<03:24:19.920> delete<03:24:20.359> the<03:24:20.520> previous<03:24:21.239> file<03:24:22.239> and<03:24:22.560> let's
03:24:22.790 --> 03:24:22.800 align:start position:0%
to delete the previous file and let's
03:24:22.800 --> 03:24:26.189 align:start position:0%
to delete the previous file and let's
create<03:24:23.120> this<03:24:23.520> function<03:24:24.520> export<03:24:25.120> async
03:24:26.189 --> 03:24:26.199 align:start position:0%
create this function export async
03:24:26.199 --> 03:24:29.870 align:start position:0%
create this function export async
function<03:24:27.199> delete
03:24:29.870 --> 03:24:29.880 align:start position:0%
function delete
03:24:29.880 --> 03:24:33.750 align:start position:0%
function delete
file<03:24:30.880> which<03:24:31.120> once<03:24:31.399> again<03:24:31.840> accepts<03:24:32.199> a<03:24:32.399> file<03:24:32.760> ID
03:24:33.750 --> 03:24:33.760 align:start position:0%
file which once again accepts a file ID
03:24:33.760 --> 03:24:37.750 align:start position:0%
file which once again accepts a file ID
of<03:24:34.000> a<03:24:34.160> type<03:24:34.439> string<03:24:35.399> of<03:24:35.640> a<03:24:35.840> file<03:24:36.080> we<03:24:36.199> want<03:24:36.319> to
03:24:37.750 --> 03:24:37.760 align:start position:0%
of a type string of a file we want to
03:24:37.760 --> 03:24:40.269 align:start position:0%
of a type string of a file we want to
create<03:24:38.760> it's<03:24:38.920> going<03:24:39.040> to<03:24:39.160> be<03:24:39.279> a<03:24:39.439> try<03:24:39.680> and<03:24:39.960> catch
03:24:40.269 --> 03:24:40.279 align:start position:0%
create it's going to be a try and catch
03:24:40.279 --> 03:24:43.269 align:start position:0%
create it's going to be a try and catch
block<03:24:41.120> with<03:24:41.600> the<03:24:41.760> Consol<03:24:42.199> log<03:24:42.439> of<03:24:42.560> the<03:24:42.680> error
03:24:43.269 --> 03:24:43.279 align:start position:0%
block with the Consol log of the error
03:24:43.279 --> 03:24:46.870 align:start position:0%
block with the Consol log of the error
right<03:24:43.479> here
03:24:46.870 --> 03:24:46.880 align:start position:0%
03:24:46.880 --> 03:24:51.710 align:start position:0%
below<03:24:47.880> error<03:24:48.760> and<03:24:48.920> then<03:24:49.199> here<03:24:49.680> we<03:24:49.760> can<03:24:49.880> say
03:24:51.710 --> 03:24:51.720 align:start position:0%
below error and then here we can say
03:24:51.720 --> 03:24:56.550 align:start position:0%
below error and then here we can say
await<03:24:53.160> storage.<03:24:54.160> delete<03:24:54.960> file<03:24:55.960> to<03:24:56.199> which<03:24:56.359> we
03:24:56.550 --> 03:24:56.560 align:start position:0%
await storage. delete file to which we
03:24:56.560 --> 03:25:00.590 align:start position:0%
await storage. delete file to which we
pass<03:24:56.840> the<03:24:57.000> upright<03:24:58.199> config<03:24:59.199> storage<03:24:59.640> ID<03:25:00.439> and
03:25:00.590 --> 03:25:00.600 align:start position:0%
pass the upright config storage ID and
03:25:00.600 --> 03:25:02.429 align:start position:0%
pass the upright config storage ID and
the<03:25:00.760> file<03:25:01.040> ID<03:25:01.439> of<03:25:01.600> the<03:25:01.760> file<03:25:01.960> we<03:25:02.080> want<03:25:02.199> to
03:25:02.429 --> 03:25:02.439 align:start position:0%
the file ID of the file we want to
03:25:02.439 --> 03:25:05.670 align:start position:0%
the file ID of the file we want to
delete<03:25:03.439> and<03:25:03.560> we<03:25:03.680> can<03:25:04.000> return<03:25:04.520> an<03:25:04.840> object<03:25:05.520> with
03:25:05.670 --> 03:25:05.680 align:start position:0%
delete and we can return an object with
03:25:05.680 --> 03:25:08.429 align:start position:0%
delete and we can return an object with
a<03:25:06.120> status<03:25:07.120> of
03:25:08.429 --> 03:25:08.439 align:start position:0%
a status of
03:25:08.439 --> 03:25:11.510 align:start position:0%
a status of
okay<03:25:09.439> there<03:25:09.600> we<03:25:09.800> go<03:25:10.399> so<03:25:10.600> now<03:25:10.720> we're<03:25:10.920> also<03:25:11.160> dele
03:25:11.510 --> 03:25:11.520 align:start position:0%
okay there we go so now we're also dele
03:25:11.520 --> 03:25:14.469 align:start position:0%
okay there we go so now we're also dele
deleting<03:25:11.840> a<03:25:12.359> file<03:25:13.359> and<03:25:13.560> now<03:25:13.920> if<03:25:14.120> we<03:25:14.279> have
03:25:14.469 --> 03:25:14.479 align:start position:0%
deleting a file and now if we have
03:25:14.479 --> 03:25:17.550 align:start position:0%
deleting a file and now if we have
successfully<03:25:15.080> created<03:25:15.439> a<03:25:15.640> file<03:25:16.319> if<03:25:16.439> it<03:25:16.600> isn't
03:25:17.550 --> 03:25:17.560 align:start position:0%
successfully created a file if it isn't
03:25:17.560 --> 03:25:20.389 align:start position:0%
successfully created a file if it isn't
corrupted<03:25:18.560> then<03:25:19.000> we<03:25:19.120> are<03:25:19.520> almost<03:25:19.960> ready<03:25:20.199> to
03:25:20.389 --> 03:25:20.399 align:start position:0%
corrupted then we are almost ready to
03:25:20.399 --> 03:25:23.309 align:start position:0%
corrupted then we are almost ready to
create<03:25:20.680> a<03:25:20.920> post<03:25:21.560> but<03:25:21.800> first<03:25:22.279> we<03:25:22.399> have<03:25:22.520> to<03:25:22.760> deal
03:25:23.309 --> 03:25:23.319 align:start position:0%
create a post but first we have to deal
03:25:23.319 --> 03:25:27.790 align:start position:0%
create a post but first we have to deal
with<03:25:23.479> the<03:25:23.800> tags<03:25:24.800> so<03:25:24.960> we<03:25:25.080> need<03:25:25.239> to
03:25:27.790 --> 03:25:27.800 align:start position:0%
03:25:27.800 --> 03:25:32.110 align:start position:0%
convert<03:25:28.800> tags<03:25:29.640> into<03:25:30.040> an<03:25:30.600> array<03:25:31.600> we<03:25:31.720> can<03:25:31.880> do
03:25:32.110 --> 03:25:32.120 align:start position:0%
convert tags into an array we can do
03:25:32.120 --> 03:25:35.510 align:start position:0%
convert tags into an array we can do
that<03:25:32.520> by<03:25:32.640> saying<03:25:33.000> cons<03:25:33.479> tags<03:25:34.199> is<03:25:34.439> equal<03:25:34.760> to
03:25:35.510 --> 03:25:35.520 align:start position:0%
that by saying cons tags is equal to
03:25:35.520 --> 03:25:39.269 align:start position:0%
that by saying cons tags is equal to
post.<03:25:36.359> tags<03:25:37.080> question<03:25:37.479> mark.
03:25:39.269 --> 03:25:39.279 align:start position:0%
post. tags question mark.
03:25:39.279 --> 03:25:41.950 align:start position:0%
post. tags question mark.
replace<03:25:40.279> we<03:25:40.399> want<03:25:40.520> to<03:25:40.680> replace<03:25:41.520> all<03:25:41.640> of<03:25:41.800> the
03:25:41.950 --> 03:25:41.960 align:start position:0%
replace we want to replace all of the
03:25:41.960 --> 03:25:44.790 align:start position:0%
replace we want to replace all of the
empty<03:25:42.399> strings<03:25:43.399> so<03:25:43.560> we<03:25:43.680> can<03:25:43.840> do<03:25:44.160> a<03:25:44.359> regular
03:25:44.790 --> 03:25:44.800 align:start position:0%
empty strings so we can do a regular
03:25:44.800 --> 03:25:48.030 align:start position:0%
empty strings so we can do a regular
expression<03:25:45.720> like<03:25:46.160> so<03:25:47.160> so<03:25:47.399> globally<03:25:47.840> we're
03:25:48.030 --> 03:25:48.040 align:start position:0%
expression like so so globally we're
03:25:48.040 --> 03:25:50.309 align:start position:0%
expression like so so globally we're
looking<03:25:48.239> for<03:25:48.439> all<03:25:48.680> the<03:25:48.960> spaces<03:25:49.960> and<03:25:50.120> we
03:25:50.309 --> 03:25:50.319 align:start position:0%
looking for all the spaces and we
03:25:50.319 --> 03:25:52.950 align:start position:0%
looking for all the spaces and we
replace<03:25:50.680> it<03:25:50.880> with<03:25:51.000> an<03:25:51.160> empty<03:25:51.640> space<03:25:52.640> and<03:25:52.800> then
03:25:52.950 --> 03:25:52.960 align:start position:0%
replace it with an empty space and then
03:25:52.960 --> 03:25:55.630 align:start position:0%
replace it with an empty space and then
we<03:25:53.120> split<03:25:53.520> them<03:25:53.960> by<03:25:54.120> a<03:25:54.359> comma<03:25:55.120> so<03:25:55.359> this<03:25:55.439> will
03:25:55.630 --> 03:25:55.640 align:start position:0%
we split them by a comma so this will
03:25:55.640 --> 03:25:59.309 align:start position:0%
we split them by a comma so this will
ensure<03:25:56.359> to<03:25:56.600> then<03:25:56.840> split<03:25:57.439> all<03:25:57.600> of<03:25:57.720> our<03:25:57.960> tags<03:25:58.920> or
03:25:59.309 --> 03:25:59.319 align:start position:0%
ensure to then split all of our tags or
03:25:59.319 --> 03:26:01.189 align:start position:0%
ensure to then split all of our tags or
we<03:25:59.439> can<03:25:59.560> say<03:25:59.880> just<03:26:00.000> an<03:26:00.160> empty
03:26:01.189 --> 03:26:01.199 align:start position:0%
we can say just an empty
03:26:01.199 --> 03:26:05.030 align:start position:0%
we can say just an empty
string<03:26:02.199> and<03:26:02.479> finally<03:26:03.040> we<03:26:03.199> are<03:26:03.439> ready<03:26:04.000> to<03:26:04.680> save
03:26:05.030 --> 03:26:05.040 align:start position:0%
string and finally we are ready to save
03:26:05.040 --> 03:26:08.030 align:start position:0%
string and finally we are ready to save
the<03:26:05.199> new<03:26:05.479> post<03:26:06.080> database<03:26:07.000> by<03:26:07.160> saying<03:26:07.520> const
03:26:08.030 --> 03:26:08.040 align:start position:0%
the new post database by saying const
03:26:08.040 --> 03:26:12.070 align:start position:0%
the new post database by saying const
new<03:26:08.760> post<03:26:09.760> is<03:26:10.160> equal<03:26:10.520> to
03:26:12.070 --> 03:26:12.080 align:start position:0%
new post is equal to
03:26:12.080 --> 03:26:13.870 align:start position:0%
new post is equal to
await
03:26:13.870 --> 03:26:13.880 align:start position:0%
await
03:26:13.880 --> 03:26:16.510 align:start position:0%
await
databases.<03:26:14.880> create
03:26:16.510 --> 03:26:16.520 align:start position:0%
databases. create
03:26:16.520 --> 03:26:19.710 align:start position:0%
databases. create
document<03:26:17.520> first<03:26:17.880> we<03:26:18.080> pass<03:26:18.479> the<03:26:18.760> database<03:26:19.319> ID
03:26:19.710 --> 03:26:19.720 align:start position:0%
document first we pass the database ID
03:26:19.720 --> 03:26:22.269 align:start position:0%
document first we pass the database ID
we<03:26:19.800> want<03:26:19.920> to<03:26:20.120> update<03:26:20.760> so<03:26:21.040> ight<03:26:21.560> config
03:26:22.269 --> 03:26:22.279 align:start position:0%
we want to update so ight config
03:26:22.279 --> 03:26:24.910 align:start position:0%
we want to update so ight config
database<03:26:22.840> ID<03:26:23.800> then<03:26:24.120> we<03:26:24.359> pass<03:26:24.680> which
03:26:24.910 --> 03:26:24.920 align:start position:0%
database ID then we pass which
03:26:24.920 --> 03:26:26.870 align:start position:0%
database ID then we pass which
collection<03:26:25.399> do<03:26:25.560> we<03:26:25.680> want<03:26:25.760> to<03:26:25.960> update<03:26:26.680> by
03:26:26.870 --> 03:26:26.880 align:start position:0%
collection do we want to update by
03:26:26.880 --> 03:26:29.469 align:start position:0%
collection do we want to update by
passing<03:26:27.199> the<03:26:27.520> upright<03:26:28.040> config<03:26:28.960> do
03:26:29.469 --> 03:26:29.479 align:start position:0%
passing the upright config do
03:26:29.479 --> 03:26:30.590 align:start position:0%
passing the upright config do
postcollection
03:26:30.590 --> 03:26:30.600 align:start position:0%
postcollection
03:26:30.600 --> 03:26:34.950 align:start position:0%
postcollection
ID<03:26:31.600> we<03:26:31.800> Define<03:26:32.279> the<03:26:32.560> unique<03:26:33.560> ID<03:26:34.560> that<03:26:34.680> we<03:26:34.800> want
03:26:34.950 --> 03:26:34.960 align:start position:0%
ID we Define the unique ID that we want
03:26:34.960 --> 03:26:39.630 align:start position:0%
ID we Define the unique ID that we want
to<03:26:35.479> create<03:26:36.479> meaning<03:26:36.840> the<03:26:37.199> post<03:26:38.199> like<03:26:38.520> so<03:26:39.520> and
03:26:39.630 --> 03:26:39.640 align:start position:0%
to create meaning the post like so and
03:26:39.640 --> 03:26:41.349 align:start position:0%
to create meaning the post like so and
then<03:26:39.800> we<03:26:39.880> need<03:26:40.040> to<03:26:40.239> pass<03:26:40.520> the<03:26:40.640> entire<03:26:41.040> object
03:26:41.349 --> 03:26:41.359 align:start position:0%
then we need to pass the entire object
03:26:41.359 --> 03:26:43.830 align:start position:0%
then we need to pass the entire object
object<03:26:41.720> containing<03:26:42.239> all<03:26:42.439> the<03:26:42.640> data<03:26:43.359> about<03:26:43.640> the
03:26:43.830 --> 03:26:43.840 align:start position:0%
object containing all the data about the
03:26:43.840 --> 03:26:47.309 align:start position:0%
object containing all the data about the
post<03:26:44.640> such<03:26:44.840> as<03:26:45.080> creator<03:26:46.040> of<03:26:46.199> a<03:26:46.439> type<03:26:46.680> post.
03:26:47.309 --> 03:26:47.319 align:start position:0%
post such as creator of a type post.
03:26:47.319 --> 03:26:51.550 align:start position:0%
post such as creator of a type post.
user<03:26:48.000> ID<03:26:49.000> the<03:26:49.640> caption<03:26:50.640> which<03:26:50.800> is<03:26:50.920> going<03:26:51.120> to<03:26:51.279> be
03:26:51.550 --> 03:26:51.560 align:start position:0%
user ID the caption which is going to be
03:26:51.560 --> 03:26:53.950 align:start position:0%
user ID the caption which is going to be
of<03:26:51.800> a<03:26:52.040> post.
03:26:53.950 --> 03:26:53.960 align:start position:0%
of a post.
03:26:53.960 --> 03:26:57.349 align:start position:0%
of a post.
caption<03:26:54.960> image<03:26:55.279> URL<03:26:56.160> which<03:26:56.279> is<03:26:56.439> going<03:26:56.600> to<03:26:56.760> be<03:26:57.000> a
03:26:57.349 --> 03:26:57.359 align:start position:0%
caption image URL which is going to be a
03:26:57.359 --> 03:26:58.429 align:start position:0%
caption image URL which is going to be a
file
03:26:58.429 --> 03:26:58.439 align:start position:0%
file
03:26:58.439 --> 03:27:01.429 align:start position:0%
file
URL<03:26:59.439> image<03:26:59.880> ID<03:27:00.640> which<03:27:00.760> is<03:27:00.880> going<03:27:01.080> to<03:27:01.199> be
03:27:01.429 --> 03:27:01.439 align:start position:0%
URL image ID which is going to be
03:27:01.439 --> 03:27:04.510 align:start position:0%
URL image ID which is going to be
uploaded<03:27:02.239> file.<03:27:03.239> doar<03:27:03.560> Sun
03:27:04.510 --> 03:27:04.520 align:start position:0%
uploaded file. doar Sun
03:27:04.520 --> 03:27:09.229 align:start position:0%
uploaded file. doar Sun
ID<03:27:05.520> location<03:27:06.520> which<03:27:06.640> is<03:27:06.760> going<03:27:06.960> to<03:27:07.120> be<03:27:07.600> post.
03:27:09.229 --> 03:27:09.239 align:start position:0%
ID location which is going to be post.
03:27:09.239 --> 03:27:12.229 align:start position:0%
ID location which is going to be post.
location<03:27:10.239> and<03:27:10.399> then<03:27:10.680> tags<03:27:11.640> which<03:27:11.760> is<03:27:11.920> going<03:27:12.120> to
03:27:12.229 --> 03:27:12.239 align:start position:0%
location and then tags which is going to
03:27:12.239 --> 03:27:13.870 align:start position:0%
location and then tags which is going to
be<03:27:12.399> set<03:27:13.000> to
03:27:13.870 --> 03:27:13.880 align:start position:0%
be set to
03:27:13.880 --> 03:27:17.670 align:start position:0%
be set to
tags<03:27:14.880> and<03:27:15.120> now<03:27:16.120> this<03:27:16.560> is<03:27:16.720> saving<03:27:17.279> this<03:27:17.439> new
03:27:17.670 --> 03:27:17.680 align:start position:0%
tags and now this is saving this new
03:27:17.680 --> 03:27:18.910 align:start position:0%
tags and now this is saving this new
Post<03:27:18.000> in<03:27:18.160> the
03:27:18.910 --> 03:27:18.920 align:start position:0%
Post in the
03:27:18.920 --> 03:27:22.030 align:start position:0%
Post in the
database<03:27:19.920> finally<03:27:20.880> we<03:27:21.000> want<03:27:21.160> to<03:27:21.359> check<03:27:21.760> if<03:27:21.920> the
03:27:22.030 --> 03:27:22.040 align:start position:0%
database finally we want to check if the
03:27:22.040 --> 03:27:26.269 align:start position:0%
database finally we want to check if the
new<03:27:22.279> post<03:27:22.640> was<03:27:22.880> created<03:27:23.640> so<03:27:24.000> if<03:27:24.560> no<03:27:24.880> new<03:27:25.279> Post
03:27:26.269 --> 03:27:26.279 align:start position:0%
new post was created so if no new Post
03:27:26.279 --> 03:27:29.110 align:start position:0%
new post was created so if no new Post
in<03:27:26.560> that<03:27:26.840> case<03:27:27.279> we<03:27:27.560> again<03:27:28.080> want<03:27:28.239> to<03:27:28.520> delete
03:27:29.110 --> 03:27:29.120 align:start position:0%
in that case we again want to delete
03:27:29.120 --> 03:27:31.870 align:start position:0%
in that case we again want to delete
this<03:27:29.399> file<03:27:30.160> so<03:27:30.319> we<03:27:30.399> can<03:27:30.560> call<03:27:30.800> a<03:27:31.040> wait<03:27:31.359> delete
03:27:31.870 --> 03:27:31.880 align:start position:0%
this file so we can call a wait delete
03:27:31.880 --> 03:27:34.429 align:start position:0%
this file so we can call a wait delete
file<03:27:32.680> and<03:27:32.800> we<03:27:32.920> want<03:27:33.040> to<03:27:33.279> pass<03:27:33.560> the<03:27:33.720> uploaded
03:27:34.429 --> 03:27:34.439 align:start position:0%
file and we want to pass the uploaded
03:27:34.439 --> 03:27:37.070 align:start position:0%
file and we want to pass the uploaded
file.<03:27:35.439> doar<03:27:35.760> sign<03:27:36.000> ID<03:27:36.560> because<03:27:36.800> something
03:27:37.070 --> 03:27:37.080 align:start position:0%
file. doar sign ID because something
03:27:37.080 --> 03:27:40.110 align:start position:0%
file. doar sign ID because something
went<03:27:37.359> wrong<03:27:38.359> and<03:27:38.479> we<03:27:38.600> want<03:27:38.680> to<03:27:38.880> throw<03:27:39.399> a<03:27:39.600> new
03:27:40.110 --> 03:27:40.120 align:start position:0%
went wrong and we want to throw a new
03:27:40.120 --> 03:27:42.670 align:start position:0%
went wrong and we want to throw a new
error<03:27:40.960> finally<03:27:41.279> finally<03:27:41.840> if<03:27:42.080> all<03:27:42.279> of<03:27:42.479> that
03:27:42.670 --> 03:27:42.680 align:start position:0%
error finally finally if all of that
03:27:42.680 --> 03:27:47.349 align:start position:0%
error finally finally if all of that
succeeded<03:27:43.640> we<03:27:43.760> can<03:27:44.160> return<03:27:44.840> a<03:27:45.040> new<03:27:46.160> post<03:27:47.160> and
03:27:47.349 --> 03:27:47.359 align:start position:0%
succeeded we can return a new post and
03:27:47.359 --> 03:27:49.990 align:start position:0%
succeeded we can return a new post and
with<03:27:47.600> this<03:27:48.120> we're<03:27:48.399> done<03:27:48.800> with<03:27:48.960> the<03:27:49.160> creation
03:27:49.990 --> 03:27:50.000 align:start position:0%
with this we're done with the creation
03:27:50.000 --> 03:27:52.389 align:start position:0%
with this we're done with the creation
of<03:27:50.160> our<03:27:50.399> post<03:27:51.239> we're<03:27:51.439> building<03:27:51.760> a<03:27:51.960> production
03:27:52.389 --> 03:27:52.399 align:start position:0%
of our post we're building a production
03:27:52.399 --> 03:27:54.469 align:start position:0%
of our post we're building a production
ready<03:27:52.720> application<03:27:53.479> so<03:27:53.680> we<03:27:53.800> have<03:27:53.920> a<03:27:54.080> lot<03:27:54.279> of
03:27:54.469 --> 03:27:54.479 align:start position:0%
ready application so we have a lot of
03:27:54.479 --> 03:27:56.550 align:start position:0%
ready application so we have a lot of
checks<03:27:55.120> we<03:27:55.239> need<03:27:55.359> to<03:27:55.600> ensure<03:27:56.000> that<03:27:56.239> everything
03:27:56.550 --> 03:27:56.560 align:start position:0%
checks we need to ensure that everything
03:27:56.560 --> 03:27:58.870 align:start position:0%
checks we need to ensure that everything
is<03:27:56.680> going<03:27:57.000> well<03:27:57.720> if<03:27:57.880> it<03:27:58.000> doesn't<03:27:58.319> go<03:27:58.520> well<03:27:58.760> we
03:27:58.870 --> 03:27:58.880 align:start position:0%
is going well if it doesn't go well we
03:27:58.880 --> 03:28:01.030 align:start position:0%
is going well if it doesn't go well we
have<03:27:58.960> to<03:27:59.120> delete<03:27:59.520> our<03:27:59.720> file<03:28:00.160> not<03:28:00.359> to<03:28:00.560> overload
03:28:01.030 --> 03:28:01.040 align:start position:0%
have to delete our file not to overload
03:28:01.040 --> 03:28:04.510 align:start position:0%
have to delete our file not to overload
our<03:28:01.199> storage<03:28:02.120> right<03:28:02.920> so<03:28:03.279> this<03:28:03.560> is<03:28:03.800> now<03:28:04.239> our
03:28:04.510 --> 03:28:04.520 align:start position:0%
our storage right so this is now our
03:28:04.520 --> 03:28:07.550 align:start position:0%
our storage right so this is now our
function<03:28:05.160> that<03:28:05.319> will<03:28:05.560> create<03:28:05.840> a<03:28:06.239> post<03:28:07.239> now<03:28:07.399> we
03:28:07.550 --> 03:28:07.560 align:start position:0%
function that will create a post now we
03:28:07.560 --> 03:28:09.550 align:start position:0%
function that will create a post now we
have<03:28:07.640> to<03:28:07.840> call<03:28:08.199> this<03:28:08.359> create<03:28:08.760> post<03:28:09.239> as<03:28:09.359> a
03:28:09.550 --> 03:28:09.560 align:start position:0%
have to call this create post as a
03:28:09.560 --> 03:28:12.389 align:start position:0%
have to call this create post as a
mutation<03:28:10.560> so<03:28:10.760> we<03:28:10.920> go<03:28:11.359> back<03:28:11.560> to<03:28:11.720> our<03:28:11.920> react
03:28:12.389 --> 03:28:12.399 align:start position:0%
mutation so we go back to our react
03:28:12.399 --> 03:28:14.670 align:start position:0%
mutation so we go back to our react
query<03:28:13.279> queries<03:28:13.760> and
03:28:14.670 --> 03:28:14.680 align:start position:0%
query queries and
03:28:14.680 --> 03:28:17.070 align:start position:0%
query queries and
mutations<03:28:15.680> we<03:28:15.800> can<03:28:16.000> collapse<03:28:16.479> the<03:28:16.640> existing
03:28:17.070 --> 03:28:17.080 align:start position:0%
mutations we can collapse the existing
03:28:17.080 --> 03:28:20.150 align:start position:0%
mutations we can collapse the existing
ones<03:28:17.720> and<03:28:17.960> create<03:28:18.359> a<03:28:18.560> new<03:28:18.760> one<03:28:19.239> right<03:28:19.479> here
03:28:20.150 --> 03:28:20.160 align:start position:0%
ones and create a new one right here
03:28:20.160 --> 03:28:25.309 align:start position:0%
ones and create a new one right here
below<03:28:21.160> we<03:28:21.279> can<03:28:21.640> export<03:28:22.560> const<03:28:23.560> use<03:28:24.239> create
03:28:25.309 --> 03:28:25.319 align:start position:0%
below we can export const use create
03:28:25.319 --> 03:28:28.910 align:start position:0%
below we can export const use create
post<03:28:26.319> then<03:28:26.680> we<03:28:26.840> want<03:28:27.000> to<03:28:27.239> say<03:28:27.560> as<03:28:27.920> before
03:28:28.910 --> 03:28:28.920 align:start position:0%
post then we want to say as before
03:28:28.920 --> 03:28:33.150 align:start position:0%
post then we want to say as before
return<03:28:29.760> use<03:28:30.640> mutation<03:28:31.640> to<03:28:32.000> which<03:28:32.479> we<03:28:32.720> pass<03:28:33.000> the
03:28:33.150 --> 03:28:33.160 align:start position:0%
return use mutation to which we pass the
03:28:33.160 --> 03:28:36.429 align:start position:0%
return use mutation to which we pass the
mutation<03:28:33.840> FN<03:28:34.520> as<03:28:34.680> in<03:28:35.000> function<03:28:36.000> that's<03:28:36.239> going
03:28:36.429 --> 03:28:36.439 align:start position:0%
mutation FN as in function that's going
03:28:36.439 --> 03:28:41.990 align:start position:0%
mutation FN as in function that's going
to<03:28:36.840> get<03:28:37.040> in<03:28:37.199> a<03:28:37.399> post<03:28:38.239> of<03:28:38.399> a<03:28:38.640> type<03:28:39.080> I<03:28:39.439> new<03:28:40.199> post
03:28:41.990 --> 03:28:42.000 align:start position:0%
to get in a post of a type I new post
03:28:42.000 --> 03:28:45.110 align:start position:0%
to get in a post of a type I new post
and<03:28:42.239> we<03:28:42.359> want<03:28:42.479> to<03:28:42.680> call<03:28:43.319> a<03:28:43.600> create<03:28:44.160> post<03:28:44.840> to
03:28:45.110 --> 03:28:45.120 align:start position:0%
and we want to call a create post to
03:28:45.120 --> 03:28:47.389 align:start position:0%
and we want to call a create post to
which<03:28:45.319> we<03:28:45.520> pass<03:28:45.840> that<03:28:46.120> post<03:28:46.880> of<03:28:47.040> course<03:28:47.239> we
03:28:47.389 --> 03:28:47.399 align:start position:0%
which we pass that post of course we
03:28:47.399 --> 03:28:49.429 align:start position:0%
which we pass that post of course we
have<03:28:47.520> to<03:28:47.680> import<03:28:48.040> the<03:28:48.199> create<03:28:48.600> post<03:28:49.239> from
03:28:49.429 --> 03:28:49.439 align:start position:0%
have to import the create post from
03:28:49.439 --> 03:28:52.910 align:start position:0%
have to import the create post from
where<03:28:49.600> we<03:28:49.760> just<03:28:49.960> created<03:28:50.359> it<03:28:50.880> at<03:28:51.319> upright
03:28:52.910 --> 03:28:52.920 align:start position:0%
where we just created it at upright
03:28:52.920 --> 03:28:56.830 align:start position:0%
where we just created it at upright
API<03:28:53.920> and<03:28:54.080> also<03:28:54.359> the<03:28:54.560> I<03:28:54.800> new<03:28:55.080> post<03:28:55.600> from<03:28:55.840> at/
03:28:56.830 --> 03:28:56.840 align:start position:0%
API and also the I new post from at/
03:28:56.840 --> 03:28:59.309 align:start position:0%
API and also the I new post from at/
types<03:28:57.800> but<03:28:58.000> now<03:28:58.359> this<03:28:58.479> is<03:28:58.680> not<03:28:58.880> the<03:28:59.000> only<03:28:59.199> thing
03:28:59.309 --> 03:28:59.319 align:start position:0%
types but now this is not the only thing
03:28:59.319 --> 03:29:01.830 align:start position:0%
types but now this is not the only thing
we<03:28:59.439> want<03:28:59.560> to<03:28:59.720> do<03:29:00.080> once<03:29:00.239> we<03:29:00.399> create<03:29:00.640> a<03:29:00.840> post<03:29:01.640> we
03:29:01.830 --> 03:29:01.840 align:start position:0%
we want to do once we create a post we
03:29:01.840 --> 03:29:03.950 align:start position:0%
we want to do once we create a post we
also<03:29:02.080> want<03:29:02.199> to<03:29:02.439> query<03:29:03.000> all<03:29:03.279> the<03:29:03.479> existing
03:29:03.950 --> 03:29:03.960 align:start position:0%
also want to query all the existing
03:29:03.960 --> 03:29:05.790 align:start position:0%
also want to query all the existing
posts<03:29:04.520> so<03:29:04.680> we<03:29:04.800> can<03:29:04.920> show<03:29:05.239> them<03:29:05.359> on<03:29:05.479> the
03:29:05.790 --> 03:29:05.800 align:start position:0%
posts so we can show them on the
03:29:05.800 --> 03:29:10.150 align:start position:0%
posts so we can show them on the
homepage<03:29:06.800> so<03:29:07.000> let's<03:29:07.160> say<03:29:07.439> const<03:29:08.399> query<03:29:09.160> client
03:29:10.150 --> 03:29:10.160 align:start position:0%
homepage so let's say const query client
03:29:10.160 --> 03:29:14.550 align:start position:0%
homepage so let's say const query client
is<03:29:10.439> equal<03:29:10.760> to<03:29:11.520> use<03:29:12.080> Query<03:29:12.600> client<03:29:13.560> and<03:29:13.800> then
03:29:14.550 --> 03:29:14.560 align:start position:0%
is equal to use Query client and then
03:29:14.560 --> 03:29:17.030 align:start position:0%
is equal to use Query client and then
right<03:29:14.840> here<03:29:15.279> after<03:29:15.560> the<03:29:15.720> mutation<03:29:16.279> function
03:29:17.030 --> 03:29:17.040 align:start position:0%
right here after the mutation function
03:29:17.040 --> 03:29:20.550 align:start position:0%
right here after the mutation function
we<03:29:17.160> can<03:29:17.319> say<03:29:17.640> on<03:29:18.600> success<03:29:19.600> so<03:29:19.880> what's<03:29:20.080> going<03:29:20.279> to
03:29:20.550 --> 03:29:20.560 align:start position:0%
we can say on success so what's going to
03:29:20.560 --> 03:29:23.070 align:start position:0%
we can say on success so what's going to
happen<03:29:21.199> on<03:29:21.520> success<03:29:22.479> we<03:29:22.640> create<03:29:22.920> this
03:29:23.070 --> 03:29:23.080 align:start position:0%
happen on success we create this
03:29:23.080 --> 03:29:25.950 align:start position:0%
happen on success we create this
callback<03:29:23.560> function<03:29:24.439> and<03:29:24.600> say<03:29:24.920> query
03:29:25.950 --> 03:29:25.960 align:start position:0%
callback function and say query
03:29:25.960 --> 03:29:27.950 align:start position:0%
callback function and say query
client.
03:29:27.950 --> 03:29:27.960 align:start position:0%
client.
03:29:27.960 --> 03:29:29.750 align:start position:0%
client.
invalidate
03:29:29.750 --> 03:29:29.760 align:start position:0%
invalidate
03:29:29.760 --> 03:29:32.750 align:start position:0%
invalidate
queries<03:29:30.760> and<03:29:30.960> here<03:29:31.120> we<03:29:31.239> can<03:29:31.479> pass<03:29:31.720> the<03:29:31.880> filters
03:29:32.750 --> 03:29:32.760 align:start position:0%
queries and here we can pass the filters
03:29:32.760 --> 03:29:35.550 align:start position:0%
queries and here we can pass the filters
based<03:29:33.160> off<03:29:33.359> of<03:29:33.600> which<03:29:34.080> we<03:29:34.199> want<03:29:34.319> to<03:29:34.600> invalidate
03:29:35.550 --> 03:29:35.560 align:start position:0%
based off of which we want to invalidate
03:29:35.560 --> 03:29:38.630 align:start position:0%
based off of which we want to invalidate
the<03:29:35.920> query<03:29:36.920> specifically<03:29:37.720> we<03:29:37.880> want<03:29:38.000> to<03:29:38.199> choose
03:29:38.630 --> 03:29:38.640 align:start position:0%
the query specifically we want to choose
03:29:38.640 --> 03:29:41.189 align:start position:0%
the query specifically we want to choose
a<03:29:38.880> query<03:29:39.359> key<03:29:40.279> which<03:29:40.399> is<03:29:40.520> going<03:29:40.680> to<03:29:40.800> be
03:29:41.189 --> 03:29:41.199 align:start position:0%
a query key which is going to be
03:29:41.199 --> 03:29:42.990 align:start position:0%
a query key which is going to be
something<03:29:41.520> like
03:29:42.990 --> 03:29:43.000 align:start position:0%
something like
03:29:43.000 --> 03:29:46.990 align:start position:0%
something like
posts<03:29:44.000> or<03:29:44.359> rather<03:29:44.920> in<03:29:45.160> this<03:29:45.359> case<03:29:45.680> not<03:29:46.040> posts
03:29:46.990 --> 03:29:47.000 align:start position:0%
posts or rather in this case not posts
03:29:47.000 --> 03:29:52.590 align:start position:0%
posts or rather in this case not posts
but<03:29:47.560> get<03:29:48.920> recent<03:29:50.319> posts<03:29:51.319> why<03:29:51.600> is<03:29:51.840> that<03:29:52.279> and<03:29:52.479> why
03:29:52.590 --> 03:29:52.600 align:start position:0%
but get recent posts why is that and why
03:29:52.600 --> 03:29:54.870 align:start position:0%
but get recent posts why is that and why
do<03:29:52.720> we<03:29:52.840> need<03:29:52.960> to<03:29:53.120> invalidate<03:29:53.720> it<03:29:54.399> well<03:29:54.640> that's
03:29:54.870 --> 03:29:54.880 align:start position:0%
do we need to invalidate it well that's
03:29:54.880 --> 03:29:58.189 align:start position:0%
do we need to invalidate it well that's
the<03:29:55.080> beauty<03:29:55.680> of<03:29:56.120> react<03:29:56.680> query<03:29:57.520> it<03:29:57.680> allows<03:29:58.040> us
03:29:58.189 --> 03:29:58.199 align:start position:0%
the beauty of react query it allows us
03:29:58.199 --> 03:30:01.830 align:start position:0%
the beauty of react query it allows us
to<03:29:58.399> fetch<03:29:59.080> new<03:29:59.720> fresh<03:30:00.319> data<03:30:01.000> and<03:30:01.199> not<03:30:01.479> let<03:30:01.680> the
03:30:01.830 --> 03:30:01.840 align:start position:0%
to fetch new fresh data and not let the
03:30:01.840 --> 03:30:04.750 align:start position:0%
to fetch new fresh data and not let the
data<03:30:02.080> go<03:30:02.399> stale<03:30:03.359> so<03:30:03.680> the<03:30:03.800> next<03:30:04.040> time<03:30:04.199> we<03:30:04.359> try<03:30:04.600> to
03:30:04.750 --> 03:30:04.760 align:start position:0%
data go stale so the next time we try to
03:30:04.760 --> 03:30:07.790 align:start position:0%
data go stale so the next time we try to
get<03:30:05.080> recent<03:30:05.479> posts<03:30:06.279> it<03:30:06.560> actually<03:30:07.040> invalidated
03:30:07.790 --> 03:30:07.800 align:start position:0%
get recent posts it actually invalidated
03:30:07.800 --> 03:30:09.910 align:start position:0%
get recent posts it actually invalidated
this<03:30:07.960> query<03:30:08.680> which<03:30:08.840> means<03:30:09.120> that<03:30:09.279> it<03:30:09.399> will<03:30:09.680> not
03:30:09.910 --> 03:30:09.920 align:start position:0%
this query which means that it will not
03:30:09.920 --> 03:30:13.950 align:start position:0%
this query which means that it will not
be<03:30:10.120> able<03:30:10.359> to<03:30:10.560> get<03:30:11.359> post<03:30:11.680> from<03:30:12.120> cash<03:30:13.120> rather<03:30:13.840> it
03:30:13.950 --> 03:30:13.960 align:start position:0%
be able to get post from cash rather it
03:30:13.960 --> 03:30:16.150 align:start position:0%
be able to get post from cash rather it
will<03:30:14.160> need<03:30:14.319> to<03:30:14.560> recall<03:30:15.080> it<03:30:15.319> again<03:30:15.800> from<03:30:16.000> the
03:30:16.150 --> 03:30:16.160 align:start position:0%
will need to recall it again from the
03:30:16.160 --> 03:30:18.469 align:start position:0%
will need to recall it again from the
server<03:30:17.040> so<03:30:17.279> that's<03:30:17.479> why<03:30:17.600> we<03:30:17.760> have<03:30:17.880> to<03:30:18.000> do<03:30:18.160> it
03:30:18.469 --> 03:30:18.479 align:start position:0%
server so that's why we have to do it
03:30:18.479 --> 03:30:21.030 align:start position:0%
server so that's why we have to do it
this<03:30:18.680> way<03:30:19.199> and<03:30:19.439> invalidate<03:30:20.399> the<03:30:20.560> query<03:30:20.880> for
03:30:21.030 --> 03:30:21.040 align:start position:0%
this way and invalidate the query for
03:30:21.040 --> 03:30:23.389 align:start position:0%
this way and invalidate the query for
the<03:30:21.199> recent<03:30:21.560> posts<03:30:22.359> after<03:30:22.600> we<03:30:22.760> create<03:30:23.040> a<03:30:23.160> new
03:30:23.389 --> 03:30:23.399 align:start position:0%
the recent posts after we create a new
03:30:23.399 --> 03:30:26.950 align:start position:0%
the recent posts after we create a new
post<03:30:24.120> I<03:30:24.279> hope<03:30:24.800> that<03:30:24.960> makes<03:30:25.359> sense<03:30:26.359> now<03:30:26.680> later
03:30:26.950 --> 03:30:26.960 align:start position:0%
post I hope that makes sense now later
03:30:26.960 --> 03:30:29.150 align:start position:0%
post I hope that makes sense now later
on<03:30:27.279> we're<03:30:27.399> going<03:30:27.520> to<03:30:27.680> have<03:30:28.000> many<03:30:28.479> of<03:30:28.760> these
03:30:29.150 --> 03:30:29.160 align:start position:0%
on we're going to have many of these
03:30:29.160 --> 03:30:32.070 align:start position:0%
on we're going to have many of these
query<03:30:29.680> keys<03:30:30.680> and<03:30:30.880> it's<03:30:31.000> a<03:30:31.160> good<03:30:31.319> idea<03:30:31.600> to<03:30:31.800> keep
03:30:32.070 --> 03:30:32.080 align:start position:0%
query keys and it's a good idea to keep
03:30:32.080 --> 03:30:35.070 align:start position:0%
query keys and it's a good idea to keep
them<03:30:32.319> somewhere<03:30:32.920> and<03:30:33.160> keep<03:30:33.399> them<03:30:33.720> safe<03:30:34.680> so
03:30:35.070 --> 03:30:35.080 align:start position:0%
them somewhere and keep them safe so
03:30:35.080 --> 03:30:37.590 align:start position:0%
them somewhere and keep them safe so
what<03:30:35.239> we<03:30:35.319> can<03:30:35.479> do<03:30:35.920> is<03:30:36.160> create<03:30:36.479> a<03:30:36.680> new<03:30:37.000> file
03:30:37.590 --> 03:30:37.600 align:start position:0%
what we can do is create a new file
03:30:37.600 --> 03:30:41.870 align:start position:0%
what we can do is create a new file
right<03:30:37.800> here<03:30:38.000> in<03:30:38.239> react<03:30:38.720> query<03:30:39.479> called<03:30:40.040> query
03:30:41.870 --> 03:30:41.880 align:start position:0%
right here in react query called query
03:30:41.880 --> 03:30:45.910 align:start position:0%
right here in react query called query
keys.<03:30:43.160> TS<03:30:44.160> and<03:30:44.479> there<03:30:44.960> we<03:30:45.080> can<03:30:45.359> define
03:30:45.910 --> 03:30:45.920 align:start position:0%
keys. TS and there we can define
03:30:45.920 --> 03:30:48.229 align:start position:0%
keys. TS and there we can define
something<03:30:46.199> known<03:30:46.520> as<03:30:46.640> an<03:30:46.840> enum<03:30:47.479> so<03:30:47.640> we<03:30:47.760> can<03:30:47.920> say
03:30:48.229 --> 03:30:48.239 align:start position:0%
something known as an enum so we can say
03:30:48.239 --> 03:30:52.910 align:start position:0%
something known as an enum so we can say
export<03:30:49.120> enam<03:30:50.000> query<03:30:51.040> keys<03:30:52.040> this<03:30:52.160> is<03:30:52.279> an
03:30:52.910 --> 03:30:52.920 align:start position:0%
export enam query keys this is an
03:30:52.920 --> 03:30:55.030 align:start position:0%
export enam query keys this is an
enumeration<03:30:53.920> what<03:30:54.040> it<03:30:54.199> means<03:30:54.520> that<03:30:54.720> we<03:30:54.800> can
03:30:55.030 --> 03:30:55.040 align:start position:0%
enumeration what it means that we can
03:30:55.040 --> 03:30:58.189 align:start position:0%
enumeration what it means that we can
Define<03:30:55.720> or<03:30:56.040> connect<03:30:56.840> one<03:30:57.239> key<03:30:57.720> with<03:30:57.920> one
03:30:58.189 --> 03:30:58.199 align:start position:0%
Define or connect one key with one
03:30:58.199 --> 03:31:03.269 align:start position:0%
Define or connect one key with one
string<03:30:59.199> for<03:30:59.439> example<03:31:00.439> get<03:31:01.160> recent<03:31:02.160> posts<03:31:03.080> is
03:31:03.269 --> 03:31:03.279 align:start position:0%
string for example get recent posts is
03:31:03.279 --> 03:31:07.229 align:start position:0%
string for example get recent posts is
going<03:31:03.439> to<03:31:03.640> be<03:31:04.000> a<03:31:04.199> string<03:31:05.000> of<03:31:05.239> get<03:31:05.640> recent<03:31:06.239> posts
03:31:07.229 --> 03:31:07.239 align:start position:0%
going to be a string of get recent posts
03:31:07.239 --> 03:31:10.269 align:start position:0%
going to be a string of get recent posts
now<03:31:07.840> why<03:31:08.279> do<03:31:08.439> we<03:31:08.600> have<03:31:08.720> to<03:31:08.880> do<03:31:09.160> this<03:31:10.080> well
03:31:10.269 --> 03:31:10.279 align:start position:0%
now why do we have to do this well
03:31:10.279 --> 03:31:12.189 align:start position:0%
now why do we have to do this well
that's<03:31:10.560> because<03:31:11.120> if<03:31:11.239> you<03:31:11.359> just<03:31:11.600> misspell
03:31:12.189 --> 03:31:12.199 align:start position:0%
that's because if you just misspell
03:31:12.199 --> 03:31:16.550 align:start position:0%
that's because if you just misspell
something<03:31:12.600> here<03:31:13.279> like<03:31:13.720> get<03:31:14.479> posts<03:31:15.439> like<03:31:15.720> this
03:31:16.550 --> 03:31:16.560 align:start position:0%
something here like get posts like this
03:31:16.560 --> 03:31:18.670 align:start position:0%
something here like get posts like this
or<03:31:16.800> get<03:31:17.000> recent<03:31:17.399> post<03:31:17.760> maybe<03:31:18.160> that's<03:31:18.359> even<03:31:18.560> a
03:31:18.670 --> 03:31:18.680 align:start position:0%
or get recent post maybe that's even a
03:31:18.680 --> 03:31:21.790 align:start position:0%
or get recent post maybe that's even a
bigger<03:31:19.239> misspelling<03:31:20.239> it<03:31:20.439> might<03:31:20.640> be<03:31:21.160> really
03:31:21.790 --> 03:31:21.800 align:start position:0%
bigger misspelling it might be really
03:31:21.800 --> 03:31:25.110 align:start position:0%
bigger misspelling it might be really
really<03:31:22.239> hard<03:31:22.479> to<03:31:22.680> notice<03:31:23.520> almost<03:31:24.120> impossible
03:31:25.110 --> 03:31:25.120 align:start position:0%
really hard to notice almost impossible
03:31:25.120 --> 03:31:27.590 align:start position:0%
really hard to notice almost impossible
and<03:31:25.319> you<03:31:25.439> can<03:31:25.600> spend<03:31:26.080> hours<03:31:26.760> looking<03:31:27.120> for<03:31:27.359> this
03:31:27.590 --> 03:31:27.600 align:start position:0%
and you can spend hours looking for this
03:31:27.600 --> 03:31:30.510 align:start position:0%
and you can spend hours looking for this
bug<03:31:28.199> but<03:31:28.399> on<03:31:28.560> the<03:31:28.720> other<03:31:29.040> hand<03:31:30.040> if<03:31:30.160> you<03:31:30.319> do
03:31:30.510 --> 03:31:30.520 align:start position:0%
bug but on the other hand if you do
03:31:30.520 --> 03:31:37.110 align:start position:0%
bug but on the other hand if you do
something<03:31:30.880> like<03:31:31.399> this<03:31:32.800> array<03:31:34.080> query<03:31:35.080> unor
03:31:37.110 --> 03:31:37.120 align:start position:0%
something like this array query unor
03:31:37.120 --> 03:31:41.110 align:start position:0%
something like this array query unor
keys.<03:31:38.120> getet<03:31:38.640> recent<03:31:39.279> posts<03:31:40.279> it's<03:31:40.479> impossible
03:31:41.110 --> 03:31:41.120 align:start position:0%
keys. getet recent posts it's impossible
03:31:41.120 --> 03:31:43.030 align:start position:0%
keys. getet recent posts it's impossible
to<03:31:41.279> miss<03:31:41.439> it<03:31:41.880> because<03:31:42.080> you<03:31:42.160> can<03:31:42.399> import<03:31:42.760> it
03:31:43.030 --> 03:31:43.040 align:start position:0%
to miss it because you can import it
03:31:43.040 --> 03:31:45.590 align:start position:0%
to miss it because you can import it
specifically<03:31:43.920> from<03:31:44.160> query<03:31:44.600> keys<03:31:45.359> and<03:31:45.479> then
03:31:45.590 --> 03:31:45.600 align:start position:0%
specifically from query keys and then
03:31:45.600 --> 03:31:48.590 align:start position:0%
specifically from query keys and then
you<03:31:45.800> know<03:31:46.399> it's<03:31:46.600> going<03:31:46.760> to<03:31:46.920> be<03:31:47.199> right<03:31:48.199> and<03:31:48.399> now
03:31:48.590 --> 03:31:48.600 align:start position:0%
you know it's going to be right and now
03:31:48.600 --> 03:31:50.630 align:start position:0%
you know it's going to be right and now
if<03:31:48.720> I<03:31:48.920> misspell<03:31:49.319> it<03:31:49.560> here<03:31:50.160> it's<03:31:50.319> going<03:31:50.479> to
03:31:50.630 --> 03:31:50.640 align:start position:0%
if I misspell it here it's going to
03:31:50.640 --> 03:31:53.429 align:start position:0%
if I misspell it here it's going to
immediately<03:31:51.160> complain<03:31:52.160> so<03:31:52.479> this<03:31:52.720> is<03:31:52.840> a<03:31:53.120> pro
03:31:53.429 --> 03:31:53.439 align:start position:0%
immediately complain so this is a pro
03:31:53.439 --> 03:31:55.910 align:start position:0%
immediately complain so this is a pro
tip<03:31:53.760> when<03:31:53.960> building<03:31:54.319> large<03:31:54.760> applications<03:31:55.760> how
03:31:55.910 --> 03:31:55.920 align:start position:0%
tip when building large applications how
03:31:55.920 --> 03:31:59.349 align:start position:0%
tip when building large applications how
to<03:31:56.160> save<03:31:56.479> yourself<03:31:57.120> from<03:31:57.520> typos<03:31:58.520> create<03:31:59.120> an
03:31:59.349 --> 03:31:59.359 align:start position:0%
to save yourself from typos create an
03:31:59.359 --> 03:32:01.389 align:start position:0%
to save yourself from typos create an
enam<03:32:00.040> where<03:32:00.199> you'll<03:32:00.359> be<03:32:00.479> able<03:32:00.640> to<03:32:00.800> create<03:32:01.120> more
03:32:01.389 --> 03:32:01.399 align:start position:0%
enam where you'll be able to create more
03:32:01.399 --> 03:32:04.110 align:start position:0%
enam where you'll be able to create more
different<03:32:01.760> versions<03:32:02.160> of<03:32:02.520> this<03:32:03.520> so<03:32:03.840> in<03:32:03.960> the
03:32:04.110 --> 03:32:04.120 align:start position:0%
different versions of this so in the
03:32:04.120 --> 03:32:06.550 align:start position:0%
different versions of this so in the
description<03:32:04.600> down<03:32:04.760> below<03:32:05.439> you<03:32:05.560> can<03:32:05.760> find<03:32:06.120> all
03:32:06.550 --> 03:32:06.560 align:start position:0%
description down below you can find all
03:32:06.560 --> 03:32:09.389 align:start position:0%
description down below you can find all
query<03:32:06.960> keys.<03:32:07.560> TS<03:32:08.359> it's<03:32:08.520> going<03:32:08.680> to<03:32:08.840> be<03:32:09.080> just<03:32:09.239> a
03:32:09.389 --> 03:32:09.399 align:start position:0%
query keys. TS it's going to be just a
03:32:09.399 --> 03:32:11.349 align:start position:0%
query keys. TS it's going to be just a
couple<03:32:09.680> more<03:32:10.399> and<03:32:10.520> we'll<03:32:10.680> use<03:32:10.920> use<03:32:11.120> these
03:32:11.349 --> 03:32:11.359 align:start position:0%
couple more and we'll use use these
03:32:11.359 --> 03:32:14.590 align:start position:0%
couple more and we'll use use these
later<03:32:11.640> on<03:32:12.160> to<03:32:12.479> invalidate<03:32:13.439> specific<03:32:13.880> queries
03:32:14.590 --> 03:32:14.600 align:start position:0%
later on to invalidate specific queries
03:32:14.600 --> 03:32:17.710 align:start position:0%
later on to invalidate specific queries
so<03:32:14.800> we<03:32:14.920> can<03:32:15.199> always<03:32:15.680> keep<03:32:15.920> our<03:32:16.160> data<03:32:16.720> fresh
03:32:17.710 --> 03:32:17.720 align:start position:0%
so we can always keep our data fresh
03:32:17.720 --> 03:32:20.510 align:start position:0%
so we can always keep our data fresh
great<03:32:18.399> so<03:32:18.600> now<03:32:18.880> we<03:32:19.000> have<03:32:19.120> our<03:32:19.319> use<03:32:19.680> create<03:32:20.080> post
03:32:20.510 --> 03:32:20.520 align:start position:0%
great so now we have our use create post
03:32:20.520 --> 03:32:24.189 align:start position:0%
great so now we have our use create post
mutation<03:32:21.520> and<03:32:21.680> we<03:32:21.760> can<03:32:21.960> call<03:32:22.279> it<03:32:23.040> within<03:32:24.040> can
03:32:24.189 --> 03:32:24.199 align:start position:0%
mutation and we can call it within can
03:32:24.199 --> 03:32:28.710 align:start position:0%
mutation and we can call it within can
you<03:32:24.359> guess<03:32:24.680> where<03:32:25.680> within<03:32:26.399> post<03:32:27.080> form<03:32:28.040> yep<03:32:28.520> we
03:32:28.710 --> 03:32:28.720 align:start position:0%
you guess where within post form yep we
03:32:28.720 --> 03:32:31.429 align:start position:0%
you guess where within post form yep we
finally<03:32:29.160> got<03:32:29.479> there<03:32:30.359> we<03:32:30.479> can<03:32:30.720> start<03:32:31.199> by
03:32:31.429 --> 03:32:31.439 align:start position:0%
finally got there we can start by
03:32:31.439 --> 03:32:34.309 align:start position:0%
finally got there we can start by
creating<03:32:31.800> the<03:32:32.080> structure<03:32:32.760> for<03:32:33.040> our<03:32:33.359> homepage
03:32:34.309 --> 03:32:34.319 align:start position:0%
creating the structure for our homepage
03:32:34.319 --> 03:32:36.030 align:start position:0%
creating the structure for our homepage
we're<03:32:34.520> going<03:32:34.680> to<03:32:34.880> have<03:32:35.080> a<03:32:35.239> div<03:32:35.680> that's<03:32:35.880> going
03:32:36.030 --> 03:32:36.040 align:start position:0%
we're going to have a div that's going
03:32:36.040 --> 03:32:40.469 align:start position:0%
we're going to have a div that's going
to<03:32:36.279> have<03:32:36.600> a<03:32:36.920> class<03:32:37.560> name<03:32:38.560> equal<03:32:38.880> to<03:32:39.520> flex<03:32:40.239> and
03:32:40.469 --> 03:32:40.479 align:start position:0%
to have a class name equal to flex and
03:32:40.479 --> 03:32:43.750 align:start position:0%
to have a class name equal to flex and
flex<03:32:40.840> x<03:32:41.040> one<03:32:41.399> so<03:32:41.600> it<03:32:42.160> expands<03:32:43.160> within<03:32:43.439> it<03:32:43.640> we're
03:32:43.750 --> 03:32:43.760 align:start position:0%
flex x one so it expands within it we're
03:32:43.760 --> 03:32:45.269 align:start position:0%
flex x one so it expands within it we're
going<03:32:43.880> to<03:32:44.000> have<03:32:44.199> another<03:32:44.520> div<03:32:44.960> that's<03:32:45.160> going
03:32:45.269 --> 03:32:45.279 align:start position:0%
going to have another div that's going
03:32:45.279 --> 03:32:49.590 align:start position:0%
going to have another div that's going
to<03:32:45.520> have<03:32:45.840> a<03:32:46.120> class<03:32:46.520> name<03:32:47.199> is<03:32:47.439> equal<03:32:47.760> to<03:32:48.600> home
03:32:49.590 --> 03:32:49.600 align:start position:0%
to have a class name is equal to home
03:32:49.600 --> 03:32:52.510 align:start position:0%
to have a class name is equal to home
Das<03:32:50.199> container<03:32:51.199> if<03:32:51.319> we<03:32:51.479> save<03:32:51.800> this<03:32:52.160> we<03:32:52.279> cannot
03:32:52.510 --> 03:32:52.520 align:start position:0%
Das container if we save this we cannot
03:32:52.520 --> 03:32:54.990 align:start position:0%
Das container if we save this we cannot
see<03:32:52.680> a<03:32:52.800> lot<03:32:53.359> but<03:32:53.600> it's<03:32:53.920> there<03:32:54.560> let's<03:32:54.720> go<03:32:54.840> ahead
03:32:54.990 --> 03:32:55.000 align:start position:0%
see a lot but it's there let's go ahead
03:32:55.000 --> 03:32:57.229 align:start position:0%
see a lot but it's there let's go ahead
and<03:32:55.120> move<03:32:55.399> this<03:32:55.560> over<03:32:55.800> to<03:32:56.000> the<03:32:56.199> side<03:32:56.920> so<03:32:57.080> now
03:32:57.229 --> 03:32:57.239 align:start position:0%
and move this over to the side so now
03:32:57.239 --> 03:32:59.590 align:start position:0%
and move this over to the side so now
it's<03:32:57.359> easier<03:32:57.680> to<03:32:57.960> develop<03:32:58.960> right<03:32:59.160> within<03:32:59.399> our
03:32:59.590 --> 03:32:59.600 align:start position:0%
it's easier to develop right within our
03:32:59.600 --> 03:33:02.429 align:start position:0%
it's easier to develop right within our
home<03:32:59.880> container<03:33:00.640> we<03:33:00.760> can<03:33:00.960> create<03:33:01.279> another<03:33:01.640> div
03:33:02.429 --> 03:33:02.439 align:start position:0%
home container we can create another div
03:33:02.439 --> 03:33:04.590 align:start position:0%
home container we can create another div
that's<03:33:02.640> going<03:33:02.760> to<03:33:02.920> have<03:33:03.080> a<03:33:03.279> class<03:33:03.640> name<03:33:04.279> equal
03:33:04.590 --> 03:33:04.600 align:start position:0%
that's going to have a class name equal
03:33:04.600 --> 03:33:07.510 align:start position:0%
that's going to have a class name equal
to<03:33:05.279> home-
03:33:07.510 --> 03:33:07.520 align:start position:0%
to home-
03:33:07.520 --> 03:33:11.469 align:start position:0%
to home-
poost<03:33:08.520> and<03:33:08.800> within<03:33:09.080> it<03:33:09.359> we<03:33:09.479> can<03:33:09.640> create<03:33:09.960> an<03:33:10.160> H2
03:33:11.469 --> 03:33:11.479 align:start position:0%
poost and within it we can create an H2
03:33:11.479 --> 03:33:13.710 align:start position:0%
poost and within it we can create an H2
that's<03:33:11.680> going<03:33:11.840> to<03:33:12.040> say<03:33:12.600> home
03:33:13.710 --> 03:33:13.720 align:start position:0%
that's going to say home
03:33:13.720 --> 03:33:16.110 align:start position:0%
that's going to say home
feed<03:33:14.720> there<03:33:14.880> we<03:33:15.040> go<03:33:15.359> the<03:33:15.479> first<03:33:15.720> thing<03:33:15.880> we<03:33:15.960> can
03:33:16.110 --> 03:33:16.120 align:start position:0%
feed there we go the first thing we can
03:33:16.120 --> 03:33:19.030 align:start position:0%
feed there we go the first thing we can
see<03:33:16.399> here<03:33:17.160> let's<03:33:17.359> give<03:33:17.479> it<03:33:17.600> a<03:33:17.800> class<03:33:18.120> name
03:33:19.030 --> 03:33:19.040 align:start position:0%
see here let's give it a class name
03:33:19.040 --> 03:33:21.469 align:start position:0%
see here let's give it a class name
equal<03:33:19.359> to<03:33:19.760> H3
03:33:21.469 --> 03:33:21.479 align:start position:0%
equal to H3
03:33:21.479 --> 03:33:27.389 align:start position:0%
equal to H3
dasb<03:33:22.479> on<03:33:22.680> medium<03:33:23.199> devices<03:33:24.279> H2<03:33:25.640> dasb<03:33:26.640> text-
03:33:27.389 --> 03:33:27.399 align:start position:0%
dasb on medium devices H2 dasb text-
03:33:27.399 --> 03:33:31.830 align:start position:0%
dasb on medium devices H2 dasb text-
left<03:33:28.399> and<03:33:28.720> w-<03:33:29.479> full<03:33:30.359> so<03:33:30.600> now<03:33:31.199> we<03:33:31.319> can<03:33:31.439> see<03:33:31.600> it<03:33:31.720> on
03:33:31.830 --> 03:33:31.840 align:start position:0%
left and w- full so now we can see it on
03:33:31.840 --> 03:33:35.309 align:start position:0%
left and w- full so now we can see it on
the<03:33:32.040> top<03:33:32.680> left<03:33:33.680> now<03:33:34.000> immediately<03:33:34.520> below<03:33:35.239> we
03:33:35.309 --> 03:33:35.319 align:start position:0%
the top left now immediately below we
03:33:35.319 --> 03:33:36.910 align:start position:0%
the top left now immediately below we
want<03:33:35.439> to<03:33:35.600> show<03:33:35.880> some<03:33:36.080> kind<03:33:36.199> of<03:33:36.319> a<03:33:36.439> loader
03:33:36.910 --> 03:33:36.920 align:start position:0%
want to show some kind of a loader
03:33:36.920 --> 03:33:39.550 align:start position:0%
want to show some kind of a loader
component<03:33:37.680> if<03:33:37.920> posts<03:33:38.239> are<03:33:38.439> loading<03:33:39.160> so<03:33:39.359> let's
03:33:39.550 --> 03:33:39.560 align:start position:0%
component if posts are loading so let's
03:33:39.560 --> 03:33:43.750 align:start position:0%
component if posts are loading so let's
create<03:33:39.840> a<03:33:40.080> fake<03:33:40.760> const<03:33:41.560> is<03:33:42.160> post<03:33:42.760> loading
03:33:43.750 --> 03:33:43.760 align:start position:0%
create a fake const is post loading
03:33:43.760 --> 03:33:45.750 align:start position:0%
create a fake const is post loading
which<03:33:43.880> is<03:33:44.040> going<03:33:44.160> to<03:33:44.279> be<03:33:44.439> set<03:33:44.760> to<03:33:45.399> let's<03:33:45.560> do
03:33:45.750 --> 03:33:45.760 align:start position:0%
which is going to be set to let's do
03:33:45.760 --> 03:33:48.950 align:start position:0%
which is going to be set to let's do
true<03:33:46.040> for<03:33:46.520> now<03:33:47.520> immediately<03:33:48.080> below<03:33:48.720> we<03:33:48.800> can
03:33:48.950 --> 03:33:48.960 align:start position:0%
true for now immediately below we can
03:33:48.960 --> 03:33:53.110 align:start position:0%
true for now immediately below we can
say<03:33:49.239> if<03:33:49.680> is<03:33:50.040> post<03:33:50.840> loading<03:33:51.840> and<03:33:52.160> if<03:33:52.319> there's<03:33:52.640> no
03:33:53.110 --> 03:33:53.120 align:start position:0%
say if is post loading and if there's no
03:33:53.120 --> 03:33:56.710 align:start position:0%
say if is post loading and if there's no
posts<03:33:54.120> and<03:33:54.520> post<03:33:55.160> is<03:33:55.279> going<03:33:55.479> to<03:33:55.680> be<03:33:56.080> set<03:33:56.359> to
03:33:56.710 --> 03:33:56.720 align:start position:0%
posts and post is going to be set to
03:33:56.720 --> 03:34:00.590 align:start position:0%
posts and post is going to be set to
null<03:33:57.040> for<03:33:57.640> now<03:33:58.640> if<03:33:58.800> there's<03:33:59.040> no<03:33:59.399> that<03:34:00.120> then<03:34:00.479> we
03:34:00.590 --> 03:34:00.600 align:start position:0%
null for now if there's no that then we
03:34:00.600 --> 03:34:05.110 align:start position:0%
null for now if there's no that then we
can<03:34:00.760> show<03:34:01.560> the<03:34:02.199> loading<03:34:03.199> right<03:34:03.920> here<03:34:04.920> or
03:34:05.110 --> 03:34:05.120 align:start position:0%
can show the loading right here or
03:34:05.120 --> 03:34:07.389 align:start position:0%
can show the loading right here or
rather<03:34:05.319> a<03:34:05.479> loader<03:34:06.160> I<03:34:06.239> believe<03:34:06.520> we<03:34:06.680> called<03:34:06.960> it
03:34:07.389 --> 03:34:07.399 align:start position:0%
rather a loader I believe we called it
03:34:07.399 --> 03:34:10.910 align:start position:0%
rather a loader I believe we called it
we<03:34:07.479> can<03:34:07.680> import<03:34:08.000> it<03:34:08.520> immediately<03:34:09.520> and<03:34:09.840> else<03:34:10.800> we
03:34:10.910 --> 03:34:10.920 align:start position:0%
we can import it immediately and else we
03:34:10.920 --> 03:34:13.870 align:start position:0%
we can import it immediately and else we
can<03:34:11.160> actually<03:34:11.720> create<03:34:12.080> a<03:34:12.399> UL<03:34:13.399> that's<03:34:13.560> going<03:34:13.720> to
03:34:13.870 --> 03:34:13.880 align:start position:0%
can actually create a UL that's going to
03:34:13.880 --> 03:34:16.870 align:start position:0%
can actually create a UL that's going to
allow<03:34:14.120> us<03:34:14.239> to<03:34:14.399> Loop<03:34:14.840> over<03:34:15.319> all<03:34:15.479> of<03:34:15.600> our
03:34:16.870 --> 03:34:16.880 align:start position:0%
allow us to Loop over all of our
03:34:16.880 --> 03:34:19.469 align:start position:0%
allow us to Loop over all of our
posts<03:34:17.880> so<03:34:18.040> for<03:34:18.279> now<03:34:18.560> we<03:34:18.720> can<03:34:18.840> see<03:34:19.040> this<03:34:19.160> great
03:34:19.469 --> 03:34:19.479 align:start position:0%
posts so for now we can see this great
03:34:19.479 --> 03:34:21.870 align:start position:0%
posts so for now we can see this great
loading<03:34:20.279> but<03:34:20.479> now<03:34:20.800> let's<03:34:21.080> focus<03:34:21.399> on<03:34:21.680> what
03:34:21.870 --> 03:34:21.880 align:start position:0%
loading but now let's focus on what
03:34:21.880 --> 03:34:25.189 align:start position:0%
loading but now let's focus on what
matters<03:34:22.399> more<03:34:23.199> and<03:34:23.439> that<03:34:23.600> is<03:34:23.960> fetching<03:34:24.640> all<03:34:25.000> of
03:34:25.189 --> 03:34:25.199 align:start position:0%
matters more and that is fetching all of
03:34:25.199 --> 03:34:27.910 align:start position:0%
matters more and that is fetching all of
the<03:34:25.560> posts<03:34:26.560> to<03:34:26.800> fetch<03:34:27.040> the<03:34:27.199> posts<03:34:27.640> we'll<03:34:27.840> have
03:34:27.910 --> 03:34:27.920 align:start position:0%
the posts to fetch the posts we'll have
03:34:27.920 --> 03:34:29.389 align:start position:0%
the posts to fetch the posts we'll have
to<03:34:28.040> go<03:34:28.160> to<03:34:28.319> our
03:34:29.389 --> 03:34:29.399 align:start position:0%
to go to our
03:34:29.399 --> 03:34:32.110 align:start position:0%
to go to our
queries<03:34:30.399> and<03:34:30.720> here<03:34:31.160> we'll<03:34:31.359> have<03:34:31.479> to<03:34:31.640> create<03:34:31.960> a
03:34:32.110 --> 03:34:32.120 align:start position:0%
queries and here we'll have to create a
03:34:32.120 --> 03:34:35.469 align:start position:0%
queries and here we'll have to create a
new<03:34:32.359> query<03:34:32.800> to<03:34:33.080> get<03:34:33.399> recent<03:34:33.880> posts<03:34:34.800> by<03:34:34.960> saying
03:34:35.469 --> 03:34:35.479 align:start position:0%
new query to get recent posts by saying
03:34:35.479 --> 03:34:36.910 align:start position:0%
new query to get recent posts by saying
export
03:34:36.910 --> 03:34:36.920 align:start position:0%
export
03:34:36.920 --> 03:34:41.670 align:start position:0%
export
const<03:34:37.920> use<03:34:38.760> get<03:34:39.680> recent
03:34:41.670 --> 03:34:41.680 align:start position:0%
const use get recent
03:34:41.680 --> 03:34:44.189 align:start position:0%
const use get recent
posts<03:34:42.680> this<03:34:42.760> is<03:34:42.920> going<03:34:43.080> to<03:34:43.199> be<03:34:43.319> a<03:34:43.479> function
03:34:44.189 --> 03:34:44.199 align:start position:0%
posts this is going to be a function
03:34:44.199 --> 03:34:47.189 align:start position:0%
posts this is going to be a function
that's<03:34:44.399> going<03:34:44.560> to<03:34:44.880> return<03:34:45.479> a<03:34:45.720> use<03:34:46.279> Query<03:34:47.000> no
03:34:47.189 --> 03:34:47.199 align:start position:0%
that's going to return a use Query no
03:34:47.199 --> 03:34:50.950 align:start position:0%
that's going to return a use Query no
longer<03:34:47.520> a<03:34:47.680> Ed<03:34:48.000> mutation<03:34:49.000> rather<03:34:49.520> a<03:34:49.680> used<03:34:50.080> query
03:34:50.950 --> 03:34:50.960 align:start position:0%
longer a Ed mutation rather a used query
03:34:50.960 --> 03:34:53.229 align:start position:0%
longer a Ed mutation rather a used query
where<03:34:51.199> the<03:34:51.399> query<03:34:51.880> key<03:34:52.399> of<03:34:52.640> what<03:34:52.760> we<03:34:52.880> want<03:34:53.000> to
03:34:53.229 --> 03:34:53.239 align:start position:0%
where the query key of what we want to
03:34:53.239 --> 03:34:57.750 align:start position:0%
where the query key of what we want to
get<03:34:53.840> is<03:34:54.000> going<03:34:54.160> to<03:34:54.279> be<03:34:54.439> an<03:34:54.600> array<03:34:55.399> of<03:34:55.720> query
03:34:57.750 --> 03:34:57.760 align:start position:0%
get is going to be an array of query
03:34:57.760 --> 03:35:00.550 align:start position:0%
get is going to be an array of query
keys.<03:34:58.760> getor
03:35:00.550 --> 03:35:00.560 align:start position:0%
keys. getor
03:35:00.560 --> 03:35:02.150 align:start position:0%
keys. getor
recentposts
03:35:02.150 --> 03:35:02.160 align:start position:0%
recentposts
03:35:02.160 --> 03:35:05.229 align:start position:0%
recentposts
and<03:35:03.160> a<03:35:03.359> query<03:35:03.760> function<03:35:04.359> meaning<03:35:04.920> what<03:35:05.040> will
03:35:05.229 --> 03:35:05.239 align:start position:0%
and a query function meaning what will
03:35:05.239 --> 03:35:09.189 align:start position:0%
and a query function meaning what will
get<03:35:05.920> executed<03:35:06.920> once<03:35:07.120> we<03:35:07.279> try<03:35:07.520> to<03:35:07.720> fetch<03:35:08.199> this
03:35:09.189 --> 03:35:09.199 align:start position:0%
get executed once we try to fetch this
03:35:09.199 --> 03:35:11.030 align:start position:0%
get executed once we try to fetch this
this<03:35:09.640> will<03:35:09.840> have<03:35:09.960> to<03:35:10.080> be<03:35:10.199> a<03:35:10.279> function<03:35:10.800> coming
03:35:11.030 --> 03:35:11.040 align:start position:0%
this will have to be a function coming
03:35:11.040 --> 03:35:14.150 align:start position:0%
this will have to be a function coming
from<03:35:11.399> aight<03:35:12.399> so<03:35:12.680> now<03:35:13.080> we<03:35:13.199> have<03:35:13.319> to<03:35:13.520> move<03:35:13.760> to<03:35:13.960> the
03:35:14.150 --> 03:35:14.160 align:start position:0%
from aight so now we have to move to the
03:35:14.160 --> 03:35:17.309 align:start position:0%
from aight so now we have to move to the
aight<03:35:14.760> API<03:35:15.760> and<03:35:15.960> create<03:35:16.239> a<03:35:16.399> new
03:35:17.309 --> 03:35:17.319 align:start position:0%
aight API and create a new
03:35:17.319 --> 03:35:22.110 align:start position:0%
aight API and create a new
function<03:35:18.319> export<03:35:19.520> async<03:35:20.520> function<03:35:21.479> get
03:35:22.110 --> 03:35:22.120 align:start position:0%
function export async function get
03:35:22.120 --> 03:35:23.550 align:start position:0%
function export async function get
recent
03:35:23.550 --> 03:35:23.560 align:start position:0%
recent
03:35:23.560 --> 03:35:27.269 align:start position:0%
recent
posts<03:35:24.560> where<03:35:24.920> we<03:35:25.040> can<03:35:25.160> set<03:35:25.439> the<03:35:25.880> posts<03:35:26.880> to<03:35:27.040> be
03:35:27.269 --> 03:35:27.279 align:start position:0%
posts where we can set the posts to be
03:35:27.279 --> 03:35:30.349 align:start position:0%
posts where we can set the posts to be
equal<03:35:27.560> to<03:35:28.520> await
03:35:30.349 --> 03:35:30.359 align:start position:0%
equal to await
03:35:30.359 --> 03:35:32.910 align:start position:0%
equal to await
databases.<03:35:31.359> list
03:35:32.910 --> 03:35:32.920 align:start position:0%
databases. list
03:35:32.920 --> 03:35:35.590 align:start position:0%
databases. list
documents<03:35:33.920> to<03:35:34.239> that<03:35:34.520> we<03:35:34.720> have<03:35:34.840> to<03:35:35.040> provide<03:35:35.399> the
03:35:35.590 --> 03:35:35.600 align:start position:0%
documents to that we have to provide the
03:35:35.600 --> 03:35:36.710 align:start position:0%
documents to that we have to provide the
aight
03:35:36.710 --> 03:35:36.720 align:start position:0%
aight
03:35:36.720 --> 03:35:41.750 align:start position:0%
aight
config<03:35:37.720> database<03:35:38.640> ID<03:35:39.640> aright<03:35:40.120> config
03:35:41.750 --> 03:35:41.760 align:start position:0%
config database ID aright config
03:35:41.760 --> 03:35:45.030 align:start position:0%
config database ID aright config
dopost<03:35:42.760> collection<03:35:43.560> ID<03:35:44.199> as<03:35:44.359> the<03:35:44.520> second
03:35:45.030 --> 03:35:45.040 align:start position:0%
dopost collection ID as the second
03:35:45.040 --> 03:35:47.389 align:start position:0%
dopost collection ID as the second
parameter<03:35:46.040> and<03:35:46.160> then<03:35:46.319> we<03:35:46.439> can<03:35:46.680> Define<03:35:47.160> in
03:35:47.389 --> 03:35:47.399 align:start position:0%
parameter and then we can Define in
03:35:47.399 --> 03:35:49.710 align:start position:0%
parameter and then we can Define in
which<03:35:47.680> order<03:35:48.160> do<03:35:48.319> we<03:35:48.439> want<03:35:48.640> to<03:35:48.800> get<03:35:48.960> it<03:35:49.479> so<03:35:49.640> we
03:35:49.710 --> 03:35:49.720 align:start position:0%
which order do we want to get it so we
03:35:49.720 --> 03:35:50.630 align:start position:0%
which order do we want to get it so we
can<03:35:49.840> say
03:35:50.630 --> 03:35:50.640 align:start position:0%
can say
03:35:50.640 --> 03:35:52.189 align:start position:0%
can say
query.
03:35:52.189 --> 03:35:52.199 align:start position:0%
query.
03:35:52.199 --> 03:35:55.030 align:start position:0%
query.
orderes<03:35:53.199> as<03:35:53.319> in<03:35:53.560> descending
03:35:55.030 --> 03:35:55.040 align:start position:0%
orderes as in descending
03:35:55.040 --> 03:35:59.990 align:start position:0%
orderes as in descending
DEC<03:35:56.040> based<03:35:56.680> off<03:35:56.880> of<03:35:57.080> the<03:35:57.520> created<03:35:58.479> at<03:35:59.000> criteria
03:35:59.990 --> 03:36:00.000 align:start position:0%
DEC based off of the created at criteria
03:36:00.000 --> 03:36:01.830 align:start position:0%
DEC based off of the created at criteria
so<03:36:00.199> the<03:36:00.359> latest<03:36:00.760> ones<03:36:01.000> are<03:36:01.160> going<03:36:01.319> to<03:36:01.520> appear
03:36:01.830 --> 03:36:01.840 align:start position:0%
so the latest ones are going to appear
03:36:01.840 --> 03:36:04.630 align:start position:0%
so the latest ones are going to appear
on<03:36:02.120> top<03:36:02.920> and<03:36:03.040> then<03:36:03.199> we<03:36:03.279> can<03:36:03.520> also<03:36:03.760> do<03:36:03.960> another
03:36:04.630 --> 03:36:04.640 align:start position:0%
on top and then we can also do another
03:36:04.640 --> 03:36:09.469 align:start position:0%
on top and then we can also do another
query.<03:36:05.640> limit<03:36:06.359> to<03:36:06.720> 20<03:36:07.239> post<03:36:08.120> tops<03:36:09.120> and<03:36:09.279> this
03:36:09.469 --> 03:36:09.479 align:start position:0%
query. limit to 20 post tops and this
03:36:09.479 --> 03:36:11.630 align:start position:0%
query. limit to 20 post tops and this
has<03:36:09.600> to<03:36:09.760> be<03:36:10.040> as<03:36:10.160> the<03:36:10.279> second<03:36:10.680> parameter<03:36:11.279> to<03:36:11.479> our
03:36:11.630 --> 03:36:11.640 align:start position:0%
has to be as the second parameter to our
03:36:11.640 --> 03:36:14.590 align:start position:0%
has to be as the second parameter to our
query<03:36:12.279> just<03:36:12.520> like<03:36:12.800> this<03:36:13.640> then<03:36:13.920> we<03:36:14.040> can<03:36:14.279> fix
03:36:14.590 --> 03:36:14.600 align:start position:0%
query just like this then we can fix
03:36:14.600 --> 03:36:17.070 align:start position:0%
query just like this then we can fix
this<03:36:14.880> right<03:36:15.120> here<03:36:15.720> and<03:36:15.840> we<03:36:15.960> can<03:36:16.120> say<03:36:16.600> if
03:36:17.070 --> 03:36:17.080 align:start position:0%
this right here and we can say if
03:36:17.080 --> 03:36:20.429 align:start position:0%
this right here and we can say if
there's<03:36:17.479> no<03:36:17.880> posts<03:36:18.880> then<03:36:19.080> we<03:36:19.199> can<03:36:19.359> throw<03:36:19.640> an
03:36:20.429 --> 03:36:20.439 align:start position:0%
there's no posts then we can throw an
03:36:20.439 --> 03:36:23.150 align:start position:0%
there's no posts then we can throw an
error<03:36:21.439> that's<03:36:21.640> going<03:36:21.840> to<03:36:22.000> look<03:36:22.239> like<03:36:22.439> this
03:36:23.150 --> 03:36:23.160 align:start position:0%
error that's going to look like this
03:36:23.160 --> 03:36:26.590 align:start position:0%
error that's going to look like this
else<03:36:23.760> we<03:36:23.880> can<03:36:24.080> simply<03:36:24.600> return<03:36:24.960> posts<03:36:25.960> so<03:36:26.199> now
03:36:26.590 --> 03:36:26.600 align:start position:0%
else we can simply return posts so now
03:36:26.600 --> 03:36:28.309 align:start position:0%
else we can simply return posts so now
we<03:36:26.720> can<03:36:26.880> go<03:36:27.080> back<03:36:27.239> to<03:36:27.359> our<03:36:27.520> queries<03:36:27.880> and
03:36:28.309 --> 03:36:28.319 align:start position:0%
we can go back to our queries and
03:36:28.319 --> 03:36:31.309 align:start position:0%
we can go back to our queries and
mutations<03:36:29.319> and<03:36:29.520> we<03:36:29.600> can<03:36:29.760> simply<03:36:30.080> say<03:36:30.479> get
03:36:31.309 --> 03:36:31.319 align:start position:0%
mutations and we can simply say get
03:36:31.319 --> 03:36:35.030 align:start position:0%
mutations and we can simply say get
recent<03:36:32.239> posts<03:36:33.239> import<03:36:33.600> it<03:36:33.760> at<03:36:33.880> the<03:36:34.080> top<03:36:34.840> and
03:36:35.030 --> 03:36:35.040 align:start position:0%
recent posts import it at the top and
03:36:35.040 --> 03:36:38.150 align:start position:0%
recent posts import it at the top and
now<03:36:35.960> this<03:36:36.319> use<03:36:36.720> get<03:36:36.960> recent<03:36:37.319> posts<03:36:37.840> is<03:36:38.000> going
03:36:38.150 --> 03:36:38.160 align:start position:0%
now this use get recent posts is going
03:36:38.160 --> 03:36:42.189 align:start position:0%
now this use get recent posts is going
to<03:36:38.399> expose<03:36:39.239> this<03:36:39.439> function<03:36:39.920> to<03:36:40.160> get<03:36:40.600> called<03:36:41.600> so
03:36:42.189 --> 03:36:42.199 align:start position:0%
to expose this function to get called so
03:36:42.199 --> 03:36:45.150 align:start position:0%
to expose this function to get called so
let's<03:36:42.439> now<03:36:42.680> go<03:36:43.000> back<03:36:43.439> right<03:36:43.720> here<03:36:44.560> and<03:36:44.880> let's
03:36:45.150 --> 03:36:45.160 align:start position:0%
let's now go back right here and let's
03:36:45.160 --> 03:36:49.590 align:start position:0%
let's now go back right here and let's
declare<03:36:45.640> a<03:36:45.840> hook<03:36:46.279> that<03:36:46.399> we<03:36:46.520> can<03:36:47.120> call<03:36:48.600> Con
03:36:49.590 --> 03:36:49.600 align:start position:0%
declare a hook that we can call Con
03:36:49.600 --> 03:36:52.150 align:start position:0%
declare a hook that we can call Con
where<03:36:49.760> we<03:36:49.960> get<03:36:50.239> data<03:36:51.080> so<03:36:51.319> with<03:36:51.520> every<03:36:51.800> query
03:36:52.150 --> 03:36:52.160 align:start position:0%
where we get data so with every query
03:36:52.160 --> 03:36:54.309 align:start position:0%
where we get data so with every query
you<03:36:52.359> get<03:36:52.520> something<03:36:52.800> known<03:36:53.000> as<03:36:53.120> a<03:36:53.319> data<03:36:53.680> object
03:36:54.309 --> 03:36:54.319 align:start position:0%
you get something known as a data object
03:36:54.319 --> 03:36:56.429 align:start position:0%
you get something known as a data object
and<03:36:54.439> you<03:36:54.560> can<03:36:54.720> rename<03:36:55.120> it<03:36:55.319> to<03:36:55.520> in<03:36:55.720> this<03:36:55.920> case
03:36:56.429 --> 03:36:56.439 align:start position:0%
and you can rename it to in this case
03:36:56.439 --> 03:36:59.670 align:start position:0%
and you can rename it to in this case
post<03:36:57.439> we<03:36:57.600> get<03:36:57.800> the<03:36:58.080> not<03:36:58.399> is<03:36:58.640> loading<03:36:59.080> anymore
03:36:59.670 --> 03:36:59.680 align:start position:0%
post we get the not is loading anymore
03:36:59.680 --> 03:37:03.110 align:start position:0%
post we get the not is loading anymore
it's<03:36:59.880> going<03:37:00.000> to<03:37:00.199> be<03:37:01.080> is<03:37:01.800> pending<03:37:02.800> and<03:37:02.920> that's
03:37:03.110 --> 03:37:03.120 align:start position:0%
it's going to be is pending and that's
03:37:03.120 --> 03:37:05.950 align:start position:0%
it's going to be is pending and that's
going<03:37:03.239> to<03:37:03.359> be<03:37:03.600> is<03:37:03.920> post<03:37:04.640> loading<03:37:05.640> and<03:37:05.760> then
03:37:05.950 --> 03:37:05.960 align:start position:0%
going to be is post loading and then
03:37:05.960 --> 03:37:08.510 align:start position:0%
going to be is post loading and then
finally<03:37:06.399> is<03:37:06.680> error<03:37:07.359> you<03:37:07.560> also<03:37:07.880> get<03:37:08.120> that<03:37:08.439> we
03:37:08.510 --> 03:37:08.520 align:start position:0%
finally is error you also get that we
03:37:08.520 --> 03:37:11.950 align:start position:0%
finally is error you also get that we
can<03:37:08.680> say<03:37:08.960> is<03:37:09.560> error<03:37:10.560> posts<03:37:11.560> and<03:37:11.720> that's<03:37:11.880> going
03:37:11.950 --> 03:37:11.960 align:start position:0%
can say is error posts and that's going
03:37:11.960 --> 03:37:15.229 align:start position:0%
can say is error posts and that's going
to<03:37:12.120> be<03:37:12.319> equal<03:37:12.600> to<03:37:12.760> a<03:37:12.960> hook<03:37:13.479> of<03:37:13.760> use<03:37:14.399> get<03:37:14.760> recent
03:37:15.229 --> 03:37:15.239 align:start position:0%
to be equal to a hook of use get recent
03:37:15.239 --> 03:37:18.349 align:start position:0%
to be equal to a hook of use get recent
posts<03:37:15.960> which<03:37:16.120> we<03:37:16.239> can<03:37:16.399> simply<03:37:16.800> import<03:37:17.640> and
03:37:18.349 --> 03:37:18.359 align:start position:0%
posts which we can simply import and
03:37:18.359 --> 03:37:21.510 align:start position:0%
posts which we can simply import and
call<03:37:19.359> now<03:37:19.600> if<03:37:19.720> we<03:37:19.880> save<03:37:20.279> this<03:37:21.000> it's<03:37:21.160> going<03:37:21.319> to
03:37:21.510 --> 03:37:21.520 align:start position:0%
call now if we save this it's going to
03:37:21.520 --> 03:37:23.389 align:start position:0%
call now if we save this it's going to
automatically<03:37:22.199> know<03:37:22.760> whether<03:37:23.000> we<03:37:23.120> have<03:37:23.239> to
03:37:23.389 --> 03:37:23.399 align:start position:0%
automatically know whether we have to
03:37:23.399 --> 03:37:25.910 align:start position:0%
automatically know whether we have to
load<03:37:23.760> something<03:37:24.160> or<03:37:24.399> not<03:37:25.239> and<03:37:25.359> as<03:37:25.479> you<03:37:25.560> can<03:37:25.680> see
03:37:25.910 --> 03:37:25.920 align:start position:0%
load something or not and as you can see
03:37:25.920 --> 03:37:29.429 align:start position:0%
load something or not and as you can see
the<03:37:26.040> loading<03:37:26.760> was<03:37:26.960> immediately<03:37:27.520> switched<03:37:28.439> off
03:37:29.429 --> 03:37:29.439 align:start position:0%
the loading was immediately switched off
03:37:29.439 --> 03:37:32.469 align:start position:0%
the loading was immediately switched off
and<03:37:29.800> we<03:37:29.920> can<03:37:30.080> render<03:37:31.040> test<03:37:32.040> and<03:37:32.160> as<03:37:32.279> you<03:37:32.359> can
03:37:32.469 --> 03:37:32.479 align:start position:0%
and we can render test and as you can
03:37:32.479 --> 03:37:34.830 align:start position:0%
and we can render test and as you can
see<03:37:32.680> we<03:37:32.760> can<03:37:32.920> see<03:37:33.160> it<03:37:33.720> that<03:37:33.880> means<03:37:34.279> that<03:37:34.600> we
03:37:34.830 --> 03:37:34.840 align:start position:0%
see we can see it that means that we
03:37:34.840 --> 03:37:38.510 align:start position:0%
see we can see it that means that we
indeed<03:37:35.720> have<03:37:35.960> some<03:37:36.239> posts<03:37:36.800> to<03:37:37.040> load<03:37:38.000> so<03:37:38.319> let's
03:37:38.510 --> 03:37:38.520 align:start position:0%
indeed have some posts to load so let's
03:37:38.520 --> 03:37:42.189 align:start position:0%
indeed have some posts to load so let's
create<03:37:38.840> the<03:37:39.000> UI<03:37:39.560> for<03:37:39.920> loading<03:37:40.479> a<03:37:40.880> post<03:37:41.880> we<03:37:42.000> can
03:37:42.189 --> 03:37:42.199 align:start position:0%
create the UI for loading a post we can
03:37:42.199 --> 03:37:46.990 align:start position:0%
create the UI for loading a post we can
give<03:37:42.399> this<03:37:42.600> UL<03:37:43.160> a<03:37:43.479> class<03:37:43.880> name<03:37:44.560> equal<03:37:44.880> to<03:37:45.279> flex
03:37:46.990 --> 03:37:47.000 align:start position:0%
give this UL a class name equal to flex
03:37:47.000 --> 03:37:49.229 align:start position:0%
give this UL a class name equal to flex
flex-all<03:37:48.000> so<03:37:48.239> they<03:37:48.399> appear<03:37:48.720> one<03:37:48.920> below
03:37:49.229 --> 03:37:49.239 align:start position:0%
flex-all so they appear one below
03:37:49.239 --> 03:37:53.189 align:start position:0%
flex-all so they appear one below
another<03:37:50.000> Flex<03:37:50.720> D1<03:37:51.720> a<03:37:51.920> gap<03:37:52.160> of<03:37:52.359> nine<03:37:52.720> for<03:37:52.880> some
03:37:53.189 --> 03:37:53.199 align:start position:0%
another Flex D1 a gap of nine for some
03:37:53.199 --> 03:37:58.189 align:start position:0%
another Flex D1 a gap of nine for some
spacing<03:37:54.199> and<03:37:54.479> a<03:37:54.720> w-<03:37:55.520> full<03:37:55.960> for<03:37:56.120> full<03:37:56.800> width<03:37:57.800> now
03:37:58.189 --> 03:37:58.199 align:start position:0%
spacing and a w- full for full width now
03:37:58.199 --> 03:38:00.510 align:start position:0%
spacing and a w- full for full width now
here<03:37:58.479> we<03:37:58.600> want<03:37:58.720> to<03:37:58.960> map<03:37:59.239> over<03:37:59.479> the<03:37:59.680> posts<03:38:00.359> by
03:38:00.510 --> 03:38:00.520 align:start position:0%
here we want to map over the posts by
03:38:00.520 --> 03:38:03.030 align:start position:0%
here we want to map over the posts by
saying<03:38:00.920> posts<03:38:01.439> question<03:38:01.800> mark.
03:38:03.030 --> 03:38:03.040 align:start position:0%
saying posts question mark.
03:38:03.040 --> 03:38:05.830 align:start position:0%
saying posts question mark.
documents.<03:38:04.040> map<03:38:04.960> where<03:38:05.160> we<03:38:05.279> get<03:38:05.560> each
03:38:05.830 --> 03:38:05.840 align:start position:0%
documents. map where we get each
03:38:05.840 --> 03:38:08.870 align:start position:0%
documents. map where we get each
individual<03:38:06.520> post<03:38:07.199> of<03:38:07.359> a<03:38:07.600> type
03:38:08.870 --> 03:38:08.880 align:start position:0%
individual post of a type
03:38:08.880 --> 03:38:11.110 align:start position:0%
individual post of a type
models.<03:38:09.880> document
03:38:11.110 --> 03:38:11.120 align:start position:0%
models. document
03:38:11.120 --> 03:38:13.309 align:start position:0%
models. document
and<03:38:11.239> the<03:38:11.359> models<03:38:11.880> has<03:38:12.040> to<03:38:12.199> be<03:38:12.359> imported<03:38:12.920> from
03:38:13.309 --> 03:38:13.319 align:start position:0%
and the models has to be imported from
03:38:13.319 --> 03:38:16.550 align:start position:0%
and the models has to be imported from
aite<03:38:14.319> and<03:38:14.560> then<03:38:14.920> we<03:38:15.040> can<03:38:15.279> instantly<03:38:15.880> return<03:38:16.319> An
03:38:16.550 --> 03:38:16.560 align:start position:0%
aite and then we can instantly return An
03:38:16.560 --> 03:38:19.750 align:start position:0%
aite and then we can instantly return An
Li<03:38:17.319> which<03:38:17.479> is<03:38:17.560> a<03:38:17.760> list<03:38:18.080> item<03:38:19.000> that<03:38:19.120> for<03:38:19.319> now<03:38:19.600> can
03:38:19.750 --> 03:38:19.760 align:start position:0%
Li which is a list item that for now can
03:38:19.760 --> 03:38:22.790 align:start position:0%
Li which is a list item that for now can
render<03:38:20.120> something<03:38:20.399> like<03:38:20.600> post.<03:38:21.520> tile<03:38:22.520> if<03:38:22.640> we
03:38:22.790 --> 03:38:22.800 align:start position:0%
render something like post. tile if we
03:38:22.800 --> 03:38:26.269 align:start position:0%
render something like post. tile if we
save<03:38:23.040> it<03:38:23.920> we<03:38:24.120> cannot<03:38:24.439> see<03:38:24.920> anything<03:38:25.920> let's<03:38:26.080> see
03:38:26.269 --> 03:38:26.279 align:start position:0%
save it we cannot see anything let's see
03:38:26.279 --> 03:38:28.710 align:start position:0%
save it we cannot see anything let's see
if<03:38:26.399> I<03:38:26.520> properly<03:38:26.880> called<03:38:27.160> it<03:38:27.439> is<03:38:27.520> it<03:38:27.680> a<03:38:27.920> title<03:38:28.520> or
03:38:28.710 --> 03:38:28.720 align:start position:0%
if I properly called it is it a title or
03:38:28.720 --> 03:38:31.389 align:start position:0%
if I properly called it is it a title or
is<03:38:28.840> it<03:38:29.000> something<03:38:29.359> else<03:38:30.199> well<03:38:30.399> if<03:38:30.520> I<03:38:30.680> go<03:38:30.800> to<03:38:31.040> app
03:38:31.389 --> 03:38:31.399 align:start position:0%
is it something else well if I go to app
03:38:31.399 --> 03:38:33.670 align:start position:0%
is it something else well if I go to app
right<03:38:32.120> we<03:38:32.239> can<03:38:32.399> see<03:38:32.680> we<03:38:32.840> have<03:38:33.000> the<03:38:33.160> preview
03:38:33.670 --> 03:38:33.680 align:start position:0%
right we can see we have the preview
03:38:33.680 --> 03:38:36.790 align:start position:0%
right we can see we have the preview
image<03:38:34.199> this<03:38:34.439> is<03:38:34.600> under<03:38:35.000> storage<03:38:36.000> but<03:38:36.199> if<03:38:36.319> I<03:38:36.560> go
03:38:36.790 --> 03:38:36.800 align:start position:0%
image this is under storage but if I go
03:38:36.800 --> 03:38:37.950 align:start position:0%
image this is under storage but if I go
to
03:38:37.950 --> 03:38:37.960 align:start position:0%
to
03:38:37.960 --> 03:38:41.990 align:start position:0%
to
databases<03:38:39.319> database<03:38:40.359> posts<03:38:41.359> and<03:38:41.560> here<03:38:41.800> we<03:38:41.880> can
03:38:41.990 --> 03:38:42.000 align:start position:0%
databases database posts and here we can
03:38:42.000 --> 03:38:43.870 align:start position:0%
databases database posts and here we can
see<03:38:42.279> all<03:38:42.479> the<03:38:42.720> attributes<03:38:43.479> that<03:38:43.640> this
03:38:43.870 --> 03:38:43.880 align:start position:0%
see all the attributes that this
03:38:43.880 --> 03:38:47.830 align:start position:0%
see all the attributes that this
document<03:38:44.399> has<03:38:45.000> under<03:38:45.479> data<03:38:46.479> so<03:38:46.640> we<03:38:46.800> have<03:38:47.000> likes
03:38:47.830 --> 03:38:47.840 align:start position:0%
document has under data so we have likes
03:38:47.840 --> 03:38:51.189 align:start position:0%
document has under data so we have likes
caption<03:38:48.560> yeah<03:38:48.680> let's<03:38:48.880> do<03:38:49.080> caption<03:38:49.840> post.
03:38:51.189 --> 03:38:51.199 align:start position:0%
caption yeah let's do caption post.
03:38:51.199 --> 03:38:54.030 align:start position:0%
caption yeah let's do caption post.
caption<03:38:52.199> now<03:38:52.359> if<03:38:52.479> we<03:38:52.640> do<03:38:52.800> it<03:38:53.160> we<03:38:53.239> can<03:38:53.359> see<03:38:53.600> River
03:38:54.030 --> 03:38:54.040 align:start position:0%
caption now if we do it we can see River
03:38:54.040 --> 03:38:56.309 align:start position:0%
caption now if we do it we can see River
and<03:38:54.279> nature<03:38:54.880> which<03:38:55.000> means<03:38:55.239> we're<03:38:55.479> getting<03:38:55.800> it
03:38:56.309 --> 03:38:56.319 align:start position:0%
and nature which means we're getting it
03:38:56.319 --> 03:38:59.389 align:start position:0%
and nature which means we're getting it
right<03:38:56.560> here<03:38:56.720> from<03:38:57.000> aite<03:38:57.680> from<03:38:57.840> our<03:38:58.080> own<03:38:58.560> server
03:38:59.389 --> 03:38:59.399 align:start position:0%
right here from aite from our own server
03:38:59.399 --> 03:39:02.950 align:start position:0%
right here from aite from our own server
database<03:39:00.399> how<03:39:00.760> cool<03:39:01.199> is<03:39:01.439> that<03:39:02.319> but<03:39:02.560> instead<03:39:02.840> of
03:39:02.950 --> 03:39:02.960 align:start position:0%
database how cool is that but instead of
03:39:02.960 --> 03:39:05.070 align:start position:0%
database how cool is that but instead of
Simply<03:39:03.199> showing<03:39:03.520> the<03:39:03.720> caption<03:39:04.520> let's<03:39:04.720> show
03:39:05.070 --> 03:39:05.080 align:start position:0%
Simply showing the caption let's show
03:39:05.080 --> 03:39:08.429 align:start position:0%
Simply showing the caption let's show
something<03:39:05.399> more<03:39:06.040> a<03:39:06.279> nice<03:39:06.600> looking<03:39:07.000> post<03:39:07.920> so<03:39:08.239> to
03:39:08.429 --> 03:39:08.439 align:start position:0%
something more a nice looking post so to
03:39:08.439 --> 03:39:11.229 align:start position:0%
something more a nice looking post so to
do<03:39:08.640> it<03:39:09.120> we<03:39:09.239> can<03:39:09.439> render<03:39:09.880> a<03:39:10.040> new<03:39:10.479> component
03:39:11.229 --> 03:39:11.239 align:start position:0%
do it we can render a new component
03:39:11.239 --> 03:39:14.269 align:start position:0%
do it we can render a new component
called<03:39:11.840> post
03:39:14.269 --> 03:39:14.279 align:start position:0%
called post
03:39:14.279 --> 03:39:16.870 align:start position:0%
called post
card<03:39:15.279> this<03:39:15.399> is<03:39:15.520> going<03:39:15.680> to<03:39:15.800> be<03:39:15.920> a<03:39:16.080> self-closing
03:39:16.870 --> 03:39:16.880 align:start position:0%
card this is going to be a self-closing
03:39:16.880 --> 03:39:19.510 align:start position:0%
card this is going to be a self-closing
component<03:39:17.640> to<03:39:17.960> which<03:39:18.399> we're<03:39:18.520> going<03:39:18.640> to<03:39:18.960> pass
03:39:19.510 --> 03:39:19.520 align:start position:0%
component to which we're going to pass
03:39:19.520 --> 03:39:22.750 align:start position:0%
component to which we're going to pass
the<03:39:19.760> post<03:39:20.479> as<03:39:20.640> the<03:39:20.840> first<03:39:21.120> and<03:39:21.359> only
03:39:22.750 --> 03:39:22.760 align:start position:0%
the post as the first and only
03:39:22.760 --> 03:39:26.550 align:start position:0%
the post as the first and only
prop<03:39:23.760> there<03:39:23.920> we<03:39:24.120> go<03:39:25.000> now<03:39:25.199> this<03:39:25.399> postcard<03:39:26.399> of
03:39:26.550 --> 03:39:26.560 align:start position:0%
prop there we go now this postcard of
03:39:26.560 --> 03:39:29.030 align:start position:0%
prop there we go now this postcard of
course<03:39:26.960> is<03:39:27.120> something<03:39:27.439> we<03:39:27.600> have<03:39:27.720> to<03:39:27.880> create<03:39:28.680> So
03:39:29.030 --> 03:39:29.040 align:start position:0%
course is something we have to create So
03:39:29.040 --> 03:39:32.269 align:start position:0%
course is something we have to create So
within<03:39:29.680> components<03:39:30.680> and<03:39:30.840> then<03:39:31.160> shared<03:39:32.000> we<03:39:32.080> can
03:39:32.269 --> 03:39:32.279 align:start position:0%
within components and then shared we can
03:39:32.279 --> 03:39:37.750 align:start position:0%
within components and then shared we can
create<03:39:32.560> a<03:39:32.840> new<03:39:33.840> post<03:39:34.479> card.<03:39:35.680> TSX<03:39:36.680> run
03:39:37.750 --> 03:39:37.760 align:start position:0%
create a new post card. TSX run
03:39:37.760 --> 03:39:40.469 align:start position:0%
create a new post card. TSX run
RFC<03:39:38.760> and<03:39:38.960> we<03:39:39.040> can<03:39:39.239> import<03:39:39.600> it<03:39:40.000> right<03:39:40.279> right
03:39:40.469 --> 03:39:40.479 align:start position:0%
RFC and we can import it right right
03:39:40.479 --> 03:39:43.229 align:start position:0%
RFC and we can import it right right
here<03:39:40.880> within<03:39:41.160> the<03:39:41.680> homepage<03:39:42.680> once<03:39:42.840> you<03:39:43.000> do
03:39:43.229 --> 03:39:43.239 align:start position:0%
here within the homepage once you do
03:39:43.239 --> 03:39:46.150 align:start position:0%
here within the homepage once you do
that<03:39:43.760> you<03:39:43.880> can<03:39:44.000> see<03:39:44.199> the<03:39:44.680> postcard<03:39:45.680> and<03:39:45.800> now
03:39:46.150 --> 03:39:46.160 align:start position:0%
that you can see the postcard and now
03:39:46.160 --> 03:39:48.710 align:start position:0%
that you can see the postcard and now
within<03:39:46.920> the<03:39:47.080> postcard<03:39:47.960> we<03:39:48.080> are<03:39:48.279> ready<03:39:48.520> to
03:39:48.710 --> 03:39:48.720 align:start position:0%
within the postcard we are ready to
03:39:48.720 --> 03:39:51.990 align:start position:0%
within the postcard we are ready to
implement<03:39:49.439> the<03:39:49.680> UI<03:39:50.520> of<03:39:50.640> the
03:39:51.990 --> 03:39:52.000 align:start position:0%
implement the UI of the
03:39:52.000 --> 03:39:55.389 align:start position:0%
implement the UI of the
postcard<03:39:53.000> first<03:39:53.239> of<03:39:53.439> all<03:39:53.960> we<03:39:54.199> know<03:39:54.960> that<03:39:55.199> it's
03:39:55.389 --> 03:39:55.399 align:start position:0%
postcard first of all we know that it's
03:39:55.399 --> 03:39:58.750 align:start position:0%
postcard first of all we know that it's
going<03:39:55.640> to<03:39:56.080> accept<03:39:56.960> posts<03:39:57.560> as<03:39:57.720> the<03:39:57.920> prop<03:39:58.520> so<03:39:58.680> we
03:39:58.750 --> 03:39:58.760 align:start position:0%
going to accept posts as the prop so we
03:39:58.760 --> 03:40:01.830 align:start position:0%
going to accept posts as the prop so we
can<03:39:58.920> say<03:39:59.239> post<03:40:00.199> did<03:40:00.399> we<03:40:00.560> pass<03:40:00.720> it<03:40:00.840> as<03:40:00.960> a<03:40:01.160> post<03:40:01.439> or
03:40:01.830 --> 03:40:01.840 align:start position:0%
can say post did we pass it as a post or
03:40:01.840 --> 03:40:04.030 align:start position:0%
can say post did we pass it as a post or
posts<03:40:02.840> yeah<03:40:03.000> it's<03:40:03.160> definitely<03:40:03.520> going<03:40:03.680> to<03:40:03.800> be
03:40:04.030 --> 03:40:04.040 align:start position:0%
posts yeah it's definitely going to be
03:40:04.040 --> 03:40:06.870 align:start position:0%
posts yeah it's definitely going to be
post<03:40:04.640> because<03:40:04.840> it's<03:40:05.040> singular<03:40:05.560> one<03:40:06.359> so<03:40:06.680> we<03:40:06.760> can
03:40:06.870 --> 03:40:06.880 align:start position:0%
post because it's singular one so we can
03:40:06.880 --> 03:40:10.150 align:start position:0%
post because it's singular one so we can
say<03:40:07.199> post<03:40:07.720> is<03:40:07.880> going<03:40:08.040> to<03:40:08.199> be<03:40:08.359> of<03:40:08.520> a<03:40:08.800> type<03:40:09.800> post
03:40:10.150 --> 03:40:10.160 align:start position:0%
say post is going to be of a type post
03:40:10.160 --> 03:40:13.150 align:start position:0%
say post is going to be of a type post
post<03:40:10.479> card<03:40:11.120> props<03:40:12.120> where<03:40:12.399> we<03:40:12.520> can<03:40:12.720> Define<03:40:12.960> it
03:40:13.150 --> 03:40:13.160 align:start position:0%
post card props where we can Define it
03:40:13.160 --> 03:40:16.550 align:start position:0%
post card props where we can Define it
right<03:40:13.319> here<03:40:13.439> at<03:40:13.560> the<03:40:13.760> top<03:40:14.520> type<03:40:15.359> postcard
03:40:16.550 --> 03:40:16.560 align:start position:0%
right here at the top type postcard
03:40:16.560 --> 03:40:20.469 align:start position:0%
right here at the top type postcard
props<03:40:17.560> is<03:40:17.720> going<03:40:17.880> to<03:40:18.040> be<03:40:18.720> post<03:40:19.640> of
03:40:20.469 --> 03:40:20.479 align:start position:0%
props is going to be post of
03:40:20.479 --> 03:40:23.910 align:start position:0%
props is going to be post of
models.<03:40:21.640> document<03:40:22.640> and<03:40:22.840> this<03:40:23.000> models<03:40:23.680> is
03:40:23.910 --> 03:40:23.920 align:start position:0%
models. document and this models is
03:40:23.920 --> 03:40:26.030 align:start position:0%
models. document and this models is
coming<03:40:24.239> from<03:40:24.640> app<03:40:25.000> right<03:40:25.279> so<03:40:25.560> immediately
03:40:26.030 --> 03:40:26.040 align:start position:0%
coming from app right so immediately
03:40:26.040 --> 03:40:29.030 align:start position:0%
coming from app right so immediately
know<03:40:26.399> the<03:40:26.560> structure<03:40:27.199> of<03:40:27.399> this<03:40:27.880> document<03:40:28.880> once
03:40:29.030 --> 03:40:29.040 align:start position:0%
know the structure of this document once
03:40:29.040 --> 03:40:31.309 align:start position:0%
know the structure of this document once
we<03:40:29.199> get<03:40:29.359> it<03:40:29.720> we<03:40:29.840> can<03:40:30.000> use<03:40:30.279> its<03:40:30.520> data<03:40:31.000> and<03:40:31.160> then
03:40:31.309 --> 03:40:31.319 align:start position:0%
we get it we can use its data and then
03:40:31.319 --> 03:40:33.870 align:start position:0%
we get it we can use its data and then
render<03:40:31.680> it<03:40:32.279> so<03:40:32.479> let's<03:40:32.640> create<03:40:32.880> a<03:40:33.040> new<03:40:33.239> div
03:40:33.870 --> 03:40:33.880 align:start position:0%
render it so let's create a new div
03:40:33.880 --> 03:40:36.910 align:start position:0%
render it so let's create a new div
that's<03:40:34.080> going<03:40:34.279> to<03:40:34.520> have<03:40:34.880> a<03:40:35.199> class<03:40:35.760> name<03:40:36.560> equal
03:40:36.910 --> 03:40:36.920 align:start position:0%
that's going to have a class name equal
03:40:36.920 --> 03:40:41.469 align:start position:0%
that's going to have a class name equal
to<03:40:38.000> post-c<03:40:39.120> card<03:40:40.520> that's<03:40:40.760> going<03:40:40.920> to<03:40:41.120> create
03:40:41.469 --> 03:40:41.479 align:start position:0%
to post-c card that's going to create
03:40:41.479 --> 03:40:44.070 align:start position:0%
to post-c card that's going to create
this<03:40:41.720> nice<03:40:42.319> rectangle<03:40:43.319> we<03:40:43.439> can<03:40:43.640> also<03:40:43.880> do
03:40:44.070 --> 03:40:44.080 align:start position:0%
this nice rectangle we can also do
03:40:44.080 --> 03:40:46.590 align:start position:0%
this nice rectangle we can also do
another<03:40:44.399> one<03:40:45.120> right<03:40:45.359> below<03:40:46.080> that's<03:40:46.279> going<03:40:46.439> to
03:40:46.590 --> 03:40:46.600 align:start position:0%
another one right below that's going to
03:40:46.600 --> 03:40:50.510 align:start position:0%
another one right below that's going to
have<03:40:46.760> a<03:40:47.000> class<03:40:47.359> name<03:40:48.080> equal<03:40:48.359> to<03:40:48.920> flex
03:40:50.510 --> 03:40:50.520 align:start position:0%
have a class name equal to flex
03:40:50.520 --> 03:40:53.189 align:start position:0%
have a class name equal to flex
between<03:40:51.520> within<03:40:51.800> it<03:40:52.160> we<03:40:52.239> can<03:40:52.439> create<03:40:52.800> another
03:40:53.189 --> 03:40:53.199 align:start position:0%
between within it we can create another
03:40:53.199 --> 03:40:56.429 align:start position:0%
between within it we can create another
div<03:40:53.800> that's<03:40:54.000> going<03:40:54.160> to<03:40:54.439> have<03:40:54.800> a<03:40:55.120> class<03:40:55.560> name
03:40:56.429 --> 03:40:56.439 align:start position:0%
div that's going to have a class name
03:40:56.439 --> 03:41:01.189 align:start position:0%
div that's going to have a class name
equal<03:40:56.760> to<03:40:57.560> flex<03:40:58.560> items<03:40:59.040> Das<03:40:59.399> Center<03:41:00.399> and<03:41:00.680> a<03:41:00.920> gap
03:41:01.189 --> 03:41:01.199 align:start position:0%
equal to flex items Das Center and a gap
03:41:01.199 --> 03:41:03.910 align:start position:0%
equal to flex items Das Center and a gap
of<03:41:01.439> three<03:41:02.439> and<03:41:02.640> then<03:41:02.920> there<03:41:03.279> we<03:41:03.399> can<03:41:03.520> render
03:41:03.910 --> 03:41:03.920 align:start position:0%
of three and then there we can render
03:41:03.920 --> 03:41:06.269 align:start position:0%
of three and then there we can render
who<03:41:04.239> created<03:41:04.640> it<03:41:04.960> so<03:41:05.160> that's<03:41:05.359> going<03:41:05.520> to<03:41:05.720> be
03:41:06.269 --> 03:41:06.279 align:start position:0%
who created it so that's going to be
03:41:06.279 --> 03:41:09.510 align:start position:0%
who created it so that's going to be
this<03:41:06.840> right<03:41:07.080> here<03:41:07.800> Hobbit<03:41:08.439> with<03:41:08.600> a<03:41:08.760> photo<03:41:09.279> two
03:41:09.510 --> 03:41:09.520 align:start position:0%
this right here Hobbit with a photo two
03:41:09.520 --> 03:41:13.030 align:start position:0%
this right here Hobbit with a photo two
days<03:41:09.720> ago<03:41:10.399> and<03:41:10.560> then<03:41:10.840> tags<03:41:11.399> that<03:41:11.520> were<03:41:12.040> added
03:41:13.030 --> 03:41:13.040 align:start position:0%
days ago and then tags that were added
03:41:13.040 --> 03:41:16.349 align:start position:0%
days ago and then tags that were added
so<03:41:13.279> let's<03:41:13.479> create<03:41:13.720> a<03:41:13.880> new<03:41:14.359> link<03:41:15.359> and<03:41:15.600> this<03:41:15.800> link
03:41:16.349 --> 03:41:16.359 align:start position:0%
so let's create a new link and this link
03:41:16.359 --> 03:41:18.990 align:start position:0%
so let's create a new link and this link
has<03:41:16.520> to<03:41:16.680> be<03:41:16.840> imported<03:41:17.560> so<03:41:17.720> we<03:41:17.840> can<03:41:18.000> say<03:41:18.279> import
03:41:18.990 --> 03:41:19.000 align:start position:0%
has to be imported so we can say import
03:41:19.000 --> 03:41:23.349 align:start position:0%
has to be imported so we can say import
link<03:41:19.840> from<03:41:20.359> react<03:41:21.160> router
03:41:23.349 --> 03:41:23.359 align:start position:0%
link from react router
03:41:23.359 --> 03:41:26.590 align:start position:0%
link from react router
Dom<03:41:24.359> that<03:41:24.600> link<03:41:25.040> is<03:41:25.199> going<03:41:25.359> to<03:41:25.600> point<03:41:26.159> to<03:41:26.399> the
03:41:26.590 --> 03:41:26.600 align:start position:0%
Dom that link is going to point to the
03:41:26.600 --> 03:41:29.229 align:start position:0%
Dom that link is going to point to the
Creator<03:41:27.080> who<03:41:27.279> created<03:41:27.680> it<03:41:28.040> so<03:41:28.199> we<03:41:28.279> can<03:41:28.439> say
03:41:29.229 --> 03:41:29.239 align:start position:0%
Creator who created it so we can say
03:41:29.239 --> 03:41:31.550 align:start position:0%
Creator who created it so we can say
two<03:41:30.239> that's<03:41:30.399> going<03:41:30.560> to<03:41:30.640> be
03:41:31.550 --> 03:41:31.560 align:start position:0%
two that's going to be
03:41:31.560 --> 03:41:34.630 align:start position:0%
two that's going to be
dynamic<03:41:32.560> forward<03:41:33.000> SL
03:41:34.630 --> 03:41:34.640 align:start position:0%
dynamic forward SL
03:41:34.640 --> 03:41:36.309 align:start position:0%
dynamic forward SL
profile
03:41:36.309 --> 03:41:36.319 align:start position:0%
profile
03:41:36.319 --> 03:41:41.149 align:start position:0%
profile
slost<03:41:37.319> doc<03:41:38.120> creator.<03:41:39.120> dollar<03:41:39.560> sign
03:41:41.149 --> 03:41:41.159 align:start position:0%
slost doc creator. dollar sign
03:41:41.159 --> 03:41:44.269 align:start position:0%
slost doc creator. dollar sign
ID<03:41:42.159> here<03:41:42.479> we<03:41:42.560> can<03:41:42.720> show<03:41:43.040> the<03:41:43.239> Creator's<03:41:43.760> image
03:41:44.269 --> 03:41:44.279 align:start position:0%
ID here we can show the Creator's image
03:41:44.279 --> 03:41:48.110 align:start position:0%
ID here we can show the Creator's image
by<03:41:44.399> saying<03:41:44.760> image<03:41:45.680> has<03:41:45.840> a<03:41:46.120> source<03:41:46.640> of<03:41:46.880> equal<03:41:47.239> to
03:41:48.110 --> 03:41:48.120 align:start position:0%
by saying image has a source of equal to
03:41:48.120 --> 03:41:50.870 align:start position:0%
by saying image has a source of equal to
post<03:41:48.640> question<03:41:49.040> mark.
03:41:50.870 --> 03:41:50.880 align:start position:0%
post question mark.
03:41:50.880 --> 03:41:54.790 align:start position:0%
post question mark.
Creator<03:41:51.880> question<03:41:52.279> mark.<03:41:52.840> image<03:41:53.359> URL<03:41:54.359> or<03:41:54.720> we
03:41:54.790 --> 03:41:54.800 align:start position:0%
Creator question mark. image URL or we
03:41:54.800 --> 03:42:00.469 align:start position:0%
Creator question mark. image URL or we
can<03:41:54.960> do<03:41:55.080> a<03:41:55.279> default<03:41:56.120> of<03:41:56.760> SL<03:41:57.319> assets<03:41:58.319> SL<03:41:59.000> ions<03:42:00.000> SL
03:42:00.469 --> 03:42:00.479 align:start position:0%
can do a default of SL assets SL ions SL
03:42:00.479 --> 03:42:04.870 align:start position:0%
can do a default of SL assets SL ions SL
profile<03:42:01.040> dplace<03:42:01.840> holder.<03:42:03.279> SVG<03:42:04.279> there<03:42:04.439> we<03:42:04.640> go
03:42:04.870 --> 03:42:04.880 align:start position:0%
profile dplace holder. SVG there we go
03:42:04.880 --> 03:42:07.950 align:start position:0%
profile dplace holder. SVG there we go
that's<03:42:05.040> a<03:42:05.239> huge<03:42:05.680> the<03:42:05.840> real<03:42:06.399> JSM<03:42:07.399> we<03:42:07.520> can<03:42:07.680> also
03:42:07.950 --> 03:42:07.960 align:start position:0%
that's a huge the real JSM we can also
03:42:07.960 --> 03:42:10.750 align:start position:0%
that's a huge the real JSM we can also
give<03:42:08.080> it<03:42:08.199> an<03:42:08.319> ALT<03:42:08.680> tag<03:42:08.920> of<03:42:09.159> creator
03:42:10.750 --> 03:42:10.760 align:start position:0%
give it an ALT tag of creator
03:42:10.760 --> 03:42:14.510 align:start position:0%
give it an ALT tag of creator
and<03:42:11.040> a<03:42:11.279> class<03:42:11.640> name<03:42:12.159> of<03:42:12.600> rounded<03:42:13.399> D
03:42:14.510 --> 03:42:14.520 align:start position:0%
and a class name of rounded D
03:42:14.520 --> 03:42:19.550 align:start position:0%
and a class name of rounded D
full<03:42:15.520> W<03:42:16.120> of<03:42:16.840> 12<03:42:17.840> and<03:42:18.040> then<03:42:18.159> on<03:42:18.359> large<03:42:18.720> devices<03:42:19.239> h
03:42:19.550 --> 03:42:19.560 align:start position:0%
full W of 12 and then on large devices h
03:42:19.560 --> 03:42:22.710 align:start position:0%
full W of 12 and then on large devices h
of<03:42:19.760> 12<03:42:20.439> as<03:42:20.640> well<03:42:21.399> below<03:42:21.800> that<03:42:21.960> link<03:42:22.479> we<03:42:22.600> can
03:42:22.710 --> 03:42:22.720 align:start position:0%
of 12 as well below that link we can
03:42:22.720 --> 03:42:25.229 align:start position:0%
of 12 as well below that link we can
render<03:42:23.120> a<03:42:23.359> div<03:42:24.120> that's<03:42:24.319> going<03:42:24.479> to<03:42:24.720> have<03:42:24.960> a
03:42:25.229 --> 03:42:25.239 align:start position:0%
render a div that's going to have a
03:42:25.239 --> 03:42:30.149 align:start position:0%
render a div that's going to have a
class<03:42:25.600> name<03:42:26.359> equal<03:42:26.680> to<03:42:27.600> flex
03:42:30.149 --> 03:42:30.159 align:start position:0%
class name equal to flex
03:42:30.159 --> 03:42:33.910 align:start position:0%
class name equal to flex
flex-all<03:42:31.159> and<03:42:31.680> within<03:42:31.960> it<03:42:32.359> we<03:42:32.479> can<03:42:32.640> render<03:42:33.199> a<03:42:33.439> P
03:42:33.910 --> 03:42:33.920 align:start position:0%
flex-all and within it we can render a P
03:42:33.920 --> 03:42:37.389 align:start position:0%
flex-all and within it we can render a P
tag<03:42:34.920> that's<03:42:35.120> going<03:42:35.279> to<03:42:35.399> render<03:42:35.840> the<03:42:36.120> post.
03:42:37.389 --> 03:42:37.399 align:start position:0%
tag that's going to render the post.
03:42:37.399 --> 03:42:41.830 align:start position:0%
tag that's going to render the post.
creator.<03:42:38.560> name<03:42:39.560> okay<03:42:40.040> that's<03:42:40.399> better<03:42:41.399> below
03:42:41.830 --> 03:42:41.840 align:start position:0%
creator. name okay that's better below
03:42:41.840 --> 03:42:44.590 align:start position:0%
creator. name okay that's better below
this<03:42:42.000> P<03:42:42.279> tag<03:42:42.640> we<03:42:42.760> can<03:42:42.880> render<03:42:43.199> a<03:42:43.439> div<03:42:44.439> that's
03:42:44.590 --> 03:42:44.600 align:start position:0%
this P tag we can render a div that's
03:42:44.600 --> 03:42:47.550 align:start position:0%
this P tag we can render a div that's
going<03:42:44.760> to<03:42:44.880> render<03:42:45.279> a<03:42:45.479> new<03:42:45.760> P<03:42:46.040> tag<03:42:47.000> and<03:42:47.159> within
03:42:47.550 --> 03:42:47.560 align:start position:0%
going to render a new P tag and within
03:42:47.560 --> 03:42:51.309 align:start position:0%
going to render a new P tag and within
here<03:42:48.000> we<03:42:48.080> can<03:42:48.199> show<03:42:48.439> the<03:42:49.159> post.<03:42:50.159> dollar<03:42:50.560> sign
03:42:51.309 --> 03:42:51.319 align:start position:0%
here we can show the post. dollar sign
03:42:51.319 --> 03:42:54.469 align:start position:0%
here we can show the post. dollar sign
created<03:42:52.520> at<03:42:53.520> there<03:42:53.640> we<03:42:53.800> go<03:42:53.960> so<03:42:54.120> now<03:42:54.239> we<03:42:54.359> have
03:42:54.469 --> 03:42:54.479 align:start position:0%
created at there we go so now we have
03:42:54.479 --> 03:42:57.309 align:start position:0%
created at there we go so now we have
the<03:42:54.600> full<03:42:55.080> date<03:42:56.080> below<03:42:56.399> it<03:42:56.680> we<03:42:56.800> can<03:42:56.960> add<03:42:57.159> some
03:42:57.309 --> 03:42:57.319 align:start position:0%
the full date below it we can add some
03:42:57.319 --> 03:42:59.790 align:start position:0%
the full date below it we can add some
kind<03:42:57.439> of<03:42:57.560> a<03:42:57.720> dash<03:42:58.399> and<03:42:58.560> then<03:42:58.800> add<03:42:59.080> another<03:42:59.439> one
03:42:59.790 --> 03:42:59.800 align:start position:0%
kind of a dash and then add another one
03:42:59.800 --> 03:43:02.030 align:start position:0%
kind of a dash and then add another one
that's<03:43:00.000> going<03:43:00.159> to<03:43:00.279> say<03:43:00.640> post.
03:43:02.030 --> 03:43:02.040 align:start position:0%
that's going to say post.
03:43:02.040 --> 03:43:04.349 align:start position:0%
that's going to say post.
location<03:43:03.040> there<03:43:03.199> we<03:43:03.359> go<03:43:03.560> so<03:43:03.760> now<03:43:03.960> we<03:43:04.120> have
03:43:04.349 --> 03:43:04.359 align:start position:0%
location there we go so now we have
03:43:04.359 --> 03:43:07.189 align:start position:0%
location there we go so now we have
almost<03:43:04.800> everything<03:43:05.439> we<03:43:05.760> need<03:43:06.640> but<03:43:06.880> let's<03:43:07.080> go
03:43:07.189 --> 03:43:07.199 align:start position:0%
almost everything we need but let's go
03:43:07.199 --> 03:43:10.149 align:start position:0%
almost everything we need but let's go
ahead<03:43:07.399> and<03:43:07.640> style<03:43:07.960> it<03:43:08.080> a<03:43:08.239> bit<03:43:08.880> better<03:43:10.000> this
03:43:10.149 --> 03:43:10.159 align:start position:0%
ahead and style it a bit better this
03:43:10.159 --> 03:43:12.750 align:start position:0%
ahead and style it a bit better this
first<03:43:10.520> P<03:43:10.800> tag<03:43:11.199> is<03:43:11.359> going<03:43:11.560> to<03:43:11.800> have<03:43:12.080> a<03:43:12.359> class
03:43:12.750 --> 03:43:12.760 align:start position:0%
first P tag is going to have a class
03:43:12.760 --> 03:43:16.110 align:start position:0%
first P tag is going to have a class
name<03:43:13.359> equal<03:43:13.680> to<03:43:14.359> base-
03:43:16.110 --> 03:43:16.120 align:start position:0%
name equal to base-
03:43:16.120 --> 03:43:18.750 align:start position:0%
name equal to base-
medium<03:43:17.120> this<03:43:17.239> is<03:43:17.359> going<03:43:17.520> to<03:43:17.640> make<03:43:17.760> it<03:43:17.960> Bolder
03:43:18.750 --> 03:43:18.760 align:start position:0%
medium this is going to make it Bolder
03:43:18.760 --> 03:43:21.429 align:start position:0%
medium this is going to make it Bolder
on<03:43:18.960> large<03:43:19.359> devices<03:43:19.880> it's<03:43:20.040> going<03:43:20.199> to<03:43:20.319> be<03:43:20.560> body
03:43:21.429 --> 03:43:21.439 align:start position:0%
on large devices it's going to be body
03:43:21.439 --> 03:43:24.710 align:start position:0%
on large devices it's going to be body
bold<03:43:22.439> and<03:43:22.600> it's<03:43:22.760> going<03:43:22.920> to<03:43:23.040> be<03:43:23.239> text-
03:43:24.710 --> 03:43:24.720 align:start position:0%
bold and it's going to be text-
03:43:24.720 --> 03:43:27.750 align:start position:0%
bold and it's going to be text-
light-1<03:43:25.720> the<03:43:25.960> div<03:43:26.359> below<03:43:26.920> is<03:43:27.040> going<03:43:27.239> to<03:43:27.399> have<03:43:27.520> a
03:43:27.750 --> 03:43:27.760 align:start position:0%
light-1 the div below is going to have a
03:43:27.760 --> 03:43:31.229 align:start position:0%
light-1 the div below is going to have a
class<03:43:28.080> name<03:43:28.600> of<03:43:28.840> flex<03:43:29.359> Das<03:43:30.040> Center<03:43:31.040> that's
03:43:31.229 --> 03:43:31.239 align:start position:0%
class name of flex Das Center that's
03:43:31.239 --> 03:43:34.630 align:start position:0%
class name of flex Das Center that's
going<03:43:31.399> to<03:43:31.560> center<03:43:31.920> it<03:43:32.800> a<03:43:33.040> gap<03:43:33.319> of<03:43:33.479> Two<03:43:34.199> and<03:43:34.399> a
03:43:34.630 --> 03:43:34.640 align:start position:0%
going to center it a gap of Two and a
03:43:34.640 --> 03:43:37.590 align:start position:0%
going to center it a gap of Two and a
text<03:43:35.040> of<03:43:35.359> light<03:43:35.920> three<03:43:36.439> because<03:43:36.680> it's<03:43:36.920> not<03:43:37.239> so
03:43:37.590 --> 03:43:37.600 align:start position:0%
text of light three because it's not so
03:43:37.600 --> 03:43:40.990 align:start position:0%
text of light three because it's not so
important<03:43:38.439> as<03:43:38.600> the<03:43:38.760> Creator<03:43:39.159> name<03:43:40.319> the<03:43:40.479> P<03:43:40.720> tag
03:43:40.990 --> 03:43:41.000 align:start position:0%
important as the Creator name the P tag
03:43:41.000 --> 03:43:44.670 align:start position:0%
important as the Creator name the P tag
below<03:43:41.479> can<03:43:41.680> have<03:43:41.840> a<03:43:42.040> class<03:43:42.399> name<03:43:42.960> of<03:43:43.680> subtle
03:43:44.670 --> 03:43:44.680 align:start position:0%
below can have a class name of subtle
03:43:44.680 --> 03:43:47.990 align:start position:0%
below can have a class name of subtle
semi<03:43:45.080> bold<03:43:45.880> so<03:43:46.040> it's<03:43:46.159> a<03:43:46.279> bit<03:43:46.479> less<03:43:47.000> important
03:43:47.990 --> 03:43:48.000 align:start position:0%
semi bold so it's a bit less important
03:43:48.000 --> 03:43:52.110 align:start position:0%
semi bold so it's a bit less important
and<03:43:48.319> a<03:43:48.600> large<03:43:48.960> devices<03:43:49.680> small
03:43:52.110 --> 03:43:52.120 align:start position:0%
and a large devices small
03:43:52.120 --> 03:43:55.070 align:start position:0%
and a large devices small
regular<03:43:53.120> finally<03:43:53.760> the<03:43:53.960> last<03:43:54.239> btag<03:43:54.760> is<03:43:54.920> going
03:43:55.070 --> 03:43:55.080 align:start position:0%
regular finally the last btag is going
03:43:55.080 --> 03:43:58.830 align:start position:0%
regular finally the last btag is going
to<03:43:55.239> have<03:43:55.399> a<03:43:55.560> class<03:43:56.000> name<03:43:56.680> of<03:43:57.080> subtle<03:43:58.040> D<03:43:58.319> semi
03:43:58.830 --> 03:43:58.840 align:start position:0%
to have a class name of subtle D semi
03:43:58.840 --> 03:44:02.950 align:start position:0%
to have a class name of subtle D semi
bold<03:43:59.840> and<03:44:00.000> a<03:44:00.159> large<03:44:00.479> devices<03:44:01.279> small<03:44:02.040> regular
03:44:02.950 --> 03:44:02.960 align:start position:0%
bold and a large devices small regular
03:44:02.960 --> 03:44:05.630 align:start position:0%
bold and a large devices small regular
so<03:44:03.239> same<03:44:03.760> thing<03:44:04.760> now<03:44:04.920> the<03:44:05.080> last<03:44:05.239> thing<03:44:05.399> we<03:44:05.520> have
03:44:05.630 --> 03:44:05.640 align:start position:0%
so same thing now the last thing we have
03:44:05.640 --> 03:44:08.590 align:start position:0%
so same thing now the last thing we have
to<03:44:05.760> figure<03:44:06.040> out<03:44:06.600> is<03:44:06.960> how<03:44:07.120> to<03:44:07.399> actually<03:44:07.840> format
03:44:08.590 --> 03:44:08.600 align:start position:0%
to figure out is how to actually format
03:44:08.600 --> 03:44:10.630 align:start position:0%
to figure out is how to actually format
this<03:44:08.800> dat<03:44:09.199> string<03:44:09.880> into<03:44:10.159> something<03:44:10.479> that
03:44:10.630 --> 03:44:10.640 align:start position:0%
this dat string into something that
03:44:10.640 --> 03:44:13.469 align:start position:0%
this dat string into something that
makes<03:44:10.920> sense<03:44:11.600> like<03:44:11.760> on<03:44:12.080> here<03:44:12.479> we<03:44:12.600> say<03:44:12.880> two<03:44:13.279> days
03:44:13.469 --> 03:44:13.479 align:start position:0%
makes sense like on here we say two days
03:44:13.479 --> 03:44:16.830 align:start position:0%
makes sense like on here we say two days
ago<03:44:14.439> and<03:44:14.760> this<03:44:15.000> my<03:44:15.159> friends<03:44:15.760> is<03:44:15.960> the<03:44:16.199> job<03:44:16.520> for
03:44:16.830 --> 03:44:16.840 align:start position:0%
ago and this my friends is the job for
03:44:16.840 --> 03:44:19.670 align:start position:0%
ago and this my friends is the job for
Chad<03:44:17.279> GPT<03:44:18.279> no<03:44:18.520> longer<03:44:18.840> do<03:44:18.960> you<03:44:19.080> have<03:44:19.199> to<03:44:19.359> create
03:44:19.670 --> 03:44:19.680 align:start position:0%
Chad GPT no longer do you have to create
03:44:19.680 --> 03:44:21.429 align:start position:0%
Chad GPT no longer do you have to create
these<03:44:19.880> functions<03:44:20.279> on<03:44:20.439> your<03:44:20.600> own<03:44:21.159> you<03:44:21.279> can
03:44:21.429 --> 03:44:21.439 align:start position:0%
these functions on your own you can
03:44:21.439 --> 03:44:23.830 align:start position:0%
these functions on your own you can
Google<03:44:21.760> it<03:44:22.040> or<03:44:22.159> you<03:44:22.239> can<03:44:22.439> simply<03:44:22.840> ask<03:44:23.120> Chad<03:44:23.399> GPT
03:44:23.830 --> 03:44:23.840 align:start position:0%
Google it or you can simply ask Chad GPT
03:44:23.840 --> 03:44:26.910 align:start position:0%
Google it or you can simply ask Chad GPT
to<03:44:23.960> do<03:44:24.120> it<03:44:24.239> for<03:44:24.800> you<03:44:25.800> so<03:44:26.080> if<03:44:26.199> you<03:44:26.359> go<03:44:26.479> to<03:44:26.640> chat
03:44:26.910 --> 03:44:26.920 align:start position:0%
to do it for you so if you go to chat
03:44:26.920 --> 03:44:30.269 align:start position:0%
to do it for you so if you go to chat
GPT<03:44:27.800> say<03:44:28.120> something<03:44:28.560> like<03:44:29.199> I<03:44:29.439> have<03:44:29.680> this<03:44:29.880> date
03:44:30.269 --> 03:44:30.279 align:start position:0%
GPT say something like I have this date
03:44:30.279 --> 03:44:33.309 align:start position:0%
GPT say something like I have this date
string<03:44:31.279> literally<03:44:31.840> like<03:44:32.040> that<03:44:32.520> I<03:44:32.720> have<03:44:33.080> this
03:44:33.309 --> 03:44:33.319 align:start position:0%
string literally like that I have this
03:44:33.319 --> 03:44:35.030 align:start position:0%
string literally like that I have this
date
03:44:35.030 --> 03:44:35.040 align:start position:0%
date
03:44:35.040 --> 03:44:37.189 align:start position:0%
date
string<03:44:36.040> I'm
03:44:37.189 --> 03:44:37.199 align:start position:0%
string I'm
03:44:37.199 --> 03:44:40.790 align:start position:0%
string I'm
building<03:44:38.199> a<03:44:38.760> social
03:44:40.790 --> 03:44:40.800 align:start position:0%
building a social
03:44:40.800 --> 03:44:42.630 align:start position:0%
building a social
media<03:44:41.319> app<03:44:41.720> in
03:44:42.630 --> 03:44:42.640 align:start position:0%
media app in
03:44:42.640 --> 03:44:46.830 align:start position:0%
media app in
JavaScript<03:44:43.640> and<03:44:44.040> I<03:44:44.239> want<03:44:45.239> to<03:44:45.600> convert<03:44:46.520> that
03:44:46.830 --> 03:44:46.840 align:start position:0%
JavaScript and I want to convert that
03:44:46.840 --> 03:44:50.229 align:start position:0%
JavaScript and I want to convert that
date<03:44:47.359> string<03:44:48.359> into<03:44:48.920> a<03:44:49.199> more
03:44:50.229 --> 03:44:50.239 align:start position:0%
date string into a more
03:44:50.239 --> 03:44:55.389 align:start position:0%
date string into a more
meaningful<03:44:51.359> format<03:44:52.479> like<03:44:53.479> two<03:44:54.080> days<03:44:54.359> ago<03:44:55.120> or
03:44:55.389 --> 03:44:55.399 align:start position:0%
meaningful format like two days ago or
03:44:55.399 --> 03:44:57.469 align:start position:0%
meaningful format like two days ago or
two<03:44:55.920> hours
03:44:57.469 --> 03:44:57.479 align:start position:0%
two hours
03:44:57.479 --> 03:45:00.070 align:start position:0%
two hours
ago<03:44:58.479> create<03:44:59.000> a
03:45:00.070 --> 03:45:00.080 align:start position:0%
ago create a
03:45:00.080 --> 03:45:03.950 align:start position:0%
ago create a
JavaScript<03:45:01.080> function<03:45:02.000> that<03:45:02.319> does<03:45:02.680> that<03:45:03.600> okay
03:45:03.950 --> 03:45:03.960 align:start position:0%
JavaScript function that does that okay
03:45:03.960 --> 03:45:06.030 align:start position:0%
JavaScript function that does that okay
I<03:45:04.040> could<03:45:04.159> have<03:45:04.279> been<03:45:04.399> a<03:45:04.520> bit<03:45:04.680> more<03:45:04.920> precise<03:45:05.640> but
03:45:06.030 --> 03:45:06.040 align:start position:0%
I could have been a bit more precise but
03:45:06.040 --> 03:45:07.870 align:start position:0%
I could have been a bit more precise but
this<03:45:06.159> is<03:45:06.279> how<03:45:06.399> we<03:45:06.520> can<03:45:06.640> do<03:45:06.760> it<03:45:06.960> as<03:45:07.120> well
03:45:07.870 --> 03:45:07.880 align:start position:0%
this is how we can do it as well
03:45:07.880 --> 03:45:09.070 align:start position:0%
this is how we can do it as well
hopefully<03:45:08.319> it's<03:45:08.479> going<03:45:08.640> to<03:45:08.800> give<03:45:08.920> us
03:45:09.070 --> 03:45:09.080 align:start position:0%
hopefully it's going to give us
03:45:09.080 --> 03:45:11.710 align:start position:0%
hopefully it's going to give us
something<03:45:09.319> we<03:45:09.399> can<03:45:09.760> work<03:45:10.040> with<03:45:11.040> it<03:45:11.199> created<03:45:11.560> a
03:45:11.710 --> 03:45:11.720 align:start position:0%
something we can work with it created a
03:45:11.720 --> 03:45:13.910 align:start position:0%
something we can work with it created a
function<03:45:12.080> called<03:45:12.319> format<03:45:12.840> date<03:45:13.560> and<03:45:13.800> it
03:45:13.910 --> 03:45:13.920 align:start position:0%
function called format date and it
03:45:13.920 --> 03:45:16.910 align:start position:0%
function called format date and it
showed<03:45:14.279> us<03:45:14.720> how<03:45:14.920> we<03:45:15.040> can<03:45:15.239> use<03:45:15.399> it<03:45:16.279> so<03:45:16.720> let's
03:45:16.910 --> 03:45:16.920 align:start position:0%
showed us how we can use it so let's
03:45:16.920 --> 03:45:21.469 align:start position:0%
showed us how we can use it so let's
simply<03:45:17.399> copy<03:45:18.080> this<03:45:18.560> function<03:45:19.560> and<03:45:19.720> let's<03:45:20.479> go
03:45:21.469 --> 03:45:21.479 align:start position:0%
simply copy this function and let's go
03:45:21.479 --> 03:45:25.030 align:start position:0%
simply copy this function and let's go
right<03:45:21.720> here<03:45:22.080> to<03:45:22.319> our<03:45:22.760> source<03:45:23.760> lib<03:45:24.720> and<03:45:24.840> then
03:45:25.030 --> 03:45:25.040 align:start position:0%
right here to our source lib and then
03:45:25.040 --> 03:45:28.510 align:start position:0%
right here to our source lib and then
utils<03:45:25.920> dots<03:45:26.920> within<03:45:27.319> here<03:45:27.800> you<03:45:27.920> can<03:45:28.159> paste
03:45:28.510 --> 03:45:28.520 align:start position:0%
utils dots within here you can paste
03:45:28.520 --> 03:45:32.429 align:start position:0%
utils dots within here you can paste
this<03:45:29.040> function<03:45:30.000> and<03:45:30.120> we<03:45:30.239> can<03:45:30.439> also<03:45:30.680> say<03:45:31.439> export
03:45:32.429 --> 03:45:32.439 align:start position:0%
this function and we can also say export
03:45:32.439 --> 03:45:35.870 align:start position:0%
this function and we can also say export
function<03:45:32.840> format<03:45:33.880> date<03:45:34.880> here<03:45:35.159> our<03:45:35.399> typescript
03:45:35.870 --> 03:45:35.880 align:start position:0%
function format date here our typescript
03:45:35.880 --> 03:45:37.750 align:start position:0%
function format date here our typescript
is<03:45:35.960> complaining<03:45:36.359> a<03:45:36.520> bit<03:45:36.920> because<03:45:37.120> I<03:45:37.239> forgot<03:45:37.600> to
03:45:37.750 --> 03:45:37.760 align:start position:0%
is complaining a bit because I forgot to
03:45:37.760 --> 03:45:40.110 align:start position:0%
is complaining a bit because I forgot to
tell<03:45:38.279> chat<03:45:38.560> GPT<03:45:39.000> to<03:45:39.080> make<03:45:39.199> it<03:45:39.279> in<03:45:39.399> typ<03:45:39.800> script
03:45:40.110 --> 03:45:40.120 align:start position:0%
tell chat GPT to make it in typ script
03:45:40.120 --> 03:45:43.070 align:start position:0%
tell chat GPT to make it in typ script
so<03:45:40.239> I<03:45:40.319> can<03:45:40.479> simply<03:45:40.760> say<03:45:41.000> make<03:45:41.239> it<03:45:42.080> typescript
03:45:43.070 --> 03:45:43.080 align:start position:0%
so I can simply say make it typescript
03:45:43.080 --> 03:45:45.870 align:start position:0%
so I can simply say make it typescript
that<03:45:43.199> should<03:45:43.359> do<03:45:43.520> the<03:45:43.640> trick<03:45:44.359> right<03:45:45.359> um<03:45:45.680> let's
03:45:45.870 --> 03:45:45.880 align:start position:0%
that should do the trick right um let's
03:45:45.880 --> 03:45:48.670 align:start position:0%
that should do the trick right um let's
see<03:45:46.479> there<03:45:46.600> we<03:45:46.760> go<03:45:46.960> certainly<03:45:47.800> that's<03:45:48.080> great
03:45:48.670 --> 03:45:48.680 align:start position:0%
see there we go certainly that's great
03:45:48.680 --> 03:45:51.070 align:start position:0%
see there we go certainly that's great
so<03:45:48.840> we<03:45:48.920> can<03:45:49.120> simply<03:45:49.479> copy<03:45:49.760> it<03:45:50.000> again<03:45:50.680> and<03:45:50.960> it
03:45:51.070 --> 03:45:51.080 align:start position:0%
so we can simply copy it again and it
03:45:51.080 --> 03:45:54.590 align:start position:0%
so we can simply copy it again and it
should<03:45:51.399> have<03:45:51.840> no<03:45:52.359> problems<03:45:53.159> at<03:45:53.359> all<03:45:54.199> we<03:45:54.359> just
03:45:54.590 --> 03:45:54.600 align:start position:0%
should have no problems at all we just
03:45:54.600 --> 03:45:57.630 align:start position:0%
should have no problems at all we just
have<03:45:54.720> to<03:45:55.359> export<03:45:55.800> it<03:45:56.600> there<03:45:56.720> we<03:45:56.880> go<03:45:57.239> export
03:45:57.630 --> 03:45:57.640 align:start position:0%
have to export it there we go export
03:45:57.640 --> 03:46:01.429 align:start position:0%
have to export it there we go export
format<03:45:58.399> date<03:45:59.399> now<03:45:59.840> we<03:45:59.960> can<03:46:00.279> import<03:46:00.800> this<03:46:01.239> right
03:46:01.429 --> 03:46:01.439 align:start position:0%
format date now we can import this right
03:46:01.439 --> 03:46:03.990 align:start position:0%
format date now we can import this right
here<03:46:01.760> and<03:46:02.000> wrap<03:46:02.439> the<03:46:02.600> post<03:46:02.920> created<03:46:03.319> at<03:46:03.760> so<03:46:03.920> we
03:46:03.990 --> 03:46:04.000 align:start position:0%
here and wrap the post created at so we
03:46:04.000 --> 03:46:06.429 align:start position:0%
here and wrap the post created at so we
can<03:46:04.159> say<03:46:04.479> format<03:46:04.960> date
03:46:06.429 --> 03:46:06.439 align:start position:0%
can say format date
03:46:06.439 --> 03:46:09.110 align:start position:0%
can say format date
wrapid<03:46:07.439> and<03:46:07.560> then<03:46:07.720> we<03:46:07.840> can<03:46:08.040> simply<03:46:08.600> import<03:46:08.960> it
03:46:09.110 --> 03:46:09.120 align:start position:0%
wrapid and then we can simply import it
03:46:09.120 --> 03:46:10.149 align:start position:0%
wrapid and then we can simply import it
from<03:46:09.319> l
03:46:10.149 --> 03:46:10.159 align:start position:0%
from l
03:46:10.159 --> 03:46:12.910 align:start position:0%
from l
utils<03:46:11.159> if<03:46:11.279> we<03:46:11.439> do<03:46:11.640> that<03:46:11.840> and<03:46:12.000> go<03:46:12.279> back<03:46:12.640> you<03:46:12.760> can
03:46:12.910 --> 03:46:12.920 align:start position:0%
utils if we do that and go back you can
03:46:12.920 --> 03:46:15.229 align:start position:0%
utils if we do that and go back you can
see<03:46:13.239> one<03:46:13.560> day<03:46:13.720> ago<03:46:14.199> which<03:46:14.319> is<03:46:14.520> exactly<03:46:14.920> when<03:46:15.040> I
03:46:15.229 --> 03:46:15.239 align:start position:0%
see one day ago which is exactly when I
03:46:15.239 --> 03:46:18.269 align:start position:0%
see one day ago which is exactly when I
posted<03:46:15.920> it<03:46:16.920> sometimes<03:46:17.319> it's<03:46:17.640> possible<03:46:18.120> that
03:46:18.269 --> 03:46:18.279 align:start position:0%
posted it sometimes it's possible that
03:46:18.279 --> 03:46:20.189 align:start position:0%
posted it sometimes it's possible that
Chad<03:46:18.560> GPT<03:46:19.000> is<03:46:19.120> going<03:46:19.279> to<03:46:19.479> imagine<03:46:19.880> something
03:46:20.189 --> 03:46:20.199 align:start position:0%
Chad GPT is going to imagine something
03:46:20.199 --> 03:46:22.550 align:start position:0%
Chad GPT is going to imagine something
and<03:46:20.359> give<03:46:20.479> you<03:46:20.680> wrong<03:46:21.000> code<03:46:21.800> so<03:46:22.040> for<03:46:22.319> that
03:46:22.550 --> 03:46:22.560 align:start position:0%
and give you wrong code so for that
03:46:22.560 --> 03:46:24.590 align:start position:0%
and give you wrong code so for that
reason<03:46:23.359> and<03:46:23.560> for<03:46:23.720> some<03:46:23.920> other<03:46:24.120> functions<03:46:24.479> that
03:46:24.590 --> 03:46:24.600 align:start position:0%
reason and for some other functions that
03:46:24.600 --> 03:46:27.070 align:start position:0%
reason and for some other functions that
we're<03:46:24.760> going<03:46:24.840> to<03:46:24.960> use<03:46:25.199> later<03:46:25.479> on<03:46:26.359> the<03:46:26.520> full
03:46:27.070 --> 03:46:27.080 align:start position:0%
we're going to use later on the full
03:46:27.080 --> 03:46:29.510 align:start position:0%
we're going to use later on the full
utils<03:46:27.560> thats<03:46:28.159> file<03:46:28.520> is<03:46:28.680> going<03:46:28.840> to<03:46:29.000> be<03:46:29.199> in<03:46:29.359> the
03:46:29.510 --> 03:46:29.520 align:start position:0%
utils thats file is going to be in the
03:46:29.520 --> 03:46:31.750 align:start position:0%
utils thats file is going to be in the
GitHub<03:46:29.880> gist<03:46:30.159> down<03:46:30.359> below<03:46:31.080> it<03:46:31.239> contains<03:46:31.640> the
03:46:31.750 --> 03:46:31.760 align:start position:0%
GitHub gist down below it contains the
03:46:31.760 --> 03:46:34.149 align:start position:0%
GitHub gist down below it contains the
function<03:46:32.159> we<03:46:32.319> just<03:46:32.640> created<03:46:33.640> as<03:46:33.800> well<03:46:33.920> as<03:46:34.040> the
03:46:34.149 --> 03:46:34.159 align:start position:0%
function we just created as well as the
03:46:34.159 --> 03:46:36.070 align:start position:0%
function we just created as well as the
check<03:46:34.439> is<03:46:34.720> liked<03:46:35.199> which<03:46:35.279> is<03:46:35.399> going<03:46:35.560> to<03:46:35.720> help<03:46:35.920> us
03:46:36.070 --> 03:46:36.080 align:start position:0%
check is liked which is going to help us
03:46:36.080 --> 03:46:39.229 align:start position:0%
check is liked which is going to help us
later<03:46:36.359> on<03:46:37.239> and<03:46:37.439> then<03:46:37.760> another<03:46:38.680> function
03:46:39.229 --> 03:46:39.239 align:start position:0%
later on and then another function
03:46:39.239 --> 03:46:42.269 align:start position:0%
later on and then another function
called<03:46:39.720> format<03:46:40.239> date<03:46:40.760> string<03:46:41.760> but<03:46:42.080> that's
03:46:42.269 --> 03:46:42.279 align:start position:0%
called format date string but that's
03:46:42.279 --> 03:46:45.910 align:start position:0%
called format date string but that's
more<03:46:42.439> or<03:46:42.600> less<03:46:42.880> it<03:46:43.640> so<03:46:43.920> now<03:46:44.399> we<03:46:44.520> can<03:46:44.720> go<03:46:45.080> back<03:46:45.520> to
03:46:45.910 --> 03:46:45.920 align:start position:0%
more or less it so now we can go back to
03:46:45.920 --> 03:46:48.510 align:start position:0%
more or less it so now we can go back to
our<03:46:46.279> function<03:46:46.920> it<03:46:47.080> still<03:46:47.319> works<03:46:47.920> exactly<03:46:48.359> as
03:46:48.510 --> 03:46:48.520 align:start position:0%
our function it still works exactly as
03:46:48.520 --> 03:46:51.030 align:start position:0%
our function it still works exactly as
it<03:46:48.640> should<03:46:49.040> one<03:46:49.319> day<03:46:49.479> ago<03:46:50.319> and<03:46:50.520> now<03:46:50.800> let's
03:46:51.030 --> 03:46:51.040 align:start position:0%
it should one day ago and now let's
03:46:51.040 --> 03:46:53.590 align:start position:0%
it should one day ago and now let's
focus<03:46:51.359> on<03:46:51.560> the<03:46:51.760> most<03:46:52.080> important<03:46:52.600> part<03:46:53.399> which
03:46:53.590 --> 03:46:53.600 align:start position:0%
focus on the most important part which
03:46:53.600 --> 03:46:55.710 align:start position:0%
focus on the most important part which
is<03:46:53.880> showing<03:46:54.279> some<03:46:54.479> more<03:46:54.720> details<03:46:55.279> like<03:46:55.560> the
03:46:55.710 --> 03:46:55.720 align:start position:0%
is showing some more details like the
03:46:55.720 --> 03:46:58.790 align:start position:0%
is showing some more details like the
caption<03:46:56.080> and<03:46:56.239> the<03:46:56.720> tags<03:46:57.720> and<03:46:57.880> then<03:46:58.159> finally
03:46:58.790 --> 03:46:58.800 align:start position:0%
caption and the tags and then finally
03:46:58.800 --> 03:47:02.550 align:start position:0%
caption and the tags and then finally
the<03:46:59.080> image<03:47:00.080> so<03:47:00.279> we<03:47:00.359> can<03:47:00.520> go<03:47:00.800> three<03:47:01.080> devs<03:47:01.560> down<03:47:02.080> 1
03:47:02.550 --> 03:47:02.560 align:start position:0%
the image so we can go three devs down 1
03:47:02.560 --> 03:47:06.910 align:start position:0%
the image so we can go three devs down 1
2<03:47:03.000> 3<03:47:03.880> and<03:47:04.040> then<03:47:04.319> here<03:47:04.720> we<03:47:04.840> can<03:47:05.040> create<03:47:05.439> a<03:47:05.680> new
03:47:06.910 --> 03:47:06.920 align:start position:0%
2 3 and then here we can create a new
03:47:06.920 --> 03:47:10.469 align:start position:0%
2 3 and then here we can create a new
link<03:47:07.920> this<03:47:08.159> link<03:47:08.560> will<03:47:08.800> only<03:47:09.080> be<03:47:09.199> shown<03:47:09.960> if<03:47:10.239> we
03:47:10.469 --> 03:47:10.479 align:start position:0%
link this link will only be shown if we
03:47:10.479 --> 03:47:12.870 align:start position:0%
link this link will only be shown if we
are<03:47:10.720> the<03:47:10.840> ones<03:47:11.120> that<03:47:11.319> created<03:47:11.680> the<03:47:11.880> post
03:47:12.870 --> 03:47:12.880 align:start position:0%
are the ones that created the post
03:47:12.880 --> 03:47:15.550 align:start position:0%
are the ones that created the post
because<03:47:13.239> then<03:47:13.560> we'll<03:47:13.800> be<03:47:13.960> able<03:47:14.199> to<03:47:14.439> update<03:47:14.840> it
03:47:15.550 --> 03:47:15.560 align:start position:0%
because then we'll be able to update it
03:47:15.560 --> 03:47:18.189 align:start position:0%
because then we'll be able to update it
so<03:47:15.880> here<03:47:16.319> we<03:47:16.439> can<03:47:16.600> say<03:47:16.880> this<03:47:17.000> is<03:47:17.120> going<03:47:17.319> to
03:47:18.189 --> 03:47:18.199 align:start position:0%
so here we can say this is going to
03:47:18.199 --> 03:47:20.389 align:start position:0%
so here we can say this is going to
point2
03:47:20.389 --> 03:47:20.399 align:start position:0%
point2
03:47:20.399 --> 03:47:22.830 align:start position:0%
point2
slash<03:47:21.399> update
03:47:22.830 --> 03:47:22.840 align:start position:0%
slash update
03:47:22.840 --> 03:47:24.830 align:start position:0%
slash update
dpost
03:47:24.830 --> 03:47:24.840 align:start position:0%
dpost
03:47:24.840 --> 03:47:28.309 align:start position:0%
dpost
slost<03:47:25.840> dollar<03:47:26.239> sign<03:47:26.760> ID<03:47:27.760> so<03:47:27.880> it's<03:47:28.040> going<03:47:28.199> to
03:47:28.309 --> 03:47:28.319 align:start position:0%
slost dollar sign ID so it's going to
03:47:28.319 --> 03:47:31.189 align:start position:0%
slost dollar sign ID so it's going to
point<03:47:28.520> us<03:47:28.680> to<03:47:28.840> the<03:47:29.000> update<03:47:29.680> page<03:47:30.680> and<03:47:30.880> there<03:47:31.080> we
03:47:31.189 --> 03:47:31.199 align:start position:0%
point us to the update page and there we
03:47:31.199 --> 03:47:33.189 align:start position:0%
point us to the update page and there we
can<03:47:31.319> render<03:47:31.640> an<03:47:31.840> image<03:47:32.600> that's<03:47:32.760> going<03:47:32.920> to<03:47:33.080> have
03:47:33.189 --> 03:47:33.199 align:start position:0%
can render an image that's going to have
03:47:33.199 --> 03:47:38.550 align:start position:0%
can render an image that's going to have
a<03:47:33.319> source<03:47:34.199> equal<03:47:34.520> to<03:47:35.159> SL<03:47:35.720> assets<03:47:36.720> SL<03:47:37.120> ions<03:47:38.120> SL
03:47:38.550 --> 03:47:38.560 align:start position:0%
a source equal to SL assets SL ions SL
03:47:38.560 --> 03:47:40.189 align:start position:0%
a source equal to SL assets SL ions SL
edit.
03:47:40.189 --> 03:47:40.199 align:start position:0%
edit.
03:47:40.199 --> 03:47:42.349 align:start position:0%
edit.
SVG<03:47:41.199> of<03:47:41.359> course<03:47:41.520> we<03:47:41.640> want<03:47:41.760> to<03:47:41.840> make<03:47:41.960> it<03:47:42.080> a<03:47:42.159> bit
03:47:42.349 --> 03:47:42.359 align:start position:0%
SVG of course we want to make it a bit
03:47:42.359 --> 03:47:44.670 align:start position:0%
SVG of course we want to make it a bit
smaller<03:47:43.000> so<03:47:43.199> let's<03:47:43.399> give<03:47:43.479> it<03:47:43.600> an<03:47:43.760> ALT<03:47:44.120> tag<03:47:44.399> of
03:47:44.670 --> 03:47:44.680 align:start position:0%
smaller so let's give it an ALT tag of
03:47:44.680 --> 03:47:48.229 align:start position:0%
smaller so let's give it an ALT tag of
edit<03:47:45.600> and<03:47:45.840> a<03:47:46.080> width<03:47:46.560> of<03:47:46.800> 20<03:47:47.600> as<03:47:47.720> well<03:47:47.880> as<03:47:48.000> a
03:47:48.229 --> 03:47:48.239 align:start position:0%
edit and a width of 20 as well as a
03:47:48.239 --> 03:47:49.830 align:start position:0%
edit and a width of 20 as well as a
height<03:47:48.640> of
03:47:49.830 --> 03:47:49.840 align:start position:0%
height of
03:47:49.840 --> 03:47:52.870 align:start position:0%
height of
20<03:47:50.840> there<03:47:51.000> we<03:47:51.159> go<03:47:51.479> that's<03:47:51.720> better<03:47:52.359> now<03:47:52.600> how<03:47:52.760> can
03:47:52.870 --> 03:47:52.880 align:start position:0%
20 there we go that's better now how can
03:47:52.880 --> 03:47:55.149 align:start position:0%
20 there we go that's better now how can
we<03:47:53.080> hide<03:47:53.359> this<03:47:53.600> if<03:47:53.680> we're<03:47:53.920> not<03:47:54.159> the<03:47:54.319> Creator
03:47:55.149 --> 03:47:55.159 align:start position:0%
we hide this if we're not the Creator
03:47:55.159 --> 03:47:57.269 align:start position:0%
we hide this if we're not the Creator
well<03:47:55.479> first<03:47:55.920> we<03:47:56.040> have<03:47:56.159> to<03:47:56.319> know<03:47:56.800> what<03:47:56.920> is<03:47:57.080> the
03:47:57.269 --> 03:47:57.279 align:start position:0%
well first we have to know what is the
03:47:57.279 --> 03:48:00.149 align:start position:0%
well first we have to know what is the
ID<03:47:57.880> of<03:47:58.080> the<03:47:58.279> Creator<03:47:59.000> and<03:47:59.159> then<03:47:59.359> the<03:47:59.520> ID<03:47:59.880> of<03:48:00.040> the
03:48:00.149 --> 03:48:00.159 align:start position:0%
ID of the Creator and then the ID of the
03:48:00.159 --> 03:48:02.590 align:start position:0%
ID of the Creator and then the ID of the
currently<03:48:00.560> logged<03:48:00.840> in<03:48:01.040> user<03:48:01.920> how<03:48:02.080> can<03:48:02.239> we<03:48:02.359> know
03:48:02.590 --> 03:48:02.600 align:start position:0%
currently logged in user how can we know
03:48:02.600 --> 03:48:04.910 align:start position:0%
currently logged in user how can we know
that<03:48:03.399> well<03:48:03.800> we<03:48:03.920> have<03:48:04.080> done<03:48:04.199> it<03:48:04.359> a<03:48:04.479> couple<03:48:04.680> of
03:48:04.910 --> 03:48:04.920 align:start position:0%
that well we have done it a couple of
03:48:04.920 --> 03:48:07.790 align:start position:0%
that well we have done it a couple of
times<03:48:05.640> we<03:48:05.760> can<03:48:05.920> simply<03:48:06.199> use<03:48:06.399> the<03:48:06.600> context<03:48:07.479> so
03:48:07.790 --> 03:48:07.800 align:start position:0%
times we can simply use the context so
03:48:07.800 --> 03:48:10.910 align:start position:0%
times we can simply use the context so
here<03:48:08.199> we<03:48:08.319> can<03:48:08.520> say<03:48:09.080> con
03:48:10.910 --> 03:48:10.920 align:start position:0%
here we can say con
03:48:10.920 --> 03:48:17.309 align:start position:0%
here we can say con
user<03:48:11.920> is<03:48:12.279> equal<03:48:12.600> to<03:48:13.600> use<03:48:14.960> user<03:48:16.080> context<03:48:17.080> and<03:48:17.199> we
03:48:17.309 --> 03:48:17.319 align:start position:0%
user is equal to use user context and we
03:48:17.319 --> 03:48:20.710 align:start position:0%
user is equal to use user context and we
can<03:48:17.520> import<03:48:17.840> it<03:48:18.239> right<03:48:18.880> here<03:48:19.880> we<03:48:20.000> can<03:48:20.199> also<03:48:20.439> say
03:48:20.710 --> 03:48:20.720 align:start position:0%
can import it right here we can also say
03:48:20.720 --> 03:48:23.550 align:start position:0%
can import it right here we can also say
if<03:48:20.880> there's<03:48:21.159> no<03:48:21.640> post.<03:48:22.319> Creator<03:48:23.199> then<03:48:23.359> we<03:48:23.439> want
03:48:23.550 --> 03:48:23.560 align:start position:0%
if there's no post. Creator then we want
03:48:23.560 --> 03:48:25.830 align:start position:0%
if there's no post. Creator then we want
to<03:48:23.880> return<03:48:24.640> because<03:48:24.920> something<03:48:25.199> went<03:48:25.479> wrong
03:48:25.830 --> 03:48:25.840 align:start position:0%
to return because something went wrong
03:48:25.840 --> 03:48:27.790 align:start position:0%
to return because something went wrong
here<03:48:26.399> but<03:48:26.560> in<03:48:26.720> this<03:48:26.920> case<03:48:27.159> we<03:48:27.239> should<03:48:27.479> have<03:48:27.640> a
03:48:27.790 --> 03:48:27.800 align:start position:0%
here but in this case we should have a
03:48:27.800 --> 03:48:30.910 align:start position:0%
here but in this case we should have a
user<03:48:28.399> so<03:48:28.680> right<03:48:28.960> below<03:48:29.960> we<03:48:30.080> can<03:48:30.239> add<03:48:30.399> a<03:48:30.640> class
03:48:30.910 --> 03:48:30.920 align:start position:0%
user so right below we can add a class
03:48:30.920 --> 03:48:32.309 align:start position:0%
user so right below we can add a class
name<03:48:31.239> to<03:48:31.479> this
03:48:32.309 --> 03:48:32.319 align:start position:0%
name to this
03:48:32.319 --> 03:48:35.550 align:start position:0%
name to this
link<03:48:33.319> and<03:48:33.560> this<03:48:33.800> class<03:48:34.080> name<03:48:34.760> is<03:48:34.920> going<03:48:35.040> to<03:48:35.159> be
03:48:35.550 --> 03:48:35.560 align:start position:0%
link and this class name is going to be
03:48:35.560 --> 03:48:39.349 align:start position:0%
link and this class name is going to be
dynamic<03:48:36.560> and<03:48:36.680> it's<03:48:36.840> going<03:48:37.000> to<03:48:37.199> check<03:48:38.000> if<03:48:39.000> user
03:48:39.349 --> 03:48:39.359 align:start position:0%
dynamic and it's going to check if user
03:48:39.359 --> 03:48:43.990 align:start position:0%
dynamic and it's going to check if user
us<03:48:39.520> er.<03:48:40.319> ID<03:48:41.080> is<03:48:41.359> not<03:48:41.760> equal<03:48:42.080> to<03:48:42.720> post.
03:48:43.990 --> 03:48:44.000 align:start position:0%
us er. ID is not equal to post.
03:48:44.000 --> 03:48:47.149 align:start position:0%
us er. ID is not equal to post.
creator.<03:48:45.000> dollar<03:48:45.399> sign<03:48:45.840> ID<03:48:46.560> and<03:48:46.720> if<03:48:46.880> that<03:48:47.000> is
03:48:47.149 --> 03:48:47.159 align:start position:0%
creator. dollar sign ID and if that is
03:48:47.159 --> 03:48:51.189 align:start position:0%
creator. dollar sign ID and if that is
true<03:48:47.960> it's<03:48:48.120> going<03:48:48.279> to<03:48:48.680> render<03:48:49.920> hidden<03:48:50.920> and<03:48:51.080> as
03:48:51.189 --> 03:48:51.199 align:start position:0%
true it's going to render hidden and as
03:48:51.199 --> 03:48:53.149 align:start position:0%
true it's going to render hidden and as
you<03:48:51.279> can<03:48:51.439> see<03:48:51.800> in<03:48:51.960> this<03:48:52.159> case<03:48:52.439> it
03:48:53.149 --> 03:48:53.159 align:start position:0%
you can see in this case it
03:48:53.159 --> 03:48:55.590 align:start position:0%
you can see in this case it
disappears<03:48:54.159> although<03:48:54.439> I'm<03:48:54.560> not<03:48:54.680> sure<03:48:55.080> why<03:48:55.439> did
03:48:55.590 --> 03:48:55.600 align:start position:0%
disappears although I'm not sure why did
03:48:55.600 --> 03:48:58.110 align:start position:0%
disappears although I'm not sure why did
it<03:48:55.720> disappear<03:48:56.560> because<03:48:56.880> we<03:48:57.120> indeed<03:48:57.560> are<03:48:58.000> the
03:48:58.110 --> 03:48:58.120 align:start position:0%
it disappear because we indeed are the
03:48:58.120 --> 03:49:01.590 align:start position:0%
it disappear because we indeed are the
real<03:48:58.920> Creator<03:48:59.920> oh<03:49:00.199> it<03:49:00.399> disappeared<03:49:01.120> because
03:49:01.590 --> 03:49:01.600 align:start position:0%
real Creator oh it disappeared because
03:49:01.600 --> 03:49:04.070 align:start position:0%
real Creator oh it disappeared because
this<03:49:02.239> and<03:49:02.520> and<03:49:02.880> hidden<03:49:03.399> should<03:49:03.600> have<03:49:03.800> also
03:49:04.070 --> 03:49:04.080 align:start position:0%
this and and hidden should have also
03:49:04.080 --> 03:49:07.149 align:start position:0%
this and and hidden should have also
been<03:49:04.560> within<03:49:04.960> these<03:49:05.520> brackets<03:49:06.520> and<03:49:06.680> then
03:49:07.149 --> 03:49:07.159 align:start position:0%
been within these brackets and then
03:49:07.159 --> 03:49:09.830 align:start position:0%
been within these brackets and then
within<03:49:08.159> double<03:49:08.520> quoted<03:49:08.840> strings
03:49:09.830 --> 03:49:09.840 align:start position:0%
within double quoted strings
03:49:09.840 --> 03:49:12.349 align:start position:0%
within double quoted strings
there<03:49:09.960> we<03:49:10.159> go<03:49:10.359> so<03:49:10.560> now<03:49:10.800> if<03:49:10.960> we<03:49:11.080> are<03:49:11.520> it's<03:49:11.840> there
03:49:12.349 --> 03:49:12.359 align:start position:0%
there we go so now if we are it's there
03:49:12.359 --> 03:49:16.110 align:start position:0%
there we go so now if we are it's there
if<03:49:12.479> we're<03:49:12.720> not<03:49:13.159> it's<03:49:13.359> not<03:49:13.720> there<03:49:14.720> great<03:49:15.720> now
03:49:16.110 --> 03:49:16.120 align:start position:0%
if we're not it's not there great now
03:49:16.120 --> 03:49:18.349 align:start position:0%
if we're not it's not there great now
let's<03:49:16.359> focus<03:49:16.600> in<03:49:16.840> more<03:49:17.359> post<03:49:17.640> details<03:49:18.199> by
03:49:18.349 --> 03:49:18.359 align:start position:0%
let's focus in more post details by
03:49:18.359 --> 03:49:21.990 align:start position:0%
let's focus in more post details by
going<03:49:18.680> below<03:49:19.199> the<03:49:19.399> link<03:49:19.920> and<03:49:20.120> below<03:49:20.479> this<03:49:21.000> div
03:49:21.990 --> 03:49:22.000 align:start position:0%
going below the link and below this div
03:49:22.000 --> 03:49:24.710 align:start position:0%
going below the link and below this div
we<03:49:22.080> can<03:49:22.279> create<03:49:22.640> another<03:49:23.359> link<03:49:24.359> that's<03:49:24.560> going
03:49:24.710 --> 03:49:24.720 align:start position:0%
we can create another link that's going
03:49:24.720 --> 03:49:28.030 align:start position:0%
we can create another link that's going
to<03:49:24.920> point<03:49:25.359> to<03:49:26.239> for<03:49:26.720> slash<03:49:27.520> let's<03:49:27.680> make<03:49:27.800> it
03:49:28.030 --> 03:49:28.040 align:start position:0%
to point to for slash let's make it
03:49:28.040 --> 03:49:33.870 align:start position:0%
to point to for slash let's make it
Dynamic<03:49:29.479> slost<03:49:30.560> slash<03:49:31.560> post.<03:49:32.279> dooll<03:49:32.600> sign<03:49:32.880> ID
03:49:33.870 --> 03:49:33.880 align:start position:0%
Dynamic slost slash post. dooll sign ID
03:49:33.880 --> 03:49:36.429 align:start position:0%
Dynamic slost slash post. dooll sign ID
so<03:49:34.720> if<03:49:34.800> you<03:49:34.960> click<03:49:35.319> this<03:49:35.800> it's<03:49:35.960> going<03:49:36.080> to<03:49:36.239> point
03:49:36.429 --> 03:49:36.439 align:start position:0%
so if you click this it's going to point
03:49:36.439 --> 03:49:38.790 align:start position:0%
so if you click this it's going to point
to<03:49:36.600> edit<03:49:37.239> if<03:49:37.319> you<03:49:37.479> click<03:49:37.760> anything<03:49:38.159> above<03:49:38.680> it's
03:49:38.790 --> 03:49:38.800 align:start position:0%
to edit if you click anything above it's
03:49:38.800 --> 03:49:40.349 align:start position:0%
to edit if you click anything above it's
going<03:49:38.960> to<03:49:39.080> point<03:49:39.319> point<03:49:39.520> you<03:49:39.600> to<03:49:39.720> the<03:49:39.840> real
03:49:40.349 --> 03:49:40.359 align:start position:0%
going to point point you to the real
03:49:40.359 --> 03:49:43.229 align:start position:0%
going to point point you to the real
user<03:49:41.359> or<03:49:41.520> at<03:49:41.640> least<03:49:41.840> if<03:49:41.960> you<03:49:42.080> click<03:49:42.319> the<03:49:42.439> image
03:49:43.229 --> 03:49:43.239 align:start position:0%
user or at least if you click the image
03:49:43.239 --> 03:49:45.469 align:start position:0%
user or at least if you click the image
but<03:49:43.479> now<03:49:44.120> everything<03:49:44.479> that<03:49:44.600> is<03:49:44.800> within<03:49:45.279> this
03:49:45.469 --> 03:49:45.479 align:start position:0%
but now everything that is within this
03:49:45.479 --> 03:49:47.750 align:start position:0%
but now everything that is within this
link<03:49:45.960> is<03:49:46.080> going<03:49:46.239> to<03:49:46.439> point<03:49:46.680> you<03:49:46.800> to<03:49:46.960> the<03:49:47.159> post
03:49:47.750 --> 03:49:47.760 align:start position:0%
link is going to point you to the post
03:49:47.760 --> 03:49:51.269 align:start position:0%
link is going to point you to the post
itself<03:49:48.319> or<03:49:48.479> the<03:49:48.640> post<03:49:48.960> Details<03:49:49.520> page<03:49:50.520> so<03:49:50.880> here
03:49:51.269 --> 03:49:51.279 align:start position:0%
itself or the post Details page so here
03:49:51.279 --> 03:49:57.349 align:start position:0%
itself or the post Details page so here
we<03:49:51.399> can<03:49:51.520> say<03:49:52.000> div<03:49:53.000> is<03:49:53.199> a<03:49:53.479> class<03:49:53.840> name<03:49:54.760> of
03:49:57.349 --> 03:49:57.359 align:start position:0%
03:49:57.359 --> 03:50:01.469 align:start position:0%
small-medium<03:49:58.359> on<03:49:58.600> large<03:49:59.120> devices<03:50:00.120> base-
03:50:01.469 --> 03:50:01.479 align:start position:0%
small-medium on large devices base-
03:50:01.479 --> 03:50:04.670 align:start position:0%
small-medium on large devices base-
medium<03:50:02.479> and<03:50:02.760> padding<03:50:03.120> y<03:50:03.560> off
03:50:04.670 --> 03:50:04.680 align:start position:0%
medium and padding y off
03:50:04.680 --> 03:50:08.269 align:start position:0%
medium and padding y off
five<03:50:05.680> there<03:50:06.319> within<03:50:06.560> a<03:50:06.760> P<03:50:07.040> tag<03:50:07.520> we<03:50:07.640> can<03:50:07.800> render
03:50:08.269 --> 03:50:08.279 align:start position:0%
five there within a P tag we can render
03:50:08.279 --> 03:50:12.030 align:start position:0%
five there within a P tag we can render
a<03:50:08.560> post.<03:50:09.680> caption<03:50:10.680> of<03:50:10.880> course<03:50:11.319> this<03:50:11.520> has<03:50:11.680> to<03:50:11.840> be
03:50:12.030 --> 03:50:12.040 align:start position:0%
a post. caption of course this has to be
03:50:12.040 --> 03:50:14.429 align:start position:0%
a post. caption of course this has to be
wrapped<03:50:12.680> in<03:50:13.520> curly
03:50:14.429 --> 03:50:14.439 align:start position:0%
wrapped in curly
03:50:14.439 --> 03:50:18.070 align:start position:0%
wrapped in curly
strings<03:50:15.439> River<03:50:15.920> and<03:50:16.399> nature<03:50:17.399> and<03:50:17.600> Below<03:50:18.000> we
03:50:18.070 --> 03:50:18.080 align:start position:0%
strings River and nature and Below we
03:50:18.080 --> 03:50:20.950 align:start position:0%
strings River and nature and Below we
can<03:50:18.239> have<03:50:18.359> a<03:50:18.479> UL<03:50:19.040> to<03:50:19.199> render<03:50:19.520> the<03:50:19.720> tags<03:50:20.680> so<03:50:20.840> we
03:50:20.950 --> 03:50:20.960 align:start position:0%
can have a UL to render the tags so we
03:50:20.960 --> 03:50:26.110 align:start position:0%
can have a UL to render the tags so we
can<03:50:21.120> give<03:50:21.319> them<03:50:21.560> a<03:50:21.840> class<03:50:22.199> name<03:50:22.880> of<03:50:23.640> flex<03:50:25.120> gap-1
03:50:26.110 --> 03:50:26.120 align:start position:0%
can give them a class name of flex gap-1
03:50:26.120 --> 03:50:28.990 align:start position:0%
can give them a class name of flex gap-1
and<03:50:26.319> margin<03:50:26.760> top<03:50:27.040> of<03:50:27.399> two<03:50:28.399> there<03:50:28.720> we<03:50:28.840> can
03:50:28.990 --> 03:50:29.000 align:start position:0%
and margin top of two there we can
03:50:29.000 --> 03:50:33.510 align:start position:0%
and margin top of two there we can
render<03:50:29.399> the<03:50:29.840> post.<03:50:31.040> tags.<03:50:32.040> map<03:50:32.800> where<03:50:33.040> each
03:50:33.510 --> 03:50:33.520 align:start position:0%
render the post. tags. map where each
03:50:33.520 --> 03:50:37.110 align:start position:0%
render the post. tags. map where each
tag<03:50:33.920> is<03:50:34.040> of<03:50:34.239> a<03:50:34.439> type<03:50:34.680> string<03:50:35.680> and<03:50:35.840> for<03:50:36.199> each<03:50:36.600> tag
03:50:37.110 --> 03:50:37.120 align:start position:0%
tag is of a type string and for each tag
03:50:37.120 --> 03:50:40.030 align:start position:0%
tag is of a type string and for each tag
we<03:50:37.239> want<03:50:37.399> to<03:50:37.640> instantly<03:50:38.279> return<03:50:38.880> an
03:50:40.030 --> 03:50:40.040 align:start position:0%
we want to instantly return an
03:50:40.040 --> 03:50:43.990 align:start position:0%
we want to instantly return an
Li<03:50:41.040> that's<03:50:41.239> going<03:50:41.399> to<03:50:41.640> have<03:50:41.920> a<03:50:42.159> key<03:50:43.080> equal<03:50:43.399> to
03:50:43.990 --> 03:50:44.000 align:start position:0%
Li that's going to have a key equal to
03:50:44.000 --> 03:50:47.429 align:start position:0%
Li that's going to have a key equal to
it's<03:50:44.159> going<03:50:44.319> to<03:50:44.439> be<03:50:44.800> tag<03:50:45.800> and<03:50:45.960> a<03:50:46.199> class<03:50:46.560> name<03:50:47.000> of
03:50:47.429 --> 03:50:47.439 align:start position:0%
it's going to be tag and a class name of
03:50:47.439 --> 03:50:48.950 align:start position:0%
it's going to be tag and a class name of
text-
03:50:48.950 --> 03:50:48.960 align:start position:0%
text-
03:50:48.960 --> 03:50:52.670 align:start position:0%
text-
light-3<03:50:49.960> and<03:50:50.080> we<03:50:50.159> can<03:50:50.319> simply<03:50:50.600> render<03:50:51.680> hashtag
03:50:52.670 --> 03:50:52.680 align:start position:0%
light-3 and we can simply render hashtag
03:50:52.680 --> 03:50:55.950 align:start position:0%
light-3 and we can simply render hashtag
and<03:50:52.840> then<03:50:53.640> the<03:50:53.880> tag<03:50:54.880> in<03:50:55.080> this<03:50:55.359> case<03:50:55.680> it<03:50:55.760> is
03:50:55.950 --> 03:50:55.960 align:start position:0%
and then the tag in this case it is
03:50:55.960 --> 03:50:59.510 align:start position:0%
and then the tag in this case it is
simply<03:50:56.840> nature<03:50:57.840> and<03:50:58.239> finally<03:50:58.880> we<03:50:59.000> can<03:50:59.199> go
03:50:59.510 --> 03:50:59.520 align:start position:0%
simply nature and finally we can go
03:50:59.520 --> 03:51:03.870 align:start position:0%
simply nature and finally we can go
below<03:51:00.319> this<03:51:00.760> div<03:51:01.760> and<03:51:01.880> render<03:51:02.239> an<03:51:02.640> image<03:51:03.640> this
03:51:03.870 --> 03:51:03.880 align:start position:0%
below this div and render an image this
03:51:03.880 --> 03:51:06.269 align:start position:0%
below this div and render an image this
image<03:51:04.239> is<03:51:04.399> going<03:51:04.560> to<03:51:04.720> have<03:51:04.840> a<03:51:05.040> source<03:51:05.640> equal<03:51:05.960> to
03:51:06.269 --> 03:51:06.279 align:start position:0%
image is going to have a source equal to
03:51:06.279 --> 03:51:10.309 align:start position:0%
image is going to have a source equal to
post.<03:51:07.199> image<03:51:08.159> URL<03:51:09.239> of<03:51:09.399> course<03:51:09.680> image<03:51:10.000> with<03:51:10.159> a
03:51:10.309 --> 03:51:10.319 align:start position:0%
post. image URL of course image with a
03:51:10.319 --> 03:51:17.110 align:start position:0%
post. image URL of course image with a
lowercased<03:51:11.000> eye<03:51:11.960> or<03:51:12.600> we<03:51:12.720> can<03:51:12.920> render<03:51:13.720> for/
03:51:17.110 --> 03:51:17.120 align:start position:0%
03:51:17.120 --> 03:51:22.349 align:start position:0%
assets<03:51:18.120> SL<03:51:18.720> ions<03:51:19.720> SL<03:51:20.279> profile<03:51:21.199> Das
03:51:22.349 --> 03:51:22.359 align:start position:0%
assets SL ions SL profile Das
03:51:22.359 --> 03:51:24.710 align:start position:0%
assets SL ions SL profile Das
placeholder.svg
03:51:24.710 --> 03:51:24.720 align:start position:0%
placeholder.svg
03:51:24.720 --> 03:51:28.030 align:start position:0%
placeholder.svg
and<03:51:25.720> it's<03:51:25.880> going<03:51:26.040> to<03:51:26.199> have<03:51:26.319> a<03:51:26.560> class<03:51:27.040> name
03:51:28.030 --> 03:51:28.040 align:start position:0%
and it's going to have a class name
03:51:28.040 --> 03:51:33.429 align:start position:0%
and it's going to have a class name
equal<03:51:28.359> to<03:51:29.359> post-c<03:51:30.479> cardor<03:51:31.479> IMG<03:51:32.439> and<03:51:32.600> an<03:51:32.760> Al<03:51:33.080> tag
03:51:33.429 --> 03:51:33.439 align:start position:0%
equal to post-c cardor IMG and an Al tag
03:51:33.439 --> 03:51:34.750 align:start position:0%
equal to post-c cardor IMG and an Al tag
of<03:51:33.720> post
03:51:34.750 --> 03:51:34.760 align:start position:0%
of post
03:51:34.760 --> 03:51:37.790 align:start position:0%
of post
image<03:51:35.760> if<03:51:35.880> we<03:51:36.040> save<03:51:36.319> it<03:51:36.920> we<03:51:37.120> cannot<03:51:37.439> seem<03:51:37.640> to
03:51:37.790 --> 03:51:37.800 align:start position:0%
image if we save it we cannot seem to
03:51:37.800 --> 03:51:40.830 align:start position:0%
image if we save it we cannot seem to
see<03:51:38.000> it<03:51:38.640> so<03:51:38.920> it's<03:51:39.159> it's<03:51:39.359> like<03:51:39.800> the<03:51:39.960> image<03:51:40.279> URL
03:51:40.830 --> 03:51:40.840 align:start position:0%
see it so it's it's like the image URL
03:51:40.840 --> 03:51:43.990 align:start position:0%
see it so it's it's like the image URL
is<03:51:41.040> not<03:51:41.439> there<03:51:42.439> let's<03:51:42.640> consol<03:51:43.040> log<03:51:43.239> our<03:51:43.520> post
03:51:43.990 --> 03:51:44.000 align:start position:0%
is not there let's consol log our post
03:51:44.000 --> 03:51:46.830 align:start position:0%
is not there let's consol log our post
to<03:51:44.199> see<03:51:44.640> what<03:51:44.840> does<03:51:44.960> it<03:51:45.199> contain<03:51:46.159> so<03:51:46.439> here<03:51:46.720> we
03:51:46.830 --> 03:51:46.840 align:start position:0%
to see what does it contain so here we
03:51:46.840 --> 03:51:51.750 align:start position:0%
to see what does it contain so here we
can<03:51:47.120> consal<03:51:47.680> log<03:51:48.680> the<03:51:48.920> entire
03:51:51.750 --> 03:51:51.760 align:start position:0%
can consal log the entire
03:51:51.760 --> 03:51:54.630 align:start position:0%
can consal log the entire
post<03:51:52.760> we<03:51:52.880> can<03:51:53.120> then<03:51:53.479> go<03:51:53.680> to<03:51:53.840> our<03:51:54.159> inspect
03:51:54.630 --> 03:51:54.640 align:start position:0%
post we can then go to our inspect
03:51:54.640 --> 03:51:57.149 align:start position:0%
post we can then go to our inspect
element<03:51:55.600> and<03:51:55.800> go<03:51:55.960> to<03:51:56.120> the
03:51:57.149 --> 03:51:57.159 align:start position:0%
element and go to the
03:51:57.159 --> 03:52:00.030 align:start position:0%
element and go to the
console<03:51:58.159> and<03:51:58.520> here<03:51:58.960> if<03:51:59.120> we
03:52:00.030 --> 03:52:00.040 align:start position:0%
console and here if we
03:52:00.040 --> 03:52:02.630 align:start position:0%
console and here if we
reload<03:52:01.040> you<03:52:01.159> can<03:52:01.319> see<03:52:01.640> that<03:52:01.760> we<03:52:01.920> have<03:52:02.080> a<03:52:02.279> key
03:52:02.630 --> 03:52:02.640 align:start position:0%
reload you can see that we have a key
03:52:02.640 --> 03:52:05.750 align:start position:0%
reload you can see that we have a key
error<03:52:03.159> on<03:52:03.399> home<03:52:03.880> 17<03:52:04.680> so<03:52:04.840> let's<03:52:05.040> quickly<03:52:05.399> fix
03:52:05.750 --> 03:52:05.760 align:start position:0%
error on home 17 so let's quickly fix
03:52:05.760 --> 03:52:08.110 align:start position:0%
error on home 17 so let's quickly fix
that<03:52:06.359> here<03:52:06.520> we're<03:52:06.760> mapping<03:52:07.080> over<03:52:07.319> the<03:52:07.520> posts
03:52:08.110 --> 03:52:08.120 align:start position:0%
that here we're mapping over the posts
03:52:08.120 --> 03:52:11.590 align:start position:0%
that here we're mapping over the posts
but<03:52:08.279> we're<03:52:08.439> not<03:52:08.720> passing<03:52:09.159> a<03:52:09.319> key<03:52:10.239> so<03:52:11.120> let's<03:52:11.319> say
03:52:11.590 --> 03:52:11.600 align:start position:0%
but we're not passing a key so let's say
03:52:11.600 --> 03:52:15.750 align:start position:0%
but we're not passing a key so let's say
key<03:52:12.319> is<03:52:12.520> equal<03:52:12.840> to<03:52:13.760> post.<03:52:14.760> let's<03:52:14.960> do
03:52:15.750 --> 03:52:15.760 align:start position:0%
key is equal to post. let's do
03:52:15.760 --> 03:52:20.110 align:start position:0%
key is equal to post. let's do
caption<03:52:16.760> if<03:52:16.880> we<03:52:17.120> reload<03:52:18.040> it<03:52:18.159> is<03:52:18.359> gone<03:52:19.239> and<03:52:19.479> now
03:52:20.110 --> 03:52:20.120 align:start position:0%
caption if we reload it is gone and now
03:52:20.120 --> 03:52:23.910 align:start position:0%
caption if we reload it is gone and now
we<03:52:20.399> have<03:52:21.040> this<03:52:21.319> post<03:52:22.120> but<03:52:22.399> the<03:52:22.600> image<03:52:22.920> URL<03:52:23.640> is
03:52:23.910 --> 03:52:23.920 align:start position:0%
we have this post but the image URL is
03:52:23.920 --> 03:52:27.469 align:start position:0%
we have this post but the image URL is
simply<03:52:24.399> an<03:52:24.600> empty<03:52:25.319> array<03:52:26.319> that's<03:52:26.600> not<03:52:26.920> good
03:52:27.469 --> 03:52:27.479 align:start position:0%
simply an empty array that's not good
03:52:27.479 --> 03:52:30.790 align:start position:0%
simply an empty array that's not good
right<03:52:28.479> same<03:52:28.800> thing<03:52:29.159> here<03:52:29.520> the<03:52:29.720> image<03:52:30.040> ID<03:52:30.439> is
03:52:30.790 --> 03:52:30.800 align:start position:0%
right same thing here the image ID is
03:52:30.800 --> 03:52:35.429 align:start position:0%
right same thing here the image ID is
here<03:52:31.359> but<03:52:31.600> the<03:52:31.840> image<03:52:32.439> URL<03:52:33.359> is<03:52:33.800> empty<03:52:34.800> so<03:52:35.080> now
03:52:35.429 --> 03:52:35.439 align:start position:0%
here but the image URL is empty so now
03:52:35.439 --> 03:52:37.229 align:start position:0%
here but the image URL is empty so now
we<03:52:35.560> have<03:52:35.680> to<03:52:35.840> figure<03:52:36.120> out<03:52:36.520> where<03:52:36.840> are<03:52:37.000> we
03:52:37.229 --> 03:52:37.239 align:start position:0%
we have to figure out where are we
03:52:37.239 --> 03:52:39.750 align:start position:0%
we have to figure out where are we
updating<03:52:37.880> the<03:52:38.080> image<03:52:38.359> URL<03:52:38.800> in<03:52:39.040> in<03:52:39.120> the<03:52:39.279> first
03:52:39.750 --> 03:52:39.760 align:start position:0%
updating the image URL in in the first
03:52:39.760 --> 03:52:42.229 align:start position:0%
updating the image URL in in the first
place<03:52:40.760> apparently<03:52:41.359> it's<03:52:41.520> getting<03:52:41.760> set<03:52:42.000> to<03:52:42.120> an
03:52:42.229 --> 03:52:42.239 align:start position:0%
place apparently it's getting set to an
03:52:42.239 --> 03:52:45.510 align:start position:0%
place apparently it's getting set to an
empty<03:52:42.600> array<03:52:43.600> so<03:52:44.000> let's<03:52:44.279> search<03:52:45.120> and<03:52:45.319> let's
03:52:45.510 --> 03:52:45.520 align:start position:0%
empty array so let's search and let's
03:52:45.520 --> 03:52:48.990 align:start position:0%
empty array so let's search and let's
search<03:52:45.840> for<03:52:46.319> image<03:52:47.199> URL<03:52:48.199> specifically<03:52:48.880> we
03:52:48.990 --> 03:52:49.000 align:start position:0%
search for image URL specifically we
03:52:49.000 --> 03:52:51.189 align:start position:0%
search for image URL specifically we
want<03:52:49.120> to<03:52:49.279> search<03:52:49.720> where<03:52:49.880> we're<03:52:50.239> updating<03:52:50.800> it
03:52:51.189 --> 03:52:51.199 align:start position:0%
want to search where we're updating it
03:52:51.199 --> 03:52:54.990 align:start position:0%
want to search where we're updating it
not<03:52:51.439> using<03:52:51.920> it<03:52:52.920> so<03:52:53.279> here<03:52:53.600> in<03:52:53.760> the<03:52:53.920> URL<03:52:54.680> we're
03:52:54.990 --> 03:52:55.000 align:start position:0%
not using it so here in the URL we're
03:52:55.000 --> 03:52:57.750 align:start position:0%
not using it so here in the URL we're
setting<03:52:55.319> the<03:52:55.479> image<03:52:55.760> URL<03:52:56.120> to<03:52:56.359> Avatar<03:52:56.760> URL<03:52:57.600> but
03:52:57.750 --> 03:52:57.760 align:start position:0%
setting the image URL to Avatar URL but
03:52:57.760 --> 03:52:59.429 align:start position:0%
setting the image URL to Avatar URL but
this<03:52:57.880> is<03:52:58.040> regarding<03:52:58.439> the<03:52:58.600> users<03:52:59.239> we're
03:52:59.429 --> 03:52:59.439 align:start position:0%
this is regarding the users we're
03:52:59.439 --> 03:53:02.269 align:start position:0%
this is regarding the users we're
wondering<03:52:59.880> about<03:53:00.120> the<03:53:00.319> posts<03:53:01.279> so<03:53:01.560> most<03:53:01.880> likely
03:53:02.269 --> 03:53:02.279 align:start position:0%
wondering about the posts so most likely
03:53:02.279 --> 03:53:05.189 align:start position:0%
wondering about the posts so most likely
it's<03:53:02.479> going<03:53:02.640> to<03:53:02.800> be<03:53:03.159> would<03:53:03.359> then<03:53:03.600> create<03:53:04.199> post
03:53:05.189 --> 03:53:05.199 align:start position:0%
it's going to be would then create post
03:53:05.199 --> 03:53:07.429 align:start position:0%
it's going to be would then create post
and<03:53:05.359> there<03:53:05.479> we<03:53:05.680> go<03:53:06.439> here<03:53:06.600> we<03:53:06.760> say<03:53:07.000> the<03:53:07.159> image
03:53:07.429 --> 03:53:07.439 align:start position:0%
and there we go here we say the image
03:53:07.439 --> 03:53:09.950 align:start position:0%
and there we go here we say the image
URL<03:53:08.120> is<03:53:08.279> equal<03:53:08.520> to<03:53:09.080> file
03:53:09.950 --> 03:53:09.960 align:start position:0%
URL is equal to file
03:53:09.960 --> 03:53:12.910 align:start position:0%
URL is equal to file
URL<03:53:10.960> and<03:53:11.120> the<03:53:11.239> file<03:53:11.520> URL<03:53:12.080> should<03:53:12.399> come<03:53:12.720> from
03:53:12.910 --> 03:53:12.920 align:start position:0%
URL and the file URL should come from
03:53:12.920 --> 03:53:15.990 align:start position:0%
URL and the file URL should come from
the<03:53:13.120> get<03:53:13.439> file<03:53:13.960> preview<03:53:14.960> and<03:53:15.239> then<03:53:15.680> it's
03:53:15.990 --> 03:53:16.000 align:start position:0%
the get file preview and then it's
03:53:16.000 --> 03:53:18.389 align:start position:0%
the get file preview and then it's
uploaded<03:53:16.600> file
03:53:18.389 --> 03:53:18.399 align:start position:0%
uploaded file
03:53:18.399 --> 03:53:22.149 align:start position:0%
uploaded file
ID<03:53:19.399> so<03:53:19.880> the<03:53:20.080> first<03:53:20.319> thing<03:53:20.479> we<03:53:20.640> can<03:53:20.800> do<03:53:21.399> is<03:53:21.840> just
03:53:22.149 --> 03:53:22.159 align:start position:0%
ID so the first thing we can do is just
03:53:22.159 --> 03:53:24.469 align:start position:0%
ID so the first thing we can do is just
conso<03:53:22.600> lock<03:53:22.800> the<03:53:22.920> file<03:53:23.199> URL<03:53:23.800> to<03:53:23.960> see<03:53:24.239> what<03:53:24.359> are
03:53:24.469 --> 03:53:24.479 align:start position:0%
conso lock the file URL to see what are
03:53:24.479 --> 03:53:27.670 align:start position:0%
conso lock the file URL to see what are
we<03:53:24.600> getting<03:53:24.840> back<03:53:25.520> so<03:53:25.800> conso<03:53:26.279> log<03:53:27.279> I<03:53:27.399> can<03:53:27.560> put
03:53:27.670 --> 03:53:27.680 align:start position:0%
we getting back so conso log I can put
03:53:27.680 --> 03:53:29.389 align:start position:0%
we getting back so conso log I can put
it<03:53:27.840> inside<03:53:28.080> of<03:53:28.199> an<03:53:28.439> object<03:53:28.920> that<03:53:29.080> way<03:53:29.279> it's
03:53:29.389 --> 03:53:29.399 align:start position:0%
it inside of an object that way it's
03:53:29.399 --> 03:53:31.910 align:start position:0%
it inside of an object that way it's
going<03:53:29.560> to<03:53:29.720> tell<03:53:29.920> us<03:53:30.159> what<03:53:30.279> they<03:53:30.640> conso<03:53:31.040> logging
03:53:31.910 --> 03:53:31.920 align:start position:0%
going to tell us what they conso logging
03:53:31.920 --> 03:53:35.710 align:start position:0%
going to tell us what they conso logging
so<03:53:32.199> just<03:53:32.399> like<03:53:33.080> this<03:53:34.080> and<03:53:34.720> then<03:53:34.960> we<03:53:35.080> can<03:53:35.319> try<03:53:35.520> to
03:53:35.710 --> 03:53:35.720 align:start position:0%
so just like this and then we can try to
03:53:35.720 --> 03:53:39.269 align:start position:0%
so just like this and then we can try to
create<03:53:36.159> one<03:53:36.600> another<03:53:37.080> post<03:53:37.920> so<03:53:38.159> let's<03:53:38.399> go<03:53:38.640> back
03:53:39.269 --> 03:53:39.279 align:start position:0%
create one another post so let's go back
03:53:39.279 --> 03:53:41.750 align:start position:0%
create one another post so let's go back
let's<03:53:39.840> increase<03:53:40.399> the<03:53:40.560> width<03:53:41.000> of<03:53:41.159> the<03:53:41.279> browser
03:53:41.750 --> 03:53:41.760 align:start position:0%
let's increase the width of the browser
03:53:41.760 --> 03:53:44.510 align:start position:0%
let's increase the width of the browser
just<03:53:41.960> a<03:53:42.239> bit<03:53:43.239> and<03:53:43.399> then<03:53:43.600> let's<03:53:43.800> go<03:53:43.920> to<03:53:44.120> create
03:53:44.510 --> 03:53:44.520 align:start position:0%
just a bit and then let's go to create
03:53:44.520 --> 03:53:47.429 align:start position:0%
just a bit and then let's go to create
post<03:53:45.399> let's<03:53:45.600> write<03:53:45.760> a<03:53:45.920> new<03:53:46.159> caption<03:53:47.080> say
03:53:47.429 --> 03:53:47.439 align:start position:0%
post let's write a new caption say
03:53:47.439 --> 03:53:50.750 align:start position:0%
post let's write a new caption say
something<03:53:47.840> like<03:53:48.560> this<03:53:48.800> time<03:53:49.640> it<03:53:49.800> will
03:53:50.750 --> 03:53:50.760 align:start position:0%
something like this time it will
03:53:50.760 --> 03:53:53.630 align:start position:0%
something like this time it will
work<03:53:51.760> I<03:53:51.920> added<03:53:52.199> the<03:53:52.319> JavaScript<03:53:52.800> Mastery<03:53:53.239> logo
03:53:53.630 --> 03:53:53.640 align:start position:0%
work I added the JavaScript Mastery logo
03:53:53.640 --> 03:53:55.790 align:start position:0%
work I added the JavaScript Mastery logo
right<03:53:53.840> here<03:53:54.479> and<03:53:54.680> I<03:53:54.760> can<03:53:55.000> give<03:53:55.199> location
03:53:55.790 --> 03:53:55.800 align:start position:0%
right here and I can give location
03:53:55.800 --> 03:53:59.830 align:start position:0%
right here and I can give location
something<03:53:56.159> like<03:53:56.640> JSM<03:53:57.640> and<03:53:57.880> we<03:53:58.000> can<03:53:58.239> add
03:53:59.830 --> 03:53:59.840 align:start position:0%
something like JSM and we can add
03:53:59.840 --> 03:54:04.149 align:start position:0%
something like JSM and we can add
nextjs<03:54:00.840> as<03:54:01.040> well<03:54:01.279> as<03:54:02.040> react<03:54:03.040> and<03:54:03.199> let's<03:54:03.399> click
03:54:04.149 --> 03:54:04.159 align:start position:0%
nextjs as well as react and let's click
03:54:04.159 --> 03:54:06.910 align:start position:0%
nextjs as well as react and let's click
submit<03:54:05.159> you<03:54:05.279> can<03:54:05.399> see<03:54:05.600> the<03:54:05.760> file<03:54:06.040> URL<03:54:06.640> first
03:54:06.910 --> 03:54:06.920 align:start position:0%
submit you can see the file URL first
03:54:06.920 --> 03:54:09.590 align:start position:0%
submit you can see the file URL first
was<03:54:07.080> a<03:54:07.279> promise<03:54:08.199> and<03:54:08.359> then<03:54:09.000> fortunately<03:54:09.479> the
03:54:09.590 --> 03:54:09.600 align:start position:0%
was a promise and then fortunately the
03:54:09.600 --> 03:54:11.550 align:start position:0%
was a promise and then fortunately the
same<03:54:09.880> thing<03:54:10.279> even<03:54:10.479> for<03:54:10.680> the<03:54:10.800> second<03:54:11.120> image<03:54:11.439> the
03:54:11.550 --> 03:54:11.560 align:start position:0%
same thing even for the second image the
03:54:11.560 --> 03:54:14.349 align:start position:0%
same thing even for the second image the
image<03:54:11.800> URL<03:54:12.319> is<03:54:12.560> empty<03:54:13.439> but<03:54:13.640> it's<03:54:13.840> good<03:54:13.960> to<03:54:14.120> know
03:54:14.349 --> 03:54:14.359 align:start position:0%
image URL is empty but it's good to know
03:54:14.359 --> 03:54:16.389 align:start position:0%
image URL is empty but it's good to know
that<03:54:14.520> we<03:54:14.640> got<03:54:14.800> a<03:54:15.040> promise<03:54:15.640> right<03:54:15.840> here<03:54:16.159> as<03:54:16.279> a
03:54:16.389 --> 03:54:16.399 align:start position:0%
that we got a promise right here as a
03:54:16.399 --> 03:54:19.389 align:start position:0%
that we got a promise right here as a
file<03:54:17.080> URL<03:54:18.080> that's<03:54:18.319> because<03:54:18.720> if<03:54:18.840> you<03:54:18.960> go<03:54:19.120> to<03:54:19.239> the
03:54:19.389 --> 03:54:19.399 align:start position:0%
file URL that's because if you go to the
03:54:19.399 --> 03:54:22.030 align:start position:0%
file URL that's because if you go to the
get<03:54:19.640> file<03:54:19.840> URL<03:54:20.640> we<03:54:20.800> made<03:54:21.120> this<03:54:21.359> function<03:54:21.800> an
03:54:22.030 --> 03:54:22.040 align:start position:0%
get file URL we made this function an
03:54:22.040 --> 03:54:24.110 align:start position:0%
get file URL we made this function an
async<03:54:22.560> function<03:54:23.239> and<03:54:23.479> it<03:54:23.600> shouldn't<03:54:23.960> have
03:54:24.110 --> 03:54:24.120 align:start position:0%
async function and it shouldn't have
03:54:24.120 --> 03:54:26.590 align:start position:0%
async function and it shouldn't have
been<03:54:24.359> one<03:54:24.920> because<03:54:25.279> nowhere<03:54:25.880> is<03:54:26.000> it<03:54:26.159> awaiting
03:54:26.590 --> 03:54:26.600 align:start position:0%
been one because nowhere is it awaiting
03:54:26.600 --> 03:54:29.670 align:start position:0%
been one because nowhere is it awaiting
something<03:54:27.439> so<03:54:27.720> now<03:54:28.120> we<03:54:28.319> have<03:54:28.439> to<03:54:28.720> fix<03:54:29.080> this<03:54:29.520> by
03:54:29.670 --> 03:54:29.680 align:start position:0%
something so now we have to fix this by
03:54:29.680 --> 03:54:32.110 align:start position:0%
something so now we have to fix this by
removing<03:54:30.080> the<03:54:30.239> async<03:54:30.760> from<03:54:30.920> the
03:54:32.110 --> 03:54:32.120 align:start position:0%
removing the async from the
03:54:32.120 --> 03:54:34.389 align:start position:0%
removing the async from the
function<03:54:33.120> and<03:54:33.279> then<03:54:33.520> we'll<03:54:33.720> have<03:54:33.840> to<03:54:34.000> delete
03:54:34.389 --> 03:54:34.399 align:start position:0%
function and then we'll have to delete
03:54:34.399 --> 03:54:36.229 align:start position:0%
function and then we'll have to delete
what<03:54:34.560> we<03:54:34.680> have<03:54:34.840> already<03:54:35.120> in<03:54:35.199> the<03:54:35.359> database<03:54:36.040> as
03:54:36.229 --> 03:54:36.239 align:start position:0%
what we have already in the database as
03:54:36.239 --> 03:54:38.229 align:start position:0%
what we have already in the database as
those<03:54:36.439> posts<03:54:36.720> are<03:54:36.840> going<03:54:37.000> to<03:54:37.120> be<03:54:37.279> broken<03:54:38.040> so
03:54:38.229 --> 03:54:38.239 align:start position:0%
those posts are going to be broken so
03:54:38.239 --> 03:54:40.910 align:start position:0%
those posts are going to be broken so
let's<03:54:38.439> go<03:54:38.640> back<03:54:39.080> to<03:54:39.359> our<03:54:39.760> app
03:54:40.910 --> 03:54:40.920 align:start position:0%
let's go back to our app
03:54:40.920 --> 03:54:43.790 align:start position:0%
let's go back to our app
right<03:54:41.920> go<03:54:42.279> right<03:54:42.520> here<03:54:43.199> we're<03:54:43.359> going<03:54:43.439> to<03:54:43.600> have
03:54:43.790 --> 03:54:43.800 align:start position:0%
right go right here we're going to have
03:54:43.800 --> 03:54:45.950 align:start position:0%
right go right here we're going to have
two<03:54:44.040> different<03:54:44.319> media<03:54:44.760> files<03:54:45.199> right<03:54:45.359> now
03:54:45.950 --> 03:54:45.960 align:start position:0%
two different media files right now
03:54:45.960 --> 03:54:48.110 align:start position:0%
two different media files right now
which<03:54:46.159> I<03:54:46.279> can<03:54:46.479> completely
03:54:48.110 --> 03:54:48.120 align:start position:0%
which I can completely
03:54:48.120 --> 03:54:51.429 align:start position:0%
which I can completely
delete<03:54:49.120> there<03:54:49.319> we<03:54:49.680> go<03:54:50.680> but<03:54:50.840> we<03:54:50.960> know<03:54:51.159> that<03:54:51.319> the
03:54:51.429 --> 03:54:51.439 align:start position:0%
delete there we go but we know that the
03:54:51.439 --> 03:54:54.429 align:start position:0%
delete there we go but we know that the
storage<03:54:51.800> worked<03:54:52.439> so<03:54:52.760> now<03:54:53.239> I<03:54:53.319> can<03:54:53.520> go<03:54:53.760> back<03:54:53.960> to
03:54:54.429 --> 03:54:54.439 align:start position:0%
storage worked so now I can go back to
03:54:54.439 --> 03:54:57.790 align:start position:0%
storage worked so now I can go back to
databases<03:54:55.439> snapgram<03:54:56.399> and<03:54:56.520> then<03:54:56.800> posts<03:54:57.600> and<03:54:57.720> I
03:54:57.790 --> 03:54:57.800 align:start position:0%
databases snapgram and then posts and I
03:54:57.800 --> 03:55:01.110 align:start position:0%
databases snapgram and then posts and I
can<03:54:58.000> also<03:54:58.239> delete<03:54:58.800> all<03:54:58.960> of<03:54:59.120> these<03:54:59.359> posts<03:54:59.840> right
03:55:01.110 --> 03:55:01.120 align:start position:0%
can also delete all of these posts right
03:55:01.120 --> 03:55:04.469 align:start position:0%
can also delete all of these posts right
here<03:55:02.120> there<03:55:02.279> we<03:55:02.479> go<03:55:03.159> so<03:55:03.399> now<03:55:03.640> if<03:55:03.760> we<03:55:03.920> go<03:55:04.199> back
03:55:04.469 --> 03:55:04.479 align:start position:0%
here there we go so now if we go back
03:55:04.479 --> 03:55:05.670 align:start position:0%
here there we go so now if we go back
and
03:55:05.670 --> 03:55:05.680 align:start position:0%
and
03:55:05.680 --> 03:55:08.389 align:start position:0%
and
reload<03:55:06.680> and<03:55:06.960> now<03:55:07.359> back<03:55:07.520> on<03:55:07.640> the<03:55:07.800> homepage<03:55:08.279> we
03:55:08.389 --> 03:55:08.399 align:start position:0%
reload and now back on the homepage we
03:55:08.399 --> 03:55:10.870 align:start position:0%
reload and now back on the homepage we
have<03:55:08.560> no<03:55:09.000> posts<03:55:09.600> we<03:55:09.720> do<03:55:10.000> have<03:55:10.199> one<03:55:10.439> error
03:55:10.870 --> 03:55:10.880 align:start position:0%
have no posts we do have one error
03:55:10.880 --> 03:55:13.750 align:start position:0%
have no posts we do have one error
saying<03:55:11.199> that<03:55:11.319> it<03:55:11.479> cannot<03:55:11.840> find<03:55:12.359> assets<03:55:13.000> images
03:55:13.750 --> 03:55:13.760 align:start position:0%
saying that it cannot find assets images
03:55:13.760 --> 03:55:16.990 align:start position:0%
saying that it cannot find assets images
profile<03:55:14.439> placeholder.svg<03:55:15.520> so<03:55:16.520> let's<03:55:16.680> see
03:55:16.990 --> 03:55:17.000 align:start position:0%
profile placeholder.svg so let's see
03:55:17.000 --> 03:55:19.790 align:start position:0%
profile placeholder.svg so let's see
what<03:55:17.199> that<03:55:17.359> is<03:55:17.520> about<03:55:18.279> let's<03:55:18.520> try<03:55:18.720> to<03:55:19.000> go<03:55:19.399> to
03:55:19.790 --> 03:55:19.800 align:start position:0%
what that is about let's try to go to
03:55:19.800 --> 03:55:23.349 align:start position:0%
what that is about let's try to go to
profile<03:55:20.359> dplace<03:55:21.040> holder.<03:55:22.000> SVG<03:55:23.000> and<03:55:23.120> we<03:55:23.239> can
03:55:23.349 --> 03:55:23.359 align:start position:0%
profile dplace holder. SVG and we can
03:55:23.359 --> 03:55:26.309 align:start position:0%
profile dplace holder. SVG and we can
see<03:55:23.600> that<03:55:23.840> indeed<03:55:24.319> it<03:55:24.439> is<03:55:24.760> there<03:55:25.520> so<03:55:25.920> where<03:55:26.159> are
03:55:26.309 --> 03:55:26.319 align:start position:0%
see that indeed it is there so where are
03:55:26.319 --> 03:55:28.870 align:start position:0%
see that indeed it is there so where are
we<03:55:26.479> trying<03:55:26.760> to<03:55:26.920> call<03:55:27.199> it<03:55:27.439> from<03:55:28.319> let's<03:55:28.560> try<03:55:28.720> to
03:55:28.870 --> 03:55:28.880 align:start position:0%
we trying to call it from let's try to
03:55:28.880 --> 03:55:32.149 align:start position:0%
we trying to call it from let's try to
search<03:55:29.199> for<03:55:30.239> profile<03:55:31.239> Das
03:55:32.149 --> 03:55:32.159 align:start position:0%
search for profile Das
03:55:32.159 --> 03:55:35.030 align:start position:0%
search for profile Das
placeholder.svg<03:55:33.520> it<03:55:34.520> seems<03:55:34.760> like<03:55:34.880> we're
03:55:35.030 --> 03:55:35.040 align:start position:0%
placeholder.svg it seems like we're
03:55:35.040 --> 03:55:38.229 align:start position:0%
placeholder.svg it seems like we're
calling<03:55:35.319> it<03:55:35.439> in<03:55:35.520> a<03:55:35.640> couple<03:55:35.880> of<03:55:36.279> places<03:55:37.279> assets
03:55:38.229 --> 03:55:38.239 align:start position:0%
calling it in a couple of places assets
03:55:38.239 --> 03:55:40.870 align:start position:0%
calling it in a couple of places assets
here<03:55:38.640> is<03:55:38.800> it's<03:55:39.080> icons<03:55:40.000> but<03:55:40.159> we<03:55:40.279> have<03:55:40.359> to<03:55:40.520> verify
03:55:40.870 --> 03:55:40.880 align:start position:0%
here is it's icons but we have to verify
03:55:40.880 --> 03:55:43.349 align:start position:0%
here is it's icons but we have to verify
is<03:55:40.960> it<03:55:41.120> icons<03:55:41.479> or<03:55:41.600> is<03:55:41.720> it<03:55:41.880> images<03:55:42.720> so<03:55:43.000> it<03:55:43.080> seems
03:55:43.349 --> 03:55:43.359 align:start position:0%
is it icons or is it images so it seems
03:55:43.359 --> 03:55:46.870 align:start position:0%
is it icons or is it images so it seems
like<03:55:43.479> it's<03:55:43.720> icons<03:55:44.399> so<03:55:44.680> here<03:55:45.040> it's<03:55:45.359> okay<03:55:45.880> icons
03:55:46.870 --> 03:55:46.880 align:start position:0%
like it's icons so here it's okay icons
03:55:46.880 --> 03:55:50.910 align:start position:0%
like it's icons so here it's okay icons
here<03:55:47.040> it's<03:55:47.319> okay<03:55:48.120> icons<03:55:49.359> icons<03:55:50.359> and<03:55:50.560> finally
03:55:50.910 --> 03:55:50.920 align:start position:0%
here it's okay icons icons and finally
03:55:50.920 --> 03:55:52.830 align:start position:0%
here it's okay icons icons and finally
in<03:55:51.080> top<03:55:51.359> bar<03:55:51.560> its<03:55:51.760> images<03:55:52.359> it<03:55:52.479> should<03:55:52.680> have
03:55:52.830 --> 03:55:52.840 align:start position:0%
in top bar its images it should have
03:55:52.840 --> 03:55:56.710 align:start position:0%
in top bar its images it should have
been<03:55:53.479> icons<03:55:54.479> so<03:55:54.640> if<03:55:54.760> we<03:55:54.920> save<03:55:55.239> this<03:55:55.479> and<03:55:55.720> reload
03:55:56.710 --> 03:55:56.720 align:start position:0%
been icons so if we save this and reload
03:55:56.720 --> 03:55:58.990 align:start position:0%
been icons so if we save this and reload
you<03:55:56.840> can<03:55:56.960> see<03:55:57.159> that<03:55:57.319> we<03:55:57.479> have<03:55:57.760> no<03:55:58.080> errors<03:55:58.720> and
03:55:58.990 --> 03:55:59.000 align:start position:0%
you can see that we have no errors and
03:55:59.000 --> 03:56:01.870 align:start position:0%
you can see that we have no errors and
we<03:55:59.279> have<03:55:59.720> no<03:56:00.040> posts<03:56:00.880> so<03:56:01.159> now<03:56:01.439> that<03:56:01.600> we<03:56:01.720> have
03:56:01.870 --> 03:56:01.880 align:start position:0%
we have no posts so now that we have
03:56:01.880 --> 03:56:04.030 align:start position:0%
we have no posts so now that we have
fixed<03:56:02.199> the<03:56:02.319> issue<03:56:02.600> with<03:56:02.760> the<03:56:02.920> post<03:56:03.199> creation
03:56:04.030 --> 03:56:04.040 align:start position:0%
fixed the issue with the post creation
03:56:04.040 --> 03:56:07.670 align:start position:0%
fixed the issue with the post creation
we<03:56:04.279> removed<03:56:04.880> the<03:56:05.040> async<03:56:06.040> from<03:56:06.399> our<03:56:07.199> upload
03:56:07.670 --> 03:56:07.680 align:start position:0%
we removed the async from our upload
03:56:07.680 --> 03:56:10.349 align:start position:0%
we removed the async from our upload
file<03:56:08.120> or<03:56:08.359> rather<03:56:08.880> get<03:56:09.040> file<03:56:09.319> preview<03:56:10.000> now<03:56:10.199> it's
03:56:10.349 --> 03:56:10.359 align:start position:0%
file or rather get file preview now it's
03:56:10.359 --> 03:56:12.269 align:start position:0%
file or rather get file preview now it's
going<03:56:10.520> to<03:56:10.720> immediately<03:56:11.359> return<03:56:11.720> exactly<03:56:12.159> what
03:56:12.269 --> 03:56:12.279 align:start position:0%
going to immediately return exactly what
03:56:12.279 --> 03:56:15.149 align:start position:0%
going to immediately return exactly what
it<03:56:12.399> should<03:56:13.040> which<03:56:13.159> is<03:56:13.279> the<03:56:13.600> URL<03:56:14.600> so<03:56:14.960> let's
03:56:15.149 --> 03:56:15.159 align:start position:0%
it should which is the URL so let's
03:56:15.159 --> 03:56:17.670 align:start position:0%
it should which is the URL so let's
close<03:56:15.479> all<03:56:15.680> the<03:56:15.800> files<03:56:16.080> that<03:56:16.199> we<03:56:16.319> don't
03:56:17.670 --> 03:56:17.680 align:start position:0%
close all the files that we don't
03:56:17.680 --> 03:56:20.229 align:start position:0%
close all the files that we don't
need<03:56:18.680> and<03:56:19.000> let's<03:56:19.239> simply<03:56:19.560> create<03:56:19.880> another
03:56:20.229 --> 03:56:20.239 align:start position:0%
need and let's simply create another
03:56:20.239 --> 03:56:22.229 align:start position:0%
need and let's simply create another
post<03:56:20.720> and<03:56:20.920> hopefully<03:56:21.359> this<03:56:21.560> time<03:56:21.880> we'll<03:56:22.120> be
03:56:22.229 --> 03:56:22.239 align:start position:0%
post and hopefully this time we'll be
03:56:22.239 --> 03:56:25.030 align:start position:0%
post and hopefully this time we'll be
able<03:56:22.439> to<03:56:22.600> see<03:56:22.840> it<03:56:23.120> on<03:56:23.279> our<03:56:23.479> homepage<03:56:24.439> so<03:56:24.840> I'll
03:56:25.030 --> 03:56:25.040 align:start position:0%
able to see it on our homepage so I'll
03:56:25.040 --> 03:56:29.429 align:start position:0%
able to see it on our homepage so I'll
do<03:56:25.279> something<03:56:25.640> like<03:56:25.920> ultimate<03:56:26.760> nextjs<03:56:28.159> 13.5
03:56:29.429 --> 03:56:29.439 align:start position:0%
do something like ultimate nextjs 13.5
03:56:29.439 --> 03:56:32.149 align:start position:0%
do something like ultimate nextjs 13.5
course<03:56:30.439> I<03:56:30.600> uploaded<03:56:31.279> this<03:56:31.520> great<03:56:31.880> Dev
03:56:32.149 --> 03:56:32.159 align:start position:0%
course I uploaded this great Dev
03:56:32.159 --> 03:56:34.030 align:start position:0%
course I uploaded this great Dev
overflow<03:56:32.720> image<03:56:33.239> which<03:56:33.359> is<03:56:33.479> the<03:56:33.680> project
03:56:34.030 --> 03:56:34.040 align:start position:0%
overflow image which is the project
03:56:34.040 --> 03:56:36.550 align:start position:0%
overflow image which is the project
we're<03:56:34.239> building<03:56:34.560> in<03:56:34.680> our<03:56:34.840> nextjs<03:56:35.439> course<03:56:36.439> I'm
03:56:36.550 --> 03:56:36.560 align:start position:0%
we're building in our nextjs course I'm
03:56:36.560 --> 03:56:39.389 align:start position:0%
we're building in our nextjs course I'm
going<03:56:36.680> to<03:56:36.840> add<03:56:37.040> the<03:56:37.199> location<03:56:37.800> of<03:56:38.040> JSM<03:56:38.680> Mastery
03:56:39.389 --> 03:56:39.399 align:start position:0%
going to add the location of JSM Mastery
03:56:39.399 --> 03:56:40.910 align:start position:0%
going to add the location of JSM Mastery
Pro
03:56:40.910 --> 03:56:40.920 align:start position:0%
Pro
03:56:40.920 --> 03:56:43.950 align:start position:0%
Pro
platform<03:56:41.920> and<03:56:42.120> we<03:56:42.239> can<03:56:42.439> add<03:56:42.680> something<03:56:43.040> like
03:56:43.950 --> 03:56:43.960 align:start position:0%
platform and we can add something like
03:56:43.960 --> 03:56:46.710 align:start position:0%
platform and we can add something like
nextjs<03:56:44.960> and<03:56:45.359> maybe
03:56:46.710 --> 03:56:46.720 align:start position:0%
nextjs and maybe
03:56:46.720 --> 03:56:50.110 align:start position:0%
nextjs and maybe
course<03:56:47.720> and<03:56:47.920> let's<03:56:48.159> click
03:56:50.110 --> 03:56:50.120 align:start position:0%
course and let's click
03:56:50.120 --> 03:56:53.429 align:start position:0%
course and let's click
submit<03:56:51.120> there<03:56:51.279> we<03:56:51.479> go<03:56:52.080> it<03:56:52.239> got<03:56:52.439> submitted<03:56:53.199> and
03:56:53.429 --> 03:56:53.439 align:start position:0%
submit there we go it got submitted and
03:56:53.439 --> 03:56:56.030 align:start position:0%
submit there we go it got submitted and
we<03:56:53.560> can<03:56:53.680> see<03:56:53.880> it<03:56:54.040> on<03:56:54.199> our<03:56:54.399> homepage<03:56:55.399> that<03:56:55.640> is
03:56:56.030 --> 03:56:56.040 align:start position:0%
we can see it on our homepage that is
03:56:56.040 --> 03:56:59.189 align:start position:0%
we can see it on our homepage that is
great<03:56:56.760> we<03:56:56.960> finally<03:56:57.439> have<03:56:57.880> the<03:56:58.080> real<03:56:58.560> profile
03:56:59.189 --> 03:56:59.199 align:start position:0%
great we finally have the real profile
03:56:59.199 --> 03:57:01.389 align:start position:0%
great we finally have the real profile
right<03:56:59.439> here<03:56:59.960> it<03:57:00.080> says<03:57:00.359> just<03:57:00.720> now<03:57:01.080> which<03:57:01.199> is
03:57:01.389 --> 03:57:01.399 align:start position:0%
right here it says just now which is
03:57:01.399 --> 03:57:04.110 align:start position:0%
right here it says just now which is
amazing<03:57:02.279> we<03:57:02.439> have<03:57:02.640> the<03:57:02.760> full<03:57:03.159> caption<03:57:03.920> the
03:57:04.110 --> 03:57:04.120 align:start position:0%
amazing we have the full caption the
03:57:04.120 --> 03:57:07.030 align:start position:0%
amazing we have the full caption the
tags<03:57:04.800> as<03:57:05.000> well<03:57:05.239> as<03:57:05.399> the<03:57:05.560> photo<03:57:06.479> this<03:57:06.720> is
03:57:07.030 --> 03:57:07.040 align:start position:0%
tags as well as the photo this is
03:57:07.040 --> 03:57:08.710 align:start position:0%
tags as well as the photo this is
phenomenal<03:57:07.760> and<03:57:07.920> the<03:57:08.040> last<03:57:08.199> thing<03:57:08.359> we<03:57:08.439> need
03:57:08.710 --> 03:57:08.720 align:start position:0%
phenomenal and the last thing we need
03:57:08.720 --> 03:57:10.710 align:start position:0%
phenomenal and the last thing we need
need<03:57:09.000> is<03:57:09.159> going<03:57:09.319> to<03:57:09.439> be<03:57:09.600> the<03:57:09.800> actions<03:57:10.399> such<03:57:10.560> as
03:57:10.710 --> 03:57:10.720 align:start position:0%
need is going to be the actions such as
03:57:10.720 --> 03:57:13.510 align:start position:0%
need is going to be the actions such as
the<03:57:10.880> heart<03:57:11.439> and<03:57:11.680> the<03:57:11.840> save<03:57:12.640> so<03:57:13.000> let's<03:57:13.239> go<03:57:13.399> back
03:57:13.510 --> 03:57:13.520 align:start position:0%
the heart and the save so let's go back
03:57:13.520 --> 03:57:15.510 align:start position:0%
the heart and the save so let's go back
to<03:57:13.800> application<03:57:14.600> let's<03:57:14.840> collapse<03:57:15.239> it<03:57:15.359> to
03:57:15.510 --> 03:57:15.520 align:start position:0%
to application let's collapse it to
03:57:15.520 --> 03:57:17.830 align:start position:0%
to application let's collapse it to
check<03:57:15.720> it<03:57:15.840> out<03:57:16.000> on<03:57:16.199> mobile<03:57:16.640> devices<03:57:17.640> it's
03:57:17.830 --> 03:57:17.840 align:start position:0%
check it out on mobile devices it's
03:57:17.840 --> 03:57:20.349 align:start position:0%
check it out on mobile devices it's
looking<03:57:18.239> great<03:57:19.239> maybe<03:57:19.520> this<03:57:19.680> image<03:57:19.920> is<03:57:20.040> not<03:57:20.199> in
03:57:20.349 --> 03:57:20.359 align:start position:0%
looking great maybe this image is not in
03:57:20.359 --> 03:57:22.309 align:start position:0%
looking great maybe this image is not in
the<03:57:20.520> right<03:57:20.760> format<03:57:21.359> but<03:57:21.560> still<03:57:21.920> it<03:57:22.080> gets
03:57:22.309 --> 03:57:22.319 align:start position:0%
the right format but still it gets
03:57:22.319 --> 03:57:24.950 align:start position:0%
the right format but still it gets
cropped<03:57:22.800> properly<03:57:23.720> so<03:57:23.960> now<03:57:24.239> let's<03:57:24.399> go<03:57:24.680> back<03:57:24.840> to
03:57:24.950 --> 03:57:24.960 align:start position:0%
cropped properly so now let's go back to
03:57:24.960 --> 03:57:28.269 align:start position:0%
cropped properly so now let's go back to
the<03:57:25.120> postcard<03:57:25.920> to<03:57:26.199> finalize<03:57:26.920> the<03:57:27.159> last<03:57:27.600> post
03:57:28.269 --> 03:57:28.279 align:start position:0%
the postcard to finalize the last post
03:57:28.279 --> 03:57:31.110 align:start position:0%
the postcard to finalize the last post
actions<03:57:29.279> So<03:57:29.640> Below<03:57:30.080> this<03:57:30.279> link<03:57:30.680> containing
03:57:31.110 --> 03:57:31.120 align:start position:0%
actions So Below this link containing
03:57:31.120 --> 03:57:33.469 align:start position:0%
actions So Below this link containing
the<03:57:31.239> image<03:57:31.800> let's<03:57:32.040> create<03:57:32.319> a<03:57:32.439> new<03:57:32.800> component
03:57:33.469 --> 03:57:33.479 align:start position:0%
the image let's create a new component
03:57:33.479 --> 03:57:37.229 align:start position:0%
the image let's create a new component
called<03:57:33.920> post<03:57:34.800> stats<03:57:35.760> like<03:57:36.000> this<03:57:37.000> we're<03:57:37.120> going
03:57:37.229 --> 03:57:37.239 align:start position:0%
called post stats like this we're going
03:57:37.239 --> 03:57:38.870 align:start position:0%
called post stats like this we're going
to<03:57:37.439> pass<03:57:37.720> two<03:57:37.960> things<03:57:38.359> we're<03:57:38.560> we're<03:57:38.680> going<03:57:38.760> to
03:57:38.870 --> 03:57:38.880 align:start position:0%
to pass two things we're we're going to
03:57:38.880 --> 03:57:41.550 align:start position:0%
to pass two things we're we're going to
pass<03:57:39.120> the<03:57:39.319> post<03:57:39.800> equal<03:57:40.120> to<03:57:40.319> post<03:57:41.120> as<03:57:41.239> well<03:57:41.399> as
03:57:41.550 --> 03:57:41.560 align:start position:0%
pass the post equal to post as well as
03:57:41.560 --> 03:57:45.910 align:start position:0%
pass the post equal to post as well as
the<03:57:41.680> user<03:57:42.040> ID<03:57:42.640> equal<03:57:43.000> to<03:57:43.800> user.
03:57:45.910 --> 03:57:45.920 align:start position:0%
the user ID equal to user.
03:57:45.920 --> 03:57:49.070 align:start position:0%
the user ID equal to user.
ID<03:57:46.920> then<03:57:47.279> we<03:57:47.399> can<03:57:47.560> create<03:57:47.880> a<03:57:48.080> new<03:57:48.319> component<03:57:48.960> in
03:57:49.070 --> 03:57:49.080 align:start position:0%
ID then we can create a new component in
03:57:49.080 --> 03:57:52.510 align:start position:0%
ID then we can create a new component in
the<03:57:49.199> shared<03:57:49.600> components<03:57:50.080> folder<03:57:50.800> called<03:57:51.520> post
03:57:52.510 --> 03:57:52.520 align:start position:0%
the shared components folder called post
03:57:52.520 --> 03:57:56.389 align:start position:0%
the shared components folder called post
stats.<03:57:53.720> TSX<03:57:54.720> and<03:57:54.920> run
03:57:56.389 --> 03:57:56.399 align:start position:0%
stats. TSX and run
03:57:56.399 --> 03:57:59.830 align:start position:0%
stats. TSX and run
RFC<03:57:57.399> immediately<03:57:58.279> back<03:57:58.479> in<03:57:58.600> the<03:57:58.800> postcard<03:57:59.720> we
03:57:59.830 --> 03:57:59.840 align:start position:0%
RFC immediately back in the postcard we
03:57:59.840 --> 03:58:03.910 align:start position:0%
RFC immediately back in the postcard we
can<03:58:00.040> import<03:58:00.520> post<03:58:00.880> stats<03:58:01.760> right<03:58:02.359> here<03:58:03.359> and
03:58:03.910 --> 03:58:03.920 align:start position:0%
can import post stats right here and
03:58:03.920 --> 03:58:05.590 align:start position:0%
can import post stats right here and
then<03:58:04.120> we<03:58:04.239> can<03:58:04.399> focus<03:58:04.680> on<03:58:04.840> the<03:58:04.960> post<03:58:05.239> stats
03:58:05.590 --> 03:58:05.600 align:start position:0%
then we can focus on the post stats
03:58:05.600 --> 03:58:09.030 align:start position:0%
then we can focus on the post stats
component<03:58:06.600> by<03:58:06.960> first<03:58:07.359> declaring<03:58:08.279> which<03:58:08.720> props
03:58:09.030 --> 03:58:09.040 align:start position:0%
component by first declaring which props
03:58:09.040 --> 03:58:11.950 align:start position:0%
component by first declaring which props
do<03:58:09.120> we<03:58:09.239> want<03:58:09.319> to<03:58:09.720> pass<03:58:10.720> we<03:58:10.880> immediately<03:58:11.439> know
03:58:11.950 --> 03:58:11.960 align:start position:0%
do we want to pass we immediately know
03:58:11.960 --> 03:58:14.429 align:start position:0%
do we want to pass we immediately know
that's<03:58:12.239> going<03:58:12.399> to<03:58:12.560> be<03:58:12.840> the<03:58:13.040> post<03:58:13.920> as<03:58:14.080> well<03:58:14.319> as
03:58:14.429 --> 03:58:14.439 align:start position:0%
that's going to be the post as well as
03:58:14.439 --> 03:58:16.790 align:start position:0%
that's going to be the post as well as
the<03:58:14.600> user<03:58:14.920> ID<03:58:15.600> which<03:58:15.720> are<03:58:15.880> going<03:58:16.040> to<03:58:16.159> be<03:58:16.359> of<03:58:16.560> a
03:58:16.790 --> 03:58:16.800 align:start position:0%
the user ID which are going to be of a
03:58:16.800 --> 03:58:21.750 align:start position:0%
the user ID which are going to be of a
type<03:58:17.680> post<03:58:18.560> stats<03:58:20.000> props<03:58:21.000> we<03:58:21.120> can<03:58:21.279> declare
03:58:21.750 --> 03:58:21.760 align:start position:0%
type post stats props we can declare
03:58:21.760 --> 03:58:25.750 align:start position:0%
type post stats props we can declare
those<03:58:22.120> right<03:58:22.359> above<03:58:23.279> by<03:58:23.439> saying<03:58:24.080> type<03:58:25.040> post
03:58:25.750 --> 03:58:25.760 align:start position:0%
those right above by saying type post
03:58:25.760 --> 03:58:30.349 align:start position:0%
those right above by saying type post
stats<03:58:27.000> props<03:58:28.000> is<03:58:28.239> equal<03:58:28.520> to<03:58:29.279> a<03:58:29.520> post<03:58:29.880> is<03:58:30.000> of<03:58:30.159> a
03:58:30.349 --> 03:58:30.359 align:start position:0%
stats props is equal to a post is of a
03:58:30.359 --> 03:58:32.630 align:start position:0%
stats props is equal to a post is of a
type<03:58:30.600> models<03:58:31.399> which<03:58:31.520> is<03:58:31.640> coming<03:58:31.920> from<03:58:32.239> app
03:58:32.630 --> 03:58:32.640 align:start position:0%
type models which is coming from app
03:58:32.640 --> 03:58:36.830 align:start position:0%
type models which is coming from app
right<03:58:33.479> dot<03:58:34.399> document<03:58:35.399> and<03:58:35.560> the<03:58:35.720> user<03:58:36.000> ID<03:58:36.520> is<03:58:36.680> of
03:58:36.830 --> 03:58:36.840 align:start position:0%
right dot document and the user ID is of
03:58:36.840 --> 03:58:39.590 align:start position:0%
right dot document and the user ID is of
a<03:58:37.080> type<03:58:37.520> string<03:58:38.840> now<03:58:39.040> that<03:58:39.159> we<03:58:39.279> know<03:58:39.439> what
03:58:39.590 --> 03:58:39.600 align:start position:0%
a type string now that we know what
03:58:39.600 --> 03:58:41.590 align:start position:0%
a type string now that we know what
we're<03:58:39.760> getting<03:58:40.319> let's<03:58:40.520> focus<03:58:40.760> on<03:58:40.920> the<03:58:41.040> UI<03:58:41.439> and
03:58:41.590 --> 03:58:41.600 align:start position:0%
we're getting let's focus on the UI and
03:58:41.600 --> 03:58:45.910 align:start position:0%
we're getting let's focus on the UI and
the<03:58:41.720> ux<03:58:42.239> of<03:58:42.399> our<03:58:42.640> heart<03:58:43.120> and<03:58:43.439> save<03:58:44.560> stats<03:58:45.560> first
03:58:45.910 --> 03:58:45.920 align:start position:0%
the ux of our heart and save stats first
03:58:45.920 --> 03:58:48.550 align:start position:0%
the ux of our heart and save stats first
we<03:58:46.040> can<03:58:46.199> wrap<03:58:46.680> everything<03:58:47.040> in<03:58:47.199> a<03:58:47.399> div<03:58:48.120> and<03:58:48.359> that
03:58:48.550 --> 03:58:48.560 align:start position:0%
we can wrap everything in a div and that
03:58:48.560 --> 03:58:51.750 align:start position:0%
we can wrap everything in a div and that
div<03:58:48.920> can<03:58:49.120> have<03:58:49.279> a<03:58:49.479> class<03:58:50.239> name<03:58:51.239> that<03:58:51.520> class
03:58:51.750 --> 03:58:51.760 align:start position:0%
div can have a class name that class
03:58:51.760 --> 03:58:55.510 align:start position:0%
div can have a class name that class
name<03:58:52.040> is<03:58:52.199> going<03:58:52.359> to<03:58:52.600> have<03:58:52.800> a<03:58:53.159> flex<03:58:54.159> justify
03:58:55.510 --> 03:58:55.520 align:start position:0%
name is going to have a flex justify
03:58:55.520 --> 03:58:59.750 align:start position:0%
name is going to have a flex justify
between<03:58:56.520> items<03:58:57.000> Das<03:58:57.479> Center<03:58:58.479> and<03:58:58.760> a<03:58:58.960> zindex<03:58:59.600> of
03:58:59.750 --> 03:58:59.760 align:start position:0%
between items Das Center and a zindex of
03:58:59.760 --> 03:59:03.070 align:start position:0%
between items Das Center and a zindex of
20<03:59:00.239> to<03:59:00.439> appear<03:59:00.760> on<03:59:01.080> top<03:59:02.040> right<03:59:02.319> inside<03:59:02.760> it
03:59:03.070 --> 03:59:03.080 align:start position:0%
20 to appear on top right inside it
03:59:03.080 --> 03:59:04.790 align:start position:0%
20 to appear on top right inside it
we're<03:59:03.239> going<03:59:03.319> to<03:59:03.479> give<03:59:03.560> it<03:59:03.680> a<03:59:03.880> div<03:59:04.560> that's
03:59:04.790 --> 03:59:04.800 align:start position:0%
we're going to give it a div that's
03:59:04.800 --> 03:59:08.189 align:start position:0%
we're going to give it a div that's
going<03:59:04.960> to<03:59:05.120> have<03:59:05.239> a<03:59:05.479> class<03:59:05.840> name<03:59:06.600> equal<03:59:06.920> to<03:59:07.199> flex
03:59:08.189 --> 03:59:08.199 align:start position:0%
going to have a class name equal to flex
03:59:08.199 --> 03:59:11.429 align:start position:0%
going to have a class name equal to flex
Gap<03:59:08.680> of<03:59:08.800> two<03:59:09.319> and<03:59:09.479> margin<03:59:09.880> right<03:59:10.239> of
03:59:11.429 --> 03:59:11.439 align:start position:0%
Gap of two and margin right of
03:59:11.439 --> 03:59:14.550 align:start position:0%
Gap of two and margin right of
five<03:59:12.439> finally<03:59:12.880> right<03:59:13.159> within<03:59:13.760> we<03:59:13.880> can<03:59:14.040> show
03:59:14.550 --> 03:59:14.560 align:start position:0%
five finally right within we can show
03:59:14.560 --> 03:59:17.630 align:start position:0%
five finally right within we can show
the<03:59:14.720> heart<03:59:15.080> icon<03:59:15.760> so<03:59:15.960> let's<03:59:16.120> say<03:59:16.439> image<03:59:17.439> that's
03:59:17.630 --> 03:59:17.640 align:start position:0%
the heart icon so let's say image that's
03:59:17.640 --> 03:59:21.110 align:start position:0%
the heart icon so let's say image that's
going<03:59:17.800> to<03:59:18.000> have<03:59:18.239> a<03:59:18.479> source<03:59:19.199> is<03:59:19.439> equal<03:59:19.880> to<03:59:20.880> and
03:59:21.110 --> 03:59:21.120 align:start position:0%
going to have a source is equal to and
03:59:21.120 --> 03:59:25.349 align:start position:0%
going to have a source is equal to and
let's<03:59:21.279> do<03:59:21.520> for<03:59:21.760> now<03:59:22.199> for<03:59:22.600> SL<03:59:23.040> assets<03:59:23.960> SL<03:59:24.359> ions
03:59:25.349 --> 03:59:25.359 align:start position:0%
let's do for now for SL assets SL ions
03:59:25.359 --> 03:59:29.670 align:start position:0%
let's do for now for SL assets SL ions
SL<03:59:25.960> liked.<03:59:27.239> SVG<03:59:28.239> and<03:59:28.399> there<03:59:28.560> we<03:59:28.720> go<03:59:29.399> but<03:59:29.560> of
03:59:29.670 --> 03:59:29.680 align:start position:0%
SL liked. SVG and there we go but of
03:59:29.680 --> 03:59:31.309 align:start position:0%
SL liked. SVG and there we go but of
course<03:59:29.880> it's<03:59:30.000> going<03:59:30.159> to<03:59:30.359> depend<03:59:30.840> whether<03:59:31.120> it
03:59:31.309 --> 03:59:31.319 align:start position:0%
course it's going to depend whether it
03:59:31.319 --> 03:59:34.309 align:start position:0%
course it's going to depend whether it
has<03:59:31.479> already<03:59:31.760> been<03:59:31.960> liked<03:59:32.279> or<03:59:32.680> not<03:59:33.680> so<03:59:34.000> if<03:59:34.120> it
03:59:34.309 --> 03:59:34.319 align:start position:0%
has already been liked or not so if it
03:59:34.319 --> 03:59:36.149 align:start position:0%
has already been liked or not so if it
has<03:59:34.479> been<03:59:34.720> liked<03:59:35.319> then<03:59:35.479> it's<03:59:35.640> going<03:59:35.760> to<03:59:35.880> say
03:59:36.149 --> 03:59:36.159 align:start position:0%
has been liked then it's going to say
03:59:36.159 --> 03:59:38.469 align:start position:0%
has been liked then it's going to say
liked<03:59:36.880> otherwise<03:59:37.279> it's<03:59:37.439> going<03:59:37.600> to<03:59:37.680> say<03:59:37.960> like
03:59:38.469 --> 03:59:38.479 align:start position:0%
liked otherwise it's going to say like
03:59:38.479 --> 03:59:40.030 align:start position:0%
liked otherwise it's going to say like
which<03:59:38.600> is<03:59:38.720> going<03:59:38.880> to<03:59:38.960> show<03:59:39.359> this<03:59:39.760> different
03:59:40.030 --> 03:59:40.040 align:start position:0%
which is going to show this different
03:59:40.040 --> 03:59:42.550 align:start position:0%
which is going to show this different
kind<03:59:40.159> of<03:59:40.279> an<03:59:40.840> icon<03:59:41.840> so<03:59:42.080> we'll<03:59:42.239> have<03:59:42.359> to
03:59:42.550 --> 03:59:42.560 align:start position:0%
kind of an icon so we'll have to
03:59:42.560 --> 03:59:45.189 align:start position:0%
kind of an icon so we'll have to
dynamically<03:59:43.199> change<03:59:43.800> this<03:59:44.040> property<03:59:44.720> for<03:59:44.920> now
03:59:45.189 --> 03:59:45.199 align:start position:0%
dynamically change this property for now
03:59:45.199 --> 03:59:48.149 align:start position:0%
dynamically change this property for now
let's<03:59:45.359> leave<03:59:45.600> it<03:59:45.800> statically<03:59:46.479> as<03:59:46.960> like<03:59:47.960> let's
03:59:48.149 --> 03:59:48.159 align:start position:0%
let's leave it statically as like let's
03:59:48.159 --> 03:59:51.269 align:start position:0%
let's leave it statically as like let's
give<03:59:48.279> it<03:59:48.399> an<03:59:48.520> Al<03:59:48.880> tag<03:59:49.239> of<03:59:49.840> like<03:59:50.840> let's<03:59:51.040> give<03:59:51.159> it
03:59:51.269 --> 03:59:51.279 align:start position:0%
give it an Al tag of like let's give it
03:59:51.279 --> 03:59:55.870 align:start position:0%
give it an Al tag of like let's give it
a<03:59:51.479> width<03:59:52.000> of<03:59:52.239> 20<03:59:53.159> as<03:59:53.279> well<03:59:53.439> as<03:59:53.560> a<03:59:53.800> height<03:59:54.199> of<03:59:54.880> 20
03:59:55.870 --> 03:59:55.880 align:start position:0%
a width of 20 as well as a height of 20
03:59:55.880 --> 03:59:58.110 align:start position:0%
a width of 20 as well as a height of 20
let's<03:59:56.080> give<03:59:56.199> it<03:59:56.279> an<03:59:56.439> on<03:59:56.800> click<03:59:57.520> which<03:59:57.680> for<03:59:57.840> now
03:59:58.110 --> 03:59:58.120 align:start position:0%
let's give it an on click which for now
03:59:58.120 --> 04:00:00.269 align:start position:0%
let's give it an on click which for now
is<03:59:58.239> going<03:59:58.399> to<03:59:58.520> be<03:59:58.640> set<03:59:58.880> to<03:59:59.159> an<03:59:59.319> empty<03:59:59.640> callback
04:00:00.269 --> 04:00:00.279 align:start position:0%
is going to be set to an empty callback
04:00:00.279 --> 04:00:03.030 align:start position:0%
is going to be set to an empty callback
function<04:00:01.279> and<04:00:01.479> let's<04:00:01.680> give<04:00:01.760> it<04:00:01.880> a<04:00:02.040> class<04:00:02.399> name
04:00:03.030 --> 04:00:03.040 align:start position:0%
function and let's give it a class name
04:00:03.040 --> 04:00:04.429 align:start position:0%
function and let's give it a class name
equal<04:00:03.359> to
04:00:04.429 --> 04:00:04.439 align:start position:0%
equal to
04:00:04.439 --> 04:00:08.229 align:start position:0%
equal to
cursor<04:00:05.439> Das<04:00:06.159> pointer<04:00:07.159> finally<04:00:07.720> right<04:00:07.960> below
04:00:08.229 --> 04:00:08.239 align:start position:0%
cursor Das pointer finally right below
04:00:08.239 --> 04:00:10.229 align:start position:0%
cursor Das pointer finally right below
it<04:00:08.640> we<04:00:08.760> can<04:00:08.880> create<04:00:09.120> a<04:00:09.239> new<04:00:09.439> P<04:00:09.680> tag<04:00:10.080> that's
04:00:10.229 --> 04:00:10.239 align:start position:0%
it we can create a new P tag that's
04:00:10.239 --> 04:00:12.269 align:start position:0%
it we can create a new P tag that's
going<04:00:10.359> to<04:00:10.479> render<04:00:10.840> the<04:00:10.960> number<04:00:11.199> of<04:00:11.439> likes<04:00:12.040> for
04:00:12.269 --> 04:00:12.279 align:start position:0%
going to render the number of likes for
04:00:12.279 --> 04:00:15.110 align:start position:0%
going to render the number of likes for
now<04:00:12.479> we<04:00:12.600> can<04:00:12.720> do<04:00:12.840> it<04:00:13.040> statically<04:00:13.720> as
04:00:15.110 --> 04:00:15.120 align:start position:0%
now we can do it statically as
04:00:15.120 --> 04:00:18.630 align:start position:0%
now we can do it statically as
zero<04:00:16.120> and<04:00:16.359> we<04:00:16.439> can<04:00:16.560> give<04:00:16.680> it<04:00:16.800> a<04:00:16.960> class<04:00:17.640> name
04:00:18.630 --> 04:00:18.640 align:start position:0%
zero and we can give it a class name
04:00:18.640 --> 04:00:21.389 align:start position:0%
zero and we can give it a class name
equal<04:00:18.960> to<04:00:19.640> small-
04:00:21.389 --> 04:00:21.399 align:start position:0%
equal to small-
04:00:21.399 --> 04:00:25.389 align:start position:0%
equal to small-
medium<04:00:22.399> and<04:00:22.560> on<04:00:22.760> large<04:00:23.080> devices<04:00:23.680> base-<04:00:24.399> medium
04:00:25.389 --> 04:00:25.399 align:start position:0%
medium and on large devices base- medium
04:00:25.399 --> 04:00:27.910 align:start position:0%
medium and on large devices base- medium
there<04:00:25.560> we<04:00:25.720> go<04:00:26.520> and<04:00:26.720> we<04:00:26.800> can<04:00:26.960> do<04:00:27.120> the<04:00:27.279> same<04:00:27.600> exact
04:00:27.910 --> 04:00:27.920 align:start position:0%
there we go and we can do the same exact
04:00:27.920 --> 04:00:29.790 align:start position:0%
there we go and we can do the same exact
thing<04:00:28.080> for<04:00:28.279> saved<04:00:28.880> so<04:00:29.080> let's<04:00:29.359> copy<04:00:29.640> this
04:00:29.790 --> 04:00:29.800 align:start position:0%
thing for saved so let's copy this
04:00:29.800 --> 04:00:33.389 align:start position:0%
thing for saved so let's copy this
entire<04:00:30.159> div<04:00:31.080> paste<04:00:31.359> it<04:00:31.880> below<04:00:32.880> this<04:00:33.040> time<04:00:33.239> we
04:00:33.389 --> 04:00:33.399 align:start position:0%
entire div paste it below this time we
04:00:33.399 --> 04:00:35.429 align:start position:0%
entire div paste it below this time we
don't<04:00:33.600> need<04:00:33.800> margin<04:00:34.239> right<04:00:34.760> as<04:00:34.880> it's<04:00:35.120> already
04:00:35.429 --> 04:00:35.439 align:start position:0%
don't need margin right as it's already
04:00:35.439 --> 04:00:36.510 align:start position:0%
don't need margin right as it's already
on<04:00:35.560> the<04:00:35.760> right
04:00:36.510 --> 04:00:36.520 align:start position:0%
on the right
04:00:36.520 --> 04:00:38.910 align:start position:0%
on the right
side<04:00:37.520> and<04:00:37.720> we<04:00:37.800> need<04:00:37.960> to<04:00:38.080> change<04:00:38.319> change<04:00:38.640> this
04:00:38.910 --> 04:00:38.920 align:start position:0%
side and we need to change change this
04:00:38.920 --> 04:00:42.469 align:start position:0%
side and we need to change change this
from<04:00:39.199> like<04:00:39.800> to<04:00:40.560> save<04:00:41.560> and<04:00:41.800> everything<04:00:42.120> else<04:00:42.319> is
04:00:42.469 --> 04:00:42.479 align:start position:0%
from like to save and everything else is
04:00:42.479 --> 04:00:45.110 align:start position:0%
from like to save and everything else is
going<04:00:42.640> to<04:00:42.800> be<04:00:43.279> exactly<04:00:44.120> the<04:00:44.279> same<04:00:44.680> so<04:00:44.880> now<04:00:45.000> we
04:00:45.110 --> 04:00:45.120 align:start position:0%
going to be exactly the same so now we
04:00:45.120 --> 04:00:48.030 align:start position:0%
going to be exactly the same so now we
have<04:00:45.359> likes<04:00:46.040> and<04:00:46.319> we<04:00:46.479> have<04:00:46.840> saves<04:00:47.720> in<04:00:47.880> this
04:00:48.030 --> 04:00:48.040 align:start position:0%
have likes and we have saves in this
04:00:48.040 --> 04:00:49.710 align:start position:0%
have likes and we have saves in this
case<04:00:48.239> we<04:00:48.359> don't<04:00:48.560> need<04:00:48.720> to<04:00:48.840> show<04:00:49.159> the<04:00:49.319> number<04:00:49.560> of
04:00:49.710 --> 04:00:49.720 align:start position:0%
case we don't need to show the number of
04:00:49.720 --> 04:00:52.830 align:start position:0%
case we don't need to show the number of
saves<04:00:50.319> so<04:00:50.479> we<04:00:50.600> can<04:00:50.760> remove<04:00:51.319> the<04:00:51.479> P<04:00:51.720> tag<04:00:52.680> there
04:00:52.830 --> 04:00:52.840 align:start position:0%
saves so we can remove the P tag there
04:00:52.840 --> 04:00:56.670 align:start position:0%
saves so we can remove the P tag there
we<04:00:53.040> go<04:00:53.800> this<04:00:54.080> is<04:00:54.600> great<04:00:55.600> so<04:00:56.080> now<04:00:56.319> that<04:00:56.479> we've
04:00:56.670 --> 04:00:56.680 align:start position:0%
we go this is great so now that we've
04:00:56.680 --> 04:00:58.950 align:start position:0%
we go this is great so now that we've
implemented<04:00:57.159> the<04:00:57.279> UI<04:00:58.040> what<04:00:58.159> do<04:00:58.279> you<04:00:58.439> say<04:00:58.800> that
04:00:58.950 --> 04:00:58.960 align:start position:0%
implemented the UI what do you say that
04:00:58.960 --> 04:01:02.030 align:start position:0%
implemented the UI what do you say that
we<04:00:59.159> implement<04:00:59.560> the<04:00:59.800> logic<04:01:00.199> for<04:01:00.560> liking<04:01:01.319> saving
04:01:02.030 --> 04:01:02.040 align:start position:0%
we implement the logic for liking saving
04:01:02.040 --> 04:01:04.830 align:start position:0%
we implement the logic for liking saving
and<04:01:02.359> unsaving<04:01:03.239> as<04:01:03.439> well<04:01:04.080> we<04:01:04.159> can<04:01:04.319> do<04:01:04.560> that
04:01:04.830 --> 04:01:04.840 align:start position:0%
and unsaving as well we can do that
04:01:04.840 --> 04:01:08.469 align:start position:0%
and unsaving as well we can do that
quite<04:01:05.120> easily<04:01:05.840> by<04:01:06.000> heading<04:01:06.319> to<04:01:06.560> our<04:01:06.880> API<04:01:07.479> file
04:01:08.469 --> 04:01:08.479 align:start position:0%
quite easily by heading to our API file
04:01:08.479 --> 04:01:10.229 align:start position:0%
quite easily by heading to our API file
by<04:01:08.640> the<04:01:08.760> way<04:01:09.000> I<04:01:09.080> just<04:01:09.279> press<04:01:09.560> control<04:01:10.000> or
04:01:10.229 --> 04:01:10.239 align:start position:0%
by the way I just press control or
04:01:10.239 --> 04:01:12.750 align:start position:0%
by the way I just press control or
command<04:01:10.640> p<04:01:11.199> and<04:01:11.359> I<04:01:11.520> started<04:01:11.960> typing<04:01:12.319> the<04:01:12.439> file
04:01:12.750 --> 04:01:12.760 align:start position:0%
command p and I started typing the file
04:01:12.760 --> 04:01:14.950 align:start position:0%
command p and I started typing the file
name<04:01:13.439> this<04:01:13.560> is<04:01:13.680> going<04:01:13.840> to<04:01:14.040> immediately<04:01:14.640> move
04:01:14.950 --> 04:01:14.960 align:start position:0%
name this is going to immediately move
04:01:14.960 --> 04:01:17.309 align:start position:0%
name this is going to immediately move
you<04:01:15.159> to<04:01:15.319> the<04:01:15.479> correct<04:01:15.920> file<04:01:16.680> here<04:01:17.080> we<04:01:17.159> can
04:01:17.309 --> 04:01:17.319 align:start position:0%
you to the correct file here we can
04:01:17.319 --> 04:01:20.670 align:start position:0%
you to the correct file here we can
create<04:01:17.640> a<04:01:17.800> new<04:01:18.040> function<04:01:19.000> export<04:01:19.640> async
04:01:20.670 --> 04:01:20.680 align:start position:0%
create a new function export async
04:01:20.680 --> 04:01:24.710 align:start position:0%
create a new function export async
function<04:01:21.680> like<04:01:22.359> post<04:01:23.359> we<04:01:23.520> have<04:01:23.680> to<04:01:23.840> get<04:01:24.040> a<04:01:24.319> post
04:01:24.710 --> 04:01:24.720 align:start position:0%
function like post we have to get a post
04:01:24.720 --> 04:01:27.590 align:start position:0%
function like post we have to get a post
ID<04:01:25.600> which<04:01:25.720> is<04:01:25.840> of<04:01:26.000> a<04:01:26.159> type
04:01:27.590 --> 04:01:27.600 align:start position:0%
ID which is of a type
04:01:27.600 --> 04:01:31.149 align:start position:0%
ID which is of a type
string<04:01:28.600> as<04:01:28.800> well<04:01:29.080> as<04:01:29.239> a<04:01:29.439> likes<04:01:29.960> array<04:01:30.960> that's
04:01:31.149 --> 04:01:31.159 align:start position:0%
string as well as a likes array that's
04:01:31.159 --> 04:01:34.429 align:start position:0%
string as well as a likes array that's
going<04:01:31.319> to<04:01:31.520> be<04:01:31.920> of<04:01:32.080> a<04:01:32.359> type<04:01:32.800> string<04:01:33.359> array<04:01:34.319> we
04:01:34.429 --> 04:01:34.439 align:start position:0%
going to be of a type string array we
04:01:34.439 --> 04:01:36.990 align:start position:0%
going to be of a type string array we
need<04:01:34.680> this<04:01:34.840> to<04:01:35.000> know<04:01:35.319> the<04:01:35.560> IDS<04:01:36.199> of<04:01:36.359> the<04:01:36.560> people
04:01:36.990 --> 04:01:37.000 align:start position:0%
need this to know the IDS of the people
04:01:37.000 --> 04:01:38.910 align:start position:0%
need this to know the IDS of the people
that<04:01:37.159> have<04:01:37.319> liked<04:01:37.600> the<04:01:37.760> post
04:01:38.910 --> 04:01:38.920 align:start position:0%
that have liked the post
04:01:38.920 --> 04:01:41.070 align:start position:0%
that have liked the post
as<04:01:39.120> usual<04:01:39.560> we're<04:01:39.760> going<04:01:39.920> to<04:01:40.120> open<04:01:40.359> up<04:01:40.600> a<04:01:40.760> new
04:01:41.070 --> 04:01:41.080 align:start position:0%
as usual we're going to open up a new
04:01:41.080 --> 04:01:43.910 align:start position:0%
as usual we're going to open up a new
try<04:01:41.439> and<04:01:41.800> catch<04:01:42.159> Block<04:01:43.120> in<04:01:43.279> the<04:01:43.479> catch<04:01:43.760> we're
04:01:43.910 --> 04:01:43.920 align:start position:0%
try and catch Block in the catch we're
04:01:43.920 --> 04:01:46.870 align:start position:0%
try and catch Block in the catch we're
going<04:01:44.000> to<04:01:44.159> Simply<04:01:44.479> consel<04:01:45.000> Lo<04:01:45.199> the<04:01:45.600> error<04:01:46.600> and
04:01:46.870 --> 04:01:46.880 align:start position:0%
going to Simply consel Lo the error and
04:01:46.880 --> 04:01:49.870 align:start position:0%
going to Simply consel Lo the error and
in<04:01:47.080> the<04:01:47.399> try<04:01:48.040> we'll<04:01:48.279> try<04:01:48.439> to<04:01:48.640> like<04:01:48.840> it<04:01:49.560> by
04:01:49.870 --> 04:01:49.880 align:start position:0%
in the try we'll try to like it by
04:01:49.880 --> 04:01:52.710 align:start position:0%
in the try we'll try to like it by
updating<04:01:50.680> the<04:01:50.840> record<04:01:51.439> of<04:01:51.600> the<04:01:51.760> post<04:01:52.439> so<04:01:52.600> we
04:01:52.710 --> 04:01:52.720 align:start position:0%
updating the record of the post so we
04:01:52.720 --> 04:01:57.309 align:start position:0%
updating the record of the post so we
can<04:01:52.840> say<04:01:53.120> const<04:01:53.760> updated<04:01:54.720> post<04:01:55.720> is<04:01:55.920> equal<04:01:56.279> to
04:01:57.309 --> 04:01:57.319 align:start position:0%
can say const updated post is equal to
04:01:57.319 --> 04:01:58.870 align:start position:0%
can say const updated post is equal to
await
04:01:58.870 --> 04:01:58.880 align:start position:0%
await
04:01:58.880 --> 04:02:01.349 align:start position:0%
await
databases.<04:01:59.880> update
04:02:01.349 --> 04:02:01.359 align:start position:0%
databases. update
04:02:01.359 --> 04:02:04.510 align:start position:0%
databases. update
document<04:02:02.359> and<04:02:02.720> as<04:02:02.920> usual<04:02:03.520> we<04:02:03.680> have<04:02:03.800> to<04:02:04.080> pass<04:02:04.359> a
04:02:04.510 --> 04:02:04.520 align:start position:0%
document and as usual we have to pass a
04:02:04.520 --> 04:02:06.670 align:start position:0%
document and as usual we have to pass a
couple<04:02:04.760> of<04:02:04.920> things<04:02:05.159> to<04:02:05.319> it<04:02:06.040> you<04:02:06.159> can<04:02:06.319> see<04:02:06.479> it
04:02:06.670 --> 04:02:06.680 align:start position:0%
couple of things to it you can see it
04:02:06.680 --> 04:02:08.510 align:start position:0%
couple of things to it you can see it
right<04:02:06.840> here<04:02:07.080> as<04:02:07.199> well<04:02:07.640> aight<04:02:08.040> has<04:02:08.199> is<04:02:08.319> really
04:02:08.510 --> 04:02:08.520 align:start position:0%
right here as well aight has is really
04:02:08.520 --> 04:02:11.510 align:start position:0%
right here as well aight has is really
nicely<04:02:08.920> documented<04:02:09.680> their<04:02:10.000> SDK<04:02:11.000> so<04:02:11.159> you<04:02:11.359> have
04:02:11.510 --> 04:02:11.520 align:start position:0%
nicely documented their SDK so you have
04:02:11.520 --> 04:02:14.670 align:start position:0%
nicely documented their SDK so you have
to<04:02:11.800> pass<04:02:12.120> the<04:02:12.319> database<04:02:12.840> ID<04:02:13.479> collection<04:02:13.960> ID
04:02:14.670 --> 04:02:14.680 align:start position:0%
to pass the database ID collection ID
04:02:14.680 --> 04:02:16.830 align:start position:0%
to pass the database ID collection ID
document<04:02:15.159> ID<04:02:15.840> and<04:02:16.000> then<04:02:16.199> the<04:02:16.359> data<04:02:16.600> you<04:02:16.720> want
04:02:16.830 --> 04:02:16.840 align:start position:0%
document ID and then the data you want
04:02:16.840 --> 04:02:20.469 align:start position:0%
document ID and then the data you want
to<04:02:17.080> update<04:02:18.000> so<04:02:18.439> let's<04:02:18.640> do<04:02:18.880> that<04:02:19.800> first<04:02:20.239> let's
04:02:20.469 --> 04:02:20.479 align:start position:0%
to update so let's do that first let's
04:02:20.479 --> 04:02:23.030 align:start position:0%
to update so let's do that first let's
pass<04:02:20.720> the<04:02:20.920> database<04:02:21.399> ID<04:02:22.000> by<04:02:22.120> saying<04:02:22.520> app
04:02:23.030 --> 04:02:23.040 align:start position:0%
pass the database ID by saying app
04:02:23.040 --> 04:02:26.149 align:start position:0%
pass the database ID by saying app
config<04:02:23.680> that<04:02:23.920> database<04:02:24.479> ID<04:02:25.359> then<04:02:25.680> we<04:02:25.840> have<04:02:25.960> to
04:02:26.149 --> 04:02:26.159 align:start position:0%
config that database ID then we have to
04:02:26.159 --> 04:02:28.309 align:start position:0%
config that database ID then we have to
pass<04:02:26.439> the<04:02:26.680> collection<04:02:27.199> ID<04:02:27.640> of<04:02:27.800> the<04:02:27.920> collection
04:02:28.309 --> 04:02:28.319 align:start position:0%
pass the collection ID of the collection
04:02:28.319 --> 04:02:30.630 align:start position:0%
pass the collection ID of the collection
we<04:02:28.399> want<04:02:28.520> to<04:02:28.720> update<04:02:29.439> in<04:02:29.640> this<04:02:29.880> case<04:02:30.199> app
04:02:30.630 --> 04:02:30.640 align:start position:0%
we want to update in this case app
04:02:30.640 --> 04:02:32.750 align:start position:0%
we want to update in this case app
config<04:02:31.279> that<04:02:31.640> postcollection
04:02:32.750 --> 04:02:32.760 align:start position:0%
config that postcollection
04:02:32.760 --> 04:02:35.550 align:start position:0%
config that postcollection
ID<04:02:33.760> then<04:02:34.040> you<04:02:34.120> need<04:02:34.279> to<04:02:34.479> pass<04:02:34.720> the<04:02:34.920> ID<04:02:35.239> of<04:02:35.399> the
04:02:35.550 --> 04:02:35.560 align:start position:0%
ID then you need to pass the ID of the
04:02:35.560 --> 04:02:37.750 align:start position:0%
ID then you need to pass the ID of the
post<04:02:35.920> you<04:02:36.000> want<04:02:36.120> to<04:02:36.359> update<04:02:37.359> and<04:02:37.520> then<04:02:37.640> you
04:02:37.750 --> 04:02:37.760 align:start position:0%
post you want to update and then you
04:02:37.760 --> 04:02:40.630 align:start position:0%
post you want to update and then you
want<04:02:37.880> to<04:02:38.000> pass<04:02:38.199> has<04:02:38.520> the<04:02:39.000> data<04:02:40.000> in<04:02:40.159> this<04:02:40.359> case
04:02:40.630 --> 04:02:40.640 align:start position:0%
want to pass has the data in this case
04:02:40.640 --> 04:02:43.309 align:start position:0%
want to pass has the data in this case
likes<04:02:41.239> of<04:02:41.439> the<04:02:41.600> new<04:02:41.840> likes<04:02:42.159> array<04:02:42.760> so<04:02:42.960> we<04:02:43.120> know
04:02:43.309 --> 04:02:43.319 align:start position:0%
likes of the new likes array so we know
04:02:43.319 --> 04:02:46.229 align:start position:0%
likes of the new likes array so we know
what<04:02:43.439> is<04:02:43.560> the<04:02:43.680> new<04:02:43.920> like<04:02:44.319> count<04:02:45.319> finally<04:02:45.960> if
04:02:46.229 --> 04:02:46.239 align:start position:0%
what is the new like count finally if
04:02:46.239 --> 04:02:48.830 align:start position:0%
what is the new like count finally if
there<04:02:46.399> is<04:02:46.720> no<04:02:47.239> updated<04:02:47.760> post<04:02:48.319> there<04:02:48.479> must<04:02:48.680> be
04:02:48.830 --> 04:02:48.840 align:start position:0%
there is no updated post there must be
04:02:48.840 --> 04:02:51.429 align:start position:0%
there is no updated post there must be
some<04:02:49.040> kind<04:02:49.159> of<04:02:49.239> an<04:02:49.399> error<04:02:49.800> so<04:02:50.000> we<04:02:50.080> can<04:02:50.279> throw<04:02:50.520> it
04:02:51.429 --> 04:02:51.439 align:start position:0%
some kind of an error so we can throw it
04:02:51.439 --> 04:02:55.510 align:start position:0%
some kind of an error so we can throw it
and<04:02:51.800> we<04:02:51.920> can<04:02:52.120> then<04:02:52.880> return<04:02:53.880> the<04:02:54.120> updated
04:02:55.510 --> 04:02:55.520 align:start position:0%
and we can then return the updated
04:02:55.520 --> 04:02:57.590 align:start position:0%
and we can then return the updated
post<04:02:56.520> and<04:02:56.720> this<04:02:56.800> is<04:02:56.920> it<04:02:57.080> for<04:02:57.199> the<04:02:57.359> like
04:02:57.590 --> 04:02:57.600 align:start position:0%
post and this is it for the like
04:02:57.600 --> 04:02:59.389 align:start position:0%
post and this is it for the like
functionality<04:02:58.520> of<04:02:58.680> course<04:02:58.920> we'll<04:02:59.120> have<04:02:59.239> to
04:02:59.389 --> 04:02:59.399 align:start position:0%
functionality of course we'll have to
04:02:59.399 --> 04:03:01.269 align:start position:0%
functionality of course we'll have to
consume<04:02:59.880> this<04:03:00.040> function<04:03:00.439> within<04:03:00.680> our<04:03:00.880> react
04:03:01.269 --> 04:03:01.279 align:start position:0%
consume this function within our react
04:03:01.279 --> 04:03:04.110 align:start position:0%
consume this function within our react
query<04:03:01.720> as<04:03:01.880> well<04:03:02.319> and<04:03:02.479> make<04:03:02.640> it<04:03:02.760> a<04:03:03.000> mutation<04:03:04.000> but
04:03:04.110 --> 04:03:04.120 align:start position:0%
query as well and make it a mutation but
04:03:04.120 --> 04:03:06.429 align:start position:0%
query as well and make it a mutation but
we're<04:03:04.279> going<04:03:04.359> to<04:03:04.520> do<04:03:04.720> that<04:03:04.920> soon<04:03:05.640> for<04:03:05.920> now
04:03:06.429 --> 04:03:06.439 align:start position:0%
we're going to do that soon for now
04:03:06.439 --> 04:03:08.189 align:start position:0%
we're going to do that soon for now
believe<04:03:06.680> it<04:03:06.800> or<04:03:06.960> not<04:03:07.279> the<04:03:07.439> save<04:03:07.760> post
04:03:08.189 --> 04:03:08.199 align:start position:0%
believe it or not the save post
04:03:08.199 --> 04:03:10.590 align:start position:0%
believe it or not the save post
functionality<04:03:08.840> is<04:03:09.120> quite<04:03:09.399> similar<04:03:10.120> so<04:03:10.279> we<04:03:10.399> can
04:03:10.590 --> 04:03:10.600 align:start position:0%
functionality is quite similar so we can
04:03:10.600 --> 04:03:13.830 align:start position:0%
functionality is quite similar so we can
simply<04:03:10.960> duplicate<04:03:11.600> this<04:03:11.800> function<04:03:12.399> below<04:03:13.399> and
04:03:13.830 --> 04:03:13.840 align:start position:0%
simply duplicate this function below and
04:03:13.840 --> 04:03:18.070 align:start position:0%
simply duplicate this function below and
call<04:03:14.080> it<04:03:14.560> save<04:03:15.600> post<04:03:16.600> to<04:03:16.800> save<04:03:17.040> a<04:03:17.199> post<04:03:17.680> we<04:03:17.840> do
04:03:18.070 --> 04:03:18.080 align:start position:0%
call it save post to save a post we do
04:03:18.080 --> 04:03:21.229 align:start position:0%
call it save post to save a post we do
need<04:03:18.439> a<04:03:18.680> post<04:03:19.000> ID<04:03:19.800> but<04:03:19.960> we<04:03:20.120> also<04:03:20.359> need<04:03:20.640> a<04:03:20.840> user
04:03:21.229 --> 04:03:21.239 align:start position:0%
need a post ID but we also need a user
04:03:21.239 --> 04:03:24.590 align:start position:0%
need a post ID but we also need a user
ID<04:03:22.120> of<04:03:22.279> the<04:03:22.439> user<04:03:23.159> that's<04:03:23.399> saving<04:03:23.800> that<04:03:24.000> post
04:03:24.590 --> 04:03:24.600 align:start position:0%
ID of the user that's saving that post
04:03:24.600 --> 04:03:26.990 align:start position:0%
ID of the user that's saving that post
of<04:03:24.720> a<04:03:24.920> type<04:03:25.199> string<04:03:26.120> then<04:03:26.520> instead<04:03:26.800> of
04:03:26.990 --> 04:03:27.000 align:start position:0%
of a type string then instead of
04:03:27.000 --> 04:03:29.349 align:start position:0%
of a type string then instead of
updating<04:03:27.439> the<04:03:27.600> post<04:03:28.040> we're<04:03:28.239> going<04:03:28.399> to<04:03:28.680> create
04:03:29.349 --> 04:03:29.359 align:start position:0%
updating the post we're going to create
04:03:29.359 --> 04:03:32.510 align:start position:0%
updating the post we're going to create
a<04:03:29.520> new<04:03:29.800> document<04:03:30.479> so<04:03:30.640> we<04:03:30.720> can<04:03:30.880> say<04:03:31.239> do<04:03:31.680> create
04:03:32.510 --> 04:03:32.520 align:start position:0%
a new document so we can say do create
04:03:32.520 --> 04:03:35.990 align:start position:0%
a new document so we can say do create
document<04:03:33.520> we<04:03:33.720> pass<04:03:34.040> the<04:03:34.199> database<04:03:34.720> ID<04:03:35.720> but
04:03:35.990 --> 04:03:36.000 align:start position:0%
document we pass the database ID but
04:03:36.000 --> 04:03:38.110 align:start position:0%
document we pass the database ID but
it's<04:03:36.159> not<04:03:36.359> going<04:03:36.520> to<04:03:36.600> be<04:03:36.760> a<04:03:36.920> post<04:03:37.279> collection
04:03:38.110 --> 04:03:38.120 align:start position:0%
it's not going to be a post collection
04:03:38.120 --> 04:03:41.229 align:start position:0%
it's not going to be a post collection
it's<04:03:38.239> going<04:03:38.399> to<04:03:38.520> be<04:03:38.720> a<04:03:39.000> saves<04:03:39.840> collection<04:03:40.319> ID
04:03:41.229 --> 04:03:41.239 align:start position:0%
it's going to be a saves collection ID
04:03:41.239 --> 04:03:42.870 align:start position:0%
it's going to be a saves collection ID
in<04:03:41.439> this<04:03:41.640> case<04:03:41.840> we<04:03:41.960> don't<04:03:42.239> already<04:03:42.520> have<04:03:42.640> an
04:03:42.870 --> 04:03:42.880 align:start position:0%
in this case we don't already have an
04:03:42.880 --> 04:03:45.349 align:start position:0%
in this case we don't already have an
existing<04:03:43.359> record<04:03:43.920> of<04:03:44.120> that<04:03:44.359> save<04:03:44.960> so<04:03:45.120> we<04:03:45.239> can
04:03:45.349 --> 04:03:45.359 align:start position:0%
existing record of that save so we can
04:03:45.359 --> 04:03:48.910 align:start position:0%
existing record of that save so we can
create<04:03:45.640> a<04:03:45.760> new<04:03:45.920> one<04:03:46.359> by<04:03:46.479> running<04:03:46.920> id.
04:03:48.910 --> 04:03:48.920 align:start position:0%
create a new one by running id.
04:03:48.920 --> 04:03:51.950 align:start position:0%
create a new one by running id.
unique<04:03:49.920> and<04:03:50.120> then<04:03:50.399> we<04:03:50.560> simply<04:03:50.840> want<04:03:50.960> to<04:03:51.279> pass
04:03:51.950 --> 04:03:51.960 align:start position:0%
unique and then we simply want to pass
04:03:51.960 --> 04:03:55.070 align:start position:0%
unique and then we simply want to pass
the<04:03:52.239> user<04:03:53.239> as<04:03:53.439> the<04:03:53.560> user<04:03:53.920> ID<04:03:54.560> that's<04:03:54.800> actually
04:03:55.070 --> 04:03:55.080 align:start position:0%
the user as the user ID that's actually
04:03:55.080 --> 04:03:57.510 align:start position:0%
the user as the user ID that's actually
saving<04:03:55.479> the<04:03:55.680> post<04:03:56.479> and<04:03:56.680> we<04:03:56.760> want<04:03:56.880> to<04:03:57.080> pass<04:03:57.319> the
04:03:57.510 --> 04:03:57.520 align:start position:0%
saving the post and we want to pass the
04:03:57.520 --> 04:04:00.510 align:start position:0%
saving the post and we want to pass the
post<04:03:58.399> of<04:03:58.560> the<04:03:58.720> post<04:03:59.040> ID<04:03:59.600> so<04:03:59.800> we<04:03:59.920> know<04:04:00.279> which
04:04:00.510 --> 04:04:00.520 align:start position:0%
post of the post ID so we know which
04:04:00.520 --> 04:04:01.870 align:start position:0%
post of the post ID so we know which
post<04:04:00.880> is<04:04:01.040> getting
04:04:01.870 --> 04:04:01.880 align:start position:0%
post is getting
04:04:01.880 --> 04:04:04.550 align:start position:0%
post is getting
saved<04:04:02.880> and<04:04:03.040> this<04:04:03.159> is<04:04:03.359> it<04:04:03.720> we<04:04:03.840> just<04:04:04.159> return<04:04:04.439> the
04:04:04.550 --> 04:04:04.560 align:start position:0%
saved and this is it we just return the
04:04:04.560 --> 04:04:07.110 align:start position:0%
saved and this is it we just return the
updated<04:04:05.040> post<04:04:06.000> and<04:04:06.239> finally<04:04:06.680> we're<04:04:06.840> going<04:04:06.960> to
04:04:07.110 --> 04:04:07.120 align:start position:0%
updated post and finally we're going to
04:04:07.120 --> 04:04:09.149 align:start position:0%
updated post and finally we're going to
also<04:04:07.319> need<04:04:07.479> to<04:04:07.600> be<04:04:07.680> able<04:04:08.120> delete<04:04:08.640> that<04:04:08.800> saved
04:04:09.149 --> 04:04:09.159 align:start position:0%
also need to be able delete that saved
04:04:09.159 --> 04:04:10.830 align:start position:0%
also need to be able delete that saved
post<04:04:09.479> from<04:04:09.600> the<04:04:09.760> database<04:04:10.479> so<04:04:10.640> let's
04:04:10.830 --> 04:04:10.840 align:start position:0%
post from the database so let's
04:04:10.840 --> 04:04:13.750 align:start position:0%
post from the database so let's
duplicate<04:04:11.399> this<04:04:11.720> one<04:04:12.040> final<04:04:12.520> time<04:04:13.319> and<04:04:13.479> let's
04:04:13.750 --> 04:04:13.760 align:start position:0%
duplicate this one final time and let's
04:04:13.760 --> 04:04:16.670 align:start position:0%
duplicate this one final time and let's
recall<04:04:14.239> it<04:04:14.560> or<04:04:14.800> rename<04:04:15.199> it<04:04:15.600> as
04:04:16.670 --> 04:04:16.680 align:start position:0%
recall it or rename it as
04:04:16.680 --> 04:04:21.149 align:start position:0%
recall it or rename it as
delete<04:04:17.920> saved<04:04:19.040> post<04:04:20.040> the<04:04:20.159> only<04:04:20.399> thing<04:04:20.520> we<04:04:20.680> need
04:04:21.149 --> 04:04:21.159 align:start position:0%
delete saved post the only thing we need
04:04:21.159 --> 04:04:23.990 align:start position:0%
delete saved post the only thing we need
is<04:04:21.399> the<04:04:21.640> saved<04:04:22.159> record<04:04:22.560> ID<04:04:23.279> so<04:04:23.399> we<04:04:23.520> can<04:04:23.640> say
04:04:23.990 --> 04:04:24.000 align:start position:0%
is the saved record ID so we can say
04:04:24.000 --> 04:04:27.389 align:start position:0%
is the saved record ID so we can say
saved<04:04:24.720> record<04:04:25.439> ID<04:04:26.000> of<04:04:26.159> a<04:04:26.359> type
04:04:27.389 --> 04:04:27.399 align:start position:0%
saved record ID of a type
04:04:27.399 --> 04:04:30.830 align:start position:0%
saved record ID of a type
string<04:04:28.399> in<04:04:28.640> this<04:04:28.840> case<04:04:29.120> we<04:04:29.239> want<04:04:29.399> to<04:04:29.840> remove<04:04:30.600> or
04:04:30.830 --> 04:04:30.840 align:start position:0%
string in this case we want to remove or
04:04:30.840 --> 04:04:32.870 align:start position:0%
string in this case we want to remove or
delete<04:04:31.359> a<04:04:31.600> document<04:04:32.239> so<04:04:32.399> we<04:04:32.479> can<04:04:32.600> say
04:04:32.870 --> 04:04:32.880 align:start position:0%
delete a document so we can say
04:04:32.880 --> 04:04:35.990 align:start position:0%
delete a document so we can say
databases.<04:04:33.880> delete<04:04:34.760> document<04:04:35.760> when<04:04:35.880> you
04:04:35.990 --> 04:04:36.000 align:start position:0%
databases. delete document when you
04:04:36.000 --> 04:04:38.550 align:start position:0%
databases. delete document when you
delete<04:04:36.319> a<04:04:36.520> document<04:04:37.040> you<04:04:37.199> get<04:04:37.439> back<04:04:37.640> a<04:04:38.040> status
04:04:38.550 --> 04:04:38.560 align:start position:0%
delete a document you get back a status
04:04:38.560 --> 04:04:41.349 align:start position:0%
delete a document you get back a status
code<04:04:39.560> and<04:04:39.680> to<04:04:39.880> delete<04:04:40.199> it<04:04:40.520> you<04:04:40.680> simply<04:04:40.960> have<04:04:41.120> to
04:04:41.349 --> 04:04:41.359 align:start position:0%
code and to delete it you simply have to
04:04:41.359 --> 04:04:45.590 align:start position:0%
code and to delete it you simply have to
pass<04:04:42.000> the<04:04:42.239> saved<04:04:43.000> record<04:04:43.720> ID<04:04:44.560> as<04:04:44.680> the<04:04:44.840> third
04:04:45.590 --> 04:04:45.600 align:start position:0%
pass the saved record ID as the third
04:04:45.600 --> 04:04:48.229 align:start position:0%
pass the saved record ID as the third
parameter<04:04:46.600> then<04:04:46.960> we<04:04:47.080> can<04:04:47.279> check<04:04:47.720> if<04:04:47.880> there's
04:04:48.229 --> 04:04:48.239 align:start position:0%
parameter then we can check if there's
04:04:48.239 --> 04:04:50.990 align:start position:0%
parameter then we can check if there's
no<04:04:48.760> status<04:04:49.159> code<04:04:49.600> we<04:04:49.720> can<04:04:49.880> throw<04:04:50.080> an<04:04:50.239> error
04:04:50.990 --> 04:04:51.000 align:start position:0%
no status code we can throw an error
04:04:51.000 --> 04:04:53.189 align:start position:0%
no status code we can throw an error
else<04:04:51.560> we<04:04:51.680> can<04:04:52.000> return<04:04:52.520> something<04:04:52.840> like<04:04:52.960> a
04:04:53.189 --> 04:04:53.199 align:start position:0%
else we can return something like a
04:04:53.199 --> 04:04:55.429 align:start position:0%
else we can return something like a
status<04:04:53.920> of
04:04:55.429 --> 04:04:55.439 align:start position:0%
status of
04:04:55.439 --> 04:04:58.269 align:start position:0%
status of
okay<04:04:56.439> and<04:04:56.680> now<04:04:57.120> we<04:04:57.319> have<04:04:57.560> these<04:04:57.920> three
04:04:58.269 --> 04:04:58.279 align:start position:0%
okay and now we have these three
04:04:58.279 --> 04:05:00.710 align:start position:0%
okay and now we have these three
functions<04:04:58.960> or<04:04:59.120> we<04:04:59.239> can<04:04:59.399> call<04:04:59.600> them<04:04:59.800> mutations
04:05:00.710 --> 04:05:00.720 align:start position:0%
functions or we can call them mutations
04:05:00.720 --> 04:05:03.309 align:start position:0%
functions or we can call them mutations
that<04:05:00.840> we<04:05:00.960> can<04:05:01.159> use<04:05:01.640> within<04:05:01.960> our<04:05:02.159> react<04:05:02.560> query
04:05:03.309 --> 04:05:03.319 align:start position:0%
that we can use within our react query
04:05:03.319 --> 04:05:05.950 align:start position:0%
that we can use within our react query
to<04:05:03.520> then<04:05:03.720> use<04:05:04.000> them<04:05:04.319> within<04:05:04.640> our<04:05:04.920> post<04:05:05.319> stats
04:05:05.950 --> 04:05:05.960 align:start position:0%
to then use them within our post stats
04:05:05.960 --> 04:05:09.910 align:start position:0%
to then use them within our post stats
component<04:05:06.960> so<04:05:07.479> let's<04:05:07.720> go<04:05:08.000> go<04:05:08.159> to<04:05:08.439> our<04:05:09.080> queries
04:05:09.910 --> 04:05:09.920 align:start position:0%
component so let's go go to our queries
04:05:09.920 --> 04:05:13.349 align:start position:0%
component so let's go go to our queries
and<04:05:10.439> mutations<04:05:11.439> and<04:05:11.720> go<04:05:12.000> right<04:05:12.199> below<04:05:12.640> our<04:05:12.960> use
04:05:13.349 --> 04:05:13.359 align:start position:0%
and mutations and go right below our use
04:05:13.359 --> 04:05:16.389 align:start position:0%
and mutations and go right below our use
create<04:05:13.760> post<04:05:14.120> and<04:05:14.279> use<04:05:14.600> get<04:05:14.840> recent<04:05:15.399> posts
04:05:16.389 --> 04:05:16.399 align:start position:0%
create post and use get recent posts
04:05:16.399 --> 04:05:20.990 align:start position:0%
create post and use get recent posts
here<04:05:16.800> we<04:05:16.920> can<04:05:17.239> export<04:05:18.040> const<04:05:18.840> use<04:05:19.479> like<04:05:20.000> post
04:05:20.990 --> 04:05:21.000 align:start position:0%
here we can export const use like post
04:05:21.000 --> 04:05:23.510 align:start position:0%
here we can export const use like post
which<04:05:21.120> is<04:05:21.239> going<04:05:21.399> to<04:05:21.520> be<04:05:21.720> equal<04:05:21.960> to<04:05:22.120> an<04:05:22.239> eror
04:05:23.510 --> 04:05:23.520 align:start position:0%
which is going to be equal to an eror
04:05:23.520 --> 04:05:26.670 align:start position:0%
which is going to be equal to an eror
function<04:05:24.520> there<04:05:24.880> we<04:05:25.000> can<04:05:25.199> define<04:05:25.680> a<04:05:25.920> query
04:05:26.670 --> 04:05:26.680 align:start position:0%
function there we can define a query
04:05:26.680 --> 04:05:29.670 align:start position:0%
function there we can define a query
client<04:05:27.680> by<04:05:27.800> saying<04:05:28.159> con<04:05:28.560> query<04:05:28.880> client<04:05:29.479> is
04:05:29.670 --> 04:05:29.680 align:start position:0%
client by saying con query client is
04:05:29.680 --> 04:05:33.469 align:start position:0%
client by saying con query client is
equal<04:05:30.000> to<04:05:30.479> use<04:05:31.080> Query<04:05:31.920> client<04:05:32.920> and<04:05:33.120> then<04:05:33.359> we
04:05:33.469 --> 04:05:33.479 align:start position:0%
equal to use Query client and then we
04:05:33.479 --> 04:05:36.910 align:start position:0%
equal to use Query client and then we
want<04:05:33.640> to<04:05:33.960> return<04:05:34.520> the<04:05:34.720> use<04:05:35.640> mutation<04:05:36.640> we<04:05:36.760> need
04:05:36.910 --> 04:05:36.920 align:start position:0%
want to return the use mutation we need
04:05:36.920 --> 04:05:40.149 align:start position:0%
want to return the use mutation we need
to<04:05:37.159> pass<04:05:37.399> a<04:05:37.520> mutation<04:05:38.239> function<04:05:39.080> like<04:05:39.319> so
04:05:40.149 --> 04:05:40.159 align:start position:0%
to pass a mutation function like so
04:05:40.159 --> 04:05:42.429 align:start position:0%
to pass a mutation function like so
that's<04:05:40.359> going<04:05:40.520> to<04:05:40.680> get<04:05:40.880> as<04:05:40.960> a<04:05:41.159> parameter<04:05:42.040> one
04:05:42.429 --> 04:05:42.439 align:start position:0%
that's going to get as a parameter one
04:05:42.439 --> 04:05:45.950 align:start position:0%
that's going to get as a parameter one
object<04:05:42.920> of<04:05:43.279> post<04:05:43.720> ID<04:05:44.640> as<04:05:44.760> well<04:05:44.880> as<04:05:45.040> the<04:05:45.199> likes
04:05:45.950 --> 04:05:45.960 align:start position:0%
object of post ID as well as the likes
04:05:45.960 --> 04:05:49.630 align:start position:0%
object of post ID as well as the likes
array<04:05:46.960> that's<04:05:47.199> going<04:05:47.359> to<04:05:47.520> be<04:05:47.760> of<04:05:47.920> a<04:05:48.199> type<04:05:49.040> post
04:05:49.630 --> 04:05:49.640 align:start position:0%
array that's going to be of a type post
04:05:49.640 --> 04:05:54.229 align:start position:0%
array that's going to be of a type post
ID<04:05:50.640> is<04:05:50.800> of<04:05:50.960> a<04:05:51.120> type<04:05:51.399> string<04:05:52.399> and<04:05:52.720> likes<04:05:53.239> array
04:05:54.229 --> 04:05:54.239 align:start position:0%
ID is of a type string and likes array
04:05:54.239 --> 04:05:57.349 align:start position:0%
ID is of a type string and likes array
is<04:05:54.520> of<04:05:54.640> a<04:05:54.880> type<04:05:55.359> array<04:05:55.760> of<04:05:56.080> strings<04:05:57.080> and<04:05:57.199> then
04:05:57.349 --> 04:05:57.359 align:start position:0%
is of a type array of strings and then
04:05:57.359 --> 04:05:59.510 align:start position:0%
is of a type array of strings and then
we<04:05:57.439> can<04:05:57.600> have<04:05:57.720> a<04:05:57.880> function<04:05:58.199> that<04:05:58.359> we<04:05:58.439> can<04:05:58.600> call
04:05:59.510 --> 04:05:59.520 align:start position:0%
we can have a function that we can call
04:05:59.520 --> 04:06:01.429 align:start position:0%
we can have a function that we can call
the<04:05:59.640> function<04:05:59.920> we're<04:06:00.080> going<04:06:00.159> to<04:06:00.319> call<04:06:00.920> is<04:06:01.159> the
04:06:01.429 --> 04:06:01.439 align:start position:0%
the function we're going to call is the
04:06:01.439 --> 04:06:05.750 align:start position:0%
the function we're going to call is the
like<04:06:02.040> post<04:06:02.760> coming<04:06:03.080> from<04:06:03.439> aight<04:06:04.319> API<04:06:05.319> and<04:06:05.520> to
04:06:05.750 --> 04:06:05.760 align:start position:0%
like post coming from aight API and to
04:06:05.760 --> 04:06:08.389 align:start position:0%
like post coming from aight API and to
it<04:06:06.040> we<04:06:06.159> can<04:06:06.319> simply<04:06:06.640> pass<04:06:06.920> the<04:06:07.080> post<04:06:07.439> ID
04:06:08.389 --> 04:06:08.399 align:start position:0%
it we can simply pass the post ID
04:06:08.399 --> 04:06:11.269 align:start position:0%
it we can simply pass the post ID
as<04:06:08.560> well<04:06:08.800> as<04:06:08.960> the<04:06:09.159> likes<04:06:09.640> array<04:06:10.640> and<04:06:10.840> now<04:06:11.080> it's
04:06:11.269 --> 04:06:11.279 align:start position:0%
as well as the likes array and now it's
04:06:11.279 --> 04:06:13.149 align:start position:0%
as well as the likes array and now it's
no<04:06:11.439> longer<04:06:11.720> complaining<04:06:12.399> because<04:06:12.600> it<04:06:12.760> gets
04:06:13.149 --> 04:06:13.159 align:start position:0%
no longer complaining because it gets
04:06:13.159 --> 04:06:15.910 align:start position:0%
no longer complaining because it gets
exactly<04:06:13.680> what<04:06:13.800> it<04:06:14.000> needs<04:06:15.000> so<04:06:15.239> now<04:06:15.399> we<04:06:15.520> have<04:06:15.680> our
04:06:15.910 --> 04:06:15.920 align:start position:0%
exactly what it needs so now we have our
04:06:15.920 --> 04:06:18.590 align:start position:0%
exactly what it needs so now we have our
used<04:06:16.640> mutation<04:06:17.640> but<04:06:17.920> the<04:06:18.080> second<04:06:18.319> thing<04:06:18.479> we
04:06:18.590 --> 04:06:18.600 align:start position:0%
used mutation but the second thing we
04:06:18.600 --> 04:06:21.030 align:start position:0%
used mutation but the second thing we
can<04:06:18.800> pass<04:06:19.040> to<04:06:19.159> our<04:06:19.279> use<04:06:19.560> mutation<04:06:20.479> which<04:06:20.680> goes
04:06:21.030 --> 04:06:21.040 align:start position:0%
can pass to our use mutation which goes
04:06:21.040 --> 04:06:24.149 align:start position:0%
can pass to our use mutation which goes
right<04:06:21.279> here<04:06:21.880> after<04:06:22.239> our<04:06:22.680> like<04:06:23.000> post<04:06:23.640> after<04:06:23.920> our
04:06:24.149 --> 04:06:24.159 align:start position:0%
right here after our like post after our
04:06:24.159 --> 04:06:27.750 align:start position:0%
right here after our like post after our
comma<04:06:24.880> is<04:06:25.159> on<04:06:25.520> success<04:06:26.520> so<04:06:26.720> the<04:06:26.920> question<04:06:27.239> is
04:06:27.750 --> 04:06:27.760 align:start position:0%
comma is on success so the question is
04:06:27.760 --> 04:06:30.670 align:start position:0%
comma is on success so the question is
what<04:06:27.960> do<04:06:28.120> we<04:06:28.279> want<04:06:28.439> to<04:06:28.640> do<04:06:29.040> on<04:06:29.479> success<04:06:30.479> where
04:06:30.670 --> 04:06:30.680 align:start position:0%
what do we want to do on success where
04:06:30.680 --> 04:06:32.189 align:start position:0%
what do we want to do on success where
we<04:06:30.840> get<04:06:31.000> some<04:06:31.199> data<04:06:31.520> back<04:06:31.840> once<04:06:32.000> we
04:06:32.189 --> 04:06:32.199 align:start position:0%
we get some data back once we
04:06:32.199 --> 04:06:34.630 align:start position:0%
we get some data back once we
successfully<04:06:32.680> do<04:06:32.840> an<04:06:33.080> action<04:06:34.080> well<04:06:34.359> we<04:06:34.479> want
04:06:34.630 --> 04:06:34.640 align:start position:0%
successfully do an action well we want
04:06:34.640 --> 04:06:37.389 align:start position:0%
successfully do an action well we want
to<04:06:35.000> invalidate<04:06:35.840> some<04:06:36.080> queries<04:06:36.840> so<04:06:36.960> we<04:06:37.080> can<04:06:37.159> say
04:06:37.389 --> 04:06:37.399 align:start position:0%
to invalidate some queries so we can say
04:06:37.399 --> 04:06:38.830 align:start position:0%
to invalidate some queries so we can say
query
04:06:38.830 --> 04:06:38.840 align:start position:0%
query
04:06:38.840 --> 04:06:41.070 align:start position:0%
query
client<04:06:39.840> do
04:06:41.070 --> 04:06:41.080 align:start position:0%
client do
04:06:41.080 --> 04:06:44.469 align:start position:0%
client do
invalidate<04:06:42.319> queries<04:06:43.319> in<04:06:43.520> this<04:06:43.760> case<04:06:44.279> it's
04:06:44.469 --> 04:06:44.479 align:start position:0%
invalidate queries in this case it's
04:06:44.479 --> 04:06:49.070 align:start position:0%
invalidate queries in this case it's
going<04:06:44.640> to<04:06:44.840> be<04:06:45.120> a<04:06:45.319> query<04:06:46.199> key<04:06:47.279> of
04:06:49.070 --> 04:06:49.080 align:start position:0%
going to be a query key of
04:06:49.080 --> 04:06:51.309 align:start position:0%
going to be a query key of
query<04:06:50.080> unor
04:06:51.309 --> 04:06:51.319 align:start position:0%
query unor
04:06:51.319 --> 04:06:56.670 align:start position:0%
query unor
keys.<04:06:52.319> getet<04:06:53.120> poost<04:06:53.880> by<04:06:54.359> ID<04:06:55.359> with<04:06:55.640> a<04:06:55.880> data<04:06:56.399> of
04:06:56.670 --> 04:06:56.680 align:start position:0%
keys. getet poost by ID with a data of
04:06:56.680 --> 04:06:59.710 align:start position:0%
keys. getet poost by ID with a data of
that<04:06:56.960> specific<04:06:57.479> post<04:06:58.199> that<04:06:58.359> we<04:06:58.600> updated<04:06:59.479> like
04:06:59.710 --> 04:06:59.720 align:start position:0%
that specific post that we updated like
04:06:59.720 --> 04:07:02.950 align:start position:0%
that specific post that we updated like
this<04:07:00.680> so<04:07:00.960> what<04:07:01.080> does<04:07:01.319> this<04:07:01.439> mean<04:07:02.439> well<04:07:02.720> as<04:07:02.840> I
04:07:02.950 --> 04:07:02.960 align:start position:0%
this so what does this mean well as I
04:07:02.960 --> 04:07:05.910 align:start position:0%
this so what does this mean well as I
said<04:07:03.239> before<04:07:04.040> every<04:07:04.399> single<04:07:04.880> post<04:07:05.439> that<04:07:05.600> we
04:07:05.910 --> 04:07:05.920 align:start position:0%
said before every single post that we
04:07:05.920 --> 04:07:08.309 align:start position:0%
said before every single post that we
get<04:07:06.239> or<04:07:06.479> fetch<04:07:06.880> using<04:07:07.239> react
04:07:08.309 --> 04:07:08.319 align:start position:0%
get or fetch using react
04:07:08.319 --> 04:07:10.910 align:start position:0%
get or fetch using react
is<04:07:08.479> going<04:07:08.640> to<04:07:08.760> be<04:07:09.000> cached<04:07:09.800> which<04:07:09.920> is<04:07:10.159> amazing
04:07:10.910 --> 04:07:10.920 align:start position:0%
is going to be cached which is amazing
04:07:10.920 --> 04:07:13.269 align:start position:0%
is going to be cached which is amazing
because<04:07:11.159> on<04:07:11.439> subsequent<04:07:12.120> reloads<04:07:12.960> it<04:07:13.080> will
04:07:13.269 --> 04:07:13.279 align:start position:0%
because on subsequent reloads it will
04:07:13.279 --> 04:07:15.030 align:start position:0%
because on subsequent reloads it will
already<04:07:13.640> have<04:07:13.800> them<04:07:14.040> saved<04:07:14.640> and<04:07:14.760> it's<04:07:14.920> going
04:07:15.030 --> 04:07:15.040 align:start position:0%
already have them saved and it's going
04:07:15.040 --> 04:07:17.149 align:start position:0%
already have them saved and it's going
to<04:07:15.199> take<04:07:15.399> so<04:07:15.680> much<04:07:15.960> less<04:07:16.239> time<04:07:16.600> to<04:07:16.760> load<04:07:17.040> them
04:07:17.149 --> 04:07:17.159 align:start position:0%
to take so much less time to load them
04:07:17.159 --> 04:07:19.990 align:start position:0%
to take so much less time to load them
on<04:07:17.319> the<04:07:17.479> screen<04:07:18.479> but<04:07:19.239> if<04:07:19.359> you<04:07:19.600> update
04:07:19.990 --> 04:07:20.000 align:start position:0%
on the screen but if you update
04:07:20.000 --> 04:07:22.030 align:start position:0%
on the screen but if you update
something<04:07:20.279> about<04:07:20.560> that<04:07:20.800> post<04:07:21.319> such<04:07:21.479> as<04:07:21.680> the
04:07:22.030 --> 04:07:22.040 align:start position:0%
something about that post such as the
04:07:22.040 --> 04:07:24.870 align:start position:0%
something about that post such as the
like<04:07:22.359> count<04:07:23.159> and<04:07:23.319> then<04:07:23.439> if<04:07:23.560> you<04:07:23.760> go<04:07:24.040> into<04:07:24.720> the
04:07:24.870 --> 04:07:24.880 align:start position:0%
like count and then if you go into the
04:07:24.880 --> 04:07:27.229 align:start position:0%
like count and then if you go into the
post<04:07:25.239> details<04:07:26.239> it's<04:07:26.399> still<04:07:26.600> going<04:07:26.800> to<04:07:27.000> have
04:07:27.229 --> 04:07:27.239 align:start position:0%
post details it's still going to have
04:07:27.239 --> 04:07:30.149 align:start position:0%
post details it's still going to have
the<04:07:27.439> same<04:07:27.800> old<04:07:28.199> like<04:07:28.560> count<04:07:29.239> the<04:07:29.399> one<04:07:29.600> it<04:07:29.840> had
04:07:30.149 --> 04:07:30.159 align:start position:0%
the same old like count the one it had
04:07:30.159 --> 04:07:34.429 align:start position:0%
the same old like count the one it had
before<04:07:30.840> you<04:07:31.159> actually<04:07:31.520> updated<04:07:32.560> it<04:07:33.560> so<04:07:33.920> to<04:07:34.119> fix
04:07:34.429 --> 04:07:34.439 align:start position:0%
before you actually updated it so to fix
04:07:34.439 --> 04:07:37.030 align:start position:0%
before you actually updated it so to fix
this<04:07:34.720> we<04:07:34.880> have<04:07:34.960> to<04:07:35.239> invalidate<04:07:36.159> the<04:07:36.319> fetch<04:07:36.800> to
04:07:37.030 --> 04:07:37.040 align:start position:0%
this we have to invalidate the fetch to
04:07:37.040 --> 04:07:40.030 align:start position:0%
this we have to invalidate the fetch to
theose<04:07:37.439> detail<04:07:37.680> details<04:07:38.439> and<04:07:38.600> say<04:07:39.000> hey<04:07:39.880> if
04:07:40.030 --> 04:07:40.040 align:start position:0%
theose detail details and say hey if
04:07:40.040 --> 04:07:42.550 align:start position:0%
theose detail details and say hey if
this<04:07:40.239> changes<04:07:40.960> if<04:07:41.080> you<04:07:41.239> like<04:07:41.439> the<04:07:41.640> post<04:07:42.319> the
04:07:42.550 --> 04:07:42.560 align:start position:0%
this changes if you like the post the
04:07:42.560 --> 04:07:45.109 align:start position:0%
this changes if you like the post the
next<04:07:42.840> time<04:07:43.000> you<04:07:43.199> open<04:07:43.479> up<04:07:43.680> the<04:07:43.880> post<04:07:44.560> please
04:07:45.109 --> 04:07:45.119 align:start position:0%
next time you open up the post please
04:07:45.119 --> 04:07:47.469 align:start position:0%
next time you open up the post please
update<04:07:45.720> the<04:07:45.960> like<04:07:46.199> count<04:07:47.000> that<04:07:47.159> way<04:07:47.319> it's
04:07:47.469 --> 04:07:47.479 align:start position:0%
update the like count that way it's
04:07:47.479 --> 04:07:49.790 align:start position:0%
update the like count that way it's
going<04:07:47.640> to<04:07:47.760> be<04:07:48.159> reflected<04:07:49.159> and<04:07:49.359> we<04:07:49.479> have<04:07:49.600> to
04:07:49.790 --> 04:07:49.800 align:start position:0%
going to be reflected and we have to
04:07:49.800 --> 04:07:51.870 align:start position:0%
going to be reflected and we have to
invalidate<04:07:50.439> a<04:07:50.560> couple<04:07:50.800> of<04:07:50.960> other<04:07:51.159> queries<04:07:51.680> as
04:07:51.870 --> 04:07:51.880 align:start position:0%
invalidate a couple of other queries as
04:07:51.880 --> 04:07:54.469 align:start position:0%
invalidate a couple of other queries as
well<04:07:52.319> so<04:07:52.520> let's<04:07:52.800> copy<04:07:53.119> this<04:07:53.359> one<04:07:53.760> two<04:07:54.199> three
04:07:54.469 --> 04:07:54.479 align:start position:0%
well so let's copy this one two three
04:07:54.479 --> 04:07:57.910 align:start position:0%
well so let's copy this one two three
more<04:07:54.920> times<04:07:55.920> the<04:07:56.080> second<04:07:56.399> one<04:07:56.680> is<04:07:56.840> going<04:07:57.040> to<04:07:57.239> be
04:07:57.910 --> 04:07:57.920 align:start position:0%
more times the second one is going to be
04:07:57.920 --> 04:08:01.070 align:start position:0%
more times the second one is going to be
get<04:07:58.520> recent<04:07:59.319> posts<04:08:00.199> so<04:08:00.319> if<04:08:00.439> you<04:08:00.520> just<04:08:00.680> reload
04:08:01.070 --> 04:08:01.080 align:start position:0%
get recent posts so if you just reload
04:08:01.080 --> 04:08:02.950 align:start position:0%
get recent posts so if you just reload
the<04:08:01.199> home<04:08:01.560> you<04:08:01.720> need<04:08:01.880> to<04:08:02.000> be<04:08:02.119> able<04:08:02.319> to<04:08:02.439> see<04:08:02.800> a
04:08:02.950 --> 04:08:02.960 align:start position:0%
the home you need to be able to see a
04:08:02.960 --> 04:08:06.750 align:start position:0%
the home you need to be able to see a
new<04:08:03.199> updated<04:08:03.680> like<04:08:04.000> count<04:08:05.000> then<04:08:05.720> get<04:08:06.080> posts
04:08:06.750 --> 04:08:06.760 align:start position:0%
new updated like count then get posts
04:08:06.760 --> 04:08:10.189 align:start position:0%
new updated like count then get posts
just<04:08:06.960> in<04:08:07.119> general<04:08:08.040> and<04:08:08.199> then<04:08:08.840> get<04:08:09.520> current
04:08:10.189 --> 04:08:10.199 align:start position:0%
just in general and then get current
04:08:10.199 --> 04:08:12.349 align:start position:0%
just in general and then get current
user<04:08:10.920> because<04:08:11.119> if<04:08:11.239> you<04:08:11.359> go<04:08:11.479> to<04:08:11.600> your<04:08:11.840> profile
04:08:12.349 --> 04:08:12.359 align:start position:0%
user because if you go to your profile
04:08:12.359 --> 04:08:14.429 align:start position:0%
user because if you go to your profile
you<04:08:12.479> need<04:08:12.640> to<04:08:12.760> be<04:08:12.880> able<04:08:13.080> to<04:08:13.279> see<04:08:13.880> the<04:08:14.040> updated
04:08:14.429 --> 04:08:14.439 align:start position:0%
you need to be able to see the updated
04:08:14.439 --> 04:08:17.149 align:start position:0%
you need to be able to see the updated
like<04:08:14.880> count<04:08:15.880> and<04:08:16.080> in<04:08:16.239> other<04:08:16.520> cases<04:08:16.840> we<04:08:16.960> don't
04:08:17.149 --> 04:08:17.159 align:start position:0%
like count and in other cases we don't
04:08:17.159 --> 04:08:19.550 align:start position:0%
like count and in other cases we don't
have<04:08:17.279> to<04:08:17.479> pass<04:08:17.720> the<04:08:17.880> ID<04:08:18.239> of<04:08:18.359> a<04:08:18.600> specific<04:08:19.000> post
04:08:19.550 --> 04:08:19.560 align:start position:0%
have to pass the ID of a specific post
04:08:19.560 --> 04:08:21.910 align:start position:0%
have to pass the ID of a specific post
because<04:08:19.760> we're<04:08:19.920> fetching<04:08:20.319> many<04:08:20.640> posts<04:08:21.359> so<04:08:21.800> it
04:08:21.910 --> 04:08:21.920 align:start position:0%
because we're fetching many posts so it
04:08:21.920 --> 04:08:24.550 align:start position:0%
because we're fetching many posts so it
doesn't<04:08:22.279> really<04:08:22.520> matter<04:08:23.359> great<04:08:24.159> so<04:08:24.359> this<04:08:24.439> is
04:08:24.550 --> 04:08:24.560 align:start position:0%
doesn't really matter great so this is
04:08:24.560 --> 04:08:28.469 align:start position:0%
doesn't really matter great so this is
the<04:08:24.720> mutation<04:08:25.159> for<04:08:25.359> the<04:08:25.560> use<04:08:26.119> like<04:08:26.920> count<04:08:27.920> now
04:08:28.469 --> 04:08:28.479 align:start position:0%
the mutation for the use like count now
04:08:28.479 --> 04:08:31.910 align:start position:0%
the mutation for the use like count now
as<04:08:28.800> before<04:08:29.399> with<04:08:29.560> the<04:08:29.720> API<04:08:30.279> actions<04:08:31.239> this<04:08:31.439> time
04:08:31.910 --> 04:08:31.920 align:start position:0%
as before with the API actions this time
04:08:31.920 --> 04:08:34.510 align:start position:0%
as before with the API actions this time
the<04:08:32.080> use<04:08:32.600> Save<04:08:33.000> post<04:08:33.399> is<04:08:33.560> going<04:08:33.720> to<04:08:33.840> be<04:08:34.040> similar
04:08:34.510 --> 04:08:34.520 align:start position:0%
the use Save post is going to be similar
04:08:34.520 --> 04:08:37.229 align:start position:0%
the use Save post is going to be similar
to<04:08:34.680> the<04:08:34.840> use<04:08:35.319> like<04:08:35.680> post<04:08:36.239> so<04:08:36.399> we<04:08:36.479> can<04:08:36.720> simply
04:08:37.229 --> 04:08:37.239 align:start position:0%
to the use like post so we can simply
04:08:37.239 --> 04:08:40.550 align:start position:0%
to the use like post so we can simply
dup<04:08:37.560> duplicate<04:08:38.199> this<04:08:38.760> below<04:08:39.760> we<04:08:39.880> can<04:08:40.119> rename
04:08:40.550 --> 04:08:40.560 align:start position:0%
dup duplicate this below we can rename
04:08:40.560 --> 04:08:44.990 align:start position:0%
dup duplicate this below we can rename
it<04:08:41.040> to<04:08:41.560> use<04:08:42.279> Save<04:08:43.279> post<04:08:44.279> and<04:08:44.479> then<04:08:44.760> we're
04:08:44.990 --> 04:08:45.000 align:start position:0%
it to use Save post and then we're
04:08:45.000 --> 04:08:47.429 align:start position:0%
it to use Save post and then we're
getting<04:08:45.319> the<04:08:45.720> post<04:08:46.080> ID<04:08:46.600> as<04:08:46.720> well<04:08:46.840> as<04:08:46.960> the<04:08:47.119> user
04:08:47.429 --> 04:08:47.439 align:start position:0%
getting the post ID as well as the user
04:08:47.439 --> 04:08:49.990 align:start position:0%
getting the post ID as well as the user
ID<04:08:47.920> not<04:08:48.159> the<04:08:48.279> likes<04:08:48.560> array<04:08:49.080> so<04:08:49.239> we<04:08:49.319> can<04:08:49.479> modify
04:08:49.990 --> 04:08:50.000 align:start position:0%
ID not the likes array so we can modify
04:08:50.000 --> 04:08:53.229 align:start position:0%
ID not the likes array so we can modify
right<04:08:50.199> here<04:08:51.119> the<04:08:51.359> type<04:08:51.680> to<04:08:51.880> user<04:08:52.159> ID<04:08:52.560> of<04:08:52.680> a<04:08:52.880> type
04:08:53.229 --> 04:08:53.239 align:start position:0%
right here the type to user ID of a type
04:08:53.239 --> 04:08:55.389 align:start position:0%
right here the type to user ID of a type
string<04:08:54.080> instead<04:08:54.359> of<04:08:54.479> calling<04:08:54.800> like<04:08:55.119> post
04:08:55.389 --> 04:08:55.399 align:start position:0%
string instead of calling like post
04:08:55.399 --> 04:08:57.030 align:start position:0%
string instead of calling like post
we're<04:08:55.520> going<04:08:55.640> to<04:08:55.760> call<04:08:56.040> Save
04:08:57.030 --> 04:08:57.040 align:start position:0%
we're going to call Save
04:08:57.040 --> 04:09:00.309 align:start position:0%
we're going to call Save
post<04:08:58.040> and<04:08:58.279> we<04:08:58.439> have<04:08:58.520> to<04:08:58.720> import<04:08:59.040> it<04:08:59.199> from<04:08:59.399> aight
04:09:00.309 --> 04:09:00.319 align:start position:0%
post and we have to import it from aight
04:09:00.319 --> 04:09:03.950 align:start position:0%
post and we have to import it from aight
API<04:09:01.319> and<04:09:01.600> we<04:09:01.720> want<04:09:01.800> to<04:09:02.040> pass<04:09:02.319> the<04:09:02.520> user<04:09:02.840> ID<04:09:03.760> as
04:09:03.950 --> 04:09:03.960 align:start position:0%
API and we want to pass the user ID as
04:09:03.960 --> 04:09:06.750 align:start position:0%
API and we want to pass the user ID as
the<04:09:04.119> second<04:09:04.479> parameter<04:09:05.239> or<04:09:05.560> let's<04:09:05.760> be<04:09:05.920> careful
04:09:06.750 --> 04:09:06.760 align:start position:0%
the second parameter or let's be careful
04:09:06.760 --> 04:09:09.349 align:start position:0%
the second parameter or let's be careful
if<04:09:06.880> we<04:09:07.000> have<04:09:07.119> a<04:09:07.239> r<04:09:07.880> it<04:09:07.960> says<04:09:08.239> post<04:09:08.520> ID<04:09:09.040> and<04:09:09.199> then
04:09:09.349 --> 04:09:09.359 align:start position:0%
if we have a r it says post ID and then
04:09:09.359 --> 04:09:12.750 align:start position:0%
if we have a r it says post ID and then
user<04:09:09.840> ID<04:09:10.840> and<04:09:11.040> here<04:09:11.199> it's<04:09:11.399> post<04:09:11.680> ID<04:09:11.960> user<04:09:12.239> ID<04:09:12.640> so
04:09:12.750 --> 04:09:12.760 align:start position:0%
user ID and here it's post ID user ID so
04:09:12.760 --> 04:09:14.870 align:start position:0%
user ID and here it's post ID user ID so
you<04:09:12.880> have<04:09:13.000> to<04:09:13.199> pass<04:09:13.439> them<04:09:13.600> in<04:09:13.720> the<04:09:13.880> same<04:09:14.159> order
04:09:14.870 --> 04:09:14.880 align:start position:0%
you have to pass them in the same order
04:09:14.880 --> 04:09:17.429 align:start position:0%
you have to pass them in the same order
in<04:09:15.040> this<04:09:15.239> case<04:09:15.760> I<04:09:15.880> truly<04:09:16.239> did<04:09:16.520> call<04:09:16.720> it<04:09:16.920> post<04:09:17.199> ID
04:09:17.429 --> 04:09:17.439 align:start position:0%
in this case I truly did call it post ID
04:09:17.439 --> 04:09:20.149 align:start position:0%
in this case I truly did call it post ID
and<04:09:17.560> then<04:09:17.680> the<04:09:17.800> user<04:09:18.080> ID<04:09:18.560> so<04:09:18.760> that's<04:09:19.000> great<04:09:19.880> on
04:09:20.149 --> 04:09:20.159 align:start position:0%
and then the user ID so that's great on
04:09:20.159 --> 04:09:22.469 align:start position:0%
and then the user ID so that's great on
success<04:09:20.800> we<04:09:20.960> don't<04:09:21.159> need<04:09:21.279> to<04:09:21.560> update<04:09:22.239> the
04:09:22.469 --> 04:09:22.479 align:start position:0%
success we don't need to update the
04:09:22.479 --> 04:09:25.229 align:start position:0%
success we don't need to update the
specific<04:09:22.960> post<04:09:23.319> get<04:09:23.560> post<04:09:23.840> by<04:09:23.960> ID<04:09:24.800> but<04:09:25.000> we<04:09:25.119> need
04:09:25.229 --> 04:09:25.239 align:start position:0%
specific post get post by ID but we need
04:09:25.239 --> 04:09:27.710 align:start position:0%
specific post get post by ID but we need
to<04:09:25.439> update<04:09:25.840> all<04:09:26.080> the<04:09:26.199> other<04:09:26.479> three<04:09:27.080> so<04:09:27.439> we<04:09:27.560> can
04:09:27.710 --> 04:09:27.720 align:start position:0%
to update all the other three so we can
04:09:27.720 --> 04:09:30.950 align:start position:0%
to update all the other three so we can
just<04:09:27.880> do<04:09:28.040> it<04:09:28.439> like<04:09:28.720> this<04:09:29.720> and<04:09:30.000> finally<04:09:30.720> the
04:09:30.950 --> 04:09:30.960 align:start position:0%
just do it like this and finally the
04:09:30.960 --> 04:09:33.670 align:start position:0%
just do it like this and finally the
last<04:09:31.199> one<04:09:31.600> use<04:09:31.880> delete<04:09:32.439> saved<04:09:32.880> post<04:09:33.399> is<04:09:33.520> going
04:09:33.670 --> 04:09:33.680 align:start position:0%
last one use delete saved post is going
04:09:33.680 --> 04:09:36.349 align:start position:0%
last one use delete saved post is going
to<04:09:33.840> be<04:09:34.040> the<04:09:34.199> same<04:09:34.680> so<04:09:34.880> we<04:09:34.960> can<04:09:35.159> duplicate<04:09:35.640> it
04:09:36.349 --> 04:09:36.359 align:start position:0%
to be the same so we can duplicate it
04:09:36.359 --> 04:09:38.590 align:start position:0%
to be the same so we can duplicate it
one<04:09:36.560> more<04:09:36.840> time<04:09:37.640> right
04:09:38.590 --> 04:09:38.600 align:start position:0%
one more time right
04:09:38.600 --> 04:09:42.269 align:start position:0%
one more time right
below<04:09:39.600> it's<04:09:39.760> going<04:09:39.920> to<04:09:40.080> be<04:09:40.239> called<04:09:40.760> use
04:09:42.269 --> 04:09:42.279 align:start position:0%
below it's going to be called use
04:09:42.279 --> 04:09:45.269 align:start position:0%
below it's going to be called use
delete<04:09:43.279> saved
04:09:45.269 --> 04:09:45.279 align:start position:0%
delete saved
04:09:45.279 --> 04:09:47.990 align:start position:0%
delete saved
post<04:09:46.279> the<04:09:46.399> only<04:09:46.640> thing<04:09:46.800> we<04:09:46.960> need<04:09:47.560> is<04:09:47.800> one
04:09:47.990 --> 04:09:48.000 align:start position:0%
post the only thing we need is one
04:09:48.000 --> 04:09:51.070 align:start position:0%
post the only thing we need is one
simple<04:09:48.439> parameter<04:09:49.239> right<04:09:49.439> here<04:09:49.840> of<04:09:50.199> Saved
04:09:51.070 --> 04:09:51.080 align:start position:0%
simple parameter right here of Saved
04:09:51.080 --> 04:09:55.469 align:start position:0%
simple parameter right here of Saved
record<04:09:52.399> ID<04:09:53.399> and<04:09:53.760> then<04:09:54.040> we<04:09:54.159> can<04:09:54.399> call<04:09:55.239> a
04:09:55.469 --> 04:09:55.479 align:start position:0%
record ID and then we can call a
04:09:55.479 --> 04:09:58.469 align:start position:0%
record ID and then we can call a
function<04:09:55.960> called<04:09:56.279> delete<04:09:57.239> saved<04:09:57.760> post<04:09:58.359> which
04:09:58.469 --> 04:09:58.479 align:start position:0%
function called delete saved post which
04:09:58.479 --> 04:10:01.950 align:start position:0%
function called delete saved post which
we<04:09:58.600> can<04:09:58.800> import<04:09:59.199> from<04:09:59.800> aite<04:10:00.800> and<04:10:01.040> pass<04:10:01.279> in<04:10:01.800> the
04:10:01.950 --> 04:10:01.960 align:start position:0%
we can import from aite and pass in the
04:10:01.960 --> 04:10:03.990 align:start position:0%
we can import from aite and pass in the
saved<04:10:02.520> record
04:10:03.990 --> 04:10:04.000 align:start position:0%
saved record
04:10:04.000 --> 04:10:07.990 align:start position:0%
saved record
ID<04:10:05.000> this<04:10:05.239> has<04:10:05.359> to<04:10:05.520> be<04:10:05.720> of<04:10:05.880> a<04:10:06.080> type<04:10:06.479> string<04:10:07.840> there
04:10:07.990 --> 04:10:08.000 align:start position:0%
ID this has to be of a type string there
04:10:08.000 --> 04:10:10.269 align:start position:0%
ID this has to be of a type string there
we<04:10:08.239> go<04:10:08.840> and<04:10:08.960> then<04:10:09.080> we're<04:10:09.239> going<04:10:09.319> to<04:10:09.520> invalidate
04:10:10.269 --> 04:10:10.279 align:start position:0%
we go and then we're going to invalidate
04:10:10.279 --> 04:10:12.950 align:start position:0%
we go and then we're going to invalidate
the<04:10:10.439> same<04:10:10.760> queries<04:10:11.680> so<04:10:11.920> now<04:10:12.239> we<04:10:12.399> have<04:10:12.680> three
04:10:12.950 --> 04:10:12.960 align:start position:0%
the same queries so now we have three
04:10:12.960 --> 04:10:15.469 align:start position:0%
the same queries so now we have three
phenomenal<04:10:13.520> functions<04:10:14.239> which<04:10:14.399> we<04:10:14.520> can<04:10:14.720> use<04:10:15.199> to
04:10:15.469 --> 04:10:15.479 align:start position:0%
phenomenal functions which we can use to
04:10:15.479 --> 04:10:17.830 align:start position:0%
phenomenal functions which we can use to
make<04:10:15.640> the<04:10:15.840> logic<04:10:16.119> of<04:10:16.239> our<04:10:16.439> application<04:10:17.040> work
04:10:17.830 --> 04:10:17.840 align:start position:0%
make the logic of our application work
04:10:17.840 --> 04:10:20.229 align:start position:0%
make the logic of our application work
so<04:10:18.040> let's<04:10:18.239> save<04:10:18.520> the<04:10:18.680> file<04:10:19.399> go<04:10:19.720> back<04:10:19.920> to<04:10:20.080> the
04:10:20.229 --> 04:10:20.239 align:start position:0%
so let's save the file go back to the
04:10:20.239 --> 04:10:22.710 align:start position:0%
so let's save the file go back to the
post<04:10:20.560> stats<04:10:21.319> and<04:10:21.479> let's<04:10:21.680> retrieve<04:10:22.399> all<04:10:22.560> of
04:10:22.710 --> 04:10:22.720 align:start position:0%
post stats and let's retrieve all of
04:10:22.720 --> 04:10:25.910 align:start position:0%
post stats and let's retrieve all of
these<04:10:22.920> phenomenal<04:10:23.479> mutations<04:10:24.199> and<04:10:24.920> queries
04:10:25.910 --> 04:10:25.920 align:start position:0%
these phenomenal mutations and queries
04:10:25.920 --> 04:10:28.950 align:start position:0%
these phenomenal mutations and queries
by<04:10:26.119> using<04:10:26.439> the<04:10:26.600> hooks<04:10:27.159> provided<04:10:27.560> to<04:10:27.800> us<04:10:28.520> by
04:10:28.950 --> 04:10:28.960 align:start position:0%
by using the hooks provided to us by
04:10:28.960 --> 04:10:32.309 align:start position:0%
by using the hooks provided to us by
react<04:10:29.560> query<04:10:30.560> that<04:10:30.760> are<04:10:31.119> by<04:10:31.479> consequence
04:10:32.309 --> 04:10:32.319 align:start position:0%
react query that are by consequence
04:10:32.319 --> 04:10:36.149 align:start position:0%
react query that are by consequence
using<04:10:32.920> aite<04:10:33.880> functions<04:10:34.880> so<04:10:35.279> back<04:10:35.479> in<04:10:35.640> the<04:10:35.760> post
04:10:36.149 --> 04:10:36.159 align:start position:0%
using aite functions so back in the post
04:10:36.159 --> 04:10:38.469 align:start position:0%
using aite functions so back in the post
stats<04:10:36.680> we<04:10:36.800> can<04:10:36.880> see<04:10:37.159> con
04:10:38.469 --> 04:10:38.479 align:start position:0%
stats we can see con
04:10:38.479 --> 04:10:40.710 align:start position:0%
stats we can see con
mutate<04:10:39.479> which<04:10:39.600> we're<04:10:39.760> going<04:10:39.840> to<04:10:40.000> rename<04:10:40.399> to
04:10:40.710 --> 04:10:40.720 align:start position:0%
mutate which we're going to rename to
04:10:40.720 --> 04:10:44.229 align:start position:0%
mutate which we're going to rename to
like<04:10:41.279> post<04:10:42.279> is<04:10:42.439> going<04:10:42.520> to<04:10:42.680> be<04:10:42.880> equal<04:10:43.159> to<04:10:43.479> use
04:10:44.229 --> 04:10:44.239 align:start position:0%
like post is going to be equal to use
04:10:44.239 --> 04:10:46.590 align:start position:0%
like post is going to be equal to use
like<04:10:44.840> post<04:10:45.479> which<04:10:45.600> we<04:10:45.720> have<04:10:45.840> to<04:10:46.000> import<04:10:46.399> from
04:10:46.590 --> 04:10:46.600 align:start position:0%
like post which we have to import from
04:10:46.600 --> 04:10:48.229 align:start position:0%
like post which we have to import from
queries<04:10:46.960> and
04:10:48.229 --> 04:10:48.239 align:start position:0%
queries and
04:10:48.239 --> 04:10:50.469 align:start position:0%
queries and
mutations<04:10:49.239> we<04:10:49.359> can<04:10:49.520> duplicate<04:10:50.040> this<04:10:50.279> three
04:10:50.469 --> 04:10:50.479 align:start position:0%
mutations we can duplicate this three
04:10:50.479 --> 04:10:53.070 align:start position:0%
mutations we can duplicate this three
more<04:10:50.840> times<04:10:51.680> the<04:10:51.840> second<04:10:52.199> time<04:10:52.439> the<04:10:52.600> mutate
04:10:53.070 --> 04:10:53.080 align:start position:0%
more times the second time the mutate
04:10:53.080 --> 04:10:55.990 align:start position:0%
more times the second time the mutate
function<04:10:53.680> is<04:10:53.840> going<04:10:54.000> to<04:10:54.159> be<04:10:54.319> called<04:10:54.840> save<04:10:55.319> post
04:10:55.990 --> 04:10:56.000 align:start position:0%
function is going to be called save post
04:10:56.000 --> 04:10:57.870 align:start position:0%
function is going to be called save post
and<04:10:56.119> the<04:10:56.319> third<04:10:56.600> time<04:10:56.880> it's<04:10:57.040> going<04:10:57.199> to<04:10:57.359> be
04:10:57.870 --> 04:10:57.880 align:start position:0%
and the third time it's going to be
04:10:57.880 --> 04:11:01.070 align:start position:0%
and the third time it's going to be
delete<04:10:59.000> saved
04:11:01.070 --> 04:11:01.080 align:start position:0%
delete saved
04:11:01.080 --> 04:11:04.429 align:start position:0%
delete saved
post<04:11:02.080> of<04:11:02.239> course<04:11:02.560> we<04:11:02.680> have<04:11:02.840> to<04:11:02.960> call<04:11:03.279> this<04:11:03.600> use
04:11:04.429 --> 04:11:04.439 align:start position:0%
post of course we have to call this use
04:11:04.439 --> 04:11:07.469 align:start position:0%
post of course we have to call this use
Save<04:11:05.119> post<04:11:05.600> which<04:11:05.720> we<04:11:05.840> also<04:11:06.080> have<04:11:06.199> to<04:11:06.439> import
04:11:07.469 --> 04:11:07.479 align:start position:0%
Save post which we also have to import
04:11:07.479 --> 04:11:09.990 align:start position:0%
Save post which we also have to import
and<04:11:07.840> use
04:11:09.990 --> 04:11:10.000 align:start position:0%
and use
04:11:10.000 --> 04:11:14.030 align:start position:0%
and use
delete<04:11:11.000> saved<04:11:12.159> post<04:11:13.159> which<04:11:13.319> we<04:11:13.439> can<04:11:13.640> also
04:11:14.030 --> 04:11:14.040 align:start position:0%
delete saved post which we can also
04:11:14.040 --> 04:11:17.229 align:start position:0%
delete saved post which we can also
import<04:11:14.640> right<04:11:15.319> here<04:11:16.319> we<04:11:16.479> also<04:11:16.720> need<04:11:16.880> to<04:11:17.000> know
04:11:17.229 --> 04:11:17.239 align:start position:0%
import right here we also need to know
04:11:17.239 --> 04:11:19.070 align:start position:0%
import right here we also need to know
who<04:11:17.399> is<04:11:17.520> the<04:11:17.680> currently<04:11:18.040> logged<04:11:18.319> in<04:11:18.479> user
04:11:19.070 --> 04:11:19.080 align:start position:0%
who is the currently logged in user
04:11:19.080 --> 04:11:20.950 align:start position:0%
who is the currently logged in user
which<04:11:19.239> we<04:11:19.319> can<04:11:19.479> get<04:11:19.680> pretty<04:11:19.920> easily<04:11:20.520> by<04:11:20.640> saying
04:11:20.950 --> 04:11:20.960 align:start position:0%
which we can get pretty easily by saying
04:11:20.960 --> 04:11:25.030 align:start position:0%
which we can get pretty easily by saying
cons<04:11:21.439> data<04:11:22.439> rename<04:11:22.880> it<04:11:23.080> to<04:11:23.399> current<04:11:23.800> user<04:11:24.800> is
04:11:25.030 --> 04:11:25.040 align:start position:0%
cons data rename it to current user is
04:11:25.040 --> 04:11:28.070 align:start position:0%
cons data rename it to current user is
equal<04:11:25.319> to<04:11:25.920> use<04:11:26.439> user<04:11:26.920> context<04:11:27.600> which<04:11:27.760> we<04:11:27.880> can
04:11:28.070 --> 04:11:28.080 align:start position:0%
equal to use user context which we can
04:11:28.080 --> 04:11:30.670 align:start position:0%
equal to use user context which we can
import<04:11:28.479> from<04:11:28.720> o
04:11:30.670 --> 04:11:30.680 align:start position:0%
import from o
04:11:30.680 --> 04:11:33.149 align:start position:0%
import from o
context<04:11:31.680> then<04:11:32.000> we<04:11:32.159> have<04:11:32.279> to<04:11:32.439> figure<04:11:32.720> out<04:11:33.080> what
04:11:33.149 --> 04:11:33.159 align:start position:0%
context then we have to figure out what
04:11:33.159 --> 04:11:35.990 align:start position:0%
context then we have to figure out what
are<04:11:33.319> the<04:11:33.479> current<04:11:33.880> likes<04:11:34.439> on<04:11:34.680> a<04:11:34.920> specific<04:11:35.439> post
04:11:35.990 --> 04:11:36.000 align:start position:0%
are the current likes on a specific post
04:11:36.000 --> 04:11:37.429 align:start position:0%
are the current likes on a specific post
and<04:11:36.119> we<04:11:36.239> can<04:11:36.359> do<04:11:36.520> that<04:11:36.720> right<04:11:36.840> here<04:11:37.000> at<04:11:37.080> the<04:11:37.199> top
04:11:37.429 --> 04:11:37.439 align:start position:0%
and we can do that right here at the top
04:11:37.439 --> 04:11:38.910 align:start position:0%
and we can do that right here at the top
Top<04:11:37.840> by<04:11:37.960> saying
04:11:38.910 --> 04:11:38.920 align:start position:0%
Top by saying
04:11:38.920 --> 04:11:43.670 align:start position:0%
Top by saying
const<04:11:39.920> likes<04:11:40.680> list<04:11:41.479> is<04:11:41.720> equal<04:11:42.040> to<04:11:42.800> post<04:11:43.560> which
04:11:43.670 --> 04:11:43.680 align:start position:0%
const likes list is equal to post which
04:11:43.680 --> 04:11:47.910 align:start position:0%
const likes list is equal to post which
is<04:11:43.840> coming<04:11:44.159> from<04:11:44.479> props<04:11:44.960> right<04:11:45.520> here<04:11:46.920> likes.
04:11:47.910 --> 04:11:47.920 align:start position:0%
is coming from props right here likes.
04:11:47.920 --> 04:11:51.309 align:start position:0%
is coming from props right here likes.
map<04:11:48.840> where<04:11:49.000> we<04:11:49.159> get<04:11:49.399> each<04:11:49.680> individual<04:11:50.319> user
04:11:51.309 --> 04:11:51.319 align:start position:0%
map where we get each individual user
04:11:51.319 --> 04:11:53.550 align:start position:0%
map where we get each individual user
why<04:11:51.600> user<04:11:52.479> because<04:11:52.800> we're<04:11:52.960> saving<04:11:53.359> a
04:11:53.550 --> 04:11:53.560 align:start position:0%
why user because we're saving a
04:11:53.560 --> 04:11:55.349 align:start position:0%
why user because we're saving a
reference<04:11:53.880> to<04:11:54.000> the<04:11:54.159> user<04:11:54.640> whenever<04:11:55.000> somebody
04:11:55.349 --> 04:11:55.359 align:start position:0%
reference to the user whenever somebody
04:11:55.359 --> 04:11:57.830 align:start position:0%
reference to the user whenever somebody
likes<04:11:55.600> it<04:11:56.119> which<04:11:56.239> is<04:11:56.359> going<04:11:56.479> to<04:11:56.600> be<04:11:56.840> type<04:11:57.279> of<04:11:57.520> a
04:11:57.830 --> 04:11:57.840 align:start position:0%
likes it which is going to be type of a
04:11:57.840 --> 04:12:01.429 align:start position:0%
likes it which is going to be type of a
models.<04:11:59.239> document<04:12:00.239> and<04:12:00.479> we<04:12:00.600> want<04:12:00.720> to<04:12:01.000> return
04:12:01.429 --> 04:12:01.439 align:start position:0%
models. document and we want to return
04:12:01.439 --> 04:12:05.550 align:start position:0%
models. document and we want to return
just<04:12:01.680> their<04:12:01.960> ID<04:12:02.479> so<04:12:02.720> user.<04:12:03.640> dollar<04:12:04.000> sign<04:12:04.560> ID
04:12:05.550 --> 04:12:05.560 align:start position:0%
just their ID so user. dollar sign ID
04:12:05.560 --> 04:12:07.950 align:start position:0%
just their ID so user. dollar sign ID
and<04:12:05.720> that<04:12:05.880> gives<04:12:06.080> us<04:12:06.239> the<04:12:06.359> likes<04:12:06.720> list
04:12:07.950 --> 04:12:07.960 align:start position:0%
and that gives us the likes list
04:12:07.960 --> 04:12:10.429 align:start position:0%
and that gives us the likes list
then<04:12:08.239> we<04:12:08.359> want<04:12:08.439> to<04:12:08.640> create<04:12:08.960> two<04:12:09.279> Ed<04:12:09.680> States<04:12:10.279> so
04:12:10.429 --> 04:12:10.439 align:start position:0%
then we want to create two Ed States so
04:12:10.439 --> 04:12:13.710 align:start position:0%
then we want to create two Ed States so
the<04:12:10.640> first<04:12:10.920> used<04:12:11.520> state<04:12:12.520> is<04:12:12.680> going<04:12:12.840> to<04:12:13.040> say
04:12:13.710 --> 04:12:13.720 align:start position:0%
the first used state is going to say
04:12:13.720 --> 04:12:18.309 align:start position:0%
the first used state is going to say
likes<04:12:14.680> as<04:12:14.840> well<04:12:15.000> as<04:12:15.319> set<04:12:16.000> likes<04:12:17.000> right<04:12:17.319> here
04:12:18.309 --> 04:12:18.319 align:start position:0%
likes as well as set likes right here
04:12:18.319 --> 04:12:21.830 align:start position:0%
likes as well as set likes right here
and<04:12:18.560> at<04:12:18.680> the<04:12:18.880> start<04:12:19.359> it's<04:12:19.560> going<04:12:19.720> to<04:12:19.840> be<04:12:20.000> set<04:12:20.840> to
04:12:21.830 --> 04:12:21.840 align:start position:0%
and at the start it's going to be set to
04:12:21.840 --> 04:12:24.149 align:start position:0%
and at the start it's going to be set to
the<04:12:22.000> likes<04:12:22.399> list<04:12:23.000> so<04:12:23.279> immediately<04:12:23.800> we<04:12:23.960> know
04:12:24.149 --> 04:12:24.159 align:start position:0%
the likes list so immediately we know
04:12:24.159 --> 04:12:26.590 align:start position:0%
the likes list so immediately we know
it's<04:12:24.319> going<04:12:24.479> to<04:12:24.640> be<04:12:24.840> an<04:12:25.119> array<04:12:26.119> and<04:12:26.279> we<04:12:26.399> also
04:12:26.590 --> 04:12:26.600 align:start position:0%
it's going to be an array and we also
04:12:26.600 --> 04:12:29.070 align:start position:0%
it's going to be an array and we also
have<04:12:26.720> to<04:12:26.880> import<04:12:27.279> use<04:12:27.600> state<04:12:28.000> from<04:12:28.279> react
04:12:29.070 --> 04:12:29.080 align:start position:0%
have to import use state from react
04:12:29.080 --> 04:12:30.750 align:start position:0%
have to import use state from react
which<04:12:29.199> we<04:12:29.319> can<04:12:29.439> do<04:12:29.560> at<04:12:29.680> the<04:12:29.880> top<04:12:30.279> by<04:12:30.399> saying
04:12:30.750 --> 04:12:30.760 align:start position:0%
which we can do at the top by saying
04:12:30.760 --> 04:12:33.910 align:start position:0%
which we can do at the top by saying
import<04:12:31.399> use<04:12:31.760> State<04:12:32.399> we<04:12:32.520> can<04:12:32.680> also<04:12:32.960> get<04:12:33.199> use
04:12:33.910 --> 04:12:33.920 align:start position:0%
import use State we can also get use
04:12:33.920 --> 04:12:38.229 align:start position:0%
import use State we can also get use
effect<04:12:34.920> coming<04:12:35.399> from<04:12:36.399> react
04:12:38.229 --> 04:12:38.239 align:start position:0%
effect coming from react
04:12:38.239 --> 04:12:40.389 align:start position:0%
effect coming from react
and<04:12:38.479> in<04:12:38.640> the<04:12:38.800> same<04:12:39.080> way<04:12:39.520> we<04:12:39.640> want<04:12:39.760> to<04:12:39.920> know<04:12:40.239> if
04:12:40.389 --> 04:12:40.399 align:start position:0%
and in the same way we want to know if
04:12:40.399 --> 04:12:43.149 align:start position:0%
and in the same way we want to know if
the<04:12:40.560> post<04:12:40.960> has<04:12:41.119> been<04:12:41.399> saved<04:12:42.000> so<04:12:42.159> we<04:12:42.239> can<04:12:42.399> say<04:12:42.680> is
04:12:43.149 --> 04:12:43.159 align:start position:0%
the post has been saved so we can say is
04:12:43.159 --> 04:12:47.910 align:start position:0%
the post has been saved so we can say is
saved<04:12:44.439> set<04:12:45.439> is
04:12:47.910 --> 04:12:47.920 align:start position:0%
04:12:47.920 --> 04:12:50.189 align:start position:0%
saved<04:12:48.920> and<04:12:49.119> that's<04:12:49.319> going<04:12:49.479> to<04:12:49.600> be<04:12:49.760> equal<04:12:50.000> to
04:12:50.189 --> 04:12:50.199 align:start position:0%
saved and that's going to be equal to
04:12:50.199 --> 04:12:52.830 align:start position:0%
saved and that's going to be equal to
false<04:12:50.600> at<04:12:50.720> the<04:12:50.960> beginning<04:12:51.960> so<04:12:52.199> now<04:12:52.399> we<04:12:52.520> have<04:12:52.680> a
04:12:52.830 --> 04:12:52.840 align:start position:0%
false at the beginning so now we have a
04:12:52.840 --> 04:12:55.149 align:start position:0%
false at the beginning so now we have a
lot<04:12:52.960> of<04:12:53.199> things<04:12:53.399> we<04:12:53.520> need<04:12:54.000> to<04:12:54.399> enable<04:12:54.920> this
04:12:55.149 --> 04:12:55.159 align:start position:0%
lot of things we need to enable this
04:12:55.159 --> 04:12:57.030 align:start position:0%
lot of things we need to enable this
functionality<04:12:56.159> so<04:12:56.319> let's<04:12:56.520> create<04:12:56.800> two
04:12:57.030 --> 04:12:57.040 align:start position:0%
functionality so let's create two
04:12:57.040 --> 04:12:58.790 align:start position:0%
functionality so let's create two
functions<04:12:57.439> we're<04:12:57.560> going<04:12:57.680> to<04:12:57.800> use<04:12:57.960> to<04:12:58.319> like
04:12:58.790 --> 04:12:58.800 align:start position:0%
functions we're going to use to like
04:12:58.800 --> 04:13:02.910 align:start position:0%
functions we're going to use to like
dislike<04:12:59.520> and<04:12:59.800> save<04:13:00.119> and<04:13:00.279> unsave<04:13:01.080> posts<04:13:02.080> const
04:13:02.910 --> 04:13:02.920 align:start position:0%
dislike and save and unsave posts const
04:13:02.920 --> 04:13:06.710 align:start position:0%
dislike and save and unsave posts const
handle<04:13:03.800> like<04:13:04.439> post<04:13:05.199> is<04:13:05.399> going<04:13:05.560> to<04:13:05.760> be<04:13:06.560> a
04:13:06.710 --> 04:13:06.720 align:start position:0%
handle like post is going to be a
04:13:06.720 --> 04:13:08.149 align:start position:0%
handle like post is going to be a
function
04:13:08.149 --> 04:13:08.159 align:start position:0%
function
04:13:08.159 --> 04:13:12.830 align:start position:0%
function
as<04:13:08.399> well<04:13:08.800> as<04:13:09.399> const<04:13:10.399> handle<04:13:11.279> save<04:13:12.199> post<04:13:12.720> which
04:13:12.830 --> 04:13:12.840 align:start position:0%
as well as const handle save post which
04:13:12.840 --> 04:13:15.429 align:start position:0%
as well as const handle save post which
is<04:13:12.960> going<04:13:13.080> to<04:13:13.199> be<04:13:13.359> another<04:13:13.720> function<04:13:14.239> for<04:13:14.479> now
04:13:15.429 --> 04:13:15.439 align:start position:0%
is going to be another function for now
04:13:15.439 --> 04:13:17.229 align:start position:0%
is going to be another function for now
now<04:13:15.600> we<04:13:15.760> have<04:13:16.000> all<04:13:16.119> of<04:13:16.319> these<04:13:16.560> properties<04:13:17.119> we
04:13:17.229 --> 04:13:17.239 align:start position:0%
now we have all of these properties we
04:13:17.239 --> 04:13:20.149 align:start position:0%
now we have all of these properties we
can<04:13:17.439> work<04:13:17.760> with<04:13:18.159> right<04:13:18.359> here<04:13:18.600> Below<04:13:19.080> in<04:13:19.239> the<04:13:19.399> UI
04:13:20.149 --> 04:13:20.159 align:start position:0%
can work with right here Below in the UI
04:13:20.159 --> 04:13:22.750 align:start position:0%
can work with right here Below in the UI
so<04:13:20.520> let's<04:13:20.760> make<04:13:20.920> use<04:13:21.119> of<04:13:21.319> them<04:13:22.199> first<04:13:22.479> things
04:13:22.750 --> 04:13:22.760 align:start position:0%
so let's make use of them first things
04:13:22.760 --> 04:13:24.910 align:start position:0%
so let's make use of them first things
first<04:13:23.239> we<04:13:23.359> can<04:13:23.520> figure<04:13:23.760> out<04:13:24.040> if<04:13:24.159> a<04:13:24.359> post<04:13:24.760> has
04:13:24.910 --> 04:13:24.920 align:start position:0%
first we can figure out if a post has
04:13:24.920 --> 04:13:26.910 align:start position:0%
first we can figure out if a post has
been<04:13:25.159> liked<04:13:25.760> and<04:13:25.920> based<04:13:26.159> on<04:13:26.359> that<04:13:26.520> we<04:13:26.600> can<04:13:26.720> show
04:13:26.910 --> 04:13:26.920 align:start position:0%
been liked and based on that we can show
04:13:26.920 --> 04:13:29.590 align:start position:0%
been liked and based on that we can show
a<04:13:27.080> different<04:13:27.439> icon<04:13:28.199> so<04:13:28.399> instead<04:13:28.640> of<04:13:28.760> a<04:13:28.960> source
04:13:29.590 --> 04:13:29.600 align:start position:0%
a different icon so instead of a source
04:13:29.600 --> 04:13:32.870 align:start position:0%
a different icon so instead of a source
assets<04:13:30.080> icons<04:13:30.560> like<04:13:31.439> we<04:13:31.560> can<04:13:31.960> open<04:13:32.239> up<04:13:32.439> a<04:13:32.600> new
04:13:32.870 --> 04:13:32.880 align:start position:0%
assets icons like we can open up a new
04:13:32.880 --> 04:13:37.510 align:start position:0%
assets icons like we can open up a new
Dynamic<04:13:34.080> block<04:13:35.080> and<04:13:35.359> there<04:13:35.720> we<04:13:35.840> can<04:13:36.040> say<04:13:36.760> check
04:13:37.510 --> 04:13:37.520 align:start position:0%
Dynamic block and there we can say check
04:13:37.520 --> 04:13:41.469 align:start position:0%
Dynamic block and there we can say check
is<04:13:37.960> liked<04:13:38.640> coming<04:13:38.960> from<04:13:39.199> lib<04:13:39.880> utils<04:13:40.880> to<04:13:41.199> which
04:13:41.469 --> 04:13:41.479 align:start position:0%
is liked coming from lib utils to which
04:13:41.479 --> 04:13:43.429 align:start position:0%
is liked coming from lib utils to which
we're<04:13:41.640> going<04:13:41.720> to<04:13:41.960> pass<04:13:42.199> the<04:13:42.319> likes<04:13:42.920> so<04:13:43.080> we<04:13:43.239> know
04:13:43.429 --> 04:13:43.439 align:start position:0%
we're going to pass the likes so we know
04:13:43.439 --> 04:13:45.750 align:start position:0%
we're going to pass the likes so we know
the<04:13:43.520> full<04:13:44.080> likes<04:13:44.399> array<04:13:45.279> as<04:13:45.359> well<04:13:45.520> as<04:13:45.640> the
04:13:45.750 --> 04:13:45.760 align:start position:0%
the full likes array as well as the
04:13:45.760 --> 04:13:48.149 align:start position:0%
the full likes array as well as the
current<04:13:46.080> user<04:13:46.359> ID<04:13:47.040> and<04:13:47.119> we<04:13:47.239> can<04:13:47.399> check<04:13:47.760> if<04:13:47.960> it's
04:13:48.149 --> 04:13:48.159 align:start position:0%
current user ID and we can check if it's
04:13:48.159 --> 04:13:50.910 align:start position:0%
current user ID and we can check if it's
currently<04:13:48.560> in<04:13:48.800> there<04:13:49.720> if<04:13:49.880> it<04:13:50.040> is<04:13:50.680> then<04:13:50.800> we're
04:13:50.910 --> 04:13:50.920 align:start position:0%
currently in there if it is then we're
04:13:50.920 --> 04:13:54.269 align:start position:0%
currently in there if it is then we're
going<04:13:51.040> to<04:13:51.159> show<04:13:51.720> the<04:13:51.960> liked<04:13:52.600> feature<04:13:53.359> like<04:13:53.560> so
04:13:54.269 --> 04:13:54.279 align:start position:0%
going to show the liked feature like so
04:13:54.279 --> 04:13:55.790 align:start position:0%
going to show the liked feature like so
and<04:13:54.399> of<04:13:54.560> course<04:13:54.760> we<04:13:54.880> have<04:13:55.000> to<04:13:55.159> close<04:13:55.600> this
04:13:55.790 --> 04:13:55.800 align:start position:0%
and of course we have to close this
04:13:55.800 --> 04:13:58.189 align:start position:0%
and of course we have to close this
properly<04:13:56.359> so<04:13:56.600> everything<04:13:56.960> appears<04:13:57.439> nicely
04:13:58.189 --> 04:13:58.199 align:start position:0%
properly so everything appears nicely
04:13:58.199 --> 04:14:00.830 align:start position:0%
properly so everything appears nicely
and<04:13:58.399> open<04:13:58.640> up<04:13:58.880> a<04:13:59.040> new<04:13:59.680> template<04:14:00.080> string<04:14:00.720> there
04:14:00.830 --> 04:14:00.840 align:start position:0%
and open up a new template string there
04:14:00.840 --> 04:14:04.590 align:start position:0%
and open up a new template string there
we<04:14:01.000> go<04:14:01.640> so<04:14:01.920> check<04:14:02.479> is<04:14:02.800> liked<04:14:03.800> if<04:14:03.920> it<04:14:04.080> is<04:14:04.439> we
04:14:04.590 --> 04:14:04.600 align:start position:0%
we go so check is liked if it is we
04:14:04.600 --> 04:14:08.149 align:start position:0%
we go so check is liked if it is we
render<04:14:05.040> the<04:14:05.319> assets<04:14:05.760> icons<04:14:06.239> liked<04:14:07.279> and<04:14:07.600> else
04:14:08.149 --> 04:14:08.159 align:start position:0%
render the assets icons liked and else
04:14:08.159 --> 04:14:10.870 align:start position:0%
render the assets icons liked and else
we<04:14:08.279> want<04:14:08.399> to<04:14:08.560> render<04:14:09.119> something<04:14:09.520> like<04:14:10.080> assets
04:14:10.870 --> 04:14:10.880 align:start position:0%
we want to render something like assets
04:14:10.880 --> 04:14:14.269 align:start position:0%
we want to render something like assets
icons<04:14:11.760> like<04:14:12.760> if<04:14:12.880> we<04:14:13.040> save<04:14:13.279> it<04:14:13.800> you<04:14:13.920> can<04:14:14.040> see
04:14:14.269 --> 04:14:14.279 align:start position:0%
icons like if we save it you can see
04:14:14.279 --> 04:14:17.389 align:start position:0%
icons like if we save it you can see
that<04:14:14.439> now<04:14:14.560> it's<04:14:14.680> a<04:14:14.920> zero<04:14:15.479> and<04:14:15.760> it's<04:14:16.119> not<04:14:16.560> liked
04:14:17.389 --> 04:14:17.399 align:start position:0%
that now it's a zero and it's not liked
04:14:17.399 --> 04:14:19.349 align:start position:0%
that now it's a zero and it's not liked
later<04:14:17.640> on<04:14:17.920> once<04:14:18.080> we<04:14:18.239> click<04:14:18.479> it<04:14:18.800> it<04:14:18.920> should<04:14:19.119> turn
04:14:19.349 --> 04:14:19.359 align:start position:0%
later on once we click it it should turn
04:14:19.359 --> 04:14:22.149 align:start position:0%
later on once we click it it should turn
out<04:14:19.720> red<04:14:20.680> once<04:14:20.880> we<04:14:21.080> click<04:14:21.359> the<04:14:21.560> like<04:14:21.920> we<04:14:22.040> want
04:14:22.149 --> 04:14:22.159 align:start position:0%
out red once we click the like we want
04:14:22.159 --> 04:14:25.149 align:start position:0%
out red once we click the like we want
to<04:14:22.279> get<04:14:22.439> the<04:14:22.560> click<04:14:22.840> event<04:14:23.680> and<04:14:23.840> then<04:14:24.040> call<04:14:24.399> the
04:14:25.149 --> 04:14:25.159 align:start position:0%
to get the click event and then call the
04:14:25.159 --> 04:14:28.910 align:start position:0%
to get the click event and then call the
handle<04:14:26.159> like<04:14:26.960> post<04:14:27.840> to<04:14:28.040> which<04:14:28.199> we<04:14:28.399> pass<04:14:28.640> the
04:14:28.910 --> 04:14:28.920 align:start position:0%
handle like post to which we pass the
04:14:28.920 --> 04:14:31.469 align:start position:0%
handle like post to which we pass the
event<04:14:29.920> if<04:14:30.119> the<04:14:30.239> only<04:14:30.520> thing<04:14:30.680> you<04:14:30.840> have<04:14:31.119> here
04:14:31.469 --> 04:14:31.479 align:start position:0%
event if the only thing you have here
04:14:31.479 --> 04:14:33.750 align:start position:0%
event if the only thing you have here
you<04:14:31.760> pass<04:14:32.119> there<04:14:32.600> you<04:14:32.680> can<04:14:32.880> immediately<04:14:33.520> just
04:14:33.750 --> 04:14:33.760 align:start position:0%
you pass there you can immediately just
04:14:33.760 --> 04:14:36.510 align:start position:0%
you pass there you can immediately just
do<04:14:33.960> a<04:14:34.119> shorthand<04:14:35.000> which<04:14:35.159> means<04:14:35.520> like<04:14:35.760> this
04:14:36.510 --> 04:14:36.520 align:start position:0%
do a shorthand which means like this
04:14:36.520 --> 04:14:38.630 align:start position:0%
do a shorthand which means like this
similar<04:14:36.840> thing<04:14:37.279> here<04:14:37.520> instead<04:14:37.800> of<04:14:38.000> zero<04:14:38.520> we
04:14:38.630 --> 04:14:38.640 align:start position:0%
similar thing here instead of zero we
04:14:38.640 --> 04:14:41.790 align:start position:0%
similar thing here instead of zero we
can<04:14:38.840> display<04:14:39.560> the<04:14:39.840> likes.<04:14:40.840> length<04:14:41.359> so<04:14:41.600> how
04:14:41.790 --> 04:14:41.800 align:start position:0%
can display the likes. length so how
04:14:41.800 --> 04:14:43.550 align:start position:0%
can display the likes. length so how
many<04:14:42.279> likes<04:14:42.800> there
04:14:43.550 --> 04:14:43.560 align:start position:0%
many likes there
04:14:43.560 --> 04:14:46.030 align:start position:0%
many likes there
are<04:14:44.560> and<04:14:44.680> then<04:14:44.800> we<04:14:44.880> can<04:14:45.080> do<04:14:45.199> a<04:14:45.319> similar<04:14:45.680> thing
04:14:46.030 --> 04:14:46.040 align:start position:0%
are and then we can do a similar thing
04:14:46.040 --> 04:14:48.750 align:start position:0%
are and then we can do a similar thing
with<04:14:46.279> saved<04:14:47.040> so<04:14:47.319> we<04:14:47.439> can<04:14:47.600> open<04:14:47.840> up<04:14:48.080> a<04:14:48.279> new
04:14:48.750 --> 04:14:48.760 align:start position:0%
with saved so we can open up a new
04:14:48.760 --> 04:14:52.030 align:start position:0%
with saved so we can open up a new
Dynamic<04:14:49.359> template<04:14:49.760> string<04:14:50.439> block<04:14:51.439> and<04:14:51.760> close
04:14:52.030 --> 04:14:52.040 align:start position:0%
Dynamic template string block and close
04:14:52.040 --> 04:14:54.670 align:start position:0%
Dynamic template string block and close
it<04:14:52.239> of<04:14:52.399> course<04:14:53.199> right<04:14:53.359> at<04:14:53.479> the<04:14:53.720> top<04:14:54.040> we<04:14:54.159> can<04:14:54.319> say
04:14:54.670 --> 04:14:54.680 align:start position:0%
it of course right at the top we can say
04:14:54.680 --> 04:14:59.229 align:start position:0%
it of course right at the top we can say
if<04:14:55.600> is<04:14:56.319> saved<04:14:57.319> if<04:14:57.439> it<04:14:57.640> is<04:14:57.840> saved<04:14:58.479> we<04:14:58.600> can<04:14:58.760> simply
04:14:59.229 --> 04:14:59.239 align:start position:0%
if is saved if it is saved we can simply
04:14:59.239 --> 04:15:05.070 align:start position:0%
if is saved if it is saved we can simply
return<04:15:00.319> assets<04:15:01.720> icons<04:15:02.800> saved.
04:15:05.070 --> 04:15:05.080 align:start position:0%
return assets icons saved.
04:15:05.080 --> 04:15:08.870 align:start position:0%
return assets icons saved.
SVG<04:15:06.080> else<04:15:06.680> we<04:15:06.800> can<04:15:07.239> return<04:15:07.720> something<04:15:08.159> like
04:15:08.870 --> 04:15:08.880 align:start position:0%
SVG else we can return something like
04:15:08.880 --> 04:15:13.109 align:start position:0%
SVG else we can return something like
assets<04:15:09.560> icons<04:15:10.359> save<04:15:11.359> there<04:15:11.479> we<04:15:11.720> go<04:15:12.720> and<04:15:12.840> we<04:15:12.960> can
04:15:13.109 --> 04:15:13.119 align:start position:0%
assets icons save there we go and we can
04:15:13.119 --> 04:15:15.349 align:start position:0%
assets icons save there we go and we can
put<04:15:13.279> it<04:15:13.479> like<04:15:13.680> here<04:15:14.439> there<04:15:14.560> is<04:15:14.680> even<04:15:14.880> a<04:15:15.040> shorter
04:15:15.349 --> 04:15:15.359 align:start position:0%
put it like here there is even a shorter
04:15:15.359 --> 04:15:16.630 align:start position:0%
put it like here there is even a shorter
way<04:15:15.479> of<04:15:15.640> doing<04:15:15.920> this<04:15:16.119> we<04:15:16.239> don't<04:15:16.399> have<04:15:16.520> to
04:15:16.630 --> 04:15:16.640 align:start position:0%
way of doing this we don't have to
04:15:16.640 --> 04:15:18.229 align:start position:0%
way of doing this we don't have to
create<04:15:16.840> a<04:15:17.000> template<04:15:17.359> string<04:15:17.840> because<04:15:18.000> we're
04:15:18.229 --> 04:15:18.239 align:start position:0%
create a template string because we're
04:15:18.239 --> 04:15:21.189 align:start position:0%
create a template string because we're
returning<04:15:18.960> one<04:15:19.239> string<04:15:19.640> in<04:15:19.840> any<04:15:20.119> case<04:15:20.680> same<04:15:20.920> to
04:15:21.189 --> 04:15:21.199 align:start position:0%
returning one string in any case same to
04:15:21.199 --> 04:15:24.469 align:start position:0%
returning one string in any case same to
here<04:15:22.080> so<04:15:22.399> we<04:15:22.520> can<04:15:22.680> remove<04:15:23.680> this
04:15:24.469 --> 04:15:24.479 align:start position:0%
here so we can remove this
04:15:24.479 --> 04:15:27.630 align:start position:0%
here so we can remove this
entirely<04:15:25.479> and<04:15:25.720> just<04:15:25.920> say<04:15:26.359> if<04:15:26.680> is<04:15:26.880> saved<04:15:27.479> make
04:15:27.630 --> 04:15:27.640 align:start position:0%
entirely and just say if is saved make
04:15:27.640 --> 04:15:30.469 align:start position:0%
entirely and just say if is saved make
it<04:15:27.920> this<04:15:28.399> else<04:15:28.880> make<04:15:29.040> it<04:15:29.279> this<04:15:30.040> same<04:15:30.239> thing<04:15:30.399> we
04:15:30.469 --> 04:15:30.479 align:start position:0%
it this else make it this same thing we
04:15:30.479 --> 04:15:34.269 align:start position:0%
it this else make it this same thing we
can<04:15:30.640> do<04:15:30.840> here<04:15:31.279> soest<04:15:31.960> check<04:15:32.319> is<04:15:32.560> liked<04:15:33.520> if<04:15:33.680> so
04:15:34.269 --> 04:15:34.279 align:start position:0%
can do here soest check is liked if so
04:15:34.279 --> 04:15:38.870 align:start position:0%
can do here soest check is liked if so
return<04:15:34.640> this<04:15:35.479> else<04:15:36.399> return<04:15:37.439> this<04:15:38.439> and<04:15:38.600> if<04:15:38.720> we
04:15:38.870 --> 04:15:38.880 align:start position:0%
return this else return this and if we
04:15:38.880 --> 04:15:41.510 align:start position:0%
return this else return this and if we
save<04:15:39.119> it<04:15:39.800> it's<04:15:40.040> good<04:15:40.479> right<04:15:40.640> now<04:15:40.880> it's<04:15:41.119> not
04:15:41.510 --> 04:15:41.520 align:start position:0%
save it it's good right now it's not
04:15:41.520 --> 04:15:44.990 align:start position:0%
save it it's good right now it's not
saved<04:15:42.040> nor<04:15:42.319> liked<04:15:42.920> so<04:15:43.119> it<04:15:43.199> should<04:15:43.399> be<04:15:44.000> empty
04:15:44.990 --> 04:15:45.000 align:start position:0%
saved nor liked so it should be empty
04:15:45.000 --> 04:15:49.870 align:start position:0%
saved nor liked so it should be empty
finally<04:15:45.640> if<04:15:45.880> we<04:15:46.279> do<04:15:46.640> this<04:15:47.040> we<04:15:47.159> can<04:15:47.399> handle<04:15:48.479> save
04:15:49.870 --> 04:15:49.880 align:start position:0%
finally if we do this we can handle save
04:15:49.880 --> 04:15:53.189 align:start position:0%
finally if we do this we can handle save
post<04:15:50.880> great<04:15:51.640> so<04:15:51.880> now<04:15:52.119> you<04:15:52.199> can<04:15:52.359> see<04:15:52.640> a<04:15:52.760> lot<04:15:52.960> of
04:15:53.189 --> 04:15:53.199 align:start position:0%
post great so now you can see a lot of
04:15:53.199 --> 04:15:56.269 align:start position:0%
post great so now you can see a lot of
these<04:15:53.479> are<04:15:53.760> used<04:15:54.479> likes<04:15:55.000> is<04:15:55.199> saved<04:15:56.000> but<04:15:56.159> the
04:15:56.269 --> 04:15:56.279 align:start position:0%
these are used likes is saved but the
04:15:56.279 --> 04:15:58.790 align:start position:0%
these are used likes is saved but the
mutations<04:15:56.920> are<04:15:57.119> not<04:15:57.359> used<04:15:58.040> so<04:15:58.479> what's<04:15:58.720> going
04:15:58.790 --> 04:15:58.800 align:start position:0%
mutations are not used so what's going
04:15:58.800 --> 04:16:01.349 align:start position:0%
mutations are not used so what's going
to<04:15:59.040> happen<04:15:59.399> once<04:15:59.600> we<04:15:59.880> actually<04:16:00.399> click<04:16:01.119> this
04:16:01.349 --> 04:16:01.359 align:start position:0%
to happen once we actually click this
04:16:01.359 --> 04:16:04.750 align:start position:0%
to happen once we actually click this
button<04:16:02.359> let's<04:16:02.600> do<04:16:02.800> that<04:16:03.159> next<04:16:04.159> in<04:16:04.319> the<04:16:04.439> handle
04:16:04.750 --> 04:16:04.760 align:start position:0%
button let's do that next in the handle
04:16:04.760 --> 04:16:07.269 align:start position:0%
button let's do that next in the handle
like<04:16:05.000> post<04:16:05.479> we<04:16:05.640> get<04:16:05.840> one<04:16:06.080> parameter<04:16:06.640> of<04:16:06.760> a<04:16:07.040> Type
04:16:07.269 --> 04:16:07.279 align:start position:0%
like post we get one parameter of a Type
04:16:07.279 --> 04:16:10.030 align:start position:0%
like post we get one parameter of a Type
e<04:16:07.720> as<04:16:07.840> an<04:16:08.000> event<04:16:08.840> and<04:16:08.960> for<04:16:09.159> now<04:16:09.359> we<04:16:09.479> can<04:16:09.600> set<04:16:09.840> it
04:16:10.030 --> 04:16:10.040 align:start position:0%
e as an event and for now we can set it
04:16:10.040 --> 04:16:13.189 align:start position:0%
e as an event and for now we can set it
as<04:16:10.560> react.
04:16:13.189 --> 04:16:13.199 align:start position:0%
as react.
04:16:13.199 --> 04:16:15.830 align:start position:0%
as react.
mouseevent<04:16:14.199> we<04:16:14.359> also<04:16:14.600> have<04:16:14.720> to<04:16:14.960> import<04:16:15.359> react
04:16:15.830 --> 04:16:15.840 align:start position:0%
mouseevent we also have to import react
04:16:15.840 --> 04:16:18.990 align:start position:0%
mouseevent we also have to import react
from<04:16:16.080> react<04:16:16.720> so<04:16:16.880> we<04:16:16.960> can<04:16:17.119> do<04:16:17.239> it
04:16:18.990 --> 04:16:19.000 align:start position:0%
from react so we can do it
04:16:19.000 --> 04:16:22.910 align:start position:0%
from react so we can do it
here<04:16:20.000> immediately<04:16:20.600> within<04:16:21.159> we<04:16:21.279> can<04:16:21.399> say<04:16:21.680> e<04:16:22.080> do
04:16:22.910 --> 04:16:22.920 align:start position:0%
here immediately within we can say e do
04:16:22.920 --> 04:16:25.189 align:start position:0%
here immediately within we can say e do
stop<04:16:23.439> propagation<04:16:24.279> so<04:16:24.439> this<04:16:24.560> is<04:16:24.720> not<04:16:24.920> going<04:16:25.040> to
04:16:25.189 --> 04:16:25.199 align:start position:0%
stop propagation so this is not going to
04:16:25.199 --> 04:16:27.149 align:start position:0%
stop propagation so this is not going to
allow<04:16:25.439> us<04:16:25.600> to<04:16:25.760> click<04:16:26.040> any<04:16:26.279> further<04:16:26.800> it's<04:16:27.000> just
04:16:27.149 --> 04:16:27.159 align:start position:0%
allow us to click any further it's just
04:16:27.159 --> 04:16:29.590 align:start position:0%
allow us to click any further it's just
going<04:16:27.319> to<04:16:27.560> click<04:16:28.159> this<04:16:28.760> that's<04:16:28.960> done<04:16:29.279> in<04:16:29.439> case
04:16:29.590 --> 04:16:29.600 align:start position:0%
going to click this that's done in case
04:16:29.600 --> 04:16:31.710 align:start position:0%
going to click this that's done in case
you<04:16:29.760> make<04:16:30.000> this<04:16:30.199> entire<04:16:30.520> container<04:16:31.040> clickable
04:16:31.710 --> 04:16:31.720 align:start position:0%
you make this entire container clickable
04:16:31.720 --> 04:16:33.950 align:start position:0%
you make this entire container clickable
so<04:16:31.880> it<04:16:32.000> points<04:16:32.239> to<04:16:32.359> a<04:16:32.560> post<04:16:33.359> and<04:16:33.520> then<04:16:33.720> if<04:16:33.840> you
04:16:33.950 --> 04:16:33.960 align:start position:0%
so it points to a post and then if you
04:16:33.960 --> 04:16:35.910 align:start position:0%
so it points to a post and then if you
click<04:16:34.159> it<04:16:34.399> here<04:16:34.720> it's<04:16:34.840> only<04:16:35.040> going<04:16:35.199> to<04:16:35.359> like<04:16:35.600> it
04:16:35.910 --> 04:16:35.920 align:start position:0%
click it here it's only going to like it
04:16:35.920 --> 04:16:37.349 align:start position:0%
click it here it's only going to like it
it's<04:16:36.080> not<04:16:36.279> going<04:16:36.399> to<04:16:36.520> do<04:16:36.680> any<04:16:36.880> any<04:16:37.080> other
04:16:37.349 --> 04:16:37.359 align:start position:0%
it's not going to do any any other
04:16:37.359 --> 04:16:39.550 align:start position:0%
it's not going to do any any other
action<04:16:37.960> like<04:16:38.199> go<04:16:38.399> to<04:16:38.560> the<04:16:38.720> Post
04:16:39.550 --> 04:16:39.560 align:start position:0%
action like go to the Post
04:16:39.560 --> 04:16:42.030 align:start position:0%
action like go to the Post
details<04:16:40.560> then<04:16:40.800> we<04:16:40.960> have<04:16:41.080> to<04:16:41.279> update<04:16:41.640> the<04:16:41.800> likes
04:16:42.030 --> 04:16:42.040 align:start position:0%
details then we have to update the likes
04:16:42.040 --> 04:16:45.790 align:start position:0%
details then we have to update the likes
array<04:16:42.600> by<04:16:42.760> saying<04:16:43.199> new<04:16:43.800> likes<04:16:44.439> is<04:16:44.640> equal<04:16:45.000> to<04:16:45.560> an
04:16:45.790 --> 04:16:45.800 align:start position:0%
array by saying new likes is equal to an
04:16:45.800 --> 04:16:48.229 align:start position:0%
array by saying new likes is equal to an
array<04:16:46.319> where<04:16:46.479> we<04:16:46.640> spread<04:16:47.199> all<04:16:47.439> the<04:16:47.600> previous
04:16:48.229 --> 04:16:48.239 align:start position:0%
array where we spread all the previous
04:16:48.239 --> 04:16:52.590 align:start position:0%
array where we spread all the previous
likes<04:16:49.239> and<04:16:49.479> then<04:16:49.920> we<04:16:50.040> need<04:16:50.199> to<04:16:50.399> check<04:16:51.199> if<04:16:52.159> new
04:16:52.590 --> 04:16:52.600 align:start position:0%
likes and then we need to check if new
04:16:52.600 --> 04:16:56.309 align:start position:0%
likes and then we need to check if new
likes<04:16:53.600> that<04:16:54.000> includes<04:16:55.000> the<04:16:55.199> current<04:16:55.600> user<04:16:55.920> ID
04:16:56.309 --> 04:16:56.319 align:start position:0%
likes that includes the current user ID
04:16:56.319 --> 04:16:58.429 align:start position:0%
likes that includes the current user ID
like<04:16:56.920> meaning<04:16:57.319> if<04:16:57.479> they<04:16:57.640> have<04:16:57.800> already<04:16:58.159> liked
04:16:58.429 --> 04:16:58.439 align:start position:0%
like meaning if they have already liked
04:16:58.439 --> 04:17:00.910 align:start position:0%
like meaning if they have already liked
it<04:16:59.159> and<04:16:59.279> to<04:16:59.439> make<04:16:59.600> this<04:16:59.760> code<04:16:59.960> more<04:17:00.159> meaningful
04:17:00.910 --> 04:17:00.920 align:start position:0%
it and to make this code more meaningful
04:17:00.920 --> 04:17:02.870 align:start position:0%
it and to make this code more meaningful
we<04:17:01.000> can<04:17:01.159> even<04:17:01.399> extract<04:17:01.840> this<04:17:02.080> right<04:17:02.239> here<04:17:02.680> and
04:17:02.870 --> 04:17:02.880 align:start position:0%
we can even extract this right here and
04:17:02.880 --> 04:17:07.309 align:start position:0%
we can even extract this right here and
say<04:17:03.279> const<04:17:04.159> has<04:17:04.640> liked<04:17:05.439> is<04:17:05.680> equal<04:17:05.960> to<04:17:06.279> this
04:17:07.309 --> 04:17:07.319 align:start position:0%
say const has liked is equal to this
04:17:07.319 --> 04:17:10.870 align:start position:0%
say const has liked is equal to this
so<04:17:07.720> if<04:17:08.640> has<04:17:08.960> liked<04:17:09.760> see<04:17:10.000> how<04:17:10.159> much<04:17:10.319> more<04:17:10.520> sense
04:17:10.870 --> 04:17:10.880 align:start position:0%
so if has liked see how much more sense
04:17:10.880 --> 04:17:14.510 align:start position:0%
so if has liked see how much more sense
this<04:17:11.040> if<04:17:11.279> now<04:17:11.479> makes<04:17:12.479> so<04:17:12.760> if<04:17:13.119> has<04:17:13.399> liked<04:17:14.319> in
04:17:14.510 --> 04:17:14.520 align:start position:0%
this if now makes so if has liked in
04:17:14.520 --> 04:17:17.070 align:start position:0%
this if now makes so if has liked in
that<04:17:14.720> case<04:17:15.040> we<04:17:15.119> can<04:17:15.359> update<04:17:15.920> the<04:17:16.080> likes<04:17:16.359> array
04:17:17.070 --> 04:17:17.080 align:start position:0%
that case we can update the likes array
04:17:17.080 --> 04:17:20.750 align:start position:0%
that case we can update the likes array
or<04:17:17.319> rather<04:17:17.560> the<04:17:17.760> new<04:17:18.359> likes<04:17:19.319> to<04:17:19.479> be<04:17:19.680> equal<04:17:19.960> to
04:17:20.750 --> 04:17:20.760 align:start position:0%
or rather the new likes to be equal to
04:17:20.760 --> 04:17:23.750 align:start position:0%
or rather the new likes to be equal to
new<04:17:21.319> likes.
04:17:23.750 --> 04:17:23.760 align:start position:0%
new likes.
04:17:23.760 --> 04:17:26.710 align:start position:0%
new likes.
filter<04:17:24.760> where<04:17:24.880> we're<04:17:25.040> going<04:17:25.119> to<04:17:25.279> get<04:17:25.479> the<04:17:25.720> ID
04:17:26.710 --> 04:17:26.720 align:start position:0%
filter where we're going to get the ID
04:17:26.720 --> 04:17:29.429 align:start position:0%
filter where we're going to get the ID
and<04:17:26.920> we<04:17:27.040> want<04:17:27.159> to<04:17:27.800> check<04:17:28.119> if<04:17:28.279> the<04:17:28.439> ID<04:17:29.000> is<04:17:29.199> not
04:17:29.429 --> 04:17:29.439 align:start position:0%
and we want to check if the ID is not
04:17:29.439 --> 04:17:31.229 align:start position:0%
and we want to check if the ID is not
equal<04:17:29.680> to<04:17:29.840> the<04:17:29.960> user<04:17:30.239> ID<04:17:30.640> so<04:17:30.840> we're<04:17:30.960> going<04:17:31.040> to
04:17:31.229 --> 04:17:31.239 align:start position:0%
equal to the user ID so we're going to
04:17:31.239 --> 04:17:34.229 align:start position:0%
equal to the user ID so we're going to
keep<04:17:31.680> all<04:17:31.920> the<04:17:32.119> likes<04:17:32.920> besides<04:17:33.720> the<04:17:33.880> current
04:17:34.229 --> 04:17:34.239 align:start position:0%
keep all the likes besides the current
04:17:34.239 --> 04:17:36.550 align:start position:0%
keep all the likes besides the current
like<04:17:34.479> because<04:17:34.640> we<04:17:34.760> want<04:17:34.840> to<04:17:35.000> remove<04:17:35.359> it<04:17:36.359> and
04:17:36.550 --> 04:17:36.560 align:start position:0%
like because we want to remove it and
04:17:36.560 --> 04:17:39.229 align:start position:0%
like because we want to remove it and
else<04:17:36.800> else<04:17:37.319> if<04:17:37.439> it<04:17:37.640> not<04:17:38.000> has<04:17:38.239> liked<04:17:38.840> we<04:17:38.960> simply
04:17:39.229 --> 04:17:39.239 align:start position:0%
else else if it not has liked we simply
04:17:39.239 --> 04:17:41.910 align:start position:0%
else else if it not has liked we simply
want<04:17:39.319> to<04:17:39.479> call<04:17:39.880> new<04:17:40.199> likes.<04:17:41.159> push<04:17:41.640> and<04:17:41.720> we<04:17:41.840> want
04:17:41.910 --> 04:17:41.920 align:start position:0%
want to call new likes. push and we want
04:17:41.920 --> 04:17:44.910 align:start position:0%
want to call new likes. push and we want
to<04:17:42.119> append<04:17:42.800> the<04:17:42.960> new<04:17:43.279> user<04:17:43.600> ID<04:17:44.119> because<04:17:44.760> that
04:17:44.910 --> 04:17:44.920 align:start position:0%
to append the new user ID because that
04:17:44.920 --> 04:17:48.349 align:start position:0%
to append the new user ID because that
user<04:17:45.439> liked<04:17:45.800> it<04:17:46.239> too<04:17:47.239> finally<04:17:47.800> once<04:17:48.000> we<04:17:48.119> do
04:17:48.349 --> 04:17:48.359 align:start position:0%
user liked it too finally once we do
04:17:48.359 --> 04:17:51.790 align:start position:0%
user liked it too finally once we do
that<04:17:48.680> we<04:17:48.800> want<04:17:48.920> to<04:17:49.319> set<04:17:50.119> likes<04:17:50.760> to<04:17:50.920> be<04:17:51.119> equal<04:17:51.399> to
04:17:51.790 --> 04:17:51.800 align:start position:0%
that we want to set likes to be equal to
04:17:51.800 --> 04:17:54.990 align:start position:0%
that we want to set likes to be equal to
new<04:17:52.399> likes<04:17:53.399> and<04:17:53.640> we<04:17:53.760> want<04:17:53.880> to<04:17:54.040> call<04:17:54.520> the<04:17:54.680> like
04:17:54.990 --> 04:17:55.000 align:start position:0%
new likes and we want to call the like
04:17:55.000 --> 04:17:58.229 align:start position:0%
new likes and we want to call the like
post<04:17:55.319> mutation<04:17:56.319> so<04:17:56.479> we<04:17:56.560> can<04:17:56.720> say<04:17:56.920> like<04:17:57.279> post<04:17:57.920> to
04:17:58.229 --> 04:17:58.239 align:start position:0%
post mutation so we can say like post to
04:17:58.239 --> 04:18:00.750 align:start position:0%
post mutation so we can say like post to
which<04:17:58.479> we<04:17:58.600> need<04:17:58.720> to<04:17:58.920> pass<04:17:59.159> the<04:17:59.319> post<04:17:59.640> ID<04:18:00.600> which
04:18:00.750 --> 04:18:00.760 align:start position:0%
which we need to pass the post ID which
04:18:00.760 --> 04:18:04.710 align:start position:0%
which we need to pass the post ID which
is<04:18:00.920> of<04:18:01.119> a<04:18:01.840> post.<04:18:02.840> dollar<04:18:03.119> sign<04:18:03.359> ID<04:18:04.239> and<04:18:04.560> the
04:18:04.710 --> 04:18:04.720 align:start position:0%
is of a post. dollar sign ID and the
04:18:04.720 --> 04:18:06.830 align:start position:0%
is of a post. dollar sign ID and the
likes<04:18:05.000> array<04:18:05.479> you<04:18:05.600> can<04:18:05.720> see<04:18:06.040> typescript<04:18:06.520> even
04:18:06.830 --> 04:18:06.840 align:start position:0%
likes array you can see typescript even
04:18:06.840 --> 04:18:08.630 align:start position:0%
likes array you can see typescript even
lets<04:18:07.000> us<04:18:07.159> know<04:18:07.399> what<04:18:07.560> we<04:18:07.680> have<04:18:07.800> to<04:18:08.040> pass<04:18:08.439> right
04:18:08.630 --> 04:18:08.640 align:start position:0%
lets us know what we have to pass right
04:18:08.640 --> 04:18:12.590 align:start position:0%
lets us know what we have to pass right
here<04:18:09.199> it's<04:18:09.399> going<04:18:09.560> to<04:18:09.720> be<04:18:10.279> the<04:18:10.479> new
04:18:12.590 --> 04:18:12.600 align:start position:0%
here it's going to be the new
04:18:12.600 --> 04:18:16.269 align:start position:0%
here it's going to be the new
likes<04:18:13.600> there<04:18:13.800> we<04:18:14.199> go<04:18:15.199> but<04:18:15.439> if<04:18:15.560> we<04:18:15.680> do<04:18:15.840> it<04:18:16.080> it's
04:18:16.269 --> 04:18:16.279 align:start position:0%
likes there we go but if we do it it's
04:18:16.279 --> 04:18:18.550 align:start position:0%
likes there we go but if we do it it's
complaining<04:18:16.960> that<04:18:17.119> the<04:18:17.279> argument<04:18:17.840> type<04:18:18.239> new
04:18:18.550 --> 04:18:18.560 align:start position:0%
complaining that the argument type new
04:18:18.560 --> 04:18:20.750 align:start position:0%
complaining that the argument type new
likes<04:18:18.960> is<04:18:19.119> not<04:18:19.359> assignable<04:18:19.880> to<04:18:20.119> parameter<04:18:20.560> of
04:18:20.750 --> 04:18:20.760 align:start position:0%
likes is not assignable to parameter of
04:18:20.760 --> 04:18:23.670 align:start position:0%
likes is not assignable to parameter of
type<04:18:21.040> likes<04:18:21.399> array<04:18:22.319> so<04:18:22.760> this<04:18:22.880> is<04:18:23.040> really<04:18:23.279> good
04:18:23.670 --> 04:18:23.680 align:start position:0%
type likes array so this is really good
04:18:23.680 --> 04:18:25.309 align:start position:0%
type likes array so this is really good
again<04:18:23.960> thank<04:18:24.119> you<04:18:24.279> typescript<04:18:24.920> we<04:18:25.040> have<04:18:25.159> to
04:18:25.309 --> 04:18:25.319 align:start position:0%
again thank you typescript we have to
04:18:25.319 --> 04:18:27.510 align:start position:0%
again thank you typescript we have to
Define<04:18:25.680> likes<04:18:26.000> array<04:18:26.560> and<04:18:26.720> then<04:18:27.000> pass<04:18:27.279> new
04:18:27.510 --> 04:18:27.520 align:start position:0%
Define likes array and then pass new
04:18:27.520 --> 04:18:30.349 align:start position:0%
Define likes array and then pass new
likes<04:18:28.239> right<04:18:28.520> here<04:18:29.520> and<04:18:29.680> now<04:18:29.960> this<04:18:30.080> is<04:18:30.199> the
04:18:30.349 --> 04:18:30.359 align:start position:0%
likes right here and now this is the
04:18:30.359 --> 04:18:31.990 align:start position:0%
likes right here and now this is the
function<04:18:30.760> that's<04:18:30.920> going<04:18:31.040> to<04:18:31.239> handle<04:18:31.520> the<04:18:31.680> like
04:18:31.990 --> 04:18:32.000 align:start position:0%
function that's going to handle the like
04:18:32.000 --> 04:18:34.870 align:start position:0%
function that's going to handle the like
post<04:18:32.760> and<04:18:32.880> as<04:18:33.000> you<04:18:33.080> can<04:18:33.319> see<04:18:34.319> this<04:18:34.439> is<04:18:34.600> being
04:18:34.870 --> 04:18:34.880 align:start position:0%
post and as you can see this is being
04:18:34.880 --> 04:18:37.189 align:start position:0%
post and as you can see this is being
used<04:18:35.800> and<04:18:35.920> then<04:18:36.080> also<04:18:36.359> this<04:18:36.720> mutation<04:18:37.080> is
04:18:37.189 --> 04:18:37.199 align:start position:0%
used and then also this mutation is
04:18:37.199 --> 04:18:39.630 align:start position:0%
used and then also this mutation is
being<04:18:37.439> used<04:18:37.760> as<04:18:37.920> well<04:18:38.800> now<04:18:39.080> let's<04:18:39.279> do<04:18:39.479> a
04:18:39.630 --> 04:18:39.640 align:start position:0%
being used as well now let's do a
04:18:39.640 --> 04:18:42.550 align:start position:0%
being used as well now let's do a
similar<04:18:40.080> thing<04:18:40.319> for<04:18:40.600> the<04:18:40.760> save<04:18:41.760> as<04:18:41.960> before<04:18:42.439> we
04:18:42.550 --> 04:18:42.560 align:start position:0%
similar thing for the save as before we
04:18:42.560 --> 04:18:44.990 align:start position:0%
similar thing for the save as before we
can<04:18:42.760> duplicate<04:18:43.479> all<04:18:43.760> the<04:18:43.960> logic<04:18:44.560> within<04:18:44.880> our
04:18:44.990 --> 04:18:45.000 align:start position:0%
can duplicate all the logic within our
04:18:45.000 --> 04:18:49.229 align:start position:0%
can duplicate all the logic within our
handle<04:18:45.399> like<04:18:46.080> post<04:18:47.080> collapse<04:18:47.560> it<04:18:48.439> and<04:18:48.800> put<04:18:48.960> it
04:18:49.229 --> 04:18:49.239 align:start position:0%
handle like post collapse it and put it
04:18:49.239 --> 04:18:53.189 align:start position:0%
handle like post collapse it and put it
right<04:18:49.479> here<04:18:49.920> within<04:18:50.279> our<04:18:50.520> handle<04:18:51.119> save<04:18:52.199> post
04:18:53.189 --> 04:18:53.199 align:start position:0%
right here within our handle save post
04:18:53.199 --> 04:18:55.510 align:start position:0%
right here within our handle save post
we<04:18:53.319> also<04:18:53.520> need<04:18:53.680> to<04:18:53.880> get<04:18:54.199> the<04:18:54.439> react<04:18:55.040> mouse
04:18:55.510 --> 04:18:55.520 align:start position:0%
we also need to get the react mouse
04:18:55.520 --> 04:18:58.269 align:start position:0%
we also need to get the react mouse
event<04:18:56.159> right<04:18:56.359> here<04:18:57.319> and<04:18:57.439> then<04:18:57.600> the<04:18:57.760> logic<04:18:58.119> is
04:18:58.269 --> 04:18:58.279 align:start position:0%
event right here and then the logic is
04:18:58.279 --> 04:19:01.670 align:start position:0%
event right here and then the logic is
going<04:18:58.439> to<04:18:58.600> be<04:18:58.960> even<04:18:59.720> simpler<04:19:00.720> we<04:19:00.840> can<04:19:01.000> delete
04:19:01.670 --> 04:19:01.680 align:start position:0%
going to be even simpler we can delete
04:19:01.680 --> 04:19:06.109 align:start position:0%
going to be even simpler we can delete
everything<04:19:02.159> right<04:19:02.399> here<04:19:03.359> and<04:19:03.560> we<04:19:03.680> can<04:19:03.880> say<04:19:05.119> if
04:19:06.109 --> 04:19:06.119 align:start position:0%
everything right here and we can say if
04:19:06.119 --> 04:19:09.950 align:start position:0%
everything right here and we can say if
saved<04:19:07.040> post<04:19:07.600> record<04:19:08.600> so<04:19:09.159> have<04:19:09.359> we<04:19:09.560> already
04:19:09.950 --> 04:19:09.960 align:start position:0%
saved post record so have we already
04:19:09.960 --> 04:19:11.550 align:start position:0%
saved post record so have we already
saved<04:19:10.319> it<04:19:10.840> and<04:19:10.960> how<04:19:11.080> are<04:19:11.159> we're<04:19:11.279> going<04:19:11.439> to
04:19:11.550 --> 04:19:11.560 align:start position:0%
saved it and how are we're going to
04:19:11.560 --> 04:19:13.670 align:start position:0%
saved it and how are we're going to
figure<04:19:11.880> that<04:19:12.040> out<04:19:12.760> well<04:19:12.920> let's<04:19:13.159> define<04:19:13.439> it
04:19:13.670 --> 04:19:13.680 align:start position:0%
figure that out well let's define it
04:19:13.680 --> 04:19:18.030 align:start position:0%
figure that out well let's define it
right<04:19:13.920> here<04:19:14.680> const<04:19:15.359> saved<04:19:16.119> post<04:19:16.840> record<04:19:17.840> it's
04:19:18.030 --> 04:19:18.040 align:start position:0%
right here const saved post record it's
04:19:18.040 --> 04:19:21.229 align:start position:0%
right here const saved post record it's
going<04:19:18.159> to<04:19:18.319> be<04:19:18.479> equal<04:19:18.760> to<04:19:19.239> to<04:19:19.439> the<04:19:19.640> current<04:19:20.239> user
04:19:21.229 --> 04:19:21.239 align:start position:0%
going to be equal to to the current user
04:19:21.239 --> 04:19:24.790 align:start position:0%
going to be equal to to the current user
question<04:19:21.640> mark.<04:19:22.279> saave<04:19:23.040> doind<04:19:24.040> so<04:19:24.159> we<04:19:24.279> want<04:19:24.399> to
04:19:24.790 --> 04:19:24.800 align:start position:0%
question mark. saave doind so we want to
04:19:24.800 --> 04:19:29.429 align:start position:0%
question mark. saave doind so we want to
find<04:19:25.800> if<04:19:26.239> the<04:19:26.439> record<04:19:27.239> exists<04:19:28.239> of<04:19:28.399> a<04:19:28.600> type
04:19:29.429 --> 04:19:29.439 align:start position:0%
find if the record exists of a type
04:19:29.439 --> 04:19:33.070 align:start position:0%
find if the record exists of a type
models.<04:19:30.760> document<04:19:31.760> meaning<04:19:32.239> is<04:19:32.520> that<04:19:32.720> user
04:19:33.070 --> 04:19:33.080 align:start position:0%
models. document meaning is that user
04:19:33.080 --> 04:19:35.269 align:start position:0%
models. document meaning is that user
added<04:19:33.359> to<04:19:33.560> the<04:19:34.399> array<04:19:34.680> of<04:19:34.800> the<04:19:34.880> user<04:19:35.119> that
04:19:35.269 --> 04:19:35.279 align:start position:0%
added to the array of the user that
04:19:35.279 --> 04:19:37.790 align:start position:0%
added to the array of the user that
saved<04:19:35.520> the<04:19:35.680> post<04:19:36.359> and<04:19:36.640> we<04:19:36.720> can<04:19:36.840> check<04:19:37.159> that<04:19:37.560> by
04:19:37.790 --> 04:19:37.800 align:start position:0%
saved the post and we can check that by
04:19:37.800 --> 04:19:43.229 align:start position:0%
saved the post and we can check that by
saying<04:19:38.760> find<04:19:39.680> where<04:19:39.920> the<04:19:40.119> record<04:19:40.640> doore<04:19:41.960> ID<04:19:42.960> is
04:19:43.229 --> 04:19:43.239 align:start position:0%
saying find where the record doore ID is
04:19:43.239 --> 04:19:46.910 align:start position:0%
saying find where the record doore ID is
triple<04:19:43.680> equal<04:19:44.000> to<04:19:44.680> to<04:19:45.000> the<04:19:45.399> post.<04:19:46.359> dollar<04:19:46.680> sign
04:19:46.910 --> 04:19:46.920 align:start position:0%
triple equal to to the post. dollar sign
04:19:46.920 --> 04:19:50.109 align:start position:0%
triple equal to to the post. dollar sign
ID<04:19:47.920> there<04:19:48.080> we<04:19:48.239> go<04:19:49.119> so<04:19:49.359> now<04:19:49.560> we're<04:19:49.720> trying<04:19:49.960> to
04:19:50.109 --> 04:19:50.119 align:start position:0%
ID there we go so now we're trying to
04:19:50.119 --> 04:19:53.830 align:start position:0%
ID there we go so now we're trying to
figure<04:19:50.359> it<04:19:50.520> out<04:19:51.319> if<04:19:51.680> there<04:19:51.920> is<04:19:52.319> such<04:19:52.520> a<04:19:52.840> thing
04:19:53.830 --> 04:19:53.840 align:start position:0%
figure it out if there is such a thing
04:19:53.840 --> 04:19:57.510 align:start position:0%
figure it out if there is such a thing
in<04:19:54.080> that<04:19:54.319> case<04:19:54.840> we<04:19:54.960> want<04:19:55.119> to<04:19:55.359> set<04:19:55.800> is<04:19:56.159> saved<04:19:56.720> to
04:19:57.510 --> 04:19:57.520 align:start position:0%
in that case we want to set is saved to
04:19:57.520 --> 04:20:00.590 align:start position:0%
in that case we want to set is saved to
false<04:19:58.520> and<04:19:58.720> we<04:19:58.840> want<04:19:58.960> to<04:19:59.159> call<04:19:59.800> the<04:20:00.000> delete
04:20:00.590 --> 04:20:00.600 align:start position:0%
false and we want to call the delete
04:20:00.600 --> 04:20:04.469 align:start position:0%
false and we want to call the delete
saved<04:20:01.000> post<04:20:01.760> to<04:20:02.119> which<04:20:02.560> we<04:20:02.680> want<04:20:02.840> to<04:20:03.159> pass<04:20:04.080> the
04:20:04.469 --> 04:20:04.479 align:start position:0%
saved post to which we want to pass the
04:20:04.479 --> 04:20:07.750 align:start position:0%
saved post to which we want to pass the
saved<04:20:05.479> post<04:20:06.119> record
04:20:07.750 --> 04:20:07.760 align:start position:0%
saved post record
04:20:07.760 --> 04:20:11.189 align:start position:0%
saved post record
do<04:20:08.319> dollar<04:20:08.720> sign<04:20:09.199> ID<04:20:10.040> so<04:20:10.319> if<04:20:10.520> we<04:20:10.680> already<04:20:11.000> have
04:20:11.189 --> 04:20:11.199 align:start position:0%
do dollar sign ID so if we already have
04:20:11.199 --> 04:20:13.229 align:start position:0%
do dollar sign ID so if we already have
saved<04:20:11.520> it<04:20:11.840> and<04:20:11.960> if<04:20:12.040> we<04:20:12.239> click<04:20:12.479> it<04:20:12.680> again<04:20:13.119> we
04:20:13.229 --> 04:20:13.239 align:start position:0%
saved it and if we click it again we
04:20:13.239 --> 04:20:15.710 align:start position:0%
saved it and if we click it again we
want<04:20:13.359> to<04:20:13.560> remove<04:20:13.840> it<04:20:13.960> from<04:20:14.159> Saved<04:20:15.159> and<04:20:15.359> then<04:20:15.600> we
04:20:15.710 --> 04:20:15.720 align:start position:0%
want to remove it from Saved and then we
04:20:15.720 --> 04:20:19.309 align:start position:0%
want to remove it from Saved and then we
want<04:20:15.840> to<04:20:16.040> call<04:20:16.600> the<04:20:16.800> save<04:20:17.600> post<04:20:18.600> to<04:20:18.840> it<04:20:19.080> we<04:20:19.199> need
04:20:19.309 --> 04:20:19.319 align:start position:0%
want to call the save post to it we need
04:20:19.319 --> 04:20:23.229 align:start position:0%
want to call the save post to it we need
to<04:20:19.560> pass<04:20:19.800> the<04:20:20.000> post<04:20:20.399> ID<04:20:21.199> of<04:20:21.359> a<04:20:21.600> type<04:20:22.239> post.
04:20:23.229 --> 04:20:23.239 align:start position:0%
to pass the post ID of a type post.
04:20:23.239 --> 04:20:27.109 align:start position:0%
to pass the post ID of a type post.
dollar<04:20:23.560> sign<04:20:23.800> ID<04:20:24.640> and<04:20:24.800> also<04:20:25.119> the<04:20:25.279> user
04:20:27.109 --> 04:20:27.119 align:start position:0%
dollar sign ID and also the user
04:20:27.119 --> 04:20:32.550 align:start position:0%
dollar sign ID and also the user
ID<04:20:28.119> and<04:20:28.319> we<04:20:28.439> can<04:20:28.640> finally<04:20:29.239> set<04:20:30.239> is<04:20:30.960> saved<04:20:31.960> to
04:20:32.550 --> 04:20:32.560 align:start position:0%
ID and we can finally set is saved to
04:20:32.560 --> 04:20:34.990 align:start position:0%
ID and we can finally set is saved to
true<04:20:33.399> in<04:20:33.600> this<04:20:33.760> case<04:20:34.000> of<04:20:34.159> course<04:20:34.680> it's<04:20:34.840> going
04:20:34.990 --> 04:20:35.000 align:start position:0%
true in this case of course it's going
04:20:35.000 --> 04:20:37.070 align:start position:0%
true in this case of course it's going
to<04:20:35.199> handle<04:20:35.560> both<04:20:35.880> action
04:20:37.070 --> 04:20:37.080 align:start position:0%
to handle both action
04:20:37.080 --> 04:20:39.109 align:start position:0%
to handle both action
and<04:20:37.319> please<04:20:37.640> take<04:20:37.760> a<04:20:37.960> second<04:20:38.439> and<04:20:38.600> notice<04:20:39.000> if
04:20:39.109 --> 04:20:39.119 align:start position:0%
and please take a second and notice if
04:20:39.119 --> 04:20:41.030 align:start position:0%
and please take a second and notice if
I've<04:20:39.279> made<04:20:39.439> a<04:20:39.600> mistake<04:20:40.199> here<04:20:40.399> we<04:20:40.520> have<04:20:40.640> an<04:20:40.800> if
04:20:41.030 --> 04:20:41.040 align:start position:0%
I've made a mistake here we have an if
04:20:41.040 --> 04:20:43.870 align:start position:0%
I've made a mistake here we have an if
statement<04:20:41.840> that<04:20:42.000> delete<04:20:42.439> the<04:20:42.600> save<04:20:43.399> but<04:20:43.560> then
04:20:43.870 --> 04:20:43.880 align:start position:0%
statement that delete the save but then
04:20:43.880 --> 04:20:47.070 align:start position:0%
statement that delete the save but then
every<04:20:44.239> time<04:20:44.720> as<04:20:44.880> well<04:20:45.359> we<04:20:45.520> also<04:20:45.760> called<04:20:46.199> this
04:20:47.070 --> 04:20:47.080 align:start position:0%
every time as well we also called this
04:20:47.080 --> 04:20:48.830 align:start position:0%
every time as well we also called this
that's<04:20:47.279> because<04:20:47.479> we<04:20:47.600> didn't<04:20:48.040> return<04:20:48.600> right
04:20:48.830 --> 04:20:48.840 align:start position:0%
that's because we didn't return right
04:20:48.840 --> 04:20:51.830 align:start position:0%
that's because we didn't return right
here<04:20:49.640> if<04:20:49.720> you<04:20:49.960> add<04:20:50.199> a<04:20:50.560> return<04:20:50.920> statement<04:20:51.640> like
04:20:51.830 --> 04:20:51.840 align:start position:0%
here if you add a return statement like
04:20:51.840 --> 04:20:54.550 align:start position:0%
here if you add a return statement like
so<04:20:52.560> it's<04:20:52.680> going<04:20:52.840> to<04:20:53.080> stop<04:20:53.439> the<04:20:53.600> execution<04:20:54.399> of
04:20:54.550 --> 04:20:54.560 align:start position:0%
so it's going to stop the execution of
04:20:54.560 --> 04:20:57.349 align:start position:0%
so it's going to stop the execution of
all<04:20:54.720> the<04:20:54.840> other<04:20:55.119> blocks<04:20:56.119> or<04:20:56.560> an<04:20:56.760> alternative
04:20:57.349 --> 04:20:57.359 align:start position:0%
all the other blocks or an alternative
04:20:57.359 --> 04:21:00.309 align:start position:0%
all the other blocks or an alternative
is<04:20:57.720> to<04:20:58.000> also<04:20:58.399> add<04:20:58.680> an<04:20:58.840> else<04:20:59.239> here<04:20:59.880> so<04:21:00.080> we<04:21:00.159> can
04:21:00.309 --> 04:21:00.319 align:start position:0%
is to also add an else here so we can
04:21:00.319 --> 04:21:04.870 align:start position:0%
is to also add an else here so we can
say<04:21:01.040> if<04:21:01.279> it<04:21:01.399> is<04:21:01.880> not<04:21:02.439> saved<04:21:03.439> then<04:21:03.760> save<04:21:04.040> it<04:21:04.760> if
04:21:04.870 --> 04:21:04.880 align:start position:0%
say if it is not saved then save it if
04:21:04.880 --> 04:21:09.030 align:start position:0%
say if it is not saved then save it if
it<04:21:05.000> is<04:21:05.199> saved<04:21:05.800> then<04:21:06.000> remove<04:21:06.920> saved<04:21:07.920> here<04:21:08.080> we<04:21:08.279> go
04:21:09.030 --> 04:21:09.040 align:start position:0%
it is saved then remove saved here we go
04:21:09.040 --> 04:21:12.469 align:start position:0%
it is saved then remove saved here we go
and<04:21:09.239> now<04:21:09.640> we<04:21:09.760> can<04:21:10.000> save<04:21:10.560> this<04:21:11.560> this<04:21:11.840> gives<04:21:12.040> us<04:21:12.319> a
04:21:12.469 --> 04:21:12.479 align:start position:0%
and now we can save this this gives us a
04:21:12.479 --> 04:21:14.910 align:start position:0%
and now we can save this this gives us a
lot<04:21:12.640> of<04:21:12.840> data<04:21:13.119> to<04:21:13.319> work<04:21:13.600> with<04:21:14.239> but<04:21:14.600> before<04:21:14.800> we
04:21:14.910 --> 04:21:14.920 align:start position:0%
lot of data to work with but before we
04:21:14.920 --> 04:21:16.950 align:start position:0%
lot of data to work with but before we
go<04:21:15.040> ahead<04:21:15.239> and<04:21:15.359> test<04:21:15.560> it<04:21:15.680> out<04:21:16.159> typescript<04:21:16.800> is
04:21:16.950 --> 04:21:16.960 align:start position:0%
go ahead and test it out typescript is
04:21:16.960 --> 04:21:19.830 align:start position:0%
go ahead and test it out typescript is
trying<04:21:17.239> to<04:21:17.479> save<04:21:17.800> us<04:21:18.239> one<04:21:18.439> more<04:21:18.760> time<04:21:19.720> it's
04:21:19.830 --> 04:21:19.840 align:start position:0%
trying to save us one more time it's
04:21:19.840 --> 04:21:22.710 align:start position:0%
trying to save us one more time it's
saying<04:21:20.199> property<04:21:20.680> data<04:21:21.040> does<04:21:21.279> not<04:21:21.560> exist<04:21:21.960> on<04:21:22.239> I
04:21:22.710 --> 04:21:22.720 align:start position:0%
saying property data does not exist on I
04:21:22.720 --> 04:21:25.070 align:start position:0%
saying property data does not exist on I
context<04:21:23.239> type<04:21:24.239> and<04:21:24.399> that's<04:21:24.600> because<04:21:24.880> I've
04:21:25.070 --> 04:21:25.080 align:start position:0%
context type and that's because I've
04:21:25.080 --> 04:21:27.510 align:start position:0%
context type and that's because I've
made<04:21:25.239> a<04:21:25.439> mistake<04:21:26.439> this<04:21:26.640> should<04:21:26.840> not<04:21:27.040> be<04:21:27.199> coming
04:21:27.510 --> 04:21:27.520 align:start position:0%
made a mistake this should not be coming
04:21:27.520 --> 04:21:30.070 align:start position:0%
made a mistake this should not be coming
from<04:21:27.680> the<04:21:27.840> get<04:21:28.119> user<04:21:28.560> context<04:21:29.560> it<04:21:29.720> should<04:21:29.920> be
04:21:30.070 --> 04:21:30.080 align:start position:0%
from the get user context it should be
04:21:30.080 --> 04:21:34.469 align:start position:0%
from the get user context it should be
coming<04:21:30.359> from<04:21:30.800> use<04:21:31.720> get<04:21:32.560> current<04:21:33.439> user<04:21:34.319> which
04:21:34.469 --> 04:21:34.479 align:start position:0%
coming from use get current user which
04:21:34.479 --> 04:21:36.750 align:start position:0%
coming from use get current user which
is<04:21:34.600> a<04:21:34.840> new<04:21:35.239> function<04:21:35.600> or<04:21:35.720> a<04:21:35.880> new<04:21:36.119> query<04:21:36.399> quy
04:21:36.750 --> 04:21:36.760 align:start position:0%
is a new function or a new query quy
04:21:36.760 --> 04:21:39.910 align:start position:0%
is a new function or a new query quy
that<04:21:36.880> we<04:21:37.000> have<04:21:37.119> to<04:21:37.800> create<04:21:38.800> this<04:21:39.000> query<04:21:39.520> is<04:21:39.720> not
04:21:39.910 --> 04:21:39.920 align:start position:0%
that we have to create this query is not
04:21:39.920 --> 04:21:42.429 align:start position:0%
that we have to create this query is not
only<04:21:40.239> going<04:21:40.399> to<04:21:40.600> give<04:21:40.720> us<04:21:40.920> the<04:21:41.040> user's<04:21:41.479> ID<04:21:42.239> and
04:21:42.429 --> 04:21:42.439 align:start position:0%
only going to give us the user's ID and
04:21:42.439 --> 04:21:45.349 align:start position:0%
only going to give us the user's ID and
the<04:21:42.600> name<04:21:43.159> as<04:21:43.279> we<04:21:43.439> get<04:21:43.640> from<04:21:43.840> the<04:21:44.000> odd<04:21:44.479> context
04:21:45.349 --> 04:21:45.359 align:start position:0%
the name as we get from the odd context
04:21:45.359 --> 04:21:46.870 align:start position:0%
the name as we get from the odd context
it's<04:21:45.560> also<04:21:45.800> going<04:21:46.000> to<04:21:46.199> give<04:21:46.359> us<04:21:46.600> more
04:21:46.870 --> 04:21:46.880 align:start position:0%
it's also going to give us more
04:21:46.880 --> 04:21:49.510 align:start position:0%
it's also going to give us more
information<04:21:47.760> such<04:21:47.960> as<04:21:48.279> which<04:21:48.560> posts<04:21:49.199> does<04:21:49.399> the
04:21:49.510 --> 04:21:49.520 align:start position:0%
information such as which posts does the
04:21:49.520 --> 04:21:51.990 align:start position:0%
information such as which posts does the
user<04:21:49.840> have<04:21:50.040> saved<04:21:50.840> and<04:21:51.040> based<04:21:51.359> off<04:21:51.560> of<04:21:51.760> that
04:21:51.990 --> 04:21:52.000 align:start position:0%
user have saved and based off of that
04:21:52.000 --> 04:21:53.590 align:start position:0%
user have saved and based off of that
we'll<04:21:52.159> be<04:21:52.279> able<04:21:52.520> to<04:21:52.640> figure<04:21:52.920> out<04:21:53.279> whether<04:21:53.479> we
04:21:53.590 --> 04:21:53.600 align:start position:0%
we'll be able to figure out whether we
04:21:53.600 --> 04:21:57.309 align:start position:0%
we'll be able to figure out whether we
need<04:21:53.760> to<04:21:54.000> save<04:21:54.520> or<04:21:55.040> unsave<04:21:56.040> so<04:21:56.640> let's<04:21:56.920> go<04:21:57.080> to
04:21:57.309 --> 04:21:57.319 align:start position:0%
need to save or unsave so let's go to
04:21:57.319 --> 04:22:00.349 align:start position:0%
need to save or unsave so let's go to
our<04:21:57.560> queries<04:21:58.119> and
04:22:00.349 --> 04:22:00.359 align:start position:0%
our queries and
04:22:00.359 --> 04:22:05.309 align:start position:0%
our queries and
mutations<04:22:01.359> we<04:22:01.479> can<04:22:01.920> export<04:22:02.920> const<04:22:03.880> use<04:22:04.680> get
04:22:05.309 --> 04:22:05.319 align:start position:0%
mutations we can export const use get
04:22:05.319 --> 04:22:07.510 align:start position:0%
mutations we can export const use get
current<04:22:05.960> user
04:22:07.510 --> 04:22:07.520 align:start position:0%
current user
04:22:07.520 --> 04:22:09.510 align:start position:0%
current user
which<04:22:07.640> is<04:22:07.800> going<04:22:07.960> to<04:22:08.080> be<04:22:08.199> an<04:22:08.319> arrow<04:22:08.680> function
04:22:09.510 --> 04:22:09.520 align:start position:0%
which is going to be an arrow function
04:22:09.520 --> 04:22:12.910 align:start position:0%
which is going to be an arrow function
and<04:22:09.640> we<04:22:09.760> can<04:22:10.080> return<04:22:10.399> a<04:22:10.640> simple<04:22:11.279> use<04:22:11.920> Query
04:22:12.910 --> 04:22:12.920 align:start position:0%
and we can return a simple use Query
04:22:12.920 --> 04:22:18.269 align:start position:0%
and we can return a simple use Query
where<04:22:13.319> we<04:22:13.560> pass<04:22:13.760> the<04:22:13.920> query<04:22:14.399> key<04:22:15.159> of<04:22:16.359> query
04:22:18.269 --> 04:22:18.279 align:start position:0%
where we pass the query key of query
04:22:18.279 --> 04:22:23.149 align:start position:0%
where we pass the query key of query
keys.<04:22:19.279> get<04:22:20.040> current<04:22:21.199> user<04:22:22.199> and<04:22:22.600> a<04:22:22.760> query
04:22:23.149 --> 04:22:23.159 align:start position:0%
keys. get current user and a query
04:22:23.159 --> 04:22:25.590 align:start position:0%
keys. get current user and a query
function<04:22:23.760> which<04:22:23.880> we're<04:22:24.000> going<04:22:24.080> to<04:22:24.399> call<04:22:25.399> is
04:22:25.590 --> 04:22:25.600 align:start position:0%
function which we're going to call is
04:22:25.600 --> 04:22:30.750 align:start position:0%
function which we're going to call is
going<04:22:25.760> to<04:22:26.319> be<04:22:27.319> get<04:22:28.399> current<04:22:29.399> user<04:22:30.279> and<04:22:30.520> this<04:22:30.600> is
04:22:30.750 --> 04:22:30.760 align:start position:0%
going to be get current user and this is
04:22:30.760 --> 04:22:34.030 align:start position:0%
going to be get current user and this is
coming<04:22:31.040> from<04:22:31.359> aight<04:22:32.399> API<04:22:33.399> we<04:22:33.560> have<04:22:33.720> already
04:22:34.030 --> 04:22:34.040 align:start position:0%
coming from aight API we have already
04:22:34.040 --> 04:22:36.189 align:start position:0%
coming from aight API we have already
created<04:22:34.439> this<04:22:34.600> API<04:22:35.040> function<04:22:35.439> before<04:22:35.960> because
04:22:36.189 --> 04:22:36.199 align:start position:0%
created this API function before because
04:22:36.199 --> 04:22:38.229 align:start position:0%
created this API function before because
we<04:22:36.359> we<04:22:36.439> needed<04:22:36.640> it<04:22:36.800> for<04:22:37.000> the<04:22:37.199> context<04:22:37.960> we<04:22:38.080> can
04:22:38.229 --> 04:22:38.239 align:start position:0%
we we needed it for the context we can
04:22:38.239 --> 04:22:41.910 align:start position:0%
we we needed it for the context we can
get<04:22:38.359> it<04:22:38.560> here<04:22:38.760> as<04:22:38.960> well<04:22:39.960> and<04:22:40.199> now<04:22:40.800> if<04:22:40.920> we<04:22:41.119> go
04:22:41.910 --> 04:22:41.920 align:start position:0%
get it here as well and now if we go
04:22:41.920 --> 04:22:44.750 align:start position:0%
get it here as well and now if we go
back<04:22:42.920> we<04:22:43.040> can<04:22:43.239> import<04:22:43.640> the<04:22:43.800> used<04:22:44.199> get<04:22:44.439> current
04:22:44.750 --> 04:22:44.760 align:start position:0%
back we can import the used get current
04:22:44.760 --> 04:22:46.710 align:start position:0%
back we can import the used get current
user<04:22:45.359> and<04:22:45.479> we<04:22:45.600> can<04:22:45.760> remove<04:22:46.040> the<04:22:46.159> import<04:22:46.560> from
04:22:46.710 --> 04:22:46.720 align:start position:0%
user and we can remove the import from
04:22:46.720 --> 04:22:47.389 align:start position:0%
user and we can remove the import from
the
04:22:47.389 --> 04:22:47.399 align:start position:0%
the
04:22:47.399 --> 04:22:50.389 align:start position:0%
the
context<04:22:48.399> there<04:22:48.560> we<04:22:48.760> go<04:22:49.199> everything<04:22:49.600> works
04:22:50.389 --> 04:22:50.399 align:start position:0%
context there we go everything works
04:22:50.399 --> 04:22:52.469 align:start position:0%
context there we go everything works
typescript<04:22:50.920> is<04:22:51.040> not<04:22:51.239> complaining<04:22:52.040> so<04:22:52.239> let's
04:22:52.469 --> 04:22:52.479 align:start position:0%
typescript is not complaining so let's
04:22:52.479 --> 04:22:55.030 align:start position:0%
typescript is not complaining so let's
go<04:22:52.640> ahead<04:22:53.119> and<04:22:53.319> test<04:22:53.520> it<04:22:53.680> out<04:22:54.680> I'm<04:22:54.800> going<04:22:54.880> to
04:22:55.030 --> 04:22:55.040 align:start position:0%
go ahead and test it out I'm going to
04:22:55.040 --> 04:22:56.870 align:start position:0%
go ahead and test it out I'm going to
press<04:22:55.239> the<04:22:55.359> like<04:22:55.640> button<04:22:56.119> really<04:22:56.399> carefully
04:22:56.870 --> 04:22:56.880 align:start position:0%
press the like button really carefully
04:22:56.880 --> 04:22:58.349 align:start position:0%
press the like button really carefully
because<04:22:57.080> I'm<04:22:57.239> scared<04:22:57.640> we've<04:22:57.840> done<04:22:57.960> a<04:22:58.080> lot<04:22:58.199> of
04:22:58.349 --> 04:22:58.359 align:start position:0%
because I'm scared we've done a lot of
04:22:58.359 --> 04:23:00.830 align:start position:0%
because I'm scared we've done a lot of
changes<04:22:59.040> hopefully<04:22:59.640> it
04:23:00.830 --> 04:23:00.840 align:start position:0%
changes hopefully it
04:23:00.840 --> 04:23:04.030 align:start position:0%
changes hopefully it
works<04:23:01.840> okay<04:23:02.479> would<04:23:02.680> you<04:23:02.840> look<04:23:03.000> at<04:23:03.199> that<04:23:03.840> it's
04:23:04.030 --> 04:23:04.040 align:start position:0%
works okay would you look at that it's
04:23:04.040 --> 04:23:08.109 align:start position:0%
works okay would you look at that it's
saved<04:23:05.000> and<04:23:05.279> it<04:23:05.479> unsaved<04:23:06.640> not<04:23:06.880> only<04:23:07.359> that<04:23:07.880> but
04:23:08.109 --> 04:23:08.119 align:start position:0%
saved and it unsaved not only that but
04:23:08.119 --> 04:23:10.830 align:start position:0%
saved and it unsaved not only that but
it<04:23:08.279> did<04:23:08.439> it<04:23:09.239> instantaneously<04:23:10.239> the<04:23:10.399> reason<04:23:10.680> why
04:23:10.830 --> 04:23:10.840 align:start position:0%
it did it instantaneously the reason why
04:23:10.840 --> 04:23:12.550 align:start position:0%
it did it instantaneously the reason why
that<04:23:10.960> is<04:23:11.159> happening<04:23:11.640> is<04:23:11.800> because<04:23:12.000> we're<04:23:12.159> using
04:23:12.550 --> 04:23:12.560 align:start position:0%
that is happening is because we're using
04:23:12.560 --> 04:23:15.149 align:start position:0%
that is happening is because we're using
react<04:23:13.080> query<04:23:13.920> it<04:23:14.080> does<04:23:14.520> something<04:23:14.760> known<04:23:15.040> as
04:23:15.149 --> 04:23:15.159 align:start position:0%
react query it does something known as
04:23:15.159 --> 04:23:17.990 align:start position:0%
react query it does something known as
an<04:23:15.319> optimistic<04:23:15.960> update<04:23:16.960> before<04:23:17.359> it<04:23:17.600> actually
04:23:17.990 --> 04:23:18.000 align:start position:0%
an optimistic update before it actually
04:23:18.000 --> 04:23:20.309 align:start position:0%
an optimistic update before it actually
updates<04:23:18.479> it<04:23:18.640> in<04:23:18.800> the<04:23:18.960> database<04:23:19.760> it<04:23:19.920> provides
04:23:20.309 --> 04:23:20.319 align:start position:0%
updates it in the database it provides
04:23:20.319 --> 04:23:23.429 align:start position:0%
updates it in the database it provides
user<04:23:20.920> with<04:23:21.119> an<04:23:21.359> instantaneous<04:23:22.279> feedback<04:23:23.279> now
04:23:23.429 --> 04:23:23.439 align:start position:0%
user with an instantaneous feedback now
04:23:23.439 --> 04:23:25.590 align:start position:0%
user with an instantaneous feedback now
of<04:23:23.600> course<04:23:23.800> the<04:23:23.960> key<04:23:24.159> thing<04:23:24.439> is<04:23:24.960> if<04:23:25.080> I<04:23:25.239> reload
04:23:25.590 --> 04:23:25.600 align:start position:0%
of course the key thing is if I reload
04:23:25.600 --> 04:23:28.510 align:start position:0%
of course the key thing is if I reload
the<04:23:25.800> page<04:23:26.600> is<04:23:26.720> it<04:23:26.840> going<04:23:27.000> to<04:23:27.239> remain<04:23:27.479> saved<04:23:28.319> and
04:23:28.510 --> 04:23:28.520 align:start position:0%
the page is it going to remain saved and
04:23:28.520 --> 04:23:30.630 align:start position:0%
the page is it going to remain saved and
it<04:23:28.680> does<04:23:29.520> let's<04:23:29.720> check<04:23:29.920> the<04:23:30.040> same<04:23:30.199> thing<04:23:30.439> with
04:23:30.630 --> 04:23:30.640 align:start position:0%
it does let's check the same thing with
04:23:30.640 --> 04:23:33.990 align:start position:0%
it does let's check the same thing with
save<04:23:31.600> oh<04:23:31.960> it<04:23:32.080> doesn't<04:23:32.359> allow<04:23:32.600> me<04:23:32.760> to<04:23:33.000> unsave<04:23:33.560> it
04:23:33.990 --> 04:23:34.000 align:start position:0%
save oh it doesn't allow me to unsave it
04:23:34.000 --> 04:23:36.870 align:start position:0%
save oh it doesn't allow me to unsave it
for<04:23:34.239> some<04:23:34.479> reason<04:23:35.319> hm<04:23:35.840> interesting
04:23:36.870 --> 04:23:36.880 align:start position:0%
for some reason hm interesting
04:23:36.880 --> 04:23:39.990 align:start position:0%
for some reason hm interesting
let's<04:23:37.080> see<04:23:37.359> why<04:23:37.600> that<04:23:37.760> is<04:23:38.600> so<04:23:38.840> if<04:23:39.000> we<04:23:39.239> check
04:23:39.990 --> 04:23:40.000 align:start position:0%
let's see why that is so if we check
04:23:40.000 --> 04:23:43.550 align:start position:0%
let's see why that is so if we check
this<04:23:40.319> is<04:23:40.600> saved<04:23:41.560> it<04:23:41.680> is<04:23:41.840> set<04:23:42.080> to<04:23:42.439> is<04:23:42.680> saved<04:23:43.159> to
04:23:43.550 --> 04:23:43.560 align:start position:0%
this is saved it is set to is saved to
04:23:43.560 --> 04:23:46.990 align:start position:0%
this is saved it is set to is saved to
false<04:23:44.560> but<04:23:44.720> then<04:23:44.920> once<04:23:45.119> I<04:23:45.279> check<04:23:45.720> it<04:23:46.720> in<04:23:46.840> the
04:23:46.990 --> 04:23:47.000 align:start position:0%
false but then once I check it in the
04:23:47.000 --> 04:23:49.389 align:start position:0%
false but then once I check it in the
handle<04:23:47.319> save<04:23:47.640> post<04:23:48.239> do<04:23:48.439> we<04:23:48.600> ever<04:23:48.800> set<04:23:49.040> it<04:23:49.119> to
04:23:49.389 --> 04:23:49.399 align:start position:0%
handle save post do we ever set it to
04:23:49.399 --> 04:23:52.790 align:start position:0%
handle save post do we ever set it to
false<04:23:50.399> it<04:23:50.520> seems<04:23:50.800> like<04:23:50.960> we<04:23:51.080> do<04:23:51.640> right<04:23:51.880> here<04:23:52.600> but
04:23:52.790 --> 04:23:52.800 align:start position:0%
false it seems like we do right here but
04:23:52.800 --> 04:23:54.429 align:start position:0%
false it seems like we do right here but
what<04:23:52.920> if<04:23:53.040> I<04:23:53.159> reload<04:23:53.560> the
04:23:54.429 --> 04:23:54.439 align:start position:0%
what if I reload the
04:23:54.439 --> 04:23:57.670 align:start position:0%
what if I reload the
page<04:23:55.439> okay<04:23:55.760> now<04:23:56.040> it's<04:23:56.279> unsaved<04:23:57.279> what<04:23:57.399> if<04:23:57.520> I
04:23:57.670 --> 04:23:57.680 align:start position:0%
page okay now it's unsaved what if I
04:23:57.680 --> 04:24:00.269 align:start position:0%
page okay now it's unsaved what if I
save<04:23:57.920> it<04:23:58.359> if<04:23:58.479> I
04:24:00.269 --> 04:24:00.279 align:start position:0%
save it if I
04:24:00.279 --> 04:24:03.510 align:start position:0%
save it if I
reload<04:24:01.279> it<04:24:01.439> is<04:24:01.760> not<04:24:02.080> saved<04:24:02.800> so<04:24:03.000> we<04:24:03.119> have<04:24:03.239> to<04:24:03.359> be
04:24:03.510 --> 04:24:03.520 align:start position:0%
reload it is not saved so we have to be
04:24:03.520 --> 04:24:05.750 align:start position:0%
reload it is not saved so we have to be
able<04:24:03.720> to<04:24:03.960> get<04:24:04.239> the<04:24:04.439> current<04:24:04.880> Save<04:24:05.279> State
04:24:05.750 --> 04:24:05.760 align:start position:0%
able to get the current Save State
04:24:05.760 --> 04:24:08.550 align:start position:0%
able to get the current Save State
whenever<04:24:06.080> we<04:24:06.359> reload<04:24:06.720> the<04:24:06.920> page<04:24:07.760> to<04:24:07.960> do<04:24:08.199> that
04:24:08.550 --> 04:24:08.560 align:start position:0%
whenever we reload the page to do that
04:24:08.560 --> 04:24:12.510 align:start position:0%
whenever we reload the page to do that
we<04:24:08.680> can<04:24:08.960> extract<04:24:09.880> this<04:24:10.239> saved<04:24:10.920> post<04:24:11.359> record<04:24:12.279> by
04:24:12.510 --> 04:24:12.520 align:start position:0%
we can extract this saved post record by
04:24:12.520 --> 04:24:15.309 align:start position:0%
we can extract this saved post record by
copying<04:24:12.960> it<04:24:13.600> and<04:24:13.760> putting<04:24:14.040> it<04:24:14.399> right<04:24:14.600> here<04:24:15.159> at
04:24:15.309 --> 04:24:15.319 align:start position:0%
copying it and putting it right here at
04:24:15.319 --> 04:24:18.469 align:start position:0%
copying it and putting it right here at
the<04:24:15.640> top<04:24:16.640> then<04:24:17.000> what<04:24:17.159> we<04:24:17.239> can<04:24:17.399> do<04:24:17.680> is<04:24:17.920> create<04:24:18.239> a
04:24:18.469 --> 04:24:18.479 align:start position:0%
the top then what we can do is create a
04:24:18.479 --> 04:24:20.349 align:start position:0%
the top then what we can do is create a
new<04:24:18.920> use
04:24:20.349 --> 04:24:20.359 align:start position:0%
new use
04:24:20.359 --> 04:24:23.070 align:start position:0%
new use
effect<04:24:21.359> and<04:24:21.600> this<04:24:21.760> use<04:24:22.040> effect<04:24:22.560> is<04:24:22.720> going<04:24:22.880> to
04:24:23.070 --> 04:24:23.080 align:start position:0%
effect and this use effect is going to
04:24:23.080 --> 04:24:25.590 align:start position:0%
effect and this use effect is going to
have<04:24:23.199> a<04:24:23.399> typical<04:24:23.920> callback<04:24:24.399> function<04:24:25.399> and
04:24:25.590 --> 04:24:25.600 align:start position:0%
have a typical callback function and
04:24:25.600 --> 04:24:27.429 align:start position:0%
have a typical callback function and
it's<04:24:25.800> going<04:24:25.920> to<04:24:26.159> change<04:24:26.800> whenever<04:24:27.199> the
04:24:27.429 --> 04:24:27.439 align:start position:0%
it's going to change whenever the
04:24:27.439 --> 04:24:30.670 align:start position:0%
it's going to change whenever the
current<04:24:27.840> user<04:24:28.439> changes<04:24:29.439> and<04:24:29.640> then<04:24:29.920> we<04:24:30.040> can<04:24:30.319> set
04:24:30.670 --> 04:24:30.680 align:start position:0%
current user changes and then we can set
04:24:30.680 --> 04:24:35.510 align:start position:0%
current user changes and then we can set
is<04:24:31.319> saved<04:24:32.319> to<04:24:32.479> be<04:24:32.680> equal<04:24:33.000> to<04:24:34.000> saved<04:24:34.880> post
04:24:35.510 --> 04:24:35.520 align:start position:0%
is saved to be equal to saved post
04:24:35.520 --> 04:24:36.910 align:start position:0%
is saved to be equal to saved post
record
04:24:36.910 --> 04:24:36.920 align:start position:0%
record
04:24:36.920 --> 04:24:39.389 align:start position:0%
record
um<04:24:37.119> so<04:24:37.319> if<04:24:37.479> there<04:24:37.640> is<04:24:37.760> a<04:24:37.920> saved<04:24:38.279> post<04:24:38.560> record<04:24:39.279> we
04:24:39.389 --> 04:24:39.399 align:start position:0%
um so if there is a saved post record we
04:24:39.399 --> 04:24:42.710 align:start position:0%
um so if there is a saved post record we
can<04:24:39.720> return<04:24:40.040> a<04:24:40.720> true<04:24:41.720> else<04:24:42.080> we<04:24:42.159> can<04:24:42.399> return<04:24:42.560> a
04:24:42.710 --> 04:24:42.720 align:start position:0%
can return a true else we can return a
04:24:42.720 --> 04:24:45.149 align:start position:0%
can return a true else we can return a
false<04:24:43.159> because<04:24:43.439> this<04:24:43.600> has<04:24:43.720> to<04:24:43.840> be<04:24:43.960> a<04:24:44.159> Boolean
04:24:45.149 --> 04:24:45.159 align:start position:0%
false because this has to be a Boolean
04:24:45.159 --> 04:24:47.189 align:start position:0%
false because this has to be a Boolean
and<04:24:45.279> there's<04:24:45.439> a<04:24:45.560> shorter<04:24:46.000> way<04:24:46.159> of<04:24:46.279> doing<04:24:46.640> this
04:24:47.189 --> 04:24:47.199 align:start position:0%
and there's a shorter way of doing this
04:24:47.199 --> 04:24:48.990 align:start position:0%
and there's a shorter way of doing this
whenever<04:24:47.479> you<04:24:47.640> have<04:24:47.920> something<04:24:48.640> if<04:24:48.800> that
04:24:48.990 --> 04:24:49.000 align:start position:0%
whenever you have something if that
04:24:49.000 --> 04:24:51.710 align:start position:0%
whenever you have something if that
something<04:24:49.439> exists<04:24:50.199> return<04:24:50.479> true<04:24:51.040> else<04:24:51.479> return
04:24:51.710 --> 04:24:51.720 align:start position:0%
something exists return true else return
04:24:51.720 --> 04:24:54.950 align:start position:0%
something exists return true else return
false<04:24:52.640> what<04:24:52.720> you<04:24:52.840> can<04:24:53.080> also<04:24:53.399> do<04:24:53.960> is<04:24:54.359> automatic
04:24:54.950 --> 04:24:54.960 align:start position:0%
false what you can also do is automatic
04:24:54.960 --> 04:24:57.550 align:start position:0%
false what you can also do is automatic
Boolean<04:24:55.439> assignment<04:24:56.399> and<04:24:56.560> That<04:24:56.680> is<04:24:57.080> do<04:24:57.359> a
04:24:57.550 --> 04:24:57.560 align:start position:0%
Boolean assignment and That is do a
04:24:57.560 --> 04:25:00.109 align:start position:0%
Boolean assignment and That is do a
double<04:24:58.000> exclamation<04:24:58.600> mark<04:24:59.439> So<04:24:59.680> what<04:24:59.840> this
04:25:00.109 --> 04:25:00.119 align:start position:0%
double exclamation mark So what this
04:25:00.119 --> 04:25:02.510 align:start position:0%
double exclamation mark So what this
does<04:25:00.640> is<04:25:00.920> it<04:25:01.080> checks<04:25:01.479> whether<04:25:01.720> there<04:25:01.920> is<04:25:02.399> a
04:25:02.510 --> 04:25:02.520 align:start position:0%
does is it checks whether there is a
04:25:02.520 --> 04:25:05.469 align:start position:0%
does is it checks whether there is a
Trudy<04:25:03.000> value<04:25:03.920> if<04:25:04.040> there<04:25:04.199> is<04:25:04.319> a<04:25:04.439> Trudy<04:25:04.880> value
04:25:05.469 --> 04:25:05.479 align:start position:0%
Trudy value if there is a Trudy value
04:25:05.479 --> 04:25:07.590 align:start position:0%
Trudy value if there is a Trudy value
this<04:25:05.600> is<04:25:05.720> going<04:25:05.880> to<04:25:06.159> you<04:25:06.680> make<04:25:06.840> it<04:25:06.960> a<04:25:07.080> falsey
04:25:07.590 --> 04:25:07.600 align:start position:0%
this is going to you make it a falsey
04:25:07.600 --> 04:25:09.870 align:start position:0%
this is going to you make it a falsey
value<04:25:08.279> and<04:25:08.399> then<04:25:08.560> from<04:25:08.720> falsey<04:25:09.399> you<04:25:09.560> get<04:25:09.680> the
04:25:09.870 --> 04:25:09.880 align:start position:0%
value and then from falsey you get the
04:25:09.880 --> 04:25:12.149 align:start position:0%
value and then from falsey you get the
try<04:25:10.880> so<04:25:11.159> let<04:25:11.279> me<04:25:11.399> give<04:25:11.479> you<04:25:11.600> an<04:25:11.760> example
04:25:12.149 --> 04:25:12.159 align:start position:0%
try so let me give you an example
04:25:12.159 --> 04:25:14.309 align:start position:0%
try so let me give you an example
because<04:25:12.319> I<04:25:12.439> know<04:25:12.600> this<04:25:12.720> is<04:25:12.840> a<04:25:12.960> bit<04:25:13.319> complicated
04:25:14.309 --> 04:25:14.319 align:start position:0%
because I know this is a bit complicated
04:25:14.319 --> 04:25:16.870 align:start position:0%
because I know this is a bit complicated
if<04:25:14.479> we<04:25:14.680> have<04:25:15.119> the<04:25:15.359> saved<04:25:15.760> post<04:25:16.119> record<04:25:16.760> which
04:25:16.870 --> 04:25:16.880 align:start position:0%
if we have the saved post record which
04:25:16.880 --> 04:25:21.590 align:start position:0%
if we have the saved post record which
is<04:25:17.119> let's<04:25:17.319> say<04:25:17.560> an<04:25:17.840> object<04:25:18.439> of<04:25:19.040> Saved<04:25:20.040> is<04:25:20.600> true
04:25:21.590 --> 04:25:21.600 align:start position:0%
is let's say an object of Saved is true
04:25:21.600 --> 04:25:24.189 align:start position:0%
is let's say an object of Saved is true
like<04:25:21.840> this<04:25:22.680> then<04:25:22.880> we<04:25:23.040> call<04:25:23.319> one<04:25:23.600> exclamation
04:25:24.189 --> 04:25:24.199 align:start position:0%
like this then we call one exclamation
04:25:24.199 --> 04:25:27.030 align:start position:0%
like this then we call one exclamation
mark<04:25:24.600> on<04:25:24.880> Saved<04:25:25.520> post<04:25:25.920> record<04:25:26.640> which<04:25:26.760> is<04:25:26.920> going
04:25:27.030 --> 04:25:27.040 align:start position:0%
mark on Saved post record which is going
04:25:27.040 --> 04:25:30.630 align:start position:0%
mark on Saved post record which is going
to<04:25:27.640> return<04:25:28.720> false<04:25:29.720> and<04:25:29.840> then<04:25:30.000> we<04:25:30.199> call<04:25:30.479> one
04:25:30.630 --> 04:25:30.640 align:start position:0%
to return false and then we call one
04:25:30.640 --> 04:25:33.229 align:start position:0%
to return false and then we call one
more<04:25:30.880> time<04:25:31.520> this<04:25:31.760> on<04:25:31.920> the<04:25:32.080> false<04:25:32.760> and<04:25:32.880> we<04:25:33.040> get
04:25:33.229 --> 04:25:33.239 align:start position:0%
more time this on the false and we get
04:25:33.239 --> 04:25:35.389 align:start position:0%
more time this on the false and we get
true<04:25:34.159> if<04:25:34.239> you<04:25:34.359> were<04:25:34.520> to<04:25:34.680> repeat<04:25:35.040> this<04:25:35.199> with
04:25:35.389 --> 04:25:35.399 align:start position:0%
true if you were to repeat this with
04:25:35.399 --> 04:25:37.510 align:start position:0%
true if you were to repeat this with
another<04:25:35.680> true<04:25:36.159> value<04:25:36.720> like<04:25:36.920> maybe<04:25:37.239> just<04:25:37.359> a
04:25:37.510 --> 04:25:37.520 align:start position:0%
another true value like maybe just a
04:25:37.520 --> 04:25:41.790 align:start position:0%
another true value like maybe just a
string<04:25:37.920> of<04:25:38.199> test<04:25:39.199> it<04:25:39.279> would<04:25:39.600> also<04:25:40.800> return
04:25:41.790 --> 04:25:41.800 align:start position:0%
string of test it would also return
04:25:41.800 --> 04:25:44.070 align:start position:0%
string of test it would also return
false<04:25:42.640> because<04:25:42.920> once<04:25:43.080> you<04:25:43.199> negate<04:25:43.560> it<04:25:43.760> you<04:25:43.920> get
04:25:44.070 --> 04:25:44.080 align:start position:0%
false because once you negate it you get
04:25:44.080 --> 04:25:46.750 align:start position:0%
false because once you negate it you get
a<04:25:44.239> false<04:25:44.800> and<04:25:44.920> then<04:25:45.040> a<04:25:45.159> false<04:25:45.439> is<04:25:45.600> true<04:25:46.399> but<04:25:46.640> if
04:25:46.750 --> 04:25:46.760 align:start position:0%
a false and then a false is true but if
04:25:46.760 --> 04:25:49.710 align:start position:0%
a false and then a false is true but if
you<04:25:46.880> were<04:25:47.040> to<04:25:47.199> do<04:25:47.479> this<04:25:47.920> on<04:25:48.199> a<04:25:48.439> falsy<04:25:48.960> value
04:25:49.710 --> 04:25:49.720 align:start position:0%
you were to do this on a falsy value
04:25:49.720 --> 04:25:51.510 align:start position:0%
you were to do this on a falsy value
like<04:25:50.000> if<04:25:50.119> you<04:25:50.239> were<04:25:50.399> to<04:25:50.560> do<04:25:50.680> it<04:25:50.800> on<04:25:50.920> an<04:25:51.080> empty
04:25:51.510 --> 04:25:51.520 align:start position:0%
like if you were to do it on an empty
04:25:51.520 --> 04:25:53.910 align:start position:0%
like if you were to do it on an empty
string<04:25:52.520> then<04:25:53.040> at<04:25:53.159> the<04:25:53.279> end<04:25:53.479> you<04:25:53.560> would<04:25:53.760> get
04:25:53.910 --> 04:25:53.920 align:start position:0%
string then at the end you would get
04:25:53.920 --> 04:25:56.070 align:start position:0%
string then at the end you would get
false<04:25:54.600> because<04:25:54.920> first<04:25:55.239> it<04:25:55.359> converts<04:25:55.800> to<04:25:55.920> a
04:25:56.070 --> 04:25:56.080 align:start position:0%
false because first it converts to a
04:25:56.080 --> 04:25:58.950 align:start position:0%
false because first it converts to a
true<04:25:56.720> and<04:25:56.920> then<04:25:57.399> false<04:25:58.239> I<04:25:58.319> hope<04:25:58.520> this<04:25:58.680> makes
04:25:58.950 --> 04:25:58.960 align:start position:0%
true and then false I hope this makes
04:25:58.960 --> 04:26:02.149 align:start position:0%
true and then false I hope this makes
just<04:25:59.119> a<04:25:59.279> bit<04:25:59.399> of<04:25:59.760> sense<04:26:00.760> there<04:26:00.920> we<04:26:01.119> go<04:26:01.880> and<04:26:02.080> we
04:26:02.149 --> 04:26:02.159 align:start position:0%
just a bit of sense there we go and we
04:26:02.159 --> 04:26:05.670 align:start position:0%
just a bit of sense there we go and we
can<04:26:02.359> save<04:26:02.680> this<04:26:03.600> and<04:26:03.760> we<04:26:03.840> can<04:26:04.000> reload<04:26:04.359> the<04:26:04.680> page
04:26:05.670 --> 04:26:05.680 align:start position:0%
can save this and we can reload the page
04:26:05.680 --> 04:26:09.830 align:start position:0%
can save this and we can reload the page
now<04:26:06.199> if<04:26:06.279> we<04:26:06.479> press<04:26:07.119> save<04:26:08.119> it<04:26:08.439> remains<04:26:08.840> saved
04:26:09.830 --> 04:26:09.840 align:start position:0%
now if we press save it remains saved
04:26:09.840 --> 04:26:14.790 align:start position:0%
now if we press save it remains saved
but<04:26:10.199> I<04:26:10.439> still<04:26:10.880> cannot<04:26:11.479> unclick<04:26:12.560> it<04:26:13.560> okay<04:26:14.319> let's
04:26:14.790 --> 04:26:14.800 align:start position:0%
but I still cannot unclick it okay let's
04:26:14.800 --> 04:26:17.349 align:start position:0%
but I still cannot unclick it okay let's
see<04:26:15.080> if<04:26:15.239> I'm<04:26:15.399> doing<04:26:15.640> something<04:26:16.000> wrong<04:26:16.279> here<04:26:17.199> I
04:26:17.349 --> 04:26:17.359 align:start position:0%
see if I'm doing something wrong here I
04:26:17.359 --> 04:26:19.950 align:start position:0%
see if I'm doing something wrong here I
think<04:26:17.840> that<04:26:18.199> right<04:26:18.479> here<04:26:19.399> where<04:26:19.600> I<04:26:19.720> was
04:26:19.950 --> 04:26:19.960 align:start position:0%
think that right here where I was
04:26:19.960 --> 04:26:22.950 align:start position:0%
think that right here where I was
checking<04:26:20.319> for<04:26:20.560> the<04:26:20.720> saved<04:26:21.080> post<04:26:21.760> record<04:26:22.760> the
04:26:22.950 --> 04:26:22.960 align:start position:0%
checking for the saved post record the
04:26:22.960 --> 04:26:25.429 align:start position:0%
checking for the saved post record the
record<04:26:23.319> itself<04:26:23.640> is<04:26:23.800> the<04:26:23.960> user<04:26:24.720> so<04:26:25.000> I<04:26:25.119> cannot
04:26:25.429 --> 04:26:25.439 align:start position:0%
record itself is the user so I cannot
04:26:25.439 --> 04:26:27.750 align:start position:0%
record itself is the user so I cannot
compare<04:26:25.840> the<04:26:26.080> record<04:26:26.399> of<04:26:26.520> the<04:26:26.680> user<04:26:27.119> or<04:26:27.279> the<04:26:27.439> ID
04:26:27.750 --> 04:26:27.760 align:start position:0%
compare the record of the user or the ID
04:26:27.760 --> 04:26:30.349 align:start position:0%
compare the record of the user or the ID
of<04:26:27.880> the<04:26:28.000> user<04:26:28.560> with<04:26:28.760> the<04:26:28.880> ID<04:26:29.119> of<04:26:29.239> the<04:26:29.399> post<04:26:30.239> what
04:26:30.349 --> 04:26:30.359 align:start position:0%
of the user with the ID of the post what
04:26:30.359 --> 04:26:33.950 align:start position:0%
of the user with the ID of the post what
I<04:26:30.479> need<04:26:30.640> to<04:26:30.840> do<04:26:31.239> is<04:26:31.560> dive<04:26:32.239> into<04:26:32.960> the<04:26:33.119> record.
04:26:33.950 --> 04:26:33.960 align:start position:0%
I need to do is dive into the record.
04:26:33.960 --> 04:26:36.550 align:start position:0%
I need to do is dive into the record.
post<04:26:34.640> the<04:26:34.840> that<04:26:35.040> user<04:26:35.319> has<04:26:35.479> saved<04:26:36.239> and<04:26:36.399> then
04:26:36.550 --> 04:26:36.560 align:start position:0%
post the that user has saved and then
04:26:36.560 --> 04:26:39.229 align:start position:0%
post the that user has saved and then
compare<04:26:36.960> with<04:26:37.119> the<04:26:37.239> post<04:26:37.520> ID<04:26:38.319> so<04:26:38.600> now<04:26:38.960> if<04:26:39.080> I
04:26:39.229 --> 04:26:39.239 align:start position:0%
compare with the post ID so now if I
04:26:39.239 --> 04:26:41.670 align:start position:0%
compare with the post ID so now if I
save<04:26:39.560> this<04:26:40.000> the<04:26:40.159> saved<04:26:40.479> record<04:26:40.840> post<04:26:41.199> or<04:26:41.399> save
04:26:41.670 --> 04:26:41.680 align:start position:0%
save this the saved record post or save
04:26:41.680 --> 04:26:43.950 align:start position:0%
save this the saved record post or save
post<04:26:41.960> record<04:26:42.640> should<04:26:43.040> successfully<04:26:43.600> get<04:26:43.760> the
04:26:43.950 --> 04:26:43.960 align:start position:0%
post record should successfully get the
04:26:43.960 --> 04:26:46.990 align:start position:0%
post record should successfully get the
state<04:26:44.760> and<04:26:44.960> now<04:26:45.279> I<04:26:45.399> can<04:26:45.560> be<04:26:45.720> able<04:26:45.960> to<04:26:46.399> toggle<04:26:46.800> it
04:26:46.990 --> 04:26:47.000 align:start position:0%
state and now I can be able to toggle it
04:26:47.000 --> 04:26:50.710 align:start position:0%
state and now I can be able to toggle it
on<04:26:47.960> toggle<04:26:48.359> it<04:26:48.640> off<04:26:49.359> but<04:26:49.600> it<04:26:49.800> looks<04:26:50.119> like<04:26:50.359> not
04:26:50.710 --> 04:26:50.720 align:start position:0%
on toggle it off but it looks like not
04:26:50.720 --> 04:26:52.750 align:start position:0%
on toggle it off but it looks like not
on<04:26:51.319> let's<04:26:51.520> reload<04:26:52.000> and
04:26:52.750 --> 04:26:52.760 align:start position:0%
on let's reload and
04:26:52.760 --> 04:26:56.790 align:start position:0%
on let's reload and
see<04:26:53.760> so<04:26:53.960> if<04:26:54.040> I<04:26:54.159> do<04:26:54.319> it<04:26:54.560> here<04:26:55.239> it's<04:26:55.479> on<04:26:56.439> yeah<04:26:56.680> but
04:26:56.790 --> 04:26:56.800 align:start position:0%
see so if I do it here it's on yeah but
04:26:56.800 --> 04:26:59.630 align:start position:0%
see so if I do it here it's on yeah but
it<04:26:56.920> doesn't<04:26:57.159> allow<04:26:57.399> me<04:26:57.520> to<04:26:57.640> bring<04:26:57.880> it<04:26:58.319> back<04:26:59.319> so
04:26:59.630 --> 04:26:59.640 align:start position:0%
it doesn't allow me to bring it back so
04:26:59.640 --> 04:27:01.030 align:start position:0%
it doesn't allow me to bring it back so
let's<04:26:59.840> just<04:27:00.040> ensure<04:27:00.399> that<04:27:00.560> a<04:27:00.680> couple<04:27:00.880> of
04:27:01.030 --> 04:27:01.040 align:start position:0%
let's just ensure that a couple of
04:27:01.040 --> 04:27:03.550 align:start position:0%
let's just ensure that a couple of
things<04:27:01.239> are<04:27:01.439> in<04:27:01.600> order<04:27:02.439> first<04:27:02.680> of<04:27:02.840> all<04:27:03.199> if<04:27:03.319> it's
04:27:03.550 --> 04:27:03.560 align:start position:0%
things are in order first of all if it's
04:27:03.560 --> 04:27:06.630 align:start position:0%
things are in order first of all if it's
unsaved<04:27:04.279> here<04:27:04.880> go<04:27:05.080> to<04:27:05.319> app<04:27:05.720> right<04:27:06.159> and<04:27:06.319> then<04:27:06.479> go
04:27:06.630 --> 04:27:06.640 align:start position:0%
unsaved here go to app right and then go
04:27:06.640 --> 04:27:08.710 align:start position:0%
unsaved here go to app right and then go
to<04:27:06.800> the<04:27:06.920> saves<04:27:07.279> collection<04:27:08.159> there<04:27:08.279> should<04:27:08.479> be
04:27:08.710 --> 04:27:08.720 align:start position:0%
to the saves collection there should be
04:27:08.720 --> 04:27:11.750 align:start position:0%
to the saves collection there should be
zero<04:27:09.080> documents<04:27:09.680> because<04:27:09.960> no<04:27:10.199> post<04:27:10.520> are<04:27:10.760> saved
04:27:11.750 --> 04:27:11.760 align:start position:0%
zero documents because no post are saved
04:27:11.760 --> 04:27:14.790 align:start position:0%
zero documents because no post are saved
if<04:27:11.960> that<04:27:12.080> is<04:27:12.239> the<04:27:12.399> case<04:27:13.000> once<04:27:13.199> you<04:27:13.399> click<04:27:13.800> it
04:27:14.790 --> 04:27:14.800 align:start position:0%
if that is the case once you click it
04:27:14.800 --> 04:27:18.309 align:start position:0%
if that is the case once you click it
and<04:27:15.000> now<04:27:15.279> go<04:27:15.479> back<04:27:15.640> to<04:27:15.880> aite<04:27:16.880> and<04:27:17.199> reload<04:27:18.199> you
04:27:18.309 --> 04:27:18.319 align:start position:0%
and now go back to aite and reload you
04:27:18.319 --> 04:27:20.269 align:start position:0%
and now go back to aite and reload you
should<04:27:18.520> be<04:27:18.640> able<04:27:18.840> to<04:27:18.960> see<04:27:19.199> one<04:27:19.439> save<04:27:19.840> there<04:27:20.159> but
04:27:20.269 --> 04:27:20.279 align:start position:0%
should be able to see one save there but
04:27:20.279 --> 04:27:22.870 align:start position:0%
should be able to see one save there but
it<04:27:20.439> looks<04:27:20.680> like<04:27:20.840> our<04:27:21.080> user<04:27:21.479> wasn't<04:27:21.960> added<04:27:22.640> and
04:27:22.870 --> 04:27:22.880 align:start position:0%
it looks like our user wasn't added and
04:27:22.880 --> 04:27:24.950 align:start position:0%
it looks like our user wasn't added and
here<04:27:23.199> it<04:27:23.439> unsaved<04:27:24.000> it<04:27:24.319> so<04:27:24.520> something<04:27:24.800> is
04:27:24.950 --> 04:27:24.960 align:start position:0%
here it unsaved it so something is
04:27:24.960 --> 04:27:28.109 align:start position:0%
here it unsaved it so something is
broken<04:27:25.720> so<04:27:26.000> let's<04:27:26.199> try<04:27:26.399> to<04:27:26.560> click<04:27:26.800> it<04:27:27.000> once
04:27:28.109 --> 04:27:28.119 align:start position:0%
broken so let's try to click it once
04:27:28.119 --> 04:27:31.670 align:start position:0%
broken so let's try to click it once
again<04:27:29.119> this<04:27:29.359> time<04:27:29.720> it<04:27:30.080> stays<04:27:30.760> saved<04:27:31.439> and<04:27:31.560> if
04:27:31.670 --> 04:27:31.680 align:start position:0%
again this time it stays saved and if
04:27:31.680 --> 04:27:33.830 align:start position:0%
again this time it stays saved and if
you<04:27:31.840> reload<04:27:32.399> right<04:27:32.600> here<04:27:33.119> it<04:27:33.279> looks<04:27:33.479> like<04:27:33.640> it
04:27:33.830 --> 04:27:33.840 align:start position:0%
you reload right here it looks like it
04:27:33.840 --> 04:27:36.469 align:start position:0%
you reload right here it looks like it
added<04:27:34.279> another<04:27:34.840> document<04:27:35.560> with<04:27:35.720> a<04:27:36.000> again<04:27:36.319> an
04:27:36.469 --> 04:27:36.479 align:start position:0%
added another document with a again an
04:27:36.479 --> 04:27:39.349 align:start position:0%
added another document with a again an
empty<04:27:36.840> user<04:27:37.680> so<04:27:37.960> this<04:27:38.080> is<04:27:38.279> not<04:27:38.520> looking<04:27:38.880> good
04:27:39.349 --> 04:27:39.359 align:start position:0%
empty user so this is not looking good
04:27:39.359 --> 04:27:41.269 align:start position:0%
empty user so this is not looking good
it<04:27:39.479> is<04:27:39.720> possible<04:27:40.080> that<04:27:40.199> we<04:27:40.359> got<04:27:40.560> disconnected
04:27:41.269 --> 04:27:41.279 align:start position:0%
it is possible that we got disconnected
04:27:41.279 --> 04:27:43.030 align:start position:0%
it is possible that we got disconnected
in<04:27:41.399> the<04:27:41.520> meantime<04:27:42.159> so<04:27:42.319> it<04:27:42.439> doesn't<04:27:42.680> know<04:27:42.880> which
04:27:43.030 --> 04:27:43.040 align:start position:0%
in the meantime so it doesn't know which
04:27:43.040 --> 04:27:45.469 align:start position:0%
in the meantime so it doesn't know which
user<04:27:43.359> is<04:27:43.600> there<04:27:44.319> so<04:27:44.520> for<04:27:44.760> now<04:27:45.159> what<04:27:45.279> I'm<04:27:45.399> going
04:27:45.469 --> 04:27:45.479 align:start position:0%
user is there so for now what I'm going
04:27:45.479 --> 04:27:47.630 align:start position:0%
user is there so for now what I'm going
to<04:27:45.640> do<04:27:46.000> is<04:27:46.119> I'm<04:27:46.239> going<04:27:46.359> to<04:27:46.520> delete<04:27:47.279> both<04:27:47.479> of
04:27:47.630 --> 04:27:47.640 align:start position:0%
to do is I'm going to delete both of
04:27:47.640 --> 04:27:49.670 align:start position:0%
to do is I'm going to delete both of
these<04:27:47.800> two<04:27:48.119> documents<04:27:49.080> because<04:27:49.359> we<04:27:49.520> don't
04:27:49.670 --> 04:27:49.680 align:start position:0%
these two documents because we don't
04:27:49.680 --> 04:27:51.950 align:start position:0%
these two documents because we don't
want<04:27:49.840> to<04:27:50.040> have<04:27:50.199> any<04:27:50.399> saves<04:27:51.319> and<04:27:51.520> I'm<04:27:51.640> going<04:27:51.760> to
04:27:51.950 --> 04:27:51.960 align:start position:0%
want to have any saves and I'm going to
04:27:51.960 --> 04:27:54.750 align:start position:0%
want to have any saves and I'm going to
quickly<04:27:52.359> log<04:27:52.680> out<04:27:53.279> and<04:27:53.399> then<04:27:53.600> log<04:27:54.000> back<04:27:54.159> in<04:27:54.560> to
04:27:54.750 --> 04:27:54.760 align:start position:0%
quickly log out and then log back in to
04:27:54.760 --> 04:27:56.870 align:start position:0%
quickly log out and then log back in to
ensure<04:27:55.119> everything<04:27:55.399> is<04:27:55.640> good<04:27:56.520> I'm<04:27:56.600> going<04:27:56.720> to
04:27:56.870 --> 04:27:56.880 align:start position:0%
ensure everything is good I'm going to
04:27:56.880 --> 04:28:01.469 align:start position:0%
ensure everything is good I'm going to
use<04:27:57.159> my<04:27:57.439> same<04:27:58.279> email<04:27:59.279> and<04:27:59.520> sign<04:28:00.040> in<04:28:01.040> now<04:28:01.279> we<04:28:01.359> can
04:28:01.469 --> 04:28:01.479 align:start position:0%
use my same email and sign in now we can
04:28:01.479 --> 04:28:04.710 align:start position:0%
use my same email and sign in now we can
see<04:28:01.680> we're<04:28:01.920> logged<04:28:02.239> in<04:28:02.880> and<04:28:03.119> now<04:28:03.399> I<04:28:03.520> click<04:28:03.840> save
04:28:04.710 --> 04:28:04.720 align:start position:0%
see we're logged in and now I click save
04:28:04.720 --> 04:28:06.950 align:start position:0%
see we're logged in and now I click save
but<04:28:04.960> if<04:28:05.040> we<04:28:05.199> go<04:28:05.439> right<04:28:05.600> here<04:28:06.159> it<04:28:06.319> looks<04:28:06.600> like<04:28:06.800> it
04:28:06.950 --> 04:28:06.960 align:start position:0%
but if we go right here it looks like it
04:28:06.960 --> 04:28:09.750 align:start position:0%
but if we go right here it looks like it
didn't<04:28:07.359> yet<04:28:07.600> save<04:28:07.840> it<04:28:08.760> so<04:28:09.080> it's<04:28:09.279> possible<04:28:09.640> we
04:28:09.750 --> 04:28:09.760 align:start position:0%
didn't yet save it so it's possible we
04:28:09.760 --> 04:28:12.670 align:start position:0%
didn't yet save it so it's possible we
need<04:28:09.880> to<04:28:10.080> add<04:28:10.279> loadings<04:28:10.920> for<04:28:11.199> Save<04:28:11.479> and<04:28:11.680> unsave
04:28:12.670 --> 04:28:12.680 align:start position:0%
need to add loadings for Save and unsave
04:28:12.680 --> 04:28:15.630 align:start position:0%
need to add loadings for Save and unsave
so<04:28:13.159> right<04:28:13.359> here<04:28:13.680> with<04:28:14.000> save<04:28:14.600> we<04:28:14.720> can<04:28:14.960> say<04:28:15.319> is
04:28:15.630 --> 04:28:15.640 align:start position:0%
so right here with save we can say is
04:28:15.640 --> 04:28:19.349 align:start position:0%
so right here with save we can say is
pending<04:28:16.640> and<04:28:16.760> we<04:28:16.840> can<04:28:17.000> say<04:28:17.279> is<04:28:17.760> saving<04:28:18.520> post
04:28:19.349 --> 04:28:19.359 align:start position:0%
pending and we can say is saving post
04:28:19.359 --> 04:28:23.229 align:start position:0%
pending and we can say is saving post
and<04:28:19.479> we<04:28:19.560> can<04:28:19.680> do<04:28:19.840> the<04:28:19.960> same<04:28:20.319> here<04:28:20.840> with<04:28:21.359> is
04:28:23.229 --> 04:28:23.239 align:start position:0%
and we can do the same here with is
04:28:23.239 --> 04:28:25.990 align:start position:0%
and we can do the same here with is
pending<04:28:24.239> we<04:28:24.359> can<04:28:24.520> say<04:28:24.840> is
04:28:25.990 --> 04:28:26.000 align:start position:0%
pending we can say is
04:28:26.000 --> 04:28:29.670 align:start position:0%
pending we can say is
deleting<04:28:27.479> saved<04:28:28.479> and<04:28:28.640> now<04:28:28.840> we<04:28:28.960> can<04:28:29.119> use<04:28:29.439> those
04:28:29.670 --> 04:28:29.680 align:start position:0%
deleting saved and now we can use those
04:28:29.680 --> 04:28:33.950 align:start position:0%
deleting saved and now we can use those
two<04:28:30.359> right<04:28:30.600> here<04:28:30.880> to<04:28:31.119> display<04:28:31.720> a<04:28:32.040> loader<04:28:33.040> so
04:28:33.950 --> 04:28:33.960 align:start position:0%
two right here to display a loader so
04:28:33.960 --> 04:28:36.990 align:start position:0%
two right here to display a loader so
before<04:28:34.359> the<04:28:34.520> image<04:28:34.960> we<04:28:35.080> can<04:28:35.199> say<04:28:35.520> if
04:28:36.990 --> 04:28:37.000 align:start position:0%
before the image we can say if
04:28:37.000 --> 04:28:44.510 align:start position:0%
before the image we can say if
is<04:28:38.159> saving<04:28:39.279> post<04:28:40.600> or<04:28:41.600> if<04:28:41.920> is<04:28:42.520> deleting<04:28:43.520> saved
04:28:44.510 --> 04:28:44.520 align:start position:0%
is saving post or if is deleting saved
04:28:44.520 --> 04:28:47.710 align:start position:0%
is saving post or if is deleting saved
in<04:28:44.760> that<04:28:45.000> case<04:28:45.279> we<04:28:45.359> can<04:28:45.800> return<04:28:46.800> a<04:28:47.040> loader
04:28:47.710 --> 04:28:47.720 align:start position:0%
in that case we can return a loader
04:28:47.720 --> 04:28:50.429 align:start position:0%
in that case we can return a loader
component<04:28:48.720> which<04:28:48.840> we<04:28:49.000> have<04:28:49.119> to<04:28:49.319> import<04:28:49.840> from
04:28:50.429 --> 04:28:50.439 align:start position:0%
component which we have to import from
04:28:50.439 --> 04:28:53.870 align:start position:0%
component which we have to import from
loader<04:28:51.439> else<04:28:52.119> we<04:28:52.479> return<04:28:52.960> an<04:28:53.199> image<04:28:53.680> that's
04:28:53.870 --> 04:28:53.880 align:start position:0%
loader else we return an image that's
04:28:53.880 --> 04:28:55.510 align:start position:0%
loader else we return an image that's
going<04:28:54.000> to<04:28:54.159> allow<04:28:54.359> us<04:28:54.479> to<04:28:54.640> click<04:28:54.880> it<04:28:55.279> and<04:28:55.399> then
04:28:55.510 --> 04:28:55.520 align:start position:0%
going to allow us to click it and then
04:28:55.520 --> 04:28:59.189 align:start position:0%
going to allow us to click it and then
we<04:28:55.640> have<04:28:55.760> to<04:28:55.920> close<04:28:56.520> this<04:28:56.680> block<04:28:57.439> here<04:28:58.439> so<04:28:58.680> now
04:28:59.189 --> 04:28:59.199 align:start position:0%
we have to close this block here so now
04:28:59.199 --> 04:29:01.990 align:start position:0%
we have to close this block here so now
if<04:28:59.319> I<04:28:59.479> reload<04:29:00.000> the<04:29:00.279> page<04:29:01.279> it's<04:29:01.439> going<04:29:01.600> to<04:29:01.760> say
04:29:01.990 --> 04:29:02.000 align:start position:0%
if I reload the page it's going to say
04:29:02.000 --> 04:29:06.229 align:start position:0%
if I reload the page it's going to say
it's<04:29:02.319> not<04:29:02.840> or<04:29:03.159> it<04:29:03.279> is<04:29:03.680> saved<04:29:04.680> and<04:29:04.920> here<04:29:05.080> if<04:29:05.199> I<04:29:05.359> go
04:29:06.229 --> 04:29:06.239 align:start position:0%
it's not or it is saved and here if I go
04:29:06.239 --> 04:29:09.309 align:start position:0%
it's not or it is saved and here if I go
we<04:29:06.439> indeed<04:29:06.760> do<04:29:07.080> have<04:29:07.479> a<04:29:07.680> save<04:29:08.080> document<04:29:08.960> now<04:29:09.199> if
04:29:09.309 --> 04:29:09.319 align:start position:0%
we indeed do have a save document now if
04:29:09.319 --> 04:29:12.269 align:start position:0%
we indeed do have a save document now if
I<04:29:09.479> unsave<04:29:10.279> it<04:29:11.279> oh<04:29:11.479> the<04:29:11.600> loading<04:29:11.920> is<04:29:12.000> in<04:29:12.119> the
04:29:12.269 --> 04:29:12.279 align:start position:0%
I unsave it oh the loading is in the
04:29:12.279 --> 04:29:14.590 align:start position:0%
I unsave it oh the loading is in the
wrong<04:29:12.560> place<04:29:12.920> I<04:29:13.040> added<04:29:13.359> it<04:29:13.560> within<04:29:13.960> the<04:29:14.199> saved
04:29:14.590 --> 04:29:14.600 align:start position:0%
wrong place I added it within the saved
04:29:14.600 --> 04:29:16.870 align:start position:0%
wrong place I added it within the saved
or<04:29:14.720> handle<04:29:15.119> like<04:29:15.479> not<04:29:15.760> save<04:29:16.319> so<04:29:16.479> I'm<04:29:16.560> going<04:29:16.680> to
04:29:16.870 --> 04:29:16.880 align:start position:0%
or handle like not save so I'm going to
04:29:16.880 --> 04:29:19.590 align:start position:0%
or handle like not save so I'm going to
take<04:29:17.159> this<04:29:17.359> entire<04:29:17.840> part<04:29:18.840> remove<04:29:19.199> it<04:29:19.359> from
04:29:19.590 --> 04:29:19.600 align:start position:0%
take this entire part remove it from
04:29:19.600 --> 04:29:21.550 align:start position:0%
take this entire part remove it from
here<04:29:20.080> and<04:29:20.279> add<04:29:20.439> it<04:29:20.720> right
04:29:21.550 --> 04:29:21.560 align:start position:0%
here and add it right
04:29:21.560 --> 04:29:24.550 align:start position:0%
here and add it right
here<04:29:22.560> there<04:29:22.720> we<04:29:22.880> go<04:29:23.040> so<04:29:23.159> it<04:29:23.239> should<04:29:23.359> be<04:29:23.479> in<04:29:23.600> the
04:29:24.550 --> 04:29:24.560 align:start position:0%
here there we go so it should be in the
04:29:24.560 --> 04:29:27.550 align:start position:0%
here there we go so it should be in the
saved<04:29:25.560> and<04:29:25.720> now<04:29:25.920> if<04:29:26.040> I<04:29:26.199> save
04:29:27.550 --> 04:29:27.560 align:start position:0%
saved and now if I save
04:29:27.560 --> 04:29:29.870 align:start position:0%
saved and now if I save
it<04:29:28.560> we<04:29:28.640> can<04:29:28.760> see<04:29:28.960> that<04:29:29.080> it's<04:29:29.279> currently
04:29:29.870 --> 04:29:29.880 align:start position:0%
it we can see that it's currently
04:29:29.880 --> 04:29:32.469 align:start position:0%
it we can see that it's currently
unsaved<04:29:30.880> which<04:29:31.040> we<04:29:31.119> can<04:29:31.279> also<04:29:31.560> verify<04:29:31.960> in<04:29:32.119> app
04:29:32.469 --> 04:29:32.479 align:start position:0%
unsaved which we can also verify in app
04:29:32.479 --> 04:29:35.349 align:start position:0%
unsaved which we can also verify in app
right<04:29:33.239> and<04:29:33.439> now<04:29:33.720> if<04:29:33.840> we<04:29:33.960> save<04:29:34.159> it<04:29:34.399> again<04:29:35.000> it<04:29:35.159> was
04:29:35.349 --> 04:29:35.359 align:start position:0%
right and now if we save it again it was
04:29:35.359 --> 04:29:38.229 align:start position:0%
right and now if we save it again it was
loaded<04:29:36.040> and<04:29:36.199> then<04:29:36.319> it's<04:29:36.640> saved<04:29:37.640> so<04:29:37.960> it's
04:29:38.229 --> 04:29:38.239 align:start position:0%
loaded and then it's saved so it's
04:29:38.239 --> 04:29:41.109 align:start position:0%
loaded and then it's saved so it's
looking<04:29:39.119> good<04:29:39.439> here<04:29:40.399> one<04:29:40.560> more<04:29:40.800> time<04:29:41.040> I'm
04:29:41.109 --> 04:29:41.119 align:start position:0%
looking good here one more time I'm
04:29:41.119 --> 04:29:42.429 align:start position:0%
looking good here one more time I'm
going<04:29:41.239> to<04:29:41.399> unsave
04:29:42.429 --> 04:29:42.439 align:start position:0%
going to unsave
04:29:42.439 --> 04:29:44.950 align:start position:0%
going to unsave
it<04:29:43.439> and<04:29:43.680> go
04:29:44.950 --> 04:29:44.960 align:start position:0%
it and go
04:29:44.960 --> 04:29:48.670 align:start position:0%
it and go
back<04:29:45.960> it's<04:29:46.199> gone<04:29:47.000> we<04:29:47.119> get<04:29:47.239> a<04:29:47.439> 500<04:29:48.199> and<04:29:48.359> this<04:29:48.439> is
04:29:48.670 --> 04:29:48.680 align:start position:0%
back it's gone we get a 500 and this is
04:29:48.680 --> 04:29:50.469 align:start position:0%
back it's gone we get a 500 and this is
okay<04:29:48.960> from<04:29:49.159> time<04:29:49.319> to<04:29:49.560> time<04:29:49.760> you<04:29:49.880> will<04:29:50.080> see<04:29:50.279> some
04:29:50.469 --> 04:29:50.479 align:start position:0%
okay from time to time you will see some
04:29:50.479 --> 04:29:52.710 align:start position:0%
okay from time to time you will see some
errors<04:29:51.040> but<04:29:51.199> that's<04:29:51.399> because<04:29:51.800> aight<04:29:52.319> is<04:29:52.479> still
04:29:52.710 --> 04:29:52.720 align:start position:0%
errors but that's because aight is still
04:29:52.720 --> 04:29:55.149 align:start position:0%
errors but that's because aight is still
in<04:29:52.960> beta<04:29:53.680> it's<04:29:53.840> going<04:29:54.000> to<04:29:54.119> be<04:29:54.359> phenomenal<04:29:54.960> once
04:29:55.149 --> 04:29:55.159 align:start position:0%
in beta it's going to be phenomenal once
04:29:55.159 --> 04:29:57.349 align:start position:0%
in beta it's going to be phenomenal once
it's<04:29:55.359> out<04:29:56.159> so<04:29:56.399> let's<04:29:56.600> just
04:29:57.349 --> 04:29:57.359 align:start position:0%
it's out so let's just
04:29:57.359 --> 04:30:00.429 align:start position:0%
it's out so let's just
reload<04:29:58.359> it<04:29:58.520> works<04:29:58.880> again<04:29:59.279> it's<04:29:59.439> unsaved<04:30:00.199> and
04:30:00.429 --> 04:30:00.439 align:start position:0%
reload it works again it's unsaved and
04:30:00.439 --> 04:30:03.790 align:start position:0%
reload it works again it's unsaved and
one<04:30:00.720> final<04:30:01.119> time<04:30:01.520> let's<04:30:01.760> click<04:30:02.399> save<04:30:03.399> and
04:30:03.790 --> 04:30:03.800 align:start position:0%
one final time let's click save and
04:30:03.800 --> 04:30:06.670 align:start position:0%
one final time let's click save and
check<04:30:04.000> it<04:30:04.159> out<04:30:04.720> it<04:30:04.840> is<04:30:05.080> here<04:30:05.720> so<04:30:05.920> now<04:30:06.199> the<04:30:06.359> save
04:30:06.670 --> 04:30:06.680 align:start position:0%
check it out it is here so now the save
04:30:06.680 --> 04:30:09.510 align:start position:0%
check it out it is here so now the save
functionality<04:30:07.239> works<04:30:07.680> perfectly<04:30:08.680> as<04:30:09.080> does
04:30:09.510 --> 04:30:09.520 align:start position:0%
functionality works perfectly as does
04:30:09.520 --> 04:30:12.990 align:start position:0%
functionality works perfectly as does
the<04:30:09.720> like<04:30:10.000> feature<04:30:10.439> as<04:30:10.600> well<04:30:11.520> this<04:30:11.800> is<04:30:12.199> great
04:30:12.990 --> 04:30:13.000 align:start position:0%
the like feature as well this is great
04:30:13.000 --> 04:30:14.670 align:start position:0%
the like feature as well this is great
and<04:30:13.199> with<04:30:13.399> that<04:30:13.680> we're<04:30:13.840> done<04:30:14.040> with<04:30:14.199> the<04:30:14.319> post
04:30:14.670 --> 04:30:14.680 align:start position:0%
and with that we're done with the post
04:30:14.680 --> 04:30:16.590 align:start position:0%
and with that we're done with the post
stats<04:30:15.279> with<04:30:15.439> the<04:30:15.560> queries<04:30:15.920> mutations<04:30:16.399> and
04:30:16.590 --> 04:30:16.600 align:start position:0%
stats with the queries mutations and
04:30:16.600 --> 04:30:19.269 align:start position:0%
stats with the queries mutations and
apis<04:30:17.040> for<04:30:17.199> the<04:30:17.319> Post<04:30:17.600> stats<04:30:17.960> as<04:30:18.159> well<04:30:19.040> you<04:30:19.119> can
04:30:19.269 --> 04:30:19.279 align:start position:0%
apis for the Post stats as well you can
04:30:19.279 --> 04:30:21.070 align:start position:0%
apis for the Post stats as well you can
remove<04:30:19.600> the<04:30:19.720> conso<04:30:20.119> log<04:30:20.439> that<04:30:20.560> we<04:30:20.680> had<04:30:20.840> in<04:30:20.960> the
04:30:21.070 --> 04:30:21.080 align:start position:0%
remove the conso log that we had in the
04:30:21.080 --> 04:30:24.229 align:start position:0%
remove the conso log that we had in the
post<04:30:21.439> card<04:30:22.439> and<04:30:22.640> we<04:30:22.760> can<04:30:23.000> focus<04:30:23.760> not<04:30:23.960> on<04:30:24.080> the
04:30:24.229 --> 04:30:24.239 align:start position:0%
post card and we can focus not on the
04:30:24.239 --> 04:30:27.030 align:start position:0%
post card and we can focus not on the
home<04:30:24.640> right<04:30:24.840> now<04:30:25.399> but<04:30:25.640> rather<04:30:26.040> on<04:30:26.279> the<04:30:26.560> edit
04:30:27.030 --> 04:30:27.040 align:start position:0%
home right now but rather on the edit
04:30:27.040 --> 04:30:28.990 align:start position:0%
home right now but rather on the edit
page<04:30:27.520> because<04:30:27.720> we<04:30:27.840> need<04:30:27.960> to<04:30:28.080> be<04:30:28.199> able<04:30:28.399> to<04:30:28.600> edit
04:30:28.990 --> 04:30:29.000 align:start position:0%
page because we need to be able to edit
04:30:29.000 --> 04:30:31.550 align:start position:0%
page because we need to be able to edit
the<04:30:29.159> post<04:30:29.479> as<04:30:29.720> well<04:30:30.479> and<04:30:30.640> trust<04:30:30.920> me<04:30:31.319> this<04:30:31.439> is
04:30:31.550 --> 04:30:31.560 align:start position:0%
the post as well and trust me this is
04:30:31.560 --> 04:30:34.149 align:start position:0%
the post as well and trust me this is
going<04:30:31.760> to<04:30:31.880> be<04:30:32.080> simpler<04:30:32.760> than<04:30:32.920> you<04:30:33.040> might<04:30:33.279> think
04:30:34.149 --> 04:30:34.159 align:start position:0%
going to be simpler than you might think
04:30:34.159 --> 04:30:37.990 align:start position:0%
going to be simpler than you might think
you<04:30:34.359> have<04:30:34.479> to<04:30:34.640> go<04:30:34.800> to<04:30:35.000> the<04:30:35.199> edit<04:30:35.920> post<04:30:36.800> page<04:30:37.800> and
04:30:37.990 --> 04:30:38.000 align:start position:0%
you have to go to the edit post page and
04:30:38.000 --> 04:30:40.710 align:start position:0%
you have to go to the edit post page and
then<04:30:38.359> you<04:30:38.520> can<04:30:38.760> also<04:30:39.080> open<04:30:39.359> the<04:30:39.600> create<04:30:40.279> post
04:30:40.710 --> 04:30:40.720 align:start position:0%
then you can also open the create post
04:30:40.720 --> 04:30:43.630 align:start position:0%
then you can also open the create post
page<04:30:41.720> in<04:30:41.960> here<04:30:42.399> we<04:30:42.560> can<04:30:42.800> copy<04:30:43.080> the<04:30:43.239> entire
04:30:43.630 --> 04:30:43.640 align:start position:0%
page in here we can copy the entire
04:30:43.640 --> 04:30:45.910 align:start position:0%
page in here we can copy the entire
create<04:30:44.000> post<04:30:44.760> and<04:30:44.920> then<04:30:45.159> paste<04:30:45.399> it<04:30:45.600> in<04:30:45.760> the
04:30:45.910 --> 04:30:45.920 align:start position:0%
create post and then paste it in the
04:30:45.920 --> 04:30:48.950 align:start position:0%
create post and then paste it in the
edit<04:30:46.239> post<04:30:47.199> we<04:30:47.319> can<04:30:47.520> of<04:30:47.680> course<04:30:48.199> exchange<04:30:48.760> the
04:30:48.950 --> 04:30:48.960 align:start position:0%
edit post we can of course exchange the
04:30:48.960 --> 04:30:52.070 align:start position:0%
edit post we can of course exchange the
create<04:30:49.680> with<04:30:50.000> edit
04:30:52.070 --> 04:30:52.080 align:start position:0%
create with edit
04:30:52.080 --> 04:30:54.469 align:start position:0%
create with edit
post<04:30:53.080> now<04:30:53.319> it<04:30:53.439> seems<04:30:53.720> like<04:30:53.840> we're<04:30:54.040> creating
04:30:54.469 --> 04:30:54.479 align:start position:0%
post now it seems like we're creating
04:30:54.479 --> 04:30:56.910 align:start position:0%
post now it seems like we're creating
one<04:30:55.119> so<04:30:55.479> we<04:30:55.560> can<04:30:55.760> simply<04:30:56.080> change<04:30:56.479> this<04:30:56.640> to
04:30:56.910 --> 04:30:56.920 align:start position:0%
one so we can simply change this to
04:30:56.920 --> 04:31:00.389 align:start position:0%
one so we can simply change this to
instead<04:30:57.159> of<04:30:57.359> create<04:30:57.920> we<04:30:58.040> can<04:30:58.239> say<04:30:58.920> edit<04:30:59.920> and<04:31:00.199> in
04:31:00.389 --> 04:31:00.399 align:start position:0%
instead of create we can say edit and in
04:31:00.399 --> 04:31:02.590 align:start position:0%
instead of create we can say edit and in
this<04:31:00.640> case<04:31:01.080> we'll<04:31:01.359> also<04:31:01.600> have<04:31:01.720> to<04:31:01.920> load<04:31:02.399> the
04:31:02.590 --> 04:31:02.600 align:start position:0%
this case we'll also have to load the
04:31:02.600 --> 04:31:04.590 align:start position:0%
this case we'll also have to load the
existing<04:31:03.080> post<04:31:03.479> data<04:31:03.880> so<04:31:04.000> it's<04:31:04.119> going<04:31:04.239> to<04:31:04.359> be<04:31:04.479> a
04:31:04.590 --> 04:31:04.600 align:start position:0%
existing post data so it's going to be a
04:31:04.600 --> 04:31:07.109 align:start position:0%
existing post data so it's going to be a
bit<04:31:04.760> more<04:31:05.000> complicated<04:31:05.640> and<04:31:05.800> create<04:31:06.680> so<04:31:06.960> what
04:31:07.109 --> 04:31:07.119 align:start position:0%
bit more complicated and create so what
04:31:07.119 --> 04:31:10.469 align:start position:0%
bit more complicated and create so what
we<04:31:07.239> can<04:31:07.399> do<04:31:08.000> is<04:31:08.319> right<04:31:08.560> here<04:31:09.359> get<04:31:09.560> the<04:31:09.800> ID<04:31:10.359> of
04:31:10.469 --> 04:31:10.479 align:start position:0%
we can do is right here get the ID of
04:31:10.479 --> 04:31:12.750 align:start position:0%
we can do is right here get the ID of
the<04:31:10.640> post<04:31:10.960> we<04:31:11.040> want<04:31:11.159> to<04:31:11.319> edit<04:31:11.880> by<04:31:12.000> saying<04:31:12.359> const
04:31:12.750 --> 04:31:12.760 align:start position:0%
the post we want to edit by saying const
04:31:12.760 --> 04:31:15.630 align:start position:0%
the post we want to edit by saying const
ID<04:31:13.279> is<04:31:13.479> equal<04:31:13.840> to<04:31:14.239> use
04:31:15.630 --> 04:31:15.640 align:start position:0%
ID is equal to use
04:31:15.640 --> 04:31:18.590 align:start position:0%
ID is equal to use
perams<04:31:16.640> and<04:31:16.800> this<04:31:16.920> use<04:31:17.239> perams<04:31:17.960> is<04:31:18.239> coming
04:31:18.590 --> 04:31:18.600 align:start position:0%
perams and this use perams is coming
04:31:18.600 --> 04:31:21.830 align:start position:0%
perams and this use perams is coming
from<04:31:19.119> react<04:31:19.560> router<04:31:19.960> Dom<04:31:20.359> so<04:31:20.520> we<04:31:20.640> can<04:31:20.880> import
04:31:21.830 --> 04:31:21.840 align:start position:0%
from react router Dom so we can import
04:31:21.840 --> 04:31:26.670 align:start position:0%
from react router Dom so we can import
use<04:31:22.600> perams<04:31:23.600> from<04:31:24.080> react<04:31:24.880> router
04:31:26.670 --> 04:31:26.680 align:start position:0%
use perams from react router
04:31:26.680 --> 04:31:29.670 align:start position:0%
use perams from react router
Dom<04:31:27.680> there<04:31:27.880> we<04:31:28.080> go<04:31:28.680> and<04:31:28.920> we<04:31:29.000> need<04:31:29.159> to<04:31:29.279> get<04:31:29.439> the
04:31:29.670 --> 04:31:29.680 align:start position:0%
Dom there we go and we need to get the
04:31:29.680 --> 04:31:32.469 align:start position:0%
Dom there we go and we need to get the
post<04:31:30.239> details<04:31:31.239> so<04:31:31.479> to<04:31:31.720> get<04:31:31.840> to<04:31:32.000> the<04:31:32.159> post
04:31:32.469 --> 04:31:32.479 align:start position:0%
post details so to get to the post
04:31:32.479 --> 04:31:34.710 align:start position:0%
post details so to get to the post
details<04:31:33.040> we<04:31:33.159> have<04:31:33.279> to<04:31:33.439> create<04:31:33.720> an<04:31:33.960> API
04:31:34.710 --> 04:31:34.720 align:start position:0%
details we have to create an API
04:31:34.720 --> 04:31:37.870 align:start position:0%
details we have to create an API
function<04:31:35.279> so<04:31:35.520> so<04:31:35.640> let's<04:31:35.840> go<04:31:35.960> to<04:31:36.119> our<04:31:36.359> API<04:31:37.159> below
04:31:37.870 --> 04:31:37.880 align:start position:0%
function so so let's go to our API below
04:31:37.880 --> 04:31:42.070 align:start position:0%
function so so let's go to our API below
save<04:31:38.319> post<04:31:39.000> and<04:31:39.560> delete<04:31:39.960> saved<04:31:40.800> post<04:31:41.800> and<04:31:41.960> by
04:31:42.070 --> 04:31:42.080 align:start position:0%
save post and delete saved post and by
04:31:42.080 --> 04:31:43.790 align:start position:0%
save post and delete saved post and by
the<04:31:42.199> way<04:31:42.520> if<04:31:42.760> some<04:31:42.920> of<04:31:43.080> these<04:31:43.239> things<04:31:43.439> are<04:31:43.600> now
04:31:43.790 --> 04:31:43.800 align:start position:0%
the way if some of these things are now
04:31:43.800 --> 04:31:45.550 align:start position:0%
the way if some of these things are now
working<04:31:44.080> for<04:31:44.279> you<04:31:44.840> there's<04:31:45.080> going<04:31:45.199> to<04:31:45.319> be<04:31:45.439> a
04:31:45.550 --> 04:31:45.560 align:start position:0%
working for you there's going to be a
04:31:45.560 --> 04:31:48.910 align:start position:0%
working for you there's going to be a
complete<04:31:46.040> apit<04:31:46.560> TS<04:31:47.000> file<04:31:47.720> as<04:31:47.960> well<04:31:48.319> as<04:31:48.640> the
04:31:48.910 --> 04:31:48.920 align:start position:0%
complete apit TS file as well as the
04:31:48.920 --> 04:31:52.070 align:start position:0%
complete apit TS file as well as the
queries<04:31:49.279> and<04:31:49.439> mutations<04:31:49.960> file<04:31:50.359> down<04:31:50.800> below<04:31:51.800> so
04:31:52.070 --> 04:31:52.080 align:start position:0%
queries and mutations file down below so
04:31:52.080 --> 04:31:55.030 align:start position:0%
queries and mutations file down below so
let's<04:31:52.319> create<04:31:52.640> a<04:31:52.880> simple<04:31:53.319> get<04:31:53.600> post<04:31:53.920> by<04:31:54.119> ID<04:31:54.920> by
04:31:55.030 --> 04:31:55.040 align:start position:0%
let's create a simple get post by ID by
04:31:55.040 --> 04:31:57.469 align:start position:0%
let's create a simple get post by ID by
saying<04:31:55.680> export
04:31:57.469 --> 04:31:57.479 align:start position:0%
saying export
04:31:57.479 --> 04:32:02.309 align:start position:0%
saying export
async<04:31:58.600> function<04:31:59.600> get<04:32:00.119> post<04:32:00.680> by<04:32:01.080> ID<04:32:01.960> where<04:32:02.159> we
04:32:02.309 --> 04:32:02.319 align:start position:0%
async function get post by ID where we
04:32:02.319 --> 04:32:05.710 align:start position:0%
async function get post by ID where we
get<04:32:02.479> the<04:32:02.640> post<04:32:02.960> ID<04:32:03.680> of<04:32:03.840> a<04:32:04.000> typ<04:32:04.319> string<04:32:05.239> and<04:32:05.560> then
04:32:05.710 --> 04:32:05.720 align:start position:0%
get the post ID of a typ string and then
04:32:05.720 --> 04:32:08.950 align:start position:0%
get the post ID of a typ string and then
we<04:32:05.880> open<04:32:06.159> up<04:32:06.359> a<04:32:06.520> new<04:32:06.880> try<04:32:07.199> and<04:32:07.520> catch<04:32:07.920> Block<04:32:08.800> in
04:32:08.950 --> 04:32:08.960 align:start position:0%
we open up a new try and catch Block in
04:32:08.960 --> 04:32:11.269 align:start position:0%
we open up a new try and catch Block in
the<04:32:09.159> catch<04:32:09.479> we<04:32:09.720> conso<04:32:10.199> log<04:32:10.520> the
04:32:11.269 --> 04:32:11.279 align:start position:0%
the catch we conso log the
04:32:11.279 --> 04:32:15.109 align:start position:0%
the catch we conso log the
error<04:32:12.279> and<04:32:12.600> in<04:32:12.760> the<04:32:12.960> try<04:32:13.800> we<04:32:13.920> can<04:32:14.119> get<04:32:14.600> cons
04:32:15.109 --> 04:32:15.119 align:start position:0%
error and in the try we can get cons
04:32:15.119 --> 04:32:20.750 align:start position:0%
error and in the try we can get cons
post<04:32:15.960> is<04:32:16.239> equal<04:32:16.560> to<04:32:17.319> await<04:32:18.680> databases.<04:32:19.680> getet
04:32:20.750 --> 04:32:20.760 align:start position:0%
post is equal to await databases. getet
04:32:20.760 --> 04:32:23.710 align:start position:0%
post is equal to await databases. getet
document<04:32:21.760> we<04:32:21.840> want<04:32:22.000> to<04:32:22.199> get<04:32:22.359> it<04:32:22.720> from<04:32:23.199> aight
04:32:23.710 --> 04:32:23.720 align:start position:0%
document we want to get it from aight
04:32:23.720 --> 04:32:25.229 align:start position:0%
document we want to get it from aight
config<04:32:24.159> database
04:32:25.229 --> 04:32:25.239 align:start position:0%
config database
04:32:25.239 --> 04:32:28.750 align:start position:0%
config database
ID<04:32:26.239> from<04:32:26.920> the<04:32:27.319> post<04:32:27.800> collection<04:32:28.399> so<04:32:28.560> we<04:32:28.640> can
04:32:28.750 --> 04:32:28.760 align:start position:0%
ID from the post collection so we can
04:32:28.760 --> 04:32:31.349 align:start position:0%
ID from the post collection so we can
say<04:32:29.000> app<04:32:29.239> right<04:32:29.399> config<04:32:29.840> post<04:32:30.119> collection<04:32:30.560> ID
04:32:31.349 --> 04:32:31.359 align:start position:0%
say app right config post collection ID
04:32:31.359 --> 04:32:34.149 align:start position:0%
say app right config post collection ID
and<04:32:31.479> we<04:32:31.600> can<04:32:31.760> pass<04:32:32.040> the<04:32:32.159> post<04:32:32.439> ID<04:32:33.359> finally<04:32:34.040> we
04:32:34.149 --> 04:32:34.159 align:start position:0%
and we can pass the post ID finally we
04:32:34.159 --> 04:32:36.189 align:start position:0%
and we can pass the post ID finally we
can<04:32:34.520> return<04:32:35.040> the<04:32:35.199> post
04:32:36.189 --> 04:32:36.199 align:start position:0%
can return the post
04:32:36.199 --> 04:32:38.990 align:start position:0%
can return the post
post<04:32:37.199> now<04:32:37.479> we<04:32:37.640> have<04:32:37.800> this<04:32:38.000> function<04:32:38.720> and<04:32:38.880> we
04:32:38.990 --> 04:32:39.000 align:start position:0%
post now we have this function and we
04:32:39.000 --> 04:32:42.030 align:start position:0%
post now we have this function and we
have<04:32:39.119> to<04:32:39.279> consume<04:32:39.680> it<04:32:40.199> by<04:32:40.680> react<04:32:41.159> query<04:32:41.880> so
04:32:42.030 --> 04:32:42.040 align:start position:0%
have to consume it by react query so
04:32:42.040 --> 04:32:44.630 align:start position:0%
have to consume it by react query so
let's<04:32:42.239> go<04:32:42.399> to<04:32:42.600> queries<04:32:43.000> and
04:32:44.630 --> 04:32:44.640 align:start position:0%
let's go to queries and
04:32:44.640 --> 04:32:47.630 align:start position:0%
let's go to queries and
mutations<04:32:45.640> we<04:32:45.760> can<04:32:45.960> go<04:32:46.199> below<04:32:47.000> use<04:32:47.279> delete
04:32:47.630 --> 04:32:47.640 align:start position:0%
mutations we can go below use delete
04:32:47.640 --> 04:32:50.510 align:start position:0%
mutations we can go below use delete
saved<04:32:48.080> post<04:32:49.080> and<04:32:49.279> we<04:32:49.359> can<04:32:49.520> create<04:32:49.880> new<04:32:50.080> one
04:32:50.510 --> 04:32:50.520 align:start position:0%
saved post and we can create new one
04:32:50.520 --> 04:32:56.189 align:start position:0%
saved post and we can create new one
called<04:32:51.000> export<04:32:51.920> const<04:32:52.760> use<04:32:53.479> get<04:32:54.159> post<04:32:54.760> by
04:32:56.189 --> 04:32:56.199 align:start position:0%
called export const use get post by
04:32:56.199 --> 04:33:00.590 align:start position:0%
called export const use get post by
ID<04:32:57.199> here<04:32:57.880> we<04:32:58.000> can<04:32:58.119> say<04:32:58.560> return<04:32:59.040> use
04:33:00.590 --> 04:33:00.600 align:start position:0%
ID here we can say return use
04:33:00.600 --> 04:33:02.870 align:start position:0%
ID here we can say return use
Query<04:33:01.600> where<04:33:01.800> we're<04:33:01.920> going<04:33:02.040> to<04:33:02.159> have<04:33:02.279> a<04:33:02.479> query
04:33:02.870 --> 04:33:02.880 align:start position:0%
Query where we're going to have a query
04:33:02.880 --> 04:33:07.310 align:start position:0%
Query where we're going to have a query
key<04:33:03.840> of<04:33:04.279> an<04:33:04.480> array<04:33:05.039> of<04:33:05.439> query<04:33:06.000> uncore
04:33:07.310 --> 04:33:07.320 align:start position:0%
key of an array of query uncore
04:33:07.320 --> 04:33:12.949 align:start position:0%
key of an array of query uncore
keys.<04:33:08.320> get<04:33:09.000> post<04:33:09.719> by<04:33:10.359> ID<04:33:11.359> like<04:33:11.719> this<04:33:12.719> and<04:33:12.840> we
04:33:12.949 --> 04:33:12.959 align:start position:0%
keys. get post by ID like this and we
04:33:12.959 --> 04:33:15.109 align:start position:0%
keys. get post by ID like this and we
need<04:33:13.080> to<04:33:13.240> pass<04:33:13.520> the<04:33:13.639> post<04:33:13.920> ID<04:33:14.400> in
04:33:15.109 --> 04:33:15.119 align:start position:0%
need to pass the post ID in
04:33:15.119 --> 04:33:19.029 align:start position:0%
need to pass the post ID in
it<04:33:16.119> and<04:33:16.279> this<04:33:16.480> post<04:33:16.760> ID<04:33:17.160> is<04:33:17.400> coming<04:33:18.199> as<04:33:18.320> a<04:33:18.520> param
04:33:19.029 --> 04:33:19.039 align:start position:0%
it and this post ID is coming as a param
04:33:19.039 --> 04:33:21.670 align:start position:0%
it and this post ID is coming as a param
to<04:33:19.240> this<04:33:19.439> function<04:33:20.000> so<04:33:20.119> we<04:33:20.240> can<04:33:20.359> say<04:33:20.600> post<04:33:20.920> ID
04:33:21.670 --> 04:33:21.680 align:start position:0%
to this function so we can say post ID
04:33:21.680 --> 04:33:24.189 align:start position:0%
to this function so we can say post ID
of<04:33:21.840> a<04:33:22.039> typ<04:33:22.279> string<04:33:23.119> finally<04:33:23.719> which<04:33:23.920> function
04:33:24.189 --> 04:33:24.199 align:start position:0%
of a typ string finally which function
04:33:24.199 --> 04:33:26.629 align:start position:0%
of a typ string finally which function
are<04:33:24.279> we<04:33:24.400> going<04:33:24.520> to<04:33:24.639> call<04:33:25.039> to<04:33:25.240> query<04:33:25.680> this<04:33:25.879> post
04:33:26.629 --> 04:33:26.639 align:start position:0%
are we going to call to query this post
04:33:26.639 --> 04:33:29.510 align:start position:0%
are we going to call to query this post
we're<04:33:26.760> going<04:33:26.879> to<04:33:27.000> call<04:33:27.240> the<04:33:27.439> query<04:33:28.320> FN<04:33:29.320> which
04:33:29.510 --> 04:33:29.520 align:start position:0%
we're going to call the query FN which
04:33:29.520 --> 04:33:33.230 align:start position:0%
we're going to call the query FN which
is<04:33:29.639> going<04:33:29.799> to<04:33:30.000> call<04:33:30.840> the<04:33:31.080> get<04:33:31.600> posted<04:33:32.000> by<04:33:32.240> ID<04:33:33.000> to
04:33:33.230 --> 04:33:33.240 align:start position:0%
is going to call the get posted by ID to
04:33:33.240 --> 04:33:35.590 align:start position:0%
is going to call the get posted by ID to
which<04:33:33.400> we<04:33:33.600> pass<04:33:33.840> the<04:33:34.000> post<04:33:34.320> ID<04:33:35.039> and<04:33:35.160> this<04:33:35.480> of
04:33:35.590 --> 04:33:35.600 align:start position:0%
which we pass the post ID and this of
04:33:35.600 --> 04:33:38.551 align:start position:0%
which we pass the post ID and this of
course<04:33:35.840> has<04:33:35.959> to<04:33:36.080> be<04:33:36.240> imported<04:33:37.000> from<04:33:37.680> the<04:33:37.879> top
04:33:38.551 --> 04:33:38.561 align:start position:0%
course has to be imported from the top
04:33:38.561 --> 04:33:41.789 align:start position:0%
course has to be imported from the top
right<04:33:38.760> here<04:33:39.000> from<04:33:39.240> aight<04:33:39.719> API<04:33:40.680> get<04:33:41.039> posed<04:33:41.480> by
04:33:41.789 --> 04:33:41.799 align:start position:0%
right here from aight API get posed by
04:33:41.799 --> 04:33:45.390 align:start position:0%
right here from aight API get posed by
ID<04:33:42.520> I<04:33:42.639> think<04:33:42.840> it's<04:33:43.359> here<04:33:43.959> there<04:33:44.119> we<04:33:44.320> go<04:33:45.199> and
04:33:45.390 --> 04:33:45.400 align:start position:0%
ID I think it's here there we go and
04:33:45.400 --> 04:33:46.949 align:start position:0%
ID I think it's here there we go and
once<04:33:45.520> you<04:33:45.680> do<04:33:45.879> that<04:33:46.080> we'll<04:33:46.320> also<04:33:46.600> have<04:33:46.760> a
04:33:46.949 --> 04:33:46.959 align:start position:0%
once you do that we'll also have a
04:33:46.959 --> 04:33:49.429 align:start position:0%
once you do that we'll also have a
special<04:33:47.359> property<04:33:47.920> called
04:33:49.429 --> 04:33:49.439 align:start position:0%
special property called
04:33:49.439 --> 04:33:52.070 align:start position:0%
special property called
enabled<04:33:50.439> so<04:33:50.680> you<04:33:50.799> want<04:33:50.920> to<04:33:51.039> set<04:33:51.359> this<04:33:51.480> defaults
04:33:52.070 --> 04:33:52.080 align:start position:0%
enabled so you want to set this defaults
04:33:52.080 --> 04:33:54.349 align:start position:0%
enabled so you want to set this defaults
to<04:33:52.320> disable<04:33:52.879> automatic<04:33:53.439> ref<04:33:53.760> fetching<04:33:54.199> when
04:33:54.349 --> 04:33:54.359 align:start position:0%
to disable automatic ref fetching when
04:33:54.359 --> 04:33:56.470 align:start position:0%
to disable automatic ref fetching when
the<04:33:54.480> query<04:33:54.840> mounts<04:33:55.359> or<04:33:55.600> the<04:33:55.719> query<04:33:56.039> Keys<04:33:56.240> is
04:33:56.470 --> 04:33:56.480 align:start position:0%
the query mounts or the query Keys is
04:33:56.480 --> 04:33:58.709 align:start position:0%
the query mounts or the query Keys is
changed<04:33:57.480> so<04:33:57.680> we<04:33:57.799> want<04:33:57.920> to<04:33:58.160> enable<04:33:58.600> the
04:33:58.709 --> 04:33:58.719 align:start position:0%
changed so we want to enable the
04:33:58.719 --> 04:34:00.670 align:start position:0%
changed so we want to enable the
fetching<04:33:59.520> only<04:33:59.920> when<04:34:00.080> we're<04:34:00.240> fetching<04:34:00.520> the
04:34:00.670 --> 04:34:00.680 align:start position:0%
fetching only when we're fetching the
04:34:00.680 --> 04:34:03.029 align:start position:0%
fetching only when we're fetching the
data<04:34:00.879> for<04:34:01.199> another<04:34:01.639> ID<04:34:02.279> if<04:34:02.359> we're<04:34:02.561> fetching<04:34:02.879> it
04:34:03.029 --> 04:34:03.039 align:start position:0%
data for another ID if we're fetching it
04:34:03.039 --> 04:34:04.949 align:start position:0%
data for another ID if we're fetching it
again<04:34:03.240> for<04:34:03.439> the<04:34:03.600> same<04:34:03.799> one<04:34:04.400> then<04:34:04.680> we're<04:34:04.840> going
04:34:04.949 --> 04:34:04.959 align:start position:0%
again for the same one then we're going
04:34:04.959 --> 04:34:07.349 align:start position:0%
again for the same one then we're going
to<04:34:05.039> get<04:34:05.359> the<04:34:05.480> same<04:34:05.799> details<04:34:06.520> if<04:34:06.639> the<04:34:06.799> post<04:34:07.080> ID
04:34:07.349 --> 04:34:07.359 align:start position:0%
to get the same details if the post ID
04:34:07.359 --> 04:34:09.510 align:start position:0%
to get the same details if the post ID
didn't<04:34:07.639> changed<04:34:08.400> again<04:34:08.760> this<04:34:08.879> is<04:34:09.000> a<04:34:09.199> small
04:34:09.510 --> 04:34:09.520 align:start position:0%
didn't changed again this is a small
04:34:09.520 --> 04:34:12.670 align:start position:0%
didn't changed again this is a small
step<04:34:09.879> here<04:34:10.480> nicely<04:34:10.920> built<04:34:11.199> into<04:34:11.480> react<04:34:11.879> query
04:34:12.670 --> 04:34:12.680 align:start position:0%
step here nicely built into react query
04:34:12.680 --> 04:34:15.029 align:start position:0%
step here nicely built into react query
but<04:34:12.840> it<04:34:12.959> allows<04:34:13.320> us<04:34:13.480> to<04:34:13.760> cache<04:34:14.199> data<04:34:14.520> and<04:34:14.680> fetch
04:34:15.029 --> 04:34:15.039 align:start position:0%
but it allows us to cache data and fetch
04:34:15.039 --> 04:34:17.390 align:start position:0%
but it allows us to cache data and fetch
data<04:34:15.279> more<04:34:15.719> efficiently<04:34:16.719> so<04:34:16.920> now<04:34:17.080> we<04:34:17.240> have
04:34:17.390 --> 04:34:17.400 align:start position:0%
data more efficiently so now we have
04:34:17.400 --> 04:34:20.269 align:start position:0%
data more efficiently so now we have
this<04:34:17.561> use<04:34:17.879> get<04:34:18.119> post<04:34:18.400> by<04:34:18.600> ID<04:34:19.520> and<04:34:19.639> we<04:34:19.719> can<04:34:19.920> go
04:34:20.269 --> 04:34:20.279 align:start position:0%
this use get post by ID and we can go
04:34:20.279 --> 04:34:23.189 align:start position:0%
this use get post by ID and we can go
back<04:34:20.600> to<04:34:21.480> right<04:34:21.719> here<04:34:22.000> in<04:34:22.160> the<04:34:22.279> edit
04:34:23.189 --> 04:34:23.199 align:start position:0%
back to right here in the edit
04:34:23.199 --> 04:34:27.390 align:start position:0%
back to right here in the edit
post<04:34:24.199> where<04:34:24.520> we<04:34:24.639> can<04:34:24.799> use<04:34:25.039> it<04:34:25.520> by<04:34:25.680> saying<04:34:26.240> const
04:34:27.390 --> 04:34:27.400 align:start position:0%
post where we can use it by saying const
04:34:27.400 --> 04:34:31.990 align:start position:0%
post where we can use it by saying const
data<04:34:28.400> is<04:34:28.561> equal<04:34:28.799> to<04:34:29.000> post<04:34:29.959> and<04:34:30.320> is<04:34:30.799> pending<04:34:31.799> is
04:34:31.990 --> 04:34:32.000 align:start position:0%
data is equal to post and is pending is
04:34:32.000 --> 04:34:37.510 align:start position:0%
data is equal to post and is pending is
equal<04:34:32.279> to<04:34:32.840> use<04:34:33.879> get<04:34:34.879> post<04:34:35.719> by<04:34:36.080> ID<04:34:37.039> of<04:34:37.199> course<04:34:37.400> I
04:34:37.510 --> 04:34:37.520 align:start position:0%
equal to use get post by ID of course I
04:34:37.520 --> 04:34:39.551 align:start position:0%
equal to use get post by ID of course I
have<04:34:37.639> to<04:34:37.760> spell<04:34:38.039> it<04:34:38.199> correctly<04:34:38.799> and<04:34:39.000> pass<04:34:39.240> the
04:34:39.551 --> 04:34:39.561 align:start position:0%
have to spell it correctly and pass the
04:34:39.561 --> 04:34:42.390 align:start position:0%
have to spell it correctly and pass the
ID<04:34:40.561> and<04:34:40.680> then<04:34:40.799> we<04:34:40.959> have<04:34:41.039> to<04:34:41.240> import<04:34:41.600> it<04:34:41.959> from
04:34:42.390 --> 04:34:42.400 align:start position:0%
ID and then we have to import it from
04:34:42.400 --> 04:34:43.910 align:start position:0%
ID and then we have to import it from
queries<04:34:42.760> and
04:34:43.910 --> 04:34:43.920 align:start position:0%
queries and
04:34:43.920 --> 04:34:46.830 align:start position:0%
queries and
mutations<04:34:44.920> the<04:34:45.080> ID<04:34:45.639> has<04:34:45.799> to<04:34:45.959> be<04:34:46.080> a<04:34:46.240> string<04:34:46.719> so
04:34:46.830 --> 04:34:46.840 align:start position:0%
mutations the ID has to be a string so
04:34:46.840 --> 04:34:48.709 align:start position:0%
mutations the ID has to be a string so
we're<04:34:47.000> going<04:34:47.080> to<04:34:47.279> pass<04:34:47.520> either<04:34:47.879> this<04:34:48.279> or<04:34:48.561> an
04:34:48.709 --> 04:34:48.719 align:start position:0%
we're going to pass either this or an
04:34:48.719 --> 04:34:51.990 align:start position:0%
we're going to pass either this or an
empty<04:34:49.240> string<04:34:50.240> then<04:34:50.639> if<04:34:50.840> we<04:34:51.000> are<04:34:51.400> pending
04:34:51.990 --> 04:34:52.000 align:start position:0%
empty string then if we are pending
04:34:52.000 --> 04:34:53.869 align:start position:0%
empty string then if we are pending
meaning<04:34:52.279> if<04:34:52.400> we're<04:34:52.561> loading<04:34:52.879> the<04:34:53.039> data<04:34:53.680> in
04:34:53.869 --> 04:34:53.879 align:start position:0%
meaning if we're loading the data in
04:34:53.879 --> 04:34:56.029 align:start position:0%
meaning if we're loading the data in
that<04:34:54.080> case<04:34:54.359> we<04:34:54.480> can<04:34:54.600> say<04:34:55.080> return<04:34:55.520> if<04:34:55.760> is
04:34:56.029 --> 04:34:56.039 align:start position:0%
that case we can say return if is
04:34:56.039 --> 04:34:58.390 align:start position:0%
that case we can say return if is
pending<04:34:57.039> then<04:34:57.279> we<04:34:57.359> can<04:34:57.561> simply<04:34:58.000> return
04:34:58.390 --> 04:34:58.400 align:start position:0%
pending then we can simply return
04:34:58.400 --> 04:35:01.551 align:start position:0%
pending then we can simply return
something<04:34:58.799> like<04:34:59.039> a<04:34:59.719> loader<04:35:00.719> like<04:35:00.959> this<04:35:01.439> which
04:35:01.551 --> 04:35:01.561 align:start position:0%
something like a loader like this which
04:35:01.561 --> 04:35:04.189 align:start position:0%
something like a loader like this which
is<04:35:01.719> coming<04:35:02.000> from<04:35:02.359> components<04:35:02.920> shared
04:35:04.189 --> 04:35:04.199 align:start position:0%
is coming from components shared
04:35:04.199 --> 04:35:07.349 align:start position:0%
is coming from components shared
loader<04:35:05.320> but<04:35:05.520> now<04:35:05.879> once<04:35:06.039> we<04:35:06.199> do<04:35:06.400> fetch<04:35:06.680> the<04:35:06.840> data
04:35:07.349 --> 04:35:07.359 align:start position:0%
loader but now once we do fetch the data
04:35:07.359 --> 04:35:09.150 align:start position:0%
loader but now once we do fetch the data
what<04:35:07.480> do<04:35:07.600> we<04:35:07.719> want<04:35:07.799> to<04:35:07.959> do<04:35:08.119> with<04:35:08.240> it<04:35:08.799> well<04:35:09.000> we
04:35:09.150 --> 04:35:09.160 align:start position:0%
what do we want to do with it well we
04:35:09.160 --> 04:35:12.310 align:start position:0%
what do we want to do with it well we
simply<04:35:09.439> want<04:35:09.520> to<04:35:09.840> pass<04:35:10.039> it<04:35:10.320> over<04:35:11.199> to<04:35:11.680> our<04:35:11.920> post
04:35:12.310 --> 04:35:12.320 align:start position:0%
simply want to pass it over to our post
04:35:12.320 --> 04:35:15.470 align:start position:0%
simply want to pass it over to our post
form<04:35:13.039> with<04:35:13.279> an<04:35:13.561> action<04:35:14.160> equal<04:35:14.480> to<04:35:14.719> update
04:35:15.470 --> 04:35:15.480 align:start position:0%
form with an action equal to update
04:35:15.480 --> 04:35:18.029 align:start position:0%
form with an action equal to update
because<04:35:15.719> now<04:35:15.879> we're<04:35:16.119> updating<04:35:17.119> and<04:35:17.320> a<04:35:17.561> post
04:35:18.029 --> 04:35:18.039 align:start position:0%
because now we're updating and a post
04:35:18.039 --> 04:35:20.510 align:start position:0%
because now we're updating and a post
equal<04:35:18.359> to<04:35:18.600> post<04:35:19.600> there<04:35:19.719> we<04:35:19.920> go<04:35:20.160> you<04:35:20.240> can<04:35:20.359> see
04:35:20.510 --> 04:35:20.520 align:start position:0%
equal to post there we go you can see
04:35:20.520 --> 04:35:23.109 align:start position:0%
equal to post there we go you can see
the<04:35:20.680> data<04:35:20.920> was<04:35:21.039> already<04:35:21.719> populated<04:35:22.719> how<04:35:22.879> did
04:35:23.109 --> 04:35:23.119 align:start position:0%
the data was already populated how did
04:35:23.119 --> 04:35:25.349 align:start position:0%
the data was already populated how did
that<04:35:23.320> happen<04:35:23.840> well<04:35:24.000> more<04:35:24.160> than<04:35:24.359> that<04:35:24.561> soon
04:35:25.349 --> 04:35:25.359 align:start position:0%
that happen well more than that soon
04:35:25.359 --> 04:35:28.029 align:start position:0%
that happen well more than that soon
let's<04:35:25.639> dive<04:35:25.920> into<04:35:26.240> the<04:35:26.400> post<04:35:26.719> form<04:35:27.680> we<04:35:27.799> can
04:35:28.029 --> 04:35:28.039 align:start position:0%
let's dive into the post form we can
04:35:28.039 --> 04:35:31.310 align:start position:0%
let's dive into the post form we can
also<04:35:28.561> accept<04:35:29.080> the<04:35:29.719> action<04:35:30.719> and<04:35:30.840> we<04:35:30.959> can<04:35:31.080> say
04:35:31.310 --> 04:35:31.320 align:start position:0%
also accept the action and we can say
04:35:31.320 --> 04:35:35.349 align:start position:0%
also accept the action and we can say
that<04:35:31.639> action<04:35:32.439> is<04:35:32.680> either<04:35:32.959> going<04:35:33.160> to<04:35:33.359> be<04:35:34.240> create
04:35:35.349 --> 04:35:35.359 align:start position:0%
that action is either going to be create
04:35:35.359 --> 04:35:38.429 align:start position:0%
that action is either going to be create
or<04:35:35.879> it's<04:35:36.039> going<04:35:36.240> to<04:35:36.400> be<04:35:37.080> update<04:35:38.000> so<04:35:38.199> now<04:35:38.320> we
04:35:38.429 --> 04:35:38.439 align:start position:0%
or it's going to be update so now we
04:35:38.439 --> 04:35:40.709 align:start position:0%
or it's going to be update so now we
know<04:35:38.719> exactly<04:35:39.160> what<04:35:39.279> we're<04:35:39.439> getting<04:35:39.680> in<04:35:40.520> and
04:35:40.709 --> 04:35:40.719 align:start position:0%
know exactly what we're getting in and
04:35:40.719 --> 04:35:42.990 align:start position:0%
know exactly what we're getting in and
all<04:35:40.959> the<04:35:41.119> data<04:35:41.359> automatically<04:35:41.879> got<04:35:42.160> populated
04:35:42.990 --> 04:35:43.000 align:start position:0%
all the data automatically got populated
04:35:43.000 --> 04:35:44.830 align:start position:0%
all the data automatically got populated
because<04:35:43.279> we're<04:35:43.520> accepting<04:35:44.000> this<04:35:44.199> post<04:35:44.639> right
04:35:44.830 --> 04:35:44.840 align:start position:0%
because we're accepting this post right
04:35:44.840 --> 04:35:47.990 align:start position:0%
because we're accepting this post right
here<04:35:45.199> as<04:35:45.320> a<04:35:45.680> prop<04:35:46.680> but<04:35:46.959> the<04:35:47.119> question<04:35:47.439> is<04:35:47.840> how
04:35:47.990 --> 04:35:48.000 align:start position:0%
here as a prop but the question is how
04:35:48.000 --> 04:35:50.750 align:start position:0%
here as a prop but the question is how
can<04:35:48.119> we<04:35:48.279> get<04:35:48.439> the<04:35:48.680> file<04:35:49.279> to<04:35:49.520> get<04:35:49.799> updated<04:35:50.561> as
04:35:50.750 --> 04:35:50.760 align:start position:0%
can we get the file to get updated as
04:35:50.760 --> 04:35:52.629 align:start position:0%
can we get the file to get updated as
well<04:35:51.320> because<04:35:51.561> you<04:35:51.680> can<04:35:51.799> see<04:35:52.080> right<04:35:52.240> here<04:35:52.520> we
04:35:52.629 --> 04:35:52.639 align:start position:0%
well because you can see right here we
04:35:52.639 --> 04:35:55.869 align:start position:0%
well because you can see right here we
don't<04:35:52.920> see<04:35:53.240> the<04:35:53.439> photo<04:35:53.920> or<04:35:54.080> the<04:35:54.480> file<04:35:55.480> and<04:35:55.639> to
04:35:55.869 --> 04:35:55.879 align:start position:0%
don't see the photo or the file and to
04:35:55.879 --> 04:35:58.269 align:start position:0%
don't see the photo or the file and to
get<04:35:56.039> it<04:35:56.359> we<04:35:56.480> have<04:35:56.600> to<04:35:56.799> look<04:35:57.160> into<04:35:57.600> our<04:35:57.920> file
04:35:58.269 --> 04:35:58.279 align:start position:0%
get it we have to look into our file
04:35:58.279 --> 04:36:00.349 align:start position:0%
get it we have to look into our file
uploader<04:35:58.840> component<04:35:59.520> that<04:35:59.680> we<04:35:59.799> have<04:35:59.959> created
04:36:00.349 --> 04:36:00.359 align:start position:0%
uploader component that we have created
04:36:00.359 --> 04:36:02.830 align:start position:0%
uploader component that we have created
not<04:36:00.639> that<04:36:00.799> long<04:36:01.039> ago<04:36:01.760> to<04:36:02.000> it<04:36:02.240> we're<04:36:02.520> passing
04:36:02.830 --> 04:36:02.840 align:start position:0%
not that long ago to it we're passing
04:36:02.840 --> 04:36:06.349 align:start position:0%
not that long ago to it we're passing
the<04:36:02.959> media<04:36:03.320> URL<04:36:04.240> post<04:36:04.760> image<04:36:05.160> URL<04:36:06.000> so<04:36:06.240> it
04:36:06.349 --> 04:36:06.359 align:start position:0%
the media URL post image URL so it
04:36:06.359 --> 04:36:08.349 align:start position:0%
the media URL post image URL so it
should<04:36:06.561> be<04:36:06.719> able<04:36:06.920> to<04:36:07.119> read<04:36:07.719> the<04:36:07.879> image<04:36:08.160> we're
04:36:08.349 --> 04:36:08.359 align:start position:0%
should be able to read the image we're
04:36:08.359 --> 04:36:10.310 align:start position:0%
should be able to read the image we're
showing<04:36:09.279> so<04:36:09.439> if<04:36:09.520> you<04:36:09.680> go<04:36:09.879> back<04:36:10.039> to<04:36:10.160> the
04:36:10.310 --> 04:36:10.320 align:start position:0%
showing so if you go back to the
04:36:10.320 --> 04:36:13.109 align:start position:0%
showing so if you go back to the
homepage<04:36:11.080> and<04:36:11.279> click<04:36:11.639> edit<04:36:12.639> it<04:36:12.719> should<04:36:12.920> be
04:36:13.109 --> 04:36:13.119 align:start position:0%
homepage and click edit it should be
04:36:13.119 --> 04:36:15.869 align:start position:0%
homepage and click edit it should be
able<04:36:13.279> to<04:36:13.400> read<04:36:13.639> it<04:36:14.199> but<04:36:14.480> it<04:36:14.680> doesn't<04:36:15.480> so<04:36:15.680> let's
04:36:15.869 --> 04:36:15.879 align:start position:0%
able to read it but it doesn't so let's
04:36:15.879 --> 04:36:18.070 align:start position:0%
able to read it but it doesn't so let's
simply<04:36:16.160> conso<04:36:16.600> log<04:36:16.920> right<04:36:17.039> here<04:36:17.199> at<04:36:17.320> the<04:36:17.520> top
04:36:18.070 --> 04:36:18.080 align:start position:0%
simply conso log right here at the top
04:36:18.080 --> 04:36:22.470 align:start position:0%
simply conso log right here at the top
whether<04:36:18.279> we're<04:36:18.480> getting<04:36:19.199> post<04:36:19.879> dot<04:36:20.760> image<04:36:21.480> URL
04:36:22.470 --> 04:36:22.480 align:start position:0%
whether we're getting post dot image URL
04:36:22.480 --> 04:36:27.990 align:start position:0%
whether we're getting post dot image URL
so<04:36:22.639> let's<04:36:22.879> conso<04:36:23.279> log<04:36:24.279> the<04:36:24.959> post.<04:36:25.959> image<04:36:27.000> URL
04:36:27.990 --> 04:36:28.000 align:start position:0%
so let's conso log the post. image URL
04:36:28.000 --> 04:36:30.070 align:start position:0%
so let's conso log the post. image URL
and<04:36:28.199> then<04:36:28.439> we<04:36:28.600> can<04:36:29.119> save
04:36:30.070 --> 04:36:30.080 align:start position:0%
and then we can save
04:36:30.080 --> 04:36:34.310 align:start position:0%
and then we can save
it<04:36:31.080> this<04:36:31.400> post<04:36:32.039> is<04:36:32.400> coming<04:36:32.840> from<04:36:33.400> let's<04:36:33.600> see
04:36:34.310 --> 04:36:34.320 align:start position:0%
it this post is coming from let's see
04:36:34.320 --> 04:36:35.590 align:start position:0%
it this post is coming from let's see
here
04:36:35.590 --> 04:36:35.600 align:start position:0%
here
04:36:35.600 --> 04:36:36.670 align:start position:0%
here
it's<04:36:35.760> saying<04:36:36.000> that<04:36:36.320> sometimes<04:36:36.520> it's
04:36:36.670 --> 04:36:36.680 align:start position:0%
it's saying that sometimes it's
04:36:36.680 --> 04:36:38.629 align:start position:0%
it's saying that sometimes it's
undefined<04:36:37.359> so<04:36:37.520> we<04:36:37.639> have<04:36:37.760> to<04:36:37.959> add<04:36:38.119> a<04:36:38.359> question
04:36:38.629 --> 04:36:38.639 align:start position:0%
undefined so we have to add a question
04:36:38.639 --> 04:36:40.789 align:start position:0%
undefined so we have to add a question
mark<04:36:39.000> so<04:36:39.160> our<04:36:39.359> app<04:36:39.561> doesn't<04:36:39.840> break<04:36:40.561> that's
04:36:40.789 --> 04:36:40.799 align:start position:0%
mark so our app doesn't break that's
04:36:40.799 --> 04:36:44.269 align:start position:0%
mark so our app doesn't break that's
great<04:36:41.760> now<04:36:42.240> let's<04:36:42.480> open<04:36:42.719> up<04:36:42.879> the
04:36:44.269 --> 04:36:44.279 align:start position:0%
great now let's open up the
04:36:44.279 --> 04:36:46.470 align:start position:0%
great now let's open up the
console<04:36:45.279> and<04:36:45.600> let's
04:36:46.470 --> 04:36:46.480 align:start position:0%
console and let's
04:36:46.480 --> 04:36:49.109 align:start position:0%
console and let's
reload<04:36:47.480> and<04:36:47.600> as<04:36:47.719> you<04:36:47.799> can<04:36:47.920> see<04:36:48.160> we<04:36:48.359> indeed<04:36:48.760> do
04:36:49.109 --> 04:36:49.119 align:start position:0%
reload and as you can see we indeed do
04:36:49.119 --> 04:36:51.789 align:start position:0%
reload and as you can see we indeed do
get<04:36:49.520> a<04:36:49.760> post<04:36:50.279> which<04:36:50.400> is<04:36:50.520> our<04:36:50.760> exact<04:36:51.240> image
04:36:51.789 --> 04:36:51.799 align:start position:0%
get a post which is our exact image
04:36:51.799 --> 04:36:53.670 align:start position:0%
get a post which is our exact image
which<04:36:51.920> is<04:36:52.160> great<04:36:52.799> so<04:36:52.959> we<04:36:53.080> just<04:36:53.199> have<04:36:53.320> to<04:36:53.439> figure
04:36:53.670 --> 04:36:53.680 align:start position:0%
which is great so we just have to figure
04:36:53.680 --> 04:36:55.629 align:start position:0%
which is great so we just have to figure
out<04:36:53.920> how<04:36:54.039> to<04:36:54.160> show<04:36:54.439> it<04:36:54.719> right<04:36:54.920> here<04:36:55.359> in<04:36:55.480> the
04:36:55.629 --> 04:36:55.639 align:start position:0%
out how to show it right here in the
04:36:55.639 --> 04:36:57.990 align:start position:0%
out how to show it right here in the
photos<04:36:56.561> and<04:36:56.719> that's<04:36:56.959> most<04:36:57.199> likely<04:36:57.480> have<04:36:57.600> to<04:36:57.719> do
04:36:57.990 --> 04:36:58.000 align:start position:0%
photos and that's most likely have to do
04:36:58.000 --> 04:37:00.830 align:start position:0%
photos and that's most likely have to do
with<04:36:58.199> going<04:36:58.561> into<04:36:59.199> the<04:36:59.320> file<04:36:59.719> uploader<04:37:00.719> and
04:37:00.830 --> 04:37:00.840 align:start position:0%
with going into the file uploader and
04:37:00.840 --> 04:37:03.230 align:start position:0%
with going into the file uploader and
then<04:37:01.080> using<04:37:01.439> the<04:37:01.561> media<04:37:01.920> URL<04:37:02.600> yes<04:37:02.920> as<04:37:03.000> you<04:37:03.119> can
04:37:03.230 --> 04:37:03.240 align:start position:0%
then using the media URL yes as you can
04:37:03.240 --> 04:37:05.910 align:start position:0%
then using the media URL yes as you can
see<04:37:03.439> we're<04:37:03.639> currently<04:37:04.160> not<04:37:04.520> using<04:37:04.840> it<04:37:05.480> so<04:37:05.799> we
04:37:05.910 --> 04:37:05.920 align:start position:0%
see we're currently not using it so we
04:37:05.920 --> 04:37:08.590 align:start position:0%
see we're currently not using it so we
can<04:37:06.160> simply<04:37:06.480> set<04:37:06.719> the<04:37:06.840> media<04:37:07.199> URL<04:37:07.879> to<04:37:08.080> be<04:37:08.320> a
04:37:08.590 --> 04:37:08.600 align:start position:0%
can simply set the media URL to be a
04:37:08.600 --> 04:37:11.949 align:start position:0%
can simply set the media URL to be a
default<04:37:09.320> State<04:37:09.920> the<04:37:10.160> default<04:37:10.680> file<04:37:11.000> URL<04:37:11.840> and
04:37:11.949 --> 04:37:11.959 align:start position:0%
default State the default file URL and
04:37:11.959 --> 04:37:14.910 align:start position:0%
default State the default file URL and
if<04:37:12.080> we<04:37:12.240> do<04:37:12.480> that<04:37:13.039> immediately<04:37:13.840> it<04:37:14.080> gets
04:37:14.910 --> 04:37:14.920 align:start position:0%
if we do that immediately it gets
04:37:14.920 --> 04:37:18.510 align:start position:0%
if we do that immediately it gets
updated<04:37:15.920> so<04:37:16.199> now<04:37:16.719> if<04:37:16.840> we<04:37:17.119> reload<04:37:18.119> as<04:37:18.240> you<04:37:18.359> can
04:37:18.510 --> 04:37:18.520 align:start position:0%
updated so now if we reload as you can
04:37:18.520 --> 04:37:22.349 align:start position:0%
updated so now if we reload as you can
see<04:37:19.400> once<04:37:19.561> you<04:37:19.760> visit<04:37:20.240> the<04:37:20.600> create<04:37:21.400> route<04:37:22.039> it's
04:37:22.349 --> 04:37:22.359 align:start position:0%
see once you visit the create route it's
04:37:22.359 --> 04:37:25.390 align:start position:0%
see once you visit the create route it's
empty<04:37:23.359> but<04:37:23.639> if<04:37:23.760> you<04:37:23.920> go<04:37:24.119> to<04:37:24.279> the<04:37:24.439> edit<04:37:25.119> you<04:37:25.240> can
04:37:25.390 --> 04:37:25.400 align:start position:0%
empty but if you go to the edit you can
04:37:25.400 --> 04:37:28.269 align:start position:0%
empty but if you go to the edit you can
see<04:37:25.760> right<04:37:26.000> here<04:37:26.840> that<04:37:27.119> it<04:37:27.320> nicely<04:37:27.719> gets<04:37:28.039> all
04:37:28.269 --> 04:37:28.279 align:start position:0%
see right here that it nicely gets all
04:37:28.279 --> 04:37:31.189 align:start position:0%
see right here that it nicely gets all
the<04:37:28.480> data<04:37:29.080> the<04:37:29.240> photo<04:37:29.840> as<04:37:30.080> well<04:37:30.760> and<04:37:30.920> now<04:37:31.119> you
04:37:31.189 --> 04:37:31.199 align:start position:0%
the data the photo as well and now you
04:37:31.199 --> 04:37:33.390 align:start position:0%
the data the photo as well and now you
should<04:37:31.400> be<04:37:31.520> able<04:37:31.719> to<04:37:31.920> resubmit<04:37:32.561> the<04:37:32.680> form<04:37:33.199> to
04:37:33.390 --> 04:37:33.400 align:start position:0%
should be able to resubmit the form to
04:37:33.400 --> 04:37:35.670 align:start position:0%
should be able to resubmit the form to
then<04:37:33.600> edit<04:37:34.039> the<04:37:34.240> actual<04:37:34.561> details
04:37:35.670 --> 04:37:35.680 align:start position:0%
then edit the actual details
04:37:35.680 --> 04:37:37.470 align:start position:0%
then edit the actual details
don't<04:37:35.959> click<04:37:36.160> it<04:37:36.400> just<04:37:36.639> yet<04:37:37.000> because<04:37:37.240> if<04:37:37.320> you
04:37:37.470 --> 04:37:37.480 align:start position:0%
don't click it just yet because if you
04:37:37.480 --> 04:37:39.150 align:start position:0%
don't click it just yet because if you
click<04:37:37.719> it<04:37:37.879> now<04:37:38.199> it's<04:37:38.359> going<04:37:38.520> to<04:37:38.719> create
04:37:39.150 --> 04:37:39.160 align:start position:0%
click it now it's going to create
04:37:39.160 --> 04:37:41.910 align:start position:0%
click it now it's going to create
another<04:37:39.639> post<04:37:40.480> because<04:37:41.119> if<04:37:41.240> you<04:37:41.400> go<04:37:41.561> to<04:37:41.719> the
04:37:41.910 --> 04:37:41.920 align:start position:0%
another post because if you go to the
04:37:41.920 --> 04:37:45.390 align:start position:0%
another post because if you go to the
edit<04:37:42.840> or<04:37:43.561> onsubmit<04:37:44.561> in<04:37:44.760> here<04:37:44.920> we're<04:37:45.160> only
04:37:45.390 --> 04:37:45.400 align:start position:0%
edit or onsubmit in here we're only
04:37:45.400 --> 04:37:47.510 align:start position:0%
edit or onsubmit in here we're only
calling<04:37:45.760> the<04:37:45.959> create<04:37:46.359> post<04:37:47.000> but<04:37:47.119> we're<04:37:47.320> not
04:37:47.510 --> 04:37:47.520 align:start position:0%
calling the create post but we're not
04:37:47.520 --> 04:37:49.470 align:start position:0%
calling the create post but we're not
calling<04:37:47.920> edit<04:37:48.279> post<04:37:48.799> which<04:37:48.959> we<04:37:49.119> have<04:37:49.240> to
04:37:49.470 --> 04:37:49.480 align:start position:0%
calling edit post which we have to
04:37:49.480 --> 04:37:52.551 align:start position:0%
calling edit post which we have to
create<04:37:50.480> so<04:37:51.279> one<04:37:51.480> thing<04:37:51.639> that<04:37:51.760> I<04:37:51.879> noticed<04:37:52.400> is
04:37:52.551 --> 04:37:52.561 align:start position:0%
create so one thing that I noticed is
04:37:52.561 --> 04:37:54.429 align:start position:0%
create so one thing that I noticed is
that<04:37:52.760> here<04:37:52.959> it's<04:37:53.119> complaining<04:37:53.600> that<04:37:53.879> action
04:37:54.429 --> 04:37:54.439 align:start position:0%
that here it's complaining that action
04:37:54.439 --> 04:37:57.109 align:start position:0%
that here it's complaining that action
should<04:37:54.680> be<04:37:54.920> update<04:37:55.561> with<04:37:55.719> an<04:37:55.840> uppercase<04:37:56.400> du<04:37:56.920> so
04:37:57.109 --> 04:37:57.119 align:start position:0%
should be update with an uppercase du so
04:37:57.119 --> 04:37:59.230 align:start position:0%
should be update with an uppercase du so
let's<04:37:57.320> do<04:37:57.439> it<04:37:57.600> that<04:37:57.799> way<04:37:58.480> and<04:37:58.639> now<04:37:58.959> we'll<04:37:59.119> have
04:37:59.230 --> 04:37:59.240 align:start position:0%
let's do it that way and now we'll have
04:37:59.240 --> 04:38:01.709 align:start position:0%
let's do it that way and now we'll have
to<04:37:59.359> focus<04:37:59.639> on<04:37:59.840> the<04:38:00.000> logic<04:38:00.520> of<04:38:00.840> updating<04:38:01.520> the
04:38:01.709 --> 04:38:01.719 align:start position:0%
to focus on the logic of updating the
04:38:01.719 --> 04:38:05.551 align:start position:0%
to focus on the logic of updating the
post<04:38:02.480> so<04:38:02.879> let's<04:38:03.119> do<04:38:03.359> that<04:38:03.600> next<04:38:04.439> to<04:38:05.080> implement
04:38:05.551 --> 04:38:05.561 align:start position:0%
post so let's do that next to implement
04:38:05.561 --> 04:38:09.629 align:start position:0%
post so let's do that next to implement
the<04:38:05.840> update<04:38:06.359> post<04:38:06.959> we<04:38:07.080> can<04:38:07.279> go<04:38:07.480> to<04:38:07.719> our<04:38:08.320> API<04:38:09.320> and
04:38:09.629 --> 04:38:09.639 align:start position:0%
the update post we can go to our API and
04:38:09.639 --> 04:38:11.390 align:start position:0%
the update post we can go to our API and
right<04:38:09.840> here<04:38:10.119> we<04:38:10.199> can<04:38:10.359> add<04:38:10.520> a<04:38:10.639> new<04:38:10.879> function
04:38:11.390 --> 04:38:11.400 align:start position:0%
right here we can add a new function
04:38:11.400 --> 04:38:14.470 align:start position:0%
right here we can add a new function
called<04:38:11.799> update<04:38:12.279> post<04:38:13.119> to<04:38:13.279> do<04:38:13.439> it<04:38:13.840> we<04:38:14.039> might<04:38:14.320> as
04:38:14.470 --> 04:38:14.480 align:start position:0%
called update post to do it we might as
04:38:14.480 --> 04:38:17.150 align:start position:0%
called update post to do it we might as
well<04:38:14.840> copy<04:38:15.320> the<04:38:15.600> initial<04:38:16.199> create<04:38:16.719> post<04:38:17.000> that
04:38:17.150 --> 04:38:17.160 align:start position:0%
well copy the initial create post that
04:38:17.160 --> 04:38:19.510 align:start position:0%
well copy the initial create post that
we<04:38:17.279> had<04:38:17.561> here<04:38:18.279> because<04:38:18.639> a<04:38:18.760> lot<04:38:18.920> of<04:38:19.039> the<04:38:19.199> logic
04:38:19.510 --> 04:38:19.520 align:start position:0%
we had here because a lot of the logic
04:38:19.520 --> 04:38:22.629 align:start position:0%
we had here because a lot of the logic
is<04:38:19.639> going<04:38:19.799> to<04:38:19.959> be<04:38:20.160> similar<04:38:21.080> so<04:38:21.320> let's<04:38:21.639> copy<04:38:21.920> it
04:38:22.629 --> 04:38:22.639 align:start position:0%
is going to be similar so let's copy it
04:38:22.639 --> 04:38:25.551 align:start position:0%
is going to be similar so let's copy it
and<04:38:22.760> then<04:38:23.000> paste<04:38:23.279> it<04:38:23.600> right<04:38:23.840> here<04:38:24.359> below<04:38:25.359> this
04:38:25.551 --> 04:38:25.561 align:start position:0%
and then paste it right here below this
04:38:25.561 --> 04:38:28.789 align:start position:0%
and then paste it right here below this
time<04:38:25.840> it's<04:38:26.000> going<04:38:26.160> to<04:38:26.279> be<04:38:26.439> called<04:38:26.840> update
04:38:28.789 --> 04:38:28.799 align:start position:0%
time it's going to be called update
04:38:28.799 --> 04:38:31.029 align:start position:0%
time it's going to be called update
post<04:38:29.799> and<04:38:30.000> we'll<04:38:30.199> have<04:38:30.320> to<04:38:30.439> get<04:38:30.561> the<04:38:30.680> entire
04:38:31.029 --> 04:38:31.039 align:start position:0%
post and we'll have to get the entire
04:38:31.039 --> 04:38:33.470 align:start position:0%
post and we'll have to get the entire
post<04:38:31.359> want<04:38:31.561> to<04:38:31.799> update<04:38:32.760> now<04:38:33.000> the<04:38:33.160> first<04:38:33.359> thing
04:38:33.470 --> 04:38:33.480 align:start position:0%
post want to update now the first thing
04:38:33.480 --> 04:38:35.429 align:start position:0%
post want to update now the first thing
we<04:38:33.600> want<04:38:33.719> to<04:38:33.879> do<04:38:34.160> is<04:38:34.279> we<04:38:34.400> want<04:38:34.480> to<04:38:34.561> figure<04:38:35.000> out
04:38:35.429 --> 04:38:35.439 align:start position:0%
we want to do is we want to figure out
04:38:35.439 --> 04:38:38.910 align:start position:0%
we want to do is we want to figure out
if<04:38:35.719> the<04:38:35.879> user<04:38:36.240> is<04:38:36.439> updating<04:38:37.080> the<04:38:37.760> contents<04:38:38.760> as
04:38:38.910 --> 04:38:38.920 align:start position:0%
if the user is updating the contents as
04:38:38.920 --> 04:38:41.230 align:start position:0%
if the user is updating the contents as
well<04:38:39.080> as<04:38:39.240> the<04:38:39.400> image<04:38:40.000> or<04:38:40.240> if<04:38:40.359> they're<04:38:40.639> updating
04:38:41.230 --> 04:38:41.240 align:start position:0%
well as the image or if they're updating
04:38:41.240 --> 04:38:44.429 align:start position:0%
well as the image or if they're updating
just<04:38:41.480> the<04:38:42.000> contents<04:38:43.000> so<04:38:43.199> we<04:38:43.279> can<04:38:43.400> say<04:38:43.680> const
04:38:44.429 --> 04:38:44.439 align:start position:0%
just the contents so we can say const
04:38:44.439 --> 04:38:47.709 align:start position:0%
just the contents so we can say const
has<04:38:44.920> file<04:38:45.719> to<04:38:46.279> update<04:38:47.240> and<04:38:47.359> that's<04:38:47.480> going<04:38:47.600> to
04:38:47.709 --> 04:38:47.719 align:start position:0%
has file to update and that's going to
04:38:47.719 --> 04:38:50.869 align:start position:0%
has file to update and that's going to
be<04:38:47.840> true<04:38:48.279> if<04:38:48.439> the<04:38:48.639> post.<04:38:49.480> file.<04:38:50.199> length<04:38:50.639> is
04:38:50.869 --> 04:38:50.879 align:start position:0%
be true if the post. file. length is
04:38:50.879 --> 04:38:53.429 align:start position:0%
be true if the post. file. length is
greater<04:38:51.199> than<04:38:51.359> one<04:38:52.279> this<04:38:52.400> can<04:38:52.600> be<04:38:52.840> above<04:38:53.279> the
04:38:53.429 --> 04:38:53.439 align:start position:0%
greater than one this can be above the
04:38:53.439 --> 04:38:56.269 align:start position:0%
greater than one this can be above the
try<04:38:53.760> and<04:38:54.039> catch<04:38:54.439> block<04:38:55.439> and<04:38:55.561> then<04:38:55.840> inside<04:38:56.160> of
04:38:56.269 --> 04:38:56.279 align:start position:0%
try and catch block and then inside of
04:38:56.279 --> 04:38:58.910 align:start position:0%
try and catch block and then inside of
the<04:38:56.439> try<04:38:57.080> we<04:38:57.199> can<04:38:57.359> form<04:38:57.760> this<04:38:57.959> new<04:38:58.199> image<04:38:58.719> by
04:38:58.910 --> 04:38:58.920 align:start position:0%
the try we can form this new image by
04:38:58.920 --> 04:39:02.349 align:start position:0%
the try we can form this new image by
saying<04:38:59.240> let<04:38:59.561> image<04:39:00.039> is<04:39:00.240> equal<04:39:00.561> to<04:39:01.320> image<04:39:01.600> URL
04:39:02.349 --> 04:39:02.359 align:start position:0%
saying let image is equal to image URL
04:39:02.359 --> 04:39:06.789 align:start position:0%
saying let image is equal to image URL
is<04:39:02.719> post.<04:39:03.600> image<04:39:03.879> URL<04:39:04.959> and<04:39:05.279> image<04:39:05.600> ID<04:39:06.119> is<04:39:06.359> post
04:39:06.789 --> 04:39:06.799 align:start position:0%
is post. image URL and image ID is post
04:39:06.799 --> 04:39:09.830 align:start position:0%
is post. image URL and image ID is post
that<04:39:07.080> image<04:39:07.520> ID<04:39:08.520> and<04:39:08.799> this<04:39:09.039> is<04:39:09.160> going<04:39:09.359> to<04:39:09.480> be<04:39:09.680> of
04:39:09.830 --> 04:39:09.840 align:start position:0%
that image ID and this is going to be of
04:39:09.840 --> 04:39:14.189 align:start position:0%
that image ID and this is going to be of
a<04:39:10.080> type<04:39:10.639> I<04:39:11.520> update<04:39:12.520> post<04:39:13.320> so<04:39:13.520> we<04:39:13.600> can<04:39:13.760> import<04:39:14.080> it
04:39:14.189 --> 04:39:14.199 align:start position:0%
a type I update post so we can import it
04:39:14.199 --> 04:39:16.390 align:start position:0%
a type I update post so we can import it
from<04:39:14.359> the<04:39:14.520> types<04:39:15.320> that<04:39:15.520> way<04:39:15.760> we<04:39:15.920> know<04:39:16.279> it's
04:39:16.390 --> 04:39:16.400 align:start position:0%
from the types that way we know it's
04:39:16.400 --> 04:39:18.910 align:start position:0%
from the types that way we know it's
going<04:39:16.600> to<04:39:16.760> contain<04:39:17.119> the<04:39:17.359> file<04:39:17.840> as<04:39:18.080> well<04:39:18.799> as
04:39:18.910 --> 04:39:18.920 align:start position:0%
going to contain the file as well as
04:39:18.920 --> 04:39:21.470 align:start position:0%
going to contain the file as well as
well<04:39:19.039> as<04:39:19.160> the<04:39:19.279> image<04:39:19.561> ID<04:39:19.920> and<04:39:20.039> the<04:39:20.160> image<04:39:20.480> URL
04:39:21.470 --> 04:39:21.480 align:start position:0%
well as the image ID and the image URL
04:39:21.480 --> 04:39:23.390 align:start position:0%
well as the image ID and the image URL
now<04:39:21.719> once<04:39:21.920> we<04:39:22.080> have<04:39:22.240> the<04:39:22.400> image<04:39:22.840> we<04:39:22.920> can<04:39:23.080> figure
04:39:23.390 --> 04:39:23.400 align:start position:0%
now once we have the image we can figure
04:39:23.400 --> 04:39:27.349 align:start position:0%
now once we have the image we can figure
out<04:39:23.799> if<04:39:24.199> the<04:39:24.320> user<04:39:24.840> has<04:39:25.039> a<04:39:25.279> file<04:39:25.561> to<04:39:26.119> update<04:39:27.119> and
04:39:27.349 --> 04:39:27.359 align:start position:0%
out if the user has a file to update and
04:39:27.359 --> 04:39:29.990 align:start position:0%
out if the user has a file to update and
if<04:39:27.520> they<04:39:27.680> do<04:39:28.400> we<04:39:28.520> can<04:39:28.680> open<04:39:29.080> this<04:39:29.240> block<04:39:29.760> and<04:39:29.879> we
04:39:29.990 --> 04:39:30.000 align:start position:0%
if they do we can open this block and we
04:39:30.000 --> 04:39:32.349 align:start position:0%
if they do we can open this block and we
can<04:39:30.119> slowly<04:39:30.520> start<04:39:30.799> adding<04:39:31.119> things<04:39:31.359> to<04:39:31.600> it<04:39:32.080> so
04:39:32.349 --> 04:39:32.359 align:start position:0%
can slowly start adding things to it so
04:39:32.359 --> 04:39:34.429 align:start position:0%
can slowly start adding things to it so
if<04:39:32.520> they<04:39:32.680> have<04:39:32.799> a<04:39:32.920> file<04:39:33.119> to<04:39:33.279> upload<04:39:33.840> we<04:39:33.959> want<04:39:34.080> to
04:39:34.429 --> 04:39:34.439 align:start position:0%
if they have a file to upload we want to
04:39:34.439 --> 04:39:37.670 align:start position:0%
if they have a file to upload we want to
get<04:39:34.600> the<04:39:34.879> uploaded<04:39:35.719> file<04:39:36.719> we<04:39:36.840> want<04:39:36.959> to<04:39:37.160> check
04:39:37.670 --> 04:39:37.680 align:start position:0%
get the uploaded file we want to check
04:39:37.680 --> 04:39:40.270 align:start position:0%
get the uploaded file we want to check
if<04:39:37.840> it's<04:39:38.400> there<04:39:39.400> we<04:39:39.480> want<04:39:39.600> to<04:39:39.760> get<04:39:39.920> the<04:39:40.040> file
04:39:40.270 --> 04:39:40.280 align:start position:0%
if it's there we want to get the file
04:39:40.280 --> 04:39:43.270 align:start position:0%
if it's there we want to get the file
URL<04:39:41.040> alongside<04:39:41.680> the<04:39:42.000> error<04:39:42.400> Handler<04:39:42.878> for<04:39:43.160> the
04:39:43.270 --> 04:39:43.280 align:start position:0%
URL alongside the error Handler for the
04:39:43.280 --> 04:39:46.510 align:start position:0%
URL alongside the error Handler for the
file<04:39:43.560> URL<04:39:44.240> put<04:39:44.440> all<04:39:44.600> of<04:39:44.760> that<04:39:45.080> above<04:39:46.080> and<04:39:46.240> then
04:39:46.510 --> 04:39:46.520 align:start position:0%
file URL put all of that above and then
04:39:46.520 --> 04:39:48.190 align:start position:0%
file URL put all of that above and then
finally<04:39:46.958> in<04:39:47.120> this<04:39:47.320> case<04:39:47.480> we<04:39:47.600> want<04:39:47.718> to<04:39:47.878> update
04:39:48.190 --> 04:39:48.200 align:start position:0%
finally in this case we want to update
04:39:48.200 --> 04:39:51.270 align:start position:0%
finally in this case we want to update
the<04:39:48.400> image<04:39:48.878> by<04:39:49.040> saying<04:39:49.400> image<04:39:49.840> is<04:39:50.040> equal<04:39:50.360> to<04:39:51.080> we
04:39:51.270 --> 04:39:51.280 align:start position:0%
the image by saying image is equal to we
04:39:51.280 --> 04:39:53.550 align:start position:0%
the image by saying image is equal to we
spread<04:39:51.760> the<04:39:51.920> existing<04:39:52.400> image<04:39:53.120> and<04:39:53.280> then
04:39:53.550 --> 04:39:53.560 align:start position:0%
spread the existing image and then
04:39:53.560 --> 04:39:57.110 align:start position:0%
spread the existing image and then
update<04:39:53.920> the<04:39:54.080> image<04:39:54.320> URL<04:39:55.040> with<04:39:55.280> a<04:39:55.480> new<04:39:55.798> file<04:39:56.120> URL
04:39:57.110 --> 04:39:57.120 align:start position:0%
update the image URL with a new file URL
04:39:57.120 --> 04:40:00.390 align:start position:0%
update the image URL with a new file URL
and<04:39:57.520> update<04:39:57.840> the<04:39:57.958> image<04:39:58.280> ID<04:39:59.040> with<04:39:59.240> a<04:39:59.520> new
04:40:00.390 --> 04:40:00.400 align:start position:0%
and update the image ID with a new
04:40:00.400 --> 04:40:04.150 align:start position:0%
and update the image ID with a new
uploaded<04:40:01.040> file.<04:40:02.000> doar<04:40:02.400> sign<04:40:02.760> ID<04:40:03.718> this<04:40:03.920> here<04:40:04.040> is
04:40:04.150 --> 04:40:04.160 align:start position:0%
uploaded file. doar sign ID this here is
04:40:04.160 --> 04:40:07.110 align:start position:0%
uploaded file. doar sign ID this here is
going<04:40:04.320> to<04:40:04.440> be<04:40:04.560> the<04:40:04.840> entire<04:40:05.760> image<04:40:06.760> and<04:40:06.958> the
04:40:07.110 --> 04:40:07.120 align:start position:0%
going to be the entire image and the
04:40:07.120 --> 04:40:09.390 align:start position:0%
going to be the entire image and the
image<04:40:07.440> has<04:40:07.560> to<04:40:07.680> be<04:40:07.840> reassign<04:40:08.638> so<04:40:08.798> it<04:40:08.958> has<04:40:09.080> to<04:40:09.240> be
04:40:09.390 --> 04:40:09.400 align:start position:0%
image has to be reassign so it has to be
04:40:09.400 --> 04:40:11.830 align:start position:0%
image has to be reassign so it has to be
led<04:40:10.320> but<04:40:10.520> it's<04:40:10.680> still<04:40:10.920> complaining<04:40:11.600> that
04:40:11.830 --> 04:40:11.840 align:start position:0%
led but it's still complaining that
04:40:11.840 --> 04:40:13.590 align:start position:0%
led but it's still complaining that
image<04:40:12.160> is<04:40:12.320> never<04:40:12.600> used<04:40:13.080> we're<04:40:13.200> going<04:40:13.280> to<04:40:13.440> use
04:40:13.590 --> 04:40:13.600 align:start position:0%
image is never used we're going to use
04:40:13.600 --> 04:40:15.230 align:start position:0%
image is never used we're going to use
it<04:40:13.840> really
04:40:15.230 --> 04:40:15.240 align:start position:0%
it really
04:40:15.240 --> 04:40:18.628 align:start position:0%
it really
soon<04:40:16.240> now<04:40:16.600> we<04:40:16.718> get<04:40:16.920> the<04:40:17.120> tags<04:40:17.718> same<04:40:18.000> things<04:40:18.360> as
04:40:18.628 --> 04:40:18.638 align:start position:0%
soon now we get the tags same things as
04:40:18.638 --> 04:40:20.550 align:start position:0%
soon now we get the tags same things as
before<04:40:19.360> and<04:40:19.480> then<04:40:19.600> we<04:40:19.680> want<04:40:19.798> to<04:40:19.920> save<04:40:20.200> the<04:40:20.320> post
04:40:20.550 --> 04:40:20.560 align:start position:0%
before and then we want to save the post
04:40:20.560 --> 04:40:22.750 align:start position:0%
before and then we want to save the post
of<04:40:20.680> the<04:40:20.878> database<04:40:21.680> but<04:40:21.920> this<04:40:22.160> time<04:40:22.360> it's<04:40:22.560> not
04:40:22.750 --> 04:40:22.760 align:start position:0%
of the database but this time it's not
04:40:22.760 --> 04:40:25.628 align:start position:0%
of the database but this time it's not
going<04:40:22.878> to<04:40:23.000> be<04:40:23.240> create<04:40:24.000> it's<04:40:24.200> going<04:40:24.360> to<04:40:24.520> be
04:40:25.628 --> 04:40:25.638 align:start position:0%
going to be create it's going to be
04:40:25.638 --> 04:40:28.270 align:start position:0%
going to be create it's going to be
update<04:40:26.638> once<04:40:26.840> we<04:40:27.000> update<04:40:27.320> it<04:40:27.600> we<04:40:27.718> want<04:40:27.840> to<04:40:28.120> get
04:40:28.270 --> 04:40:28.280 align:start position:0%
update once we update it we want to get
04:40:28.280 --> 04:40:30.990 align:start position:0%
update once we update it we want to get
the<04:40:28.360> same<04:40:28.638> databid<04:40:29.638> same<04:40:29.958> post<04:40:30.280> collection
04:40:30.990 --> 04:40:31.000 align:start position:0%
the same databid same post collection
04:40:31.000 --> 04:40:33.070 align:start position:0%
the same databid same post collection
but<04:40:31.280> this<04:40:31.480> time<04:40:31.760> we're<04:40:32.040> updating<04:40:32.440> an<04:40:32.638> already
04:40:33.070 --> 04:40:33.080 align:start position:0%
but this time we're updating an already
04:40:33.080 --> 04:40:36.590 align:start position:0%
but this time we're updating an already
existing<04:40:33.958> post<04:40:34.480> so<04:40:34.680> so<04:40:34.798> we<04:40:34.878> can<04:40:35.000> get<04:40:35.160> the<04:40:35.600> post.
04:40:36.590 --> 04:40:36.600 align:start position:0%
existing post so so we can get the post.
04:40:36.600 --> 04:40:39.750 align:start position:0%
existing post so so we can get the post.
poost<04:40:37.000> ID<04:40:37.798> right<04:40:38.040> here<04:40:39.040> and<04:40:39.160> then<04:40:39.360> here<04:40:39.520> we<04:40:39.600> can
04:40:39.750 --> 04:40:39.760 align:start position:0%
poost ID right here and then here we can
04:40:39.760 --> 04:40:42.030 align:start position:0%
poost ID right here and then here we can
Define<04:40:40.160> what<04:40:40.280> do<04:40:40.400> we<04:40:40.480> want<04:40:40.600> to<04:40:40.840> update<04:40:41.840> the
04:40:42.030 --> 04:40:42.040 align:start position:0%
Define what do we want to update the
04:40:42.040 --> 04:40:44.230 align:start position:0%
Define what do we want to update the
creator<04:40:42.798> doesn't<04:40:43.080> have<04:40:43.200> to<04:40:43.320> be<04:40:43.440> updated<04:40:44.040> it's
04:40:44.230 --> 04:40:44.240 align:start position:0%
creator doesn't have to be updated it's
04:40:44.240 --> 04:40:46.590 align:start position:0%
creator doesn't have to be updated it's
the<04:40:44.400> same<04:40:44.680> one<04:40:45.360> the<04:40:45.560> caption<04:40:45.878> is<04:40:46.040> post.
04:40:46.590 --> 04:40:46.600 align:start position:0%
the same one the caption is post.
04:40:46.600 --> 04:40:48.990 align:start position:0%
the same one the caption is post.
caption<04:40:47.240> image<04:40:47.480> URL<04:40:48.040> is<04:40:48.200> going<04:40:48.360> to<04:40:48.520> be<04:40:48.798> this
04:40:48.990 --> 04:40:49.000 align:start position:0%
caption image URL is going to be this
04:40:49.000 --> 04:40:53.788 align:start position:0%
caption image URL is going to be this
new<04:40:49.400> image<04:40:49.840> object<04:40:50.680> do<04:40:51.320> image<04:40:51.958> URL<04:40:52.958> image<04:40:53.280> ID
04:40:53.788 --> 04:40:53.798 align:start position:0%
new image object do image URL image ID
04:40:53.798 --> 04:40:57.350 align:start position:0%
new image object do image URL image ID
is<04:40:53.920> going<04:40:54.080> to<04:40:54.240> be<04:40:54.480> image<04:40:55.280> do<04:40:56.080> image
04:40:57.350 --> 04:40:57.360 align:start position:0%
is going to be image do image
04:40:57.360 --> 04:41:00.830 align:start position:0%
is going to be image do image
ID<04:40:58.360> location<04:40:58.878> is<04:40:59.040> the<04:40:59.200> same<04:40:59.440> and<04:40:59.600> tax<04:40:59.958> is<04:41:00.120> the
04:41:00.830 --> 04:41:00.840 align:start position:0%
ID location is the same and tax is the
04:41:00.840 --> 04:41:03.990 align:start position:0%
ID location is the same and tax is the
same<04:41:01.840> finally<04:41:02.480> if<04:41:02.638> we<04:41:02.798> don't<04:41:03.120> have<04:41:03.440> this<04:41:03.798> let's
04:41:03.990 --> 04:41:04.000 align:start position:0%
same finally if we don't have this let's
04:41:04.000 --> 04:41:06.270 align:start position:0%
same finally if we don't have this let's
call<04:41:04.160> it<04:41:04.280> an<04:41:04.400> up<04:41:04.680> upd<04:41:04.840> dated
04:41:06.270 --> 04:41:06.280 align:start position:0%
call it an up upd dated
04:41:06.280 --> 04:41:11.390 align:start position:0%
call it an up upd dated
post<04:41:07.280> then<04:41:07.600> we<04:41:07.760> can<04:41:08.120> await<04:41:08.798> delete<04:41:09.320> file<04:41:10.400> post.
04:41:11.390 --> 04:41:11.400 align:start position:0%
post then we can await delete file post.
04:41:11.400 --> 04:41:13.868 align:start position:0%
post then we can await delete file post.
image<04:41:11.840> ID<04:41:12.840> so<04:41:12.958> if<04:41:13.120> something<04:41:13.360> went<04:41:13.600> wrong
04:41:13.868 --> 04:41:13.878 align:start position:0%
image ID so if something went wrong
04:41:13.878 --> 04:41:16.310 align:start position:0%
image ID so if something went wrong
we're<04:41:14.040> deleting<04:41:14.560> the<04:41:14.718> file<04:41:15.638> else<04:41:16.080> we're
04:41:16.310 --> 04:41:16.320 align:start position:0%
we're deleting the file else we're
04:41:16.320 --> 04:41:18.750 align:start position:0%
we're deleting the file else we're
returning<04:41:16.878> the<04:41:17.120> updated
04:41:18.750 --> 04:41:18.760 align:start position:0%
returning the updated
04:41:18.760 --> 04:41:21.070 align:start position:0%
returning the updated
post<04:41:19.760> this<04:41:19.878> is<04:41:20.160> great<04:41:20.520> this<04:41:20.680> is<04:41:20.798> going<04:41:20.920> to
04:41:21.070 --> 04:41:21.080 align:start position:0%
post this is great this is going to
04:41:21.080 --> 04:41:23.510 align:start position:0%
post this is great this is going to
enable<04:41:21.400> us<04:41:21.560> to<04:41:21.878> update<04:41:22.240> the<04:41:22.440> post<04:41:23.120> and<04:41:23.320> while
04:41:23.510 --> 04:41:23.520 align:start position:0%
enable us to update the post and while
04:41:23.520 --> 04:41:25.510 align:start position:0%
enable us to update the post and while
we're<04:41:23.760> here<04:41:24.160> let's<04:41:24.440> also<04:41:24.878> implement<04:41:25.360> the
04:41:25.510 --> 04:41:25.520 align:start position:0%
we're here let's also implement the
04:41:25.520 --> 04:41:28.310 align:start position:0%
we're here let's also implement the
delete<04:41:25.958> post<04:41:26.638> that<04:41:26.840> way<04:41:27.320> all<04:41:27.560> of<04:41:27.718> the<04:41:27.878> cred
04:41:28.310 --> 04:41:28.320 align:start position:0%
delete post that way all of the cred
04:41:28.320 --> 04:41:30.030 align:start position:0%
delete post that way all of the cred
options<04:41:28.680> for<04:41:28.840> the<04:41:29.040> Post<04:41:29.440> are<04:41:29.600> going<04:41:29.680> to<04:41:29.840> be
04:41:30.030 --> 04:41:30.040 align:start position:0%
options for the Post are going to be
04:41:30.040 --> 04:41:33.628 align:start position:0%
options for the Post are going to be
complete<04:41:30.798> so<04:41:30.958> we<04:41:31.040> can<04:41:31.200> say<04:41:31.920> export<04:41:32.920> async
04:41:33.628 --> 04:41:33.638 align:start position:0%
complete so we can say export async
04:41:33.638 --> 04:41:37.190 align:start position:0%
complete so we can say export async
function<04:41:34.718> delete<04:41:35.360> post<04:41:36.360> to<04:41:36.520> delete<04:41:36.878> it<04:41:37.080> we
04:41:37.190 --> 04:41:37.200 align:start position:0%
function delete post to delete it we
04:41:37.200 --> 04:41:39.430 align:start position:0%
function delete post to delete it we
need<04:41:37.320> to<04:41:37.440> be<04:41:37.560> able<04:41:37.718> to<04:41:37.840> get<04:41:38.000> the<04:41:38.200> post<04:41:38.520> ID<04:41:39.080> of<04:41:39.240> a
04:41:39.430 --> 04:41:39.440 align:start position:0%
need to be able to get the post ID of a
04:41:39.440 --> 04:41:43.868 align:start position:0%
need to be able to get the post ID of a
type<04:41:39.680> string<04:41:40.638> and<04:41:40.878> an<04:41:41.120> image<04:41:41.480> ID<04:41:42.000> of<04:41:42.160> a<04:41:42.320> type
04:41:43.868 --> 04:41:43.878 align:start position:0%
type string and an image ID of a type
04:41:43.878 --> 04:41:47.470 align:start position:0%
type string and an image ID of a type
string<04:41:44.878> then<04:41:45.400> what<04:41:45.560> we<04:41:45.638> can<04:41:45.840> do<04:41:46.280> is<04:41:46.440> say<04:41:46.878> if
04:41:47.470 --> 04:41:47.480 align:start position:0%
string then what we can do is say if
04:41:47.480 --> 04:41:50.430 align:start position:0%
string then what we can do is say if
there<04:41:47.638> is<04:41:47.878> no<04:41:48.240> post<04:41:48.600> ID<04:41:49.520> or<04:41:49.840> if<04:41:50.000> there's<04:41:50.240> no
04:41:50.430 --> 04:41:50.440 align:start position:0%
there is no post ID or if there's no
04:41:50.440 --> 04:41:52.670 align:start position:0%
there is no post ID or if there's no
image<04:41:50.840> ID<04:41:51.400> we<04:41:51.520> can<04:41:51.680> throw<04:41:51.878> an<04:41:52.040> error<04:41:52.440> because
04:41:52.670 --> 04:41:52.680 align:start position:0%
image ID we can throw an error because
04:41:52.680 --> 04:41:54.350 align:start position:0%
image ID we can throw an error because
we<04:41:52.798> need<04:41:53.080> those<04:41:53.280> to<04:41:53.400> be<04:41:53.520> able<04:41:53.718> to<04:41:53.878> delete<04:41:54.160> a
04:41:54.350 --> 04:41:54.360 align:start position:0%
we need those to be able to delete a
04:41:54.360 --> 04:41:56.990 align:start position:0%
we need those to be able to delete a
post<04:41:55.240> and<04:41:55.360> we<04:41:55.520> also<04:41:55.680> need<04:41:55.798> to<04:41:55.958> delete<04:41:56.240> an<04:41:56.400> image
04:41:56.990 --> 04:41:57.000 align:start position:0%
post and we also need to delete an image
04:41:57.000 --> 04:41:59.070 align:start position:0%
post and we also need to delete an image
which<04:41:57.160> is<04:41:57.360> why<04:41:57.520> we<04:41:57.680> need<04:41:58.040> an<04:41:58.200> image
04:41:59.070 --> 04:41:59.080 align:start position:0%
which is why we need an image
04:41:59.080 --> 04:42:02.310 align:start position:0%
which is why we need an image
ID<04:42:00.080> then<04:42:00.480> we<04:42:00.600> can<04:42:00.760> go<04:42:00.878> to<04:42:01.040> the<04:42:01.160> try<04:42:01.400> and<04:42:01.680> catch
04:42:02.310 --> 04:42:02.320 align:start position:0%
ID then we can go to the try and catch
04:42:02.320 --> 04:42:04.190 align:start position:0%
ID then we can go to the try and catch
you<04:42:02.440> know<04:42:02.638> the<04:42:02.760> drill<04:42:03.360> in<04:42:03.480> the<04:42:03.680> catch<04:42:03.958> we<04:42:04.080> can
04:42:04.190 --> 04:42:04.200 align:start position:0%
you know the drill in the catch we can
04:42:04.200 --> 04:42:07.030 align:start position:0%
you know the drill in the catch we can
conso<04:42:04.680> log<04:42:04.920> the<04:42:05.040> error<04:42:06.000> and<04:42:06.200> in<04:42:06.360> the<04:42:06.520> try<04:42:06.920> we
04:42:07.030 --> 04:42:07.040 align:start position:0%
conso log the error and in the try we
04:42:07.040 --> 04:42:09.788 align:start position:0%
conso log the error and in the try we
can<04:42:07.160> say<04:42:07.920> await
04:42:09.788 --> 04:42:09.798 align:start position:0%
can say await
04:42:09.798 --> 04:42:13.070 align:start position:0%
can say await
databases.<04:42:10.798> delete<04:42:11.360> document<04:42:12.360> to<04:42:12.680> which<04:42:12.840> we
04:42:13.070 --> 04:42:13.080 align:start position:0%
databases. delete document to which we
04:42:13.080 --> 04:42:16.788 align:start position:0%
databases. delete document to which we
pass<04:42:13.520> the<04:42:13.958> database<04:42:14.760> ID<04:42:15.760> the<04:42:16.000> post<04:42:16.320> collection
04:42:16.788 --> 04:42:16.798 align:start position:0%
pass the database ID the post collection
04:42:16.798 --> 04:42:19.430 align:start position:0%
pass the database ID the post collection
ID<04:42:17.718> as<04:42:17.840> well<04:42:18.000> as<04:42:18.160> the<04:42:18.320> post<04:42:18.638> ID<04:42:19.080> that<04:42:19.200> we<04:42:19.320> want
04:42:19.430 --> 04:42:19.440 align:start position:0%
ID as well as the post ID that we want
04:42:19.440 --> 04:42:22.390 align:start position:0%
ID as well as the post ID that we want
to<04:42:19.840> delete<04:42:20.840> and<04:42:21.000> finally<04:42:21.560> we<04:42:21.680> can<04:42:22.000> return
04:42:22.390 --> 04:42:22.400 align:start position:0%
to delete and finally we can return
04:42:22.400 --> 04:42:24.430 align:start position:0%
to delete and finally we can return
something<04:42:22.680> like<04:42:22.878> a<04:42:23.120> status<04:42:23.878> that's<04:42:24.080> going<04:42:24.240> to
04:42:24.430 --> 04:42:24.440 align:start position:0%
something like a status that's going to
04:42:24.440 --> 04:42:27.550 align:start position:0%
something like a status that's going to
say<04:42:25.160> okay<04:42:26.080> there<04:42:26.240> we<04:42:26.400> go<04:42:26.958> so<04:42:27.160> now<04:42:27.280> we<04:42:27.400> have
04:42:27.550 --> 04:42:27.560 align:start position:0%
say okay there we go so now we have
04:42:27.560 --> 04:42:30.030 align:start position:0%
say okay there we go so now we have
delete<04:42:28.000> as<04:42:28.160> well<04:42:28.920> don't<04:42:29.120> forget<04:42:29.600> we<04:42:29.718> have<04:42:29.840> to
04:42:30.030 --> 04:42:30.040 align:start position:0%
delete as well don't forget we have to
04:42:30.040 --> 04:42:33.590 align:start position:0%
delete as well don't forget we have to
consume<04:42:30.600> this<04:42:30.958> within<04:42:31.200> a<04:42:31.360> react<04:42:32.200> query<04:42:33.200> so
04:42:33.590 --> 04:42:33.600 align:start position:0%
consume this within a react query so
04:42:33.600 --> 04:42:37.150 align:start position:0%
consume this within a react query so
let's<04:42:33.840> go<04:42:34.000> to<04:42:34.240> query<04:42:34.560> iies<04:42:35.120> and<04:42:35.878> mutations<04:42:36.878> and
04:42:37.150 --> 04:42:37.160 align:start position:0%
let's go to query iies and mutations and
04:42:37.160 --> 04:42:39.270 align:start position:0%
let's go to query iies and mutations and
before<04:42:37.480> creating<04:42:37.878> it<04:42:38.160> we<04:42:38.280> can<04:42:38.480> simply<04:42:38.958> copy
04:42:39.270 --> 04:42:39.280 align:start position:0%
before creating it we can simply copy
04:42:39.280 --> 04:42:42.070 align:start position:0%
before creating it we can simply copy
the<04:42:39.400> one<04:42:39.718> before<04:42:40.718> and<04:42:40.840> then<04:42:41.080> paste<04:42:41.320> it<04:42:41.560> here<04:42:42.000> we
04:42:42.070 --> 04:42:42.080 align:start position:0%
the one before and then paste it here we
04:42:42.080 --> 04:42:46.030 align:start position:0%
the one before and then paste it here we
can<04:42:42.240> rename<04:42:42.680> it<04:42:42.878> to<04:42:43.120> use<04:42:43.680> update<04:42:44.920> post<04:42:45.920> we
04:42:46.030 --> 04:42:46.040 align:start position:0%
can rename it to use update post we
04:42:46.040 --> 04:42:48.510 align:start position:0%
can rename it to use update post we
don't<04:42:46.240> need<04:42:46.400> to<04:42:46.560> get<04:42:46.760> anything<04:42:47.200> inside<04:42:47.560> of<04:42:47.718> it
04:42:48.510 --> 04:42:48.520 align:start position:0%
don't need to get anything inside of it
04:42:48.520 --> 04:42:49.910 align:start position:0%
don't need to get anything inside of it
in<04:42:48.718> this<04:42:48.920> case<04:42:49.120> it's<04:42:49.280> not<04:42:49.440> going<04:42:49.560> to<04:42:49.680> be<04:42:49.760> a
04:42:49.910 --> 04:42:49.920 align:start position:0%
in this case it's not going to be a
04:42:49.920 --> 04:42:51.910 align:start position:0%
in this case it's not going to be a
query<04:42:50.280> it's<04:42:50.520> going<04:42:50.638> to<04:42:50.760> be<04:42:50.840> a<04:42:50.958> mutation<04:42:51.680> so<04:42:51.840> we
04:42:51.910 --> 04:42:51.920 align:start position:0%
query it's going to be a mutation so we
04:42:51.920 --> 04:42:55.510 align:start position:0%
query it's going to be a mutation so we
can<04:42:52.080> say<04:42:52.360> const<04:42:53.080> query<04:42:53.520> client<04:42:54.480> is<04:42:54.718> equal<04:42:55.040> to
04:42:55.510 --> 04:42:55.520 align:start position:0%
can say const query client is equal to
04:42:55.520 --> 04:42:59.350 align:start position:0%
can say const query client is equal to
use<04:42:56.120> Query<04:42:56.520> client<04:42:57.440> and<04:42:57.638> then<04:42:58.040> use<04:42:58.638> mutation
04:42:59.350 --> 04:42:59.360 align:start position:0%
use Query client and then use mutation
04:42:59.360 --> 04:43:02.070 align:start position:0%
use Query client and then use mutation
instead<04:42:59.638> of<04:42:59.760> use<04:43:00.040> Query<04:43:00.840> because<04:43:01.560> this<04:43:01.680> is<04:43:01.840> a
04:43:02.070 --> 04:43:02.080 align:start position:0%
instead of use Query because this is a
04:43:02.080 --> 04:43:05.190 align:start position:0%
instead of use Query because this is a
mutation<04:43:02.718> an<04:43:02.958> update<04:43:03.440> not<04:43:03.600> a<04:43:03.760> fetch
04:43:05.190 --> 04:43:05.200 align:start position:0%
mutation an update not a fetch
04:43:05.200 --> 04:43:07.230 align:start position:0%
mutation an update not a fetch
then<04:43:05.480> we<04:43:05.638> don't<04:43:05.840> need<04:43:05.958> to<04:43:06.120> define<04:43:06.360> a<04:43:06.520> query<04:43:06.878> key
04:43:07.230 --> 04:43:07.240 align:start position:0%
then we don't need to define a query key
04:43:07.240 --> 04:43:09.390 align:start position:0%
then we don't need to define a query key
because<04:43:07.440> we're<04:43:07.600> doing<04:43:07.798> a<04:43:08.000> mutation<04:43:09.000> and<04:43:09.320> we
04:43:09.390 --> 04:43:09.400 align:start position:0%
because we're doing a mutation and we
04:43:09.400 --> 04:43:11.550 align:start position:0%
because we're doing a mutation and we
can<04:43:09.560> say<04:43:09.878> mutation<04:43:10.480> function<04:43:11.080> instead<04:43:11.320> of<04:43:11.400> a
04:43:11.550 --> 04:43:11.560 align:start position:0%
can say mutation function instead of a
04:43:11.560 --> 04:43:14.470 align:start position:0%
can say mutation function instead of a
query<04:43:12.360> function<04:43:13.360> in<04:43:13.560> this<04:43:13.798> case<04:43:14.080> we<04:43:14.200> need<04:43:14.320> to
04:43:14.470 --> 04:43:14.480 align:start position:0%
query function in this case we need to
04:43:14.480 --> 04:43:16.910 align:start position:0%
query function in this case we need to
get<04:43:14.600> the<04:43:14.840> post<04:43:15.798> because<04:43:16.000> we<04:43:16.120> need<04:43:16.240> to<04:43:16.360> know
04:43:16.910 --> 04:43:16.920 align:start position:0%
get the post because we need to know
04:43:16.920 --> 04:43:20.270 align:start position:0%
get the post because we need to know
what<04:43:17.080> are<04:43:17.240> we<04:43:17.440> updating<04:43:18.160> of<04:43:18.320> a<04:43:18.520> type<04:43:18.920> I<04:43:19.520> update
04:43:20.270 --> 04:43:20.280 align:start position:0%
what are we updating of a type I update
04:43:20.280 --> 04:43:23.510 align:start position:0%
what are we updating of a type I update
post<04:43:21.080> which<04:43:21.240> we<04:43:21.320> can<04:43:21.600> import<04:43:22.080> from<04:43:22.560> types<04:43:23.360> and
04:43:23.510 --> 04:43:23.520 align:start position:0%
post which we can import from types and
04:43:23.520 --> 04:43:26.830 align:start position:0%
post which we can import from types and
then<04:43:23.840> we<04:43:23.958> can<04:43:24.320> update<04:43:25.320> post<04:43:26.080> by<04:43:26.320> importing
04:43:26.830 --> 04:43:26.840 align:start position:0%
then we can update post by importing
04:43:26.840 --> 04:43:29.910 align:start position:0%
then we can update post by importing
this<04:43:27.000> from<04:43:27.360> aight<04:43:28.240> API<04:43:29.200> and<04:43:29.320> we<04:43:29.520> pass<04:43:29.798> the
04:43:29.910 --> 04:43:29.920 align:start position:0%
this from aight API and we pass the
04:43:29.920 --> 04:43:31.110 align:start position:0%
this from aight API and we pass the
entire
04:43:31.110 --> 04:43:31.120 align:start position:0%
entire
04:43:31.120 --> 04:43:33.830 align:start position:0%
entire
Post<04:43:32.120> finally<04:43:32.560> we<04:43:32.680> want<04:43:32.798> to<04:43:32.958> do<04:43:33.160> something<04:43:33.480> on
04:43:33.830 --> 04:43:33.840 align:start position:0%
Post finally we want to do something on
04:43:33.840 --> 04:43:37.628 align:start position:0%
Post finally we want to do something on
success<04:43:34.638> so<04:43:34.878> on<04:43:35.400> success<04:43:36.400> we're<04:43:36.600> going<04:43:36.798> to<04:43:37.400> get
04:43:37.628 --> 04:43:37.638 align:start position:0%
success so on success we're going to get
04:43:37.638 --> 04:43:39.030 align:start position:0%
success so on success we're going to get
all<04:43:37.920> the
04:43:39.030 --> 04:43:39.040 align:start position:0%
all the
04:43:39.040 --> 04:43:42.510 align:start position:0%
all the
data<04:43:40.040> and<04:43:40.160> then<04:43:40.320> call<04:43:40.560> the<04:43:40.718> query<04:43:41.160> client<04:43:42.160> do
04:43:42.510 --> 04:43:42.520 align:start position:0%
data and then call the query client do
04:43:42.520 --> 04:43:45.230 align:start position:0%
data and then call the query client do
invalidate<04:43:43.520> queries<04:43:44.240> so<04:43:44.440> if<04:43:44.560> we<04:43:44.760> update<04:43:45.080> a
04:43:45.230 --> 04:43:45.240 align:start position:0%
invalidate queries so if we update a
04:43:45.240 --> 04:43:48.470 align:start position:0%
invalidate queries so if we update a
post<04:43:45.718> we<04:43:45.840> need<04:43:45.958> to<04:43:46.240> update<04:43:47.160> the<04:43:47.320> query<04:43:47.760> key
04:43:48.470 --> 04:43:48.480 align:start position:0%
post we need to update the query key
04:43:48.480 --> 04:43:50.910 align:start position:0%
post we need to update the query key
under<04:43:49.480> query
04:43:50.910 --> 04:43:50.920 align:start position:0%
under query
04:43:50.920 --> 04:43:54.270 align:start position:0%
under query
keys.<04:43:51.920> get<04:43:52.280> post<04:43:52.840> by<04:43:53.080> ID<04:43:53.718> because<04:43:53.958> we<04:43:54.080> have
04:43:54.270 --> 04:43:54.280 align:start position:0%
keys. get post by ID because we have
04:43:54.280 --> 04:43:56.150 align:start position:0%
keys. get post by ID because we have
updated<04:43:54.718> it<04:43:55.040> and<04:43:55.160> if<04:43:55.240> you<04:43:55.400> go<04:43:55.560> to<04:43:55.680> the<04:43:55.840> Post
04:43:56.150 --> 04:43:56.160 align:start position:0%
updated it and if you go to the Post
04:43:56.160 --> 04:43:59.230 align:start position:0%
updated it and if you go to the Post
Details<04:43:56.638> page<04:43:57.160> it<04:43:57.320> needs<04:43:57.560> to<04:43:57.680> be<04:43:58.000> updated<04:43:59.000> and
04:43:59.230 --> 04:43:59.240 align:start position:0%
Details page it needs to be updated and
04:43:59.240 --> 04:44:01.868 align:start position:0%
Details page it needs to be updated and
we<04:43:59.320> can<04:43:59.480> now<04:43:59.718> duplicate<04:44:00.200> this
04:44:01.868 --> 04:44:01.878 align:start position:0%
we can now duplicate this
04:44:01.878 --> 04:44:05.150 align:start position:0%
we can now duplicate this
below<04:44:02.878> this<04:44:03.080> time<04:44:03.400> we<04:44:03.520> can<04:44:03.680> call<04:44:03.920> it<04:44:04.560> use
04:44:05.150 --> 04:44:05.160 align:start position:0%
below this time we can call it use
04:44:05.160 --> 04:44:06.708 align:start position:0%
below this time we can call it use
delete
04:44:06.708 --> 04:44:06.718 align:start position:0%
delete
04:44:06.718 --> 04:44:09.230 align:start position:0%
delete
Post<04:44:07.718> in<04:44:07.920> this<04:44:08.160> case<04:44:08.480> we<04:44:08.560> need<04:44:08.718> to<04:44:08.878> get<04:44:09.040> two
04:44:09.230 --> 04:44:09.240 align:start position:0%
Post in this case we need to get two
04:44:09.240 --> 04:44:11.830 align:start position:0%
Post in this case we need to get two
things<04:44:09.480> into<04:44:09.718> the<04:44:09.840> mutation<04:44:10.600> function<04:44:11.600> so
04:44:11.830 --> 04:44:11.840 align:start position:0%
things into the mutation function so
04:44:11.840 --> 04:44:14.070 align:start position:0%
things into the mutation function so
let's<04:44:12.040> define<04:44:12.400> them<04:44:12.638> properly<04:44:13.638> it's<04:44:13.798> going<04:44:13.958> to
04:44:14.070 --> 04:44:14.080 align:start position:0%
let's define them properly it's going to
04:44:14.080 --> 04:44:17.788 align:start position:0%
let's define them properly it's going to
be<04:44:14.200> an<04:44:14.440> object<04:44:14.958> of<04:44:15.360> post<04:44:15.798> ID<04:44:16.520> and<04:44:16.798> image
04:44:17.788 --> 04:44:17.798 align:start position:0%
be an object of post ID and image
04:44:17.798 --> 04:44:21.110 align:start position:0%
be an object of post ID and image
ID<04:44:18.798> and<04:44:18.958> that's<04:44:19.160> going<04:44:19.320> to<04:44:19.400> be<04:44:19.560> of<04:44:19.680> a<04:44:19.920> type<04:44:20.798> post
04:44:21.110 --> 04:44:21.120 align:start position:0%
ID and that's going to be of a type post
04:44:21.120 --> 04:44:24.590 align:start position:0%
ID and that's going to be of a type post
ID<04:44:21.480> is<04:44:21.600> a<04:44:21.760> a<04:44:21.958> type<04:44:22.160> string<04:44:23.120> and<04:44:23.440> image<04:44:23.760> ID<04:44:24.280> is<04:44:24.400> a
04:44:24.590 --> 04:44:24.600 align:start position:0%
ID is a a type string and image ID is a
04:44:24.600 --> 04:44:27.628 align:start position:0%
ID is a a type string and image ID is a
a<04:44:24.798> type<04:44:25.000> string<04:44:25.560> as<04:44:25.920> well<04:44:26.920> and<04:44:27.080> then<04:44:27.200> we<04:44:27.360> call
04:44:27.628 --> 04:44:27.638 align:start position:0%
a type string as well and then we call
04:44:27.638 --> 04:44:30.910 align:start position:0%
a type string as well and then we call
not<04:44:27.958> update<04:44:28.400> post<04:44:28.920> but<04:44:29.120> rather<04:44:29.440> delete
04:44:30.910 --> 04:44:30.920 align:start position:0%
not update post but rather delete
04:44:30.920 --> 04:44:34.990 align:start position:0%
not update post but rather delete
post<04:44:31.920> coming<04:44:32.240> from<04:44:32.600> ight<04:44:33.200> API<04:44:34.200> and<04:44:34.360> and<04:44:34.480> to<04:44:34.680> it
04:44:34.990 --> 04:44:35.000 align:start position:0%
post coming from ight API and and to it
04:44:35.000 --> 04:44:37.708 align:start position:0%
post coming from ight API and and to it
we<04:44:35.240> pass<04:44:35.440> a<04:44:35.638> post<04:44:35.920> ID<04:44:36.240> as<04:44:36.360> the<04:44:36.520> first<04:44:36.798> parameter
04:44:37.708 --> 04:44:37.718 align:start position:0%
we pass a post ID as the first parameter
04:44:37.718 --> 04:44:41.150 align:start position:0%
we pass a post ID as the first parameter
and<04:44:37.958> image<04:44:38.280> ID<04:44:38.878> as<04:44:39.040> the<04:44:39.520> second<04:44:40.520> finally<04:44:41.040> the
04:44:41.150 --> 04:44:41.160 align:start position:0%
and image ID as the second finally the
04:44:41.160 --> 04:44:44.628 align:start position:0%
and image ID as the second finally the
query<04:44:41.480> you<04:44:41.600> want<04:44:41.680> to<04:44:41.878> invalidate<04:44:42.600> here<04:44:43.120> is<04:44:43.920> get
04:44:44.628 --> 04:44:44.638 align:start position:0%
query you want to invalidate here is get
04:44:44.638 --> 04:44:47.708 align:start position:0%
query you want to invalidate here is get
recent<04:44:45.520> posts<04:44:46.360> because<04:44:46.718> in<04:44:46.878> case<04:44:47.080> we<04:44:47.240> delete<04:44:47.520> a
04:44:47.708 --> 04:44:47.718 align:start position:0%
recent posts because in case we delete a
04:44:47.718 --> 04:44:50.628 align:start position:0%
recent posts because in case we delete a
post<04:44:48.360> then<04:44:48.600> we<04:44:48.718> need<04:44:48.878> to<04:44:49.000> be<04:44:49.120> able<04:44:49.400> to<04:44:49.920> refetch
04:44:50.628 --> 04:44:50.638 align:start position:0%
post then we need to be able to refetch
04:44:50.638 --> 04:44:52.910 align:start position:0%
post then we need to be able to refetch
all<04:44:50.798> the<04:44:50.958> posts<04:44:51.200> on<04:44:51.320> the<04:44:51.480> homepage<04:44:52.200> to<04:44:52.400> show
04:44:52.910 --> 04:44:52.920 align:start position:0%
all the posts on the homepage to show
04:44:52.920 --> 04:44:55.788 align:start position:0%
all the posts on the homepage to show
all<04:44:53.160> the<04:44:53.320> new<04:44:53.600> posts<04:44:54.240> without<04:44:54.878> the<04:44:55.040> deleted
04:44:55.788 --> 04:44:55.798 align:start position:0%
all the new posts without the deleted
04:44:55.798 --> 04:44:58.510 align:start position:0%
all the new posts without the deleted
one<04:44:56.798> now<04:44:56.958> that<04:44:57.120> we<04:44:57.280> have<04:44:57.480> these<04:44:57.760> options<04:44:58.440> we
04:44:58.510 --> 04:44:58.520 align:start position:0%
one now that we have these options we
04:44:58.520 --> 04:45:01.590 align:start position:0%
one now that we have these options we
can<04:44:58.680> go<04:44:59.040> back<04:44:59.480> to<04:44:59.638> the<04:44:59.878> post<04:45:00.280> form<04:45:01.200> and<04:45:01.320> we<04:45:01.440> can
04:45:01.590 --> 04:45:01.600 align:start position:0%
can go back to the post form and we can
04:45:01.600 --> 04:45:04.708 align:start position:0%
can go back to the post form and we can
import<04:45:02.280> all<04:45:02.480> of<04:45:02.638> these<04:45:02.958> actions<04:45:03.320> or<04:45:03.520> mutations
04:45:04.708 --> 04:45:04.718 align:start position:0%
import all of these actions or mutations
04:45:04.718 --> 04:45:09.390 align:start position:0%
import all of these actions or mutations
from<04:45:05.120> react<04:45:05.718> query<04:45:06.718> so<04:45:07.120> right<04:45:07.360> here<04:45:08.200> below<04:45:09.040> the
04:45:09.390 --> 04:45:09.400 align:start position:0%
from react query so right here below the
04:45:09.400 --> 04:45:11.910 align:start position:0%
from react query so right here below the
use<04:45:09.798> create<04:45:10.200> post<04:45:11.200> we<04:45:11.320> can<04:45:11.440> do<04:45:11.638> something
04:45:11.910 --> 04:45:11.920 align:start position:0%
use create post we can do something
04:45:11.920 --> 04:45:15.470 align:start position:0%
use create post we can do something
similar<04:45:12.840> by<04:45:13.080> duplicating<04:45:13.878> this<04:45:14.080> entire<04:45:14.480> line
04:45:15.470 --> 04:45:15.480 align:start position:0%
similar by duplicating this entire line
04:45:15.480 --> 04:45:17.868 align:start position:0%
similar by duplicating this entire line
mutate<04:45:15.958> async<04:45:16.560> in<04:45:16.798> this<04:45:17.000> case<04:45:17.240> is<04:45:17.360> going<04:45:17.520> to<04:45:17.638> be
04:45:17.868 --> 04:45:17.878 align:start position:0%
mutate async in this case is going to be
04:45:17.878 --> 04:45:20.190 align:start position:0%
mutate async in this case is going to be
update
04:45:20.190 --> 04:45:20.200 align:start position:0%
update
04:45:20.200 --> 04:45:23.830 align:start position:0%
update
post<04:45:21.200> is<04:45:21.520> pending<04:45:22.080> is<04:45:22.280> going<04:45:22.440> to<04:45:22.600> be<04:45:23.200> is
04:45:23.830 --> 04:45:23.840 align:start position:0%
post is pending is going to be is
04:45:23.840 --> 04:45:25.270 align:start position:0%
post is pending is going to be is
loading
04:45:25.270 --> 04:45:25.280 align:start position:0%
loading
04:45:25.280 --> 04:45:27.948 align:start position:0%
loading
update<04:45:26.280> and<04:45:26.480> this<04:45:26.600> is<04:45:26.718> going<04:45:26.878> to<04:45:27.000> be<04:45:27.160> use
04:45:27.948 --> 04:45:27.958 align:start position:0%
update and this is going to be use
04:45:27.958 --> 04:45:30.830 align:start position:0%
update and this is going to be use
update<04:45:28.958> post<04:45:29.760> which<04:45:29.958> has<04:45:30.080> to<04:45:30.240> be<04:45:30.400> imported
04:45:30.830 --> 04:45:30.840 align:start position:0%
update post which has to be imported
04:45:30.840 --> 04:45:32.990 align:start position:0%
update post which has to be imported
from<04:45:31.080> queries<04:45:31.440> and
04:45:32.990 --> 04:45:33.000 align:start position:0%
from queries and
04:45:33.000 --> 04:45:35.948 align:start position:0%
from queries and
mutations<04:45:34.000> now<04:45:34.480> we<04:45:34.560> can<04:45:34.718> go<04:45:35.080> right<04:45:35.400> in<04:45:35.638> our
04:45:35.948 --> 04:45:35.958 align:start position:0%
mutations now we can go right in our
04:45:35.958 --> 04:45:37.310 align:start position:0%
mutations now we can go right in our
submit
04:45:37.310 --> 04:45:37.320 align:start position:0%
submit
04:45:37.320 --> 04:45:42.310 align:start position:0%
submit
Handler<04:45:38.320> and<04:45:38.480> we<04:45:38.600> can<04:45:38.760> check<04:45:39.600> at<04:45:39.718> the<04:45:40.400> Top<04:45:41.400> If
04:45:42.310 --> 04:45:42.320 align:start position:0%
Handler and we can check at the Top If
04:45:42.320 --> 04:45:45.990 align:start position:0%
Handler and we can check at the Top If
post<04:45:42.878> exists<04:45:43.878> and<04:45:44.440> if<04:45:44.718> action<04:45:45.400> is<04:45:45.600> triple
04:45:45.990 --> 04:45:46.000 align:start position:0%
post exists and if action is triple
04:45:46.000 --> 04:45:49.230 align:start position:0%
post exists and if action is triple
equal<04:45:46.280> to<04:45:46.440> the<04:45:46.638> update<04:45:47.120> with<04:45:47.280> a<04:45:47.520> capital<04:45:48.000> u<04:45:49.000> in
04:45:49.230 --> 04:45:49.240 align:start position:0%
equal to the update with a capital u in
04:45:49.240 --> 04:45:53.030 align:start position:0%
equal to the update with a capital u in
that<04:45:49.520> case<04:45:50.080> we<04:45:50.280> say<04:45:50.560> const<04:45:51.520> updated<04:45:52.120> post<04:45:52.798> is
04:45:53.030 --> 04:45:53.040 align:start position:0%
that case we say const updated post is
04:45:53.040 --> 04:45:54.788 align:start position:0%
that case we say const updated post is
equal
04:45:54.788 --> 04:45:54.798 align:start position:0%
equal
04:45:54.798 --> 04:45:56.470 align:start position:0%
equal
to
04:45:56.470 --> 04:45:56.480 align:start position:0%
to
04:45:56.480 --> 04:45:58.910 align:start position:0%
to
await<04:45:57.480> update
04:45:58.910 --> 04:45:58.920 align:start position:0%
await update
04:45:58.920 --> 04:46:01.350 align:start position:0%
await update
post<04:45:59.920> and<04:46:00.040> then<04:46:00.160> we<04:46:00.320> need<04:46:00.440> to<04:46:00.680> pass<04:46:00.920> all<04:46:01.080> of<04:46:01.240> the
04:46:01.350 --> 04:46:01.360 align:start position:0%
post and then we need to pass all of the
04:46:01.360 --> 04:46:03.948 align:start position:0%
post and then we need to pass all of the
options<04:46:01.718> in<04:46:01.878> it<04:46:02.520> this<04:46:02.760> update<04:46:03.160> post<04:46:03.520> is<04:46:03.680> coming
04:46:03.948 --> 04:46:03.958 align:start position:0%
options in it this update post is coming
04:46:03.958 --> 04:46:06.628 align:start position:0%
options in it this update post is coming
from<04:46:04.360> our<04:46:04.560> react<04:46:04.958> query<04:46:05.680> and<04:46:05.878> of<04:46:06.080> course<04:46:06.440> it's
04:46:06.628 --> 04:46:06.638 align:start position:0%
from our react query and of course it's
04:46:06.638 --> 04:46:10.750 align:start position:0%
from our react query and of course it's
doing<04:46:07.360> the<04:46:07.638> action<04:46:08.120> from<04:46:08.840> aight
04:46:10.750 --> 04:46:10.760 align:start position:0%
doing the action from aight
04:46:10.760 --> 04:46:14.868 align:start position:0%
doing the action from aight
API<04:46:11.760> so<04:46:12.000> now<04:46:13.000> we<04:46:13.120> need<04:46:13.280> to<04:46:13.520> pass<04:46:13.920> do<04:46:14.240> do<04:46:14.480> dot
04:46:14.868 --> 04:46:14.878 align:start position:0%
API so now we need to pass do do dot
04:46:14.878 --> 04:46:16.830 align:start position:0%
API so now we need to pass do do dot
values<04:46:15.480> meaning<04:46:15.920> everything<04:46:16.320> about<04:46:16.600> that
04:46:16.830 --> 04:46:16.840 align:start position:0%
values meaning everything about that
04:46:16.840 --> 04:46:19.510 align:start position:0%
values meaning everything about that
post<04:46:17.400> we<04:46:17.560> also<04:46:17.798> need<04:46:17.958> to<04:46:18.160> pass<04:46:18.400> the<04:46:18.560> post<04:46:18.878> ID<04:46:19.360> of
04:46:19.510 --> 04:46:19.520 align:start position:0%
post we also need to pass the post ID of
04:46:19.520 --> 04:46:22.110 align:start position:0%
post we also need to pass the post ID of
the<04:46:19.638> post<04:46:19.920> we're<04:46:20.120> updating<04:46:20.920> by<04:46:21.040> saying<04:46:21.400> post.
04:46:22.110 --> 04:46:22.120 align:start position:0%
the post we're updating by saying post.
04:46:22.120 --> 04:46:25.990 align:start position:0%
the post we're updating by saying post.
dollar<04:46:22.400> sign<04:46:22.760> ID<04:46:23.760> we<04:46:23.878> can<04:46:24.080> pass<04:46:24.360> the<04:46:24.600> image<04:46:25.200> ID
04:46:25.990 --> 04:46:26.000 align:start position:0%
dollar sign ID we can pass the image ID
04:46:26.000 --> 04:46:29.548 align:start position:0%
dollar sign ID we can pass the image ID
by<04:46:26.120> saying<04:46:26.600> post<04:46:27.280> question<04:46:27.638> mark.<04:46:28.120> image<04:46:28.558> ID
04:46:29.548 --> 04:46:29.558 align:start position:0%
by saying post question mark. image ID
04:46:29.558 --> 04:46:31.990 align:start position:0%
by saying post question mark. image ID
as<04:46:29.718> well<04:46:29.878> as<04:46:30.040> the<04:46:30.200> image<04:46:30.600> URL<04:46:31.600> which<04:46:31.718> is<04:46:31.840> going
04:46:31.990 --> 04:46:32.000 align:start position:0%
as well as the image URL which is going
04:46:32.000 --> 04:46:36.110 align:start position:0%
as well as the image URL which is going
to<04:46:32.120> be<04:46:32.400> post.<04:46:33.320> image<04:46:33.638> URL
04:46:36.110 --> 04:46:36.120 align:start position:0%
to be post. image URL
04:46:36.120 --> 04:46:38.470 align:start position:0%
to be post. image URL
finally<04:46:36.798> if<04:46:36.958> we<04:46:37.160> don't<04:46:37.600> have<04:46:37.798> the<04:46:37.958> updated
04:46:38.470 --> 04:46:38.480 align:start position:0%
finally if we don't have the updated
04:46:38.480 --> 04:46:41.350 align:start position:0%
finally if we don't have the updated
post<04:46:39.000> meaning<04:46:39.400> something<04:46:39.680> went<04:46:40.280> wrong<04:46:41.280> it
04:46:41.350 --> 04:46:41.360 align:start position:0%
post meaning something went wrong it
04:46:41.360 --> 04:46:43.110 align:start position:0%
post meaning something went wrong it
should<04:46:41.558> say<04:46:41.760> updated
04:46:43.110 --> 04:46:43.120 align:start position:0%
should say updated
04:46:43.120 --> 04:46:46.708 align:start position:0%
should say updated
post<04:46:44.120> then<04:46:44.360> we<04:46:44.480> can<04:46:44.680> release<04:46:45.080> a<04:46:45.320> toast<04:46:46.280> saying
04:46:46.708 --> 04:46:46.718 align:start position:0%
post then we can release a toast saying
04:46:46.718 --> 04:46:49.868 align:start position:0%
post then we can release a toast saying
something<04:46:47.520> like<04:46:48.520> title
04:46:49.868 --> 04:46:49.878 align:start position:0%
something like title
04:46:49.878 --> 04:46:53.868 align:start position:0%
something like title
is<04:46:50.878> please<04:46:51.240> try<04:46:51.638> again<04:46:52.638> and<04:46:52.878> if<04:46:53.000> it<04:46:53.200> succeeds
04:46:53.868 --> 04:46:53.878 align:start position:0%
is please try again and if it succeeds
04:46:53.878 --> 04:46:57.270 align:start position:0%
is please try again and if it succeeds
we<04:46:54.000> can<04:46:54.400> return<04:46:55.760> navigate<04:46:56.760> this<04:46:56.958> time<04:46:57.120> we're
04:46:57.270 --> 04:46:57.280 align:start position:0%
we can return navigate this time we're
04:46:57.280 --> 04:47:00.868 align:start position:0%
we can return navigate this time we're
going<04:46:57.440> to<04:46:57.600> forward<04:46:57.958> SL<04:46:58.400> poost<04:46:59.360> slash
04:47:00.868 --> 04:47:00.878 align:start position:0%
going to forward SL poost slash
04:47:00.878 --> 04:47:04.270 align:start position:0%
going to forward SL poost slash
poost<04:47:01.878> do<04:47:02.160> doll<04:47:02.480> sign<04:47:02.680> ID<04:47:03.400> so<04:47:03.600> no<04:47:03.760> longer<04:47:04.160> are
04:47:04.270 --> 04:47:04.280 align:start position:0%
poost do doll sign ID so no longer are
04:47:04.280 --> 04:47:06.390 align:start position:0%
poost do doll sign ID so no longer are
we<04:47:04.400> going<04:47:04.558> to<04:47:04.718> the<04:47:04.878> homepage<04:47:05.680> to<04:47:05.840> see<04:47:06.080> the<04:47:06.200> new
04:47:06.390 --> 04:47:06.400 align:start position:0%
we going to the homepage to see the new
04:47:06.400 --> 04:47:08.390 align:start position:0%
we going to the homepage to see the new
post<04:47:06.680> we<04:47:06.840> created<04:47:07.440> we're<04:47:07.680> going<04:47:07.878> to<04:47:08.120> the
04:47:08.390 --> 04:47:08.400 align:start position:0%
post we created we're going to the
04:47:08.400 --> 04:47:10.830 align:start position:0%
post we created we're going to the
details<04:47:08.798> of<04:47:09.000> that<04:47:09.240> page<04:47:09.680> to<04:47:09.878> see<04:47:10.280> that<04:47:10.520> it<04:47:10.638> was
04:47:10.830 --> 04:47:10.840 align:start position:0%
details of that page to see that it was
04:47:10.840 --> 04:47:13.868 align:start position:0%
details of that page to see that it was
successfully<04:47:11.558> updated<04:47:12.558> great<04:47:13.480> because<04:47:13.718> we
04:47:13.868 --> 04:47:13.878 align:start position:0%
successfully updated great because we
04:47:13.878 --> 04:47:15.788 align:start position:0%
successfully updated great because we
have<04:47:14.040> this<04:47:14.320> return<04:47:14.638> here<04:47:15.120> we<04:47:15.280> don't<04:47:15.520> have<04:47:15.638> to
04:47:15.788 --> 04:47:15.798 align:start position:0%
have this return here we don't have to
04:47:15.798 --> 04:47:18.150 align:start position:0%
have this return here we don't have to
wrap<04:47:16.080> this<04:47:16.160> in<04:47:16.320> an<04:47:16.480> else<04:47:17.240> because<04:47:17.718> once<04:47:17.920> we
04:47:18.150 --> 04:47:18.160 align:start position:0%
wrap this in an else because once we
04:47:18.160 --> 04:47:21.788 align:start position:0%
wrap this in an else because once we
update<04:47:18.958> it's<04:47:19.120> going<04:47:19.320> to<04:47:19.440> do<04:47:19.718> this<04:47:20.320> and<04:47:20.680> exit<04:47:21.680> if
04:47:21.788 --> 04:47:21.798 align:start position:0%
update it's going to do this and exit if
04:47:21.798 --> 04:47:24.270 align:start position:0%
update it's going to do this and exit if
it's<04:47:21.958> not<04:47:22.240> update<04:47:22.878> it's<04:47:23.040> going<04:47:23.200> to<04:47:23.360> do<04:47:23.600> this
04:47:24.270 --> 04:47:24.280 align:start position:0%
it's not update it's going to do this
04:47:24.280 --> 04:47:27.670 align:start position:0%
it's not update it's going to do this
immediately<04:47:25.320> great<04:47:26.320> so<04:47:26.558> now<04:47:26.798> if<04:47:26.920> we<04:47:27.080> save<04:47:27.400> this
04:47:27.670 --> 04:47:27.680 align:start position:0%
immediately great so now if we save this
04:47:27.680 --> 04:47:29.708 align:start position:0%
immediately great so now if we save this
we're<04:47:27.920> successfully<04:47:28.600> doing<04:47:28.958> the<04:47:29.200> update
04:47:29.708 --> 04:47:29.718 align:start position:0%
we're successfully doing the update
04:47:29.718 --> 04:47:32.070 align:start position:0%
we're successfully doing the update
action<04:47:30.680> so<04:47:30.878> let's<04:47:31.040> try<04:47:31.200> to<04:47:31.360> say<04:47:31.680> something
04:47:32.070 --> 04:47:32.080 align:start position:0%
action so let's try to say something
04:47:32.080 --> 04:47:34.470 align:start position:0%
action so let's try to say something
like<04:47:32.558> let's<04:47:32.760> say<04:47:33.000> the<04:47:33.160> course<04:47:33.440> got<04:47:33.638> updated<04:47:34.240> to
04:47:34.470 --> 04:47:34.480 align:start position:0%
like let's say the course got updated to
04:47:34.480 --> 04:47:36.310 align:start position:0%
like let's say the course got updated to
version
04:47:36.310 --> 04:47:36.320 align:start position:0%
version
04:47:36.320 --> 04:47:39.230 align:start position:0%
version
13.6<04:47:37.320> and<04:47:37.480> we<04:47:37.600> want<04:47:37.718> to<04:47:37.920> add<04:47:38.160> a<04:47:38.320> URL<04:47:38.878> so<04:47:39.000> we<04:47:39.120> can
04:47:39.230 --> 04:47:39.240 align:start position:0%
13.6 and we want to add a URL so we can
04:47:39.240 --> 04:47:42.830 align:start position:0%
13.6 and we want to add a URL so we can
say<04:47:39.440> URL<04:47:40.120> is<04:47:40.360> JS<04:47:40.760> mastery.<04:47:41.558> proo<04:47:42.360> we<04:47:42.480> can<04:47:42.638> leave
04:47:42.830 --> 04:47:42.840 align:start position:0%
say URL is JS mastery. proo we can leave
04:47:42.840 --> 04:47:44.788 align:start position:0%
say URL is JS mastery. proo we can leave
the<04:47:43.000> location<04:47:43.440> and<04:47:43.638> this<04:47:43.920> the<04:47:44.040> same<04:47:44.520> but<04:47:44.680> it
04:47:44.788 --> 04:47:44.798 align:start position:0%
the location and this the same but it
04:47:44.798 --> 04:47:46.510 align:start position:0%
the location and this the same but it
says<04:47:45.040> submit<04:47:45.718> maybe<04:47:45.958> it<04:47:46.040> should<04:47:46.200> say
04:47:46.510 --> 04:47:46.520 align:start position:0%
says submit maybe it should say
04:47:46.520 --> 04:47:49.150 align:start position:0%
says submit maybe it should say
something<04:47:46.878> else<04:47:47.520> so<04:47:47.718> if<04:47:47.798> we<04:47:48.000> go<04:47:48.240> down<04:47:48.440> to<04:47:48.600> the
04:47:49.150 --> 04:47:49.160 align:start position:0%
something else so if we go down to the
04:47:49.160 --> 04:47:51.670 align:start position:0%
something else so if we go down to the
button<04:47:50.160> in<04:47:50.360> the<04:47:50.520> button<04:47:51.240> sometimes<04:47:51.440> we<04:47:51.558> need
04:47:51.670 --> 04:47:51.680 align:start position:0%
button in the button sometimes we need
04:47:51.680 --> 04:47:53.590 align:start position:0%
button in the button sometimes we need
to<04:47:51.840> disable<04:47:52.280> it<04:47:52.760> when<04:47:53.000> it's<04:47:53.200> currently
04:47:53.590 --> 04:47:53.600 align:start position:0%
to disable it when it's currently
04:47:53.600 --> 04:47:55.510 align:start position:0%
to disable it when it's currently
loading<04:47:54.280> so<04:47:54.440> we<04:47:54.520> can<04:47:54.638> give<04:47:54.760> it<04:47:54.878> a<04:47:55.040> disabled
04:47:55.510 --> 04:47:55.520 align:start position:0%
loading so we can give it a disabled
04:47:55.520 --> 04:47:59.150 align:start position:0%
loading so we can give it a disabled
State<04:47:56.360> and<04:47:56.600> say<04:47:57.080> if<04:47:57.400> is<04:47:57.558> loading<04:47:57.958> create<04:47:58.558> or<04:47:58.920> is
04:47:59.150 --> 04:47:59.160 align:start position:0%
State and say if is loading create or is
04:47:59.160 --> 04:48:01.190 align:start position:0%
State and say if is loading create or is
loading<04:47:59.600> update<04:48:00.280> then<04:48:00.440> we<04:48:00.520> want<04:48:00.638> to<04:48:00.760> disable
04:48:01.190 --> 04:48:01.200 align:start position:0%
loading update then we want to disable
04:48:01.200 --> 04:48:02.990 align:start position:0%
loading update then we want to disable
the<04:48:01.320> button<04:48:01.600> so<04:48:01.798> the<04:48:01.878> user<04:48:02.200> cannot<04:48:02.520> just<04:48:02.718> mash
04:48:02.990 --> 04:48:03.000 align:start position:0%
the button so the user cannot just mash
04:48:03.000 --> 04:48:04.750 align:start position:0%
the button so the user cannot just mash
it<04:48:03.200> multiple<04:48:03.680> times
04:48:04.750 --> 04:48:04.760 align:start position:0%
it multiple times
04:48:04.760 --> 04:48:07.350 align:start position:0%
it multiple times
and<04:48:05.160> the<04:48:05.320> button<04:48:05.798> can<04:48:06.000> say<04:48:06.360> something<04:48:06.840> like
04:48:07.350 --> 04:48:07.360 align:start position:0%
and the button can say something like
04:48:07.360 --> 04:48:09.708 align:start position:0%
and the button can say something like
this<04:48:08.360> if<04:48:08.480> it's<04:48:08.638> loading<04:48:09.280> and<04:48:09.440> if<04:48:09.520> it's
04:48:09.708 --> 04:48:09.718 align:start position:0%
this if it's loading and if it's
04:48:09.718 --> 04:48:11.390 align:start position:0%
this if it's loading and if it's
disabled<04:48:10.400> the<04:48:10.520> button<04:48:10.760> should<04:48:10.958> render<04:48:11.280> the
04:48:11.390 --> 04:48:11.400 align:start position:0%
disabled the button should render the
04:48:11.400 --> 04:48:14.670 align:start position:0%
disabled the button should render the
loader<04:48:12.120> so<04:48:12.280> we<04:48:12.360> can<04:48:12.680> say<04:48:13.680> if<04:48:14.000> is<04:48:14.240> loading
04:48:14.670 --> 04:48:14.680 align:start position:0%
loader so we can say if is loading
04:48:14.680 --> 04:48:18.070 align:start position:0%
loader so we can say if is loading
create<04:48:15.520> or<04:48:15.840> is<04:48:16.000> loading<04:48:16.558> update<04:48:17.558> then<04:48:17.840> we<04:48:17.958> want
04:48:18.070 --> 04:48:18.080 align:start position:0%
create or is loading update then we want
04:48:18.080 --> 04:48:22.868 align:start position:0%
create or is loading update then we want
to<04:48:18.200> Simply<04:48:19.120> return<04:48:20.120> the<04:48:20.280> loading<04:48:20.680> State<04:48:21.638> like
04:48:22.868 --> 04:48:22.878 align:start position:0%
to Simply return the loading State like
04:48:22.878 --> 04:48:25.628 align:start position:0%
to Simply return the loading State like
so<04:48:23.878> and<04:48:24.160> if<04:48:24.280> it<04:48:24.440> is<04:48:24.600> loading<04:48:25.120> it<04:48:25.240> can<04:48:25.400> say
04:48:25.628 --> 04:48:25.638 align:start position:0%
so and if it is loading it can say
04:48:25.638 --> 04:48:28.110 align:start position:0%
so and if it is loading it can say
something<04:48:25.920> like<04:48:26.200> post<04:48:27.200> but<04:48:27.400> it<04:48:27.520> can<04:48:27.638> be<04:48:27.798> an
04:48:28.110 --> 04:48:28.120 align:start position:0%
something like post but it can be an
04:48:28.120 --> 04:48:30.390 align:start position:0%
something like post but it can be an
action<04:48:28.798> so<04:48:28.920> it's<04:48:29.080> going<04:48:29.240> to<04:48:29.440> either<04:48:29.718> say
04:48:30.390 --> 04:48:30.400 align:start position:0%
action so it's going to either say
04:48:30.400 --> 04:48:34.510 align:start position:0%
action so it's going to either say
create<04:48:31.400> if<04:48:31.520> we're<04:48:31.840> creating<04:48:33.000> or
04:48:34.510 --> 04:48:34.520 align:start position:0%
create if we're creating or
04:48:34.520 --> 04:48:37.230 align:start position:0%
create if we're creating or
update<04:48:35.320> if<04:48:35.440> we're<04:48:35.718> updating<04:48:36.680> so<04:48:36.878> let's<04:48:37.080> just
04:48:37.230 --> 04:48:37.240 align:start position:0%
update if we're updating so let's just
04:48:37.240 --> 04:48:39.310 align:start position:0%
update if we're updating so let's just
ensure<04:48:37.718> that<04:48:37.840> on<04:48:38.000> the<04:48:38.160> create<04:48:38.558> post<04:48:39.080> we're
04:48:39.310 --> 04:48:39.320 align:start position:0%
ensure that on the create post we're
04:48:39.320 --> 04:48:42.430 align:start position:0%
ensure that on the create post we're
properly<04:48:39.798> passing<04:48:40.240> it<04:48:41.240> here<04:48:41.558> we're<04:48:41.760> not<04:48:42.240> so<04:48:42.360> we
04:48:42.430 --> 04:48:42.440 align:start position:0%
properly passing it here we're not so we
04:48:42.440 --> 04:48:45.670 align:start position:0%
properly passing it here we're not so we
need<04:48:42.558> to<04:48:42.760> pass<04:48:42.920> an<04:48:43.160> action<04:48:43.760> equal<04:48:44.120> to
04:48:45.670 --> 04:48:45.680 align:start position:0%
need to pass an action equal to
04:48:45.680 --> 04:48:49.590 align:start position:0%
need to pass an action equal to
create<04:48:46.680> and<04:48:46.920> now<04:48:47.480> if<04:48:47.558> we<04:48:47.760> go<04:48:48.200> back<04:48:49.200> as<04:48:49.320> you<04:48:49.440> can
04:48:49.590 --> 04:48:49.600 align:start position:0%
create and now if we go back as you can
04:48:49.600 --> 04:48:52.948 align:start position:0%
create and now if we go back as you can
see<04:48:50.000> on<04:48:50.280> update<04:48:50.878> we<04:48:51.000> can<04:48:51.120> see<04:48:51.400> update<04:48:51.840> post<04:48:52.840> I'm
04:48:52.948 --> 04:48:52.958 align:start position:0%
see on update we can see update post I'm
04:48:52.958 --> 04:48:54.590 align:start position:0%
see on update we can see update post I'm
not<04:48:53.120> going<04:48:53.240> to<04:48:53.400> go<04:48:53.600> back<04:48:53.840> now<04:48:54.000> to<04:48:54.160> show<04:48:54.320> you<04:48:54.440> the
04:48:54.590 --> 04:48:54.600 align:start position:0%
not going to go back now to show you the
04:48:54.600 --> 04:48:56.670 align:start position:0%
not going to go back now to show you the
create<04:48:55.200> but<04:48:55.440> you<04:48:55.558> can<04:48:55.760> trust<04:48:56.040> me<04:48:56.280> that<04:48:56.440> on
04:48:56.670 --> 04:48:56.680 align:start position:0%
create but you can trust me that on
04:48:56.680 --> 04:48:59.350 align:start position:0%
create but you can trust me that on
create<04:48:57.240> it's<04:48:57.400> going<04:48:57.558> to<04:48:57.680> say<04:48:58.120> create<04:48:59.120> now
04:48:59.350 --> 04:48:59.360 align:start position:0%
create it's going to say create now
04:48:59.360 --> 04:49:01.910 align:start position:0%
create it's going to say create now
modify<04:48:59.798> your<04:49:00.000> original<04:49:00.480> post<04:49:01.080> and<04:49:01.360> let's<04:49:01.798> give
04:49:01.910 --> 04:49:01.920 align:start position:0%
modify your original post and let's give
04:49:01.920 --> 04:49:04.910 align:start position:0%
modify your original post and let's give
it<04:49:02.080> a<04:49:02.280> run<04:49:03.080> click<04:49:03.440> update<04:49:04.040> post<04:49:04.360> and<04:49:04.520> let's<04:49:04.718> see
04:49:04.910 --> 04:49:04.920 align:start position:0%
it a run click update post and let's see
04:49:04.920 --> 04:49:09.470 align:start position:0%
it a run click update post and let's see
what<04:49:05.558> happens<04:49:06.558> it<04:49:06.680> says<04:49:06.920> loading<04:49:07.558> update<04:49:08.480> post
04:49:09.470 --> 04:49:09.480 align:start position:0%
what happens it says loading update post
04:49:09.480 --> 04:49:11.590 align:start position:0%
what happens it says loading update post
and<04:49:09.680> we<04:49:09.798> got<04:49:10.040> redirected<04:49:10.840> to<04:49:11.040> the<04:49:11.240> post
04:49:11.590 --> 04:49:11.600 align:start position:0%
and we got redirected to the post
04:49:11.600 --> 04:49:14.548 align:start position:0%
and we got redirected to the post
Details<04:49:12.120> page<04:49:12.878> exactly<04:49:13.400> as<04:49:13.520> we<04:49:13.680> wanted<04:49:14.440> just
04:49:14.548 --> 04:49:14.558 align:start position:0%
Details page exactly as we wanted just
04:49:14.558 --> 04:49:16.910 align:start position:0%
Details page exactly as we wanted just
to<04:49:14.798> verify<04:49:15.240> that<04:49:15.360> the<04:49:15.520> post<04:49:15.878> indeed<04:49:16.440> did<04:49:16.718> get
04:49:16.910 --> 04:49:16.920 align:start position:0%
to verify that the post indeed did get
04:49:16.920 --> 04:49:20.270 align:start position:0%
to verify that the post indeed did get
updated<04:49:17.798> we<04:49:17.920> can<04:49:18.080> go<04:49:18.240> to<04:49:18.400> our<04:49:19.040> posts<04:49:20.040> and<04:49:20.160> we
04:49:20.270 --> 04:49:20.280 align:start position:0%
updated we can go to our posts and we
04:49:20.280 --> 04:49:22.990 align:start position:0%
updated we can go to our posts and we
can<04:49:20.400> see<04:49:20.760> if<04:49:20.920> the<04:49:21.120> caption<04:49:21.798> contains<04:49:22.360> what<04:49:22.520> we
04:49:22.990 --> 04:49:23.000 align:start position:0%
can see if the caption contains what we
04:49:23.000 --> 04:49:26.590 align:start position:0%
can see if the caption contains what we
added<04:49:24.000> so<04:49:24.240> that's<04:49:24.440> going<04:49:24.600> to<04:49:24.718> be<04:49:24.920> in<04:49:25.120> the<04:49:25.600> data
04:49:26.590 --> 04:49:26.600 align:start position:0%
added so that's going to be in the data
04:49:26.600 --> 04:49:29.390 align:start position:0%
added so that's going to be in the data
and<04:49:26.718> we<04:49:26.798> can<04:49:26.958> see<04:49:27.240> that<04:49:27.520> indeed<04:49:28.200> it<04:49:28.360> does<04:49:29.120> so
04:49:29.390 --> 04:49:29.400 align:start position:0%
and we can see that indeed it does so
04:49:29.400 --> 04:49:32.070 align:start position:0%
and we can see that indeed it does so
this<04:49:29.638> is<04:49:30.080> great<04:49:30.878> so<04:49:31.160> immediately<04:49:31.680> the<04:49:31.840> next
04:49:32.070 --> 04:49:32.080 align:start position:0%
this is great so immediately the next
04:49:32.080 --> 04:49:34.830 align:start position:0%
this is great so immediately the next
reasonable<04:49:32.680> step<04:49:33.080> is<04:49:33.200> to<04:49:33.400> implement<04:49:34.160> the<04:49:34.440> post
04:49:34.830 --> 04:49:34.840 align:start position:0%
reasonable step is to implement the post
04:49:34.840 --> 04:49:37.510 align:start position:0%
reasonable step is to implement the post
Details<04:49:35.440> page<04:49:36.240> as<04:49:36.480> now<04:49:36.760> our<04:49:36.958> homepage<04:49:37.360> is
04:49:37.510 --> 04:49:37.520 align:start position:0%
Details page as now our homepage is
04:49:37.520 --> 04:49:39.628 align:start position:0%
Details page as now our homepage is
looking<04:49:37.798> pretty<04:49:38.080> good<04:49:38.558> and<04:49:38.760> the<04:49:38.958> actions<04:49:39.360> are
04:49:39.628 --> 04:49:39.638 align:start position:0%
looking pretty good and the actions are
04:49:39.638 --> 04:49:42.590 align:start position:0%
looking pretty good and the actions are
there<04:49:39.958> as<04:49:40.160> well<04:49:40.878> so<04:49:41.320> let's<04:49:41.520> focus<04:49:41.958> on<04:49:42.120> the<04:49:42.280> post
04:49:42.590 --> 04:49:42.600 align:start position:0%
there as well so let's focus on the post
04:49:42.600 --> 04:49:46.430 align:start position:0%
there as well so let's focus on the post
Details<04:49:43.120> page<04:49:43.480> next<04:49:44.160> by<04:49:44.400> going<04:49:44.638> to<04:49:45.320> post
04:49:46.430 --> 04:49:46.440 align:start position:0%
Details page next by going to post
04:49:46.440 --> 04:49:50.430 align:start position:0%
Details page next by going to post
details<04:49:47.440> and<04:49:47.718> implementing<04:49:48.520> its<04:49:49.040> UI<04:49:50.040> to
04:49:50.430 --> 04:49:50.440 align:start position:0%
details and implementing its UI to
04:49:50.440 --> 04:49:52.670 align:start position:0%
details and implementing its UI to
implement<04:49:50.878> the<04:49:51.000> post<04:49:51.360> details<04:49:52.040> we<04:49:52.240> first<04:49:52.520> have
04:49:52.670 --> 04:49:52.680 align:start position:0%
implement the post details we first have
04:49:52.680 --> 04:49:55.230 align:start position:0%
implement the post details we first have
to<04:49:52.920> fetch<04:49:53.638> the<04:49:53.840> post<04:49:54.160> details<04:49:54.840> from<04:49:55.080> the
04:49:55.230 --> 04:49:55.240 align:start position:0%
to fetch the post details from the
04:49:55.240 --> 04:49:57.670 align:start position:0%
to fetch the post details from the
database<04:49:56.200> and<04:49:56.400> the<04:49:56.600> way<04:49:56.920> in<04:49:57.080> which<04:49:57.240> we<04:49:57.360> can<04:49:57.480> do
04:49:57.670 --> 04:49:57.680 align:start position:0%
database and the way in which we can do
04:49:57.680 --> 04:50:01.510 align:start position:0%
database and the way in which we can do
that<04:49:58.440> is<04:49:58.878> by<04:49:59.040> saying<04:49:59.920> const
04:50:01.510 --> 04:50:01.520 align:start position:0%
that is by saying const
04:50:01.520 --> 04:50:04.350 align:start position:0%
that is by saying const
data<04:50:02.520> which<04:50:02.680> we<04:50:02.760> can<04:50:02.920> rename<04:50:03.280> to<04:50:03.480> post
04:50:04.350 --> 04:50:04.360 align:start position:0%
data which we can rename to post
04:50:04.360 --> 04:50:06.788 align:start position:0%
data which we can rename to post
as<04:50:04.480> well<04:50:04.638> as<04:50:04.840> is<04:50:05.040> loading<04:50:05.718> or<04:50:05.920> in<04:50:06.080> this<04:50:06.240> case<04:50:06.520> is
04:50:06.788 --> 04:50:06.798 align:start position:0%
as well as is loading or in this case is
04:50:06.798 --> 04:50:08.990 align:start position:0%
as well as is loading or in this case is
pending<04:50:07.360> because<04:50:07.520> we're<04:50:07.718> using<04:50:08.200> react<04:50:08.638> query
04:50:08.990 --> 04:50:09.000 align:start position:0%
pending because we're using react query
04:50:09.000 --> 04:50:14.990 align:start position:0%
pending because we're using react query
version<04:50:09.400> 5<04:50:10.240> is<04:50:10.480> equal<04:50:10.798> to<04:50:11.600> use<04:50:12.440> get<04:50:13.120> post<04:50:13.798> by<04:50:14.200> ID
04:50:14.990 --> 04:50:15.000 align:start position:0%
version 5 is equal to use get post by ID
04:50:15.000 --> 04:50:17.750 align:start position:0%
version 5 is equal to use get post by ID
coming<04:50:15.280> from<04:50:15.558> queries<04:50:16.080> and<04:50:16.440> mutations<04:50:17.440> to
04:50:17.750 --> 04:50:17.760 align:start position:0%
coming from queries and mutations to
04:50:17.760 --> 04:50:19.830 align:start position:0%
coming from queries and mutations to
which<04:50:18.280> we<04:50:18.400> need<04:50:18.558> to<04:50:18.718> pass<04:50:19.000> the
04:50:19.830 --> 04:50:19.840 align:start position:0%
which we need to pass the
04:50:19.840 --> 04:50:23.548 align:start position:0%
which we need to pass the
ID<04:50:20.840> the<04:50:21.000> ID<04:50:21.558> is<04:50:21.718> coming<04:50:22.000> from<04:50:22.200> use<04:50:22.558> perams<04:50:23.400> so
04:50:23.548 --> 04:50:23.558 align:start position:0%
ID the ID is coming from use perams so
04:50:23.558 --> 04:50:27.628 align:start position:0%
ID the ID is coming from use perams so
we<04:50:23.680> can<04:50:23.840> immediately<04:50:24.718> import<04:50:25.718> use<04:50:26.638> perams
04:50:27.628 --> 04:50:27.638 align:start position:0%
we can immediately import use perams
04:50:27.638 --> 04:50:30.430 align:start position:0%
we can immediately import use perams
which<04:50:27.798> is<04:50:28.000> coming<04:50:28.280> from<04:50:28.638> react<04:50:29.080> router<04:50:29.480> Dom
04:50:30.430 --> 04:50:30.440 align:start position:0%
which is coming from react router Dom
04:50:30.440 --> 04:50:34.470 align:start position:0%
which is coming from react router Dom
and<04:50:30.558> then<04:50:30.718> we<04:50:30.798> can<04:50:30.920> say<04:50:31.200> const<04:50:31.958> ID<04:50:32.840> is<04:50:33.120> equal<04:50:33.440> to
04:50:34.470 --> 04:50:34.480 align:start position:0%
and then we can say const ID is equal to
04:50:34.480 --> 04:50:38.430 align:start position:0%
and then we can say const ID is equal to
use<04:50:35.120> for<04:50:35.760> Rams<04:50:36.760> and<04:50:37.000> that<04:50:37.200> ID<04:50:37.760> can<04:50:38.160> sometimes
04:50:38.430 --> 04:50:38.440 align:start position:0%
use for Rams and that ID can sometimes
04:50:38.440 --> 04:50:41.110 align:start position:0%
use for Rams and that ID can sometimes
be<04:50:38.718> an<04:50:38.878> empty<04:50:39.240> string<04:50:40.000> like<04:50:40.160> so<04:50:40.638> in<04:50:40.798> case<04:50:41.000> we
04:50:41.110 --> 04:50:41.120 align:start position:0%
be an empty string like so in case we
04:50:41.120 --> 04:50:43.310 align:start position:0%
be an empty string like so in case we
didn't<04:50:41.320> get<04:50:41.480> fetch<04:50:41.680> it<04:50:41.798> from<04:50:41.958> the<04:50:42.320> perams
04:50:43.310 --> 04:50:43.320 align:start position:0%
didn't get fetch it from the perams
04:50:43.320 --> 04:50:46.470 align:start position:0%
didn't get fetch it from the perams
great<04:50:44.080> so<04:50:44.320> now<04:50:44.558> we<04:50:44.680> have<04:50:44.798> the<04:50:44.958> F<04:50:45.360> data<04:50:46.120> let's<04:50:46.360> go
04:50:46.470 --> 04:50:46.480 align:start position:0%
great so now we have the F data let's go
04:50:46.480 --> 04:50:49.750 align:start position:0%
great so now we have the F data let's go
ahead<04:50:46.920> and<04:50:47.080> use<04:50:47.320> it<04:50:47.718> within<04:50:47.958> our<04:50:48.520> UI<04:50:49.520> right
04:50:49.750 --> 04:50:49.760 align:start position:0%
ahead and use it within our UI right
04:50:49.760 --> 04:50:52.110 align:start position:0%
ahead and use it within our UI right
here<04:50:50.280> we<04:50:50.400> can<04:50:50.600> wrap<04:50:51.040> everything<04:50:51.320> in<04:50:51.440> a<04:50:51.638> div
04:50:52.110 --> 04:50:52.120 align:start position:0%
here we can wrap everything in a div
04:50:52.120 --> 04:50:55.788 align:start position:0%
here we can wrap everything in a div
that<04:50:52.280> has<04:50:52.440> a<04:50:52.760> class<04:50:53.160> name<04:50:53.760> equal<04:50:54.080> to<04:50:54.600> postore
04:50:55.788 --> 04:50:55.798 align:start position:0%
that has a class name equal to postore
04:50:55.798 --> 04:50:57.830 align:start position:0%
that has a class name equal to postore
details<04:50:56.798> Das
04:50:57.830 --> 04:50:57.840 align:start position:0%
details Das
04:50:57.840 --> 04:51:00.230 align:start position:0%
details Das
container<04:50:58.840> inside<04:50:59.120> of<04:50:59.280> this<04:50:59.520> div<04:50:59.958> we<04:51:00.040> can
04:51:00.230 --> 04:51:00.240 align:start position:0%
container inside of this div we can
04:51:00.240 --> 04:51:02.628 align:start position:0%
container inside of this div we can
check<04:51:00.638> if<04:51:00.840> we<04:51:01.000> are<04:51:01.320> currently<04:51:01.718> loading<04:51:02.400> so<04:51:02.558> we
04:51:02.628 --> 04:51:02.638 align:start position:0%
check if we are currently loading so we
04:51:02.638 --> 04:51:05.910 align:start position:0%
check if we are currently loading so we
can<04:51:02.798> say<04:51:03.120> if<04:51:03.480> is<04:51:04.200> pending<04:51:05.200> in<04:51:05.400> that<04:51:05.600> case<04:51:05.798> we
04:51:05.910 --> 04:51:05.920 align:start position:0%
can say if is pending in that case we
04:51:05.920 --> 04:51:08.548 align:start position:0%
can say if is pending in that case we
want<04:51:06.040> to<04:51:06.360> return<04:51:06.958> a<04:51:07.160> self-closing<04:51:08.080> loader
04:51:08.548 --> 04:51:08.558 align:start position:0%
want to return a self-closing loader
04:51:08.558 --> 04:51:10.590 align:start position:0%
want to return a self-closing loader
component<04:51:09.360> which<04:51:09.520> we<04:51:09.600> can<04:51:09.840> import<04:51:10.320> from
04:51:10.590 --> 04:51:10.600 align:start position:0%
component which we can import from
04:51:10.600 --> 04:51:13.788 align:start position:0%
component which we can import from
components<04:51:11.240> loader<04:51:12.240> else<04:51:12.840> we<04:51:12.920> can<04:51:13.240> return<04:51:13.558> a
04:51:13.788 --> 04:51:13.798 align:start position:0%
components loader else we can return a
04:51:13.798 --> 04:51:17.708 align:start position:0%
components loader else we can return a
div<04:51:14.680> that<04:51:14.920> has<04:51:15.240> a<04:51:15.520> class<04:51:15.920> name<04:51:16.680> equal<04:51:17.000> to
04:51:17.708 --> 04:51:17.718 align:start position:0%
div that has a class name equal to
04:51:17.718 --> 04:51:21.270 align:start position:0%
div that has a class name equal to
postore<04:51:18.718> details<04:51:19.638> dcard<04:51:20.638> this<04:51:20.760> is<04:51:20.878> going<04:51:21.040> to
04:51:21.270 --> 04:51:21.280 align:start position:0%
postore details dcard this is going to
04:51:21.280 --> 04:51:23.910 align:start position:0%
postore details dcard this is going to
create<04:51:21.638> this<04:51:21.920> rectangle<04:51:22.480> that<04:51:22.600> you<04:51:22.680> can<04:51:22.920> see
04:51:23.910 --> 04:51:23.920 align:start position:0%
create this rectangle that you can see
04:51:23.920 --> 04:51:26.030 align:start position:0%
create this rectangle that you can see
within<04:51:24.200> it<04:51:24.480> we<04:51:24.558> can<04:51:24.760> immediately<04:51:25.280> render<04:51:25.878> the
04:51:26.030 --> 04:51:26.040 align:start position:0%
within it we can immediately render the
04:51:26.040 --> 04:51:28.708 align:start position:0%
within it we can immediately render the
Creator<04:51:26.480> image<04:51:27.360> as<04:51:27.480> a<04:51:27.600> matter<04:51:27.920> of<04:51:28.120> fact<04:51:28.440> a<04:51:28.558> lot
04:51:28.708 --> 04:51:28.718 align:start position:0%
Creator image as a matter of fact a lot
04:51:28.718 --> 04:51:30.990 align:start position:0%
Creator image as a matter of fact a lot
of<04:51:28.920> things<04:51:29.440> from<04:51:29.760> the<04:51:29.920> homepage<04:51:30.638> which<04:51:30.798> we<04:51:30.878> can
04:51:30.990 --> 04:51:31.000 align:start position:0%
of things from the homepage which we can
04:51:31.000 --> 04:51:33.390 align:start position:0%
of things from the homepage which we can
see<04:51:31.320> right<04:51:31.558> here<04:51:32.040> like<04:51:32.280> the<04:51:32.520> Creator<04:51:33.040> image
04:51:33.390 --> 04:51:33.400 align:start position:0%
see right here like the Creator image
04:51:33.400 --> 04:51:35.230 align:start position:0%
see right here like the Creator image
and<04:51:33.520> all<04:51:33.718> all<04:51:33.798> of<04:51:33.958> these<04:51:34.160> details<04:51:34.878> can<04:51:35.040> be
04:51:35.230 --> 04:51:35.240 align:start position:0%
and all all of these details can be
04:51:35.240 --> 04:51:38.788 align:start position:0%
and all all of these details can be
taken<04:51:35.558> from<04:51:35.840> there<04:51:36.480> so<04:51:36.798> let's<04:51:37.080> go<04:51:37.280> to<04:51:37.558> our<04:51:37.958> home
04:51:38.788 --> 04:51:38.798 align:start position:0%
taken from there so let's go to our home
04:51:38.798 --> 04:51:40.788 align:start position:0%
taken from there so let's go to our home
and<04:51:38.878> then<04:51:39.000> we're<04:51:39.080> going<04:51:39.200> to<04:51:39.320> go<04:51:39.440> to<04:51:39.600> the<04:51:39.798> post
04:51:40.788 --> 04:51:40.798 align:start position:0%
and then we're going to go to the post
04:51:40.798 --> 04:51:44.470 align:start position:0%
and then we're going to go to the post
card<04:51:41.798> and<04:51:42.080> we<04:51:42.160> can<04:51:42.480> copy<04:51:43.400> this<04:51:43.760> div<04:51:44.320> that
04:51:44.470 --> 04:51:44.480 align:start position:0%
card and we can copy this div that
04:51:44.480 --> 04:51:46.670 align:start position:0%
card and we can copy this div that
contains<04:51:44.920> the<04:51:45.080> link<04:51:46.000> with<04:51:46.200> all<04:51:46.360> of<04:51:46.520> the
04:51:46.670 --> 04:51:46.680 align:start position:0%
contains the link with all of the
04:51:46.680 --> 04:51:50.310 align:start position:0%
contains the link with all of the
profile<04:51:47.280> details<04:51:48.280> so<04:51:48.480> let's<04:51:48.760> copy<04:51:49.000> it<04:51:49.920> all<04:51:50.200> the
04:51:50.310 --> 04:51:50.320 align:start position:0%
profile details so let's copy it all the
04:51:50.320 --> 04:51:53.510 align:start position:0%
profile details so let's copy it all the
way<04:51:50.520> to<04:51:51.000> here<04:51:52.000> and<04:51:52.160> then<04:51:52.320> we<04:51:52.440> can<04:51:52.718> paste<04:51:53.000> it
04:51:53.510 --> 04:51:53.520 align:start position:0%
way to here and then we can paste it
04:51:53.520 --> 04:51:56.430 align:start position:0%
way to here and then we can paste it
right<04:51:53.718> here<04:51:53.958> within<04:51:54.360> post<04:51:55.160> details<04:51:56.160> instead
04:51:56.430 --> 04:51:56.440 align:start position:0%
right here within post details instead
04:51:56.440 --> 04:51:58.110 align:start position:0%
right here within post details instead
of<04:51:56.600> this<04:51:56.760> image<04:51:57.000> that<04:51:57.160> we<04:51:57.280> just
04:51:58.110 --> 04:51:58.120 align:start position:0%
of this image that we just
04:51:58.120 --> 04:52:01.390 align:start position:0%
of this image that we just
added<04:51:59.120> there<04:51:59.320> we<04:51:59.520> go<04:51:59.798> I<04:51:59.878> can<04:52:00.040> indent<04:52:00.400> it
04:52:01.390 --> 04:52:01.400 align:start position:0%
added there we go I can indent it
04:52:01.400 --> 04:52:04.430 align:start position:0%
added there we go I can indent it
properly<04:52:02.400> we<04:52:02.520> have<04:52:02.638> to<04:52:02.878> import<04:52:03.320> link<04:52:04.080> coming
04:52:04.430 --> 04:52:04.440 align:start position:0%
properly we have to import link coming
04:52:04.440 --> 04:52:07.110 align:start position:0%
properly we have to import link coming
from<04:52:04.840> react<04:52:05.240> router<04:52:05.638> Dom<04:52:06.360> so<04:52:06.558> let's<04:52:06.760> get<04:52:06.878> it
04:52:07.110 --> 04:52:07.120 align:start position:0%
from react router Dom so let's get it
04:52:07.120 --> 04:52:07.910 align:start position:0%
from react router Dom so let's get it
right
04:52:07.910 --> 04:52:07.920 align:start position:0%
right
04:52:07.920 --> 04:52:10.990 align:start position:0%
right
here<04:52:08.920> we<04:52:09.040> can<04:52:09.200> also<04:52:09.440> notice<04:52:09.760> that<04:52:10.040> post<04:52:10.760> is
04:52:10.990 --> 04:52:11.000 align:start position:0%
here we can also notice that post is
04:52:11.000 --> 04:52:12.190 align:start position:0%
here we can also notice that post is
possibly
04:52:12.190 --> 04:52:12.200 align:start position:0%
possibly
04:52:12.200 --> 04:52:14.230 align:start position:0%
possibly
undefined<04:52:13.200> so<04:52:13.400> whenever<04:52:13.718> we're<04:52:13.920> talking
04:52:14.230 --> 04:52:14.240 align:start position:0%
undefined so whenever we're talking
04:52:14.240 --> 04:52:16.070 align:start position:0%
undefined so whenever we're talking
about<04:52:14.400> a<04:52:14.600> post<04:52:15.000> we<04:52:15.080> have<04:52:15.200> to<04:52:15.360> add<04:52:15.520> a<04:52:15.760> question
04:52:16.070 --> 04:52:16.080 align:start position:0%
about a post we have to add a question
04:52:16.080 --> 04:52:20.190 align:start position:0%
about a post we have to add a question
mark<04:52:16.600> after<04:52:17.400> so<04:52:17.680> question<04:52:17.958> mark<04:52:18.360> here<04:52:19.360> here<04:52:19.958> as
04:52:20.190 --> 04:52:20.200 align:start position:0%
mark after so question mark here here as
04:52:20.200 --> 04:52:23.548 align:start position:0%
mark after so question mark here here as
well<04:52:21.080> and<04:52:21.480> here<04:52:22.000> with<04:52:22.200> the<04:52:22.360> location<04:52:23.280> and<04:52:23.440> we
04:52:23.548 --> 04:52:23.558 align:start position:0%
well and here with the location and we
04:52:23.558 --> 04:52:25.788 align:start position:0%
well and here with the location and we
have<04:52:23.680> to<04:52:23.878> import<04:52:24.280> the<04:52:24.480> format<04:52:24.958> date<04:52:25.558> right
04:52:25.788 --> 04:52:25.798 align:start position:0%
have to import the format date right
04:52:25.798 --> 04:52:29.390 align:start position:0%
have to import the format date right
here<04:52:26.718> now<04:52:27.120> if<04:52:27.240> we<04:52:27.360> go<04:52:27.718> back<04:52:28.718> to<04:52:28.920> the<04:52:29.040> post
04:52:29.390 --> 04:52:29.400 align:start position:0%
here now if we go back to the post
04:52:29.400 --> 04:52:31.470 align:start position:0%
here now if we go back to the post
details<04:52:30.080> you<04:52:30.200> can<04:52:30.320> see<04:52:30.600> we<04:52:30.760> have<04:52:31.000> this<04:52:31.320> the
04:52:31.470 --> 04:52:31.480 align:start position:0%
details you can see we have this the
04:52:31.480 --> 04:52:35.628 align:start position:0%
details you can see we have this the
real<04:52:32.000> JSM<04:52:32.958> this<04:52:33.200> is<04:52:33.878> great<04:52:34.878> but<04:52:35.040> in<04:52:35.240> this<04:52:35.440> case
04:52:35.628 --> 04:52:35.638 align:start position:0%
real JSM this is great but in this case
04:52:35.638 --> 04:52:37.910 align:start position:0%
real JSM this is great but in this case
we<04:52:35.718> want<04:52:35.878> to<04:52:36.000> show<04:52:36.240> it<04:52:36.558> after<04:52:36.878> the<04:52:37.120> post<04:52:37.680> so<04:52:37.798> we
04:52:37.910 --> 04:52:37.920 align:start position:0%
we want to show it after the post so we
04:52:37.920 --> 04:52:41.030 align:start position:0%
we want to show it after the post so we
can<04:52:38.080> go<04:52:38.360> above<04:52:39.200> in<04:52:39.360> the<04:52:39.520> post<04:52:39.798> details<04:52:40.280> card
04:52:41.030 --> 04:52:41.040 align:start position:0%
can go above in the post details card
04:52:41.040 --> 04:52:42.910 align:start position:0%
can go above in the post details card
and<04:52:41.200> immediately<04:52:41.840> here<04:52:42.280> render<04:52:42.760> a
04:52:42.910 --> 04:52:42.920 align:start position:0%
and immediately here render a
04:52:42.920 --> 04:52:44.510 align:start position:0%
and immediately here render a
self-closing
04:52:44.510 --> 04:52:44.520 align:start position:0%
self-closing
04:52:44.520 --> 04:52:47.030 align:start position:0%
self-closing
image<04:52:45.520> that's<04:52:45.718> going<04:52:45.878> to<04:52:46.040> have<04:52:46.200> a<04:52:46.400> source
04:52:47.030 --> 04:52:47.040 align:start position:0%
image that's going to have a source
04:52:47.040 --> 04:52:51.750 align:start position:0%
image that's going to have a source
equal<04:52:47.680> to<04:52:48.680> post<04:52:49.160> question<04:52:49.440> mark.<04:52:50.080> image<04:52:50.760> URL
04:52:51.750 --> 04:52:51.760 align:start position:0%
equal to post question mark. image URL
04:52:51.760 --> 04:52:54.948 align:start position:0%
equal to post question mark. image URL
with<04:52:51.920> an<04:52:52.080> ALT<04:52:52.440> tag<04:52:52.680> of<04:52:53.200> Creator<04:52:54.200> and<04:52:54.360> a<04:52:54.638> class
04:52:54.948 --> 04:52:54.958 align:start position:0%
with an ALT tag of Creator and a class
04:52:54.958 --> 04:53:00.310 align:start position:0%
with an ALT tag of Creator and a class
name<04:52:55.400> equal<04:52:55.718> to<04:52:56.760> postore<04:52:57.760> details<04:52:58.600> D<04:52:59.200> IMG<04:53:00.200> and
04:53:00.310 --> 04:53:00.320 align:start position:0%
name equal to postore details D IMG and
04:53:00.320 --> 04:53:01.510 align:start position:0%
name equal to postore details D IMG and
this<04:53:00.440> is<04:53:00.558> not<04:53:00.680> going<04:53:00.840> to<04:53:00.920> be<04:53:01.040> Creator<04:53:01.400> it's
04:53:01.510 --> 04:53:01.520 align:start position:0%
this is not going to be Creator it's
04:53:01.520 --> 04:53:04.750 align:start position:0%
this is not going to be Creator it's
going<04:53:01.680> to<04:53:01.798> be<04:53:01.958> the<04:53:02.200> actual<04:53:02.878> post
04:53:04.750 --> 04:53:04.760 align:start position:0%
going to be the actual post
04:53:04.760 --> 04:53:06.590 align:start position:0%
going to be the actual post
there<04:53:04.920> we<04:53:05.080> go<04:53:05.400> so<04:53:05.558> now<04:53:05.680> we<04:53:05.798> can<04:53:05.878> see<04:53:06.080> the<04:53:06.240> post
04:53:06.590 --> 04:53:06.600 align:start position:0%
there we go so now we can see the post
04:53:06.600 --> 04:53:09.230 align:start position:0%
there we go so now we can see the post
and<04:53:06.718> then<04:53:06.840> we<04:53:06.958> can<04:53:07.080> see<04:53:07.360> who<04:53:07.638> created<04:53:08.200> the<04:53:08.360> post
04:53:09.230 --> 04:53:09.240 align:start position:0%
and then we can see who created the post
04:53:09.240 --> 04:53:11.590 align:start position:0%
and then we can see who created the post
we<04:53:09.360> can<04:53:09.558> rename<04:53:10.000> this<04:53:10.200> div<04:53:10.878> that<04:53:11.040> contains<04:53:11.440> the
04:53:11.590 --> 04:53:11.600 align:start position:0%
we can rename this div that contains the
04:53:11.600 --> 04:53:14.548 align:start position:0%
we can rename this div that contains the
link<04:53:12.400> into
04:53:14.548 --> 04:53:14.558 align:start position:0%
link into
04:53:14.558 --> 04:53:17.310 align:start position:0%
link into
postore<04:53:15.760> detailsinfo
04:53:17.310 --> 04:53:17.320 align:start position:0%
postore detailsinfo
04:53:17.320 --> 04:53:20.350 align:start position:0%
postore detailsinfo
there<04:53:18.320> we<04:53:18.520> go<04:53:19.040> and<04:53:19.160> then<04:53:19.320> we<04:53:19.400> can<04:53:19.600> wrap<04:53:19.840> it<04:53:19.958> all
04:53:20.350 --> 04:53:20.360 align:start position:0%
there we go and then we can wrap it all
04:53:20.360 --> 04:53:23.030 align:start position:0%
there we go and then we can wrap it all
in<04:53:20.600> another<04:53:21.000> div<04:53:22.000> this<04:53:22.200> div<04:53:22.480> is<04:53:22.600> going<04:53:22.760> to<04:53:22.920> have
04:53:23.030 --> 04:53:23.040 align:start position:0%
in another div this div is going to have
04:53:23.040 --> 04:53:27.190 align:start position:0%
in another div this div is going to have
a<04:53:23.280> class<04:53:23.638> name<04:53:24.200> equal<04:53:24.520> to<04:53:25.120> flex<04:53:26.080> between<04:53:27.080> as
04:53:27.190 --> 04:53:27.200 align:start position:0%
a class name equal to flex between as
04:53:27.200 --> 04:53:28.708 align:start position:0%
a class name equal to flex between as
well<04:53:27.400> as
04:53:28.708 --> 04:53:28.718 align:start position:0%
well as
04:53:28.718 --> 04:53:31.230 align:start position:0%
well as
w-o<04:53:29.718> and<04:53:29.920> now<04:53:30.240> we'll<04:53:30.440> have<04:53:30.558> to<04:53:30.680> put<04:53:30.920> all<04:53:31.040> of
04:53:31.230 --> 04:53:31.240 align:start position:0%
w-o and now we'll have to put all of
04:53:31.240 --> 04:53:33.190 align:start position:0%
w-o and now we'll have to put all of
these<04:53:31.480> details<04:53:31.878> on<04:53:32.000> the<04:53:32.160> left<04:53:32.440> side<04:53:32.920> and<04:53:33.040> then
04:53:33.190 --> 04:53:33.200 align:start position:0%
these details on the left side and then
04:53:33.200 --> 04:53:35.510 align:start position:0%
these details on the left side and then
the<04:53:33.320> button<04:53:33.520> butons<04:53:33.920> on<04:53:34.040> the<04:53:34.240> right<04:53:34.480> side<04:53:35.240> so
04:53:35.510 --> 04:53:35.520 align:start position:0%
the button butons on the right side so
04:53:35.520 --> 04:53:38.190 align:start position:0%
the button butons on the right side so
let's<04:53:35.760> do<04:53:36.040> just<04:53:36.360> that<04:53:37.360> within<04:53:37.680> this<04:53:37.840> div<04:53:38.120> we
04:53:38.190 --> 04:53:38.200 align:start position:0%
let's do just that within this div we
04:53:38.200 --> 04:53:40.510 align:start position:0%
let's do just that within this div we
can<04:53:38.360> put<04:53:38.520> the<04:53:38.680> link<04:53:39.240> that<04:53:39.440> points<04:53:39.798> to<04:53:40.080> the
04:53:40.510 --> 04:53:40.520 align:start position:0%
can put the link that points to the
04:53:40.520 --> 04:53:43.750 align:start position:0%
can put the link that points to the
Creator<04:53:41.200> image<04:53:42.200> and<04:53:42.400> that<04:53:42.558> link<04:53:43.040> can<04:53:43.240> wrap
04:53:43.750 --> 04:53:43.760 align:start position:0%
Creator image and that link can wrap
04:53:43.760 --> 04:53:46.990 align:start position:0%
Creator image and that link can wrap
everything<04:53:44.440> all<04:53:44.840> the<04:53:45.000> way<04:53:45.760> to<04:53:46.040> the<04:53:46.160> end<04:53:46.760> right
04:53:46.990 --> 04:53:47.000 align:start position:0%
everything all the way to the end right
04:53:47.000 --> 04:53:49.510 align:start position:0%
everything all the way to the end right
here<04:53:47.760> and<04:53:47.920> we<04:53:48.040> can<04:53:48.160> remove<04:53:48.520> these<04:53:48.760> characters
04:53:49.510 --> 04:53:49.520 align:start position:0%
here and we can remove these characters
04:53:49.520 --> 04:53:51.948 align:start position:0%
here and we can remove these characters
that<04:53:49.600> I<04:53:49.718> don't<04:53:49.958> need<04:53:50.638> so<04:53:50.840> now<04:53:51.040> if<04:53:51.160> we<04:53:51.320> save<04:53:51.558> it
04:53:51.948 --> 04:53:51.958 align:start position:0%
that I don't need so now if we save it
04:53:51.958 --> 04:53:54.390 align:start position:0%
that I don't need so now if we save it
you<04:53:52.080> can<04:53:52.200> see<04:53:52.400> the<04:53:52.520> real<04:53:52.798> JSM<04:53:53.280> fits<04:53:53.600> nicely<04:53:54.280> and
04:53:54.390 --> 04:53:54.400 align:start position:0%
you can see the real JSM fits nicely and
04:53:54.400 --> 04:53:58.430 align:start position:0%
you can see the real JSM fits nicely and
we<04:53:54.520> can<04:53:54.760> put<04:53:55.040> this<04:53:55.638> link<04:53:56.718> within<04:53:57.718> this<04:53:57.878> new<04:53:58.120> div
04:53:58.430 --> 04:53:58.440 align:start position:0%
we can put this link within this new div
04:53:58.440 --> 04:54:01.590 align:start position:0%
we can put this link within this new div
that<04:53:58.558> we<04:53:58.680> have<04:53:58.840> created<04:53:59.760> with<04:53:59.920> a<04:54:00.120> flex
04:54:01.590 --> 04:54:01.600 align:start position:0%
that we have created with a flex
04:54:01.600 --> 04:54:04.030 align:start position:0%
that we have created with a flex
between<04:54:02.600> there<04:54:02.760> we<04:54:02.920> go
04:54:04.030 --> 04:54:04.040 align:start position:0%
between there we go
04:54:04.040 --> 04:54:06.390 align:start position:0%
between there we go
of<04:54:04.200> course<04:54:04.638> this<04:54:04.840> link<04:54:05.320> will<04:54:05.558> have<04:54:05.680> to<04:54:05.920> have<04:54:06.160> a
04:54:06.390 --> 04:54:06.400 align:start position:0%
of course this link will have to have a
04:54:06.400 --> 04:54:10.110 align:start position:0%
of course this link will have to have a
class<04:54:06.760> name<04:54:07.440> equal<04:54:07.760> to<04:54:08.600> flex<04:54:09.440> so<04:54:09.638> that<04:54:09.840> all<04:54:09.958> of
04:54:10.110 --> 04:54:10.120 align:start position:0%
class name equal to flex so that all of
04:54:10.120 --> 04:54:12.310 align:start position:0%
class name equal to flex so that all of
these<04:54:10.280> elements<04:54:10.718> appear<04:54:11.000> in<04:54:11.120> a<04:54:11.280> row<04:54:12.160> it's
04:54:12.310 --> 04:54:12.320 align:start position:0%
these elements appear in a row it's
04:54:12.320 --> 04:54:15.270 align:start position:0%
these elements appear in a row it's
going<04:54:12.480> to<04:54:12.638> have<04:54:12.920> items<04:54:13.400> Das<04:54:13.638> Center<04:54:14.558> and<04:54:14.798> a<04:54:15.040> gap
04:54:15.270 --> 04:54:15.280 align:start position:0%
going to have items Das Center and a gap
04:54:15.280 --> 04:54:16.150 align:start position:0%
going to have items Das Center and a gap
of
04:54:16.150 --> 04:54:16.160 align:start position:0%
of
04:54:16.160 --> 04:54:19.868 align:start position:0%
of
three<04:54:17.160> and<04:54:17.400> now<04:54:17.760> we<04:54:17.878> can<04:54:18.080> go<04:54:18.440> below<04:54:19.000> this<04:54:19.200> link
04:54:19.868 --> 04:54:19.878 align:start position:0%
three and now we can go below this link
04:54:19.878 --> 04:54:21.990 align:start position:0%
three and now we can go below this link
and<04:54:20.000> we<04:54:20.120> can<04:54:20.280> create<04:54:20.798> those<04:54:21.160> actions<04:54:21.760> that<04:54:21.920> we
04:54:21.990 --> 04:54:22.000 align:start position:0%
and we can create those actions that we
04:54:22.000 --> 04:54:24.548 align:start position:0%
and we can create those actions that we
should<04:54:22.200> have<04:54:22.360> on<04:54:22.520> the<04:54:22.680> right<04:54:23.080> side<04:54:24.080> if<04:54:24.200> at<04:54:24.360> any
04:54:24.548 --> 04:54:24.558 align:start position:0%
should have on the right side if at any
04:54:24.558 --> 04:54:26.190 align:start position:0%
should have on the right side if at any
point<04:54:24.840> something<04:54:25.160> breaks<04:54:25.520> or<04:54:25.718> doesn't<04:54:25.958> look
04:54:26.190 --> 04:54:26.200 align:start position:0%
point something breaks or doesn't look
04:54:26.200 --> 04:54:28.070 align:start position:0%
point something breaks or doesn't look
the<04:54:26.320> same<04:54:26.718> I<04:54:26.798> know<04:54:27.000> we<04:54:27.280> switched<04:54:27.680> a<04:54:27.760> lot<04:54:27.920> of
04:54:28.070 --> 04:54:28.080 align:start position:0%
the same I know we switched a lot of
04:54:28.080 --> 04:54:30.230 align:start position:0%
the same I know we switched a lot of
code<04:54:28.400> here<04:54:29.160> you<04:54:29.280> can<04:54:29.440> go<04:54:29.558> to<04:54:29.680> the<04:54:29.798> finished
04:54:30.230 --> 04:54:30.240 align:start position:0%
code here you can go to the finished
04:54:30.240 --> 04:54:32.548 align:start position:0%
code here you can go to the finished
project<04:54:30.638> GitHub<04:54:31.000> repository<04:54:31.798> and<04:54:32.040> find<04:54:32.360> the
04:54:32.548 --> 04:54:32.558 align:start position:0%
project GitHub repository and find the
04:54:32.558 --> 04:54:35.430 align:start position:0%
project GitHub repository and find the
post<04:54:32.878> Details<04:54:33.280> page<04:54:33.638> page<04:54:34.638> now<04:54:34.920> below<04:54:35.240> this
04:54:35.430 --> 04:54:35.440 align:start position:0%
post Details page page now below this
04:54:35.440 --> 04:54:37.628 align:start position:0%
post Details page page now below this
link<04:54:35.840> we<04:54:35.958> can<04:54:36.120> create<04:54:36.480> another<04:54:36.798> div<04:54:37.440> that's
04:54:37.628 --> 04:54:37.638 align:start position:0%
link we can create another div that's
04:54:37.638 --> 04:54:40.910 align:start position:0%
link we can create another div that's
going<04:54:37.798> to<04:54:38.080> have<04:54:38.320> a<04:54:38.600> class<04:54:38.920> name<04:54:39.520> equal<04:54:39.840> to<04:54:40.040> flex
04:54:40.910 --> 04:54:40.920 align:start position:0%
going to have a class name equal to flex
04:54:40.920 --> 04:54:43.708 align:start position:0%
going to have a class name equal to flex
Center<04:54:41.920> as<04:54:42.040> well<04:54:42.160> as<04:54:42.320> a<04:54:42.520> gap<04:54:42.798> of
04:54:43.708 --> 04:54:43.718 align:start position:0%
Center as well as a gap of
04:54:43.718 --> 04:54:46.350 align:start position:0%
Center as well as a gap of
four<04:54:44.718> within<04:54:45.000> it<04:54:45.320> we<04:54:45.400> can<04:54:45.600> create<04:54:45.958> another
04:54:46.350 --> 04:54:46.360 align:start position:0%
four within it we can create another
04:54:46.360 --> 04:54:48.788 align:start position:0%
four within it we can create another
link<04:54:47.360> this<04:54:47.520> link<04:54:47.878> is<04:54:48.000> going<04:54:48.160> to<04:54:48.280> render<04:54:48.638> the
04:54:48.788 --> 04:54:48.798 align:start position:0%
link this link is going to render the
04:54:48.798 --> 04:54:52.150 align:start position:0%
link this link is going to render the
edit<04:54:49.080> image<04:54:49.760> so<04:54:50.000> let's<04:54:50.200> say<04:54:50.798> image<04:54:51.798> is<04:54:51.958> going
04:54:52.150 --> 04:54:52.160 align:start position:0%
edit image so let's say image is going
04:54:52.160 --> 04:54:57.708 align:start position:0%
edit image so let's say image is going
to<04:54:52.320> point<04:54:52.638> to<04:54:53.240> Source<04:54:54.240> SL<04:54:54.638> assets<04:54:55.638> SL<04:54:56.120> ions<04:54:57.120> SL
04:54:57.708 --> 04:54:57.718 align:start position:0%
to point to Source SL assets SL ions SL
04:54:57.718 --> 04:54:59.350 align:start position:0%
to point to Source SL assets SL ions SL
edit.
04:54:59.350 --> 04:54:59.360 align:start position:0%
edit.
04:54:59.360 --> 04:55:02.230 align:start position:0%
edit.
SVG<04:55:00.360> and<04:55:00.520> of<04:55:00.680> course<04:55:01.160> if<04:55:01.280> it's<04:55:01.440> a<04:55:01.558> link<04:55:02.000> we<04:55:02.160> have
04:55:02.230 --> 04:55:02.240 align:start position:0%
SVG and of course if it's a link we have
04:55:02.240 --> 04:55:04.270 align:start position:0%
SVG and of course if it's a link we have
to<04:55:02.360> give<04:55:02.480> it<04:55:02.600> a<04:55:02.718> two<04:55:03.000> property<04:55:03.760> it's<04:55:03.920> going<04:55:04.080> to
04:55:04.270 --> 04:55:04.280 align:start position:0%
to give it a two property it's going to
04:55:04.280 --> 04:55:06.590 align:start position:0%
to give it a two property it's going to
go<04:55:04.400> to<04:55:04.600> forward<04:55:05.000> slash<04:55:05.520> we<04:55:05.638> have<04:55:05.760> to<04:55:05.878> make<04:55:06.000> it
04:55:06.590 --> 04:55:06.600 align:start position:0%
go to forward slash we have to make it
04:55:06.600 --> 04:55:09.190 align:start position:0%
go to forward slash we have to make it
Dynamic<04:55:07.600> update
04:55:09.190 --> 04:55:09.200 align:start position:0%
Dynamic update
04:55:09.200 --> 04:55:10.788 align:start position:0%
Dynamic update
dpost
04:55:10.788 --> 04:55:10.798 align:start position:0%
dpost
04:55:10.798 --> 04:55:15.110 align:start position:0%
dpost
slost<04:55:11.798> question<04:55:12.160> mark.<04:55:13.160> dollar<04:55:13.558> sign<04:55:13.958> ID<04:55:14.958> and
04:55:15.110 --> 04:55:15.120 align:start position:0%
slost question mark. dollar sign ID and
04:55:15.120 --> 04:55:17.948 align:start position:0%
slost question mark. dollar sign ID and
there<04:55:15.240> we<04:55:15.400> go<04:55:15.638> we<04:55:15.760> have<04:55:15.878> a<04:55:16.040> huge<04:55:16.360> edit<04:55:16.958> button
04:55:17.948 --> 04:55:17.958 align:start position:0%
there we go we have a huge edit button
04:55:17.958 --> 04:55:20.350 align:start position:0%
there we go we have a huge edit button
we<04:55:18.200> only<04:55:18.480> want<04:55:18.638> to<04:55:18.798> show<04:55:19.160> this<04:55:19.718> if<04:55:19.920> the<04:55:20.080> person
04:55:20.350 --> 04:55:20.360 align:start position:0%
we only want to show this if the person
04:55:20.360 --> 04:55:23.230 align:start position:0%
we only want to show this if the person
that<04:55:20.558> created<04:55:20.958> it<04:55:21.400> is<04:55:21.638> the<04:55:21.840> author<04:55:22.638> so<04:55:23.000> we<04:55:23.080> need
04:55:23.230 --> 04:55:23.240 align:start position:0%
that created it is the author so we need
04:55:23.240 --> 04:55:25.070 align:start position:0%
that created it is the author so we need
to<04:55:23.480> again<04:55:23.840> know<04:55:24.200> who<04:55:24.360> is<04:55:24.520> the<04:55:24.638> currently
04:55:25.070 --> 04:55:25.080 align:start position:0%
to again know who is the currently
04:55:25.080 --> 04:55:27.910 align:start position:0%
to again know who is the currently
logged<04:55:25.400> in<04:55:25.558> user<04:55:26.520> to<04:55:26.680> know<04:55:27.000> that<04:55:27.440> we<04:55:27.520> can<04:55:27.638> say
04:55:27.910 --> 04:55:27.920 align:start position:0%
logged in user to know that we can say
04:55:27.920 --> 04:55:33.708 align:start position:0%
logged in user to know that we can say
const<04:55:28.840> user<04:55:29.520> is<04:55:29.718> equal<04:55:30.040> to<04:55:30.878> use<04:55:31.600> user<04:55:32.400> context
04:55:33.708 --> 04:55:33.718 align:start position:0%
const user is equal to use user context
04:55:33.718 --> 04:55:36.430 align:start position:0%
const user is equal to use user context
and<04:55:33.840> we<04:55:33.920> can<04:55:34.120> import<04:55:34.440> it<04:55:34.878> and<04:55:35.040> now<04:55:35.200> we<04:55:35.320> have<04:55:35.520> the
04:55:36.430 --> 04:55:36.440 align:start position:0%
and we can import it and now we have the
04:55:36.440 --> 04:55:40.190 align:start position:0%
and we can import it and now we have the
user<04:55:37.440> so<04:55:37.600> we<04:55:37.680> can<04:55:37.878> go<04:55:38.120> back<04:55:38.558> down<04:55:39.558> and<04:55:39.760> to<04:55:40.000> this
04:55:40.190 --> 04:55:40.200 align:start position:0%
user so we can go back down and to this
04:55:40.200 --> 04:55:43.830 align:start position:0%
user so we can go back down and to this
link<04:55:41.000> we<04:55:41.120> can<04:55:41.320> apply<04:55:41.718> a<04:55:41.958> class<04:55:42.360> name<04:55:43.360> saying
04:55:43.830 --> 04:55:43.840 align:start position:0%
link we can apply a class name saying
04:55:43.840 --> 04:55:49.470 align:start position:0%
link we can apply a class name saying
that<04:55:44.240> if<04:55:45.080> user.<04:55:46.080> ID<04:55:46.958> is<04:55:47.200> not<04:55:47.638> equal<04:55:48.000> to<04:55:48.840> post
04:55:49.470 --> 04:55:49.480 align:start position:0%
that if user. ID is not equal to post
04:55:49.480 --> 04:55:51.670 align:start position:0%
that if user. ID is not equal to post
question<04:55:49.840> mark.
04:55:51.670 --> 04:55:51.680 align:start position:0%
question mark.
04:55:51.680 --> 04:55:55.548 align:start position:0%
question mark.
creator.<04:55:52.680> dollar<04:55:53.000> sign<04:55:53.638> ID<04:55:54.638> in<04:55:54.878> that<04:55:55.160> case<04:55:55.440> we
04:55:55.548 --> 04:55:55.558 align:start position:0%
creator. dollar sign ID in that case we
04:55:55.558 --> 04:55:57.670 align:start position:0%
creator. dollar sign ID in that case we
want<04:55:55.718> to<04:55:55.878> make<04:55:56.040> it<04:55:56.440> hidden<04:55:56.920> so<04:55:57.160> completely
04:55:57.670 --> 04:55:57.680 align:start position:0%
want to make it hidden so completely
04:55:57.680 --> 04:55:59.910 align:start position:0%
want to make it hidden so completely
hide<04:55:57.878> it<04:55:58.600> in<04:55:58.798> this<04:55:58.958> case<04:55:59.120> it's<04:55:59.280> still<04:55:59.558> there
04:55:59.910 --> 04:55:59.920 align:start position:0%
hide it in this case it's still there
04:55:59.920 --> 04:56:02.868 align:start position:0%
hide it in this case it's still there
because<04:56:00.160> we<04:56:00.360> created<04:56:00.760> it<04:56:01.600> then<04:56:02.040> this<04:56:02.280> image
04:56:02.868 --> 04:56:02.878 align:start position:0%
because we created it then this image
04:56:02.878 --> 04:56:07.070 align:start position:0%
because we created it then this image
has<04:56:03.040> to<04:56:03.440> have<04:56:03.718> a<04:56:04.000> width<04:56:04.680> of<04:56:04.920> about<04:56:05.638> 24<04:56:06.638> and<04:56:06.798> a
04:56:07.070 --> 04:56:07.080 align:start position:0%
has to have a width of about 24 and a
04:56:07.080 --> 04:56:11.868 align:start position:0%
has to have a width of about 24 and a
height<04:56:07.480> of<04:56:07.958> 24<04:56:08.958> and<04:56:09.200> an<04:56:09.360> Al<04:56:09.718> tag<04:56:10.040> of<04:56:10.680> edit<04:56:11.680> it's
04:56:11.868 --> 04:56:11.878 align:start position:0%
height of 24 and an Al tag of edit it's
04:56:11.878 --> 04:56:14.030 align:start position:0%
height of 24 and an Al tag of edit it's
much<04:56:12.080> smaller<04:56:12.638> we<04:56:12.760> should<04:56:13.000> also<04:56:13.320> make<04:56:13.638> this
04:56:14.030 --> 04:56:14.040 align:start position:0%
much smaller we should also make this
04:56:14.040 --> 04:56:16.430 align:start position:0%
much smaller we should also make this
profile<04:56:14.400> photo<04:56:14.760> smaller<04:56:15.360> as<04:56:15.558> well<04:56:16.040> so<04:56:16.240> let's
04:56:16.430 --> 04:56:16.440 align:start position:0%
profile photo smaller as well so let's
04:56:16.440 --> 04:56:20.670 align:start position:0%
profile photo smaller as well so let's
go<04:56:16.600> to<04:56:16.798> the<04:56:17.400> Creator<04:56:18.400> and<04:56:18.600> we<04:56:18.718> can<04:56:18.878> make<04:56:19.040> it<04:56:19.680> W8
04:56:20.670 --> 04:56:20.680 align:start position:0%
go to the Creator and we can make it W8
04:56:20.680 --> 04:56:24.270 align:start position:0%
go to the Creator and we can make it W8
and<04:56:21.000> H<04:56:21.520> can<04:56:21.760> be<04:56:22.280> 8<04:56:22.840> as
04:56:24.270 --> 04:56:24.280 align:start position:0%
and H can be 8 as
04:56:24.280 --> 04:56:28.310 align:start position:0%
and H can be 8 as
well<04:56:25.280> but<04:56:25.480> on<04:56:25.718> large<04:56:26.120> devices<04:56:26.878> W<04:56:27.320> can<04:56:27.440> be<04:56:27.600> 12
04:56:28.310 --> 04:56:28.320 align:start position:0%
well but on large devices W can be 12
04:56:28.320 --> 04:56:31.750 align:start position:0%
well but on large devices W can be 12
and<04:56:28.520> age<04:56:28.840> can<04:56:29.000> be<04:56:29.400> 12<04:56:30.400> and<04:56:30.600> if<04:56:30.718> we<04:56:30.878> save<04:56:31.120> it<04:56:31.638> we
04:56:31.750 --> 04:56:31.760 align:start position:0%
and age can be 12 and if we save it we
04:56:31.760 --> 04:56:34.830 align:start position:0%
and age can be 12 and if we save it we
have<04:56:31.878> to<04:56:32.000> say<04:56:32.200> on<04:56:32.440> large<04:56:32.798> devices<04:56:33.480> H<04:56:33.760> is<04:56:33.958> 12
04:56:34.830 --> 04:56:34.840 align:start position:0%
have to say on large devices H is 12
04:56:34.840 --> 04:56:37.390 align:start position:0%
have to say on large devices H is 12
there<04:56:35.000> we<04:56:35.160> go<04:56:35.480> that's<04:56:35.680> looking<04:56:36.160> better<04:56:37.160> and
04:56:37.390 --> 04:56:37.400 align:start position:0%
there we go that's looking better and
04:56:37.400 --> 04:56:40.390 align:start position:0%
there we go that's looking better and
now<04:56:37.840> alongside<04:56:38.840> this<04:56:39.080> edit<04:56:39.600> we<04:56:39.760> also<04:56:40.000> want<04:56:40.160> to
04:56:40.390 --> 04:56:40.400 align:start position:0%
now alongside this edit we also want to
04:56:40.400 --> 04:56:41.708 align:start position:0%
now alongside this edit we also want to
add<04:56:40.638> another
04:56:41.708 --> 04:56:41.718 align:start position:0%
add another
04:56:41.718 --> 04:56:44.590 align:start position:0%
add another
button<04:56:42.718> but<04:56:42.958> this<04:56:43.160> time<04:56:43.558> the<04:56:43.718> button<04:56:44.280> is<04:56:44.440> going
04:56:44.590 --> 04:56:44.600 align:start position:0%
button but this time the button is going
04:56:44.600 --> 04:56:48.230 align:start position:0%
button but this time the button is going
to<04:56:44.798> be<04:56:45.160> for
04:56:48.230 --> 04:56:48.240 align:start position:0%
04:56:48.240 --> 04:56:52.150 align:start position:0%
delete<04:56:49.240> so<04:56:49.440> we<04:56:49.520> can<04:56:49.680> say<04:56:49.958> on<04:56:50.680> click<04:56:51.680> we<04:56:51.798> want<04:56:51.958> to
04:56:52.150 --> 04:56:52.160 align:start position:0%
delete so we can say on click we want to
04:56:52.160 --> 04:56:56.590 align:start position:0%
delete so we can say on click we want to
call<04:56:52.680> a<04:56:52.878> handle<04:56:53.638> delete<04:56:54.958> post<04:56:55.958> and<04:56:56.200> we<04:56:56.360> have<04:56:56.440> to
04:56:56.590 --> 04:56:56.600 align:start position:0%
call a handle delete post and we have to
04:56:56.600 --> 04:56:59.708 align:start position:0%
call a handle delete post and we have to
declare<04:56:57.000> that<04:56:57.240> function<04:56:57.558> of<04:56:57.718> course<04:56:58.400> const
04:56:59.708 --> 04:56:59.718 align:start position:0%
declare that function of course const
04:56:59.718 --> 04:57:03.708 align:start position:0%
declare that function of course const
handle<04:57:00.840> delete<04:57:01.840> post<04:57:02.558> for<04:57:02.760> now<04:57:02.958> it<04:57:03.400> be<04:57:03.558> an
04:57:03.708 --> 04:57:03.718 align:start position:0%
handle delete post for now it be an
04:57:03.718 --> 04:57:05.548 align:start position:0%
handle delete post for now it be an
empty<04:57:04.280> callback
04:57:05.548 --> 04:57:05.558 align:start position:0%
empty callback
04:57:05.558 --> 04:57:08.350 align:start position:0%
empty callback
function<04:57:06.558> it's<04:57:06.840> also<04:57:07.200> going<04:57:07.360> to<04:57:07.638> have<04:57:07.920> a
04:57:08.350 --> 04:57:08.360 align:start position:0%
function it's also going to have a
04:57:08.360 --> 04:57:11.470 align:start position:0%
function it's also going to have a
variant<04:57:09.360> equal<04:57:09.638> to<04:57:09.958> ghost<04:57:10.958> it's<04:57:11.160> going<04:57:11.360> to
04:57:11.470 --> 04:57:11.480 align:start position:0%
variant equal to ghost it's going to
04:57:11.480 --> 04:57:14.190 align:start position:0%
variant equal to ghost it's going to
have<04:57:11.600> a<04:57:11.798> class<04:57:12.160> name<04:57:12.798> equal<04:57:13.080> to
04:57:14.190 --> 04:57:14.200 align:start position:0%
have a class name equal to
04:57:14.200 --> 04:57:19.270 align:start position:0%
have a class name equal to
ghostcore<04:57:15.200> details<04:57:16.080> D<04:57:16.680> deletor<04:57:17.840> BTN<04:57:18.840> and<04:57:19.040> it
04:57:19.270 --> 04:57:19.280 align:start position:0%
ghostcore details D deletor BTN and it
04:57:19.280 --> 04:57:21.990 align:start position:0%
ghostcore details D deletor BTN and it
has<04:57:19.440> to<04:57:19.600> have<04:57:19.798> the<04:57:20.040> same<04:57:20.680> class<04:57:21.160> right<04:57:21.360> here<04:57:21.718> to
04:57:21.990 --> 04:57:22.000 align:start position:0%
has to have the same class right here to
04:57:22.000 --> 04:57:24.510 align:start position:0%
has to have the same class right here to
hide<04:57:22.240> it<04:57:22.558> if<04:57:22.680> we're<04:57:22.920> not<04:57:23.200> the<04:57:23.360> current<04:57:23.680> Creator
04:57:24.510 --> 04:57:24.520 align:start position:0%
hide it if we're not the current Creator
04:57:24.520 --> 04:57:27.310 align:start position:0%
hide it if we're not the current Creator
so<04:57:24.798> let's<04:57:25.080> copy<04:57:25.480> this<04:57:25.760> right<04:57:25.958> here<04:57:26.718> turn<04:57:27.040> this
04:57:27.310 --> 04:57:27.320 align:start position:0%
so let's copy this right here turn this
04:57:27.320 --> 04:57:29.948 align:start position:0%
so let's copy this right here turn this
into<04:57:27.558> a<04:57:27.718> dynamic<04:57:28.280> template
04:57:29.948 --> 04:57:29.958 align:start position:0%
into a dynamic template
04:57:29.958 --> 04:57:32.190 align:start position:0%
into a dynamic template
string<04:57:30.958> and<04:57:31.080> then<04:57:31.240> we<04:57:31.320> can<04:57:31.520> paste<04:57:31.760> it<04:57:32.000> right
04:57:32.190 --> 04:57:32.200 align:start position:0%
string and then we can paste it right
04:57:32.200 --> 04:57:34.110 align:start position:0%
string and then we can paste it right
here
04:57:34.110 --> 04:57:34.120 align:start position:0%
here
04:57:34.120 --> 04:57:36.190 align:start position:0%
here
finally<04:57:34.718> within<04:57:35.000> the<04:57:35.160> button<04:57:35.638> we<04:57:35.760> can<04:57:35.878> render
04:57:36.190 --> 04:57:36.200 align:start position:0%
finally within the button we can render
04:57:36.200 --> 04:57:37.070 align:start position:0%
finally within the button we can render
an
04:57:37.070 --> 04:57:37.080 align:start position:0%
an
04:57:37.080 --> 04:57:39.590 align:start position:0%
an
image<04:57:38.080> and<04:57:38.280> this<04:57:38.480> image<04:57:38.798> is<04:57:38.958> going<04:57:39.120> to<04:57:39.280> have<04:57:39.440> a
04:57:39.590 --> 04:57:39.600 align:start position:0%
image and this image is going to have a
04:57:39.600 --> 04:57:44.948 align:start position:0%
image and this image is going to have a
source<04:57:40.200> equal<04:57:40.520> to<04:57:40.840> for/<04:57:41.840> assets<04:57:42.840> SL<04:57:43.400> ions<04:57:44.400> SL
04:57:44.948 --> 04:57:44.958 align:start position:0%
source equal to for/ assets SL ions SL
04:57:44.958 --> 04:57:49.270 align:start position:0%
source equal to for/ assets SL ions SL
delete.<04:57:46.400> SVG<04:57:47.400> with<04:57:47.558> an<04:57:47.798> ALT<04:57:48.160> tag<04:57:48.440> of
04:57:49.270 --> 04:57:49.280 align:start position:0%
delete. SVG with an ALT tag of
04:57:49.280 --> 04:57:54.270 align:start position:0%
delete. SVG with an ALT tag of
delete<04:57:50.280> a<04:57:50.520> width<04:57:51.080> of<04:57:51.280> 24<04:57:52.280> and<04:57:52.520> a<04:57:52.798> height<04:57:53.240> of<04:57:53.400> 24
04:57:54.270 --> 04:57:54.280 align:start position:0%
delete a width of 24 and a height of 24
04:57:54.280 --> 04:57:57.350 align:start position:0%
delete a width of 24 and a height of 24
as<04:57:54.520> well<04:57:55.360> and<04:57:55.558> there<04:57:55.680> we<04:57:55.840> go<04:57:56.280> now<04:57:56.480> we<04:57:56.558> can<04:57:56.718> see
04:57:57.350 --> 04:57:57.360 align:start position:0%
as well and there we go now we can see
04:57:57.360 --> 04:57:59.948 align:start position:0%
as well and there we go now we can see
both<04:57:57.680> of<04:57:57.920> these<04:57:58.638> we<04:57:58.760> can<04:57:58.920> also<04:57:59.160> lower<04:57:59.558> the<04:57:59.760> Gap
04:57:59.948 --> 04:57:59.958 align:start position:0%
both of these we can also lower the Gap
04:57:59.958 --> 04:58:02.708 align:start position:0%
both of these we can also lower the Gap
a<04:58:00.120> bit<04:58:00.480> maybe<04:58:00.840> Gap<04:58:01.040> two<04:58:01.600> is<04:58:01.760> going<04:58:01.920> to<04:58:02.080> be<04:58:02.360> fine
04:58:02.708 --> 04:58:02.718 align:start position:0%
a bit maybe Gap two is going to be fine
04:58:02.718 --> 04:58:05.190 align:start position:0%
a bit maybe Gap two is going to be fine
or<04:58:02.920> even<04:58:03.400> one<04:58:03.840> looks<04:58:04.160> good<04:58:04.600> what<04:58:04.718> if<04:58:04.798> you<04:58:04.920> do<04:58:05.040> it
04:58:05.190 --> 04:58:05.200 align:start position:0%
or even one looks good what if you do it
04:58:05.200 --> 04:58:07.910 align:start position:0%
or even one looks good what if you do it
with<04:58:05.360> no<04:58:05.638> Gap<04:58:06.600> there<04:58:06.760> we<04:58:06.920> go<04:58:07.240> even<04:58:07.520> without<04:58:07.718> a
04:58:07.910 --> 04:58:07.920 align:start position:0%
with no Gap there we go even without a
04:58:07.920 --> 04:58:10.190 align:start position:0%
with no Gap there we go even without a
gap<04:58:08.200> it's<04:58:08.400> looking<04:58:08.760> good<04:58:09.400> and<04:58:09.558> if<04:58:09.638> you<04:58:09.798> expand
04:58:10.190 --> 04:58:10.200 align:start position:0%
gap it's looking good and if you expand
04:58:10.200 --> 04:58:12.910 align:start position:0%
gap it's looking good and if you expand
it<04:58:10.840> keep<04:58:11.040> in<04:58:11.240> mind<04:58:11.520> it<04:58:11.638> still<04:58:11.878> looks<04:58:12.200> good<04:58:12.680> on
04:58:12.910 --> 04:58:12.920 align:start position:0%
it keep in mind it still looks good on
04:58:12.920 --> 04:58:16.390 align:start position:0%
it keep in mind it still looks good on
all<04:58:13.480> different<04:58:14.120> devices<04:58:15.120> this<04:58:15.360> is
04:58:16.390 --> 04:58:16.400 align:start position:0%
all different devices this is
04:58:16.400 --> 04:58:18.750 align:start position:0%
all different devices this is
wonderful<04:58:17.400> now<04:58:17.600> don't<04:58:17.798> delete<04:58:18.080> the<04:58:18.200> poe<04:58:18.558> just
04:58:18.750 --> 04:58:18.760 align:start position:0%
wonderful now don't delete the poe just
04:58:18.760 --> 04:58:20.510 align:start position:0%
wonderful now don't delete the poe just
yet<04:58:19.080> we<04:58:19.240> still<04:58:19.440> have<04:58:19.558> to<04:58:19.680> add<04:58:19.840> a<04:58:20.000> caption<04:58:20.360> in
04:58:20.510 --> 04:58:20.520 align:start position:0%
yet we still have to add a caption in
04:58:20.520 --> 04:58:23.230 align:start position:0%
yet we still have to add a caption in
more<04:58:20.798> details<04:58:21.760> so<04:58:21.958> let's<04:58:22.240> go<04:58:22.520> below<04:58:23.040> this
04:58:23.230 --> 04:58:23.240 align:start position:0%
more details so let's go below this
04:58:23.240 --> 04:58:25.670 align:start position:0%
more details so let's go below this
button<04:58:23.798> and<04:58:24.000> Below<04:58:24.360> two<04:58:24.558> more
04:58:25.670 --> 04:58:25.680 align:start position:0%
button and Below two more
04:58:25.680 --> 04:58:29.310 align:start position:0%
button and Below two more
divs<04:58:26.680> and<04:58:26.798> then<04:58:27.000> here<04:58:27.480> we<04:58:27.558> can<04:58:27.718> create<04:58:28.000> an<04:58:28.200> HR<04:58:29.160> a
04:58:29.310 --> 04:58:29.320 align:start position:0%
divs and then here we can create an HR a
04:58:29.320 --> 04:58:32.270 align:start position:0%
divs and then here we can create an HR a
horizontal<04:58:29.920> line<04:58:30.680> with<04:58:30.878> a<04:58:31.160> class<04:58:31.520> name<04:58:31.958> equal
04:58:32.270 --> 04:58:32.280 align:start position:0%
horizontal line with a class name equal
04:58:32.280 --> 04:58:34.430 align:start position:0%
horizontal line with a class name equal
to<04:58:32.480> border
04:58:34.430 --> 04:58:34.440 align:start position:0%
to border
04:58:34.440 --> 04:58:37.990 align:start position:0%
to border
w-<04:58:35.160> full<04:58:35.760> and<04:58:35.958> border<04:58:36.360> colar<04:58:36.798> of<04:58:37.000> Border<04:58:37.600> D
04:58:37.990 --> 04:58:38.000 align:start position:0%
w- full and border colar of Border D
04:58:38.000 --> 04:58:40.430 align:start position:0%
w- full and border colar of Border D
dark<04:58:38.520> of<04:58:38.798> 4<04:58:39.320> over
04:58:40.430 --> 04:58:40.440 align:start position:0%
dark of 4 over
04:58:40.440 --> 04:58:42.708 align:start position:0%
dark of 4 over
80<04:58:41.440> if<04:58:41.558> we<04:58:41.718> save<04:58:41.920> it<04:58:42.080> you<04:58:42.160> should<04:58:42.320> be<04:58:42.440> able<04:58:42.600> to
04:58:42.708 --> 04:58:42.718 align:start position:0%
80 if we save it you should be able to
04:58:42.718 --> 04:58:44.788 align:start position:0%
80 if we save it you should be able to
see<04:58:43.000> a<04:58:43.160> really<04:58:43.440> unnoticeable<04:58:44.200> line<04:58:44.600> that's
04:58:44.788 --> 04:58:44.798 align:start position:0%
see a really unnoticeable line that's
04:58:44.798 --> 04:58:47.350 align:start position:0%
see a really unnoticeable line that's
going<04:58:44.958> to<04:58:45.120> create<04:58:45.360> some<04:58:46.040> spacing<04:58:47.040> and<04:58:47.160> then
04:58:47.350 --> 04:58:47.360 align:start position:0%
going to create some spacing and then
04:58:47.360 --> 04:58:49.670 align:start position:0%
going to create some spacing and then
below<04:58:47.958> we<04:58:48.080> can<04:58:48.320> copy<04:58:48.718> everything<04:58:49.120> we<04:58:49.280> already
04:58:49.670 --> 04:58:49.680 align:start position:0%
below we can copy everything we already
04:58:49.680 --> 04:58:51.830 align:start position:0%
below we can copy everything we already
had<04:58:50.160> from<04:58:50.440> a<04:58:50.680> post
04:58:51.830 --> 04:58:51.840 align:start position:0%
had from a post
04:58:51.840 --> 04:58:54.910 align:start position:0%
had from a post
card<04:58:52.840> not<04:58:53.160> the<04:58:53.320> Creator<04:58:53.798> things<04:58:54.280> but<04:58:54.520> rather
04:58:54.910 --> 04:58:54.920 align:start position:0%
card not the Creator things but rather
04:58:54.920 --> 04:58:57.510 align:start position:0%
card not the Creator things but rather
all<04:58:55.080> of<04:58:55.240> the<04:58:55.400> post<04:58:55.798> tags<04:58:56.240> the<04:58:56.360> post<04:58:56.718> caption
04:58:57.510 --> 04:58:57.520 align:start position:0%
all of the post tags the post caption
04:58:57.520 --> 04:59:00.910 align:start position:0%
all of the post tags the post caption
and<04:58:57.798> more<04:58:58.680> so<04:58:58.878> let's<04:58:59.040> simply<04:58:59.360> copy<04:58:59.638> this<04:58:59.920> div
04:59:00.910 --> 04:59:00.920 align:start position:0%
and more so let's simply copy this div
04:59:00.920 --> 04:59:03.708 align:start position:0%
and more so let's simply copy this div
that<04:59:01.080> contains<04:59:01.718> the<04:59:01.920> post<04:59:02.240> caption<04:59:03.360> it's<04:59:03.558> just
04:59:03.708 --> 04:59:03.718 align:start position:0%
that contains the post caption it's just
04:59:03.718 --> 04:59:06.110 align:start position:0%
that contains the post caption it's just
this<04:59:03.920> small<04:59:04.200> one<04:59:04.480> right<04:59:04.680> here<04:59:05.600> we<04:59:05.718> can<04:59:05.920> paste
04:59:06.110 --> 04:59:06.120 align:start position:0%
this small one right here we can paste
04:59:06.120 --> 04:59:08.548 align:start position:0%
this small one right here we can paste
it<04:59:06.320> below<04:59:06.680> the
04:59:08.548 --> 04:59:08.558 align:start position:0%
it below the
04:59:08.558 --> 04:59:12.110 align:start position:0%
it below the
HR<04:59:09.558> indent<04:59:09.958> it<04:59:10.440> properly<04:59:11.440> and<04:59:11.718> everywhere
04:59:12.110 --> 04:59:12.120 align:start position:0%
HR indent it properly and everywhere
04:59:12.120 --> 04:59:13.948 align:start position:0%
HR indent it properly and everywhere
where<04:59:12.240> we're<04:59:12.400> saying<04:59:12.760> post<04:59:13.280> we<04:59:13.400> can<04:59:13.558> add<04:59:13.760> a
04:59:13.948 --> 04:59:13.958 align:start position:0%
where we're saying post we can add a
04:59:13.958 --> 04:59:16.430 align:start position:0%
where we're saying post we can add a
question<04:59:14.240> mark<04:59:14.718> as<04:59:14.920> well<04:59:15.480> and<04:59:15.638> there<04:59:15.760> we<04:59:15.920> go<04:59:16.280> we
04:59:16.430 --> 04:59:16.440 align:start position:0%
question mark as well and there we go we
04:59:16.440 --> 04:59:19.190 align:start position:0%
question mark as well and there we go we
have<04:59:16.638> this<04:59:16.798> wonderful<04:59:17.878> caption<04:59:18.878> we<04:59:19.080> can
04:59:19.190 --> 04:59:19.200 align:start position:0%
have this wonderful caption we can
04:59:19.200 --> 04:59:21.590 align:start position:0%
have this wonderful caption we can
change<04:59:19.440> this<04:59:19.558> tiing<04:59:20.000> a<04:59:20.120> bit<04:59:20.520> from<04:59:20.760> this<04:59:20.920> div<04:59:21.440> by
04:59:21.590 --> 04:59:21.600 align:start position:0%
change this tiing a bit from this div by
04:59:21.600 --> 04:59:27.150 align:start position:0%
change this tiing a bit from this div by
giving<04:59:21.840> it<04:59:22.000> a<04:59:22.200> flex<04:59:23.120> Flex<04:59:23.638> Das<04:59:23.920> Co<04:59:24.760> Flex<04:59:25.400> D1<04:59:26.400> w-
04:59:27.150 --> 04:59:27.160 align:start position:0%
giving it a flex Flex Das Co Flex D1 w-
04:59:27.160 --> 04:59:31.750 align:start position:0%
giving it a flex Flex Das Co Flex D1 w-
full<04:59:28.040> small-<04:59:29.040> medium<04:59:30.040> and<04:59:30.280> on<04:59:30.520> large<04:59:30.878> devices
04:59:31.750 --> 04:59:31.760 align:start position:0%
full small- medium and on large devices
04:59:31.760 --> 04:59:33.990 align:start position:0%
full small- medium and on large devices
base-<04:59:32.520> regular
04:59:33.990 --> 04:59:34.000 align:start position:0%
base- regular
04:59:34.000 --> 04:59:35.590 align:start position:0%
base- regular
there<04:59:34.160> we<04:59:34.360> go<04:59:34.638> that's<04:59:34.840> going<04:59:34.958> to<04:59:35.160> position<04:59:35.480> it
04:59:35.590 --> 04:59:35.600 align:start position:0%
there we go that's going to position it
04:59:35.600 --> 04:59:37.788 align:start position:0%
there we go that's going to position it
a<04:59:35.718> bit<04:59:35.920> better<04:59:36.760> and<04:59:37.000> finally<04:59:37.440> we<04:59:37.558> need<04:59:37.680> to
04:59:37.788 --> 04:59:37.798 align:start position:0%
a bit better and finally we need to
04:59:37.798 --> 04:59:40.230 align:start position:0%
a bit better and finally we need to
render<04:59:38.120> the<04:59:38.280> post<04:59:38.638> stats<04:59:39.240> so<04:59:39.400> let's<04:59:39.638> go<04:59:39.840> below
04:59:40.230 --> 04:59:40.240 align:start position:0%
render the post stats so let's go below
04:59:40.240 --> 04:59:43.470 align:start position:0%
render the post stats so let's go below
this<04:59:40.680> div<04:59:41.680> create<04:59:42.080> another<04:59:42.440> div<04:59:43.120> that's<04:59:43.320> going
04:59:43.470 --> 04:59:43.480 align:start position:0%
this div create another div that's going
04:59:43.480 --> 04:59:47.230 align:start position:0%
this div create another div that's going
to<04:59:43.760> have<04:59:44.120> a<04:59:44.440> class<04:59:44.958> name<04:59:45.958> equal<04:59:46.280> to
04:59:47.230 --> 04:59:47.240 align:start position:0%
to have a class name equal to
04:59:47.240 --> 04:59:50.670 align:start position:0%
to have a class name equal to
w-o<04:59:48.240> and<04:59:48.440> within<04:59:48.798> there<04:59:49.200> we<04:59:49.320> can<04:59:49.480> render<04:59:50.320> a
04:59:50.670 --> 04:59:50.680 align:start position:0%
w-o and within there we can render a
04:59:50.680 --> 04:59:54.030 align:start position:0%
w-o and within there we can render a
post<04:59:51.480> stats<04:59:52.160> self-closing<04:59:53.000> component<04:59:53.920> which
04:59:54.030 --> 04:59:54.040 align:start position:0%
post stats self-closing component which
04:59:54.040 --> 04:59:56.470 align:start position:0%
post stats self-closing component which
we<04:59:54.200> have<04:59:54.320> to<04:59:54.600> import<04:59:55.200> from<04:59:55.480> components<04:59:55.958> shared
04:59:56.470 --> 04:59:56.480 align:start position:0%
we have to import from components shared
04:59:56.480 --> 04:59:57.470 align:start position:0%
we have to import from components shared
post
04:59:57.470 --> 04:59:57.480 align:start position:0%
post
04:59:57.480 --> 05:00:02.948 align:start position:0%
post
stats<04:59:58.480> with<04:59:58.638> a<04:59:59.160> post<05:00:00.160> is<05:00:00.440> equal<05:00:00.798> to<05:00:01.558> post<05:00:02.558> a<05:00:02.718> use
05:00:02.948 --> 05:00:02.958 align:start position:0%
stats with a post is equal to post a use
05:00:02.958 --> 05:00:06.868 align:start position:0%
stats with a post is equal to post a use
user<05:00:03.200> ID<05:00:03.840> equal<05:00:04.160> to<05:00:04.360> user.<05:00:05.240> ID<05:00:06.240> in<05:00:06.440> this<05:00:06.600> case
05:00:06.868 --> 05:00:06.878 align:start position:0%
user ID equal to user. ID in this case
05:00:06.878 --> 05:00:08.868 align:start position:0%
user ID equal to user. ID in this case
it<05:00:07.040> complains<05:00:07.558> that<05:00:07.680> a<05:00:07.878> post<05:00:08.280> could<05:00:08.558> possibly
05:00:08.868 --> 05:00:08.878 align:start position:0%
it complains that a post could possibly
05:00:08.878 --> 05:00:11.390 align:start position:0%
it complains that a post could possibly
be<05:00:09.040> undefined<05:00:09.760> so<05:00:09.920> we<05:00:10.040> can<05:00:10.160> say<05:00:10.480> post<05:00:10.958> or<05:00:11.240> an
05:00:11.390 --> 05:00:11.400 align:start position:0%
be undefined so we can say post or an
05:00:11.400 --> 05:00:14.230 align:start position:0%
be undefined so we can say post or an
empty<05:00:11.798> object<05:00:12.360> so<05:00:12.558> it<05:00:12.680> doesn't<05:00:13.000> break<05:00:13.920> oh<05:00:14.120> but
05:00:14.230 --> 05:00:14.240 align:start position:0%
empty object so it doesn't break oh but
05:00:14.240 --> 05:00:15.948 align:start position:0%
empty object so it doesn't break oh but
the<05:00:14.400> structure<05:00:14.760> of<05:00:14.878> an<05:00:15.000> empty<05:00:15.320> object<05:00:15.600> is<05:00:15.760> not
05:00:15.948 --> 05:00:15.958 align:start position:0%
the structure of an empty object is not
05:00:15.958 --> 05:00:17.948 align:start position:0%
the structure of an empty object is not
the<05:00:16.160> same<05:00:16.760> as<05:00:16.920> the<05:00:17.040> structure<05:00:17.440> that<05:00:17.558> it<05:00:17.638> should
05:00:17.948 --> 05:00:17.958 align:start position:0%
the same as the structure that it should
05:00:17.958 --> 05:00:20.750 align:start position:0%
the same as the structure that it should
have<05:00:18.520> so<05:00:18.680> in<05:00:18.798> the<05:00:19.000> post<05:00:19.320> stats<05:00:20.080> we<05:00:20.200> can<05:00:20.360> declare
05:00:20.750 --> 05:00:20.760 align:start position:0%
have so in the post stats we can declare
05:00:20.760 --> 05:00:23.708 align:start position:0%
have so in the post stats we can declare
the<05:00:20.958> post<05:00:21.798> as<05:00:22.440> optional<05:00:23.120> maybe<05:00:23.360> it's<05:00:23.520> not
05:00:23.708 --> 05:00:23.718 align:start position:0%
the post as optional maybe it's not
05:00:23.718 --> 05:00:25.868 align:start position:0%
the post as optional maybe it's not
going<05:00:23.798> to<05:00:23.958> be<05:00:24.200> there<05:00:24.958> but<05:00:25.160> then<05:00:25.400> it<05:00:25.558> lets<05:00:25.760> us
05:00:25.868 --> 05:00:25.878 align:start position:0%
going to be there but then it lets us
05:00:25.878 --> 05:00:28.190 align:start position:0%
going to be there but then it lets us
know<05:00:26.400> please<05:00:26.798> add<05:00:27.160> question<05:00:27.400> marks<05:00:27.840> so<05:00:28.080> the
05:00:28.190 --> 05:00:28.200 align:start position:0%
know please add question marks so the
05:00:28.200 --> 05:00:30.750 align:start position:0%
know please add question marks so the
app<05:00:28.440> doesn't<05:00:28.718> break<05:00:29.400> so<05:00:29.600> that's<05:00:29.840> exactly<05:00:30.400> what
05:00:30.750 --> 05:00:30.760 align:start position:0%
app doesn't break so that's exactly what
05:00:30.760 --> 05:00:33.030 align:start position:0%
app doesn't break so that's exactly what
I'm<05:00:30.878> going<05:00:31.000> to<05:00:31.280> do<05:00:32.280> I'm<05:00:32.360> going<05:00:32.480> to<05:00:32.600> add<05:00:32.718> a
05:00:33.030 --> 05:00:33.040 align:start position:0%
I'm going to do I'm going to add a
05:00:33.040 --> 05:00:35.670 align:start position:0%
I'm going to do I'm going to add a
question<05:00:33.280> mark<05:00:33.718> whenever<05:00:34.360> post<05:00:34.798> is
05:00:35.670 --> 05:00:35.680 align:start position:0%
question mark whenever post is
05:00:35.680 --> 05:00:38.190 align:start position:0%
question mark whenever post is
mentioned<05:00:36.680> oh<05:00:37.000> but<05:00:37.200> then<05:00:37.360> it's<05:00:37.558> complaining
05:00:38.190 --> 05:00:38.200 align:start position:0%
mentioned oh but then it's complaining
05:00:38.200 --> 05:00:41.230 align:start position:0%
mentioned oh but then it's complaining
that<05:00:38.440> we<05:00:38.680> actually<05:00:39.080> need<05:00:39.320> to<05:00:39.680> pass<05:00:40.400> a<05:00:40.600> post<05:00:40.920> ID
05:00:41.230 --> 05:00:41.240 align:start position:0%
that we actually need to pass a post ID
05:00:41.240 --> 05:00:43.830 align:start position:0%
that we actually need to pass a post ID
to<05:00:41.360> the<05:00:41.480> save<05:00:41.878> post<05:00:42.638> so<05:00:42.920> I'm<05:00:43.040> going<05:00:43.120> to<05:00:43.400> add
05:00:43.830 --> 05:00:43.840 align:start position:0%
to the save post so I'm going to add
05:00:43.840 --> 05:00:47.310 align:start position:0%
to the save post so I'm going to add
right<05:00:44.040> here<05:00:44.480> or<05:00:44.798> an<05:00:44.958> empty<05:00:45.718> string<05:00:46.718> or<05:00:47.160> an
05:00:47.310 --> 05:00:47.320 align:start position:0%
right here or an empty string or an
05:00:47.320 --> 05:00:50.548 align:start position:0%
right here or an empty string or an
empty<05:00:47.600> string<05:00:48.000> as<05:00:48.160> well<05:00:48.680> and<05:00:48.958> now<05:00:49.320> we<05:00:49.440> are<05:00:49.680> good
05:00:50.548 --> 05:00:50.558 align:start position:0%
empty string as well and now we are good
05:00:50.558 --> 05:00:52.990 align:start position:0%
empty string as well and now we are good
so<05:00:50.718> if<05:00:50.798> we<05:00:50.958> go<05:00:51.240> back<05:00:52.120> now<05:00:52.320> we<05:00:52.440> have<05:00:52.558> the<05:00:52.718> post
05:00:52.990 --> 05:00:53.000 align:start position:0%
so if we go back now we have the post
05:00:53.000 --> 05:00:54.510 align:start position:0%
so if we go back now we have the post
stats<05:00:53.320> and<05:00:53.440> you<05:00:53.520> can<05:00:53.600> see<05:00:53.798> the<05:00:53.920> likes<05:00:54.320> and
05:00:54.510 --> 05:00:54.520 align:start position:0%
stats and you can see the likes and
05:00:54.520 --> 05:00:57.548 align:start position:0%
stats and you can see the likes and
saves<05:00:55.040> as<05:00:55.240> well<05:00:55.440> on<05:00:55.600> the<05:00:55.760> bottom<05:00:56.760> this<05:00:57.120> is<05:00:57.240> a
05:00:57.548 --> 05:00:57.558 align:start position:0%
saves as well on the bottom this is a
05:00:57.558 --> 05:01:00.910 align:start position:0%
saves as well on the bottom this is a
real<05:00:58.400> post<05:00:58.840> Details<05:00:59.440> page<05:01:00.120> looking<05:01:00.600> really
05:01:00.910 --> 05:01:00.920 align:start position:0%
real post Details page looking really
05:01:00.920 --> 05:01:02.910 align:start position:0%
real post Details page looking really
similar<05:01:01.440> as<05:01:01.558> it<05:01:01.680> does<05:01:02.000> on<05:01:02.160> the<05:01:02.280> original
05:01:02.910 --> 05:01:02.920 align:start position:0%
similar as it does on the original
05:01:02.920 --> 05:01:04.868 align:start position:0%
similar as it does on the original
Instagram<05:01:03.360> application<05:01:04.200> keep<05:01:04.360> in<05:01:04.520> mind<05:01:04.760> that
05:01:04.868 --> 05:01:04.878 align:start position:0%
Instagram application keep in mind that
05:01:04.878 --> 05:01:07.190 align:start position:0%
Instagram application keep in mind that
you<05:01:04.958> can<05:01:05.120> go<05:01:05.280> to<05:01:05.440> the<05:01:05.600> edit<05:01:06.280> which<05:01:06.400> is<05:01:06.600> great
05:01:07.190 --> 05:01:07.200 align:start position:0%
you can go to the edit which is great
05:01:07.200 --> 05:01:08.628 align:start position:0%
you can go to the edit which is great
and<05:01:07.320> you<05:01:07.400> can<05:01:07.558> also<05:01:07.760> delete<05:01:08.120> it<05:01:08.360> which<05:01:08.480> we're
05:01:08.628 --> 05:01:08.638 align:start position:0%
and you can also delete it which we're
05:01:08.638 --> 05:01:11.548 align:start position:0%
and you can also delete it which we're
not<05:01:08.840> going<05:01:08.920> to<05:01:09.080> do<05:01:09.240> for<05:01:09.440> now<05:01:10.080> but<05:01:10.520> this<05:01:10.920> is
05:01:11.548 --> 05:01:11.558 align:start position:0%
not going to do for now but this is
05:01:11.558 --> 05:01:14.150 align:start position:0%
not going to do for now but this is
wonderful<05:01:12.558> and<05:01:12.798> later<05:01:13.080> on<05:01:13.360> once<05:01:13.520> we<05:01:13.680> have<05:01:13.840> more
05:01:14.150 --> 05:01:14.160 align:start position:0%
wonderful and later on once we have more
05:01:14.160 --> 05:01:16.548 align:start position:0%
wonderful and later on once we have more
posts<05:01:14.600> we're<05:01:14.760> going<05:01:14.920> to<05:01:15.280> also<05:01:15.680> Implement
05:01:16.548 --> 05:01:16.558 align:start position:0%
posts we're going to also Implement
05:01:16.558 --> 05:01:18.868 align:start position:0%
posts we're going to also Implement
other<05:01:16.920> post<05:01:17.320> recommendations<05:01:18.320> right<05:01:18.520> here
05:01:18.868 --> 05:01:18.878 align:start position:0%
other post recommendations right here
05:01:18.878 --> 05:01:20.830 align:start position:0%
other post recommendations right here
below<05:01:19.280> this<05:01:19.400> one<05:01:19.798> so<05:01:19.958> you<05:01:20.080> can<05:01:20.240> scroll<05:01:20.638> through
05:01:20.830 --> 05:01:20.840 align:start position:0%
below this one so you can scroll through
05:01:20.840 --> 05:01:22.948 align:start position:0%
below this one so you can scroll through
the<05:01:21.040> app<05:01:21.360> and<05:01:21.558> find<05:01:21.920> all<05:01:22.160> the<05:01:22.320> post<05:01:22.638> that<05:01:22.718> you
05:01:22.948 --> 05:01:22.958 align:start position:0%
the app and find all the post that you
05:01:22.958 --> 05:01:25.548 align:start position:0%
the app and find all the post that you
like<05:01:23.958> but<05:01:24.240> with<05:01:24.400> that<05:01:24.558> said<05:01:24.760> we're<05:01:25.000> making
05:01:25.548 --> 05:01:25.558 align:start position:0%
like but with that said we're making
05:01:25.558 --> 05:01:28.350 align:start position:0%
like but with that said we're making
amazing<05:01:26.200> progress<05:01:27.120> we<05:01:27.280> have<05:01:27.440> the
05:01:28.350 --> 05:01:28.360 align:start position:0%
amazing progress we have the
05:01:28.360 --> 05:01:32.110 align:start position:0%
amazing progress we have the
homepage<05:01:29.360> we<05:01:29.558> have<05:01:29.840> the<05:01:30.200> create<05:01:30.638> post<05:01:31.040> page<05:01:31.920> we
05:01:32.110 --> 05:01:32.120 align:start position:0%
homepage we have the create post page we
05:01:32.120 --> 05:01:34.708 align:start position:0%
homepage we have the create post page we
also<05:01:32.480> have<05:01:32.680> the<05:01:32.878> the<05:01:33.040> edit<05:01:33.400> page<05:01:34.120> we<05:01:34.240> can<05:01:34.480> like
05:01:34.708 --> 05:01:34.718 align:start position:0%
also have the the edit page we can like
05:01:34.718 --> 05:01:38.110 align:start position:0%
also have the the edit page we can like
and<05:01:34.958> unlike<05:01:35.798> save<05:01:36.200> and<05:01:36.638> unsave<05:01:37.638> as<05:01:37.798> well<05:01:37.958> as
05:01:38.110 --> 05:01:38.120 align:start position:0%
and unlike save and unsave as well as
05:01:38.120 --> 05:01:41.788 align:start position:0%
and unlike save and unsave as well as
visit<05:01:38.400> the<05:01:38.558> post<05:01:39.200> details<05:01:40.200> this<05:01:40.440> is<05:01:40.798> amazing
05:01:41.788 --> 05:01:41.798 align:start position:0%
visit the post details this is amazing
05:01:41.798 --> 05:01:43.910 align:start position:0%
visit the post details this is amazing
so<05:01:42.080> let's<05:01:42.280> go<05:01:42.440> ahead<05:01:42.718> and<05:01:42.958> focus<05:01:43.440> on<05:01:43.638> the
05:01:43.910 --> 05:01:43.920 align:start position:0%
so let's go ahead and focus on the
05:01:43.920 --> 05:01:46.430 align:start position:0%
so let's go ahead and focus on the
second<05:01:44.320> major<05:01:44.760> page<05:01:44.958> of<05:01:45.120> our<05:01:45.360> app<05:01:46.080> which<05:01:46.200> is
05:01:46.430 --> 05:01:46.440 align:start position:0%
second major page of our app which is
05:01:46.440 --> 05:01:49.390 align:start position:0%
second major page of our app which is
the<05:01:46.878> explore<05:01:47.520> page<05:01:48.520> here<05:01:48.878> we're<05:01:49.040> going<05:01:49.160> to
05:01:49.390 --> 05:01:49.400 align:start position:0%
the explore page here we're going to
05:01:49.400 --> 05:01:51.948 align:start position:0%
the explore page here we're going to
expand<05:01:49.840> it<05:01:50.080> further<05:01:50.840> so<05:01:51.120> no<05:01:51.320> longer<05:01:51.680> it<05:01:51.798> will
05:01:51.948 --> 05:01:51.958 align:start position:0%
expand it further so no longer it will
05:01:51.958 --> 05:01:53.910 align:start position:0%
expand it further so no longer it will
only<05:01:52.200> be<05:01:52.360> a<05:01:52.520> home<05:01:52.920> where<05:01:53.040> we<05:01:53.160> fetch<05:01:53.400> the<05:01:53.520> latest
05:01:53.910 --> 05:01:53.920 align:start position:0%
only be a home where we fetch the latest
05:01:53.920 --> 05:01:55.750 align:start position:0%
only be a home where we fetch the latest
post<05:01:54.520> we're<05:01:54.638> going<05:01:54.760> to<05:01:54.920> have<05:01:55.080> some<05:01:55.280> search
05:01:55.750 --> 05:01:55.760 align:start position:0%
post we're going to have some search
05:01:55.760 --> 05:01:57.390 align:start position:0%
post we're going to have some search
Logic<05:01:56.280> we're<05:01:56.400> going<05:01:56.520> to<05:01:56.638> have<05:01:56.840> the<05:01:57.040> infinite
05:01:57.390 --> 05:01:57.400 align:start position:0%
Logic we're going to have the infinite
05:01:57.400 --> 05:02:01.830 align:start position:0%
Logic we're going to have the infinite
scroll<05:01:57.878> logic<05:01:58.718> and<05:01:59.120> a<05:01:59.360> lot<05:02:00.080> more<05:02:01.080> so<05:02:01.440> let's<05:02:01.680> get
05:02:01.830 --> 05:02:01.840 align:start position:0%
scroll logic and a lot more so let's get
05:02:01.840 --> 05:02:04.350 align:start position:0%
scroll logic and a lot more so let's get
started<05:02:02.400> with<05:02:02.600> a<05:02:02.878> explore<05:02:03.280> next<05:02:03.920> by<05:02:04.080> putting
05:02:04.350 --> 05:02:04.360 align:start position:0%
started with a explore next by putting
05:02:04.360 --> 05:02:06.910 align:start position:0%
started with a explore next by putting
this<05:02:04.480> to<05:02:04.638> the<05:02:04.878> side<05:02:05.558> and<05:02:05.680> then<05:02:05.920> opening<05:02:06.638> the
05:02:06.910 --> 05:02:06.920 align:start position:0%
this to the side and then opening the
05:02:06.920 --> 05:02:10.628 align:start position:0%
this to the side and then opening the
explore<05:02:08.040> page<05:02:09.040> to<05:02:09.400> get<05:02:09.680> started<05:02:10.240> with<05:02:10.400> our
05:02:10.628 --> 05:02:10.638 align:start position:0%
explore page to get started with our
05:02:10.638 --> 05:02:13.030 align:start position:0%
explore page to get started with our
explore<05:02:11.200> page<05:02:11.798> we<05:02:11.920> can<05:02:12.120> first<05:02:12.558> wrap
05:02:13.030 --> 05:02:13.040 align:start position:0%
explore page we can first wrap
05:02:13.040 --> 05:02:15.390 align:start position:0%
explore page we can first wrap
everything<05:02:13.718> in<05:02:13.958> a<05:02:14.200> div<05:02:14.718> that's<05:02:14.878> going<05:02:15.080> to<05:02:15.240> have
05:02:15.390 --> 05:02:15.400 align:start position:0%
everything in a div that's going to have
05:02:15.400 --> 05:02:19.510 align:start position:0%
everything in a div that's going to have
a<05:02:15.680> class<05:02:16.080> name<05:02:16.798> equal<05:02:17.160> to<05:02:17.680> explore<05:02:18.480> Das
05:02:19.510 --> 05:02:19.520 align:start position:0%
a class name equal to explore Das
05:02:19.520 --> 05:02:21.910 align:start position:0%
a class name equal to explore Das
container<05:02:20.520> then<05:02:20.920> within<05:02:21.200> it<05:02:21.480> we<05:02:21.558> can<05:02:21.718> have
05:02:21.910 --> 05:02:21.920 align:start position:0%
container then within it we can have
05:02:21.920 --> 05:02:24.150 align:start position:0%
container then within it we can have
another<05:02:22.240> div<05:02:22.840> that's<05:02:23.000> going<05:02:23.160> to<05:02:23.400> have<05:02:23.558> a<05:02:23.798> class
05:02:24.150 --> 05:02:24.160 align:start position:0%
another div that's going to have a class
05:02:24.160 --> 05:02:27.750 align:start position:0%
another div that's going to have a class
name<05:02:24.798> equal<05:02:25.120> to<05:02:25.798> explore<05:02:26.638> Das
05:02:27.750 --> 05:02:27.760 align:start position:0%
name equal to explore Das
05:02:27.760 --> 05:02:30.270 align:start position:0%
name equal to explore Das
inore
05:02:30.270 --> 05:02:30.280 align:start position:0%
inore
05:02:30.280 --> 05:02:32.590 align:start position:0%
inore
container<05:02:31.280> within<05:02:31.760> that<05:02:31.958> one<05:02:32.240> we're<05:02:32.360> going<05:02:32.480> to
05:02:32.590 --> 05:02:32.600 align:start position:0%
container within that one we're going to
05:02:32.600 --> 05:02:33.868 align:start position:0%
container within that one we're going to
have<05:02:32.840> have<05:02:33.040> an
05:02:33.868 --> 05:02:33.878 align:start position:0%
have have an
05:02:33.878 --> 05:02:38.670 align:start position:0%
have have an
H2<05:02:34.878> this<05:02:35.080> H2<05:02:35.718> is<05:02:35.840> going<05:02:36.000> to<05:02:36.160> say<05:02:36.520> search<05:02:37.680> posts
05:02:38.670 --> 05:02:38.680 align:start position:0%
H2 this H2 is going to say search posts
05:02:38.680 --> 05:02:40.868 align:start position:0%
H2 this H2 is going to say search posts
and<05:02:38.920> it's<05:02:39.080> going<05:02:39.240> to<05:02:39.400> have<05:02:39.520> a<05:02:39.718> class<05:02:40.080> name
05:02:40.868 --> 05:02:40.878 align:start position:0%
and it's going to have a class name
05:02:40.878 --> 05:02:45.990 align:start position:0%
and it's going to have a class name
equal<05:02:41.200> to<05:02:41.558> H3<05:02:42.520> D<05:02:42.840> bold<05:02:43.680> on<05:02:43.920> medium<05:02:44.400> devices<05:02:45.120> H2
05:02:45.990 --> 05:02:46.000 align:start position:0%
equal to H3 D bold on medium devices H2
05:02:46.000 --> 05:02:50.788 align:start position:0%
equal to H3 D bold on medium devices H2
Das<05:02:46.360> bold<05:02:47.360> and<05:02:47.680> w-<05:02:48.520> full<05:02:49.520> now<05:02:49.920> right<05:02:50.120> below<05:02:50.480> it
05:02:50.788 --> 05:02:50.798 align:start position:0%
Das bold and w- full now right below it
05:02:50.798 --> 05:02:53.230 align:start position:0%
Das bold and w- full now right below it
we<05:02:50.920> can<05:02:51.120> have<05:02:51.280> a<05:02:51.480> div<05:02:52.240> that's<05:02:52.440> going<05:02:52.600> to<05:02:52.798> have<05:02:53.000> a
05:02:53.230 --> 05:02:53.240 align:start position:0%
we can have a div that's going to have a
05:02:53.240 --> 05:02:57.910 align:start position:0%
we can have a div that's going to have a
class<05:02:53.638> name<05:02:54.558> equal<05:02:54.878> to<05:02:55.360> flex<05:02:56.360> gap<05:02:56.718> of<05:02:56.920> one
05:02:57.910 --> 05:02:57.920 align:start position:0%
class name equal to flex gap of one
05:02:57.920 --> 05:02:59.628 align:start position:0%
class name equal to flex gap of one
padding<05:02:58.320> X<05:02:58.680> of
05:02:59.628 --> 05:02:59.638 align:start position:0%
padding X of
05:02:59.638 --> 05:03:05.628 align:start position:0%
padding X of
four<05:03:00.638> w-<05:03:01.400> full<05:03:02.200> rounded<05:03:03.000> -<05:03:03.360> LG<05:03:04.320> and<05:03:04.558> a<05:03:04.760> BG<05:03:05.280> of
05:03:05.628 --> 05:03:05.638 align:start position:0%
four w- full rounded - LG and a BG of
05:03:05.638 --> 05:03:08.750 align:start position:0%
four w- full rounded - LG and a BG of
dark<05:03:05.958> 4<05:03:06.840> we<05:03:06.958> are<05:03:07.120> now<05:03:07.360> starting<05:03:07.680> to<05:03:07.878> form<05:03:08.558> the
05:03:08.750 --> 05:03:08.760 align:start position:0%
dark 4 we are now starting to form the
05:03:08.760 --> 05:03:11.430 align:start position:0%
dark 4 we are now starting to form the
UI<05:03:09.120> for<05:03:09.280> our<05:03:09.480> search<05:03:10.280> so<05:03:10.558> let's<05:03:10.840> render<05:03:11.240> an
05:03:11.430 --> 05:03:11.440 align:start position:0%
UI for our search so let's render an
05:03:11.440 --> 05:03:14.230 align:start position:0%
UI for our search so let's render an
image<05:03:12.440> and<05:03:12.718> that<05:03:12.920> image<05:03:13.320> is<05:03:13.480> going<05:03:13.680> to<05:03:13.878> have<05:03:14.040> a
05:03:14.230 --> 05:03:14.240 align:start position:0%
image and that image is going to have a
05:03:14.240 --> 05:03:19.590 align:start position:0%
image and that image is going to have a
source<05:03:14.958> equal<05:03:15.240> to<05:03:15.840> SL<05:03:16.480> assets<05:03:17.480> slash<05:03:18.120> ions<05:03:19.120> SL
05:03:19.590 --> 05:03:19.600 align:start position:0%
source equal to SL assets slash ions SL
05:03:19.600 --> 05:03:20.868 align:start position:0%
source equal to SL assets slash ions SL
search.
05:03:20.868 --> 05:03:20.878 align:start position:0%
search.
05:03:20.878 --> 05:03:24.030 align:start position:0%
search.
SVG<05:03:21.878> there<05:03:22.040> we<05:03:22.240> go<05:03:23.040> and<05:03:23.240> then<05:03:23.520> we<05:03:23.638> can<05:03:23.760> give<05:03:23.878> it
05:03:24.030 --> 05:03:24.040 align:start position:0%
SVG there we go and then we can give it
05:03:24.040 --> 05:03:27.990 align:start position:0%
SVG there we go and then we can give it
a<05:03:24.240> width<05:03:24.600> of<05:03:24.840> 24<05:03:25.798> and<05:03:26.000> a<05:03:26.280> height<05:03:26.638> of<05:03:26.878> 24<05:03:27.798> and
05:03:27.990 --> 05:03:28.000 align:start position:0%
a width of 24 and a height of 24 and
05:03:28.000 --> 05:03:31.628 align:start position:0%
a width of 24 and a height of 24 and
then<05:03:28.200> I'll<05:03:28.558> tag<05:03:28.958> off<05:03:29.680> search<05:03:30.680> finally<05:03:31.360> let's
05:03:31.628 --> 05:03:31.638 align:start position:0%
then I'll tag off search finally let's
05:03:31.638 --> 05:03:33.230 align:start position:0%
then I'll tag off search finally let's
create<05:03:31.878> an<05:03:32.080> input
05:03:33.230 --> 05:03:33.240 align:start position:0%
create an input
05:03:33.240 --> 05:03:35.470 align:start position:0%
create an input
this<05:03:33.440> is<05:03:33.600> going<05:03:33.760> to<05:03:33.920> be<05:03:34.080> a<05:03:34.240> self-closing<05:03:35.080> input
05:03:35.470 --> 05:03:35.480 align:start position:0%
this is going to be a self-closing input
05:03:35.480 --> 05:03:38.310 align:start position:0%
this is going to be a self-closing input
component<05:03:36.240> coming<05:03:36.520> from<05:03:36.798> components<05:03:37.520> UI
05:03:38.310 --> 05:03:38.320 align:start position:0%
component coming from components UI
05:03:38.320 --> 05:03:41.030 align:start position:0%
component coming from components UI
input<05:03:39.320> it's<05:03:39.480> going<05:03:39.638> to<05:03:39.798> have<05:03:39.958> a<05:03:40.160> type<05:03:40.638> is<05:03:40.798> equal
05:03:41.030 --> 05:03:41.040 align:start position:0%
input it's going to have a type is equal
05:03:41.040 --> 05:03:44.670 align:start position:0%
input it's going to have a type is equal
to<05:03:41.400> text<05:03:42.400> a<05:03:43.120> placeholder<05:03:44.120> that's<05:03:44.360> going<05:03:44.520> to
05:03:44.670 --> 05:03:44.680 align:start position:0%
to text a placeholder that's going to
05:03:44.680 --> 05:03:49.390 align:start position:0%
to text a placeholder that's going to
say<05:03:45.760> search<05:03:46.760> a<05:03:47.040> class<05:03:47.400> name<05:03:48.000> equal<05:03:48.320> to<05:03:48.638> explore
05:03:49.390 --> 05:03:49.400 align:start position:0%
say search a class name equal to explore
05:03:49.400 --> 05:03:51.070 align:start position:0%
say search a class name equal to explore
Das
05:03:51.070 --> 05:03:51.080 align:start position:0%
Das
05:03:51.080 --> 05:03:54.150 align:start position:0%
Das
search<05:03:52.080> and<05:03:52.280> of<05:03:52.440> course<05:03:53.000> what<05:03:53.240> would<05:03:53.558> an<05:03:53.760> input
05:03:54.150 --> 05:03:54.160 align:start position:0%
search and of course what would an input
05:03:54.160 --> 05:03:56.830 align:start position:0%
search and of course what would an input
be<05:03:54.680> without<05:03:55.000> a<05:03:55.320> value<05:03:56.120> which<05:03:56.280> is<05:03:56.360> going<05:03:56.638> to<05:03:56.718> be
05:03:56.830 --> 05:03:56.840 align:start position:0%
be without a value which is going to be
05:03:56.840 --> 05:03:59.470 align:start position:0%
be without a value which is going to be
a<05:03:56.958> use<05:03:57.280> state<05:03:57.680> right<05:03:57.840> here<05:03:57.958> on<05:03:58.240> top<05:03:59.000> so<05:03:59.160> we<05:03:59.280> can
05:03:59.470 --> 05:03:59.480 align:start position:0%
a use state right here on top so we can
05:03:59.480 --> 05:04:02.708 align:start position:0%
a use state right here on top so we can
use<05:03:59.798> a<05:04:00.040> state<05:04:00.360> snippet<05:04:01.360> and<05:04:01.558> we<05:04:01.638> can<05:04:01.840> call<05:04:02.120> it
05:04:02.708 --> 05:04:02.718 align:start position:0%
use a state snippet and we can call it
05:04:02.718 --> 05:04:07.150 align:start position:0%
use a state snippet and we can call it
search<05:04:03.760> value<05:04:04.760> set<05:04:05.120> search<05:04:05.520> value<05:04:06.040> as<05:04:06.240> well
05:04:07.150 --> 05:04:07.160 align:start position:0%
search value set search value as well
05:04:07.160 --> 05:04:08.670 align:start position:0%
search value set search value as well
and<05:04:07.320> then<05:04:07.480> at<05:04:07.600> the<05:04:07.798> start<05:04:08.080> it's<05:04:08.240> going<05:04:08.400> to<05:04:08.520> be
05:04:08.670 --> 05:04:08.680 align:start position:0%
and then at the start it's going to be
05:04:08.680 --> 05:04:10.990 align:start position:0%
and then at the start it's going to be
set<05:04:08.878> to<05:04:09.000> an<05:04:09.120> empty<05:04:09.480> string<05:04:10.320> and<05:04:10.600> we<05:04:10.680> of<05:04:10.798> course
05:04:10.990 --> 05:04:11.000 align:start position:0%
set to an empty string and we of course
05:04:11.000 --> 05:04:14.990 align:start position:0%
set to an empty string and we of course
have<05:04:11.120> to<05:04:11.320> import<05:04:12.040> use<05:04:12.520> State<05:04:13.360> coming<05:04:13.718> from
05:04:14.990 --> 05:04:15.000 align:start position:0%
have to import use State coming from
05:04:15.000 --> 05:04:18.910 align:start position:0%
have to import use State coming from
react<05:04:16.000> now<05:04:16.240> we<05:04:16.360> can<05:04:16.558> use<05:04:16.958> this<05:04:17.638> search<05:04:18.160> value
05:04:18.910 --> 05:04:18.920 align:start position:0%
react now we can use this search value
05:04:18.920 --> 05:04:21.948 align:start position:0%
react now we can use this search value
right<05:04:19.200> here<05:04:20.200> and<05:04:20.680> the<05:04:20.840> input<05:04:21.320> also<05:04:21.600> needs
05:04:21.948 --> 05:04:21.958 align:start position:0%
right here and the input also needs
05:04:21.958 --> 05:04:24.110 align:start position:0%
right here and the input also needs
something<05:04:22.240> to<05:04:22.440> modify<05:04:22.958> that<05:04:23.200> value<05:04:23.840> which<05:04:24.000> is
05:04:24.110 --> 05:04:24.120 align:start position:0%
something to modify that value which is
05:04:24.120 --> 05:04:27.230 align:start position:0%
something to modify that value which is
going<05:04:24.280> to<05:04:24.440> be<05:04:24.600> an<05:04:24.798> onchange
05:04:27.230 --> 05:04:27.240 align:start position:0%
going to be an onchange
05:04:27.240 --> 05:04:30.030 align:start position:0%
going to be an onchange
Handler<05:04:28.240> this<05:04:28.440> onchange<05:04:29.280> is<05:04:29.440> going<05:04:29.558> to<05:04:29.718> get<05:04:29.840> an
05:04:30.030 --> 05:04:30.040 align:start position:0%
Handler this onchange is going to get an
05:04:30.040 --> 05:04:32.628 align:start position:0%
Handler this onchange is going to get an
event<05:04:30.798> and<05:04:31.040> it's<05:04:31.240> going<05:04:31.400> to<05:04:31.638> set<05:04:32.000> search<05:04:32.360> value
05:04:32.628 --> 05:04:32.638 align:start position:0%
event and it's going to set search value
05:04:32.638 --> 05:04:36.350 align:start position:0%
event and it's going to set search value
value<05:04:33.080> to<05:04:33.240> be<05:04:33.440> equal<05:04:33.718> to<05:04:34.120> e.<05:04:34.840> target.<05:04:35.840> value
05:04:36.350 --> 05:04:36.360 align:start position:0%
value to be equal to e. target. value
05:04:36.360 --> 05:04:38.390 align:start position:0%
value to be equal to e. target. value
like<05:04:36.558> so<05:04:37.040> so<05:04:37.200> we<05:04:37.320> can<05:04:37.480> immediately<05:04:38.040> get<05:04:38.240> the
05:04:38.390 --> 05:04:38.400 align:start position:0%
like so so we can immediately get the
05:04:38.400 --> 05:04:41.390 align:start position:0%
like so so we can immediately get the
value<05:04:39.000> and<05:04:39.120> then<05:04:39.280> modify<05:04:39.760> it<05:04:40.760> now<05:04:41.000> let's<05:04:41.160> go
05:04:41.390 --> 05:04:41.400 align:start position:0%
value and then modify it now let's go
05:04:41.400 --> 05:04:44.270 align:start position:0%
value and then modify it now let's go
two<05:04:41.680> devs<05:04:42.360> below<05:04:43.360> and<05:04:43.480> then<05:04:43.760> there<05:04:44.000> we<05:04:44.120> can
05:04:44.270 --> 05:04:44.280 align:start position:0%
two devs below and then there we can
05:04:44.280 --> 05:04:46.350 align:start position:0%
two devs below and then there we can
start<05:04:44.638> creating<05:04:45.200> the<05:04:45.638> what<05:04:45.798> is<05:04:45.958> about<05:04:46.160> to
05:04:46.350 --> 05:04:46.360 align:start position:0%
start creating the what is about to
05:04:46.360 --> 05:04:50.310 align:start position:0%
start creating the what is about to
become<05:04:46.878> the<05:04:47.558> popular<05:04:48.558> the<05:04:48.718> explore<05:04:49.200> page<05:04:50.000> so
05:04:50.310 --> 05:04:50.320 align:start position:0%
become the popular the explore page so
05:04:50.320 --> 05:04:52.990 align:start position:0%
become the popular the explore page so
let's<05:04:50.558> give<05:04:50.718> this<05:04:50.920> div<05:04:51.200> a<05:04:51.440> class<05:04:51.840> name<05:04:52.680> equal
05:04:52.990 --> 05:04:53.000 align:start position:0%
let's give this div a class name equal
05:04:53.000 --> 05:04:55.990 align:start position:0%
let's give this div a class name equal
to<05:04:54.120> flex<05:04:55.120> Das
05:04:55.990 --> 05:04:56.000 align:start position:0%
to flex Das
05:04:56.000 --> 05:05:01.470 align:start position:0%
to flex Das
between<05:04:57.000> w-<05:04:57.798> full<05:04:58.080> for<05:04:58.280> full<05:04:58.638> width<05:04:59.638> Max<05:05:00.160> DW
05:05:01.470 --> 05:05:01.480 align:start position:0%
between w- full for full width Max DW
05:05:01.480 --> 05:05:03.430 align:start position:0%
between w- full for full width Max DW
d5xl
05:05:03.430 --> 05:05:03.440 align:start position:0%
d5xl
05:05:03.440 --> 05:05:05.708 align:start position:0%
d5xl
and<05:05:03.680> margin<05:05:04.120> top<05:05:04.360> of<05:05:04.520> 16<05:05:05.000> to<05:05:05.200> divide<05:05:05.480> it<05:05:05.600> from
05:05:05.708 --> 05:05:05.718 align:start position:0%
and margin top of 16 to divide it from
05:05:05.718 --> 05:05:08.350 align:start position:0%
and margin top of 16 to divide it from
the<05:05:05.840> search<05:05:06.558> and<05:05:06.718> margin<05:05:07.160> bottom<05:05:07.480> of
05:05:08.350 --> 05:05:08.360 align:start position:0%
the search and margin bottom of
05:05:08.360 --> 05:05:11.510 align:start position:0%
the search and margin bottom of
seven<05:05:09.360> in<05:05:09.638> there<05:05:10.040> we<05:05:10.160> can<05:05:10.320> have<05:05:10.520> an<05:05:10.638> H3<05:05:11.320> that's
05:05:11.510 --> 05:05:11.520 align:start position:0%
seven in there we can have an H3 that's
05:05:11.520 --> 05:05:14.110 align:start position:0%
seven in there we can have an H3 that's
going<05:05:11.680> to<05:05:11.798> be<05:05:12.000> similar<05:05:12.360> to<05:05:12.520> this<05:05:12.798> H2<05:05:13.798> and<05:05:14.000> we're
05:05:14.110 --> 05:05:14.120 align:start position:0%
going to be similar to this H2 and we're
05:05:14.120 --> 05:05:17.270 align:start position:0%
going to be similar to this H2 and we're
going<05:05:14.240> to<05:05:14.360> change<05:05:14.638> the<05:05:14.840> styling<05:05:15.638> to<05:05:15.840> be<05:05:16.080> body-
05:05:17.270 --> 05:05:17.280 align:start position:0%
going to change the styling to be body-
05:05:17.280 --> 05:05:21.310 align:start position:0%
going to change the styling to be body-
bold<05:05:18.280> as<05:05:18.440> Wells<05:05:18.680> on<05:05:18.798> medium<05:05:19.360> devices<05:05:20.360> H3<05:05:21.080> Das
05:05:21.310 --> 05:05:21.320 align:start position:0%
bold as Wells on medium devices H3 Das
05:05:21.320 --> 05:05:24.708 align:start position:0%
bold as Wells on medium devices H3 Das
bold<05:05:22.080> and<05:05:22.200> we<05:05:22.320> can<05:05:22.440> change<05:05:22.680> it<05:05:22.840> to<05:05:23.400> H3<05:05:24.400> there<05:05:24.558> we
05:05:24.708 --> 05:05:24.718 align:start position:0%
bold and we can change it to H3 there we
05:05:24.718 --> 05:05:27.270 align:start position:0%
bold and we can change it to H3 there we
go<05:05:25.480> instead<05:05:25.760> of<05:05:25.878> search<05:05:26.200> posts<05:05:26.840> it's<05:05:27.000> going<05:05:27.120> to
05:05:27.270 --> 05:05:27.280 align:start position:0%
go instead of search posts it's going to
05:05:27.280 --> 05:05:29.788 align:start position:0%
go instead of search posts it's going to
say<05:05:27.798> popular
05:05:29.788 --> 05:05:29.798 align:start position:0%
say popular
05:05:29.798 --> 05:05:33.070 align:start position:0%
say popular
today<05:05:30.798> right<05:05:31.040> below<05:05:31.360> it<05:05:32.200> we<05:05:32.320> can<05:05:32.480> can<05:05:32.600> create<05:05:32.920> a
05:05:33.070 --> 05:05:33.080 align:start position:0%
today right below it we can can create a
05:05:33.080 --> 05:05:35.590 align:start position:0%
today right below it we can can create a
new<05:05:33.360> div<05:05:34.280> that's<05:05:34.480> going<05:05:34.638> to<05:05:34.840> have<05:05:35.000> a<05:05:35.280> class
05:05:35.590 --> 05:05:35.600 align:start position:0%
new div that's going to have a class
05:05:35.600 --> 05:05:39.990 align:start position:0%
new div that's going to have a class
name<05:05:36.320> equal<05:05:36.600> to<05:05:36.878> flex<05:05:37.798> Das<05:05:38.440> Center<05:05:39.440> gap<05:05:39.680> of
05:05:39.990 --> 05:05:40.000 align:start position:0%
name equal to flex Das Center gap of
05:05:40.000 --> 05:05:44.030 align:start position:0%
name equal to flex Das Center gap of
three<05:05:41.000> background<05:05:41.480> of<05:05:41.760> dark<05:05:42.360> three<05:05:43.200> rounded
05:05:44.030 --> 05:05:44.040 align:start position:0%
three background of dark three rounded
05:05:44.040 --> 05:05:47.788 align:start position:0%
three background of dark three rounded
Das<05:05:44.480> excl<05:05:45.480> padding<05:05:45.840> X<05:05:46.080> of<05:05:46.280> four<05:05:47.080> padding<05:05:47.440> y<05:05:47.638> of
05:05:47.788 --> 05:05:47.798 align:start position:0%
Das excl padding X of four padding y of
05:05:47.798 --> 05:05:51.310 align:start position:0%
Das excl padding X of four padding y of
two<05:05:48.520> and<05:05:48.718> cursor<05:05:49.320> Das<05:05:49.920> pointer<05:05:50.920> this<05:05:51.040> is<05:05:51.160> going
05:05:51.310 --> 05:05:51.320 align:start position:0%
two and cursor Das pointer this is going
05:05:51.320 --> 05:05:54.470 align:start position:0%
two and cursor Das pointer this is going
to<05:05:51.440> be<05:05:51.600> a<05:05:51.798> button<05:05:52.280> to<05:05:52.520> filter<05:05:53.080> our<05:05:53.360> posts<05:05:54.320> so
05:05:54.470 --> 05:05:54.480 align:start position:0%
to be a button to filter our posts so
05:05:54.480 --> 05:05:56.628 align:start position:0%
to be a button to filter our posts so
let's<05:05:54.680> create<05:05:54.878> a<05:05:55.040> P<05:05:55.320> tag<05:05:55.718> that's<05:05:55.920> going<05:05:56.080> to<05:05:56.200> say
05:05:56.628 --> 05:05:56.638 align:start position:0%
let's create a P tag that's going to say
05:05:56.638 --> 05:06:00.030 align:start position:0%
let's create a P tag that's going to say
all<05:05:57.480> at<05:05:57.600> the<05:05:57.760> start<05:05:58.040> we're<05:05:58.200> filtering<05:05:58.680> by<05:05:59.040> all
05:06:00.030 --> 05:06:00.040 align:start position:0%
all at the start we're filtering by all
05:06:00.040 --> 05:06:02.628 align:start position:0%
all at the start we're filtering by all
we<05:06:00.160> can<05:06:00.320> give<05:06:00.440> it<05:06:00.558> a<05:06:00.760> class<05:06:01.120> name<05:06:01.840> equal<05:06:02.160> to
05:06:02.628 --> 05:06:02.638 align:start position:0%
we can give it a class name equal to
05:06:02.638 --> 05:06:06.590 align:start position:0%
we can give it a class name equal to
small<05:06:03.638> medium<05:06:04.638> on<05:06:04.840> medium<05:06:05.280> devices<05:06:05.958> base
05:06:06.590 --> 05:06:06.600 align:start position:0%
small medium on medium devices base
05:06:06.600 --> 05:06:11.868 align:start position:0%
small medium on medium devices base
medium<05:06:07.600> and<05:06:07.920> text-<05:06:09.000> light-2<05:06:10.000> for<05:06:10.440> the<05:06:10.878> color
05:06:11.868 --> 05:06:11.878 align:start position:0%
medium and text- light-2 for the color
05:06:11.878 --> 05:06:14.110 align:start position:0%
medium and text- light-2 for the color
below<05:06:12.280> this<05:06:12.480> P<05:06:12.760> tag<05:06:13.120> we<05:06:13.240> can<05:06:13.400> render<05:06:13.920> a
05:06:14.110 --> 05:06:14.120 align:start position:0%
below this P tag we can render a
05:06:14.120 --> 05:06:16.708 align:start position:0%
below this P tag we can render a
self-closing<05:06:15.040> image<05:06:15.400> tag<05:06:16.160> that's<05:06:16.360> going<05:06:16.520> to
05:06:16.708 --> 05:06:16.718 align:start position:0%
self-closing image tag that's going to
05:06:16.718 --> 05:06:22.590 align:start position:0%
self-closing image tag that's going to
have<05:06:16.840> a<05:06:17.040> source<05:06:17.878> equal<05:06:18.520> to<05:06:19.520> SL<05:06:20.080> assets<05:06:21.080> SL<05:06:21.600> ions
05:06:22.590 --> 05:06:22.600 align:start position:0%
have a source equal to SL assets SL ions
05:06:22.600 --> 05:06:24.670 align:start position:0%
have a source equal to SL assets SL ions
SL<05:06:23.080> filter.
05:06:24.670 --> 05:06:24.680 align:start position:0%
SL filter.
05:06:24.680 --> 05:06:28.350 align:start position:0%
SL filter.
SVG<05:06:25.680> it's<05:06:25.840> going<05:06:26.000> to<05:06:26.120> have<05:06:26.240> a<05:06:26.520> width<05:06:26.920> of<05:06:27.120> 20<05:06:28.040> a
05:06:28.350 --> 05:06:28.360 align:start position:0%
SVG it's going to have a width of 20 a
05:06:28.360 --> 05:06:33.510 align:start position:0%
SVG it's going to have a width of 20 a
height<05:06:28.958> of<05:06:29.200> 20<05:06:30.120> and<05:06:30.558> an<05:06:30.718> Al<05:06:31.080> tag<05:06:31.558> of<05:06:31.958> filter
05:06:33.510 --> 05:06:33.520 align:start position:0%
height of 20 and an Al tag of filter
05:06:33.520 --> 05:06:35.430 align:start position:0%
height of 20 and an Al tag of filter
there<05:06:33.680> we<05:06:33.878> go<05:06:34.200> so<05:06:34.400> now<05:06:34.638> this<05:06:34.760> is<05:06:34.920> looking
05:06:35.430 --> 05:06:35.440 align:start position:0%
there we go so now this is looking
05:06:35.440 --> 05:06:38.150 align:start position:0%
there we go so now this is looking
really<05:06:35.798> good<05:06:36.520> and<05:06:36.718> now<05:06:37.120> we<05:06:37.200> can<05:06:37.360> go<05:06:37.558> two<05:06:37.798> divs
05:06:38.150 --> 05:06:38.160 align:start position:0%
really good and now we can go two divs
05:06:38.160 --> 05:06:40.350 align:start position:0%
really good and now we can go two divs
below<05:06:38.680> and<05:06:38.798> we<05:06:38.920> can<05:06:39.040> show<05:06:39.280> the<05:06:39.480> results<05:06:40.080> of
05:06:40.350 --> 05:06:40.360 align:start position:0%
below and we can show the results of
05:06:40.360 --> 05:06:42.670 align:start position:0%
below and we can show the results of
what's<05:06:40.600> popular<05:06:40.958> today<05:06:41.878> so<05:06:42.040> let's<05:06:42.240> create<05:06:42.520> a
05:06:42.670 --> 05:06:42.680 align:start position:0%
what's popular today so let's create a
05:06:42.680 --> 05:06:44.590 align:start position:0%
what's popular today so let's create a
new<05:06:42.920> Dev<05:06:43.400> that's<05:06:43.558> going<05:06:43.718> to<05:06:43.878> have<05:06:44.000> a<05:06:44.240> class
05:06:44.590 --> 05:06:44.600 align:start position:0%
new Dev that's going to have a class
05:06:44.600 --> 05:06:51.030 align:start position:0%
new Dev that's going to have a class
name<05:06:45.160> equal<05:06:45.480> to<05:06:46.480> flex<05:06:47.520> flex-wrap<05:06:48.958> gap<05:06:49.958> of<05:06:50.320> nine
05:06:51.030 --> 05:06:51.040 align:start position:0%
name equal to flex flex-wrap gap of nine
05:06:51.040 --> 05:06:55.030 align:start position:0%
name equal to flex flex-wrap gap of nine
between<05:06:51.480> each<05:06:51.798> post<05:06:52.480> a<05:06:52.718> W-4<05:06:53.638> for<05:06:53.840> full<05:06:54.160> width
05:06:55.030 --> 05:06:55.040 align:start position:0%
between each post a W-4 for full width
05:06:55.040 --> 05:06:59.750 align:start position:0%
between each post a W-4 for full width
and<05:06:55.280> a<05:06:55.480> Max<05:06:55.878> W<05:06:56.440> of<05:06:56.680> 5<05:06:57.360> XEL<05:06:58.360> now<05:06:58.600> inside<05:06:58.958> of<05:06:59.160> here
05:06:59.750 --> 05:06:59.760 align:start position:0%
and a Max W of 5 XEL now inside of here
05:06:59.760 --> 05:07:01.750 align:start position:0%
and a Max W of 5 XEL now inside of here
we<05:06:59.878> should<05:07:00.120> figure<05:07:00.440> out<05:07:00.958> if<05:07:01.160> we<05:07:01.240> should<05:07:01.440> show
05:07:01.750 --> 05:07:01.760 align:start position:0%
we should figure out if we should show
05:07:01.760 --> 05:07:05.150 align:start position:0%
we should figure out if we should show
no<05:07:02.040> post<05:07:02.360> post<05:07:02.798> or<05:07:03.040> if<05:07:03.160> we<05:07:03.280> should<05:07:03.480> show<05:07:03.840> old
05:07:05.150 --> 05:07:05.160 align:start position:0%
no post post or if we should show old
05:07:05.160 --> 05:07:07.470 align:start position:0%
no post post or if we should show old
posts<05:07:06.160> so<05:07:06.360> let's<05:07:06.558> create<05:07:06.798> some<05:07:07.000> variables
05:07:07.470 --> 05:07:07.480 align:start position:0%
posts so let's create some variables
05:07:07.480 --> 05:07:09.110 align:start position:0%
posts so let's create some variables
that<05:07:07.558> are<05:07:07.680> going<05:07:07.760> to<05:07:07.878> help<05:07:08.240> decide<05:07:08.798> what<05:07:08.920> to
05:07:09.110 --> 05:07:09.120 align:start position:0%
that are going to help decide what to
05:07:09.120 --> 05:07:13.750 align:start position:0%
that are going to help decide what to
show<05:07:10.120> we<05:07:10.240> can<05:07:10.440> say<05:07:10.718> const<05:07:11.558> should
05:07:13.750 --> 05:07:13.760 align:start position:0%
show we can say const should
05:07:13.760 --> 05:07:17.628 align:start position:0%
show we can say const should
show<05:07:14.760> search<05:07:16.040> results<05:07:17.040> and<05:07:17.200> that's<05:07:17.360> going<05:07:17.520> to
05:07:17.628 --> 05:07:17.638 align:start position:0%
show search results and that's going to
05:07:17.638 --> 05:07:21.230 align:start position:0%
show search results and that's going to
be<05:07:17.840> equal<05:07:18.080> to<05:07:18.638> if<05:07:18.840> search<05:07:19.360> value<05:07:20.160> is<05:07:20.480> not<05:07:20.958> equal
05:07:21.230 --> 05:07:21.240 align:start position:0%
be equal to if search value is not equal
05:07:21.240 --> 05:07:23.470 align:start position:0%
be equal to if search value is not equal
to<05:07:21.360> an<05:07:21.480> empty<05:07:21.798> string<05:07:22.520> then<05:07:22.760> yes<05:07:23.160> it<05:07:23.280> should
05:07:23.470 --> 05:07:23.480 align:start position:0%
to an empty string then yes it should
05:07:23.480 --> 05:07:28.190 align:start position:0%
to an empty string then yes it should
show<05:07:23.718> search<05:07:24.280> results<05:07:25.280> then<05:07:25.958> const
05:07:28.190 --> 05:07:28.200 align:start position:0%
show search results then const
05:07:28.200 --> 05:07:31.868 align:start position:0%
show search results then const
should<05:07:29.200> show<05:07:30.040> posts<05:07:30.958> it's<05:07:31.120> going<05:07:31.280> to<05:07:31.440> be<05:07:31.600> equal
05:07:31.868 --> 05:07:31.878 align:start position:0%
should show posts it's going to be equal
05:07:31.878 --> 05:07:36.510 align:start position:0%
should show posts it's going to be equal
to<05:07:32.600> if<05:07:32.760> it's<05:07:33.000> no<05:07:33.638> should<05:07:34.400> show<05:07:35.400> search<05:07:35.798> results
05:07:36.510 --> 05:07:36.520 align:start position:0%
to if it's no should show search results
05:07:36.520 --> 05:07:38.310 align:start position:0%
to if it's no should show search results
I<05:07:36.600> think<05:07:36.718> I<05:07:36.878> misspelled<05:07:37.320> it<05:07:37.440> show<05:07:37.718> show<05:07:38.200> it
05:07:38.310 --> 05:07:38.320 align:start position:0%
I think I misspelled it show show it
05:07:38.320 --> 05:07:41.708 align:start position:0%
I think I misspelled it show show it
should<05:07:38.440> have<05:07:38.600> been<05:07:39.040> should<05:07:39.958> show<05:07:40.958> so<05:07:41.160> if<05:07:41.320> no
05:07:41.708 --> 05:07:41.718 align:start position:0%
should have been should show so if no
05:07:41.718 --> 05:07:44.948 align:start position:0%
should have been should show so if no
should<05:07:41.920> show<05:07:42.400> search<05:07:42.958> results<05:07:43.958> and<05:07:44.638> if<05:07:44.798> we
05:07:44.948 --> 05:07:44.958 align:start position:0%
should show search results and if we
05:07:44.958 --> 05:07:47.310 align:start position:0%
should show search results and if we
have<05:07:45.400> posts<05:07:46.400> so<05:07:46.600> later<05:07:46.840> on<05:07:47.000> we're<05:07:47.120> going<05:07:47.240> to
05:07:47.310 --> 05:07:47.320 align:start position:0%
have posts so later on we're going to
05:07:47.320 --> 05:07:51.230 align:start position:0%
have posts so later on we're going to
have<05:07:47.440> an<05:07:47.558> array<05:07:47.840> of<05:07:48.040> post<05:07:48.680> cons<05:07:49.120> post<05:07:49.400> is<05:07:49.558> an
05:07:51.230 --> 05:07:51.240 align:start position:0%
have an array of post cons post is an
05:07:51.240 --> 05:07:54.150 align:start position:0%
have an array of post cons post is an
array<05:07:52.240> and<05:07:52.360> then<05:07:52.480> we'll<05:07:52.680> be<05:07:52.798> able<05:07:53.000> to<05:07:53.200> say<05:07:53.600> if
05:07:54.150 --> 05:07:54.160 align:start position:0%
array and then we'll be able to say if
05:07:54.160 --> 05:07:59.868 align:start position:0%
array and then we'll be able to say if
posts.<05:07:55.440> pages.<05:07:56.440> every<05:07:56.920> page<05:07:57.920> has<05:07:58.120> an<05:07:58.878> item
05:07:59.868 --> 05:07:59.878 align:start position:0%
posts. pages. every page has an item
05:07:59.878 --> 05:08:04.110 align:start position:0%
posts. pages. every page has an item
where<05:08:00.280> an<05:08:00.520> item.<05:08:01.360> documents<05:08:02.280> do<05:08:02.840> length<05:08:03.840> is
05:08:04.110 --> 05:08:04.120 align:start position:0%
where an item. documents do length is
05:08:04.120 --> 05:08:05.150 align:start position:0%
where an item. documents do length is
greater
05:08:05.150 --> 05:08:05.160 align:start position:0%
greater
05:08:05.160 --> 05:08:08.470 align:start position:0%
greater
than<05:08:06.200> zero<05:08:07.200> that<05:08:07.320> means<05:08:07.600> that<05:08:07.760> we<05:08:07.920> do<05:08:08.200> have
05:08:08.470 --> 05:08:08.480 align:start position:0%
than zero that means that we do have
05:08:08.480 --> 05:08:10.590 align:start position:0%
than zero that means that we do have
posts<05:08:09.160> but<05:08:09.360> again<05:08:09.600> this<05:08:09.718> is<05:08:09.878> just<05:08:10.000> a<05:08:10.240> fake
05:08:10.590 --> 05:08:10.600 align:start position:0%
posts but again this is just a fake
05:08:10.600 --> 05:08:12.430 align:start position:0%
posts but again this is just a fake
array<05:08:11.240> soon<05:08:11.520> enough<05:08:11.760> we're<05:08:11.878> going<05:08:12.000> to<05:08:12.160> fix
05:08:12.430 --> 05:08:12.440 align:start position:0%
array soon enough we're going to fix
05:08:12.440 --> 05:08:14.868 align:start position:0%
array soon enough we're going to fix
this<05:08:13.200> but<05:08:13.400> these<05:08:13.558> two<05:08:13.798> Boolean<05:08:14.280> variables
05:08:14.868 --> 05:08:14.878 align:start position:0%
this but these two Boolean variables
05:08:14.878 --> 05:08:16.830 align:start position:0%
this but these two Boolean variables
should<05:08:15.160> allow<05:08:15.440> us<05:08:15.558> to<05:08:15.760> know<05:08:16.240> what<05:08:16.400> we<05:08:16.520> need<05:08:16.638> to
05:08:16.830 --> 05:08:16.840 align:start position:0%
should allow us to know what we need to
05:08:16.840 --> 05:08:19.910 align:start position:0%
should allow us to know what we need to
display<05:08:17.558> so<05:08:17.840> right<05:08:18.000> here<05:08:18.280> below<05:08:19.040> we<05:08:19.160> can<05:08:19.360> say
05:08:19.910 --> 05:08:19.920 align:start position:0%
display so right here below we can say
05:08:19.920 --> 05:08:22.830 align:start position:0%
display so right here below we can say
if<05:08:20.680> should<05:08:21.240> show<05:08:21.878> search
05:08:22.830 --> 05:08:22.840 align:start position:0%
if should show search
05:08:22.840 --> 05:08:25.390 align:start position:0%
if should show search
results<05:08:23.840> then<05:08:24.400> we<05:08:24.520> can<05:08:24.638> do<05:08:24.760> a<05:08:24.878> Turner
05:08:25.390 --> 05:08:25.400 align:start position:0%
results then we can do a Turner
05:08:25.400 --> 05:08:28.030 align:start position:0%
results then we can do a Turner
operation<05:08:26.400> and<05:08:26.520> then<05:08:26.680> we<05:08:26.760> can<05:08:26.920> show<05:08:27.240> a<05:08:27.480> new
05:08:28.030 --> 05:08:28.040 align:start position:0%
operation and then we can show a new
05:08:28.040 --> 05:08:32.430 align:start position:0%
operation and then we can show a new
search<05:08:28.680> results<05:08:29.440> component<05:08:30.440> like<05:08:30.760> this<05:08:31.760> else
05:08:32.430 --> 05:08:32.440 align:start position:0%
search results component like this else
05:08:32.440 --> 05:08:36.070 align:start position:0%
search results component like this else
we<05:08:32.520> can<05:08:32.680> check<05:08:33.000> if<05:08:33.320> should<05:08:33.958> show<05:08:34.840> posts<05:08:35.840> then
05:08:36.070 --> 05:08:36.080 align:start position:0%
we can check if should show posts then
05:08:36.080 --> 05:08:38.750 align:start position:0%
we can check if should show posts then
we<05:08:36.200> can<05:08:36.320> do<05:08:36.440> a<05:08:36.600> P<05:08:36.840> tag<05:08:37.160> here<05:08:37.400> and<05:08:37.558> say<05:08:37.840> end<05:08:38.360> off
05:08:38.750 --> 05:08:38.760 align:start position:0%
we can do a P tag here and say end off
05:08:38.760 --> 05:08:41.190 align:start position:0%
we can do a P tag here and say end off
posts<05:08:39.400> because<05:08:39.638> we<05:08:39.760> have<05:08:39.920> came<05:08:40.200> to<05:08:40.360> the<05:08:40.520> bottom
05:08:41.190 --> 05:08:41.200 align:start position:0%
posts because we have came to the bottom
05:08:41.200 --> 05:08:44.990 align:start position:0%
posts because we have came to the bottom
and<05:08:41.360> we<05:08:41.440> can<05:08:41.600> give<05:08:41.680> it<05:08:41.798> a<05:08:42.040> class<05:08:42.360> name<05:08:42.798> of<05:08:43.520> text
05:08:44.990 --> 05:08:45.000 align:start position:0%
and we can give it a class name of text
05:08:45.000 --> 05:08:49.990 align:start position:0%
and we can give it a class name of text
dl-4<05:08:46.000> margin<05:08:46.440> top<05:08:46.718> of<05:08:46.878> 10<05:08:47.798> text-<05:08:48.680> Center<05:08:49.680> and
05:08:49.990 --> 05:08:50.000 align:start position:0%
dl-4 margin top of 10 text- Center and
05:08:50.000 --> 05:08:53.750 align:start position:0%
dl-4 margin top of 10 text- Center and
w-<05:08:50.760> full<05:08:51.760> and<05:08:52.040> finally<05:08:52.840> we<05:08:52.958> can<05:08:53.160> render<05:08:53.600> the
05:08:53.750 --> 05:08:53.760 align:start position:0%
w- full and finally we can render the
05:08:53.760 --> 05:08:57.548 align:start position:0%
w- full and finally we can render the
posts<05:08:54.240> so<05:08:54.400> we<05:08:54.480> can<05:08:54.600> say<05:08:54.920> posts.<05:08:55.920> pages.<05:08:56.920> map
05:08:57.548 --> 05:08:57.558 align:start position:0%
posts so we can say posts. pages. map
05:08:57.558 --> 05:08:59.868 align:start position:0%
posts so we can say posts. pages. map
here<05:08:57.680> we<05:08:57.840> Rend<05:08:58.080> it<05:08:58.240> through<05:08:58.440> all<05:08:58.600> the<05:08:58.878> pages
05:08:59.868 --> 05:08:59.878 align:start position:0%
here we Rend it through all the pages
05:08:59.878 --> 05:09:02.190 align:start position:0%
here we Rend it through all the pages
where<05:09:00.000> we<05:09:00.160> get<05:09:00.400> each<05:09:00.638> individual<05:09:01.240> item<05:09:01.920> and
05:09:02.190 --> 05:09:02.200 align:start position:0%
where we get each individual item and
05:09:02.200 --> 05:09:05.150 align:start position:0%
where we get each individual item and
and<05:09:02.360> an<05:09:02.798> index<05:09:03.798> and<05:09:04.080> we<05:09:04.400> return<05:09:04.840> something
05:09:05.150 --> 05:09:05.160 align:start position:0%
and an index and we return something
05:09:05.160 --> 05:09:09.150 align:start position:0%
and an index and we return something
known<05:09:05.440> as<05:09:05.558> a<05:09:05.798> grid<05:09:06.760> post<05:09:07.878> list<05:09:08.878> this<05:09:08.958> is
05:09:09.150 --> 05:09:09.160 align:start position:0%
known as a grid post list this is
05:09:09.160 --> 05:09:11.030 align:start position:0%
known as a grid post list this is
another<05:09:09.440> component<05:09:09.840> that<05:09:09.958> we<05:09:10.160> don't<05:09:10.440> yet<05:09:10.718> have
05:09:11.030 --> 05:09:11.040 align:start position:0%
another component that we don't yet have
05:09:11.040 --> 05:09:12.868 align:start position:0%
another component that we don't yet have
so<05:09:11.200> it's<05:09:11.320> going<05:09:11.480> to<05:09:11.638> result<05:09:12.000> in<05:09:12.120> an<05:09:12.320> error
05:09:12.868 --> 05:09:12.878 align:start position:0%
so it's going to result in an error
05:09:12.878 --> 05:09:16.670 align:start position:0%
so it's going to result in an error
right<05:09:13.160> now<05:09:14.160> but<05:09:14.400> we<05:09:14.520> can<05:09:14.798> pass<05:09:15.040> it<05:09:15.400> a<05:09:15.638> key<05:09:16.320> equal
05:09:16.670 --> 05:09:16.680 align:start position:0%
right now but we can pass it a key equal
05:09:16.680 --> 05:09:20.470 align:start position:0%
right now but we can pass it a key equal
to<05:09:17.680> something<05:09:18.000> like<05:09:18.480> page-
05:09:20.470 --> 05:09:20.480 align:start position:0%
to something like page-
05:09:20.480 --> 05:09:23.510 align:start position:0%
to something like page-
index<05:09:21.480> as<05:09:21.600> well<05:09:21.760> as<05:09:22.040> posts<05:09:22.638> which<05:09:22.760> is<05:09:22.920> equal<05:09:23.200> to
05:09:23.510 --> 05:09:23.520 align:start position:0%
index as well as posts which is equal to
05:09:23.520 --> 05:09:26.350 align:start position:0%
index as well as posts which is equal to
item.<05:09:24.360> documents<05:09:25.160> so<05:09:25.440> posts<05:09:25.840> on<05:09:26.080> that
05:09:26.350 --> 05:09:26.360 align:start position:0%
item. documents so posts on that
05:09:26.360 --> 05:09:28.430 align:start position:0%
item. documents so posts on that
specific<05:09:26.878> page<05:09:27.718> and<05:09:27.878> now<05:09:28.040> of<05:09:28.200> course
05:09:28.430 --> 05:09:28.440 align:start position:0%
specific page and now of course
05:09:28.440 --> 05:09:29.868 align:start position:0%
specific page and now of course
everything<05:09:28.718> is<05:09:28.878> breaking<05:09:29.400> because<05:09:29.638> we<05:09:29.760> have
05:09:29.868 --> 05:09:29.878 align:start position:0%
everything is breaking because we have
05:09:29.878 --> 05:09:32.150 align:start position:0%
everything is breaking because we have
to<05:09:30.040> create<05:09:30.440> two<05:09:30.718> new<05:09:31.000> components<05:09:31.680> search
05:09:32.150 --> 05:09:32.160 align:start position:0%
to create two new components search
05:09:32.160 --> 05:09:34.910 align:start position:0%
to create two new components search
results<05:09:32.600> and<05:09:32.840> GD<05:09:33.200> post<05:09:33.520> list<05:09:34.200> so<05:09:34.520> let's<05:09:34.718> do
05:09:34.910 --> 05:09:34.920 align:start position:0%
results and GD post list so let's do
05:09:34.920 --> 05:09:38.510 align:start position:0%
results and GD post list so let's do
that<05:09:35.240> immediately<05:09:36.240> by<05:09:36.440> going<05:09:36.718> to<05:09:37.440> components
05:09:38.510 --> 05:09:38.520 align:start position:0%
that immediately by going to components
05:09:38.520 --> 05:09:44.948 align:start position:0%
that immediately by going to components
shared<05:09:39.600> search<05:09:41.040> results.<05:09:42.040> TSX<05:09:43.040> where<05:09:43.160> we<05:09:43.320> run
05:09:44.948 --> 05:09:44.958 align:start position:0%
shared search results. TSX where we run
05:09:44.958 --> 05:09:47.708 align:start position:0%
shared search results. TSX where we run
rafc<05:09:45.958> as<05:09:46.160> well
05:09:47.708 --> 05:09:47.718 align:start position:0%
rafc as well
05:09:47.718 --> 05:09:53.310 align:start position:0%
rafc as well
as<05:09:48.718> grid<05:09:49.680> poost<05:09:50.400> list.<05:09:51.360> TSX<05:09:52.320> where<05:09:52.440> we<05:09:52.558> run
05:09:53.310 --> 05:09:53.320 align:start position:0%
as grid poost list. TSX where we run
05:09:53.320 --> 05:09:57.070 align:start position:0%
as grid poost list. TSX where we run
rafc<05:09:54.480> again<05:09:55.480> now<05:09:55.680> we<05:09:55.798> can<05:09:56.120> import<05:09:56.718> both<05:09:56.920> of
05:09:57.070 --> 05:09:57.080 align:start position:0%
rafc again now we can import both of
05:09:57.080 --> 05:10:00.548 align:start position:0%
rafc again now we can import both of
these<05:09:57.360> components<05:09:58.360> right
05:10:00.548 --> 05:10:00.558 align:start position:0%
these components right
05:10:00.558 --> 05:10:04.150 align:start position:0%
these components right
here<05:10:01.558> but<05:10:01.798> if<05:10:02.160> we<05:10:02.280> go<05:10:02.480> a<05:10:02.600> bit<05:10:02.878> above<05:10:03.718> and<05:10:03.878> then
05:10:04.150 --> 05:10:04.160 align:start position:0%
here but if we go a bit above and then
05:10:04.160 --> 05:10:06.868 align:start position:0%
here but if we go a bit above and then
comment<05:10:04.600> out<05:10:05.320> these<05:10:05.718> posts<05:10:06.360> because<05:10:06.718> right
05:10:06.868 --> 05:10:06.878 align:start position:0%
comment out these posts because right
05:10:06.878 --> 05:10:09.470 align:start position:0%
comment out these posts because right
now<05:10:07.280> this<05:10:07.520> breaks<05:10:08.320> because<05:10:08.718> the<05:10:08.878> pages<05:10:09.200> don't
05:10:09.470 --> 05:10:09.480 align:start position:0%
now this breaks because the pages don't
05:10:09.480 --> 05:10:11.590 align:start position:0%
now this breaks because the pages don't
exist<05:10:09.760> on<05:10:09.958> posts<05:10:10.638> so<05:10:10.840> maybe<05:10:11.040> we<05:10:11.160> can<05:10:11.320> add
05:10:11.590 --> 05:10:11.600 align:start position:0%
exist on posts so maybe we can add
05:10:11.600 --> 05:10:13.190 align:start position:0%
exist on posts so maybe we can add
question<05:10:11.840> marks<05:10:12.240> right<05:10:12.400> here<05:10:12.558> to<05:10:12.760> make<05:10:13.000> this
05:10:13.190 --> 05:10:13.200 align:start position:0%
question marks right here to make this
05:10:13.200 --> 05:10:15.708 align:start position:0%
question marks right here to make this
work<05:10:13.840> for<05:10:14.080> now<05:10:14.360> that's<05:10:14.600> not<05:10:14.798> going<05:10:14.958> to<05:10:15.160> work<05:10:15.520> so
05:10:15.708 --> 05:10:15.718 align:start position:0%
work for now that's not going to work so
05:10:15.718 --> 05:10:17.670 align:start position:0%
work for now that's not going to work so
we<05:10:15.798> can<05:10:16.000> comment<05:10:16.320> it<05:10:16.480> out<05:10:16.958> and<05:10:17.120> the<05:10:17.240> reason<05:10:17.558> why
05:10:17.670 --> 05:10:17.680 align:start position:0%
we can comment it out and the reason why
05:10:17.680 --> 05:10:19.990 align:start position:0%
we can comment it out and the reason why
it's<05:10:17.840> not<05:10:18.080> working<05:10:18.718> is<05:10:19.000> because<05:10:19.680> these
05:10:19.990 --> 05:10:20.000 align:start position:0%
it's not working is because these
05:10:20.000 --> 05:10:22.628 align:start position:0%
it's not working is because these
variables<05:10:20.480> are<05:10:20.680> not<05:10:20.920> working<05:10:21.600> as<05:10:21.798> the<05:10:21.958> pages
05:10:22.628 --> 05:10:22.638 align:start position:0%
variables are not working as the pages
05:10:22.638 --> 05:10:25.150 align:start position:0%
variables are not working as the pages
don't<05:10:23.000> exist<05:10:23.400> under<05:10:23.840> posts<05:10:24.638> so<05:10:24.798> we<05:10:24.920> can
05:10:25.150 --> 05:10:25.160 align:start position:0%
don't exist under posts so we can
05:10:25.160 --> 05:10:28.030 align:start position:0%
don't exist under posts so we can
comment<05:10:25.718> all<05:10:26.320> of<05:10:26.558> that<05:10:26.840> out<05:10:27.360> and<05:10:27.480> we're<05:10:27.718> left
05:10:28.030 --> 05:10:28.040 align:start position:0%
comment all of that out and we're left
05:10:28.040 --> 05:10:30.830 align:start position:0%
comment all of that out and we're left
with<05:10:28.160> the<05:10:28.280> base<05:10:29.040> structure<05:10:30.040> of<05:10:30.200> course<05:10:30.680> the
05:10:30.830 --> 05:10:30.840 align:start position:0%
with the base structure of course the
05:10:30.840 --> 05:10:32.948 align:start position:0%
with the base structure of course the
next<05:10:31.080> meaningful<05:10:31.558> thing<05:10:31.680> to<05:10:31.798> do<05:10:32.440> is<05:10:32.600> to
05:10:32.948 --> 05:10:32.958 align:start position:0%
next meaningful thing to do is to
05:10:32.958 --> 05:10:35.788 align:start position:0%
next meaningful thing to do is to
actually<05:10:33.480> fetch<05:10:34.240> real<05:10:34.760> posts<05:10:35.320> that<05:10:35.480> we<05:10:35.600> can
05:10:35.788 --> 05:10:35.798 align:start position:0%
actually fetch real posts that we can
05:10:35.798 --> 05:10:38.070 align:start position:0%
actually fetch real posts that we can
explore<05:10:36.638> and<05:10:36.798> then<05:10:37.000> implement<05:10:37.360> the<05:10:37.520> search<05:10:37.878> as
05:10:38.070 --> 05:10:38.080 align:start position:0%
explore and then implement the search as
05:10:38.080 --> 05:10:40.948 align:start position:0%
explore and then implement the search as
well<05:10:39.000> so<05:10:39.320> let's<05:10:39.558> go<05:10:39.680> ahead<05:10:40.040> and<05:10:40.200> let's<05:10:40.480> focus
05:10:40.948 --> 05:10:40.958 align:start position:0%
well so let's go ahead and let's focus
05:10:40.958 --> 05:10:44.270 align:start position:0%
well so let's go ahead and let's focus
on<05:10:41.400> getting<05:10:41.680> the<05:10:41.878> post<05:10:42.280> for<05:10:42.558> our<05:10:42.798> explore<05:10:43.360> page
05:10:44.270 --> 05:10:44.280 align:start position:0%
on getting the post for our explore page
05:10:44.280 --> 05:10:46.150 align:start position:0%
on getting the post for our explore page
and<05:10:44.558> don't<05:10:44.798> forget<05:10:45.280> that<05:10:45.400> in<05:10:45.520> the<05:10:45.680> explore
05:10:46.150 --> 05:10:46.160 align:start position:0%
and don't forget that in the explore
05:10:46.160 --> 05:10:48.510 align:start position:0%
and don't forget that in the explore
page<05:10:46.638> we<05:10:46.798> have<05:10:47.040> this<05:10:47.360> wonderful<05:10:48.120> infinite
05:10:48.510 --> 05:10:48.520 align:start position:0%
page we have this wonderful infinite
05:10:48.520 --> 05:10:50.670 align:start position:0%
page we have this wonderful infinite
scroll<05:10:49.200> so<05:10:49.320> you'll<05:10:49.600> always<05:10:49.920> be<05:10:50.080> able<05:10:50.320> to<05:10:50.480> get
05:10:50.670 --> 05:10:50.680 align:start position:0%
scroll so you'll always be able to get
05:10:50.680 --> 05:10:54.430 align:start position:0%
scroll so you'll always be able to get
new<05:10:50.958> content<05:10:51.798> as<05:10:52.040> you<05:10:52.240> scroll<05:10:52.878> down<05:10:53.878> so<05:10:54.240> let's
05:10:54.430 --> 05:10:54.440 align:start position:0%
new content as you scroll down so let's
05:10:54.440 --> 05:10:57.670 align:start position:0%
new content as you scroll down so let's
go<05:10:54.558> ahead<05:10:54.878> and<05:10:55.120> Implement<05:10:55.718> that<05:10:56.120> fetch<05:10:56.718> posts
05:10:57.670 --> 05:10:57.680 align:start position:0%
go ahead and Implement that fetch posts
05:10:57.680 --> 05:10:59.510 align:start position:0%
go ahead and Implement that fetch posts
you<05:10:57.840> know<05:10:58.040> the<05:10:58.160> drill<05:10:58.638> we<05:10:58.840> first<05:10:59.080> have<05:10:59.200> to<05:10:59.360> go
05:10:59.510 --> 05:10:59.520 align:start position:0%
you know the drill we first have to go
05:10:59.520 --> 05:11:03.030 align:start position:0%
you know the drill we first have to go
to<05:10:59.718> the<05:10:59.920> API<05:11:00.638> app<05:11:01.000> right<05:11:02.120> and<05:11:02.320> to<05:11:02.480> create<05:11:02.840> this
05:11:03.030 --> 05:11:03.040 align:start position:0%
to the API app right and to create this
05:11:03.040 --> 05:11:06.350 align:start position:0%
to the API app right and to create this
function<05:11:03.600> we<05:11:03.718> can<05:11:03.878> create<05:11:04.120> an<05:11:04.400> export<05:11:05.320> async
05:11:06.350 --> 05:11:06.360 align:start position:0%
function we can create an export async
05:11:06.360 --> 05:11:10.230 align:start position:0%
function we can create an export async
function<05:11:07.360> get<05:11:08.040> infinite<05:11:09.000> posts<05:11:10.000> of<05:11:10.120> course
05:11:10.230 --> 05:11:10.240 align:start position:0%
function get infinite posts of course
05:11:10.240 --> 05:11:12.788 align:start position:0%
function get infinite posts of course
we're<05:11:10.400> missing<05:11:10.680> an<05:11:10.840> N<05:11:11.200> right<05:11:11.440> here<05:11:12.400> and<05:11:12.638> it's
05:11:12.788 --> 05:11:12.798 align:start position:0%
we're missing an N right here and it's
05:11:12.798 --> 05:11:16.190 align:start position:0%
we're missing an N right here and it's
going<05:11:12.958> to<05:11:13.200> accept<05:11:13.920> an<05:11:14.240> object<05:11:14.798> called<05:11:15.480> page
05:11:16.190 --> 05:11:16.200 align:start position:0%
going to accept an object called page
05:11:16.200 --> 05:11:19.110 align:start position:0%
going to accept an object called page
peram<05:11:17.200> which<05:11:17.320> is<05:11:17.480> going<05:11:17.638> to<05:11:17.840> essentially<05:11:18.400> be
05:11:19.110 --> 05:11:19.120 align:start position:0%
peram which is going to essentially be
05:11:19.120 --> 05:11:22.990 align:start position:0%
peram which is going to essentially be
page<05:11:19.400> per<05:11:19.680> Ram<05:11:20.240> of<05:11:20.400> a<05:11:20.638> type<05:11:21.480> number<05:11:22.480> inside<05:11:22.798> of
05:11:22.990 --> 05:11:23.000 align:start position:0%
page per Ram of a type number inside of
05:11:23.000 --> 05:11:24.990 align:start position:0%
page per Ram of a type number inside of
here<05:11:23.200> we<05:11:23.280> want<05:11:23.440> to<05:11:23.600> define<05:11:24.000> the<05:11:24.160> queries<05:11:24.878> which
05:11:24.990 --> 05:11:25.000 align:start position:0%
here we want to define the queries which
05:11:25.000 --> 05:11:27.390 align:start position:0%
here we want to define the queries which
we<05:11:25.120> want<05:11:25.200> to<05:11:25.360> fetch<05:11:25.638> the<05:11:25.760> post<05:11:26.320> by<05:11:27.000> so<05:11:27.200> we<05:11:27.280> can
05:11:27.390 --> 05:11:27.400 align:start position:0%
we want to fetch the post by so we can
05:11:27.400 --> 05:11:31.070 align:start position:0%
we want to fetch the post by so we can
say<05:11:27.680> const<05:11:28.360> queries<05:11:29.240> of<05:11:29.400> a<05:11:29.638> type<05:11:30.160> array<05:11:30.878> with
05:11:31.070 --> 05:11:31.080 align:start position:0%
say const queries of a type array with
05:11:31.080 --> 05:11:32.510 align:start position:0%
say const queries of a type array with
any<05:11:31.280> kind<05:11:31.440> of<05:11:31.600> content
05:11:32.510 --> 05:11:32.520 align:start position:0%
any kind of content
05:11:32.520 --> 05:11:36.230 align:start position:0%
any kind of content
is<05:11:32.718> equal<05:11:33.040> to<05:11:33.638> array<05:11:34.280> of<05:11:34.520> query.<05:11:35.360> order
05:11:36.230 --> 05:11:36.240 align:start position:0%
is equal to array of query. order
05:11:36.240 --> 05:11:39.390 align:start position:0%
is equal to array of query. order
descending<05:11:37.240> based<05:11:37.638> off<05:11:37.798> of<05:11:37.958> the<05:11:38.200> updated<05:11:38.798> ad
05:11:39.390 --> 05:11:39.400 align:start position:0%
descending based off of the updated ad
05:11:39.400 --> 05:11:41.750 align:start position:0%
descending based off of the updated ad
property<05:11:40.400> and<05:11:40.520> we<05:11:40.638> have<05:11:40.760> to<05:11:40.958> add<05:11:41.200> a<05:11:41.400> dollar
05:11:41.750 --> 05:11:41.760 align:start position:0%
property and we have to add a dollar
05:11:41.760 --> 05:11:44.628 align:start position:0%
property and we have to add a dollar
sign<05:11:42.280> up<05:11:42.840> front<05:11:43.840> so<05:11:44.000> we<05:11:44.080> want<05:11:44.240> to<05:11:44.360> get<05:11:44.520> the
05:11:44.628 --> 05:11:44.638 align:start position:0%
sign up front so we want to get the
05:11:44.638 --> 05:11:47.030 align:start position:0%
sign up front so we want to get the
newest<05:11:45.040> post<05:11:45.440> first<05:11:46.240> and<05:11:46.400> we<05:11:46.480> want<05:11:46.600> to<05:11:46.760> limit
05:11:47.030 --> 05:11:47.040 align:start position:0%
newest post first and we want to limit
05:11:47.040 --> 05:11:51.510 align:start position:0%
newest post first and we want to limit
it<05:11:47.320> to<05:11:47.638> query.<05:11:48.638> limit<05:11:49.160> of<05:11:49.400> 20<05:11:50.400> 10<05:11:50.760> is<05:11:51.040> okay<05:11:51.360> as
05:11:51.510 --> 05:11:51.520 align:start position:0%
it to query. limit of 20 10 is okay as
05:11:51.520 --> 05:11:53.470 align:start position:0%
it to query. limit of 20 10 is okay as
well<05:11:51.878> considering<05:11:52.320> that<05:11:52.480> we<05:11:52.680> also<05:11:53.080> have
05:11:53.470 --> 05:11:53.480 align:start position:0%
well considering that we also have
05:11:53.480 --> 05:11:56.470 align:start position:0%
well considering that we also have
infinite<05:11:54.120> loading<05:11:55.120> then<05:11:55.400> we<05:11:55.480> want<05:11:55.600> to<05:11:55.760> check
05:11:56.470 --> 05:11:56.480 align:start position:0%
infinite loading then we want to check
05:11:56.480 --> 05:11:59.948 align:start position:0%
infinite loading then we want to check
if<05:11:56.680> we<05:11:56.920> have<05:11:57.320> page<05:11:57.638> prrams<05:11:58.360> so<05:11:58.638> if<05:11:58.920> page<05:11:59.200> pram
05:11:59.948 --> 05:11:59.958 align:start position:0%
if we have page prrams so if page pram
05:11:59.958 --> 05:12:03.310 align:start position:0%
if we have page prrams so if page pram
in<05:12:00.160> that<05:12:00.400> case<05:12:00.878> queries.<05:12:01.958> push<05:12:02.760> we<05:12:02.958> also<05:12:03.200> want
05:12:03.310 --> 05:12:03.320 align:start position:0%
in that case queries. push we also want
05:12:03.320 --> 05:12:04.628 align:start position:0%
in that case queries. push we also want
to<05:12:03.558> add<05:12:03.840> a
05:12:04.628 --> 05:12:04.638 align:start position:0%
to add a
05:12:04.638 --> 05:12:08.910 align:start position:0%
to add a
query.<05:12:05.638> cursor<05:12:06.840> after<05:12:07.840> what<05:12:08.080> does<05:12:08.320> this<05:12:08.520> mean
05:12:08.910 --> 05:12:08.920 align:start position:0%
query. cursor after what does this mean
05:12:08.920 --> 05:12:11.910 align:start position:0%
query. cursor after what does this mean
well<05:12:09.080> it<05:12:09.400> means<05:12:10.400> if<05:12:10.520> we're<05:12:10.718> at<05:12:10.798> the<05:12:11.000> page<05:12:11.240> two
05:12:11.910 --> 05:12:11.920 align:start position:0%
well it means if we're at the page two
05:12:11.920 --> 05:12:14.310 align:start position:0%
well it means if we're at the page two
skip<05:12:12.360> the<05:12:12.558> first<05:12:12.878> 10<05:12:13.320> already<05:12:13.840> and<05:12:14.000> give<05:12:14.160> me
05:12:14.310 --> 05:12:14.320 align:start position:0%
skip the first 10 already and give me
05:12:14.320 --> 05:12:18.510 align:start position:0%
skip the first 10 already and give me
the<05:12:14.480> second<05:12:14.798> 10<05:12:15.480> right<05:12:15.958> so<05:12:16.120> we<05:12:16.240> can<05:12:16.400> say<05:12:16.760> page
05:12:18.510 --> 05:12:18.520 align:start position:0%
the second 10 right so we can say page
05:12:18.520 --> 05:12:20.788 align:start position:0%
the second 10 right so we can say page
Pam<05:12:19.520> do<05:12:19.840> two
05:12:20.788 --> 05:12:20.798 align:start position:0%
Pam do two
05:12:20.798 --> 05:12:23.150 align:start position:0%
Pam do two
string<05:12:21.798> so<05:12:22.000> the<05:12:22.120> page<05:12:22.360> param<05:12:22.760> is<05:12:22.920> actually
05:12:23.150 --> 05:12:23.160 align:start position:0%
string so the page param is actually
05:12:23.160 --> 05:12:25.430 align:start position:0%
string so the page param is actually
going<05:12:23.280> to<05:12:23.400> be<05:12:23.520> a<05:12:23.680> number<05:12:24.080> of<05:12:24.280> how<05:12:24.440> many<05:12:24.798> pages
05:12:25.430 --> 05:12:25.440 align:start position:0%
going to be a number of how many pages
05:12:25.440 --> 05:12:27.590 align:start position:0%
going to be a number of how many pages
or<05:12:25.680> documents<05:12:26.440> do<05:12:26.600> we<05:12:26.718> want<05:12:26.840> to
05:12:27.590 --> 05:12:27.600 align:start position:0%
or documents do we want to
05:12:27.600 --> 05:12:30.390 align:start position:0%
or documents do we want to
skip<05:12:28.600> once<05:12:28.798> we<05:12:28.920> know<05:12:29.200> that<05:12:29.400> information<05:12:30.320> we
05:12:30.390 --> 05:12:30.400 align:start position:0%
skip once we know that information we
05:12:30.400 --> 05:12:33.310 align:start position:0%
skip once we know that information we
can<05:12:30.638> open<05:12:30.878> up<05:12:31.080> a<05:12:31.240> new<05:12:31.480> trial<05:12:31.958> and<05:12:32.120> catch<05:12:32.400> Block
05:12:33.310 --> 05:12:33.320 align:start position:0%
can open up a new trial and catch Block
05:12:33.320 --> 05:12:35.670 align:start position:0%
can open up a new trial and catch Block
in<05:12:33.440> the<05:12:33.638> catch<05:12:34.160> we<05:12:34.280> can<05:12:34.440> simply<05:12:34.760> consel<05:12:35.240> log
05:12:35.670 --> 05:12:35.680 align:start position:0%
in the catch we can simply consel log
05:12:35.680 --> 05:12:36.708 align:start position:0%
in the catch we can simply consel log
the
05:12:36.708 --> 05:12:36.718 align:start position:0%
the
05:12:36.718 --> 05:12:39.910 align:start position:0%
the
error<05:12:37.718> and<05:12:37.958> in<05:12:38.120> the<05:12:38.280> try<05:12:38.920> we<05:12:39.040> can<05:12:39.200> try<05:12:39.360> to<05:12:39.520> fetch
05:12:39.910 --> 05:12:39.920 align:start position:0%
error and in the try we can try to fetch
05:12:39.920 --> 05:12:43.270 align:start position:0%
error and in the try we can try to fetch
those<05:12:40.160> posts<05:12:40.760> by<05:12:40.878> saying<05:12:41.240> const<05:12:42.160> posts<05:12:43.080> is
05:12:43.270 --> 05:12:43.280 align:start position:0%
those posts by saying const posts is
05:12:43.280 --> 05:12:46.070 align:start position:0%
those posts by saying const posts is
equal<05:12:43.600> to<05:12:44.480> await
05:12:46.070 --> 05:12:46.080 align:start position:0%
equal to await
05:12:46.080 --> 05:12:48.150 align:start position:0%
equal to await
databases.<05:12:47.080> list
05:12:48.150 --> 05:12:48.160 align:start position:0%
databases. list
05:12:48.160 --> 05:12:51.548 align:start position:0%
databases. list
documents<05:12:49.160> from<05:12:49.440> a<05:12:49.680> database<05:12:50.360> with<05:12:50.520> an<05:12:50.718> ID<05:12:51.200> of
05:12:51.548 --> 05:12:51.558 align:start position:0%
documents from a database with an ID of
05:12:51.558 --> 05:12:54.628 align:start position:0%
documents from a database with an ID of
ight<05:12:52.120> config<05:12:52.840> database<05:12:53.400> ID<05:12:54.240> and<05:12:54.440> the
05:12:54.628 --> 05:12:54.638 align:start position:0%
ight config database ID and the
05:12:54.638 --> 05:12:57.310 align:start position:0%
ight config database ID and the
collection<05:12:55.240> with<05:12:55.360> an<05:12:55.520> ID<05:12:56.000> of<05:12:56.280> aight<05:12:56.760> config
05:12:57.310 --> 05:12:57.320 align:start position:0%
collection with an ID of aight config
05:12:57.320 --> 05:12:59.830 align:start position:0%
collection with an ID of aight config
that<05:12:57.680> post<05:12:58.120> collection<05:12:58.558> ID<05:12:59.360> and<05:12:59.520> then<05:12:59.638> we<05:12:59.718> want
05:12:59.830 --> 05:12:59.840 align:start position:0%
that post collection ID and then we want
05:12:59.840 --> 05:13:02.750 align:start position:0%
that post collection ID and then we want
to<05:13:00.080> pass<05:13:00.400> all<05:13:00.638> the<05:13:00.760> queries<05:13:01.480> BAS<05:13:02.040> off<05:13:02.240> of<05:13:02.440> which
05:13:02.750 --> 05:13:02.760 align:start position:0%
to pass all the queries BAS off of which
05:13:02.760 --> 05:13:04.230 align:start position:0%
to pass all the queries BAS off of which
we<05:13:02.878> want<05:13:03.000> to<05:13:03.160> fetch<05:13:03.440> the
05:13:04.230 --> 05:13:04.240 align:start position:0%
we want to fetch the
05:13:04.240 --> 05:13:07.350 align:start position:0%
we want to fetch the
data<05:13:05.240> if<05:13:05.440> there<05:13:05.600> are<05:13:06.000> no<05:13:06.320> posts<05:13:06.878> we<05:13:07.000> can<05:13:07.160> throw
05:13:07.350 --> 05:13:07.360 align:start position:0%
data if there are no posts we can throw
05:13:07.360 --> 05:13:10.310 align:start position:0%
data if there are no posts we can throw
an<05:13:07.480> error<05:13:08.200> in<05:13:08.360> case<05:13:08.600> there<05:13:08.760> are<05:13:09.360> we<05:13:09.480> can<05:13:09.840> return
05:13:10.310 --> 05:13:10.320 align:start position:0%
an error in case there are we can return
05:13:10.320 --> 05:13:13.270 align:start position:0%
an error in case there are we can return
the<05:13:10.878> posts<05:13:11.878> that's<05:13:12.080> it<05:13:12.240> for<05:13:12.400> the<05:13:12.600> get<05:13:12.798> infinite
05:13:13.270 --> 05:13:13.280 align:start position:0%
the posts that's it for the get infinite
05:13:13.280 --> 05:13:15.868 align:start position:0%
the posts that's it for the get infinite
posts<05:13:13.680> believe<05:13:13.920> it<05:13:14.040> or<05:13:14.240> not<05:13:15.240> but<05:13:15.480> while<05:13:15.600> we're
05:13:15.868 --> 05:13:15.878 align:start position:0%
posts believe it or not but while we're
05:13:15.878 --> 05:13:18.548 align:start position:0%
posts believe it or not but while we're
here<05:13:16.280> let's<05:13:16.520> also<05:13:16.798> do<05:13:17.000> the<05:13:17.240> search<05:13:18.240> and<05:13:18.400> that's
05:13:18.548 --> 05:13:18.558 align:start position:0%
here let's also do the search and that's
05:13:18.558 --> 05:13:20.190 align:start position:0%
here let's also do the search and that's
going<05:13:18.718> to<05:13:18.798> be<05:13:19.040> really<05:13:19.280> similar<05:13:19.798> to<05:13:20.000> get
05:13:20.190 --> 05:13:20.200 align:start position:0%
going to be really similar to get
05:13:20.200 --> 05:13:22.948 align:start position:0%
going to be really similar to get
infinite<05:13:20.638> posts<05:13:21.160> so<05:13:21.360> let's<05:13:21.558> duplicate<05:13:21.958> it
05:13:22.948 --> 05:13:22.958 align:start position:0%
infinite posts so let's duplicate it
05:13:22.958 --> 05:13:27.910 align:start position:0%
infinite posts so let's duplicate it
below<05:13:23.958> let's<05:13:24.200> change<05:13:24.558> the<05:13:24.840> name<05:13:25.840> this<05:13:26.120> time<05:13:26.878> to
05:13:27.910 --> 05:13:27.920 align:start position:0%
below let's change the name this time to
05:13:27.920 --> 05:13:31.430 align:start position:0%
below let's change the name this time to
search<05:13:29.280> posts<05:13:30.280> we<05:13:30.440> won't<05:13:30.718> need<05:13:31.000> any<05:13:31.160> kind<05:13:31.320> of
05:13:31.430 --> 05:13:31.440 align:start position:0%
search posts we won't need any kind of
05:13:31.440 --> 05:13:35.190 align:start position:0%
search posts we won't need any kind of
page<05:13:31.920> Brams<05:13:32.638> we'll<05:13:32.840> need<05:13:33.240> search<05:13:34.080> term<05:13:34.840> of<05:13:35.000> a
05:13:35.190 --> 05:13:35.200 align:start position:0%
page Brams we'll need search term of a
05:13:35.200 --> 05:13:36.510 align:start position:0%
page Brams we'll need search term of a
type
05:13:36.510 --> 05:13:36.520 align:start position:0%
type
05:13:36.520 --> 05:13:39.070 align:start position:0%
type
string<05:13:37.520> we<05:13:37.638> don't<05:13:37.878> need<05:13:38.120> any<05:13:38.320> kind<05:13:38.440> of<05:13:38.638> queries
05:13:39.070 --> 05:13:39.080 align:start position:0%
string we don't need any kind of queries
05:13:39.080 --> 05:13:41.390 align:start position:0%
string we don't need any kind of queries
or<05:13:39.280> page<05:13:39.558> prams<05:13:40.520> the<05:13:40.638> only<05:13:40.840> thing<05:13:41.000> we<05:13:41.120> need<05:13:41.240> to
05:13:41.390 --> 05:13:41.400 align:start position:0%
or page prams the only thing we need to
05:13:41.400 --> 05:13:43.270 align:start position:0%
or page prams the only thing we need to
do<05:13:41.878> is<05:13:42.160> fetch<05:13:42.558> the
05:13:43.270 --> 05:13:43.280 align:start position:0%
do is fetch the
05:13:43.280 --> 05:13:46.628 align:start position:0%
do is fetch the
posts<05:13:44.280> so<05:13:44.600> here<05:13:45.160> we<05:13:45.280> can<05:13:45.558> have<05:13:45.920> one<05:13:46.240> specific
05:13:46.628 --> 05:13:46.638 align:start position:0%
posts so here we can have one specific
05:13:46.638 --> 05:13:50.190 align:start position:0%
posts so here we can have one specific
query<05:13:47.280> which<05:13:47.400> is<05:13:47.520> going<05:13:47.718> to<05:13:47.878> be<05:13:48.120> query.<05:13:49.200> search
05:13:50.190 --> 05:13:50.200 align:start position:0%
query which is going to be query. search
05:13:50.200 --> 05:13:53.190 align:start position:0%
query which is going to be query. search
and<05:13:50.320> we<05:13:50.440> can<05:13:50.558> search<05:13:51.000> by<05:13:51.840> caption<05:13:52.840> and<05:13:53.080> the
05:13:53.190 --> 05:13:53.200 align:start position:0%
and we can search by caption and the
05:13:53.200 --> 05:13:55.788 align:start position:0%
and we can search by caption and the
search<05:13:53.638> term<05:13:54.120> is<05:13:54.240> going<05:13:54.440> to<05:13:54.600> be<05:13:55.240> the<05:13:55.360> search
05:13:55.788 --> 05:13:55.798 align:start position:0%
search term is going to be the search
05:13:55.798 --> 05:13:58.670 align:start position:0%
search term is going to be the search
term<05:13:56.280> that<05:13:56.400> we're<05:13:56.680> passing<05:13:57.200> through<05:13:57.680> props
05:13:58.670 --> 05:13:58.680 align:start position:0%
term that we're passing through props
05:13:58.680 --> 05:14:01.990 align:start position:0%
term that we're passing through props
there<05:13:59.120> we<05:13:59.638> go<05:14:00.638> and<05:14:01.120> again<05:14:01.360> thank<05:14:01.520> you<05:14:01.798> tab
05:14:01.990 --> 05:14:02.000 align:start position:0%
there we go and again thank you tab
05:14:02.000 --> 05:14:03.548 align:start position:0%
there we go and again thank you tab
script<05:14:02.320> it's<05:14:02.600> complaining<05:14:03.080> that<05:14:03.200> the<05:14:03.320> search
05:14:03.548 --> 05:14:03.558 align:start position:0%
script it's complaining that the search
05:14:03.558 --> 05:14:05.990 align:start position:0%
script it's complaining that the search
term<05:14:03.878> should<05:14:04.120> be<05:14:04.558> not<05:14:04.760> a<05:14:04.958> second<05:14:05.400> part<05:14:05.718> of<05:14:05.878> the
05:14:05.990 --> 05:14:06.000 align:start position:0%
term should be not a second part of the
05:14:06.000 --> 05:14:08.670 align:start position:0%
term should be not a second part of the
array<05:14:06.680> but<05:14:06.878> rather<05:14:07.160> a<05:14:07.360> second<05:14:07.718> part<05:14:08.160> of<05:14:08.400> this
05:14:08.670 --> 05:14:08.680 align:start position:0%
array but rather a second part of this
05:14:08.680 --> 05:14:11.670 align:start position:0%
array but rather a second part of this
search<05:14:09.320> object<05:14:10.240> there<05:14:10.400> we<05:14:10.600> go<05:14:11.240> and<05:14:11.400> then<05:14:11.520> we're
05:14:11.670 --> 05:14:11.680 align:start position:0%
search object there we go and then we're
05:14:11.680 --> 05:14:12.788 align:start position:0%
search object there we go and then we're
returning<05:14:12.080> the
05:14:12.788 --> 05:14:12.798 align:start position:0%
returning the
05:14:12.798 --> 05:14:15.070 align:start position:0%
returning the
posts<05:14:13.798> with<05:14:14.000> that<05:14:14.240> we're<05:14:14.480> done<05:14:14.798> with<05:14:14.958> the
05:14:15.070 --> 05:14:15.080 align:start position:0%
posts with that we're done with the
05:14:15.080 --> 05:14:18.150 align:start position:0%
posts with that we're done with the
search<05:14:15.638> posts<05:14:16.638> now<05:14:17.120> as<05:14:17.240> you<05:14:17.360> know<05:14:17.520> the<05:14:17.718> drill
05:14:18.150 --> 05:14:18.160 align:start position:0%
search posts now as you know the drill
05:14:18.160 --> 05:14:21.270 align:start position:0%
search posts now as you know the drill
we<05:14:18.280> have<05:14:18.400> to<05:14:18.600> consume<05:14:19.120> those<05:14:19.680> within<05:14:20.400> queries
05:14:21.270 --> 05:14:21.280 align:start position:0%
we have to consume those within queries
05:14:21.280 --> 05:14:22.430 align:start position:0%
we have to consume those within queries
and
05:14:22.430 --> 05:14:22.440 align:start position:0%
and
05:14:22.440 --> 05:14:26.510 align:start position:0%
and
mutations<05:14:23.440> so<05:14:23.840> let's<05:14:24.080> say<05:14:24.320> export<05:14:24.840> const<05:14:25.840> use
05:14:26.510 --> 05:14:26.520 align:start position:0%
mutations so let's say export const use
05:14:26.520 --> 05:14:30.948 align:start position:0%
mutations so let's say export const use
get<05:14:27.440> posts<05:14:28.440> which<05:14:28.600> is<05:14:28.760> equal<05:14:29.040> to<05:14:29.440> a<05:14:29.958> function
05:14:30.948 --> 05:14:30.958 align:start position:0%
get posts which is equal to a function
05:14:30.958 --> 05:14:34.150 align:start position:0%
get posts which is equal to a function
that<05:14:31.280> returns<05:14:32.120> something<05:14:32.480> known<05:14:32.878> as<05:14:33.000> a<05:14:33.320> use
05:14:34.150 --> 05:14:34.160 align:start position:0%
that returns something known as a use
05:14:34.160 --> 05:14:37.470 align:start position:0%
that returns something known as a use
infinite<05:14:35.160> query<05:14:36.040> this<05:14:36.160> is<05:14:36.320> a<05:14:36.520> buil-in<05:14:36.798> react
05:14:37.470 --> 05:14:37.480 align:start position:0%
infinite query this is a buil-in react
05:14:37.480 --> 05:14:40.430 align:start position:0%
infinite query this is a buil-in react
query<05:14:37.920> feature<05:14:38.920> here<05:14:39.280> want<05:14:39.400> to<05:14:39.638> pass<05:14:39.840> a<05:14:40.040> query
05:14:40.430 --> 05:14:40.440 align:start position:0%
query feature here want to pass a query
05:14:40.440 --> 05:14:42.868 align:start position:0%
query feature here want to pass a query
key<05:14:40.878> meaning<05:14:41.520> which<05:14:41.840> posts<05:14:42.280> do<05:14:42.440> we<05:14:42.558> want<05:14:42.680> to
05:14:42.868 --> 05:14:42.878 align:start position:0%
key meaning which posts do we want to
05:14:42.878 --> 05:14:46.430 align:start position:0%
key meaning which posts do we want to
get<05:14:43.440> and<05:14:43.558> that's<05:14:43.760> going<05:14:43.920> to<05:14:44.080> be<05:14:44.600> query<05:14:45.440> keys.
05:14:46.430 --> 05:14:46.440 align:start position:0%
get and that's going to be query keys.
05:14:46.440 --> 05:14:50.310 align:start position:0%
get and that's going to be query keys.
getet<05:14:47.320> infinite<05:14:48.760> posts<05:14:49.760> then<05:14:49.878> we<05:14:50.000> need<05:14:50.120> to
05:14:50.310 --> 05:14:50.320 align:start position:0%
getet infinite posts then we need to
05:14:50.320 --> 05:14:52.830 align:start position:0%
getet infinite posts then we need to
pass<05:14:50.480> a<05:14:50.680> query<05:14:51.320> function<05:14:52.320> which<05:14:52.440> is<05:14:52.558> going<05:14:52.718> to
05:14:52.830 --> 05:14:52.840 align:start position:0%
pass a query function which is going to
05:14:52.840 --> 05:14:56.470 align:start position:0%
pass a query function which is going to
be<05:14:53.080> get<05:14:53.680> infinite<05:14:54.558> posts<05:14:55.120> coming<05:14:55.400> from<05:14:55.718> aight
05:14:56.470 --> 05:14:56.480 align:start position:0%
be get infinite posts coming from aight
05:14:56.480 --> 05:14:59.070 align:start position:0%
be get infinite posts coming from aight
API<05:14:57.480> and<05:14:57.680> then<05:14:57.920> we<05:14:58.080> have<05:14:58.200> to<05:14:58.360> figure<05:14:58.638> out<05:14:58.920> how
05:14:59.070 --> 05:14:59.080 align:start position:0%
API and then we have to figure out how
05:14:59.080 --> 05:15:01.030 align:start position:0%
API and then we have to figure out how
we're<05:14:59.240> going<05:14:59.360> to<05:14:59.520> paginate<05:15:00.320> so<05:15:00.480> we<05:15:00.600> can<05:15:00.718> say
05:15:01.030 --> 05:15:01.040 align:start position:0%
we're going to paginate so we can say
05:15:01.040 --> 05:15:05.948 align:start position:0%
we're going to paginate so we can say
get<05:15:02.040> next<05:15:02.920> page<05:15:03.600> for<05:15:03.878> Ram<05:15:04.878> which<05:15:05.000> is<05:15:05.160> going<05:15:05.360> to
05:15:05.948 --> 05:15:05.958 align:start position:0%
get next page for Ram which is going to
05:15:05.958 --> 05:15:09.110 align:start position:0%
get next page for Ram which is going to
contain<05:15:06.520> the<05:15:06.760> last<05:15:07.160> page<05:15:07.440> that<05:15:07.600> we<05:15:08.120> visited
05:15:09.110 --> 05:15:09.120 align:start position:0%
contain the last page that we visited
05:15:09.120 --> 05:15:11.350 align:start position:0%
contain the last page that we visited
then<05:15:09.480> if<05:15:09.718> there's<05:15:09.920> no<05:15:10.200> data<05:15:10.878> that<05:15:11.000> means<05:15:11.280> there
05:15:11.350 --> 05:15:11.360 align:start position:0%
then if there's no data that means there
05:15:11.360 --> 05:15:13.788 align:start position:0%
then if there's no data that means there
are<05:15:11.520> no<05:15:11.680> more<05:15:12.000> pages<05:15:12.680> so<05:15:12.840> we<05:15:12.920> can<05:15:13.120> say<05:15:13.400> if<05:15:13.600> we're
05:15:13.788 --> 05:15:13.798 align:start position:0%
are no more pages so we can say if we're
05:15:13.798 --> 05:15:15.350 align:start position:0%
are no more pages so we can say if we're
on<05:15:13.958> the<05:15:14.240> last
05:15:15.350 --> 05:15:15.360 align:start position:0%
on the last
05:15:15.360 --> 05:15:20.310 align:start position:0%
on the last
page<05:15:16.360> and<05:15:17.200> if<05:15:18.200> last
05:15:20.310 --> 05:15:20.320 align:start position:0%
page and if last
05:15:20.320 --> 05:15:23.310 align:start position:0%
page and if last
page<05:15:21.760> documents.
05:15:23.310 --> 05:15:23.320 align:start position:0%
page documents.
05:15:23.320 --> 05:15:26.910 align:start position:0%
page documents.
length<05:15:24.320> is<05:15:24.520> equal<05:15:24.840> to<05:15:25.160> zero<05:15:26.160> then<05:15:26.440> we<05:15:26.558> can
05:15:26.910 --> 05:15:26.920 align:start position:0%
length is equal to zero then we can
05:15:26.920 --> 05:15:28.350 align:start position:0%
length is equal to zero then we can
return
05:15:28.350 --> 05:15:28.360 align:start position:0%
return
05:15:28.360 --> 05:15:32.310 align:start position:0%
return
null<05:15:29.360> else<05:15:29.878> we<05:15:29.958> want<05:15:30.080> to<05:15:30.400> find<05:15:30.920> the<05:15:31.160> ID<05:15:31.920> of<05:15:32.080> the
05:15:32.310 --> 05:15:32.320 align:start position:0%
null else we want to find the ID of the
05:15:32.320 --> 05:15:35.628 align:start position:0%
null else we want to find the ID of the
last<05:15:32.680> page<05:15:33.200> so<05:15:33.360> we<05:15:33.480> can<05:15:33.638> say<05:15:33.878> last<05:15:34.200> ID<05:15:35.200> is<05:15:35.360> equal
05:15:35.628 --> 05:15:35.638 align:start position:0%
last page so we can say last ID is equal
05:15:35.638 --> 05:15:38.110 align:start position:0%
last page so we can say last ID is equal
to<05:15:35.878> last<05:15:36.558> page.
05:15:38.110 --> 05:15:38.120 align:start position:0%
to last page.
05:15:38.120 --> 05:15:40.470 align:start position:0%
to last page.
documents<05:15:39.120> and<05:15:39.320> then<05:15:39.680> we<05:15:39.798> want<05:15:39.920> to<05:15:40.040> get<05:15:40.240> the
05:15:40.470 --> 05:15:40.480 align:start position:0%
documents and then we want to get the
05:15:40.480 --> 05:15:43.868 align:start position:0%
documents and then we want to get the
last<05:15:40.840> page.<05:15:41.638> documents.
05:15:43.868 --> 05:15:43.878 align:start position:0%
last page. documents.
05:15:43.878 --> 05:15:46.788 align:start position:0%
last page. documents.
length<05:15:44.878> minus<05:15:45.280> one<05:15:46.040> this<05:15:46.160> is<05:15:46.280> going<05:15:46.440> to<05:15:46.638> give
05:15:46.788 --> 05:15:46.798 align:start position:0%
length minus one this is going to give
05:15:46.798 --> 05:15:49.230 align:start position:0%
length minus one this is going to give
us<05:15:47.040> the<05:15:47.480> last<05:15:47.920> page<05:15:48.480> and<05:15:48.600> then<05:15:48.718> we<05:15:48.798> can<05:15:48.920> say
05:15:49.230 --> 05:15:49.240 align:start position:0%
us the last page and then we can say
05:15:49.240 --> 05:15:52.590 align:start position:0%
us the last page and then we can say
that<05:15:49.558> dollar<05:15:49.920> sign<05:15:50.320> ID<05:15:50.920> of<05:15:51.160> that<05:15:51.440> page<05:15:52.320> and<05:15:52.520> we
05:15:52.590 --> 05:15:52.600 align:start position:0%
that dollar sign ID of that page and we
05:15:52.600 --> 05:15:56.030 align:start position:0%
that dollar sign ID of that page and we
can<05:15:52.920> return<05:15:53.520> the<05:15:53.760> last<05:15:54.480> ID<05:15:55.480> here<05:15:55.840> it's
05:15:56.030 --> 05:15:56.040 align:start position:0%
can return the last ID here it's
05:15:56.040 --> 05:15:58.070 align:start position:0%
can return the last ID here it's
complaining<05:15:56.600> that<05:15:56.878> last<05:15:57.200> page<05:15:57.440> is<05:15:57.638> possibly
05:15:58.070 --> 05:15:58.080 align:start position:0%
complaining that last page is possibly
05:15:58.080 --> 05:16:00.350 align:start position:0%
complaining that last page is possibly
undefined<05:15:59.080> that's<05:15:59.360> okay<05:15:59.600> we<05:15:59.760> know<05:16:00.040> it<05:16:00.160> will
05:16:00.350 --> 05:16:00.360 align:start position:0%
undefined that's okay we know it will
05:16:00.360 --> 05:16:02.948 align:start position:0%
undefined that's okay we know it will
not<05:16:00.638> be<05:16:01.240> and<05:16:01.600> finally<05:16:01.958> we<05:16:02.080> can<05:16:02.200> do<05:16:02.360> a<05:16:02.558> similar
05:16:02.948 --> 05:16:02.958 align:start position:0%
not be and finally we can do a similar
05:16:02.958 --> 05:16:06.070 align:start position:0%
not be and finally we can do a similar
one<05:16:03.440> for<05:16:03.920> the<05:16:04.120> use<05:16:04.558> search<05:16:04.920> posts<05:16:05.558> so<05:16:05.840> right
05:16:06.070 --> 05:16:06.080 align:start position:0%
one for the use search posts so right
05:16:06.080 --> 05:16:10.590 align:start position:0%
one for the use search posts so right
here<05:16:06.400> we<05:16:06.520> can<05:16:06.638> say<05:16:07.000> export<05:16:07.958> const<05:16:08.798> use<05:16:09.520> search
05:16:10.590 --> 05:16:10.600 align:start position:0%
here we can say export const use search
05:16:10.600 --> 05:16:14.030 align:start position:0%
here we can say export const use search
posts<05:16:11.600> is<05:16:11.840> equal<05:16:12.160> to<05:16:13.080> a<05:16:13.240> function<05:16:13.638> where<05:16:13.760> we
05:16:14.030 --> 05:16:14.040 align:start position:0%
posts is equal to a function where we
05:16:14.040 --> 05:16:17.590 align:start position:0%
posts is equal to a function where we
pass<05:16:14.480> the<05:16:14.638> search<05:16:15.040> term<05:16:15.680> of<05:16:15.840> a<05:16:16.000> type<05:16:16.600> string
05:16:17.590 --> 05:16:17.600 align:start position:0%
pass the search term of a type string
05:16:17.600 --> 05:16:21.350 align:start position:0%
pass the search term of a type string
and<05:16:17.840> then<05:16:18.600> we<05:16:19.000> return<05:16:19.520> a<05:16:19.718> use
05:16:21.350 --> 05:16:21.360 align:start position:0%
and then we return a use
05:16:21.360 --> 05:16:25.150 align:start position:0%
and then we return a use
Query<05:16:22.360> where<05:16:22.718> the<05:16:22.878> query<05:16:23.360> key<05:16:24.040> is<05:16:24.280> equal<05:16:24.600> to
05:16:25.150 --> 05:16:25.160 align:start position:0%
Query where the query key is equal to
05:16:25.160 --> 05:16:27.830 align:start position:0%
Query where the query key is equal to
query.<05:16:25.958> keys<05:16:26.798> and<05:16:26.958> then<05:16:27.080> it's<05:16:27.240> going<05:16:27.400> to<05:16:27.558> be
05:16:27.830 --> 05:16:27.840 align:start position:0%
query. keys and then it's going to be
05:16:27.840 --> 05:16:30.430 align:start position:0%
query. keys and then it's going to be
search<05:16:28.520> posts<05:16:29.520> and<05:16:29.638> we<05:16:29.798> don't<05:16:30.040> pass<05:16:30.280> the
05:16:30.430 --> 05:16:30.440 align:start position:0%
search posts and we don't pass the
05:16:30.440 --> 05:16:33.708 align:start position:0%
search posts and we don't pass the
search<05:16:30.760> term<05:16:31.160> here<05:16:31.840> we<05:16:32.080> pass<05:16:32.320> it<05:16:32.840> under<05:16:33.280> query
05:16:33.708 --> 05:16:33.718 align:start position:0%
search term here we pass it under query
05:16:33.718 --> 05:16:36.070 align:start position:0%
search term here we pass it under query
function<05:16:34.680> once<05:16:34.840> we<05:16:35.000> call<05:16:35.320> the
05:16:36.070 --> 05:16:36.080 align:start position:0%
function once we call the
05:16:36.080 --> 05:16:39.708 align:start position:0%
function once we call the
function<05:16:37.080> so<05:16:37.360> query<05:16:37.840> FN<05:16:38.840> is<05:16:39.000> going<05:16:39.160> to<05:16:39.440> be<05:16:39.600> a
05:16:39.708 --> 05:16:39.718 align:start position:0%
function so query FN is going to be a
05:16:39.718 --> 05:16:42.030 align:start position:0%
function so query FN is going to be a
callback<05:16:40.200> function<05:16:40.760> where<05:16:40.920> we<05:16:41.120> call<05:16:41.878> the
05:16:42.030 --> 05:16:42.040 align:start position:0%
callback function where we call the
05:16:42.040 --> 05:16:44.868 align:start position:0%
callback function where we call the
function<05:16:42.360> we<05:16:42.520> created<05:16:43.320> called<05:16:43.680> search<05:16:44.120> posts
05:16:44.868 --> 05:16:44.878 align:start position:0%
function we created called search posts
05:16:44.878 --> 05:16:48.670 align:start position:0%
function we created called search posts
coming<05:16:45.240> from<05:16:45.798> aight<05:16:46.520> API<05:16:47.520> to<05:16:47.798> which<05:16:48.240> we<05:16:48.440> pass
05:16:48.670 --> 05:16:48.680 align:start position:0%
coming from aight API to which we pass
05:16:48.680 --> 05:16:51.750 align:start position:0%
coming from aight API to which we pass
the<05:16:48.798> search<05:16:49.440> term<05:16:50.440> finally<05:16:50.878> as<05:16:51.120> before<05:16:51.600> we
05:16:51.750 --> 05:16:51.760 align:start position:0%
the search term finally as before we
05:16:51.760 --> 05:16:54.990 align:start position:0%
the search term finally as before we
have<05:16:51.878> to<05:16:52.200> do<05:16:52.440> the<05:16:53.040> enabled<05:16:54.040> this<05:16:54.200> means<05:16:54.680> when
05:16:54.990 --> 05:16:55.000 align:start position:0%
have to do the enabled this means when
05:16:55.000 --> 05:16:57.430 align:start position:0%
have to do the enabled this means when
is<05:16:55.120> it<05:16:55.240> going<05:16:55.440> to<05:16:55.638> automatically<05:16:56.440> refetch
05:16:57.430 --> 05:16:57.440 align:start position:0%
is it going to automatically refetch
05:16:57.440 --> 05:17:00.230 align:start position:0%
is it going to automatically refetch
when<05:16:57.798> the<05:16:57.920> search<05:16:58.320> term<05:16:58.840> changes<05:16:59.760> and<05:16:59.958> this<05:17:00.080> is
05:17:00.230 --> 05:17:00.240 align:start position:0%
when the search term changes and this is
05:17:00.240 --> 05:17:03.350 align:start position:0%
when the search term changes and this is
how<05:17:00.360> we<05:17:00.520> do<05:17:00.680> it<05:17:01.520> so<05:17:01.958> this<05:17:02.080> is<05:17:02.320> great<05:17:02.878> now<05:17:03.040> we<05:17:03.160> can
05:17:03.350 --> 05:17:03.360 align:start position:0%
how we do it so this is great now we can
05:17:03.360 --> 05:17:06.310 align:start position:0%
how we do it so this is great now we can
consume<05:17:04.240> both<05:17:04.440> of<05:17:04.638> these<05:17:05.080> within<05:17:05.440> our<05:17:05.718> explore
05:17:06.310 --> 05:17:06.320 align:start position:0%
consume both of these within our explore
05:17:06.320 --> 05:17:08.510 align:start position:0%
consume both of these within our explore
page<05:17:06.958> in<05:17:07.120> the<05:17:07.320> same<05:17:07.600> way<05:17:07.798> we<05:17:07.920> have<05:17:08.080> been<05:17:08.200> doing
05:17:08.510 --> 05:17:08.520 align:start position:0%
page in the same way we have been doing
05:17:08.520 --> 05:17:12.948 align:start position:0%
page in the same way we have been doing
so<05:17:08.920> far<05:17:09.920> so<05:17:10.280> right<05:17:10.480> here<05:17:10.760> at<05:17:10.878> the<05:17:11.080> top<05:17:11.958> const
05:17:12.948 --> 05:17:12.958 align:start position:0%
so far so right here at the top const
05:17:12.958 --> 05:17:18.708 align:start position:0%
so far so right here at the top const
data<05:17:13.718> as<05:17:14.600> searched<05:17:15.718> posts<05:17:16.718> and<05:17:17.080> is<05:17:17.718> fetching
05:17:18.708 --> 05:17:18.718 align:start position:0%
data as searched posts and is fetching
05:17:18.718 --> 05:17:22.628 align:start position:0%
data as searched posts and is fetching
as<05:17:19.080> is<05:17:19.558> search<05:17:20.718> fetching<05:17:21.718> that's<05:17:22.000> equal<05:17:22.320> to
05:17:22.628 --> 05:17:22.638 align:start position:0%
as is search fetching that's equal to
05:17:22.638 --> 05:17:26.070 align:start position:0%
as is search fetching that's equal to
use<05:17:23.520> search<05:17:24.280> posts<05:17:25.000> coming<05:17:25.240> from<05:17:25.520> queries<05:17:25.878> and
05:17:26.070 --> 05:17:26.080 align:start position:0%
use search posts coming from queries and
05:17:26.080 --> 05:17:28.628 align:start position:0%
use search posts coming from queries and
mutations<05:17:26.958> to<05:17:27.200> which<05:17:27.360> we<05:17:27.520> have<05:17:27.638> to<05:17:27.920> pass<05:17:28.520> the
05:17:28.628 --> 05:17:28.638 align:start position:0%
mutations to which we have to pass the
05:17:28.638 --> 05:17:31.628 align:start position:0%
mutations to which we have to pass the
search<05:17:29.160> value<05:17:30.160> one<05:17:30.400> cool<05:17:30.638> thing<05:17:30.878> about<05:17:31.160> this
05:17:31.628 --> 05:17:31.638 align:start position:0%
search value one cool thing about this
05:17:31.638 --> 05:17:33.788 align:start position:0%
search value one cool thing about this
is<05:17:32.200> if<05:17:32.360> we<05:17:32.440> were<05:17:32.638> to<05:17:32.840> just<05:17:33.040> pass<05:17:33.240> a<05:17:33.440> regular
05:17:33.788 --> 05:17:33.798 align:start position:0%
is if we were to just pass a regular
05:17:33.798 --> 05:17:36.470 align:start position:0%
is if we were to just pass a regular
search<05:17:34.200> value<05:17:34.798> it<05:17:34.920> would<05:17:35.160> recall<05:17:35.798> this<05:17:36.160> every
05:17:36.470 --> 05:17:36.480 align:start position:0%
search value it would recall this every
05:17:36.480 --> 05:17:39.350 align:start position:0%
search value it would recall this every
time<05:17:36.760> that<05:17:36.920> we<05:17:37.080> enter<05:17:37.480> a<05:17:37.920> keystroke<05:17:38.920> but<05:17:39.160> this
05:17:39.350 --> 05:17:39.360 align:start position:0%
time that we enter a keystroke but this
05:17:39.360 --> 05:17:41.990 align:start position:0%
time that we enter a keystroke but this
can<05:17:39.520> be<05:17:39.680> quite<05:17:39.878> draining<05:17:40.360> for<05:17:40.600> our<05:17:40.878> API<05:17:41.798> and
05:17:41.990 --> 05:17:42.000 align:start position:0%
can be quite draining for our API and
05:17:42.000 --> 05:17:44.788 align:start position:0%
can be quite draining for our API and
our<05:17:42.280> server<05:17:43.000> and<05:17:43.240> everybody<05:17:43.638> involved<05:17:44.520> so
05:17:44.788 --> 05:17:44.798 align:start position:0%
our server and everybody involved so
05:17:44.798 --> 05:17:46.310 align:start position:0%
our server and everybody involved so
usually<05:17:45.160> what<05:17:45.280> you<05:17:45.400> want<05:17:45.520> to<05:17:45.638> do<05:17:46.000> is<05:17:46.120> you<05:17:46.200> want
05:17:46.310 --> 05:17:46.320 align:start position:0%
usually what you want to do is you want
05:17:46.320 --> 05:17:48.230 align:start position:0%
usually what you want to do is you want
to<05:17:46.440> do<05:17:46.558> it<05:17:46.798> after<05:17:47.160> a<05:17:47.440> specific<05:17:47.840> amount<05:17:48.080> of
05:17:48.230 --> 05:17:48.240 align:start position:0%
to do it after a specific amount of
05:17:48.240 --> 05:17:50.788 align:start position:0%
to do it after a specific amount of
milliseconds<05:17:49.040> pass<05:17:49.360> by<05:17:50.040> then<05:17:50.200> you<05:17:50.320> want<05:17:50.440> to<05:17:50.558> do
05:17:50.788 --> 05:17:50.798 align:start position:0%
milliseconds pass by then you want to do
05:17:50.798 --> 05:17:54.110 align:start position:0%
milliseconds pass by then you want to do
another<05:17:51.160> call<05:17:52.040> this<05:17:52.160> is<05:17:52.280> a<05:17:52.558> method<05:17:53.080> called
05:17:54.110 --> 05:17:54.120 align:start position:0%
another call this is a method called
05:17:54.120 --> 05:17:57.750 align:start position:0%
another call this is a method called
debouncing<05:17:55.120> so<05:17:55.520> what<05:17:55.638> you<05:17:55.718> can<05:17:55.920> do<05:17:56.558> is<05:17:57.280> close
05:17:57.750 --> 05:17:57.760 align:start position:0%
debouncing so what you can do is close
05:17:57.760 --> 05:18:00.110 align:start position:0%
debouncing so what you can do is close
everything<05:17:58.200> collapse<05:17:58.600> all<05:17:58.798> the<05:17:58.958> files<05:17:59.760> go<05:17:59.878> to
05:18:00.110 --> 05:18:00.120 align:start position:0%
everything collapse all the files go to
05:18:00.120 --> 05:18:03.350 align:start position:0%
everything collapse all the files go to
source<05:18:00.760> and<05:18:00.920> create<05:18:01.400> a<05:18:01.558> new<05:18:01.760> folder<05:18:02.440> called
05:18:03.350 --> 05:18:03.360 align:start position:0%
source and create a new folder called
05:18:03.360 --> 05:18:06.390 align:start position:0%
source and create a new folder called
hooks<05:18:04.360> within<05:18:04.718> hooks<05:18:05.320> you<05:18:05.440> can<05:18:05.638> create<05:18:05.878> a<05:18:06.040> hook
05:18:06.390 --> 05:18:06.400 align:start position:0%
hooks within hooks you can create a hook
05:18:06.400 --> 05:18:09.390 align:start position:0%
hooks within hooks you can create a hook
called<05:18:06.840> use<05:18:07.878> debounce
05:18:09.390 --> 05:18:09.400 align:start position:0%
called use debounce
05:18:09.400 --> 05:18:12.230 align:start position:0%
called use debounce
dots<05:18:10.400> and<05:18:10.600> this<05:18:10.718> is<05:18:10.840> a<05:18:11.040> hook<05:18:11.400> that<05:18:11.520> I<05:18:11.680> found
05:18:12.230 --> 05:18:12.240 align:start position:0%
dots and this is a hook that I found
05:18:12.240 --> 05:18:15.310 align:start position:0%
dots and this is a hook that I found
directly<05:18:13.000> from<05:18:13.360> react<05:18:13.840> query<05:18:14.798> here<05:18:15.120> they
05:18:15.310 --> 05:18:15.320 align:start position:0%
directly from react query here they
05:18:15.320 --> 05:18:17.590 align:start position:0%
directly from react query here they
provided<05:18:15.798> its<05:18:16.000> entire<05:18:16.360> code<05:18:17.040> essentially
05:18:17.590 --> 05:18:17.600 align:start position:0%
provided its entire code essentially
05:18:17.600 --> 05:18:19.910 align:start position:0%
provided its entire code essentially
what<05:18:17.718> it<05:18:17.840> does<05:18:18.320> is<05:18:18.520> as<05:18:18.638> you<05:18:18.760> start<05:18:19.080> typing<05:18:19.760> it
05:18:19.910 --> 05:18:19.920 align:start position:0%
what it does is as you start typing it
05:18:19.920 --> 05:18:22.948 align:start position:0%
what it does is as you start typing it
de<05:18:20.240> bounces<05:18:21.040> the<05:18:21.200> query<05:18:21.878> so<05:18:22.160> it<05:18:22.320> saves<05:18:22.638> you
05:18:22.948 --> 05:18:22.958 align:start position:0%
de bounces the query so it saves you
05:18:22.958 --> 05:18:25.430 align:start position:0%
de bounces the query so it saves you
performance<05:18:23.958> and<05:18:24.200> this<05:18:24.400> entire<05:18:24.798> debounce
05:18:25.430 --> 05:18:25.440 align:start position:0%
performance and this entire debounce
05:18:25.440 --> 05:18:27.830 align:start position:0%
performance and this entire debounce
query<05:18:26.040> is<05:18:26.200> going<05:18:26.360> to<05:18:26.520> be<05:18:26.718> in<05:18:26.840> the<05:18:27.040> GitHub<05:18:27.440> gist
05:18:27.830 --> 05:18:27.840 align:start position:0%
query is going to be in the GitHub gist
05:18:27.840 --> 05:18:30.590 align:start position:0%
query is going to be in the GitHub gist
down<05:18:28.080> below<05:18:28.718> so<05:18:28.878> you<05:18:28.958> can<05:18:29.160> simply<05:18:29.558> copy<05:18:29.840> it<05:18:30.320> and
05:18:30.590 --> 05:18:30.600 align:start position:0%
down below so you can simply copy it and
05:18:30.600 --> 05:18:32.910 align:start position:0%
down below so you can simply copy it and
paste<05:18:30.840> it<05:18:31.080> right<05:18:31.360> right<05:18:31.558> here<05:18:32.360> once<05:18:32.558> we<05:18:32.760> have
05:18:32.910 --> 05:18:32.920 align:start position:0%
paste it right right here once we have
05:18:32.920 --> 05:18:35.390 align:start position:0%
paste it right right here once we have
it<05:18:33.480> instead<05:18:33.760> of<05:18:33.958> passing<05:18:34.240> the<05:18:34.360> search<05:18:34.760> value
05:18:35.390 --> 05:18:35.400 align:start position:0%
it instead of passing the search value
05:18:35.400 --> 05:18:39.788 align:start position:0%
it instead of passing the search value
we<05:18:35.520> can<05:18:35.718> define<05:18:36.160> a<05:18:36.400> new<05:18:37.320> const<05:18:38.600> debounced
05:18:39.788 --> 05:18:39.798 align:start position:0%
we can define a new const debounced
05:18:39.798 --> 05:18:42.868 align:start position:0%
we can define a new const debounced
value<05:18:40.798> which<05:18:40.958> is<05:18:41.080> going<05:18:41.240> to<05:18:41.400> be<05:18:41.600> equal<05:18:41.878> to<05:18:42.320> use
05:18:42.868 --> 05:18:42.878 align:start position:0%
value which is going to be equal to use
05:18:42.878 --> 05:18:45.670 align:start position:0%
value which is going to be equal to use
the<05:18:43.320> bounce<05:18:44.320> to<05:18:44.558> which<05:18:44.680> you<05:18:44.878> pass<05:18:45.160> the<05:18:45.240> search
05:18:45.670 --> 05:18:45.680 align:start position:0%
the bounce to which you pass the search
05:18:45.680 --> 05:18:47.708 align:start position:0%
the bounce to which you pass the search
value<05:18:46.520> and<05:18:46.680> then<05:18:46.840> set<05:18:47.080> in<05:18:47.320> number<05:18:47.558> of
05:18:47.708 --> 05:18:47.718 align:start position:0%
value and then set in number of
05:18:47.718 --> 05:18:50.628 align:start position:0%
value and then set in number of
milliseconds<05:18:48.680> like<05:18:48.920> 500<05:18:49.878> until<05:18:50.240> when<05:18:50.480> it's
05:18:50.628 --> 05:18:50.638 align:start position:0%
milliseconds like 500 until when it's
05:18:50.638 --> 05:18:52.548 align:start position:0%
milliseconds like 500 until when it's
going<05:18:50.718> to<05:18:50.840> be<05:18:51.040> recalled<05:18:52.040> and<05:18:52.120> you<05:18:52.240> need<05:18:52.360> to
05:18:52.548 --> 05:18:52.558 align:start position:0%
going to be recalled and you need to
05:18:52.558 --> 05:18:55.868 align:start position:0%
going to be recalled and you need to
import<05:18:53.000> use<05:18:53.320> de<05:18:53.558> bounds<05:18:54.120> from<05:18:54.360> hooks<05:18:54.878> use
05:18:55.868 --> 05:18:55.878 align:start position:0%
import use de bounds from hooks use
05:18:55.878 --> 05:18:58.110 align:start position:0%
import use de bounds from hooks use
debounce<05:18:56.878> and<05:18:57.000> then<05:18:57.120> you<05:18:57.240> can<05:18:57.520> pass<05:18:57.920> the
05:18:58.110 --> 05:18:58.120 align:start position:0%
debounce and then you can pass the
05:18:58.120 --> 05:18:59.990 align:start position:0%
debounce and then you can pass the
debounced<05:18:58.798> value<05:18:59.320> which<05:18:59.400> is<05:18:59.558> going<05:18:59.680> to<05:18:59.840> make
05:18:59.990 --> 05:19:00.000 align:start position:0%
debounced value which is going to make
05:19:00.000 --> 05:19:02.390 align:start position:0%
debounced value which is going to make
our<05:19:00.200> application<05:19:00.958> even<05:19:01.280> even<05:19:01.520> more
05:19:02.390 --> 05:19:02.400 align:start position:0%
our application even even more
05:19:02.400 --> 05:19:05.110 align:start position:0%
our application even even more
optimized<05:19:03.400> so<05:19:03.718> here<05:19:04.120> we<05:19:04.280> have<05:19:04.558> everything
05:19:05.110 --> 05:19:05.120 align:start position:0%
optimized so here we have everything
05:19:05.120 --> 05:19:07.510 align:start position:0%
optimized so here we have everything
when<05:19:05.240> it<05:19:05.400> comes<05:19:05.600> to<05:19:05.760> the<05:19:05.958> search<05:19:06.958> but<05:19:07.240> above
05:19:07.510 --> 05:19:07.520 align:start position:0%
when it comes to the search but above
05:19:07.520 --> 05:19:12.070 align:start position:0%
when it comes to the search but above
the<05:19:07.638> search<05:19:08.240> we<05:19:08.360> can<05:19:08.558> also<05:19:09.240> Define<05:19:10.240> const<05:19:11.200> data
05:19:12.070 --> 05:19:12.080 align:start position:0%
the search we can also Define const data
05:19:12.080 --> 05:19:12.990 align:start position:0%
the search we can also Define const data
as
05:19:12.990 --> 05:19:13.000 align:start position:0%
as
05:19:13.000 --> 05:19:17.670 align:start position:0%
as
posts<05:19:14.000> fetch<05:19:14.638> next<05:19:15.360> page<05:19:16.360> as<05:19:16.520> well<05:19:16.718> as<05:19:17.040> has
05:19:17.670 --> 05:19:17.680 align:start position:0%
posts fetch next page as well as has
05:19:17.680 --> 05:19:22.830 align:start position:0%
posts fetch next page as well as has
next<05:19:18.160> page<05:19:19.120> which<05:19:19.240> is<05:19:19.480> equal<05:19:19.760> to<05:19:20.320> use<05:19:21.120> get
05:19:22.830 --> 05:19:22.840 align:start position:0%
next page which is equal to use get
05:19:22.840 --> 05:19:25.470 align:start position:0%
next page which is equal to use get
post<05:19:23.840> and<05:19:23.958> then<05:19:24.080> we<05:19:24.240> have<05:19:24.360> to<05:19:24.558> import<05:19:25.000> this
05:19:25.470 --> 05:19:25.480 align:start position:0%
post and then we have to import this
05:19:25.480 --> 05:19:27.030 align:start position:0%
post and then we have to import this
from<05:19:25.878> queries<05:19:26.280> and
05:19:27.030 --> 05:19:27.040 align:start position:0%
from queries and
05:19:27.040 --> 05:19:29.470 align:start position:0%
from queries and
mutations<05:19:28.040> now<05:19:28.558> this<05:19:28.718> gives<05:19:28.920> us<05:19:29.040> a<05:19:29.200> lot<05:19:29.320> of
05:19:29.470 --> 05:19:29.480 align:start position:0%
mutations now this gives us a lot of
05:19:29.480 --> 05:19:31.270 align:start position:0%
mutations now this gives us a lot of
data<05:19:29.718> to<05:19:29.878> work<05:19:30.160> with<05:19:30.520> because<05:19:30.798> no<05:19:31.000> longer
05:19:31.270 --> 05:19:31.280 align:start position:0%
data to work with because no longer
05:19:31.280 --> 05:19:33.788 align:start position:0%
data to work with because no longer
longer<05:19:31.480> do<05:19:31.600> we<05:19:31.718> have<05:19:31.840> to<05:19:32.000> fake<05:19:32.320> the<05:19:32.480> posts<05:19:33.360> now
05:19:33.788 --> 05:19:33.798 align:start position:0%
longer do we have to fake the posts now
05:19:33.798 --> 05:19:36.670 align:start position:0%
longer do we have to fake the posts now
we<05:19:33.920> can<05:19:34.200> actually<05:19:34.878> use<05:19:35.558> these<05:19:35.920> right
05:19:36.670 --> 05:19:36.680 align:start position:0%
we can actually use these right
05:19:36.680 --> 05:19:39.750 align:start position:0%
we can actually use these right
here<05:19:37.680> and<05:19:37.920> we<05:19:38.000> can<05:19:38.200> uncomment<05:19:39.000> what<05:19:39.200> we<05:19:39.400> have
05:19:39.750 --> 05:19:39.760 align:start position:0%
here and we can uncomment what we have
05:19:39.760 --> 05:19:41.150 align:start position:0%
here and we can uncomment what we have
right<05:19:39.958> here
05:19:41.150 --> 05:19:41.160 align:start position:0%
right here
05:19:41.160 --> 05:19:44.150 align:start position:0%
right here
below<05:19:42.160> if<05:19:42.240> you<05:19:42.400> do<05:19:42.638> that<05:19:42.920> and<05:19:43.120> save<05:19:43.400> it<05:19:43.958> we
05:19:44.150 --> 05:19:44.160 align:start position:0%
below if you do that and save it we
05:19:44.160 --> 05:19:46.430 align:start position:0%
below if you do that and save it we
still<05:19:44.400> get<05:19:44.558> an<05:19:44.718> error<05:19:45.520> but<05:19:45.718> that's<05:19:46.000> okay<05:19:46.320> we
05:19:46.430 --> 05:19:46.440 align:start position:0%
still get an error but that's okay we
05:19:46.440 --> 05:19:49.628 align:start position:0%
still get an error but that's okay we
can<05:19:46.600> go<05:19:46.718> to<05:19:47.000> inspect<05:19:48.000> and<05:19:48.120> then<05:19:48.400> conso<05:19:49.400> and<05:19:49.558> we
05:19:49.628 --> 05:19:49.638 align:start position:0%
can go to inspect and then conso and we
05:19:49.638 --> 05:19:51.430 align:start position:0%
can go to inspect and then conso and we
can<05:19:49.798> see<05:19:50.040> that<05:19:50.160> it's<05:19:50.320> complaining<05:19:51.160> that<05:19:51.280> it
05:19:51.430 --> 05:19:51.440 align:start position:0%
can see that it's complaining that it
05:19:51.440 --> 05:19:55.430 align:start position:0%
can see that it's complaining that it
cannot<05:19:51.718> read<05:19:52.080> undefined<05:19:52.718> at<05:19:53.040> Pages<05:19:53.878> line<05:19:54.440> 16
05:19:55.430 --> 05:19:55.440 align:start position:0%
cannot read undefined at Pages line 16
05:19:55.440 --> 05:19:58.390 align:start position:0%
cannot read undefined at Pages line 16
so<05:19:55.680> that<05:19:55.798> is<05:19:56.200> right<05:19:56.558> here<05:19:57.558> apparently<05:19:58.080> our
05:19:58.390 --> 05:19:58.400 align:start position:0%
so that is right here apparently our
05:19:58.400 --> 05:20:01.868 align:start position:0%
so that is right here apparently our
posts<05:19:59.040> still<05:19:59.320> don't<05:19:59.638> have<05:19:59.840> the<05:20:00.160> pages
05:20:01.868 --> 05:20:01.878 align:start position:0%
posts still don't have the pages
05:20:01.878 --> 05:20:04.070 align:start position:0%
posts still don't have the pages
other<05:20:02.160> errors<05:20:02.680> also<05:20:02.958> include<05:20:03.558> I'm<05:20:03.718> guessing
05:20:04.070 --> 05:20:04.080 align:start position:0%
other errors also include I'm guessing
05:20:04.080 --> 05:20:06.910 align:start position:0%
other errors also include I'm guessing
something<05:20:04.440> related<05:20:04.760> to<05:20:05.040> that<05:20:05.718> yes<05:20:06.440> so<05:20:06.680> what<05:20:06.840> we
05:20:06.910 --> 05:20:06.920 align:start position:0%
something related to that yes so what we
05:20:06.920 --> 05:20:09.990 align:start position:0%
something related to that yes so what we
can<05:20:07.080> do<05:20:07.360> is<05:20:07.480> we<05:20:07.600> can<05:20:07.760> conso<05:20:08.240> log<05:20:08.798> the<05:20:08.958> posts<05:20:09.798> and
05:20:09.990 --> 05:20:10.000 align:start position:0%
can do is we can conso log the posts and
05:20:10.000 --> 05:20:13.230 align:start position:0%
can do is we can conso log the posts and
see<05:20:10.520> what<05:20:10.680> are<05:20:10.840> we<05:20:11.040> getting<05:20:11.638> back<05:20:12.638> if<05:20:12.718> I<05:20:12.878> reload
05:20:13.230 --> 05:20:13.240 align:start position:0%
see what are we getting back if I reload
05:20:13.240 --> 05:20:15.868 align:start position:0%
see what are we getting back if I reload
the<05:20:13.400> page<05:20:13.680> once<05:20:13.958> again<05:20:14.840> it<05:20:15.040> seems<05:20:15.440> like<05:20:15.638> the
05:20:15.868 --> 05:20:15.878 align:start position:0%
the page once again it seems like the
05:20:15.878 --> 05:20:17.390 align:start position:0%
the page once again it seems like the
posts<05:20:16.440> are
05:20:17.390 --> 05:20:17.400 align:start position:0%
posts are
05:20:17.400 --> 05:20:19.788 align:start position:0%
posts are
undefined<05:20:18.400> so<05:20:18.558> let's<05:20:18.798> figure<05:20:19.040> out<05:20:19.400> why<05:20:19.600> that
05:20:19.788 --> 05:20:19.798 align:start position:0%
undefined so let's figure out why that
05:20:19.798 --> 05:20:22.750 align:start position:0%
undefined so let's figure out why that
is<05:20:20.600> one<05:20:20.840> thing<05:20:21.120> that<05:20:21.320> we<05:20:21.520> might<05:20:21.718> need<05:20:21.920> to<05:20:22.080> do<05:20:22.600> is
05:20:22.750 --> 05:20:22.760 align:start position:0%
is one thing that we might need to do is
05:20:22.760 --> 05:20:24.310 align:start position:0%
is one thing that we might need to do is
just<05:20:22.920> ensure<05:20:23.240> that<05:20:23.360> we<05:20:23.480> don't<05:20:23.760> get<05:20:23.878> to<05:20:24.120> this
05:20:24.310 --> 05:20:24.320 align:start position:0%
just ensure that we don't get to this
05:20:24.320 --> 05:20:27.190 align:start position:0%
just ensure that we don't get to this
block<05:20:24.600> of<05:20:24.760> code<05:20:25.360> if<05:20:25.520> the<05:20:25.680> posts<05:20:26.040> are<05:20:26.240> undefined
05:20:27.190 --> 05:20:27.200 align:start position:0%
block of code if the posts are undefined
05:20:27.200 --> 05:20:29.548 align:start position:0%
block of code if the posts are undefined
and<05:20:27.400> it<05:20:27.520> seems<05:20:27.718> that<05:20:27.920> they<05:20:28.040> are<05:20:28.920> so<05:20:29.280> what<05:20:29.440> we
05:20:29.548 --> 05:20:29.558 align:start position:0%
and it seems that they are so what we
05:20:29.558 --> 05:20:31.510 align:start position:0%
and it seems that they are so what we
can<05:20:29.718> do<05:20:30.120> is<05:20:30.360> add<05:20:30.558> an<05:20:30.718> if<05:20:30.878> state<05:20:31.120> statement
05:20:31.510 --> 05:20:31.520 align:start position:0%
can do is add an if state statement
05:20:31.520 --> 05:20:32.390 align:start position:0%
can do is add an if state statement
right
05:20:32.390 --> 05:20:32.400 align:start position:0%
right
05:20:32.400 --> 05:20:36.310 align:start position:0%
right
here<05:20:33.400> checking<05:20:34.120> if<05:20:34.360> we<05:20:34.520> don't<05:20:34.840> have<05:20:35.160> posts<05:20:36.160> and
05:20:36.310 --> 05:20:36.320 align:start position:0%
here checking if we don't have posts and
05:20:36.320 --> 05:20:38.750 align:start position:0%
here checking if we don't have posts and
if<05:20:36.440> we<05:20:36.600> don't<05:20:36.878> yet<05:20:37.120> have<05:20:37.400> posts<05:20:38.240> then<05:20:38.480> we<05:20:38.600> can
05:20:38.750 --> 05:20:38.760 align:start position:0%
if we don't yet have posts then we can
05:20:38.760 --> 05:20:42.110 align:start position:0%
if we don't yet have posts then we can
simply<05:20:39.440> return<05:20:40.120> a<05:20:40.360> div<05:20:41.160> that<05:20:41.360> has<05:20:41.520> a<05:20:41.798> class
05:20:42.110 --> 05:20:42.120 align:start position:0%
simply return a div that has a class
05:20:42.120 --> 05:20:46.990 align:start position:0%
simply return a div that has a class
name<05:20:42.878> equal<05:20:43.160> to<05:20:43.360> flex<05:20:43.840> D<05:20:44.120> Center<05:20:45.160> w-o<05:20:46.160> and<05:20:46.400> h-
05:20:46.990 --> 05:20:47.000 align:start position:0%
name equal to flex D Center w-o and h-
05:20:47.000 --> 05:20:49.230 align:start position:0%
name equal to flex D Center w-o and h-
fool<05:20:47.760> and<05:20:47.958> this<05:20:48.080> is<05:20:48.240> going<05:20:48.400> to<05:20:48.520> render<05:20:48.958> only
05:20:49.230 --> 05:20:49.240 align:start position:0%
fool and this is going to render only
05:20:49.240 --> 05:20:51.470 align:start position:0%
fool and this is going to render only
one<05:20:49.558> thing<05:20:50.280> which<05:20:50.400> is<05:20:50.558> going<05:20:50.718> to<05:20:50.878> be<05:20:51.200> our
05:20:51.470 --> 05:20:51.480 align:start position:0%
one thing which is going to be our
05:20:51.480 --> 05:20:54.150 align:start position:0%
one thing which is going to be our
self-closing<05:20:52.480> loader<05:20:53.040> component<05:20:53.878> coming
05:20:54.150 --> 05:20:54.160 align:start position:0%
self-closing loader component coming
05:20:54.160 --> 05:20:57.708 align:start position:0%
self-closing loader component coming
from<05:20:54.400> components<05:20:55.120> shared<05:20:56.040> loader<05:20:57.040> if<05:20:57.160> we<05:20:57.320> save
05:20:57.708 --> 05:20:57.718 align:start position:0%
from components shared loader if we save
05:20:57.718 --> 05:20:59.910 align:start position:0%
from components shared loader if we save
this<05:20:58.440> you<05:20:58.558> can<05:20:58.680> see<05:20:58.878> that<05:20:59.040> our<05:20:59.280> app<05:20:59.520> works
05:20:59.910 --> 05:20:59.920 align:start position:0%
this you can see that our app works
05:20:59.920 --> 05:21:02.590 align:start position:0%
this you can see that our app works
again<05:21:00.718> and<05:21:01.240> we<05:21:01.360> can<05:21:01.480> see<05:21:01.760> that<05:21:02.000> first<05:21:02.440> the
05:21:02.590 --> 05:21:02.600 align:start position:0%
again and we can see that first the
05:21:02.600 --> 05:21:04.670 align:start position:0%
again and we can see that first the
posts<05:21:02.878> are<05:21:03.040> undefined<05:21:03.920> but<05:21:04.080> then<05:21:04.280> as<05:21:04.400> soon<05:21:04.558> as
05:21:04.670 --> 05:21:04.680 align:start position:0%
posts are undefined but then as soon as
05:21:04.680 --> 05:21:07.590 align:start position:0%
posts are undefined but then as soon as
it<05:21:04.840> loads<05:21:05.200> them<05:21:05.480> we<05:21:05.638> get<05:21:05.920> one<05:21:06.480> post<05:21:06.920> right<05:21:07.080> here
05:21:07.590 --> 05:21:07.600 align:start position:0%
it loads them we get one post right here
05:21:07.600 --> 05:21:10.070 align:start position:0%
it loads them we get one post right here
with<05:21:07.760> the<05:21:07.958> caption<05:21:08.280> that<05:21:08.400> we<05:21:08.520> have<05:21:08.680> entered<05:21:09.680> so
05:21:10.070 --> 05:21:10.080 align:start position:0%
with the caption that we have entered so
05:21:10.080 --> 05:21:12.230 align:start position:0%
with the caption that we have entered so
this<05:21:10.200> is<05:21:10.400> great<05:21:11.160> and<05:21:11.360> now<05:21:11.680> you<05:21:11.798> can<05:21:11.920> see<05:21:12.120> that
05:21:12.230 --> 05:21:12.240 align:start position:0%
this is great and now you can see that
05:21:12.240 --> 05:21:15.430 align:start position:0%
this is great and now you can see that
we're<05:21:12.480> displaying<05:21:13.160> the<05:21:13.400> grid<05:21:14.000> post<05:21:14.638> list
05:21:15.430 --> 05:21:15.440 align:start position:0%
we're displaying the grid post list
05:21:15.440 --> 05:21:18.230 align:start position:0%
we're displaying the grid post list
great<05:21:16.160> and<05:21:16.320> we're<05:21:16.558> passing<05:21:16.840> the<05:21:17.080> posts<05:21:17.520> within
05:21:18.230 --> 05:21:18.240 align:start position:0%
great and we're passing the posts within
05:21:18.240 --> 05:21:20.670 align:start position:0%
great and we're passing the posts within
them<05:21:19.240> so<05:21:19.558> what<05:21:19.680> do<05:21:19.798> you<05:21:19.920> say<05:21:20.120> that<05:21:20.240> we<05:21:20.360> try<05:21:20.558> to
05:21:20.670 --> 05:21:20.680 align:start position:0%
them so what do you say that we try to
05:21:20.680 --> 05:21:23.270 align:start position:0%
them so what do you say that we try to
show<05:21:21.040> these<05:21:21.280> posts<05:21:21.680> on<05:21:21.798> the<05:21:21.958> explore<05:21:22.480> page
05:21:23.270 --> 05:21:23.280 align:start position:0%
show these posts on the explore page
05:21:23.280 --> 05:21:25.310 align:start position:0%
show these posts on the explore page
let's<05:21:23.480> go<05:21:23.600> ahead<05:21:23.878> and<05:21:24.080> go<05:21:24.280> into<05:21:24.558> the<05:21:24.680> grid<05:21:24.958> post
05:21:25.310 --> 05:21:25.320 align:start position:0%
let's go ahead and go into the grid post
05:21:25.320 --> 05:21:28.430 align:start position:0%
let's go ahead and go into the grid post
list<05:21:25.958> and<05:21:26.240> let's<05:21:26.558> implement<05:21:27.040> it<05:21:27.840> first<05:21:28.160> things
05:21:28.430 --> 05:21:28.440 align:start position:0%
list and let's implement it first things
05:21:28.440 --> 05:21:31.590 align:start position:0%
list and let's implement it first things
first<05:21:28.840> let's<05:21:29.080> get<05:21:29.280> all<05:21:29.520> the<05:21:29.680> necessary<05:21:30.240> props
05:21:31.590 --> 05:21:31.600 align:start position:0%
first let's get all the necessary props
05:21:31.600 --> 05:21:33.948 align:start position:0%
first let's get all the necessary props
most<05:21:31.878> important<05:21:32.320> one<05:21:32.520> is<05:21:32.680> going<05:21:32.840> to<05:21:32.958> be<05:21:33.200> posts
05:21:33.948 --> 05:21:33.958 align:start position:0%
most important one is going to be posts
05:21:33.958 --> 05:21:37.548 align:start position:0%
most important one is going to be posts
so<05:21:34.080> we<05:21:34.200> can<05:21:34.400> Define<05:21:34.798> this<05:21:35.080> as<05:21:35.440> grid<05:21:36.200> post<05:21:36.920> list
05:21:37.548 --> 05:21:37.558 align:start position:0%
so we can Define this as grid post list
05:21:37.558 --> 05:21:39.548 align:start position:0%
so we can Define this as grid post list
props<05:21:38.360> and<05:21:38.480> we<05:21:38.558> can<05:21:38.680> Define<05:21:39.040> them<05:21:39.280> right<05:21:39.400> here
05:21:39.548 --> 05:21:39.558 align:start position:0%
props and we can Define them right here
05:21:39.558 --> 05:21:43.670 align:start position:0%
props and we can Define them right here
at<05:21:39.680> the<05:21:39.878> top<05:21:40.400> by<05:21:40.558> saying<05:21:41.520> type<05:21:42.520> GD<05:21:42.958> post<05:21:43.320> list
05:21:43.670 --> 05:21:43.680 align:start position:0%
at the top by saying type GD post list
05:21:43.680 --> 05:21:48.190 align:start position:0%
at the top by saying type GD post list
props<05:21:44.680> posts<05:21:45.600> is<05:21:45.760> going<05:21:45.920> to<05:21:46.040> be<05:21:46.240> of<05:21:46.360> a<05:21:46.558> type
05:21:48.190 --> 05:21:48.200 align:start position:0%
props posts is going to be of a type
05:21:48.200 --> 05:21:50.910 align:start position:0%
props posts is going to be of a type
models.<05:21:49.200> document<05:21:50.120> but<05:21:50.240> it's<05:21:50.400> going<05:21:50.520> to<05:21:50.638> be<05:21:50.760> an
05:21:50.910 --> 05:21:50.920 align:start position:0%
models. document but it's going to be an
05:21:50.920 --> 05:21:54.708 align:start position:0%
models. document but it's going to be an
array<05:21:51.558> of<05:21:51.760> these<05:21:51.958> models<05:21:52.680> coming<05:21:53.080> from
05:21:54.708 --> 05:21:54.718 align:start position:0%
array of these models coming from
05:21:54.718 --> 05:21:57.230 align:start position:0%
array of these models coming from
ight<05:21:55.718> now<05:21:55.878> that<05:21:56.000> we<05:21:56.120> have<05:21:56.240> the<05:21:56.400> post<05:21:56.798> here
05:21:57.230 --> 05:21:57.240 align:start position:0%
ight now that we have the post here
05:21:57.240 --> 05:21:58.990 align:start position:0%
ight now that we have the post here
let's<05:21:57.480> also<05:21:57.718> get<05:21:57.878> the<05:21:58.040> user<05:21:58.600> because<05:21:58.798> we'll
05:21:58.990 --> 05:21:59.000 align:start position:0%
let's also get the user because we'll
05:21:59.000 --> 05:22:00.590 align:start position:0%
let's also get the user because we'll
have<05:21:59.120> to<05:21:59.240> know<05:21:59.558> which<05:21:59.718> ones<05:21:59.920> were<05:22:00.120> created<05:22:00.480> by
05:22:00.590 --> 05:22:00.600 align:start position:0%
have to know which ones were created by
05:22:00.600 --> 05:22:01.830 align:start position:0%
have to know which ones were created by
the<05:22:00.680> user
05:22:01.830 --> 05:22:01.840 align:start position:0%
the user
05:22:01.840 --> 05:22:05.350 align:start position:0%
the user
so<05:22:02.280> you<05:22:02.400> know<05:22:02.638> the<05:22:02.760> drill<05:22:03.760> const<05:22:04.240> user<05:22:05.080> is
05:22:05.350 --> 05:22:05.360 align:start position:0%
so you know the drill const user is
05:22:05.360 --> 05:22:09.548 align:start position:0%
so you know the drill const user is
equal<05:22:05.760> to<05:22:06.760> use<05:22:07.558> user<05:22:08.320> context<05:22:09.200> which<05:22:09.320> we
05:22:09.548 --> 05:22:09.558 align:start position:0%
equal to use user context which we
05:22:09.558 --> 05:22:12.230 align:start position:0%
equal to use user context which we
import<05:22:10.000> from<05:22:10.280> OD
05:22:12.230 --> 05:22:12.240 align:start position:0%
import from OD
05:22:12.240 --> 05:22:14.708 align:start position:0%
import from OD
context<05:22:13.240> now<05:22:13.400> that<05:22:13.600> we<05:22:13.760> have<05:22:14.000> this<05:22:14.400> we<05:22:14.520> can
05:22:14.708 --> 05:22:14.718 align:start position:0%
context now that we have this we can
05:22:14.718 --> 05:22:17.910 align:start position:0%
context now that we have this we can
wrap<05:22:15.200> all<05:22:15.360> of<05:22:15.558> this<05:22:15.760> in<05:22:15.920> a<05:22:16.120> UL<05:22:16.798> an<05:22:17.080> unordered
05:22:17.910 --> 05:22:17.920 align:start position:0%
wrap all of this in a UL an unordered
05:22:17.920 --> 05:22:22.390 align:start position:0%
wrap all of this in a UL an unordered
list<05:22:18.840> that<05:22:19.080> has<05:22:19.240> a<05:22:19.520> class<05:22:19.878> name<05:22:20.520> equal<05:22:20.840> to<05:22:21.558> grid
05:22:22.390 --> 05:22:22.400 align:start position:0%
list that has a class name equal to grid
05:22:22.400 --> 05:22:24.310 align:start position:0%
list that has a class name equal to grid
Das
05:22:24.310 --> 05:22:24.320 align:start position:0%
Das
05:22:24.320 --> 05:22:26.948 align:start position:0%
Das
container<05:22:25.320> and<05:22:25.520> let's<05:22:25.718> save<05:22:25.958> it<05:22:26.558> you<05:22:26.680> can<05:22:26.798> see
05:22:26.948 --> 05:22:26.958 align:start position:0%
container and let's save it you can see
05:22:26.958 --> 05:22:29.548 align:start position:0%
container and let's save it you can see
it<05:22:27.120> disappears<05:22:27.840> and<05:22:28.000> now<05:22:28.200> within<05:22:28.600> here<05:22:29.200> we<05:22:29.320> can
05:22:29.548 --> 05:22:29.558 align:start position:0%
it disappears and now within here we can
05:22:29.558 --> 05:22:33.310 align:start position:0%
it disappears and now within here we can
map<05:22:29.840> over<05:22:30.080> the<05:22:30.320> posts<05:22:31.000> by<05:22:31.120> saying<05:22:31.480> posts.<05:22:32.360> map
05:22:33.310 --> 05:22:33.320 align:start position:0%
map over the posts by saying posts. map
05:22:33.320 --> 05:22:35.868 align:start position:0%
map over the posts by saying posts. map
where<05:22:33.480> we<05:22:33.638> get<05:22:33.920> each<05:22:34.200> individual<05:22:34.840> post<05:22:35.760> and
05:22:35.868 --> 05:22:35.878 align:start position:0%
where we get each individual post and
05:22:35.878 --> 05:22:39.190 align:start position:0%
where we get each individual post and
for<05:22:36.120> each<05:22:36.320> one<05:22:36.520> we<05:22:36.638> can<05:22:36.958> return<05:22:37.280> a<05:22:37.558> list<05:22:38.200> item
05:22:39.190 --> 05:22:39.200 align:start position:0%
for each one we can return a list item
05:22:39.200 --> 05:22:40.868 align:start position:0%
for each one we can return a list item
for<05:22:39.400> now<05:22:39.638> let's<05:22:39.798> say<05:22:39.958> that<05:22:40.080> we<05:22:40.200> just<05:22:40.480> returned
05:22:40.868 --> 05:22:40.878 align:start position:0%
for now let's say that we just returned
05:22:40.878 --> 05:22:44.510 align:start position:0%
for now let's say that we just returned
a<05:22:41.160> post.<05:22:42.160> caption<05:22:43.160> if<05:22:43.240> we<05:22:43.400> do<05:22:43.558> it<05:22:43.958> you<05:22:44.080> can<05:22:44.200> see
05:22:44.510 --> 05:22:44.520 align:start position:0%
a post. caption if we do it you can see
05:22:44.520 --> 05:22:46.910 align:start position:0%
a post. caption if we do it you can see
only<05:22:44.840> one<05:22:45.120> post<05:22:45.480> caption<05:22:45.958> here<05:22:46.400> but<05:22:46.558> of<05:22:46.680> course
05:22:46.910 --> 05:22:46.920 align:start position:0%
only one post caption here but of course
05:22:46.920 --> 05:22:48.310 align:start position:0%
only one post caption here but of course
we<05:22:47.040> want<05:22:47.160> to<05:22:47.320> make<05:22:47.520> this<05:22:47.638> a<05:22:47.760> bit<05:22:47.958> more
05:22:48.310 --> 05:22:48.320 align:start position:0%
we want to make this a bit more
05:22:48.320 --> 05:22:50.470 align:start position:0%
we want to make this a bit more
interesting<05:22:49.320> and<05:22:49.680> something<05:22:50.040> like<05:22:50.240> this
05:22:50.470 --> 05:22:50.480 align:start position:0%
interesting and something like this
05:22:50.480 --> 05:22:52.910 align:start position:0%
interesting and something like this
would<05:22:50.638> be<05:22:50.878> great<05:22:51.600> an<05:22:51.840> explore<05:22:52.360> page<05:22:52.680> where<05:22:52.798> we
05:22:52.910 --> 05:22:52.920 align:start position:0%
would be great an explore page where we
05:22:52.920 --> 05:22:55.590 align:start position:0%
would be great an explore page where we
can<05:22:53.000> see<05:22:53.280> all<05:22:53.600> the<05:22:53.840> popular<05:22:54.320> posts<05:22:55.160> we<05:22:55.280> have<05:22:55.400> a
05:22:55.590 --> 05:22:55.600 align:start position:0%
can see all the popular posts we have a
05:22:55.600 --> 05:22:57.990 align:start position:0%
can see all the popular posts we have a
nice<05:22:55.878> looking<05:22:56.240> image<05:22:56.920> a<05:22:57.080> Creator<05:22:57.440> in<05:22:57.680> bottom
05:22:57.990 --> 05:22:58.000 align:start position:0%
nice looking image a Creator in bottom
05:22:58.000 --> 05:23:00.948 align:start position:0%
nice looking image a Creator in bottom
left<05:22:58.400> and<05:22:58.520> then<05:22:58.798> save<05:22:59.360> and<05:22:59.760> like<05:23:00.320> on<05:23:00.558> the
05:23:00.948 --> 05:23:00.958 align:start position:0%
left and then save and like on the
05:23:00.958 --> 05:23:02.910 align:start position:0%
left and then save and like on the
bottom<05:23:01.240> right<05:23:01.520> as<05:23:01.638> well<05:23:02.400> and<05:23:02.520> then<05:23:02.638> we<05:23:02.760> can
05:23:02.910 --> 05:23:02.920 align:start position:0%
bottom right as well and then we can
05:23:02.920 --> 05:23:04.510 align:start position:0%
bottom right as well and then we can
Scroll<05:23:03.440> of<05:23:03.558> course<05:23:03.798> with<05:23:03.958> the<05:23:04.120> infinite
05:23:04.510 --> 05:23:04.520 align:start position:0%
Scroll of course with the infinite
05:23:04.520 --> 05:23:07.830 align:start position:0%
Scroll of course with the infinite
scroll<05:23:05.320> as<05:23:05.480> much<05:23:05.680> as<05:23:05.798> we<05:23:05.920> want<05:23:06.120> to<05:23:06.638> down<05:23:06.878> below
05:23:07.830 --> 05:23:07.840 align:start position:0%
scroll as much as we want to down below
05:23:07.840 --> 05:23:10.470 align:start position:0%
scroll as much as we want to down below
so<05:23:08.320> this<05:23:08.400> is<05:23:08.558> the<05:23:08.680> goal<05:23:09.480> and<05:23:09.718> we<05:23:09.840> can<05:23:10.040> implement
05:23:10.470 --> 05:23:10.480 align:start position:0%
so this is the goal and we can implement
05:23:10.480 --> 05:23:13.590 align:start position:0%
so this is the goal and we can implement
it<05:23:11.120> so<05:23:11.360> instead<05:23:11.600> of<05:23:11.760> just<05:23:11.878> An<05:23:12.080> Li<05:23:12.840> Let's<05:23:13.080> do<05:23:13.360> an
05:23:13.590 --> 05:23:13.600 align:start position:0%
it so instead of just An Li Let's do an
05:23:13.600 --> 05:23:18.110 align:start position:0%
it so instead of just An Li Let's do an
Li<05:23:14.240> that<05:23:14.440> has<05:23:14.558> a<05:23:14.840> key<05:23:15.638> equal<05:23:15.958> to<05:23:16.240> post.<05:23:17.160> doar<05:23:17.638> ID
05:23:18.110 --> 05:23:18.120 align:start position:0%
Li that has a key equal to post. doar ID
05:23:18.120 --> 05:23:20.510 align:start position:0%
Li that has a key equal to post. doar ID
as<05:23:18.200> We're<05:23:18.360> looping<05:23:18.760> over<05:23:19.040> it<05:23:19.760> and<05:23:19.920> the<05:23:20.200> class
05:23:20.510 --> 05:23:20.520 align:start position:0%
as We're looping over it and the class
05:23:20.520 --> 05:23:22.030 align:start position:0%
as We're looping over it and the class
name<05:23:20.878> of
05:23:22.030 --> 05:23:22.040 align:start position:0%
name of
05:23:22.040 --> 05:23:28.548 align:start position:0%
name of
relative<05:23:23.240> m-w<05:23:24.240> of<05:23:24.520> 80<05:23:25.520> and<05:23:26.040> H<05:23:26.480> of<05:23:26.718> 80<05:23:27.320> as<05:23:27.558> well
05:23:28.548 --> 05:23:28.558 align:start position:0%
relative m-w of 80 and H of 80 as well
05:23:28.558 --> 05:23:31.350 align:start position:0%
relative m-w of 80 and H of 80 as well
now<05:23:28.840> instead<05:23:29.120> of<05:23:29.200> rendering<05:23:29.718> a<05:23:29.958> post<05:23:30.360> caption
05:23:31.350 --> 05:23:31.360 align:start position:0%
now instead of rendering a post caption
05:23:31.360 --> 05:23:34.670 align:start position:0%
now instead of rendering a post caption
right<05:23:31.600> here<05:23:32.000> we<05:23:32.120> want<05:23:32.240> to<05:23:32.400> render<05:23:32.920> a<05:23:33.480> link<05:23:34.480> this
05:23:34.670 --> 05:23:34.680 align:start position:0%
right here we want to render a link this
05:23:34.680 --> 05:23:39.350 align:start position:0%
right here we want to render a link this
link<05:23:35.120> is<05:23:35.320> of<05:23:35.520> course<05:23:35.840> coming<05:23:36.600> from<05:23:38.080> import
05:23:39.350 --> 05:23:39.360 align:start position:0%
link is of course coming from import
05:23:39.360 --> 05:23:43.470 align:start position:0%
link is of course coming from import
link<05:23:40.360> from<05:23:41.120> react<05:23:42.120> router
05:23:43.470 --> 05:23:43.480 align:start position:0%
link from react router
05:23:43.480 --> 05:23:47.628 align:start position:0%
link from react router
Dom<05:23:44.480> this<05:23:44.680> link<05:23:45.200> is<05:23:45.360> going<05:23:45.600> to<05:23:46.240> wrap<05:23:46.840> our<05:23:47.080> image
05:23:47.628 --> 05:23:47.638 align:start position:0%
Dom this link is going to wrap our image
05:23:47.638 --> 05:23:50.070 align:start position:0%
Dom this link is going to wrap our image
so<05:23:47.920> right<05:23:48.080> here<05:23:48.240> we<05:23:48.360> can<05:23:48.558> Define<05:23:49.000> our<05:23:49.240> image
05:23:50.070 --> 05:23:50.080 align:start position:0%
so right here we can Define our image
05:23:50.080 --> 05:23:51.910 align:start position:0%
so right here we can Define our image
that's<05:23:50.280> going<05:23:50.400> to<05:23:50.520> have<05:23:50.638> a<05:23:50.840> source<05:23:51.360> equal<05:23:51.638> to
05:23:51.910 --> 05:23:51.920 align:start position:0%
that's going to have a source equal to
05:23:51.920 --> 05:23:56.470 align:start position:0%
that's going to have a source equal to
post.<05:23:52.718> image<05:23:53.160> URL<05:23:54.160> and<05:23:54.320> there<05:23:54.480> we<05:23:54.638> go<05:23:55.520> so<05:23:56.000> now
05:23:56.470 --> 05:23:56.480 align:start position:0%
post. image URL and there we go so now
05:23:56.480 --> 05:23:58.750 align:start position:0%
post. image URL and there we go so now
once<05:23:56.638> we<05:23:56.840> click<05:23:57.040> it<05:23:57.680> we<05:23:57.840> wanted<05:23:58.160> to<05:23:58.320> go<05:23:58.440> to<05:23:58.600> the
05:23:58.750 --> 05:23:58.760 align:start position:0%
once we click it we wanted to go to the
05:23:58.760 --> 05:24:01.830 align:start position:0%
once we click it we wanted to go to the
Post<05:23:59.040> details<05:23:59.440> of<05:23:59.638> this<05:23:59.878> post<05:24:00.480> so<05:24:00.840> let's<05:24:00.958> say
05:24:01.830 --> 05:24:01.840 align:start position:0%
Post details of this post so let's say
05:24:01.840 --> 05:24:07.670 align:start position:0%
Post details of this post so let's say
two<05:24:03.240> slost<05:24:04.600> slost<05:24:05.600> dooll<05:24:06.400> sign
05:24:07.670 --> 05:24:07.680 align:start position:0%
two slost slost dooll sign
05:24:07.680 --> 05:24:11.310 align:start position:0%
two slost slost dooll sign
ID<05:24:08.680> now<05:24:09.000> if<05:24:09.080> we<05:24:09.240> click<05:24:09.440> it<05:24:09.958> we<05:24:10.120> go<05:24:10.360> away<05:24:11.040> that's
05:24:11.310 --> 05:24:11.320 align:start position:0%
ID now if we click it we go away that's
05:24:11.320 --> 05:24:13.830 align:start position:0%
ID now if we click it we go away that's
great<05:24:11.958> let's<05:24:12.160> also<05:24:12.360> give<05:24:12.480> it<05:24:12.600> a<05:24:12.798> class<05:24:13.120> name
05:24:13.830 --> 05:24:13.840 align:start position:0%
great let's also give it a class name
05:24:13.840 --> 05:24:18.910 align:start position:0%
great let's also give it a class name
equal<05:24:14.160> to<05:24:14.760> grid<05:24:15.600> Das<05:24:16.920> postore<05:24:17.920> link<05:24:18.798> and
05:24:18.910 --> 05:24:18.920 align:start position:0%
equal to grid Das postore link and
05:24:18.920 --> 05:24:20.150 align:start position:0%
equal to grid Das postore link and
that's<05:24:19.080> going<05:24:19.240> to<05:24:19.360> make<05:24:19.520> it<05:24:19.680> look<05:24:19.840> a<05:24:19.958> bit
05:24:20.150 --> 05:24:20.160 align:start position:0%
that's going to make it look a bit
05:24:20.160 --> 05:24:22.430 align:start position:0%
that's going to make it look a bit
better<05:24:21.000> the<05:24:21.160> image<05:24:21.480> itself<05:24:21.878> is<05:24:22.040> going<05:24:22.200> to<05:24:22.320> have
05:24:22.430 --> 05:24:22.440 align:start position:0%
better the image itself is going to have
05:24:22.440 --> 05:24:25.110 align:start position:0%
better the image itself is going to have
an<05:24:22.558> Al<05:24:22.920> tag<05:24:23.160> of<05:24:23.400> post<05:24:24.240> as<05:24:24.360> well<05:24:24.480> as<05:24:24.600> a<05:24:24.798> class
05:24:25.110 --> 05:24:25.120 align:start position:0%
an Al tag of post as well as a class
05:24:25.120 --> 05:24:29.670 align:start position:0%
an Al tag of post as well as a class
name<05:24:25.558> of<05:24:26.040> h-<05:24:26.760> full<05:24:27.240> for<05:24:27.480> full<05:24:27.840> height<05:24:28.480> w-o<05:24:29.440> for
05:24:29.670 --> 05:24:29.680 align:start position:0%
name of h- full for full height w-o for
05:24:29.680 --> 05:24:33.070 align:start position:0%
name of h- full for full height w-o for
full<05:24:29.958> width<05:24:30.520> and<05:24:30.958> object<05:24:31.400> cover<05:24:32.120> so<05:24:32.480> it<05:24:32.680> looks
05:24:33.070 --> 05:24:33.080 align:start position:0%
full width and object cover so it looks
05:24:33.080 --> 05:24:35.910 align:start position:0%
full width and object cover so it looks
good<05:24:33.878> there<05:24:34.040> we<05:24:34.200> go<05:24:34.680> now<05:24:34.878> below<05:24:35.240> this<05:24:35.400> link<05:24:35.798> we
05:24:35.910 --> 05:24:35.920 align:start position:0%
good there we go now below this link we
05:24:35.920 --> 05:24:37.910 align:start position:0%
good there we go now below this link we
need<05:24:36.080> to<05:24:36.200> show<05:24:36.440> the<05:24:36.600> information<05:24:37.320> about<05:24:37.680> a
05:24:37.910 --> 05:24:37.920 align:start position:0%
need to show the information about a
05:24:37.920 --> 05:24:40.470 align:start position:0%
need to show the information about a
user<05:24:38.920> but<05:24:39.040> we're<05:24:39.160> going<05:24:39.280> to<05:24:39.440> reuse<05:24:39.920> this<05:24:40.120> grid
05:24:40.470 --> 05:24:40.480 align:start position:0%
user but we're going to reuse this grid
05:24:40.480 --> 05:24:42.310 align:start position:0%
user but we're going to reuse this grid
a<05:24:40.600> couple<05:24:40.840> of<05:24:41.040> times<05:24:41.520> we're<05:24:41.680> going<05:24:41.798> to<05:24:41.920> reuse
05:24:42.310 --> 05:24:42.320 align:start position:0%
a couple of times we're going to reuse
05:24:42.320 --> 05:24:45.030 align:start position:0%
a couple of times we're going to reuse
it<05:24:42.480> on<05:24:42.600> our<05:24:42.878> profile<05:24:43.360> later<05:24:43.638> on<05:24:44.040> as<05:24:44.280> well
05:24:45.030 --> 05:24:45.040 align:start position:0%
it on our profile later on as well
05:24:45.040 --> 05:24:47.750 align:start position:0%
it on our profile later on as well
specifically<05:24:45.558> on<05:24:45.760> liked<05:24:46.160> posts<05:24:46.558> and<05:24:46.840> more<05:24:47.600> and
05:24:47.750 --> 05:24:47.760 align:start position:0%
specifically on liked posts and more and
05:24:47.760 --> 05:24:50.030 align:start position:0%
specifically on liked posts and more and
as<05:24:47.840> you<05:24:47.958> can<05:24:48.080> see<05:24:48.798> and<05:24:49.040> on<05:24:49.200> the<05:24:49.360> Explorer<05:24:49.878> we're
05:24:50.030 --> 05:24:50.040 align:start position:0%
as you can see and on the Explorer we're
05:24:50.040 --> 05:24:52.150 align:start position:0%
as you can see and on the Explorer we're
going<05:24:50.120> to<05:24:50.240> show<05:24:50.480> the<05:24:50.638> stats<05:24:51.200> like<05:24:51.400> save<05:24:51.920> and
05:24:52.150 --> 05:24:52.160 align:start position:0%
going to show the stats like save and
05:24:52.160 --> 05:24:54.548 align:start position:0%
going to show the stats like save and
like<05:24:52.958> but<05:24:53.200> if<05:24:53.320> we're<05:24:53.600> visiting<05:24:54.080> somebody's
05:24:54.548 --> 05:24:54.558 align:start position:0%
like but if we're visiting somebody's
05:24:54.558 --> 05:24:56.430 align:start position:0%
like but if we're visiting somebody's
profile<05:24:55.240> we<05:24:55.400> don't<05:24:55.680> necessarily<05:24:56.200> have<05:24:56.320> to
05:24:56.430 --> 05:24:56.440 align:start position:0%
profile we don't necessarily have to
05:24:56.440 --> 05:24:57.910 align:start position:0%
profile we don't necessarily have to
show<05:24:56.718> the<05:24:56.878> stats<05:24:57.320> because<05:24:57.480> you're<05:24:57.638> not<05:24:57.840> going
05:24:57.910 --> 05:24:57.920 align:start position:0%
show the stats because you're not going
05:24:57.920 --> 05:25:00.310 align:start position:0%
show the stats because you're not going
to<05:24:58.080> like<05:24:58.280> your<05:24:58.440> own<05:24:58.840> posts<05:24:59.840> so<05:25:00.040> that's<05:25:00.240> why
05:25:00.310 --> 05:25:00.320 align:start position:0%
to like your own posts so that's why
05:25:00.320 --> 05:25:01.628 align:start position:0%
to like your own posts so that's why
we're<05:25:00.440> going<05:25:00.558> to<05:25:00.798> make<05:25:01.000> this<05:25:01.160> component
05:25:01.628 --> 05:25:01.638 align:start position:0%
we're going to make this component
05:25:01.638 --> 05:25:04.750 align:start position:0%
we're going to make this component
modifiable<05:25:02.600> as<05:25:02.840> every<05:25:03.160> component<05:25:03.638> should<05:25:03.840> be
05:25:04.750 --> 05:25:04.760 align:start position:0%
modifiable as every component should be
05:25:04.760 --> 05:25:06.830 align:start position:0%
modifiable as every component should be
we<05:25:04.878> can<05:25:05.080> pass<05:25:05.240> some<05:25:05.440> additional<05:25:05.920> props<05:25:06.638> such
05:25:06.830 --> 05:25:06.840 align:start position:0%
we can pass some additional props such
05:25:06.840 --> 05:25:10.548 align:start position:0%
we can pass some additional props such
as<05:25:07.160> show<05:25:07.718> user<05:25:08.480> by<05:25:08.760> default<05:25:09.160> set<05:25:09.360> to<05:25:09.558> true<05:25:10.400> as
05:25:10.548 --> 05:25:10.558 align:start position:0%
as show user by default set to true as
05:25:10.558 --> 05:25:13.150 align:start position:0%
as show user by default set to true as
well<05:25:10.718> as<05:25:10.840> show<05:25:11.320> stats<05:25:12.120> also<05:25:12.440> by<05:25:12.600> default<05:25:12.958> set
05:25:13.150 --> 05:25:13.160 align:start position:0%
well as show stats also by default set
05:25:13.160 --> 05:25:15.750 align:start position:0%
well as show stats also by default set
to<05:25:13.320> true<05:25:14.120> but<05:25:14.360> in<05:25:14.520> case<05:25:14.718> you<05:25:14.840> want<05:25:14.958> to<05:25:15.240> pass<05:25:15.558> a
05:25:15.750 --> 05:25:15.760 align:start position:0%
to true but in case you want to pass a
05:25:15.760 --> 05:25:18.708 align:start position:0%
to true but in case you want to pass a
false<05:25:16.400> you<05:25:16.520> can<05:25:16.760> do<05:25:16.958> that<05:25:17.920> so<05:25:18.280> right<05:25:18.440> here<05:25:18.558> at
05:25:18.708 --> 05:25:18.718 align:start position:0%
false you can do that so right here at
05:25:18.718 --> 05:25:21.350 align:start position:0%
false you can do that so right here at
the<05:25:18.920> top<05:25:19.440> we<05:25:19.558> can<05:25:19.718> also<05:25:20.040> add<05:25:20.240> two<05:25:20.440> new<05:25:20.718> types
05:25:21.350 --> 05:25:21.360 align:start position:0%
the top we can also add two new types
05:25:21.360 --> 05:25:23.948 align:start position:0%
the top we can also add two new types
show<05:25:21.760> user<05:25:22.520> question<05:25:22.878> mark<05:25:23.240> meaning<05:25:23.638> it's
05:25:23.948 --> 05:25:23.958 align:start position:0%
show user question mark meaning it's
05:25:23.958 --> 05:25:26.708 align:start position:0%
show user question mark meaning it's
optional<05:25:24.718> of<05:25:24.840> a<05:25:25.000> type<05:25:25.200> Boolean<05:25:26.200> and<05:25:26.360> show
05:25:26.708 --> 05:25:26.718 align:start position:0%
optional of a type Boolean and show
05:25:26.718 --> 05:25:29.110 align:start position:0%
optional of a type Boolean and show
stats<05:25:27.558> question<05:25:27.840> mark<05:25:28.200> Boolean<05:25:28.760> which<05:25:28.878> means
05:25:29.110 --> 05:25:29.120 align:start position:0%
stats question mark Boolean which means
05:25:29.120 --> 05:25:32.310 align:start position:0%
stats question mark Boolean which means
that<05:25:29.240> it<05:25:29.360> is<05:25:29.680> optional<05:25:31.000> so<05:25:31.320> now<05:25:31.638> if<05:25:31.760> we<05:25:31.958> go
05:25:32.310 --> 05:25:32.320 align:start position:0%
that it is optional so now if we go
05:25:32.320 --> 05:25:36.350 align:start position:0%
that it is optional so now if we go
below<05:25:33.280> this<05:25:33.638> link<05:25:34.480> we<05:25:34.600> can<05:25:34.798> create<05:25:35.120> a<05:25:35.280> new<05:25:35.558> div
05:25:36.350 --> 05:25:36.360 align:start position:0%
below this link we can create a new div
05:25:36.360 --> 05:25:39.070 align:start position:0%
below this link we can create a new div
that's<05:25:36.600> going<05:25:36.760> to<05:25:37.000> have<05:25:37.160> a<05:25:37.440> class<05:25:37.798> name<05:25:38.798> equal
05:25:39.070 --> 05:25:39.080 align:start position:0%
that's going to have a class name equal
05:25:39.080 --> 05:25:40.990 align:start position:0%
that's going to have a class name equal
to<05:25:39.360> grid
05:25:40.990 --> 05:25:41.000 align:start position:0%
to grid
05:25:41.000 --> 05:25:44.628 align:start position:0%
to grid
dstore<05:25:42.320> user<05:25:43.320> and<05:25:43.480> within<05:25:43.878> here<05:25:44.200> we<05:25:44.320> want<05:25:44.440> to
05:25:44.628 --> 05:25:44.638 align:start position:0%
dstore user and within here we want to
05:25:44.638 --> 05:25:49.350 align:start position:0%
dstore user and within here we want to
check<05:25:45.120> if<05:25:45.638> show<05:25:46.080> user<05:25:47.080> is<05:25:47.600> true<05:25:48.600> then<05:25:49.080> we<05:25:49.200> want
05:25:49.350 --> 05:25:49.360 align:start position:0%
check if show user is true then we want
05:25:49.360 --> 05:25:51.948 align:start position:0%
check if show user is true then we want
to<05:25:49.680> return<05:25:50.000> a<05:25:50.240> div<05:25:51.080> that's<05:25:51.240> going<05:25:51.400> to<05:25:51.600> have<05:25:51.718> a
05:25:51.948 --> 05:25:51.958 align:start position:0%
to return a div that's going to have a
05:25:51.958 --> 05:25:55.948 align:start position:0%
to return a div that's going to have a
class<05:25:52.400> name<05:25:53.400> equal<05:25:53.760> to<05:25:54.240> for<05:25:54.480> now<05:25:54.798> flex<05:25:55.798> and
05:25:55.948 --> 05:25:55.958 align:start position:0%
class name equal to for now flex and
05:25:55.958 --> 05:25:57.708 align:start position:0%
class name equal to for now flex and
it's<05:25:56.120> going<05:25:56.240> to<05:25:56.360> render<05:25:56.638> an<05:25:56.840> image<05:25:57.558> that's
05:25:57.708 --> 05:25:57.718 align:start position:0%
it's going to render an image that's
05:25:57.718 --> 05:26:00.110 align:start position:0%
it's going to render an image that's
going<05:25:57.878> to<05:25:58.000> have<05:25:58.120> a<05:25:58.280> source<05:25:58.840> equal<05:25:59.120> to<05:25:59.360> post.
05:26:00.110 --> 05:26:00.120 align:start position:0%
going to have a source equal to post.
05:26:00.120 --> 05:26:01.110 align:start position:0%
going to have a source equal to post.
creator
05:26:01.110 --> 05:26:01.120 align:start position:0%
creator
05:26:01.120 --> 05:26:02.070 align:start position:0%
creator
image
05:26:02.070 --> 05:26:02.080 align:start position:0%
image
05:26:02.080 --> 05:26:05.110 align:start position:0%
image
URL<05:26:03.080> and<05:26:03.280> now<05:26:03.718> you<05:26:03.840> can<05:26:04.000> see<05:26:04.240> it<05:26:04.600> right<05:26:04.798> this<05:26:04.920> is
05:26:05.110 --> 05:26:05.120 align:start position:0%
URL and now you can see it right this is
05:26:05.120 --> 05:26:07.150 align:start position:0%
URL and now you can see it right this is
the<05:26:05.480> little<05:26:05.760> image<05:26:06.040> that<05:26:06.160> we<05:26:06.280> need<05:26:06.400> to<05:26:06.520> show<05:26:07.000> of
05:26:07.150 --> 05:26:07.160 align:start position:0%
the little image that we need to show of
05:26:07.160 --> 05:26:09.430 align:start position:0%
the little image that we need to show of
who<05:26:07.360> created<05:26:07.718> the<05:26:07.878> post<05:26:08.798> we<05:26:08.920> can<05:26:09.040> give<05:26:09.160> it<05:26:09.280> an
05:26:09.430 --> 05:26:09.440 align:start position:0%
who created the post we can give it an
05:26:09.440 --> 05:26:12.670 align:start position:0%
who created the post we can give it an
Al<05:26:09.760> tag<05:26:10.920> of
05:26:12.670 --> 05:26:12.680 align:start position:0%
Al tag of
05:26:12.680 --> 05:26:16.708 align:start position:0%
Al tag of
Creator<05:26:13.680> as<05:26:13.878> well<05:26:14.160> as<05:26:14.280> a<05:26:14.520> class<05:26:14.840> name<05:26:15.760> of
05:26:16.708 --> 05:26:16.718 align:start position:0%
Creator as well as a class name of
05:26:16.718 --> 05:26:18.670 align:start position:0%
Creator as well as a class name of
h-8
05:26:18.670 --> 05:26:18.680 align:start position:0%
h-8
05:26:18.680 --> 05:26:21.990 align:start position:0%
h-8
w-8<05:26:19.680> and<05:26:20.000> rounded<05:26:20.600> Das<05:26:20.840> full<05:26:21.360> as<05:26:21.480> we<05:26:21.638> usually
05:26:21.990 --> 05:26:22.000 align:start position:0%
w-8 and rounded Das full as we usually
05:26:22.000 --> 05:26:24.708 align:start position:0%
w-8 and rounded Das full as we usually
do<05:26:22.320> with<05:26:22.520> profile<05:26:22.920> images<05:26:23.920> and<05:26:24.080> there<05:26:24.200> we<05:26:24.360> go
05:26:24.708 --> 05:26:24.718 align:start position:0%
do with profile images and there we go
05:26:24.718 --> 05:26:26.788 align:start position:0%
do with profile images and there we go
now<05:26:24.878> it's<05:26:25.000> a<05:26:25.120> little<05:26:25.480> profile<05:26:25.878> icon<05:26:26.400> on<05:26:26.600> the
05:26:26.788 --> 05:26:26.798 align:start position:0%
now it's a little profile icon on the
05:26:26.798 --> 05:26:29.750 align:start position:0%
now it's a little profile icon on the
bottom<05:26:27.200> left<05:26:28.080> we<05:26:28.200> can<05:26:28.400> also<05:26:28.638> create<05:26:28.878> a<05:26:29.040> P<05:26:29.280> tag
05:26:29.750 --> 05:26:29.760 align:start position:0%
bottom left we can also create a P tag
05:26:29.760 --> 05:26:32.230 align:start position:0%
bottom left we can also create a P tag
that's<05:26:29.920> going<05:26:30.080> to<05:26:30.200> render<05:26:30.680> the<05:26:30.920> post.
05:26:32.230 --> 05:26:32.240 align:start position:0%
that's going to render the post.
05:26:32.240 --> 05:26:34.110 align:start position:0%
that's going to render the post.
creator.
05:26:34.110 --> 05:26:34.120 align:start position:0%
creator.
05:26:34.120 --> 05:26:37.150 align:start position:0%
creator.
name<05:26:35.120> and<05:26:35.480> we<05:26:35.600> can<05:26:35.760> also<05:26:36.000> give<05:26:36.120> it<05:26:36.240> a<05:26:36.400> class
05:26:37.150 --> 05:26:37.160 align:start position:0%
name and we can also give it a class
05:26:37.160 --> 05:26:42.350 align:start position:0%
name and we can also give it a class
name<05:26:38.160> off<05:26:39.000> line-<05:26:40.000> clamp<05:26:41.000> D1<05:26:41.958> which<05:26:42.080> is<05:26:42.200> going
05:26:42.350 --> 05:26:42.360 align:start position:0%
name off line- clamp D1 which is going
05:26:42.360 --> 05:26:45.548 align:start position:0%
name off line- clamp D1 which is going
to<05:26:42.558> ensure<05:26:43.000> it<05:26:43.160> fits<05:26:43.558> in<05:26:43.718> one<05:26:44.120> line<05:26:45.120> let's<05:26:45.360> also
05:26:45.548 --> 05:26:45.558 align:start position:0%
to ensure it fits in one line let's also
05:26:45.558 --> 05:26:48.350 align:start position:0%
to ensure it fits in one line let's also
add<05:26:45.760> a<05:26:45.840> couple<05:26:46.080> more<05:26:46.280> properties<05:26:46.798> to<05:26:47.000> this<05:26:47.200> div
05:26:48.350 --> 05:26:48.360 align:start position:0%
add a couple more properties to this div
05:26:48.360 --> 05:26:50.590 align:start position:0%
add a couple more properties to this div
Flex<05:26:49.360> items<05:26:49.840> D
05:26:50.590 --> 05:26:50.600 align:start position:0%
Flex items D
05:26:50.600 --> 05:26:54.990 align:start position:0%
Flex items D
Center<05:26:51.600> justify<05:26:52.240> Das<05:26:52.958> start<05:26:53.958> a<05:26:54.200> gap<05:26:54.440> of<05:26:54.600> two<05:26:54.840> to
05:26:54.990 --> 05:26:55.000 align:start position:0%
Center justify Das start a gap of two to
05:26:55.000 --> 05:26:58.270 align:start position:0%
Center justify Das start a gap of two to
divide<05:26:55.280> them<05:26:55.440> a<05:26:55.600> bit<05:26:56.160> and<05:26:56.320> the<05:26:56.480> flex<05:26:56.760> of
05:26:58.270 --> 05:26:58.280 align:start position:0%
divide them a bit and the flex of
05:26:58.280 --> 05:27:02.070 align:start position:0%
divide them a bit and the flex of
one<05:26:59.280> great<05:27:00.040> now<05:27:00.200> we<05:27:00.320> can<05:27:00.638> go<05:27:00.840> below<05:27:01.520> this<05:27:01.718> div
05:27:02.070 --> 05:27:02.080 align:start position:0%
one great now we can go below this div
05:27:02.080 --> 05:27:04.430 align:start position:0%
one great now we can go below this div
and<05:27:02.240> below<05:27:02.638> the<05:27:02.840> dynamic<05:27:03.320> block<05:27:04.040> and<05:27:04.160> we<05:27:04.240> can
05:27:04.430 --> 05:27:04.440 align:start position:0%
and below the dynamic block and we can
05:27:04.440 --> 05:27:06.390 align:start position:0%
and below the dynamic block and we can
also<05:27:04.718> check<05:27:05.080> whether<05:27:05.280> we<05:27:05.400> want<05:27:05.520> to<05:27:05.680> show<05:27:06.040> the
05:27:06.390 --> 05:27:06.400 align:start position:0%
also check whether we want to show the
05:27:06.400 --> 05:27:09.510 align:start position:0%
also check whether we want to show the
stats<05:27:07.400> if<05:27:07.558> we<05:27:07.680> do<05:27:07.878> want<05:27:08.040> to<05:27:08.160> show<05:27:08.400> the<05:27:08.600> stats<05:27:09.400> we
05:27:09.510 --> 05:27:09.520 align:start position:0%
stats if we do want to show the stats we
05:27:09.520 --> 05:27:12.990 align:start position:0%
stats if we do want to show the stats we
can<05:27:09.680> render<05:27:10.360> the<05:27:10.638> post<05:27:11.160> stats<05:27:11.680> component<05:27:12.680> so
05:27:12.990 --> 05:27:13.000 align:start position:0%
can render the post stats component so
05:27:13.000 --> 05:27:16.548 align:start position:0%
can render the post stats component so
post<05:27:13.558> stats<05:27:14.080> like<05:27:14.280> so<05:27:15.200> we<05:27:15.320> can<05:27:15.600> import<05:27:16.040> it<05:27:16.240> from
05:27:16.548 --> 05:27:16.558 align:start position:0%
post stats like so we can import it from
05:27:16.558 --> 05:27:19.788 align:start position:0%
post stats like so we can import it from
Post<05:27:17.000> stats<05:27:18.000> pass<05:27:18.280> over<05:27:18.600> the<05:27:18.840> post<05:27:19.280> equal<05:27:19.600> to
05:27:19.788 --> 05:27:19.798 align:start position:0%
Post stats pass over the post equal to
05:27:19.798 --> 05:27:22.548 align:start position:0%
Post stats pass over the post equal to
post<05:27:20.160> as<05:27:20.280> a<05:27:20.520> prop<05:27:21.160> as<05:27:21.280> well<05:27:21.400> as<05:27:21.558> the<05:27:21.680> user<05:27:22.040> ID
05:27:22.548 --> 05:27:22.558 align:start position:0%
post as a prop as well as the user ID
05:27:22.558 --> 05:27:26.510 align:start position:0%
post as a prop as well as the user ID
equal<05:27:22.840> to<05:27:23.040> user.<05:27:23.798> ID<05:27:24.798> as<05:27:24.920> a<05:27:25.120> prop<05:27:26.000> if<05:27:26.120> we<05:27:26.280> save
05:27:26.510 --> 05:27:26.520 align:start position:0%
equal to user. ID as a prop if we save
05:27:26.520 --> 05:27:29.230 align:start position:0%
equal to user. ID as a prop if we save
it<05:27:26.920> you<05:27:27.040> can<05:27:27.200> see<05:27:27.520> like<05:27:28.000> and<05:27:28.280> save<05:27:28.840> and<05:27:28.958> we<05:27:29.080> can
05:27:29.230 --> 05:27:29.240 align:start position:0%
it you can see like and save and we can
05:27:29.240 --> 05:27:32.070 align:start position:0%
it you can see like and save and we can
do<05:27:29.440> that<05:27:29.718> right<05:27:29.878> here<05:27:30.080> from<05:27:30.240> the<05:27:30.520> explore<05:27:31.080> page
05:27:32.070 --> 05:27:32.080 align:start position:0%
do that right here from the explore page
05:27:32.080 --> 05:27:35.350 align:start position:0%
do that right here from the explore page
this<05:27:32.440> is<05:27:33.080> great<05:27:34.080> now<05:27:34.320> our<05:27:34.520> explore<05:27:35.000> page<05:27:35.200> is
05:27:35.350 --> 05:27:35.360 align:start position:0%
this is great now our explore page is
05:27:35.360 --> 05:27:37.030 align:start position:0%
this is great now our explore page is
almost<05:27:35.680> done<05:27:36.160> we<05:27:36.280> still<05:27:36.520> have<05:27:36.638> to<05:27:36.760> do<05:27:36.920> the
05:27:37.030 --> 05:27:37.040 align:start position:0%
almost done we still have to do the
05:27:37.040 --> 05:27:38.910 align:start position:0%
almost done we still have to do the
search<05:27:37.440> of<05:27:37.600> course<05:27:38.040> but<05:27:38.160> let's<05:27:38.320> go<05:27:38.440> ahead<05:27:38.718> and
05:27:38.910 --> 05:27:38.920 align:start position:0%
search of course but let's go ahead and
05:27:38.920 --> 05:27:40.948 align:start position:0%
search of course but let's go ahead and
add<05:27:39.200> another<05:27:39.558> post<05:27:40.000> to<05:27:40.120> see<05:27:40.360> how<05:27:40.520> it<05:27:40.680> looks
05:27:40.948 --> 05:27:40.958 align:start position:0%
add another post to see how it looks
05:27:40.958 --> 05:27:44.310 align:start position:0%
add another post to see how it looks
like<05:27:41.638> let's<05:27:41.878> go<05:27:42.040> to<05:27:42.400> create<05:27:43.400> add<05:27:43.558> a<05:27:43.798> caption
05:27:44.310 --> 05:27:44.320 align:start position:0%
like let's go to create add a caption
05:27:44.320 --> 05:27:48.830 align:start position:0%
like let's go to create add a caption
something<05:27:44.718> like<05:27:45.080> learning<05:27:46.080> nextjs<05:27:47.480> 13<05:27:48.480> select
05:27:48.830 --> 05:27:48.840 align:start position:0%
something like learning nextjs 13 select
05:27:48.840 --> 05:27:52.110 align:start position:0%
something like learning nextjs 13 select
the<05:27:49.160> photo<05:27:50.160> add<05:27:50.320> a<05:27:50.520> location<05:27:51.360> something<05:27:51.798> like
05:27:52.110 --> 05:27:52.120 align:start position:0%
the photo add a location something like
05:27:52.120 --> 05:27:56.270 align:start position:0%
the photo add a location something like
add<05:27:52.600> home<05:27:53.600> and<05:27:53.920> add<05:27:54.200> tags<05:27:54.760> such<05:27:54.920> as
05:27:56.270 --> 05:27:56.280 align:start position:0%
add home and add tags such as
05:27:56.280 --> 05:27:58.470 align:start position:0%
add home and add tags such as
nextjs
05:27:58.470 --> 05:27:58.480 align:start position:0%
nextjs
05:27:58.480 --> 05:28:02.990 align:start position:0%
nextjs
learning<05:27:59.480> coding<05:28:00.680> and<05:28:00.798> we<05:28:00.920> can<05:28:01.080> create<05:28:01.320> a<05:28:02.000> post
05:28:02.990 --> 05:28:03.000 align:start position:0%
learning coding and we can create a post
05:28:03.000 --> 05:28:05.910 align:start position:0%
learning coding and we can create a post
this<05:28:03.360> right<05:28:03.558> now<05:28:04.080> works<05:28:04.718> pretty<05:28:04.958> flawlessly<05:28:05.798> I
05:28:05.910 --> 05:28:05.920 align:start position:0%
this right now works pretty flawlessly I
05:28:05.920 --> 05:28:08.190 align:start position:0%
this right now works pretty flawlessly I
got<05:28:06.000> to<05:28:06.200> say<05:28:06.600> we<05:28:06.760> get<05:28:06.920> redirected<05:28:07.480> to<05:28:07.600> the
05:28:08.190 --> 05:28:08.200 align:start position:0%
got to say we get redirected to the
05:28:08.200 --> 05:28:10.750 align:start position:0%
got to say we get redirected to the
homepage<05:28:09.200> and<05:28:09.320> we<05:28:09.440> can<05:28:09.600> immediately<05:28:10.080> see<05:28:10.558> our
05:28:10.750 --> 05:28:10.760 align:start position:0%
homepage and we can immediately see our
05:28:10.760 --> 05:28:13.350 align:start position:0%
homepage and we can immediately see our
new<05:28:11.040> photo<05:28:11.680> like<05:28:11.840> a<05:28:12.040> real<05:28:12.440> social<05:28:12.760> media
05:28:13.350 --> 05:28:13.360 align:start position:0%
new photo like a real social media
05:28:13.360 --> 05:28:16.190 align:start position:0%
new photo like a real social media
application<05:28:14.360> our<05:28:14.680> timestamps<05:28:15.440> work<05:28:15.718> as<05:28:15.878> well
05:28:16.190 --> 05:28:16.200 align:start position:0%
application our timestamps work as well
05:28:16.200 --> 05:28:18.788 align:start position:0%
application our timestamps work as well
so<05:28:16.520> just<05:28:16.798> now<05:28:17.160> at<05:28:17.440> home<05:28:18.120> we<05:28:18.240> have<05:28:18.440> different
05:28:18.788 --> 05:28:18.798 align:start position:0%
so just now at home we have different
05:28:18.798 --> 05:28:21.628 align:start position:0%
so just now at home we have different
tags<05:28:19.280> and<05:28:19.400> we<05:28:19.520> can<05:28:19.718> click<05:28:19.958> it<05:28:20.440> to<05:28:20.718> go<05:28:21.200> to<05:28:21.480> the
05:28:21.628 --> 05:28:21.638 align:start position:0%
tags and we can click it to go to the
05:28:21.638 --> 05:28:24.270 align:start position:0%
tags and we can click it to go to the
Post<05:28:22.000> details<05:28:22.798> we<05:28:22.920> can<05:28:23.120> like<05:28:23.360> it<05:28:23.920> and<05:28:24.040> we<05:28:24.120> can
05:28:24.270 --> 05:28:24.280 align:start position:0%
Post details we can like it and we can
05:28:24.280 --> 05:28:27.190 align:start position:0%
Post details we can like it and we can
also<05:28:24.638> of<05:28:24.798> course<05:28:25.200> head<05:28:25.360> to<05:28:25.638> explore<05:28:26.638> where<05:28:27.040> the
05:28:27.190 --> 05:28:27.200 align:start position:0%
also of course head to explore where the
05:28:27.200 --> 05:28:30.430 align:start position:0%
also of course head to explore where the
new<05:28:27.440> photo<05:28:27.840> now<05:28:28.160> appears<05:28:28.718> at<05:28:28.878> the<05:28:29.120> Top<05:28:29.920> This<05:28:30.160> is
05:28:30.430 --> 05:28:30.440 align:start position:0%
new photo now appears at the Top This is
05:28:30.440 --> 05:28:33.110 align:start position:0%
new photo now appears at the Top This is
is<05:28:30.920> great<05:28:31.878> now<05:28:32.160> what<05:28:32.280> do<05:28:32.360> you<05:28:32.520> say<05:28:32.798> that<05:28:32.920> we
05:28:33.110 --> 05:28:33.120 align:start position:0%
is great now what do you say that we
05:28:33.120 --> 05:28:36.230 align:start position:0%
is great now what do you say that we
focus<05:28:33.440> on<05:28:33.600> the<05:28:33.760> search<05:28:34.320> next<05:28:35.160> so<05:28:35.520> here<05:28:35.958> we<05:28:36.120> have
05:28:36.230 --> 05:28:36.240 align:start position:0%
focus on the search next so here we have
05:28:36.240 --> 05:28:39.190 align:start position:0%
focus on the search next so here we have
a<05:28:36.440> component<05:28:36.920> called<05:28:37.200> search<05:28:37.920> results<05:28:38.920> and<05:28:39.080> if
05:28:39.190 --> 05:28:39.200 align:start position:0%
a component called search results and if
05:28:39.200 --> 05:28:41.830 align:start position:0%
a component called search results and if
you<05:28:39.400> remember<05:28:40.120> we<05:28:40.320> have<05:28:40.520> already<05:28:40.958> created<05:28:41.638> the
05:28:41.830 --> 05:28:41.840 align:start position:0%
you remember we have already created the
05:28:41.840 --> 05:28:44.310 align:start position:0%
you remember we have already created the
searched<05:28:42.360> post<05:28:42.840> right<05:28:43.040> here<05:28:43.600> so<05:28:43.798> let's<05:28:44.080> pass
05:28:44.310 --> 05:28:44.320 align:start position:0%
searched post right here so let's pass
05:28:44.320 --> 05:28:46.868 align:start position:0%
searched post right here so let's pass
some<05:28:44.440> of<05:28:44.600> the<05:28:44.798> values<05:28:45.360> into<05:28:45.958> our<05:28:46.400> search
05:28:46.868 --> 05:28:46.878 align:start position:0%
some of the values into our search
05:28:46.878 --> 05:28:50.430 align:start position:0%
some of the values into our search
results<05:28:47.878> specifically<05:28:48.680> we<05:28:48.798> can<05:28:49.080> pass<05:28:49.400> the<05:28:49.718> is
05:28:50.430 --> 05:28:50.440 align:start position:0%
results specifically we can pass the is
05:28:50.440 --> 05:28:52.548 align:start position:0%
results specifically we can pass the is
search<05:28:51.080> fetching<05:28:51.798> which<05:28:51.920> is<05:28:52.040> going<05:28:52.200> to<05:28:52.320> be<05:28:52.440> the
05:28:52.548 --> 05:28:52.558 align:start position:0%
search fetching which is going to be the
05:28:52.558 --> 05:28:54.868 align:start position:0%
search fetching which is going to be the
loading<05:28:52.958> State<05:28:53.520> equal<05:28:53.840> to<05:28:54.120> is<05:28:54.400> search
05:28:54.868 --> 05:28:54.878 align:start position:0%
loading State equal to is search
05:28:54.878 --> 05:28:57.670 align:start position:0%
loading State equal to is search
fetching<05:28:55.878> as<05:28:56.000> well<05:28:56.120> as<05:28:56.240> the<05:28:56.400> search<05:28:56.840> post
05:28:57.670 --> 05:28:57.680 align:start position:0%
fetching as well as the search post
05:28:57.680 --> 05:28:59.990 align:start position:0%
fetching as well as the search post
which<05:28:57.798> is<05:28:57.878> going<05:28:58.000> to<05:28:58.160> be<05:28:58.480> a<05:28:58.760> query<05:28:59.440> request
05:28:59.990 --> 05:29:00.000 align:start position:0%
which is going to be a query request
05:29:00.000 --> 05:29:02.948 align:start position:0%
which is going to be a query request
coming<05:29:00.520> from<05:29:01.000> our<05:29:01.320> used<05:29:01.638> query<05:29:02.440> finally<05:29:02.878> we
05:29:02.948 --> 05:29:02.958 align:start position:0%
coming from our used query finally we
05:29:02.958 --> 05:29:04.910 align:start position:0%
coming from our used query finally we
can<05:29:03.160> head<05:29:03.400> into<05:29:03.680> this<05:29:03.840> component<05:29:04.440> and<05:29:04.600> we<05:29:04.718> can
05:29:04.910 --> 05:29:04.920 align:start position:0%
can head into this component and we can
05:29:04.920 --> 05:29:07.750 align:start position:0%
can head into this component and we can
start<05:29:05.360> implementing<05:29:06.400> search<05:29:07.400> the<05:29:07.558> first
05:29:07.750 --> 05:29:07.760 align:start position:0%
start implementing search the first
05:29:07.760 --> 05:29:10.510 align:start position:0%
start implementing search the first
thing<05:29:07.920> we<05:29:08.040> have<05:29:08.160> to<05:29:08.360> do<05:29:09.040> is<05:29:09.520> accept<05:29:10.000> those<05:29:10.240> two
05:29:10.510 --> 05:29:10.520 align:start position:0%
thing we have to do is accept those two
05:29:10.520 --> 05:29:14.230 align:start position:0%
thing we have to do is accept those two
props<05:29:11.160> by<05:29:11.280> saying<05:29:11.798> is<05:29:12.320> search<05:29:12.840> fetching<05:29:13.840> and
05:29:14.230 --> 05:29:14.240 align:start position:0%
props by saying is search fetching and
05:29:14.240 --> 05:29:15.470 align:start position:0%
props by saying is search fetching and
search
05:29:15.470 --> 05:29:15.480 align:start position:0%
search
05:29:15.480 --> 05:29:18.230 align:start position:0%
search
posts<05:29:16.480> and<05:29:16.600> this<05:29:16.680> is<05:29:16.798> going<05:29:16.958> to<05:29:17.080> be<05:29:17.240> of<05:29:17.400> a
05:29:18.230 --> 05:29:18.240 align:start position:0%
posts and this is going to be of a
05:29:18.240 --> 05:29:22.110 align:start position:0%
posts and this is going to be of a
type<05:29:19.360> search<05:29:20.600> results
05:29:22.110 --> 05:29:22.120 align:start position:0%
type search results
05:29:22.120 --> 05:29:24.628 align:start position:0%
type search results
props<05:29:23.120> we<05:29:23.200> can<05:29:23.360> of<05:29:23.520> course<05:29:23.760> Define<05:29:24.080> the<05:29:24.360> type
05:29:24.628 --> 05:29:24.638 align:start position:0%
props we can of course Define the type
05:29:24.638 --> 05:29:28.830 align:start position:0%
props we can of course Define the type
right<05:29:24.840> above<05:29:25.558> so<05:29:25.840> type<05:29:26.360> search<05:29:27.000> result<05:29:27.840> props
05:29:28.830 --> 05:29:28.840 align:start position:0%
right above so type search result props
05:29:28.840 --> 05:29:32.110 align:start position:0%
right above so type search result props
it's<05:29:29.040> going<05:29:29.200> to<05:29:29.400> get<05:29:29.600> the<05:29:29.798> is<05:29:30.558> search<05:29:31.320> fetching
05:29:32.110 --> 05:29:32.120 align:start position:0%
it's going to get the is search fetching
05:29:32.120 --> 05:29:34.150 align:start position:0%
it's going to get the is search fetching
which<05:29:32.240> is<05:29:32.360> going<05:29:32.520> to<05:29:32.638> be<05:29:32.718> a<05:29:32.878> Boolean<05:29:33.878> and
05:29:34.150 --> 05:29:34.160 align:start position:0%
which is going to be a Boolean and
05:29:34.160 --> 05:29:36.470 align:start position:0%
which is going to be a Boolean and
search<05:29:34.760> posts<05:29:35.520> which<05:29:35.638> can<05:29:35.798> be<05:29:35.920> a<05:29:36.080> collection
05:29:36.470 --> 05:29:36.480 align:start position:0%
search posts which can be a collection
05:29:36.480 --> 05:29:39.750 align:start position:0%
search posts which can be a collection
of<05:29:37.080> models<05:29:38.080> dot
05:29:39.750 --> 05:29:39.760 align:start position:0%
of models dot
05:29:39.760 --> 05:29:42.788 align:start position:0%
of models dot
document<05:29:40.760> and<05:29:41.000> an<05:29:41.200> array<05:29:41.920> and<05:29:42.080> we<05:29:42.160> can<05:29:42.360> import
05:29:42.788 --> 05:29:42.798 align:start position:0%
document and an array and we can import
05:29:42.798 --> 05:29:45.708 align:start position:0%
document and an array and we can import
that<05:29:43.040> from<05:29:43.520> aite<05:29:44.480> now<05:29:44.760> how<05:29:45.000> is<05:29:45.120> our<05:29:45.320> search
05:29:45.708 --> 05:29:45.718 align:start position:0%
that from aite now how is our search
05:29:45.718 --> 05:29:48.070 align:start position:0%
that from aite now how is our search
going<05:29:45.878> to<05:29:46.040> look<05:29:46.360> like<05:29:47.240> well<05:29:47.440> our<05:29:47.600> search<05:29:47.958> is
05:29:48.070 --> 05:29:48.080 align:start position:0%
going to look like well our search is
05:29:48.080 --> 05:29:50.230 align:start position:0%
going to look like well our search is
going<05:29:48.240> to<05:29:48.360> be<05:29:48.480> a<05:29:48.798> really<05:29:49.240> simple
05:29:50.230 --> 05:29:50.240 align:start position:0%
going to be a really simple
05:29:50.240 --> 05:29:52.548 align:start position:0%
going to be a really simple
component<05:29:51.240> as<05:29:51.320> a<05:29:51.480> matter<05:29:51.680> of<05:29:51.878> fact<05:29:52.240> it's<05:29:52.400> going
05:29:52.548 --> 05:29:52.558 align:start position:0%
component as a matter of fact it's going
05:29:52.558 --> 05:29:54.990 align:start position:0%
component as a matter of fact it's going
to<05:29:52.760> be<05:29:53.080> almost<05:29:53.440> like<05:29:53.600> an<05:29:53.840> if<05:29:54.638> so<05:29:54.760> we're<05:29:54.920> going
05:29:54.990 --> 05:29:55.000 align:start position:0%
to be almost like an if so we're going
05:29:55.000 --> 05:29:57.350 align:start position:0%
to be almost like an if so we're going
to<05:29:55.280> return<05:29:55.520> a<05:29:55.638> couple<05:29:55.840> of<05:29:56.040> different<05:29:56.360> things
05:29:57.350 --> 05:29:57.360 align:start position:0%
to return a couple of different things
05:29:57.360 --> 05:29:59.510 align:start position:0%
to return a couple of different things
if<05:29:57.520> we're<05:29:57.798> fetching<05:29:58.160> the<05:29:58.320> search<05:29:58.760> posts<05:29:59.440> we
05:29:59.510 --> 05:29:59.520 align:start position:0%
if we're fetching the search posts we
05:29:59.520 --> 05:30:01.390 align:start position:0%
if we're fetching the search posts we
can<05:29:59.680> simply<05:30:00.080> return<05:30:00.320> return<05:30:00.840> the<05:30:00.958> loader
05:30:01.390 --> 05:30:01.400 align:start position:0%
can simply return return the loader
05:30:01.400 --> 05:30:04.430 align:start position:0%
can simply return return the loader
component<05:30:02.240> which<05:30:02.400> we<05:30:02.520> have<05:30:02.638> to<05:30:02.878> import<05:30:03.440> from
05:30:04.430 --> 05:30:04.440 align:start position:0%
component which we have to import from
05:30:04.440 --> 05:30:07.470 align:start position:0%
component which we have to import from
loader<05:30:05.440> on<05:30:05.600> the<05:30:05.718> other<05:30:05.958> hand<05:30:06.520> if<05:30:06.840> searched
05:30:07.470 --> 05:30:07.480 align:start position:0%
loader on the other hand if searched
05:30:07.480 --> 05:30:11.628 align:start position:0%
loader on the other hand if searched
posts<05:30:08.480> exist<05:30:09.240> so<05:30:09.480> if<05:30:09.638> search<05:30:10.240> posts.
05:30:11.628 --> 05:30:11.638 align:start position:0%
posts exist so if search posts.
05:30:11.638 --> 05:30:14.708 align:start position:0%
posts exist so if search posts.
documents.<05:30:12.638> length<05:30:13.200> is<05:30:13.400> greater<05:30:13.718> than<05:30:13.958> zero
05:30:14.708 --> 05:30:14.718 align:start position:0%
documents. length is greater than zero
05:30:14.718 --> 05:30:18.070 align:start position:0%
documents. length is greater than zero
then<05:30:14.958> we<05:30:15.080> want<05:30:15.200> to<05:30:15.558> return<05:30:16.320> the<05:30:16.638> same<05:30:17.280> grid
05:30:18.070 --> 05:30:18.080 align:start position:0%
then we want to return the same grid
05:30:18.080 --> 05:30:21.110 align:start position:0%
then we want to return the same grid
post<05:30:18.638> list<05:30:19.200> that<05:30:19.320> we<05:30:19.480> have<05:30:19.638> already<05:30:20.120> created
05:30:21.110 --> 05:30:21.120 align:start position:0%
post list that we have already created
05:30:21.120 --> 05:30:22.910 align:start position:0%
post list that we have already created
but<05:30:21.360> this<05:30:21.558> time<05:30:21.958> we<05:30:22.080> want<05:30:22.160> to<05:30:22.400> pass<05:30:22.638> something
05:30:22.910 --> 05:30:22.920 align:start position:0%
but this time we want to pass something
05:30:22.920 --> 05:30:24.510 align:start position:0%
but this time we want to pass something
else<05:30:23.160> to<05:30:23.320> it<05:30:23.558> so<05:30:23.680> I'm<05:30:23.760> going<05:30:23.878> to<05:30:24.000> put<05:30:24.120> it<05:30:24.280> in<05:30:24.360> a
05:30:24.510 --> 05:30:24.520 align:start position:0%
else to it so I'm going to put it in a
05:30:24.520 --> 05:30:27.310 align:start position:0%
else to it so I'm going to put it in a
new<05:30:24.760> line<05:30:25.200> like<05:30:25.480> so<05:30:26.480> and<05:30:26.600> we<05:30:26.680> can<05:30:26.840> also<05:30:27.120> put
05:30:27.310 --> 05:30:27.320 align:start position:0%
new line like so and we can also put
05:30:27.320 --> 05:30:29.070 align:start position:0%
new line like so and we can also put
this<05:30:27.440> in<05:30:27.558> a<05:30:27.680> new<05:30:27.878> line<05:30:28.040> so<05:30:28.200> it's<05:30:28.360> easier<05:30:28.638> to
05:30:29.070 --> 05:30:29.080 align:start position:0%
this in a new line so it's easier to
05:30:29.080 --> 05:30:31.590 align:start position:0%
this in a new line so it's easier to
understand<05:30:29.440> it's<05:30:29.558> a<05:30:29.680> real<05:30:29.920> function<05:30:30.600> block
05:30:31.590 --> 05:30:31.600 align:start position:0%
understand it's a real function block
05:30:31.600 --> 05:30:34.548 align:start position:0%
understand it's a real function block
there<05:30:31.760> we<05:30:32.000> go<05:30:32.920> so<05:30:33.080> we<05:30:33.160> want<05:30:33.280> to<05:30:33.600> return<05:30:34.240> this
05:30:34.548 --> 05:30:34.558 align:start position:0%
there we go so we want to return this
05:30:34.558 --> 05:30:37.830 align:start position:0%
there we go so we want to return this
grid<05:30:34.878> post<05:30:35.280> list<05:30:36.160> and<05:30:36.280> we<05:30:36.360> need<05:30:36.480> to<05:30:36.760> pass<05:30:37.000> to<05:30:37.200> it
05:30:37.830 --> 05:30:37.840 align:start position:0%
grid post list and we need to pass to it
05:30:37.840 --> 05:30:39.788 align:start position:0%
grid post list and we need to pass to it
posts<05:30:38.600> which<05:30:38.760> now<05:30:38.958> are<05:30:39.120> not<05:30:39.280> just<05:30:39.400> going<05:30:39.520> to<05:30:39.600> be
05:30:39.788 --> 05:30:39.798 align:start position:0%
posts which now are not just going to be
05:30:39.798 --> 05:30:43.310 align:start position:0%
posts which now are not just going to be
explore<05:30:40.320> posts<05:30:41.000> but<05:30:41.200> rather<05:30:41.558> searched
05:30:43.310 --> 05:30:43.320 align:start position:0%
explore posts but rather searched
05:30:43.320 --> 05:30:44.990 align:start position:0%
explore posts but rather searched
posts.
05:30:44.990 --> 05:30:45.000 align:start position:0%
posts.
05:30:45.000 --> 05:30:48.230 align:start position:0%
posts.
documents<05:30:46.000> there<05:30:46.240> we<05:30:46.440> go<05:30:47.280> here<05:30:47.638> tapescript<05:30:48.120> is
05:30:48.230 --> 05:30:48.240 align:start position:0%
documents there we go here tapescript is
05:30:48.240 --> 05:30:50.270 align:start position:0%
documents there we go here tapescript is
complaining<05:30:48.638> a<05:30:48.798> bit<05:30:49.200> I<05:30:49.320> made<05:30:49.558> two<05:30:49.760> mistakes
05:30:50.270 --> 05:30:50.280 align:start position:0%
complaining a bit I made two mistakes
05:30:50.280 --> 05:30:51.948 align:start position:0%
complaining a bit I made two mistakes
first<05:30:50.440> of<05:30:50.600> all<05:30:50.718> I<05:30:50.840> have<05:30:50.958> to<05:30:51.080> spell<05:30:51.400> this<05:30:51.558> prop
05:30:51.948 --> 05:30:51.958 align:start position:0%
first of all I have to spell this prop
05:30:51.958 --> 05:30:53.788 align:start position:0%
first of all I have to spell this prop
correctly<05:30:52.958> and<05:30:53.160> when<05:30:53.280> it<05:30:53.400> comes<05:30:53.558> to<05:30:53.680> the
05:30:53.788 --> 05:30:53.798 align:start position:0%
correctly and when it comes to the
05:30:53.798 --> 05:30:56.150 align:start position:0%
correctly and when it comes to the
search<05:30:54.200> posts<05:30:54.840> it's<05:30:55.080> complaining<05:30:55.638> right<05:30:55.798> now
05:30:56.150 --> 05:30:56.160 align:start position:0%
search posts it's complaining right now
05:30:56.160 --> 05:30:58.708 align:start position:0%
search posts it's complaining right now
that<05:30:56.480> it<05:30:56.638> does<05:30:56.878> not<05:30:57.200> exist<05:30:57.480> on<05:30:57.718> this<05:30:57.920> property
05:30:58.708 --> 05:30:58.718 align:start position:0%
that it does not exist on this property
05:30:58.718 --> 05:31:00.948 align:start position:0%
that it does not exist on this property
we<05:30:58.798> can<05:30:59.040> add<05:30:59.240> a<05:30:59.400> check<05:30:59.798> right<05:30:59.958> here<05:31:00.320> saying<05:31:00.760> if
05:31:00.948 --> 05:31:00.958 align:start position:0%
we can add a check right here saying if
05:31:00.958 --> 05:31:03.548 align:start position:0%
we can add a check right here saying if
search<05:31:01.360> post<05:31:01.798> exists<05:31:02.680> then<05:31:02.958> we<05:31:03.080> can<05:31:03.240> go<05:31:03.320> ahead
05:31:03.548 --> 05:31:03.558 align:start position:0%
search post exists then we can go ahead
05:31:03.558 --> 05:31:05.868 align:start position:0%
search post exists then we can go ahead
and<05:31:03.680> check<05:31:03.878> for<05:31:04.080> the<05:31:04.480> documents<05:31:05.480> this<05:31:05.558> is<05:31:05.718> just
05:31:05.868 --> 05:31:05.878 align:start position:0%
and check for the documents this is just
05:31:05.878 --> 05:31:08.030 align:start position:0%
and check for the documents this is just
a<05:31:06.040> top<05:31:06.280> script<05:31:06.558> warning<05:31:07.080> we<05:31:07.160> can<05:31:07.320> look<05:31:07.480> into<05:31:07.718> it
05:31:08.030 --> 05:31:08.040 align:start position:0%
a top script warning we can look into it
05:31:08.040 --> 05:31:10.590 align:start position:0%
a top script warning we can look into it
later<05:31:09.040> and<05:31:09.280> here<05:31:09.520> it's<05:31:09.680> saying<05:31:10.000> cannot<05:31:10.320> find
05:31:10.590 --> 05:31:10.600 align:start position:0%
later and here it's saying cannot find
05:31:10.600 --> 05:31:12.948 align:start position:0%
later and here it's saying cannot find
search<05:31:11.000> posts<05:31:11.320> did<05:31:11.480> you<05:31:11.558> mean<05:31:11.760> search<05:31:12.160> posts
05:31:12.948 --> 05:31:12.958 align:start position:0%
search posts did you mean search posts
05:31:12.958 --> 05:31:15.430 align:start position:0%
search posts did you mean search posts
yes<05:31:13.200> we<05:31:13.360> indeed<05:31:13.958> did<05:31:14.200> mean<05:31:14.520> that<05:31:14.878> so<05:31:15.120> that's
05:31:15.430 --> 05:31:15.440 align:start position:0%
yes we indeed did mean that so that's
05:31:15.440 --> 05:31:18.150 align:start position:0%
yes we indeed did mean that so that's
good<05:31:15.760> thank<05:31:15.920> you<05:31:16.040> tsrip<05:31:16.558> for<05:31:16.958> letting<05:31:17.280> us<05:31:17.440> know
05:31:18.150 --> 05:31:18.160 align:start position:0%
good thank you tsrip for letting us know
05:31:18.160 --> 05:31:19.910 align:start position:0%
good thank you tsrip for letting us know
and<05:31:18.320> then<05:31:18.440> we're<05:31:18.680> passing<05:31:18.920> the<05:31:19.080> search<05:31:19.480> posts
05:31:19.910 --> 05:31:19.920 align:start position:0%
and then we're passing the search posts
05:31:19.920 --> 05:31:21.948 align:start position:0%
and then we're passing the search posts
into<05:31:20.160> the<05:31:20.320> grid<05:31:20.680> post
05:31:21.948 --> 05:31:21.958 align:start position:0%
into the grid post
05:31:21.958 --> 05:31:24.788 align:start position:0%
into the grid post
list<05:31:22.958> finally<05:31:23.480> if<05:31:23.680> this<05:31:23.798> is<05:31:23.958> not<05:31:24.240> true<05:31:24.600> and
05:31:24.788 --> 05:31:24.798 align:start position:0%
list finally if this is not true and
05:31:24.798 --> 05:31:26.948 align:start position:0%
list finally if this is not true and
this<05:31:24.920> is<05:31:25.080> not<05:31:25.320> true<05:31:26.000> then<05:31:26.240> it<05:31:26.400> must<05:31:26.600> mean<05:31:26.798> that
05:31:26.948 --> 05:31:26.958 align:start position:0%
this is not true then it must mean that
05:31:26.958 --> 05:31:28.990 align:start position:0%
this is not true then it must mean that
we<05:31:27.120> have<05:31:27.280> no<05:31:27.480> searched<05:31:28.000> posts<05:31:28.558> so<05:31:28.718> we<05:31:28.840> can
05:31:28.990 --> 05:31:29.000 align:start position:0%
we have no searched posts so we can
05:31:29.000 --> 05:31:32.070 align:start position:0%
we have no searched posts so we can
simply<05:31:29.440> return<05:31:29.680> a<05:31:29.920> p<05:31:30.520> tag<05:31:31.520> that's<05:31:31.718> going<05:31:31.878> to
05:31:32.070 --> 05:31:32.080 align:start position:0%
simply return a p tag that's going to
05:31:32.080 --> 05:31:35.990 align:start position:0%
simply return a p tag that's going to
say<05:31:32.558> no<05:31:33.200> results<05:31:34.160> found<05:31:35.160> and<05:31:35.280> then<05:31:35.440> we<05:31:35.520> can<05:31:35.680> do
05:31:35.990 --> 05:31:36.000 align:start position:0%
say no results found and then we can do
05:31:36.000 --> 05:31:39.270 align:start position:0%
say no results found and then we can do
a<05:31:36.280> class<05:31:36.600> name<05:31:37.440> of<05:31:37.718> text
05:31:39.270 --> 05:31:39.280 align:start position:0%
a class name of text
05:31:39.280 --> 05:31:44.948 align:start position:0%
a class name of text
dl-4<05:31:40.280> margin<05:31:40.760> top<05:31:41.000> of<05:31:41.160> 10<05:31:42.120> text-<05:31:43.160> Center<05:31:44.160> and<05:31:44.480> W
05:31:44.948 --> 05:31:44.958 align:start position:0%
dl-4 margin top of 10 text- Center and W
05:31:44.958 --> 05:31:46.030 align:start position:0%
dl-4 margin top of 10 text- Center and W
Off
05:31:46.030 --> 05:31:46.040 align:start position:0%
Off
05:31:46.040 --> 05:31:49.350 align:start position:0%
Off
full<05:31:47.040> and<05:31:47.200> this<05:31:47.320> is<05:31:47.520> it<05:31:48.160> this<05:31:48.400> is<05:31:48.680> our<05:31:48.920> search
05:31:49.350 --> 05:31:49.360 align:start position:0%
full and this is it this is our search
05:31:49.360 --> 05:31:51.990 align:start position:0%
full and this is it this is our search
results<05:31:49.840> component<05:31:50.558> that<05:31:50.718> we<05:31:50.878> have<05:31:51.160> here<05:31:51.840> and
05:31:51.990 --> 05:31:52.000 align:start position:0%
results component that we have here and
05:31:52.000 --> 05:31:54.548 align:start position:0%
results component that we have here and
that<05:31:52.120> we're<05:31:52.360> using<05:31:53.240> within<05:31:53.840> our<05:31:54.120> search
05:31:54.548 --> 05:31:54.558 align:start position:0%
that we're using within our search
05:31:54.558 --> 05:31:56.628 align:start position:0%
that we're using within our search
results<05:31:55.558> here<05:31:55.798> we<05:31:55.920> have<05:31:56.040> a<05:31:56.160> warning<05:31:56.440> from
05:31:56.628 --> 05:31:56.638 align:start position:0%
results here we have a warning from
05:31:56.638 --> 05:31:58.750 align:start position:0%
results here we have a warning from
typescript<05:31:57.440> this<05:31:57.520> is<05:31:57.760> okay<05:31:57.920> for<05:31:58.160> now<05:31:58.520> we<05:31:58.600> can
05:31:58.750 --> 05:31:58.760 align:start position:0%
typescript this is okay for now we can
05:31:58.760 --> 05:32:00.788 align:start position:0%
typescript this is okay for now we can
come<05:31:58.958> back<05:31:59.120> to<05:31:59.280> it<05:31:59.440> later<05:31:59.680> on
05:32:00.788 --> 05:32:00.798 align:start position:0%
come back to it later on
05:32:00.798 --> 05:32:03.390 align:start position:0%
come back to it later on
so<05:32:01.120> let's<05:32:01.320> go<05:32:01.440> ahead<05:32:01.718> and<05:32:01.958> test<05:32:02.240> our<05:32:02.520> search<05:32:03.280> we
05:32:03.390 --> 05:32:03.400 align:start position:0%
so let's go ahead and test our search we
05:32:03.400 --> 05:32:04.910 align:start position:0%
so let's go ahead and test our search we
can<05:32:03.558> try<05:32:03.798> searching<05:32:04.160> for<05:32:04.360> something<05:32:04.638> that<05:32:04.798> we
05:32:04.910 --> 05:32:04.920 align:start position:0%
can try searching for something that we
05:32:04.920 --> 05:32:07.430 align:start position:0%
can try searching for something that we
have<05:32:05.040> on<05:32:05.160> our<05:32:05.320> homepage<05:32:06.240> for<05:32:06.440> example<05:32:06.840> nextjs
05:32:07.430 --> 05:32:07.440 align:start position:0%
have on our homepage for example nextjs
05:32:07.440 --> 05:32:11.110 align:start position:0%
have on our homepage for example nextjs
13<05:32:08.400> appears<05:32:08.878> in<05:32:09.200> both<05:32:09.920> we<05:32:10.040> have<05:32:10.200> learning<05:32:10.798> here
05:32:11.110 --> 05:32:11.120 align:start position:0%
13 appears in both we have learning here
05:32:11.120 --> 05:32:13.150 align:start position:0%
13 appears in both we have learning here
and<05:32:11.240> we<05:32:11.360> have<05:32:11.558> ultimate<05:32:12.160> here<05:32:12.520> so<05:32:12.760> let's<05:32:12.958> try
05:32:13.150 --> 05:32:13.160 align:start position:0%
and we have ultimate here so let's try
05:32:13.160 --> 05:32:15.750 align:start position:0%
and we have ultimate here so let's try
to<05:32:13.320> search<05:32:13.680> for<05:32:14.200> something<05:32:14.558> like<05:32:14.798> that<05:32:15.520> let's
05:32:15.750 --> 05:32:15.760 align:start position:0%
to search for something like that let's
05:32:15.760 --> 05:32:19.270 align:start position:0%
to search for something like that let's
try<05:32:16.080> to<05:32:16.240> go<05:32:16.440> for<05:32:16.878> next.js
05:32:19.270 --> 05:32:19.280 align:start position:0%
try to go for next.js
05:32:19.280 --> 05:32:22.948 align:start position:0%
try to go for next.js
it's<05:32:20.280> loading<05:32:20.840> and<05:32:20.958> we<05:32:21.120> get<05:32:21.400> both<05:32:22.000> that's<05:32:22.280> good
05:32:22.948 --> 05:32:22.958 align:start position:0%
it's loading and we get both that's good
05:32:22.958 --> 05:32:26.948 align:start position:0%
it's loading and we get both that's good
both<05:32:23.240> say<05:32:23.558> 13<05:32:24.558> but<05:32:24.840> only<05:32:25.080> one<05:32:25.360> says<05:32:25.840> 13.5<05:32:26.840> the
05:32:26.948 --> 05:32:26.958 align:start position:0%
both say 13 but only one says 13.5 the
05:32:26.958 --> 05:32:28.350 align:start position:0%
both say 13 but only one says 13.5 the
other<05:32:27.120> one<05:32:27.240> is
05:32:28.350 --> 05:32:28.360 align:start position:0%
other one is
05:32:28.360 --> 05:32:31.030 align:start position:0%
other one is
13.6<05:32:29.360> so<05:32:29.520> if<05:32:29.600> we<05:32:29.718> do<05:32:29.920> this<05:32:30.120> this<05:32:30.440> it<05:32:30.558> seems<05:32:30.878> like
05:32:31.030 --> 05:32:31.040 align:start position:0%
13.6 so if we do this this it seems like
05:32:31.040 --> 05:32:33.230 align:start position:0%
13.6 so if we do this this it seems like
it's<05:32:31.280> not<05:32:31.558> ref<05:32:31.920> fetching<05:32:32.240> it<05:32:32.638> it<05:32:32.840> just<05:32:33.040> gives
05:32:33.230 --> 05:32:33.240 align:start position:0%
it's not ref fetching it it just gives
05:32:33.240 --> 05:32:36.270 align:start position:0%
it's not ref fetching it it just gives
us<05:32:33.440> what's<05:32:33.600> already<05:32:34.320> cached<05:32:35.320> so<05:32:35.638> let's<05:32:35.920> go
05:32:36.270 --> 05:32:36.280 align:start position:0%
us what's already cached so let's go
05:32:36.280 --> 05:32:39.350 align:start position:0%
us what's already cached so let's go
into<05:32:37.000> our<05:32:37.360> query<05:32:38.080> for<05:32:38.320> the<05:32:38.480> search<05:32:39.120> that's
05:32:39.350 --> 05:32:39.360 align:start position:0%
into our query for the search that's
05:32:39.360 --> 05:32:43.750 align:start position:0%
into our query for the search that's
going<05:32:39.520> to<05:32:39.878> be<05:32:40.878> search<05:32:41.440> post<05:32:41.840> use<05:32:42.240> search<05:32:42.760> posts
05:32:43.750 --> 05:32:43.760 align:start position:0%
going to be search post use search posts
05:32:43.760 --> 05:32:45.548 align:start position:0%
going to be search post use search posts
and<05:32:43.920> then<05:32:44.200> here<05:32:44.520> we<05:32:44.638> have<05:32:44.798> to<05:32:45.040> validate<05:32:45.440> the
05:32:45.548 --> 05:32:45.558 align:start position:0%
and then here we have to validate the
05:32:45.558 --> 05:32:48.670 align:start position:0%
and then here we have to validate the
query<05:32:46.000> again<05:32:46.718> once<05:32:47.000> the<05:32:47.120> search<05:32:47.480> term<05:32:47.760> changes
05:32:48.670 --> 05:32:48.680 align:start position:0%
query again once the search term changes
05:32:48.680 --> 05:32:51.670 align:start position:0%
query again once the search term changes
so<05:32:48.840> we<05:32:48.920> can<05:32:49.240> pass<05:32:49.760> the<05:32:49.878> search<05:32:50.280> term<05:32:50.760> here<05:32:51.520> as
05:32:51.670 --> 05:32:51.680 align:start position:0%
so we can pass the search term here as
05:32:51.680 --> 05:32:54.270 align:start position:0%
so we can pass the search term here as
the<05:32:51.840> second<05:32:52.558> parameter<05:32:53.558> and<05:32:53.760> now<05:32:54.080> it's<05:32:54.200> going
05:32:54.270 --> 05:32:54.280 align:start position:0%
the second parameter and now it's going
05:32:54.280 --> 05:32:58.788 align:start position:0%
the second parameter and now it's going
to<05:32:54.400> recall<05:32:54.840> it<05:32:55.558> 13.5<05:32:56.558> and<05:32:56.718> then<05:32:57.320> 13.6<05:32:58.320> we<05:32:58.480> still
05:32:58.788 --> 05:32:58.798 align:start position:0%
to recall it 13.5 and then 13.6 we still
05:32:58.798 --> 05:33:01.830 align:start position:0%
to recall it 13.5 and then 13.6 we still
have<05:32:59.120> both<05:32:59.558> but<05:32:59.680> if<05:32:59.798> we<05:33:00.080> search<05:33:00.280> for
05:33:01.830 --> 05:33:01.840 align:start position:0%
have both but if we search for
05:33:01.840 --> 05:33:04.350 align:start position:0%
have both but if we search for
ultimate<05:33:02.840> we<05:33:03.000> only<05:33:03.320> have<05:33:03.600> this<05:33:04.000> and<05:33:04.120> if<05:33:04.240> we
05:33:04.350 --> 05:33:04.360 align:start position:0%
ultimate we only have this and if we
05:33:04.360 --> 05:33:07.070 align:start position:0%
ultimate we only have this and if we
search<05:33:04.600> for
05:33:07.070 --> 05:33:07.080 align:start position:0%
05:33:07.080 --> 05:33:09.548 align:start position:0%
learning<05:33:08.080> we<05:33:08.240> only<05:33:08.480> get<05:33:08.760> this<05:33:09.160> which<05:33:09.320> means
05:33:09.548 --> 05:33:09.558 align:start position:0%
learning we only get this which means
05:33:09.558 --> 05:33:12.430 align:start position:0%
learning we only get this which means
that<05:33:09.680> our<05:33:09.840> search<05:33:10.240> is<05:33:10.440> working<05:33:11.200> properly<05:33:12.200> this
05:33:12.430 --> 05:33:12.440 align:start position:0%
that our search is working properly this
05:33:12.440 --> 05:33:15.670 align:start position:0%
that our search is working properly this
is<05:33:12.920> great<05:33:13.400> to<05:33:14.000> see<05:33:15.000> of<05:33:15.160> course<05:33:15.400> there<05:33:15.520> are
05:33:15.670 --> 05:33:15.680 align:start position:0%
is great to see of course there are
05:33:15.680 --> 05:33:18.750 align:start position:0%
is great to see of course there are
filters<05:33:16.200> here<05:33:16.440> that<05:33:16.600> we<05:33:16.680> can<05:33:16.920> also<05:33:17.240> do<05:33:17.958> and<05:33:18.600> in
05:33:18.750 --> 05:33:18.760 align:start position:0%
filters here that we can also do and in
05:33:18.760 --> 05:33:20.548 align:start position:0%
filters here that we can also do and in
general<05:33:19.120> if<05:33:19.240> we<05:33:19.360> don't<05:33:19.558> have<05:33:19.718> search<05:33:20.280> then<05:33:20.440> we
05:33:20.548 --> 05:33:20.558 align:start position:0%
general if we don't have search then we
05:33:20.558 --> 05:33:22.590 align:start position:0%
general if we don't have search then we
have<05:33:20.718> the<05:33:20.878> explore<05:33:21.680> of<05:33:21.840> course<05:33:22.160> this<05:33:22.280> is<05:33:22.400> the
05:33:22.590 --> 05:33:22.600 align:start position:0%
have the explore of course this is the
05:33:22.600 --> 05:33:23.750 align:start position:0%
have the explore of course this is the
place<05:33:22.878> where<05:33:23.000> we're<05:33:23.160> going<05:33:23.240> to<05:33:23.440> also
05:33:23.750 --> 05:33:23.760 align:start position:0%
place where we're going to also
05:33:23.760 --> 05:33:26.270 align:start position:0%
place where we're going to also
implement<05:33:24.480> the<05:33:24.718> infinite<05:33:25.280> loading<05:33:25.878> so<05:33:26.040> we<05:33:26.120> can
05:33:26.270 --> 05:33:26.280 align:start position:0%
implement the infinite loading so we can
05:33:26.280 --> 05:33:29.390 align:start position:0%
implement the infinite loading so we can
immediately<05:33:26.840> fetch<05:33:27.320> all<05:33:27.520> of<05:33:27.638> the<05:33:27.798> next<05:33:28.400> pages
05:33:29.390 --> 05:33:29.400 align:start position:0%
immediately fetch all of the next pages
05:33:29.400 --> 05:33:30.910 align:start position:0%
immediately fetch all of the next pages
and<05:33:29.600> all<05:33:29.760> of<05:33:30.040> that<05:33:30.200> is<05:33:30.280> going<05:33:30.360> to<05:33:30.480> be<05:33:30.638> pretty
05:33:30.910 --> 05:33:30.920 align:start position:0%
and all of that is going to be pretty
05:33:30.920 --> 05:33:34.230 align:start position:0%
and all of that is going to be pretty
easy<05:33:31.200> to<05:33:31.400> implement<05:33:32.240> using<05:33:32.878> react<05:33:33.400> query<05:33:34.000> and
05:33:34.230 --> 05:33:34.240 align:start position:0%
easy to implement using react query and
05:33:34.240 --> 05:33:36.948 align:start position:0%
easy to implement using react query and
aite<05:33:35.200> so<05:33:35.400> what<05:33:35.520> we<05:33:35.638> can<05:33:35.798> do<05:33:36.120> is<05:33:36.320> first<05:33:36.520> of<05:33:36.638> all
05:33:36.948 --> 05:33:36.958 align:start position:0%
aite so what we can do is first of all
05:33:36.958 --> 05:33:40.590 align:start position:0%
aite so what we can do is first of all
go<05:33:37.240> all<05:33:37.600> the<05:33:37.718> way<05:33:38.160> down<05:33:38.920> and<05:33:39.200> below<05:33:39.718> this<05:33:39.920> div
05:33:40.590 --> 05:33:40.600 align:start position:0%
go all the way down and below this div
05:33:40.600 --> 05:33:42.708 align:start position:0%
go all the way down and below this div
we<05:33:40.718> can<05:33:40.920> create<05:33:41.320> a<05:33:41.520> new<05:33:41.798> Dynamic<05:33:42.280> block<05:33:42.558> of
05:33:42.708 --> 05:33:42.718 align:start position:0%
we can create a new Dynamic block of
05:33:42.718 --> 05:33:46.708 align:start position:0%
we can create a new Dynamic block of
code<05:33:43.360> that<05:33:43.480> says<05:33:44.000> if<05:33:44.760> we<05:33:45.080> have<05:33:45.440> a<05:33:45.600> next<05:33:46.000> page<05:33:46.400> so
05:33:46.708 --> 05:33:46.718 align:start position:0%
code that says if we have a next page so
05:33:46.718 --> 05:33:50.310 align:start position:0%
code that says if we have a next page so
has<05:33:47.000> next<05:33:47.718> page<05:33:48.718> and<05:33:49.120> if<05:33:49.280> there<05:33:49.440> is<05:33:49.638> no<05:33:49.878> search
05:33:50.310 --> 05:33:50.320 align:start position:0%
has next page and if there is no search
05:33:50.320 --> 05:33:54.110 align:start position:0%
has next page and if there is no search
value<05:33:50.958> meaning<05:33:51.360> we<05:33:51.480> are<05:33:51.600> on<05:33:51.760> the<05:33:52.320> explore<05:33:53.320> and
05:33:54.110 --> 05:33:54.120 align:start position:0%
value meaning we are on the explore and
05:33:54.120 --> 05:33:57.150 align:start position:0%
value meaning we are on the explore and
then<05:33:54.280> we<05:33:54.440> want<05:33:54.600> to<05:33:54.718> show<05:33:55.520> a<05:33:55.798> div<05:33:56.798> that's<05:33:57.000> going
05:33:57.150 --> 05:33:57.160 align:start position:0%
then we want to show a div that's going
05:33:57.160 --> 05:33:59.390 align:start position:0%
then we want to show a div that's going
to<05:33:57.320> have<05:33:57.480> a<05:33:57.638> ref<05:33:58.200> this<05:33:58.320> is<05:33:58.480> really<05:33:58.718> important<05:33:59.200> a
05:33:59.390 --> 05:33:59.400 align:start position:0%
to have a ref this is really important a
05:33:59.400 --> 05:34:00.990 align:start position:0%
to have a ref this is really important a
ref
05:34:00.990 --> 05:34:01.000 align:start position:0%
ref
05:34:01.000 --> 05:34:04.788 align:start position:0%
ref
called<05:34:01.520> ref<05:34:02.520> and<05:34:02.680> a<05:34:02.920> class<05:34:03.240> name<05:34:04.120> of<05:34:04.360> margin
05:34:04.788 --> 05:34:04.798 align:start position:0%
called ref and a class name of margin
05:34:04.798 --> 05:34:06.190 align:start position:0%
called ref and a class name of margin
top<05:34:05.040> of
05:34:06.190 --> 05:34:06.200 align:start position:0%
top of
05:34:06.200 --> 05:34:08.590 align:start position:0%
top of
10<05:34:07.200> of<05:34:07.360> course<05:34:07.558> the<05:34:07.680> app<05:34:07.920> is<05:34:08.000> going<05:34:08.160> to<05:34:08.280> break
05:34:08.590 --> 05:34:08.600 align:start position:0%
10 of course the app is going to break
05:34:08.600 --> 05:34:10.230 align:start position:0%
10 of course the app is going to break
now<05:34:08.878> because<05:34:09.120> we<05:34:09.240> haven't<05:34:09.520> yet<05:34:09.680> created<05:34:10.040> this
05:34:10.230 --> 05:34:10.240 align:start position:0%
now because we haven't yet created this
05:34:10.240 --> 05:34:13.430 align:start position:0%
now because we haven't yet created this
ref<05:34:11.240> and<05:34:11.360> we<05:34:11.480> can<05:34:11.638> add<05:34:11.760> a<05:34:11.920> loader<05:34:12.638> right<05:34:12.878> here
05:34:13.430 --> 05:34:13.440 align:start position:0%
ref and we can add a loader right here
05:34:13.440 --> 05:34:16.070 align:start position:0%
ref and we can add a loader right here
when<05:34:13.600> we're<05:34:13.798> loading<05:34:14.080> for<05:34:14.280> the<05:34:14.440> next<05:34:14.760> page<05:34:15.760> now
05:34:16.070 --> 05:34:16.080 align:start position:0%
when we're loading for the next page now
05:34:16.080 --> 05:34:18.070 align:start position:0%
when we're loading for the next page now
why<05:34:16.160> are<05:34:16.280> we<05:34:16.440> adding<05:34:16.680> a<05:34:16.878> ref<05:34:17.400> to<05:34:17.638> this<05:34:17.798> little
05:34:18.070 --> 05:34:18.080 align:start position:0%
why are we adding a ref to this little
05:34:18.080 --> 05:34:19.910 align:start position:0%
why are we adding a ref to this little
div<05:34:18.440> right<05:34:18.600> here<05:34:18.718> at<05:34:18.840> the<05:34:19.000> bottom<05:34:19.558> well<05:34:19.760> once
05:34:19.910 --> 05:34:19.920 align:start position:0%
div right here at the bottom well once
05:34:19.920 --> 05:34:22.150 align:start position:0%
div right here at the bottom well once
we<05:34:20.040> scroll<05:34:20.360> to<05:34:20.558> it<05:34:21.040> and<05:34:21.240> once<05:34:21.480> this<05:34:21.718> reference
05:34:22.150 --> 05:34:22.160 align:start position:0%
we scroll to it and once this reference
05:34:22.160 --> 05:34:24.070 align:start position:0%
we scroll to it and once this reference
gets<05:34:22.320> in<05:34:22.520> view<05:34:23.160> it<05:34:23.280> means<05:34:23.558> we're<05:34:23.718> at<05:34:23.920> the
05:34:24.070 --> 05:34:24.080 align:start position:0%
gets in view it means we're at the
05:34:24.080 --> 05:34:26.110 align:start position:0%
gets in view it means we're at the
bottom<05:34:24.320> of<05:34:24.440> the<05:34:24.638> page<05:34:25.240> and<05:34:25.400> we<05:34:25.480> want<05:34:25.638> to<05:34:25.760> start
05:34:26.110 --> 05:34:26.120 align:start position:0%
bottom of the page and we want to start
05:34:26.120 --> 05:34:28.670 align:start position:0%
bottom of the page and we want to start
loading<05:34:26.680> the<05:34:26.840> new<05:34:27.120> posts<05:34:27.878> so<05:34:28.040> let<05:34:28.120> me<05:34:28.280> show<05:34:28.480> you
05:34:28.670 --> 05:34:28.680 align:start position:0%
loading the new posts so let me show you
05:34:28.680 --> 05:34:31.110 align:start position:0%
loading the new posts so let me show you
how<05:34:28.798> to<05:34:29.000> implement<05:34:29.520> that<05:34:30.120> right<05:34:30.320> at<05:34:30.480> the<05:34:30.680> top
05:34:31.110 --> 05:34:31.120 align:start position:0%
how to implement that right at the top
05:34:31.120 --> 05:34:34.070 align:start position:0%
how to implement that right at the top
we<05:34:31.240> can<05:34:31.480> install<05:34:32.000> a<05:34:32.200> new<05:34:32.798> package<05:34:33.798> this
05:34:34.070 --> 05:34:34.080 align:start position:0%
we can install a new package this
05:34:34.080 --> 05:34:36.910 align:start position:0%
we can install a new package this
package<05:34:34.400> is<05:34:34.558> called<05:34:34.958> react<05:34:35.680> intersection
05:34:36.910 --> 05:34:36.920 align:start position:0%
package is called react intersection
05:34:36.920 --> 05:34:39.270 align:start position:0%
package is called react intersection
Observer<05:34:37.920> you<05:34:38.000> can<05:34:38.120> see<05:34:38.320> it<05:34:38.558> right<05:34:38.760> here<05:34:39.040> on
05:34:39.270 --> 05:34:39.280 align:start position:0%
Observer you can see it right here on
05:34:39.280 --> 05:34:42.190 align:start position:0%
Observer you can see it right here on
mpm<05:34:40.280> you<05:34:40.400> can<05:34:40.600> implement<05:34:41.000> it<05:34:41.200> in<05:34:41.400> Hooks<05:34:42.040> and
05:34:42.190 --> 05:34:42.200 align:start position:0%
mpm you can implement it in Hooks and
05:34:42.200 --> 05:34:44.270 align:start position:0%
mpm you can implement it in Hooks and
it's<05:34:42.320> going<05:34:42.480> to<05:34:42.638> give<05:34:42.760> us<05:34:43.040> access<05:34:43.280> to<05:34:43.520> this<05:34:43.878> use
05:34:44.270 --> 05:34:44.280 align:start position:0%
it's going to give us access to this use
05:34:44.280 --> 05:34:46.830 align:start position:0%
it's going to give us access to this use
in<05:34:44.680> view<05:34:45.400> it's<05:34:45.520> going<05:34:45.680> to<05:34:45.840> be<05:34:46.080> really<05:34:46.360> easy<05:34:46.638> to
05:34:46.830 --> 05:34:46.840 align:start position:0%
in view it's going to be really easy to
05:34:46.840 --> 05:34:49.830 align:start position:0%
in view it's going to be really easy to
monitor<05:34:47.798> specific<05:34:48.240> elements<05:34:49.160> in<05:34:49.360> this<05:34:49.558> case
05:34:49.830 --> 05:34:49.840 align:start position:0%
monitor specific elements in this case
05:34:49.840 --> 05:34:52.070 align:start position:0%
monitor specific elements in this case
that<05:34:50.080> ref<05:34:50.480> at<05:34:50.600> the<05:34:50.760> bottom<05:34:51.520> the<05:34:51.638> only<05:34:51.840> thing<05:34:51.958> we
05:34:52.070 --> 05:34:52.080 align:start position:0%
that ref at the bottom the only thing we
05:34:52.080 --> 05:34:54.948 align:start position:0%
that ref at the bottom the only thing we
have<05:34:52.200> to<05:34:52.360> do<05:34:52.798> is<05:34:53.000> import<05:34:53.360> it<05:34:54.160> attach<05:34:54.400> a<05:34:54.558> ref<05:34:54.798> to
05:34:54.948 --> 05:34:54.958 align:start position:0%
have to do is import it attach a ref to
05:34:54.958 --> 05:34:56.548 align:start position:0%
have to do is import it attach a ref to
it<05:34:55.360> and<05:34:55.480> then<05:34:55.600> we're<05:34:55.718> going<05:34:55.798> to<05:34:55.958> know<05:34:56.200> once<05:34:56.360> we
05:34:56.548 --> 05:34:56.558 align:start position:0%
it and then we're going to know once we
05:34:56.558 --> 05:34:58.990 align:start position:0%
it and then we're going to know once we
reach<05:34:56.840> the<05:34:57.000> bottom<05:34:57.280> of<05:34:57.400> the<05:34:57.558> page<05:34:58.440> again<05:34:58.760> don't
05:34:58.990 --> 05:34:59.000 align:start position:0%
reach the bottom of the page again don't
05:34:59.000 --> 05:35:00.830 align:start position:0%
reach the bottom of the page again don't
read<05:34:59.280> when<05:34:59.480> the<05:34:59.558> wheel<05:35:00.000> when<05:35:00.120> you<05:35:00.200> can<05:35:00.400> find<05:35:00.718> a
05:35:00.830 --> 05:35:00.840 align:start position:0%
read when the wheel when you can find a
05:35:00.840 --> 05:35:03.910 align:start position:0%
read when the wheel when you can find a
simple<05:35:01.280> package<05:35:01.680> like<05:35:02.080> so<05:35:03.080> and<05:35:03.320> we<05:35:03.400> can<05:35:03.558> easily
05:35:03.910 --> 05:35:03.920 align:start position:0%
simple package like so and we can easily
05:35:03.920 --> 05:35:06.670 align:start position:0%
simple package like so and we can easily
install<05:35:04.280> it<05:35:04.480> by<05:35:04.600> running<05:35:04.958> mpm<05:35:05.440> install<05:35:06.080> react
05:35:06.670 --> 05:35:06.680 align:start position:0%
install it by running mpm install react
05:35:06.680 --> 05:35:09.628 align:start position:0%
install it by running mpm install react
intersection<05:35:07.798> Observer<05:35:08.798> there<05:35:08.920> we<05:35:09.120> go<05:35:09.440> the
05:35:09.628 --> 05:35:09.638 align:start position:0%
intersection Observer there we go the
05:35:09.638 --> 05:35:12.030 align:start position:0%
intersection Observer there we go the
package<05:35:09.920> got<05:35:10.120> installed<05:35:10.958> and<05:35:11.120> we<05:35:11.240> can<05:35:11.400> use<05:35:11.638> it
05:35:12.030 --> 05:35:12.040 align:start position:0%
package got installed and we can use it
05:35:12.040 --> 05:35:16.590 align:start position:0%
package got installed and we can use it
by<05:35:12.600> importing<05:35:13.600> the<05:35:13.840> use<05:35:14.320> in<05:35:14.878> view<05:35:15.400> hook<05:35:16.200> coming
05:35:16.590 --> 05:35:16.600 align:start position:0%
by importing the use in view hook coming
05:35:16.600 --> 05:35:20.910 align:start position:0%
by importing the use in view hook coming
from<05:35:17.320> react<05:35:18.280> intersection<05:35:19.600> Observer<05:35:20.600> now
05:35:20.910 --> 05:35:20.920 align:start position:0%
from react intersection Observer now
05:35:20.920 --> 05:35:23.110 align:start position:0%
from react intersection Observer now
right<05:35:21.120> at<05:35:21.280> the<05:35:21.480> top<05:35:21.958> we<05:35:22.080> can<05:35:22.240> declare<05:35:22.680> a<05:35:22.840> new
05:35:23.110 --> 05:35:23.120 align:start position:0%
right at the top we can declare a new
05:35:23.120 --> 05:35:27.708 align:start position:0%
right at the top we can declare a new
ref<05:35:23.958> const<05:35:24.520> ref<05:35:25.360> and<05:35:25.680> in<05:35:26.080> view<05:35:27.080> which<05:35:27.200> is<05:35:27.440> equal
05:35:27.708 --> 05:35:27.718 align:start position:0%
ref const ref and in view which is equal
05:35:27.718 --> 05:35:32.150 align:start position:0%
ref const ref and in view which is equal
to<05:35:28.440> the<05:35:28.638> call<05:35:29.040> of<05:35:29.240> the<05:35:29.360> used<05:35:30.000> in<05:35:30.520> view<05:35:31.200> hook
05:35:32.150 --> 05:35:32.160 align:start position:0%
to the call of the used in view hook
05:35:32.160 --> 05:35:33.590 align:start position:0%
to the call of the used in view hook
just<05:35:32.558> like
05:35:33.590 --> 05:35:33.600 align:start position:0%
just like
05:35:33.600 --> 05:35:37.230 align:start position:0%
just like
so<05:35:34.600> and<05:35:34.840> then<05:35:35.160> we<05:35:35.280> can<05:35:35.480> also<05:35:35.878> import<05:35:36.320> use
05:35:37.230 --> 05:35:37.240 align:start position:0%
so and then we can also import use
05:35:37.240 --> 05:35:40.510 align:start position:0%
so and then we can also import use
effect<05:35:38.240> coming<05:35:38.520> from<05:35:38.878> react<05:35:39.878> we<05:35:40.000> can<05:35:40.200> Define
05:35:40.510 --> 05:35:40.520 align:start position:0%
effect coming from react we can Define
05:35:40.520 --> 05:35:43.270 align:start position:0%
effect coming from react we can Define
it<05:35:40.760> right<05:35:40.878> here<05:35:41.040> at<05:35:41.200> the<05:35:41.400> top<05:35:41.840> by<05:35:42.000> saying<05:35:42.400> use
05:35:43.270 --> 05:35:43.280 align:start position:0%
it right here at the top by saying use
05:35:43.280 --> 05:35:46.910 align:start position:0%
it right here at the top by saying use
effect<05:35:44.280> don't<05:35:44.638> Define<05:35:44.958> it<05:35:45.240> below<05:35:46.040> the<05:35:46.320> if
05:35:46.910 --> 05:35:46.920 align:start position:0%
effect don't Define it below the if
05:35:46.920 --> 05:35:49.470 align:start position:0%
effect don't Define it below the if
statement<05:35:47.920> use<05:35:48.240> effects<05:35:48.600> have<05:35:48.718> to<05:35:48.878> be<05:35:49.120> above
05:35:49.470 --> 05:35:49.480 align:start position:0%
statement use effects have to be above
05:35:49.480 --> 05:35:50.868 align:start position:0%
statement use effects have to be above
all<05:35:50.000> conditional
05:35:50.868 --> 05:35:50.878 align:start position:0%
all conditional
05:35:50.878 --> 05:35:53.190 align:start position:0%
all conditional
renderings<05:35:51.878> and<05:35:52.080> it's<05:35:52.240> going<05:35:52.400> to<05:35:52.600> render
05:35:53.190 --> 05:35:53.200 align:start position:0%
renderings and it's going to render
05:35:53.200 --> 05:35:56.310 align:start position:0%
renderings and it's going to render
whenever<05:35:53.558> the<05:35:53.798> inw<05:35:54.400> variable<05:35:55.040> changes<05:35:55.958> or
05:35:56.310 --> 05:35:56.320 align:start position:0%
whenever the inw variable changes or
05:35:56.320 --> 05:35:58.670 align:start position:0%
whenever the inw variable changes or
whenever<05:35:56.638> the<05:35:56.798> search<05:35:57.600> value
05:35:58.670 --> 05:35:58.680 align:start position:0%
whenever the search value
05:35:58.680 --> 05:36:01.350 align:start position:0%
whenever the search value
changes<05:35:59.760> what<05:35:59.878> we<05:35:59.958> want<05:36:00.080> to<05:36:00.200> do<05:36:00.798> is<05:36:00.920> we<05:36:01.040> want<05:36:01.160> to
05:36:01.350 --> 05:36:01.360 align:start position:0%
changes what we want to do is we want to
05:36:01.360 --> 05:36:05.910 align:start position:0%
changes what we want to do is we want to
check<05:36:02.040> if<05:36:02.600> it<05:36:02.718> is<05:36:03.000> in<05:36:03.480> View<05:36:04.480> and<05:36:04.958> if<05:36:05.280> we're<05:36:05.638> not
05:36:05.910 --> 05:36:05.920 align:start position:0%
check if it is in View and if we're not
05:36:05.920 --> 05:36:07.788 align:start position:0%
check if it is in View and if we're not
searching<05:36:06.360> for<05:36:06.600> something<05:36:07.120> so<05:36:07.280> if<05:36:07.360> there's<05:36:07.558> no
05:36:07.788 --> 05:36:07.798 align:start position:0%
searching for something so if there's no
05:36:07.798 --> 05:36:10.788 align:start position:0%
searching for something so if there's no
search<05:36:08.200> value<05:36:09.160> then<05:36:09.440> we<05:36:09.558> want<05:36:09.680> to<05:36:09.840> fetch<05:36:10.400> next
05:36:10.788 --> 05:36:10.798 align:start position:0%
search value then we want to fetch next
05:36:10.798 --> 05:36:13.990 align:start position:0%
search value then we want to fetch next
page<05:36:11.798> and<05:36:12.080> this<05:36:12.240> is<05:36:12.718> my<05:36:12.958> people<05:36:13.638> how<05:36:13.798> you
05:36:13.990 --> 05:36:14.000 align:start position:0%
page and this is my people how you
05:36:14.000 --> 05:36:16.830 align:start position:0%
page and this is my people how you
implement<05:36:14.798> infinite<05:36:15.280> scroll<05:36:16.200> so<05:36:16.400> let's<05:36:16.600> save
05:36:16.830 --> 05:36:16.840 align:start position:0%
implement infinite scroll so let's save
05:36:16.840 --> 05:36:20.070 align:start position:0%
implement infinite scroll so let's save
it<05:36:17.480> let's<05:36:17.718> go<05:36:17.878> back<05:36:18.000> to<05:36:18.520> application<05:36:19.520> and<05:36:19.718> now
05:36:20.070 --> 05:36:20.080 align:start position:0%
it let's go back to application and now
05:36:20.080 --> 05:36:21.590 align:start position:0%
it let's go back to application and now
as<05:36:20.200> you<05:36:20.320> get<05:36:20.440> to<05:36:20.600> the<05:36:20.760> bottom<05:36:21.200> you<05:36:21.320> should<05:36:21.480> be
05:36:21.590 --> 05:36:21.600 align:start position:0%
as you get to the bottom you should be
05:36:21.600 --> 05:36:24.070 align:start position:0%
as you get to the bottom you should be
able<05:36:21.798> to<05:36:21.878> see<05:36:22.040> the<05:36:22.200> scroll<05:36:22.558> up<05:36:23.520> of<05:36:23.718> course<05:36:23.958> it's
05:36:24.070 --> 05:36:24.080 align:start position:0%
able to see the scroll up of course it's
05:36:24.080 --> 05:36:25.868 align:start position:0%
able to see the scroll up of course it's
not<05:36:24.280> going<05:36:24.440> to<05:36:24.558> give<05:36:24.718> us<05:36:24.920> anything<05:36:25.400> right<05:36:25.558> now
05:36:25.868 --> 05:36:25.878 align:start position:0%
not going to give us anything right now
05:36:25.878 --> 05:36:27.470 align:start position:0%
not going to give us anything right now
because<05:36:26.080> there<05:36:26.200> are<05:36:26.360> no<05:36:26.600> new
05:36:27.470 --> 05:36:27.480 align:start position:0%
because there are no new
05:36:27.480 --> 05:36:29.868 align:start position:0%
because there are no new
posts<05:36:28.480> but<05:36:28.718> if<05:36:28.840> we<05:36:29.000> limit<05:36:29.280> the<05:36:29.400> number<05:36:29.558> of<05:36:29.760> of
05:36:29.868 --> 05:36:29.878 align:start position:0%
posts but if we limit the number of of
05:36:29.878 --> 05:36:32.390 align:start position:0%
posts but if we limit the number of of
posts<05:36:30.240> per<05:36:30.558> page<05:36:31.320> and<05:36:31.558> if<05:36:31.638> we<05:36:31.798> create<05:36:32.120> more
05:36:32.390 --> 05:36:32.400 align:start position:0%
posts per page and if we create more
05:36:32.400 --> 05:36:35.030 align:start position:0%
posts per page and if we create more
posts<05:36:32.920> it's<05:36:33.080> going<05:36:33.280> to<05:36:33.480> work<05:36:34.400> we<05:36:34.520> can<05:36:34.680> test<05:36:34.920> it
05:36:35.030 --> 05:36:35.040 align:start position:0%
posts it's going to work we can test it
05:36:35.040 --> 05:36:38.708 align:start position:0%
posts it's going to work we can test it
out<05:36:35.360> really<05:36:36.120> soon<05:36:37.120> so<05:36:37.680> up<05:36:37.798> to<05:36:38.040> this<05:36:38.240> point
05:36:38.708 --> 05:36:38.718 align:start position:0%
out really soon so up to this point
05:36:38.718 --> 05:36:41.788 align:start position:0%
out really soon so up to this point
we've<05:36:39.000> implemented<05:36:39.840> a<05:36:40.120> lot<05:36:40.600> of<05:36:40.878> stuff<05:36:41.600> so
05:36:41.788 --> 05:36:41.798 align:start position:0%
we've implemented a lot of stuff so
05:36:41.798 --> 05:36:44.310 align:start position:0%
we've implemented a lot of stuff so
let's<05:36:42.000> close<05:36:42.400> these<05:36:42.680> files<05:36:43.480> let's<05:36:43.760> expand
05:36:44.310 --> 05:36:44.320 align:start position:0%
let's close these files let's expand
05:36:44.320 --> 05:36:46.708 align:start position:0%
let's close these files let's expand
this<05:36:44.520> to<05:36:44.718> its<05:36:44.878> full<05:36:45.200> glory<05:36:45.878> and<05:36:46.080> let's<05:36:46.280> see
05:36:46.708 --> 05:36:46.718 align:start position:0%
this to its full glory and let's see
05:36:46.718 --> 05:36:49.030 align:start position:0%
this to its full glory and let's see
what<05:36:46.920> we<05:36:47.080> have<05:36:47.280> implemented<05:36:48.160> up<05:36:48.320> to<05:36:48.558> this
05:36:49.030 --> 05:36:49.040 align:start position:0%
what we have implemented up to this
05:36:49.040 --> 05:36:53.628 align:start position:0%
what we have implemented up to this
point<05:36:50.040> we<05:36:50.320> have<05:36:50.878> a<05:36:51.480> phenomenal<05:36:52.638> registration
05:36:53.628 --> 05:36:53.638 align:start position:0%
point we have a phenomenal registration
05:36:53.638 --> 05:36:56.548 align:start position:0%
point we have a phenomenal registration
and<05:36:53.878> login<05:36:54.240> screen<05:36:55.080> so<05:36:55.400> here<05:36:55.718> we<05:36:55.840> can<05:36:56.040> login
05:36:56.548 --> 05:36:56.558 align:start position:0%
and login screen so here we can login
05:36:56.558 --> 05:36:58.708 align:start position:0%
and login screen so here we can login
into<05:36:56.798> our<05:36:57.040> account<05:36:57.558> or<05:36:57.798> we<05:36:57.920> can<05:36:58.120> sign<05:36:58.400> up<05:36:58.520> for
05:36:58.708 --> 05:36:58.718 align:start position:0%
into our account or we can sign up for
05:36:58.718 --> 05:37:01.670 align:start position:0%
into our account or we can sign up for
an<05:36:58.920> account<05:36:59.280> if<05:36:59.400> we<05:36:59.718> don't<05:36:59.920> have<05:37:00.080> one<05:37:00.680> already
05:37:01.670 --> 05:37:01.680 align:start position:0%
an account if we don't have one already
05:37:01.680 --> 05:37:04.548 align:start position:0%
an account if we don't have one already
and<05:37:01.840> in<05:37:02.080> this<05:37:02.280> case<05:37:02.680> we<05:37:02.798> can<05:37:02.958> log<05:37:03.240> in<05:37:03.760> with<05:37:04.000> our
05:37:04.548 --> 05:37:04.558 align:start position:0%
and in this case we can log in with our
05:37:04.558 --> 05:37:06.548 align:start position:0%
and in this case we can log in with our
password<05:37:05.120> and
05:37:06.548 --> 05:37:06.558 align:start position:0%
password and
05:37:06.558 --> 05:37:09.310 align:start position:0%
password and
email<05:37:07.558> immediately<05:37:08.240> we<05:37:08.360> are<05:37:08.558> redirected<05:37:09.160> to
05:37:09.310 --> 05:37:09.320 align:start position:0%
email immediately we are redirected to
05:37:09.320 --> 05:37:11.270 align:start position:0%
email immediately we are redirected to
our<05:37:09.520> home<05:37:09.760> screen<05:37:10.240> where<05:37:10.400> we<05:37:10.480> can<05:37:10.638> see<05:37:10.958> our
05:37:11.270 --> 05:37:11.280 align:start position:0%
our home screen where we can see our
05:37:11.280 --> 05:37:12.708 align:start position:0%
our home screen where we can see our
great
05:37:12.708 --> 05:37:12.718 align:start position:0%
great
05:37:12.718 --> 05:37:16.830 align:start position:0%
great
posts<05:37:13.718> each<05:37:14.080> post<05:37:14.638> can<05:37:14.840> be<05:37:15.040> liked<05:37:15.760> unliked<05:37:16.600> and
05:37:16.830 --> 05:37:16.840 align:start position:0%
posts each post can be liked unliked and
05:37:16.840 --> 05:37:20.270 align:start position:0%
posts each post can be liked unliked and
also<05:37:17.600> saved<05:37:18.600> let's<05:37:18.798> not<05:37:19.040> forget<05:37:19.638> that<05:37:19.798> we<05:37:20.000> also
05:37:20.270 --> 05:37:20.280 align:start position:0%
also saved let's not forget that we also
05:37:20.280 --> 05:37:22.510 align:start position:0%
also saved let's not forget that we also
have<05:37:20.480> a<05:37:20.680> phenomenal<05:37:21.400> explore<05:37:21.920> page<05:37:22.280> where<05:37:22.440> we
05:37:22.510 --> 05:37:22.520 align:start position:0%
have a phenomenal explore page where we
05:37:22.520 --> 05:37:24.548 align:start position:0%
have a phenomenal explore page where we
can<05:37:22.638> see<05:37:22.920> more<05:37:23.400> posts<05:37:23.840> that<05:37:23.958> are<05:37:24.160> popular
05:37:24.548 --> 05:37:24.558 align:start position:0%
can see more posts that are popular
05:37:24.558 --> 05:37:26.868 align:start position:0%
can see more posts that are popular
today<05:37:25.400> if<05:37:25.480> you<05:37:25.600> want<05:37:25.920> you<05:37:26.000> can<05:37:26.200> add<05:37:26.440> additional
05:37:26.868 --> 05:37:26.878 align:start position:0%
today if you want you can add additional
05:37:26.878 --> 05:37:29.590 align:start position:0%
today if you want you can add additional
filters<05:37:27.878> and<05:37:28.040> we<05:37:28.200> have<05:37:28.558> complete<05:37:29.240> search
05:37:29.590 --> 05:37:29.600 align:start position:0%
filters and we have complete search
05:37:29.600 --> 05:37:31.390 align:start position:0%
filters and we have complete search
search<05:37:30.000> so<05:37:30.160> if<05:37:30.240> you<05:37:30.360> search<05:37:30.600> for<05:37:30.798> something
05:37:31.390 --> 05:37:31.400 align:start position:0%
search so if you search for something
05:37:31.400 --> 05:37:33.708 align:start position:0%
search so if you search for something
it's<05:37:31.558> going<05:37:31.718> to<05:37:31.840> show<05:37:32.120> up<05:37:32.520> and<05:37:32.760> also<05:37:33.080> lead<05:37:33.360> you
05:37:33.708 --> 05:37:33.718 align:start position:0%
it's going to show up and also lead you
05:37:33.718 --> 05:37:37.110 align:start position:0%
it's going to show up and also lead you
to<05:37:34.000> that<05:37:34.200> post<05:37:34.520> Details<05:37:35.240> page<05:37:36.240> also<05:37:36.878> don't
05:37:37.110 --> 05:37:37.120 align:start position:0%
to that post Details page also don't
05:37:37.120 --> 05:37:39.350 align:start position:0%
to that post Details page also don't
forget<05:37:37.638> that<05:37:37.878> everything<05:37:38.280> is<05:37:38.600> completely
05:37:39.350 --> 05:37:39.360 align:start position:0%
forget that everything is completely
05:37:39.360 --> 05:37:42.510 align:start position:0%
forget that everything is completely
mobile<05:37:39.840> responsive<05:37:40.840> and<05:37:41.080> it<05:37:41.280> has<05:37:41.558> this<05:37:41.840> native
05:37:42.510 --> 05:37:42.520 align:start position:0%
mobile responsive and it has this native
05:37:42.520 --> 05:37:45.750 align:start position:0%
mobile responsive and it has this native
mobile<05:37:43.000> UI<05:37:43.958> we've<05:37:44.280> laid<05:37:44.638> down<05:37:44.878> the<05:37:45.040> foundation
05:37:45.750 --> 05:37:45.760 align:start position:0%
mobile UI we've laid down the foundation
05:37:45.760 --> 05:37:48.070 align:start position:0%
mobile UI we've laid down the foundation
for<05:37:46.080> creating<05:37:46.520> something<05:37:46.920> extraordinary<05:37:47.920> a
05:37:48.070 --> 05:37:48.080 align:start position:0%
for creating something extraordinary a
05:37:48.080 --> 05:37:51.070 align:start position:0%
for creating something extraordinary a
fullblown<05:37:48.958> social<05:37:49.280> media<05:37:49.920> application<05:37:50.920> of
05:37:51.070 --> 05:37:51.080 align:start position:0%
fullblown social media application of
05:37:51.080 --> 05:37:52.708 align:start position:0%
fullblown social media application of
course<05:37:51.520> there's<05:37:51.760> a<05:37:51.920> couple<05:37:52.120> of<05:37:52.320> pages<05:37:52.600> that
05:37:52.708 --> 05:37:52.718 align:start position:0%
course there's a couple of pages that
05:37:52.718 --> 05:37:54.990 align:start position:0%
course there's a couple of pages that
are<05:37:52.878> missing<05:37:53.718> such<05:37:53.878> as<05:37:54.040> the<05:37:54.200> People<05:37:54.600> page
05:37:54.990 --> 05:37:55.000 align:start position:0%
are missing such as the People page
05:37:55.000 --> 05:37:57.670 align:start position:0%
are missing such as the People page
where<05:37:55.120> we<05:37:55.240> show<05:37:55.558> all<05:37:55.760> the<05:37:56.080> users<05:37:57.080> the<05:37:57.200> saved
05:37:57.670 --> 05:37:57.680 align:start position:0%
where we show all the users the saved
05:37:57.680 --> 05:37:59.910 align:start position:0%
where we show all the users the saved
page<05:37:58.000> where<05:37:58.120> we<05:37:58.280> simply<05:37:58.600> have<05:37:58.718> to<05:37:58.920> fetch<05:37:59.638> all
05:37:59.910 --> 05:37:59.920 align:start position:0%
page where we simply have to fetch all
05:37:59.920 --> 05:38:02.590 align:start position:0%
page where we simply have to fetch all
the<05:38:00.040> saved<05:38:00.480> posts<05:38:01.120> and<05:38:01.240> then<05:38:01.440> display<05:38:01.878> them
05:38:02.590 --> 05:38:02.600 align:start position:0%
the saved posts and then display them
05:38:02.600 --> 05:38:04.990 align:start position:0%
the saved posts and then display them
these<05:38:02.798> two<05:38:03.040> pages<05:38:03.360> look<05:38:03.680> like<05:38:03.920> this<05:38:04.520> here<05:38:04.840> you
05:38:04.990 --> 05:38:05.000 align:start position:0%
these two pages look like this here you
05:38:05.000 --> 05:38:07.270 align:start position:0%
these two pages look like this here you
fetch<05:38:05.360> people<05:38:05.798> and<05:38:05.920> you<05:38:06.000> show<05:38:06.320> them<05:38:06.920> and<05:38:07.160> if
05:38:07.270 --> 05:38:07.280 align:start position:0%
fetch people and you show them and if
05:38:07.280 --> 05:38:09.270 align:start position:0%
fetch people and you show them and if
you<05:38:07.400> notice<05:38:07.798> the<05:38:08.000> saved<05:38:08.440> it's<05:38:08.600> going<05:38:08.760> to<05:38:08.958> look
05:38:09.270 --> 05:38:09.280 align:start position:0%
you notice the saved it's going to look
05:38:09.280 --> 05:38:12.548 align:start position:0%
you notice the saved it's going to look
almost<05:38:09.718> exactly<05:38:10.200> the<05:38:10.360> same<05:38:11.040> as<05:38:11.200> our<05:38:11.558> explore
05:38:12.548 --> 05:38:12.558 align:start position:0%
almost exactly the same as our explore
05:38:12.558 --> 05:38:14.350 align:start position:0%
almost exactly the same as our explore
that's<05:38:12.798> because<05:38:13.040> we're<05:38:13.320> reusing<05:38:13.958> the<05:38:14.120> same
05:38:14.350 --> 05:38:14.360 align:start position:0%
that's because we're reusing the same
05:38:14.360 --> 05:38:17.230 align:start position:0%
that's because we're reusing the same
grid<05:38:14.718> component<05:38:15.718> finally<05:38:16.520> there<05:38:16.798> is<05:38:17.040> the
05:38:17.230 --> 05:38:17.240 align:start position:0%
grid component finally there is the
05:38:17.240 --> 05:38:19.470 align:start position:0%
grid component finally there is the
profile<05:38:17.680> page<05:38:18.400> where<05:38:18.558> we<05:38:18.638> can<05:38:18.760> see<05:38:18.958> the<05:38:19.120> likes
05:38:19.470 --> 05:38:19.480 align:start position:0%
profile page where we can see the likes
05:38:19.480 --> 05:38:23.390 align:start position:0%
profile page where we can see the likes
as<05:38:19.680> well<05:38:20.680> and<05:38:21.040> the<05:38:21.200> edit<05:38:21.638> profile<05:38:22.638> but<05:38:23.120> I<05:38:23.200> want
05:38:23.390 --> 05:38:23.400 align:start position:0%
as well and the edit profile but I want
05:38:23.400 --> 05:38:25.910 align:start position:0%
as well and the edit profile but I want
you<05:38:23.558> to<05:38:23.798> pause<05:38:24.160> here<05:38:24.320> for<05:38:24.520> a<05:38:24.680> second<05:38:25.520> first<05:38:25.760> of
05:38:25.910 --> 05:38:25.920 align:start position:0%
you to pause here for a second first of
05:38:25.920 --> 05:38:28.430 align:start position:0%
you to pause here for a second first of
all<05:38:26.400> congratulations<05:38:27.040> on<05:38:27.280> coming<05:38:27.760> this<05:38:28.000> far
05:38:28.430 --> 05:38:28.440 align:start position:0%
all congratulations on coming this far
05:38:28.440 --> 05:38:30.548 align:start position:0%
all congratulations on coming this far
into<05:38:28.718> this<05:38:28.878> tutorial<05:38:29.600> it<05:38:29.760> has<05:38:29.920> been<05:38:30.120> a<05:38:30.280> long
05:38:30.548 --> 05:38:30.558 align:start position:0%
into this tutorial it has been a long
05:38:30.558 --> 05:38:33.510 align:start position:0%
into this tutorial it has been a long
one<05:38:31.320> you've<05:38:31.558> shown<05:38:32.040> a<05:38:32.240> lot<05:38:32.480> of<05:38:32.680> dedication<05:38:33.280> to
05:38:33.510 --> 05:38:33.520 align:start position:0%
one you've shown a lot of dedication to
05:38:33.520 --> 05:38:36.390 align:start position:0%
one you've shown a lot of dedication to
learning<05:38:34.040> and<05:38:34.240> trying<05:38:34.680> new<05:38:34.958> things<05:38:35.240> out<05:38:35.878> so
05:38:36.390 --> 05:38:36.400 align:start position:0%
learning and trying new things out so
05:38:36.400 --> 05:38:39.390 align:start position:0%
learning and trying new things out so
pat<05:38:36.638> yourself<05:38:36.958> on<05:38:37.120> the<05:38:37.280> back<05:38:37.680> and<05:38:37.840> be<05:38:38.400> proud
05:38:39.390 --> 05:38:39.400 align:start position:0%
pat yourself on the back and be proud
05:38:39.400 --> 05:38:42.190 align:start position:0%
pat yourself on the back and be proud
over<05:38:39.680> the<05:38:39.878> years<05:38:40.520> many<05:38:40.760> of<05:38:40.920> you<05:38:41.120> have<05:38:41.320> asked<05:38:41.638> me
05:38:42.190 --> 05:38:42.200 align:start position:0%
over the years many of you have asked me
05:38:42.200 --> 05:38:45.070 align:start position:0%
over the years many of you have asked me
how<05:38:42.600> I<05:38:43.160> approach<05:38:43.798> something<05:38:44.360> or<05:38:44.600> develop
05:38:45.070 --> 05:38:45.080 align:start position:0%
how I approach something or develop
05:38:45.080 --> 05:38:47.708 align:start position:0%
how I approach something or develop
something<05:38:46.080> that<05:38:46.320> mindset<05:38:46.878> that<05:38:47.080> developers
05:38:47.708 --> 05:38:47.718 align:start position:0%
something that mindset that developers
05:38:47.718 --> 05:38:50.190 align:start position:0%
something that mindset that developers
have<05:38:48.558> and<05:38:48.718> today<05:38:49.200> I<05:38:49.280> want<05:38:49.440> to<05:38:49.558> do<05:38:49.798> something
05:38:50.190 --> 05:38:50.200 align:start position:0%
have and today I want to do something
05:38:50.200 --> 05:38:52.270 align:start position:0%
have and today I want to do something
special<05:38:51.120> I<05:38:51.200> want<05:38:51.360> to<05:38:51.520> tell<05:38:51.680> you<05:38:51.840> how<05:38:52.040> I
05:38:52.270 --> 05:38:52.280 align:start position:0%
special I want to tell you how I
05:38:52.280 --> 05:38:54.310 align:start position:0%
special I want to tell you how I
approach<05:38:52.718> things<05:38:53.240> for<05:38:53.558> the<05:38:53.798> rest<05:38:54.040> of<05:38:54.200> the
05:38:54.310 --> 05:38:54.320 align:start position:0%
approach things for the rest of the
05:38:54.320 --> 05:38:57.230 align:start position:0%
approach things for the rest of the
features<05:38:55.040> that<05:38:55.200> we'll<05:38:55.400> be<05:38:55.558> building<05:38:56.120> today<05:38:57.120> if
05:38:57.230 --> 05:38:57.240 align:start position:0%
features that we'll be building today if
05:38:57.240 --> 05:38:59.510 align:start position:0%
features that we'll be building today if
you<05:38:57.360> see<05:38:57.958> many<05:38:58.240> people<05:38:58.478> are<05:38:58.718> successfully
05:38:59.510 --> 05:38:59.520 align:start position:0%
you see many people are successfully
05:38:59.520 --> 05:39:01.270 align:start position:0%
you see many people are successfully
able<05:38:59.718> to<05:38:59.840> do<05:39:00.080> something<05:39:00.520> by<05:39:00.638> following<05:39:01.080> a
05:39:01.270 --> 05:39:01.280 align:start position:0%
able to do something by following a
05:39:01.280 --> 05:39:04.270 align:start position:0%
able to do something by following a
tutorial<05:39:01.840> like<05:39:02.120> this<05:39:02.520> or<05:39:02.798> other<05:39:03.160> content<05:39:04.080> but
05:39:04.270 --> 05:39:04.280 align:start position:0%
tutorial like this or other content but
05:39:04.280 --> 05:39:06.430 align:start position:0%
tutorial like this or other content but
their<05:39:04.478> real<05:39:04.840> struggles<05:39:05.400> begin<05:39:05.920> when<05:39:06.080> they're
05:39:06.430 --> 05:39:06.440 align:start position:0%
their real struggles begin when they're
05:39:06.440 --> 05:39:09.468 align:start position:0%
their real struggles begin when they're
faced<05:39:07.000> with<05:39:07.160> something<05:39:07.600> new<05:39:08.600> most<05:39:08.840> of<05:39:09.040> us<05:39:09.240> will
05:39:09.468 --> 05:39:09.478 align:start position:0%
faced with something new most of us will
05:39:09.478 --> 05:39:11.430 align:start position:0%
faced with something new most of us will
still<05:39:09.718> be<05:39:09.958> clueless<05:39:10.718> even<05:39:11.000> though<05:39:11.160> we<05:39:11.280> have
05:39:11.430 --> 05:39:11.440 align:start position:0%
still be clueless even though we have
05:39:11.440 --> 05:39:13.310 align:start position:0%
still be clueless even though we have
done<05:39:11.680> something<05:39:12.040> similar<05:39:12.478> before<05:39:13.160> by
05:39:13.310 --> 05:39:13.320 align:start position:0%
done something similar before by
05:39:13.320 --> 05:39:16.150 align:start position:0%
done something similar before by
following<05:39:13.920> a<05:39:14.120> YouTube<05:39:14.558> tutorial<05:39:15.558> this<05:39:16.000> is
05:39:16.150 --> 05:39:16.160 align:start position:0%
following a YouTube tutorial this is
05:39:16.160 --> 05:39:19.430 align:start position:0%
following a YouTube tutorial this is
known<05:39:16.600> as<05:39:16.840> tutorial<05:39:17.400> hell<05:39:18.200> and<05:39:18.478> in<05:39:18.600> our<05:39:18.760> nextjs
05:39:19.430 --> 05:39:19.440 align:start position:0%
known as tutorial hell and in our nextjs
05:39:19.440 --> 05:39:22.788 align:start position:0%
known as tutorial hell and in our nextjs
course<05:39:20.120> we<05:39:20.280> have<05:39:20.400> tried<05:39:20.680> to<05:39:20.798> solve<05:39:21.638> that<05:39:22.638> we
05:39:22.788 --> 05:39:22.798 align:start position:0%
course we have tried to solve that we
05:39:22.798 --> 05:39:26.030 align:start position:0%
course we have tried to solve that we
have<05:39:23.000> created<05:39:23.760> a<05:39:24.040> So-Cal<05:39:25.040> active<05:39:25.600> lesson
05:39:26.030 --> 05:39:26.040 align:start position:0%
have created a So-Cal active lesson
05:39:26.040 --> 05:39:28.628 align:start position:0%
have created a So-Cal active lesson
learning<05:39:27.040> where<05:39:27.400> you<05:39:27.638> still<05:39:27.958> have<05:39:28.240> all<05:39:28.360> of<05:39:28.520> the
05:39:28.628 --> 05:39:28.638 align:start position:0%
learning where you still have all of the
05:39:28.638 --> 05:39:30.830 align:start position:0%
learning where you still have all of the
lessons<05:39:28.958> that<05:39:29.080> we<05:39:29.160> usually<05:39:29.400> us<05:39:29.760> have<05:39:30.360> such<05:39:30.558> as
05:39:30.830 --> 05:39:30.840 align:start position:0%
lessons that we usually us have such as
05:39:30.840 --> 05:39:32.708 align:start position:0%
lessons that we usually us have such as
setting<05:39:31.280> everything<05:39:31.638> up<05:39:31.958> and<05:39:32.200> coding<05:39:32.520> things
05:39:32.708 --> 05:39:32.718 align:start position:0%
setting everything up and coding things
05:39:32.718 --> 05:39:35.788 align:start position:0%
setting everything up and coding things
from<05:39:33.000> scratch<05:39:34.000> but<05:39:34.280> soon<05:39:34.600> enough<05:39:35.120> we<05:39:35.400> dive
05:39:35.788 --> 05:39:35.798 align:start position:0%
from scratch but soon enough we dive
05:39:35.798 --> 05:39:38.468 align:start position:0%
from scratch but soon enough we dive
into<05:39:36.080> something<05:39:36.478> special<05:39:37.478> and<05:39:37.718> that<05:39:37.878> is
05:39:38.468 --> 05:39:38.478 align:start position:0%
into something special and that is
05:39:38.478 --> 05:39:40.990 align:start position:0%
into something special and that is
active<05:39:39.160> lessons<05:39:40.160> they<05:39:40.360> start<05:39:40.680> from<05:39:40.840> the
05:39:40.990 --> 05:39:41.000 align:start position:0%
active lessons they start from the
05:39:41.000 --> 05:39:43.468 align:start position:0%
active lessons they start from the
sidebar<05:39:41.878> and<05:39:42.080> then<05:39:42.638> whenever<05:39:42.958> you<05:39:43.120> want<05:39:43.240> to
05:39:43.468 --> 05:39:43.478 align:start position:0%
sidebar and then whenever you want to
05:39:43.478 --> 05:39:45.628 align:start position:0%
sidebar and then whenever you want to
implement<05:39:44.000> something<05:39:44.760> before<05:39:45.040> we<05:39:45.160> do<05:39:45.320> it
05:39:45.628 --> 05:39:45.638 align:start position:0%
implement something before we do it
05:39:45.638 --> 05:39:48.150 align:start position:0%
implement something before we do it
together<05:39:46.160> you<05:39:46.360> have<05:39:46.478> to<05:39:46.638> do<05:39:46.798> it<05:39:47.000> on<05:39:47.160> your
05:39:48.150 --> 05:39:48.160 align:start position:0%
together you have to do it on your
05:39:48.160 --> 05:39:50.990 align:start position:0%
together you have to do it on your
own<05:39:49.160> let<05:39:49.280> me<05:39:49.440> give<05:39:49.520> you<05:39:49.638> an<05:39:49.798> example<05:39:50.638> for<05:39:50.840> the
05:39:50.990 --> 05:39:51.000 align:start position:0%
own let me give you an example for the
05:39:51.000 --> 05:39:53.628 align:start position:0%
own let me give you an example for the
homepage<05:39:51.558> here<05:39:51.878> you<05:39:52.040> have<05:39:52.160> to<05:39:52.360> create<05:39:53.080> a
05:39:53.628 --> 05:39:53.638 align:start position:0%
homepage here you have to create a
05:39:53.638 --> 05:39:57.070 align:start position:0%
homepage here you have to create a
question<05:39:54.080> card<05:39:54.680> UI<05:39:55.680> so<05:39:56.240> here<05:39:56.600> we<05:39:56.760> have<05:39:56.878> a
05:39:57.070 --> 05:39:57.080 align:start position:0%
question card UI so here we have a
05:39:57.080 --> 05:39:59.590 align:start position:0%
question card UI so here we have a
complete<05:39:57.840> active<05:39:58.240> lesson<05:39:58.840> that<05:39:59.040> guides<05:39:59.478> you
05:39:59.590 --> 05:39:59.600 align:start position:0%
complete active lesson that guides you
05:39:59.600 --> 05:40:01.628 align:start position:0%
complete active lesson that guides you
how<05:39:59.718> to<05:39:59.878> do<05:40:00.120> that<05:40:00.760> specifically<05:40:01.360> with<05:40:01.520> the
05:40:01.628 --> 05:40:01.638 align:start position:0%
how to do that specifically with the
05:40:01.638 --> 05:40:03.788 align:start position:0%
how to do that specifically with the
mindset<05:40:02.080> part<05:40:02.638> teaching<05:40:03.040> you<05:40:03.440> how<05:40:03.558> to
05:40:03.788 --> 05:40:03.798 align:start position:0%
mindset part teaching you how to
05:40:03.798 --> 05:40:06.030 align:start position:0%
mindset part teaching you how to
approach<05:40:04.120> it<05:40:04.360> like<05:40:04.520> a<05:40:04.680> real<05:40:04.958> developer<05:40:05.878> it
05:40:06.030 --> 05:40:06.040 align:start position:0%
approach it like a real developer it
05:40:06.040 --> 05:40:07.670 align:start position:0%
approach it like a real developer it
gives<05:40:06.240> you<05:40:06.400> something<05:40:06.638> to<05:40:06.840> think<05:40:07.040> about
05:40:07.670 --> 05:40:07.680 align:start position:0%
gives you something to think about
05:40:07.680 --> 05:40:10.708 align:start position:0%
gives you something to think about
additional<05:40:08.240> resources<05:40:09.240> and<05:40:09.520> even<05:40:09.878> hints<05:40:10.558> that
05:40:10.708 --> 05:40:10.718 align:start position:0%
additional resources and even hints that
05:40:10.718 --> 05:40:13.150 align:start position:0%
additional resources and even hints that
you<05:40:10.840> can<05:40:11.040> uncover<05:40:11.798> by<05:40:12.000> hovering<05:40:12.440> over<05:40:13.040> and
05:40:13.150 --> 05:40:13.160 align:start position:0%
you can uncover by hovering over and
05:40:13.160 --> 05:40:15.110 align:start position:0%
you can uncover by hovering over and
then<05:40:13.280> in<05:40:13.400> the<05:40:13.558> next<05:40:13.798> module<05:40:14.478> I<05:40:14.638> teach<05:40:14.840> you<05:40:15.000> how
05:40:15.110 --> 05:40:15.120 align:start position:0%
then in the next module I teach you how
05:40:15.120 --> 05:40:18.070 align:start position:0%
then in the next module I teach you how
to<05:40:15.240> do<05:40:15.440> it<05:40:15.760> from<05:40:16.080> scratch<05:40:16.558> in<05:40:16.718> a<05:40:16.878> long<05:40:17.200> lecture
05:40:18.070 --> 05:40:18.080 align:start position:0%
to do it from scratch in a long lecture
05:40:18.080 --> 05:40:20.468 align:start position:0%
to do it from scratch in a long lecture
and<05:40:18.320> why<05:40:18.440> am<05:40:18.520> I<05:40:18.638> telling<05:40:18.920> you<05:40:19.120> this<05:40:20.080> well<05:40:20.400> I
05:40:20.468 --> 05:40:20.478 align:start position:0%
and why am I telling you this well I
05:40:20.478 --> 05:40:22.990 align:start position:0%
and why am I telling you this well I
don't<05:40:20.718> really<05:40:20.958> believe<05:40:21.478> in<05:40:21.638> tutorial<05:40:22.160> hell
05:40:22.990 --> 05:40:23.000 align:start position:0%
don't really believe in tutorial hell
05:40:23.000 --> 05:40:25.350 align:start position:0%
don't really believe in tutorial hell
watching<05:40:23.400> tutorials<05:40:23.920> is<05:40:24.160> great<05:40:24.840> but<05:40:25.120> what<05:40:25.240> I
05:40:25.350 --> 05:40:25.360 align:start position:0%
watching tutorials is great but what I
05:40:25.360 --> 05:40:28.628 align:start position:0%
watching tutorials is great but what I
believe<05:40:25.638> is<05:40:25.840> missing<05:40:26.440> is<05:40:26.638> the<05:40:26.798> thinking<05:40:27.638> part
05:40:28.628 --> 05:40:28.638 align:start position:0%
believe is missing is the thinking part
05:40:28.638 --> 05:40:30.750 align:start position:0%
believe is missing is the thinking part
when<05:40:28.760> you're<05:40:28.920> watching<05:40:29.400> a<05:40:29.520> video<05:40:30.240> you<05:40:30.400> have<05:40:30.478> to
05:40:30.750 --> 05:40:30.760 align:start position:0%
when you're watching a video you have to
05:40:30.760 --> 05:40:33.070 align:start position:0%
when you're watching a video you have to
stop<05:40:31.080> and<05:40:31.280> ask<05:40:31.520> yourself<05:40:32.440> how<05:40:32.638> would<05:40:32.878> I
05:40:33.070 --> 05:40:33.080 align:start position:0%
stop and ask yourself how would I
05:40:33.080 --> 05:40:35.628 align:start position:0%
stop and ask yourself how would I
approach<05:40:33.440> it<05:40:33.958> and<05:40:34.200> only<05:40:34.718> then<05:40:35.200> watch<05:40:35.478> the
05:40:35.628 --> 05:40:35.638 align:start position:0%
approach it and only then watch the
05:40:35.638 --> 05:40:38.590 align:start position:0%
approach it and only then watch the
solution<05:40:36.558> but<05:40:36.760> very<05:40:36.958> few<05:40:37.280> of<05:40:37.360> us<05:40:37.520> do<05:40:37.760> that<05:40:38.400> and
05:40:38.590 --> 05:40:38.600 align:start position:0%
solution but very few of us do that and
05:40:38.600 --> 05:40:41.030 align:start position:0%
solution but very few of us do that and
this<05:40:38.718> is<05:40:38.878> why<05:40:39.000> we<05:40:39.120> blame<05:40:39.320> it<05:40:39.478> on<05:40:39.638> tutorial<05:40:40.120> hell
05:40:41.030 --> 05:40:41.040 align:start position:0%
this is why we blame it on tutorial hell
05:40:41.040 --> 05:40:42.868 align:start position:0%
this is why we blame it on tutorial hell
and<05:40:41.320> why<05:40:41.478> you're<05:40:41.718> missing<05:40:42.080> that<05:40:42.240> developer
05:40:42.868 --> 05:40:42.878 align:start position:0%
and why you're missing that developer
05:40:42.878 --> 05:40:45.628 align:start position:0%
and why you're missing that developer
mindset<05:40:43.878> that's<05:40:44.160> why<05:40:44.360> in<05:40:44.478> our<05:40:44.600> next<05:40:44.840> GS<05:40:45.280> course
05:40:45.628 --> 05:40:45.638 align:start position:0%
mindset that's why in our next GS course
05:40:45.638 --> 05:40:48.070 align:start position:0%
mindset that's why in our next GS course
we<05:40:45.798> have<05:40:46.000> scattered<05:40:46.600> around<05:40:47.440> so<05:40:47.680> many<05:40:47.920> of
05:40:48.070 --> 05:40:48.080 align:start position:0%
we have scattered around so many of
05:40:48.080 --> 05:40:50.030 align:start position:0%
we have scattered around so many of
these<05:40:48.400> active<05:40:48.760> lessons<05:40:49.360> so<05:40:49.520> that<05:40:49.638> you<05:40:49.760> can
05:40:50.030 --> 05:40:50.040 align:start position:0%
these active lessons so that you can
05:40:50.040 --> 05:40:53.270 align:start position:0%
these active lessons so that you can
actually<05:40:50.400> learn<05:40:50.958> by<05:40:51.120> building<05:40:52.120> remember<05:40:53.000> good
05:40:53.270 --> 05:40:53.280 align:start position:0%
actually learn by building remember good
05:40:53.280 --> 05:40:55.110 align:start position:0%
actually learn by building remember good
developers<05:40:53.920> don't<05:40:54.200> have<05:40:54.440> someone<05:40:54.760> holding
05:40:55.110 --> 05:40:55.120 align:start position:0%
developers don't have someone holding
05:40:55.120 --> 05:40:57.390 align:start position:0%
developers don't have someone holding
their<05:40:55.320> hands<05:40:56.120> they<05:40:56.320> figure<05:40:56.718> things<05:40:56.958> out<05:40:57.240> on
05:40:57.390 --> 05:40:57.400 align:start position:0%
their hands they figure things out on
05:40:57.400 --> 05:40:59.868 align:start position:0%
their hands they figure things out on
their<05:40:57.718> own<05:40:58.718> because<05:40:58.958> they<05:40:59.120> have<05:40:59.440> developed
05:40:59.868 --> 05:40:59.878 align:start position:0%
their own because they have developed
05:40:59.878 --> 05:41:02.110 align:start position:0%
their own because they have developed
their<05:41:00.080> mindset<05:41:00.878> I<05:41:00.958> don't<05:41:01.200> have<05:41:01.360> any<05:41:01.638> graphics
05:41:02.110 --> 05:41:02.120 align:start position:0%
their mindset I don't have any graphics
05:41:02.120 --> 05:41:04.310 align:start position:0%
their mindset I don't have any graphics
right<05:41:02.320> now<05:41:02.760> but<05:41:02.920> just<05:41:03.200> pause<05:41:03.478> for<05:41:03.638> a<05:41:03.840> second
05:41:04.310 --> 05:41:04.320 align:start position:0%
right now but just pause for a second
05:41:04.320 --> 05:41:06.788 align:start position:0%
right now but just pause for a second
and<05:41:04.520> listen<05:41:05.400> there's<05:41:05.600> an<05:41:05.760> old<05:41:06.040> saying<05:41:06.638> that
05:41:06.788 --> 05:41:06.798 align:start position:0%
and listen there's an old saying that
05:41:06.798 --> 05:41:08.990 align:start position:0%
and listen there's an old saying that
says<05:41:07.440> give<05:41:07.558> a<05:41:07.680> man<05:41:07.878> a<05:41:08.040> fish<05:41:08.478> and<05:41:08.600> you'll<05:41:08.760> feed
05:41:08.990 --> 05:41:09.000 align:start position:0%
says give a man a fish and you'll feed
05:41:09.000 --> 05:41:11.510 align:start position:0%
says give a man a fish and you'll feed
him<05:41:09.160> for<05:41:09.280> a<05:41:09.478> day<05:41:10.080> teach<05:41:10.320> a<05:41:10.440> man<05:41:10.680> how<05:41:10.798> to<05:41:11.000> fish
05:41:11.510 --> 05:41:11.520 align:start position:0%
him for a day teach a man how to fish
05:41:11.520 --> 05:41:14.070 align:start position:0%
him for a day teach a man how to fish
and<05:41:11.638> you'll<05:41:11.840> feed<05:41:12.040> him<05:41:12.200> for<05:41:12.320> a<05:41:12.798> lifetime<05:41:13.798> for
05:41:14.070 --> 05:41:14.080 align:start position:0%
and you'll feed him for a lifetime for
05:41:14.080 --> 05:41:16.430 align:start position:0%
and you'll feed him for a lifetime for
that<05:41:14.320> reason<05:41:14.878> in<05:41:15.040> this<05:41:15.280> free<05:41:15.478> YouTube<05:41:15.840> video<05:41:16.360> I
05:41:16.430 --> 05:41:16.440 align:start position:0%
that reason in this free YouTube video I
05:41:16.440 --> 05:41:17.868 align:start position:0%
that reason in this free YouTube video I
want<05:41:16.558> to<05:41:16.718> give<05:41:16.840> you<05:41:16.958> a<05:41:17.120> glimpse<05:41:17.440> of<05:41:17.600> what<05:41:17.718> we
05:41:17.868 --> 05:41:17.878 align:start position:0%
want to give you a glimpse of what we
05:41:17.878 --> 05:41:20.310 align:start position:0%
want to give you a glimpse of what we
have<05:41:18.000> in<05:41:18.080> our<05:41:18.280> course<05:41:19.120> by<05:41:19.320> introducing<05:41:20.000> some
05:41:20.310 --> 05:41:20.320 align:start position:0%
have in our course by introducing some
05:41:20.320 --> 05:41:22.868 align:start position:0%
have in our course by introducing some
active<05:41:20.680> lessons<05:41:21.360> for<05:41:21.558> the<05:41:21.878> remaining<05:41:22.240> pages
05:41:22.868 --> 05:41:22.878 align:start position:0%
active lessons for the remaining pages
05:41:22.878 --> 05:41:25.070 align:start position:0%
active lessons for the remaining pages
to<05:41:23.040> see<05:41:23.360> how<05:41:23.680> you<05:41:24.080> will<05:41:24.320> approach<05:41:24.680> building
05:41:25.070 --> 05:41:25.080 align:start position:0%
to see how you will approach building
05:41:25.080 --> 05:41:27.390 align:start position:0%
to see how you will approach building
them<05:41:25.718> I<05:41:25.840> hope<05:41:26.000> you're<05:41:26.240> excited<05:41:26.760> to<05:41:27.000> continue
05:41:27.390 --> 05:41:27.400 align:start position:0%
them I hope you're excited to continue
05:41:27.400 --> 05:41:29.948 align:start position:0%
them I hope you're excited to continue
with<05:41:27.558> this<05:41:27.840> project<05:41:28.558> by<05:41:28.718> learning<05:41:29.638> while
05:41:29.948 --> 05:41:29.958 align:start position:0%
with this project by learning while
05:41:29.958 --> 05:41:33.708 align:start position:0%
with this project by learning while
doing<05:41:30.878> so<05:41:31.120> let's<05:41:31.360> get<05:41:31.798> started<05:41:32.798> and<05:41:33.080> I<05:41:33.280> proudly
05:41:33.708 --> 05:41:33.718 align:start position:0%
doing so let's get started and I proudly
05:41:33.718 --> 05:41:36.670 align:start position:0%
doing so let's get started and I proudly
present<05:41:34.000> to<05:41:34.160> you<05:41:34.878> active<05:41:35.280> lessons<05:41:36.000> for<05:41:36.400> our
05:41:36.670 --> 05:41:36.680 align:start position:0%
present to you active lessons for our
05:41:36.680 --> 05:41:39.270 align:start position:0%
present to you active lessons for our
snapgram<05:41:37.520> application<05:41:38.520> the<05:41:38.680> link<05:41:38.958> is<05:41:39.080> going
05:41:39.270 --> 05:41:39.280 align:start position:0%
snapgram application the link is going
05:41:39.280 --> 05:41:41.548 align:start position:0%
snapgram application the link is going
to<05:41:39.400> be<05:41:39.600> down<05:41:39.878> in<05:41:40.000> the<05:41:40.200> description<05:41:41.000> the<05:41:41.200> first
05:41:41.548 --> 05:41:41.558 align:start position:0%
to be down in the description the first
05:41:41.558 --> 05:41:43.750 align:start position:0%
to be down in the description the first
active<05:41:41.878> lesson<05:41:42.360> is<05:41:42.520> about<05:41:42.878> implementing<05:41:43.558> the
05:41:43.750 --> 05:41:43.760 align:start position:0%
active lesson is about implementing the
05:41:43.760 --> 05:41:46.310 align:start position:0%
active lesson is about implementing the
infinite<05:41:44.320> scroll<05:41:45.320> and<05:41:45.600> this<05:41:45.680> is<05:41:45.840> the<05:41:45.958> feature
05:41:46.310 --> 05:41:46.320 align:start position:0%
infinite scroll and this is the feature
05:41:46.320 --> 05:41:48.270 align:start position:0%
infinite scroll and this is the feature
that<05:41:46.440> we<05:41:46.558> have<05:41:46.718> already<05:41:47.040> built<05:41:47.680> so<05:41:47.920> I<05:41:48.040> have
05:41:48.270 --> 05:41:48.280 align:start position:0%
that we have already built so I have
05:41:48.280 --> 05:41:50.270 align:start position:0%
that we have already built so I have
specifically<05:41:48.878> introduced<05:41:49.440> this<05:41:49.558> one<05:41:49.920> to<05:41:50.120> go
05:41:50.270 --> 05:41:50.280 align:start position:0%
specifically introduced this one to go
05:41:50.280 --> 05:41:52.230 align:start position:0%
specifically introduced this one to go
over<05:41:50.558> it<05:41:50.920> and<05:41:51.040> to<05:41:51.200> show<05:41:51.440> you<05:41:51.798> how<05:41:51.920> you're<05:41:52.080> going
05:41:52.230 --> 05:41:52.240 align:start position:0%
over it and to show you how you're going
05:41:52.240 --> 05:41:54.788 align:start position:0%
over it and to show you how you're going
to<05:41:52.400> do<05:41:52.638> the<05:41:52.760> future<05:41:53.200> ones<05:41:53.600> on<05:41:53.760> your<05:41:53.920> own<05:41:54.600> now
05:41:54.788 --> 05:41:54.798 align:start position:0%
to do the future ones on your own now
05:41:54.798 --> 05:41:56.628 align:start position:0%
to do the future ones on your own now
that<05:41:54.958> you<05:41:55.080> know<05:41:55.440> how<05:41:55.638> we<05:41:55.798> did<05:41:56.080> this<05:41:56.200> one
05:41:56.628 --> 05:41:56.638 align:start position:0%
that you know how we did this one
05:41:56.638 --> 05:41:58.948 align:start position:0%
that you know how we did this one
together<05:41:57.360> so<05:41:57.600> the<05:41:57.798> task<05:41:58.200> and<05:41:58.360> the<05:41:58.478> mission<05:41:58.840> is
05:41:58.948 --> 05:41:58.958 align:start position:0%
together so the task and the mission is
05:41:58.958 --> 05:42:01.350 align:start position:0%
together so the task and the mission is
to<05:41:59.360> think<05:41:59.718> and<05:41:59.920> try<05:42:00.320> the<05:42:00.478> infinite<05:42:00.840> Scrolls<05:42:01.240> in
05:42:01.350 --> 05:42:01.360 align:start position:0%
to think and try the infinite Scrolls in
05:42:01.360 --> 05:42:04.350 align:start position:0%
to think and try the infinite Scrolls in
the<05:42:01.520> application<05:42:02.360> for<05:42:02.600> the<05:42:02.798> home<05:42:03.478> users<05:42:04.080> and
05:42:04.350 --> 05:42:04.360 align:start position:0%
the application for the home users and
05:42:04.360 --> 05:42:06.390 align:start position:0%
the application for the home users and
profile<05:42:04.798> Pages<05:42:05.680> even<05:42:05.958> though<05:42:06.120> we<05:42:06.240> have
05:42:06.390 --> 05:42:06.400 align:start position:0%
profile Pages even though we have
05:42:06.400 --> 05:42:08.350 align:start position:0%
profile Pages even though we have
already<05:42:06.798> implemented<05:42:07.360> it<05:42:07.520> for<05:42:07.718> the<05:42:07.878> explore
05:42:08.350 --> 05:42:08.360 align:start position:0%
already implemented it for the explore
05:42:08.360 --> 05:42:10.910 align:start position:0%
already implemented it for the explore
page<05:42:09.040> you<05:42:09.160> can<05:42:09.400> also<05:42:09.680> make<05:42:09.878> it<05:42:10.040> go<05:42:10.400> right<05:42:10.638> here
05:42:10.910 --> 05:42:10.920 align:start position:0%
page you can also make it go right here
05:42:10.920 --> 05:42:14.670 align:start position:0%
page you can also make it go right here
in<05:42:11.080> the<05:42:11.558> homepage<05:42:12.558> so<05:42:13.160> here<05:42:13.680> we<05:42:13.878> provided<05:42:14.320> you
05:42:14.670 --> 05:42:14.680 align:start position:0%
in the homepage so here we provided you
05:42:14.680 --> 05:42:17.310 align:start position:0%
in the homepage so here we provided you
some<05:42:15.080> examples<05:42:16.080> saying<05:42:16.520> that<05:42:16.718> you<05:42:16.798> can<05:42:17.000> visit
05:42:17.310 --> 05:42:17.320 align:start position:0%
some examples saying that you can visit
05:42:17.320 --> 05:42:19.590 align:start position:0%
some examples saying that you can visit
the<05:42:17.478> original<05:42:18.040> Instagram<05:42:18.600> application<05:42:19.440> and
05:42:19.590 --> 05:42:19.600 align:start position:0%
the original Instagram application and
05:42:19.600 --> 05:42:21.708 align:start position:0%
the original Instagram application and
then<05:42:19.798> see<05:42:20.160> how<05:42:20.400> every<05:42:20.600> time<05:42:20.760> you<05:42:20.878> scroll<05:42:21.280> down
05:42:21.708 --> 05:42:21.718 align:start position:0%
then see how every time you scroll down
05:42:21.718 --> 05:42:23.788 align:start position:0%
then see how every time you scroll down
new<05:42:22.000> posts<05:42:22.440> appear<05:42:23.360> and<05:42:23.478> then<05:42:23.600> some
05:42:23.788 --> 05:42:23.798 align:start position:0%
new posts appear and then some
05:42:23.798 --> 05:42:25.948 align:start position:0%
new posts appear and then some
additional<05:42:24.240> resources<05:42:24.798> as<05:42:24.958> well<05:42:25.520> such<05:42:25.680> as<05:42:25.798> the
05:42:25.948 --> 05:42:25.958 align:start position:0%
additional resources as well such as the
05:42:25.958 --> 05:42:28.868 align:start position:0%
additional resources as well such as the
query<05:42:26.320> key<05:42:26.798> query<05:42:27.200> function<05:42:27.840> infinite<05:42:28.280> query
05:42:28.868 --> 05:42:28.878 align:start position:0%
query key query function infinite query
05:42:28.878 --> 05:42:32.150 align:start position:0%
query key query function infinite query
app<05:42:29.400> pagination<05:42:30.160> aate<05:42:30.600> queries<05:42:31.000> and<05:42:31.240> more<05:42:32.000> all
05:42:32.150 --> 05:42:32.160 align:start position:0%
app pagination aate queries and more all
05:42:32.160 --> 05:42:34.510 align:start position:0%
app pagination aate queries and more all
of<05:42:32.320> the<05:42:32.520> resources<05:42:33.240> you<05:42:33.440> need<05:42:33.840> to<05:42:34.040> make<05:42:34.240> this
05:42:34.510 --> 05:42:34.520 align:start position:0%
of the resources you need to make this
05:42:34.520 --> 05:42:36.590 align:start position:0%
of the resources you need to make this
possible<05:42:35.320> of<05:42:35.478> course<05:42:35.840> most<05:42:36.040> of<05:42:36.200> these<05:42:36.360> are
05:42:36.590 --> 05:42:36.600 align:start position:0%
possible of course most of these are
05:42:36.600 --> 05:42:38.868 align:start position:0%
possible of course most of these are
actual<05:42:36.878> documentation<05:42:37.600> sites<05:42:38.478> and<05:42:38.638> then
05:42:38.868 --> 05:42:38.878 align:start position:0%
actual documentation sites and then
05:42:38.878 --> 05:42:41.150 align:start position:0%
actual documentation sites and then
there's<05:42:39.160> also<05:42:39.400> a<05:42:39.600> mustre<05:42:40.240> resource<05:42:40.958> which<05:42:41.080> is
05:42:41.150 --> 05:42:41.160 align:start position:0%
there's also a mustre resource which is
05:42:41.160 --> 05:42:44.150 align:start position:0%
there's also a mustre resource which is
a<05:42:41.360> react<05:42:41.760> query<05:42:42.200> article<05:42:42.840> on<05:42:43.160> infinite
05:42:44.150 --> 05:42:44.160 align:start position:0%
a react query article on infinite
05:42:44.160 --> 05:42:47.150 align:start position:0%
a react query article on infinite
scroll<05:42:45.160> finally<05:42:45.798> we<05:42:46.000> have<05:42:46.200> some<05:42:46.440> hints<05:42:46.958> as
05:42:47.150 --> 05:42:47.160 align:start position:0%
scroll finally we have some hints as
05:42:47.160 --> 05:42:49.390 align:start position:0%
scroll finally we have some hints as
well<05:42:47.920> the<05:42:48.080> entire<05:42:48.558> process<05:42:48.958> needed<05:42:49.240> to
05:42:49.390 --> 05:42:49.400 align:start position:0%
well the entire process needed to
05:42:49.400 --> 05:42:51.910 align:start position:0%
well the entire process needed to
develop<05:42:49.840> this<05:42:50.200> is<05:42:50.478> nicely<05:42:50.840> laid<05:42:51.160> out<05:42:51.478> in<05:42:51.638> form
05:42:51.910 --> 05:42:51.920 align:start position:0%
develop this is nicely laid out in form
05:42:51.920 --> 05:42:54.948 align:start position:0%
develop this is nicely laid out in form
of<05:42:52.120> hints<05:42:52.920> and<05:42:53.160> not<05:42:53.360> only<05:42:53.760> that<05:42:54.120> it<05:42:54.280> urges<05:42:54.718> you
05:42:54.948 --> 05:42:54.958 align:start position:0%
of hints and not only that it urges you
05:42:54.958 --> 05:42:57.548 align:start position:0%
of hints and not only that it urges you
to<05:42:55.360> think<05:42:55.920> and<05:42:56.120> develop<05:42:56.638> that<05:42:57.000> developer
05:42:57.548 --> 05:42:57.558 align:start position:0%
to think and develop that developer
05:42:57.558 --> 05:43:00.030 align:start position:0%
to think and develop that developer
mindset<05:42:58.558> so<05:42:58.718> it<05:42:58.840> asks<05:42:59.080> asks<05:42:59.320> you<05:42:59.638> what<05:42:59.760> do<05:42:59.878> we
05:43:00.030 --> 05:43:00.040 align:start position:0%
mindset so it asks asks you what do we
05:43:00.040 --> 05:43:03.070 align:start position:0%
mindset so it asks asks you what do we
need<05:43:01.000> how<05:43:01.120> should<05:43:01.280> it<05:43:01.440> work<05:43:01.638> or<05:43:01.920> Ro<05:43:02.760> does<05:43:02.920> that
05:43:03.070 --> 05:43:03.080 align:start position:0%
need how should it work or Ro does that
05:43:03.080 --> 05:43:04.430 align:start position:0%
need how should it work or Ro does that
mean<05:43:03.240> that<05:43:03.440> Instagram<05:43:03.840> is<05:43:03.920> showing<05:43:04.240> many
05:43:04.430 --> 05:43:04.440 align:start position:0%
mean that Instagram is showing many
05:43:04.440 --> 05:43:07.070 align:start position:0%
mean that Instagram is showing many
posts<05:43:04.718> in<05:43:04.840> one<05:43:05.120> request<05:43:06.120> and<05:43:06.280> then<05:43:06.520> even<05:43:06.798> some
05:43:07.070 --> 05:43:07.080 align:start position:0%
posts in one request and then even some
05:43:07.080 --> 05:43:09.628 align:start position:0%
posts in one request and then even some
code<05:43:07.360> blocks<05:43:07.878> to<05:43:08.160> get<05:43:08.320> you<05:43:08.600> to<05:43:08.878> implement<05:43:09.400> this
05:43:09.628 --> 05:43:09.638 align:start position:0%
code blocks to get you to implement this
05:43:09.638 --> 05:43:12.030 align:start position:0%
code blocks to get you to implement this
on<05:43:09.798> your<05:43:09.958> own<05:43:10.638> in<05:43:10.798> case<05:43:10.958> you<05:43:11.120> get<05:43:11.320> stuck<05:43:11.878> and
05:43:12.030 --> 05:43:12.040 align:start position:0%
on your own in case you get stuck and
05:43:12.040 --> 05:43:13.190 align:start position:0%
on your own in case you get stuck and
need<05:43:12.320> any
05:43:13.190 --> 05:43:13.200 align:start position:0%
need any
05:43:13.200 --> 05:43:16.548 align:start position:0%
need any
assistance<05:43:14.200> as<05:43:14.320> you<05:43:14.400> can<05:43:14.558> see<05:43:15.080> it<05:43:15.240> goes<05:43:15.718> on<05:43:16.320> and
05:43:16.548 --> 05:43:16.558 align:start position:0%
assistance as you can see it goes on and
05:43:16.558 --> 05:43:19.110 align:start position:0%
assistance as you can see it goes on and
on<05:43:16.878> and<05:43:17.080> on<05:43:17.680> and<05:43:17.840> gives<05:43:18.040> you<05:43:18.160> the<05:43:18.280> code<05:43:18.600> needed
05:43:19.110 --> 05:43:19.120 align:start position:0%
on and on and gives you the code needed
05:43:19.120 --> 05:43:21.350 align:start position:0%
on and on and gives you the code needed
to<05:43:19.360> implement<05:43:19.878> these<05:43:20.080> features<05:43:20.920> within<05:43:21.200> the
05:43:21.350 --> 05:43:21.360 align:start position:0%
to implement these features within the
05:43:21.360 --> 05:43:24.868 align:start position:0%
to implement these features within the
application<05:43:22.320> we<05:43:22.520> have<05:43:22.638> been<05:43:22.798> building<05:43:23.558> so<05:43:23.878> far
05:43:24.868 --> 05:43:24.878 align:start position:0%
application we have been building so far
05:43:24.878 --> 05:43:27.230 align:start position:0%
application we have been building so far
how<05:43:25.280> cool<05:43:25.600> is<05:43:25.798> that<05:43:26.280> it's<05:43:26.400> a<05:43:26.558> completely<05:43:27.000> new
05:43:27.230 --> 05:43:27.240 align:start position:0%
how cool is that it's a completely new
05:43:27.240 --> 05:43:29.628 align:start position:0%
how cool is that it's a completely new
paradigm<05:43:27.680> to<05:43:27.798> learning<05:43:28.360> so<05:43:29.080> just<05:43:29.240> give<05:43:29.360> it<05:43:29.478> a
05:43:29.628 --> 05:43:29.638 align:start position:0%
paradigm to learning so just give it a
05:43:29.638 --> 05:43:32.468 align:start position:0%
paradigm to learning so just give it a
go<05:43:30.120> and<05:43:30.240> tell<05:43:30.400> me<05:43:30.600> how<05:43:30.718> you<05:43:30.878> like<05:43:31.080> it<05:43:32.000> and<05:43:32.240> once
05:43:32.468 --> 05:43:32.478 align:start position:0%
go and tell me how you like it and once
05:43:32.478 --> 05:43:34.708 align:start position:0%
go and tell me how you like it and once
again<05:43:32.958> if<05:43:33.080> it's<05:43:33.240> not<05:43:33.440> working<05:43:33.760> as<05:43:34.000> expected
05:43:34.708 --> 05:43:34.718 align:start position:0%
again if it's not working as expected
05:43:34.718 --> 05:43:37.070 align:start position:0%
again if it's not working as expected
don't<05:43:35.000> feel<05:43:35.360> frustrated<05:43:36.320> it's<05:43:36.478> a<05:43:36.638> part<05:43:36.798> of<05:43:36.920> the
05:43:37.070 --> 05:43:37.080 align:start position:0%
don't feel frustrated it's a part of the
05:43:37.080 --> 05:43:39.310 align:start position:0%
don't feel frustrated it's a part of the
developer's<05:43:37.680> life<05:43:38.160> so<05:43:38.400> start<05:43:38.760> again<05:43:39.120> and
05:43:39.310 --> 05:43:39.320 align:start position:0%
developer's life so start again and
05:43:39.320 --> 05:43:41.708 align:start position:0%
developer's life so start again and
debug<05:43:39.878> everything<05:43:40.280> line<05:43:40.558> by<05:43:40.798> line<05:43:41.440> see<05:43:41.638> if
05:43:41.708 --> 05:43:41.718 align:start position:0%
debug everything line by line see if
05:43:41.718 --> 05:43:43.350 align:start position:0%
debug everything line by line see if
you're<05:43:41.878> getting<05:43:42.120> any<05:43:42.360> documents<05:43:43.040> and<05:43:43.160> check
05:43:43.350 --> 05:43:43.360 align:start position:0%
you're getting any documents and check
05:43:43.360 --> 05:43:45.230 align:start position:0%
you're getting any documents and check
if<05:43:43.520> the<05:43:43.680> last<05:43:43.958> ID<05:43:44.240> is<05:43:44.360> being<05:43:44.600> calculated
05:43:45.230 --> 05:43:45.240 align:start position:0%
if the last ID is being calculated
05:43:45.240 --> 05:43:46.990 align:start position:0%
if the last ID is being calculated
properly<05:43:45.878> and<05:43:46.040> whether<05:43:46.280> it's<05:43:46.440> being<05:43:46.718> passed
05:43:46.990 --> 05:43:47.000 align:start position:0%
properly and whether it's being passed
05:43:47.000 --> 05:43:49.468 align:start position:0%
properly and whether it's being passed
to<05:43:47.120> the<05:43:47.240> query<05:43:47.600> function<05:43:48.120> or<05:43:48.400> not<05:43:49.080> just<05:43:49.280> keep
05:43:49.468 --> 05:43:49.478 align:start position:0%
to the query function or not just keep
05:43:49.478 --> 05:43:51.948 align:start position:0%
to the query function or not just keep
trying<05:43:50.200> if<05:43:50.320> you<05:43:50.440> get<05:43:50.638> stuck<05:43:51.240> just<05:43:51.440> refer<05:43:51.798> to
05:43:51.948 --> 05:43:51.958 align:start position:0%
trying if you get stuck just refer to
05:43:51.958 --> 05:43:54.548 align:start position:0%
trying if you get stuck just refer to
the<05:43:52.080> finished<05:43:52.440> code<05:43:52.680> repository<05:43:53.440> on<05:43:53.718> GitHub
05:43:54.548 --> 05:43:54.558 align:start position:0%
the finished code repository on GitHub
05:43:54.558 --> 05:43:56.468 align:start position:0%
the finished code repository on GitHub
this<05:43:54.798> right<05:43:55.000> here<05:43:55.320> was<05:43:55.558> just<05:43:55.760> the<05:43:55.958> first<05:43:56.320> of
05:43:56.468 --> 05:43:56.478 align:start position:0%
this right here was just the first of
05:43:56.478 --> 05:43:58.548 align:start position:0%
this right here was just the first of
the<05:43:56.680> active<05:43:56.958> lessons<05:43:57.680> we<05:43:57.840> have<05:43:58.040> implemented
05:43:58.548 --> 05:43:58.558 align:start position:0%
the active lessons we have implemented
05:43:58.558 --> 05:44:00.868 align:start position:0%
the active lessons we have implemented
it<05:43:58.680> for<05:43:59.120> explore<05:43:59.558> page<05:44:00.200> but<05:44:00.400> you<05:44:00.478> can<05:44:00.638> do<05:44:00.760> it
05:44:00.868 --> 05:44:00.878 align:start position:0%
it for explore page but you can do it
05:44:00.878 --> 05:44:03.788 align:start position:0%
it for explore page but you can do it
for<05:44:01.040> the<05:44:01.200> homepage<05:44:01.718> as<05:44:01.878> well<05:44:02.878> and<05:44:03.080> then<05:44:03.558> we
05:44:03.788 --> 05:44:03.798 align:start position:0%
for the homepage as well and then we
05:44:03.798 --> 05:44:07.350 align:start position:0%
for the homepage as well and then we
have<05:44:04.478> five<05:44:05.080> more<05:44:06.080> the<05:44:06.240> top<05:44:06.478> creators<05:44:07.080> is<05:44:07.200> the
05:44:07.350 --> 05:44:07.360 align:start position:0%
have five more the top creators is the
05:44:07.360 --> 05:44:09.990 align:start position:0%
have five more the top creators is the
next<05:44:07.558> feature<05:44:07.878> you<05:44:08.040> have<05:44:08.160> to<05:44:08.760> implement<05:44:09.760> and
05:44:09.990 --> 05:44:10.000 align:start position:0%
next feature you have to implement and
05:44:10.000 --> 05:44:12.150 align:start position:0%
next feature you have to implement and
in<05:44:10.200> this<05:44:10.440> case<05:44:10.840> we<05:44:11.000> have<05:44:11.240> even<05:44:11.520> provided<05:44:11.878> you
05:44:12.150 --> 05:44:12.160 align:start position:0%
in this case we have even provided you
05:44:12.160 --> 05:44:15.270 align:start position:0%
in this case we have even provided you
with<05:44:12.280> a<05:44:12.440> figma<05:44:13.080> design<05:44:14.080> you<05:44:14.200> can<05:44:14.320> see<05:44:14.520> it<05:44:14.718> here
05:44:15.270 --> 05:44:15.280 align:start position:0%
with a figma design you can see it here
05:44:15.280 --> 05:44:16.868 align:start position:0%
with a figma design you can see it here
so<05:44:15.440> you<05:44:15.558> have<05:44:15.680> to<05:44:15.878> implement<05:44:16.400> the<05:44:16.600> top
05:44:16.868 --> 05:44:16.878 align:start position:0%
so you have to implement the top
05:44:16.878 --> 05:44:20.708 align:start position:0%
so you have to implement the top
creators<05:44:17.798> right<05:44:18.760> sidebar<05:44:19.760> once<05:44:20.040> again<05:44:20.520> you
05:44:20.708 --> 05:44:20.718 align:start position:0%
creators right sidebar once again you
05:44:20.718 --> 05:44:22.830 align:start position:0%
creators right sidebar once again you
have<05:44:21.200> everything<05:44:21.600> you<05:44:21.760> need<05:44:22.080> here<05:44:22.440> we<05:44:22.600> even
05:44:22.830 --> 05:44:22.840 align:start position:0%
have everything you need here we even
05:44:22.840 --> 05:44:25.230 align:start position:0%
have everything you need here we even
recommend<05:44:23.360> to<05:44:23.520> play<05:44:23.680> a<05:44:23.760> little<05:44:23.958> flexb<05:44:24.638> game<05:44:25.040> to
05:44:25.230 --> 05:44:25.240 align:start position:0%
recommend to play a little flexb game to
05:44:25.240 --> 05:44:27.708 align:start position:0%
recommend to play a little flexb game to
test<05:44:25.478> out<05:44:25.638> your<05:44:25.798> Flex<05:44:26.160> skills<05:44:26.958> and<05:44:27.080> then<05:44:27.320> again
05:44:27.708 --> 05:44:27.718 align:start position:0%
test out your Flex skills and then again
05:44:27.718 --> 05:44:30.030 align:start position:0%
test out your Flex skills and then again
we<05:44:27.920> dive<05:44:28.200> into<05:44:28.400> a<05:44:28.520> large<05:44:29.040> number<05:44:29.360> of<05:44:29.520> different
05:44:30.030 --> 05:44:30.040 align:start position:0%
we dive into a large number of different
05:44:30.040 --> 05:44:33.230 align:start position:0%
we dive into a large number of different
hints<05:44:31.040> they<05:44:31.200> go<05:44:31.440> linearly<05:44:32.320> from<05:44:32.600> start<05:44:33.040> to
05:44:33.230 --> 05:44:33.240 align:start position:0%
hints they go linearly from start to
05:44:33.240 --> 05:44:35.190 align:start position:0%
hints they go linearly from start to
finish<05:44:33.798> so<05:44:33.958> you<05:44:34.040> can<05:44:34.240> try<05:44:34.440> coding<05:44:34.760> it<05:44:34.920> on<05:44:35.040> your
05:44:35.190 --> 05:44:35.200 align:start position:0%
finish so you can try coding it on your
05:44:35.200 --> 05:44:38.350 align:start position:0%
finish so you can try coding it on your
own<05:44:35.760> and<05:44:35.920> then<05:44:36.160> try<05:44:36.360> to<05:44:36.600> think<05:44:37.160> in<05:44:37.360> layouts<05:44:38.120> try
05:44:38.350 --> 05:44:38.360 align:start position:0%
own and then try to think in layouts try
05:44:38.360 --> 05:44:40.590 align:start position:0%
own and then try to think in layouts try
to<05:44:38.520> implement<05:44:39.000> different<05:44:39.280> things<05:44:40.000> try<05:44:40.240> to<05:44:40.400> do
05:44:40.590 --> 05:44:40.600 align:start position:0%
to implement different things try to do
05:44:40.600 --> 05:44:43.590 align:start position:0%
to implement different things try to do
it<05:44:40.878> on<05:44:41.080> your<05:44:41.280> own<05:44:42.120> but<05:44:42.360> if<05:44:42.478> you<05:44:42.638> get<05:44:42.798> stuck<05:44:43.440> you
05:44:43.590 --> 05:44:43.600 align:start position:0%
it on your own but if you get stuck you
05:44:43.600 --> 05:44:46.030 align:start position:0%
it on your own but if you get stuck you
can<05:44:43.798> visit<05:44:44.240> the<05:44:44.400> hints<05:44:45.400> then<05:44:45.600> again<05:44:45.878> we're
05:44:46.030 --> 05:44:46.040 align:start position:0%
can visit the hints then again we're
05:44:46.040 --> 05:44:48.468 align:start position:0%
can visit the hints then again we're
going<05:44:46.160> to<05:44:46.320> implement<05:44:46.760> the<05:44:46.920> all<05:44:47.400> users<05:44:48.000> section
05:44:48.468 --> 05:44:48.478 align:start position:0%
going to implement the all users section
05:44:48.478 --> 05:44:51.270 align:start position:0%
going to implement the all users section
next<05:44:49.400> here<05:44:49.718> you<05:44:49.840> can<05:44:50.000> check<05:44:50.200> out<05:44:50.400> the<05:44:50.558> design
05:44:51.270 --> 05:44:51.280 align:start position:0%
next here you can check out the design
05:44:51.280 --> 05:44:53.350 align:start position:0%
next here you can check out the design
and<05:44:51.440> then<05:44:51.638> we<05:44:51.798> go<05:44:52.200> through<05:44:52.520> different<05:44:53.040> must
05:44:53.350 --> 05:44:53.360 align:start position:0%
and then we go through different must
05:44:53.360 --> 05:44:55.948 align:start position:0%
and then we go through different must
plays<05:44:53.718> or<05:44:53.958> must<05:44:54.240> reads<05:44:55.160> as<05:44:55.360> well<05:44:55.558> as<05:44:55.718> some
05:44:55.948 --> 05:44:55.958 align:start position:0%
plays or must reads as well as some
05:44:55.958 --> 05:44:57.670 align:start position:0%
plays or must reads as well as some
additional<05:44:56.440> hints<05:44:56.920> you<05:44:57.000> can<05:44:57.160> follow<05:44:57.520> to
05:44:57.670 --> 05:44:57.680 align:start position:0%
additional hints you can follow to
05:44:57.680 --> 05:44:59.390 align:start position:0%
additional hints you can follow to
implement<05:44:58.080> the<05:44:58.200> feature
05:44:59.390 --> 05:44:59.400 align:start position:0%
implement the feature
05:44:59.400 --> 05:45:01.150 align:start position:0%
implement the feature
and<05:44:59.680> I<05:44:59.760> don't<05:44:59.920> think<05:45:00.040> I<05:45:00.160> got<05:45:00.280> to<05:45:00.440> say<05:45:00.638> it<05:45:01.000> but
05:45:01.150 --> 05:45:01.160 align:start position:0%
and I don't think I got to say it but
05:45:01.160 --> 05:45:03.310 align:start position:0%
and I don't think I got to say it but
this<05:45:01.240> is<05:45:01.400> repeated<05:45:01.840> for<05:45:01.958> the<05:45:02.120> save<05:45:02.520> posts<05:45:03.120> for
05:45:03.310 --> 05:45:03.320 align:start position:0%
this is repeated for the save posts for
05:45:03.320 --> 05:45:06.070 align:start position:0%
this is repeated for the save posts for
the<05:45:03.478> edit<05:45:03.840> profile<05:45:04.840> and<05:45:05.120> finally<05:45:05.638> for<05:45:05.878> the
05:45:06.070 --> 05:45:06.080 align:start position:0%
the edit profile and finally for the
05:45:06.080 --> 05:45:09.030 align:start position:0%
the edit profile and finally for the
profile<05:45:06.478> page<05:45:07.080> itself<05:45:08.080> I<05:45:08.200> truly<05:45:08.558> believe<05:45:08.878> that
05:45:09.030 --> 05:45:09.040 align:start position:0%
profile page itself I truly believe that
05:45:09.040 --> 05:45:11.390 align:start position:0%
profile page itself I truly believe that
this<05:45:09.160> is<05:45:09.240> a<05:45:09.440> new<05:45:09.680> way<05:45:09.840> to<05:45:10.000> learning<05:45:10.840> of<05:45:11.040> course
05:45:11.390 --> 05:45:11.400 align:start position:0%
this is a new way to learning of course
05:45:11.400 --> 05:45:13.350 align:start position:0%
this is a new way to learning of course
feel<05:45:11.638> free<05:45:11.840> to<05:45:12.080> let<05:45:12.200> me<05:45:12.360> know<05:45:12.600> what<05:45:12.718> you<05:45:12.920> think
05:45:13.350 --> 05:45:13.360 align:start position:0%
feel free to let me know what you think
05:45:13.360 --> 05:45:15.150 align:start position:0%
feel free to let me know what you think
down<05:45:13.600> in<05:45:13.718> the<05:45:13.920> comments<05:45:14.558> and<05:45:14.760> if<05:45:14.920> you'd<05:45:15.040> like
05:45:15.150 --> 05:45:15.160 align:start position:0%
down in the comments and if you'd like
05:45:15.160 --> 05:45:16.868 align:start position:0%
down in the comments and if you'd like
me<05:45:15.280> to<05:45:15.360> do<05:45:15.558> more<05:45:15.840> things<05:45:16.120> like<05:45:16.320> this<05:45:16.600> in<05:45:16.718> the
05:45:16.868 --> 05:45:16.878 align:start position:0%
me to do more things like this in the
05:45:16.878 --> 05:45:20.070 align:start position:0%
me to do more things like this in the
future<05:45:17.840> with<05:45:18.040> that<05:45:18.280> said<05:45:18.920> give<05:45:19.040> it<05:45:19.160> a<05:45:19.320> go<05:45:19.840> try
05:45:20.070 --> 05:45:20.080 align:start position:0%
future with that said give it a go try
05:45:20.080 --> 05:45:22.110 align:start position:0%
future with that said give it a go try
to<05:45:20.240> go<05:45:20.478> through<05:45:20.840> as<05:45:21.040> many<05:45:21.320> of<05:45:21.520> these<05:45:21.798> active
05:45:22.110 --> 05:45:22.120 align:start position:0%
to go through as many of these active
05:45:22.120 --> 05:45:24.270 align:start position:0%
to go through as many of these active
lessons<05:45:22.478> as<05:45:22.680> possible<05:45:23.478> see<05:45:23.760> how<05:45:23.878> you<05:45:24.040> like
05:45:24.270 --> 05:45:24.280 align:start position:0%
lessons as possible see how you like
05:45:24.280 --> 05:45:25.948 align:start position:0%
lessons as possible see how you like
them<05:45:24.600> try<05:45:24.840> to<05:45:25.040> implement<05:45:25.478> some<05:45:25.600> of<05:45:25.718> the
05:45:25.948 --> 05:45:25.958 align:start position:0%
them try to implement some of the
05:45:25.958 --> 05:45:28.310 align:start position:0%
them try to implement some of the
features<05:45:26.958> and<05:45:27.160> then<05:45:27.558> come<05:45:27.798> back<05:45:27.958> to<05:45:28.120> this
05:45:28.310 --> 05:45:28.320 align:start position:0%
features and then come back to this
05:45:28.320 --> 05:45:30.788 align:start position:0%
features and then come back to this
video<05:45:28.840> to<05:45:29.000> deploy<05:45:29.360> the<05:45:29.558> project<05:45:29.920> to<05:45:30.120> the
05:45:30.788 --> 05:45:30.798 align:start position:0%
video to deploy the project to the
05:45:30.798 --> 05:45:34.110 align:start position:0%
video to deploy the project to the
Internet<05:45:31.798> so<05:45:32.400> how<05:45:32.558> did<05:45:32.718> it<05:45:32.878> go<05:45:33.520> I<05:45:33.638> hope<05:45:33.798> you<05:45:33.920> are
05:45:34.110 --> 05:45:34.120 align:start position:0%
Internet so how did it go I hope you are
05:45:34.120 --> 05:45:36.590 align:start position:0%
Internet so how did it go I hope you are
able<05:45:34.400> to<05:45:34.600> take<05:45:34.760> your<05:45:35.000> time<05:45:35.638> and<05:45:35.920> I<05:45:36.080> know<05:45:36.320> it<05:45:36.440> can
05:45:36.590 --> 05:45:36.600 align:start position:0%
able to take your time and I know it can
05:45:36.600 --> 05:45:38.788 align:start position:0%
able to take your time and I know it can
take<05:45:36.798> a<05:45:36.920> lot<05:45:37.080> of<05:45:37.240> time<05:45:37.558> maybe<05:45:37.878> even<05:45:38.200> more<05:45:38.600> than
05:45:38.788 --> 05:45:38.798 align:start position:0%
take a lot of time maybe even more than
05:45:38.798 --> 05:45:40.750 align:start position:0%
take a lot of time maybe even more than
the<05:45:38.958> entire<05:45:39.360> video<05:45:39.638> you've<05:45:39.840> been<05:45:40.040> watching
05:45:40.750 --> 05:45:40.760 align:start position:0%
the entire video you've been watching
05:45:40.760 --> 05:45:42.990 align:start position:0%
the entire video you've been watching
because<05:45:41.120> implementing<05:45:41.760> things<05:45:41.958> on<05:45:42.120> your<05:45:42.280> own
05:45:42.990 --> 05:45:43.000 align:start position:0%
because implementing things on your own
05:45:43.000 --> 05:45:45.868 align:start position:0%
because implementing things on your own
actually<05:45:43.440> challenges<05:45:44.000> you<05:45:44.320> a<05:45:44.558> lot<05:45:45.240> so<05:45:45.600> I<05:45:45.718> hope
05:45:45.868 --> 05:45:45.878 align:start position:0%
actually challenges you a lot so I hope
05:45:45.878 --> 05:45:48.150 align:start position:0%
actually challenges you a lot so I hope
you<05:45:46.000> did<05:45:46.280> good<05:45:46.958> if<05:45:47.120> not<05:45:47.440> there's<05:45:47.718> more<05:45:47.958> things
05:45:48.150 --> 05:45:48.160 align:start position:0%
you did good if not there's more things
05:45:48.160 --> 05:45:50.350 align:start position:0%
you did good if not there's more things
to<05:45:48.280> do<05:45:48.520> and<05:45:48.680> more<05:45:48.878> things<05:45:49.080> to<05:45:49.240> learn<05:45:49.920> but
05:45:50.350 --> 05:45:50.360 align:start position:0%
to do and more things to learn but
05:45:50.360 --> 05:45:53.830 align:start position:0%
to do and more things to learn but
learning<05:45:51.040> means<05:45:51.638> improving<05:45:52.638> so<05:45:53.040> in<05:45:53.240> any<05:45:53.520> case
05:45:53.830 --> 05:45:53.840 align:start position:0%
learning means improving so in any case
05:45:53.840 --> 05:45:55.830 align:start position:0%
learning means improving so in any case
now<05:45:54.558> however<05:45:54.798> much<05:45:55.000> of<05:45:55.120> the<05:45:55.320> project<05:45:55.638> you've
05:45:55.830 --> 05:45:55.840 align:start position:0%
now however much of the project you've
05:45:55.840 --> 05:45:57.910 align:start position:0%
now however much of the project you've
finished<05:45:56.520> let's<05:45:56.760> go<05:45:56.878> ahead<05:45:57.160> and<05:45:57.320> deploy<05:45:57.760> to
05:45:57.910 --> 05:45:57.920 align:start position:0%
finished let's go ahead and deploy to
05:45:57.920 --> 05:45:59.990 align:start position:0%
finished let's go ahead and deploy to
the<05:45:58.040> internet<05:45:58.478> to<05:45:58.638> get<05:45:58.920> together<05:45:59.558> we'll<05:45:59.840> be
05:45:59.990 --> 05:46:00.000 align:start position:0%
the internet to get together we'll be
05:46:00.000 --> 05:46:02.628 align:start position:0%
the internet to get together we'll be
deploying<05:46:00.558> our<05:46:01.000> project<05:46:01.400> to<05:46:01.680> versell<05:46:02.400> so<05:46:02.520> you
05:46:02.628 --> 05:46:02.638 align:start position:0%
deploying our project to versell so you
05:46:02.638 --> 05:46:05.628 align:start position:0%
deploying our project to versell so you
can<05:46:02.798> head<05:46:02.958> to<05:46:03.160> versell<05:46:03.718> decom<05:46:04.400> and<05:46:04.680> log<05:46:04.920> in<05:46:05.280> or
05:46:05.628 --> 05:46:05.638 align:start position:0%
can head to versell decom and log in or
05:46:05.638 --> 05:46:08.270 align:start position:0%
can head to versell decom and log in or
sign<05:46:05.958> up<05:46:06.920> once<05:46:07.080> you<05:46:07.240> log<05:46:07.520> in<05:46:07.840> you<05:46:07.958> should<05:46:08.160> be
05:46:08.270 --> 05:46:08.280 align:start position:0%
sign up once you log in you should be
05:46:08.280 --> 05:46:10.390 align:start position:0%
sign up once you log in you should be
able<05:46:08.478> to<05:46:08.600> see<05:46:08.798> your<05:46:09.080> projects<05:46:09.798> and<05:46:10.000> you<05:46:10.160> might
05:46:10.390 --> 05:46:10.400 align:start position:0%
able to see your projects and you might
05:46:10.400 --> 05:46:13.390 align:start position:0%
able to see your projects and you might
not<05:46:10.718> have<05:46:10.958> as<05:46:11.080> many<05:46:11.440> as<05:46:11.638> I<05:46:11.840> do<05:46:12.718> as<05:46:12.840> you<05:46:12.958> can<05:46:13.080> see
05:46:13.390 --> 05:46:13.400 align:start position:0%
not have as many as I do as you can see
05:46:13.400 --> 05:46:15.070 align:start position:0%
not have as many as I do as you can see
we<05:46:13.558> have<05:46:13.798> hundreds<05:46:14.240> and<05:46:14.440> hundreds<05:46:14.840> of
05:46:15.070 --> 05:46:15.080 align:start position:0%
we have hundreds and hundreds of
05:46:15.080 --> 05:46:17.590 align:start position:0%
we have hundreds and hundreds of
projects<05:46:15.520> right<05:46:15.718> here<05:46:16.400> most<05:46:16.638> of<05:46:16.840> them<05:46:17.040> belong
05:46:17.590 --> 05:46:17.600 align:start position:0%
projects right here most of them belong
05:46:17.600 --> 05:46:19.990 align:start position:0%
projects right here most of them belong
to<05:46:17.840> our<05:46:18.200> JSM<05:46:18.760> masterclass<05:46:19.400> experience
05:46:19.990 --> 05:46:20.000 align:start position:0%
to our JSM masterclass experience
05:46:20.000 --> 05:46:23.030 align:start position:0%
to our JSM masterclass experience
students<05:46:20.958> so<05:46:21.638> in<05:46:21.798> our<05:46:22.040> master<05:46:22.440> class<05:46:22.840> which<05:46:22.958> is
05:46:23.030 --> 05:46:23.040 align:start position:0%
students so in our master class which is
05:46:23.040 --> 05:46:26.310 align:start position:0%
students so in our master class which is
the<05:46:23.200> JSM<05:46:23.680> boot<05:46:24.000> camp<05:46:24.718> we<05:46:25.200> actively<05:46:25.958> teach
05:46:26.310 --> 05:46:26.320 align:start position:0%
the JSM boot camp we actively teach
05:46:26.320 --> 05:46:28.468 align:start position:0%
the JSM boot camp we actively teach
people<05:46:26.638> how<05:46:26.760> to<05:46:27.000> develop<05:46:27.520> projects<05:46:28.080> on<05:46:28.320> their
05:46:28.468 --> 05:46:28.478 align:start position:0%
people how to develop projects on their
05:46:28.478 --> 05:46:29.390 align:start position:0%
people how to develop projects on their
own
05:46:29.390 --> 05:46:29.400 align:start position:0%
own
05:46:29.400 --> 05:46:32.150 align:start position:0%
own
within<05:46:29.920> a<05:46:30.120> team<05:46:30.958> and<05:46:31.240> this<05:46:31.360> can<05:46:31.478> be<05:46:31.680> considered
05:46:32.150 --> 05:46:32.160 align:start position:0%
within a team and this can be considered
05:46:32.160 --> 05:46:34.230 align:start position:0%
within a team and this can be considered
even<05:46:32.360> an<05:46:32.558> additional<05:46:33.120> step<05:46:33.440> to<05:46:33.680> these<05:46:33.920> active
05:46:34.230 --> 05:46:34.240 align:start position:0%
even an additional step to these active
05:46:34.240 --> 05:46:36.430 align:start position:0%
even an additional step to these active
lessons<05:46:35.120> the<05:46:35.360> active<05:46:35.638> lessons<05:46:36.120> though<05:46:36.280> are
05:46:36.430 --> 05:46:36.440 align:start position:0%
lessons the active lessons though are
05:46:36.440 --> 05:46:38.750 align:start position:0%
lessons the active lessons though are
reserved<05:46:36.878> for<05:46:37.000> the<05:46:37.080> nextjs<05:46:37.638> course<05:46:38.240> Andy<05:46:38.638> will
05:46:38.750 --> 05:46:38.760 align:start position:0%
reserved for the nextjs course Andy will
05:46:38.760 --> 05:46:40.788 align:start position:0%
reserved for the nextjs course Andy will
also<05:46:38.958> gotten<05:46:39.200> a<05:46:39.360> chance<05:46:39.600> to<05:46:39.840> experience<05:46:40.400> them
05:46:40.788 --> 05:46:40.798 align:start position:0%
also gotten a chance to experience them
05:46:40.798 --> 05:46:43.310 align:start position:0%
also gotten a chance to experience them
in<05:46:41.000> this<05:46:41.200> video<05:46:42.080> so<05:46:42.320> with<05:46:42.478> that<05:46:42.680> said<05:46:43.000> let's<05:46:43.200> go
05:46:43.310 --> 05:46:43.320 align:start position:0%
in this video so with that said let's go
05:46:43.320 --> 05:46:45.310 align:start position:0%
in this video so with that said let's go
ahead<05:46:43.558> and<05:46:43.760> click<05:46:44.080> add<05:46:44.320> new<05:46:44.958> and<05:46:45.080> we<05:46:45.200> can
05:46:45.310 --> 05:46:45.320 align:start position:0%
ahead and click add new and we can
05:46:45.320 --> 05:46:48.030 align:start position:0%
ahead and click add new and we can
select<05:46:46.200> project<05:46:47.200> you<05:46:47.320> can<05:46:47.478> notice<05:46:47.760> that<05:46:47.878> it's
05:46:48.030 --> 05:46:48.040 align:start position:0%
select project you can notice that it's
05:46:48.040 --> 05:46:50.110 align:start position:0%
select project you can notice that it's
going<05:46:48.200> to<05:46:48.440> ask<05:46:48.680> us<05:46:49.000> to<05:46:49.320> import<05:46:49.680> a<05:46:49.878> get
05:46:50.110 --> 05:46:50.120 align:start position:0%
going to ask us to import a get
05:46:50.120 --> 05:46:51.948 align:start position:0%
going to ask us to import a get
repository<05:46:50.920> which<05:46:51.080> means<05:46:51.320> that<05:46:51.478> we<05:46:51.600> have<05:46:51.718> to
05:46:51.948 --> 05:46:51.958 align:start position:0%
repository which means that we have to
05:46:51.958 --> 05:46:54.868 align:start position:0%
repository which means that we have to
upload<05:46:52.360> our<05:46:52.558> project<05:46:52.958> to<05:46:53.280> GitHub<05:46:54.280> and<05:46:54.478> to<05:46:54.638> do
05:46:54.868 --> 05:46:54.878 align:start position:0%
upload our project to GitHub and to do
05:46:54.878 --> 05:46:57.430 align:start position:0%
upload our project to GitHub and to do
that<05:46:55.200> you<05:46:55.320> can<05:46:55.520> go<05:46:55.638> to<05:46:55.920> github.com
05:46:57.430 --> 05:46:57.440 align:start position:0%
that you can go to github.com
05:46:57.440 --> 05:47:00.190 align:start position:0%
that you can go to github.com
slne<05:46:58.440> and<05:46:58.798> create<05:46:59.000> a<05:46:59.120> new<05:46:59.400> project<05:46:59.840> called
05:47:00.190 --> 05:47:00.200 align:start position:0%
slne and create a new project called
05:47:00.200 --> 05:47:01.590 align:start position:0%
slne and create a new project called
something<05:47:00.600> like
05:47:01.590 --> 05:47:01.600 align:start position:0%
something like
05:47:01.600 --> 05:47:04.390 align:start position:0%
something like
snapgram<05:47:02.600> you<05:47:02.718> can<05:47:02.920> make<05:47:03.040> it<05:47:03.280> public<05:47:03.638> or
05:47:04.390 --> 05:47:04.400 align:start position:0%
snapgram you can make it public or
05:47:04.400 --> 05:47:06.510 align:start position:0%
snapgram you can make it public or
private<05:47:05.400> I'm<05:47:05.558> going<05:47:05.638> to<05:47:05.798> make<05:47:05.920> it<05:47:06.080> private<05:47:06.360> in
05:47:06.510 --> 05:47:06.520 align:start position:0%
private I'm going to make it private in
05:47:06.520 --> 05:47:10.670 align:start position:0%
private I'm going to make it private in
this<05:47:06.760> case<05:47:07.160> and<05:47:07.360> click<05:47:07.680> create
05:47:10.670 --> 05:47:10.680 align:start position:0%
05:47:10.680 --> 05:47:13.230 align:start position:0%
repository<05:47:11.680> once<05:47:11.878> the<05:47:12.000> repo<05:47:12.440> is<05:47:12.638> there<05:47:12.958> we<05:47:13.040> can
05:47:13.230 --> 05:47:13.240 align:start position:0%
repository once the repo is there we can
05:47:13.240 --> 05:47:15.868 align:start position:0%
repository once the repo is there we can
push<05:47:13.400> our<05:47:13.558> code<05:47:13.798> to<05:47:14.000> it<05:47:15.000> by<05:47:15.200> dragging<05:47:15.638> this<05:47:15.760> to
05:47:15.868 --> 05:47:15.878 align:start position:0%
push our code to it by dragging this to
05:47:15.878 --> 05:47:18.708 align:start position:0%
push our code to it by dragging this to
the<05:47:16.120> side<05:47:16.878> opening<05:47:17.280> up<05:47:17.440> our<05:47:17.638> terminal<05:47:18.558> of
05:47:18.708 --> 05:47:18.718 align:start position:0%
the side opening up our terminal of
05:47:18.718 --> 05:47:20.910 align:start position:0%
the side opening up our terminal of
course<05:47:18.920> we<05:47:19.040> have<05:47:19.160> to<05:47:19.320> stop<05:47:19.558> it<05:47:19.680> from<05:47:19.920> running
05:47:20.910 --> 05:47:20.920 align:start position:0%
course we have to stop it from running
05:47:20.920 --> 05:47:26.110 align:start position:0%
course we have to stop it from running
and<05:47:21.120> then<05:47:21.520> you<05:47:21.638> can<05:47:21.798> run<05:47:22.400> get<05:47:23.000> init<05:47:24.000> get<05:47:24.360> add
05:47:26.110 --> 05:47:26.120 align:start position:0%
and then you can run get init get add
05:47:26.120 --> 05:47:32.030 align:start position:0%
and then you can run get init get add
dot<05:47:27.120> get<05:47:27.718> commit<05:47:29.120> Dash<05:47:29.878> first
05:47:32.030 --> 05:47:32.040 align:start position:0%
dot get commit Dash first
05:47:32.040 --> 05:47:34.070 align:start position:0%
dot get commit Dash first
commit<05:47:33.040> and<05:47:33.200> then<05:47:33.320> you<05:47:33.400> need<05:47:33.558> to<05:47:33.718> copy<05:47:33.958> a
05:47:34.070 --> 05:47:34.080 align:start position:0%
commit and then you need to copy a
05:47:34.080 --> 05:47:36.230 align:start position:0%
commit and then you need to copy a
couple<05:47:34.280> of<05:47:34.400> command<05:47:34.798> from<05:47:35.040> here<05:47:35.558> such<05:47:35.760> as<05:47:36.000> git
05:47:36.230 --> 05:47:36.240 align:start position:0%
couple of command from here such as git
05:47:36.240 --> 05:47:40.430 align:start position:0%
couple of command from here such as git
Branch<05:47:36.920> M<05:47:37.440> main<05:47:38.400> get<05:47:38.600> remote<05:47:39.040> at<05:47:39.360> origin<05:47:40.240> and
05:47:40.430 --> 05:47:40.440 align:start position:0%
Branch M main get remote at origin and
05:47:40.440 --> 05:47:42.910 align:start position:0%
Branch M main get remote at origin and
get<05:47:40.680> push<05:47:41.000> you<05:47:41.360> origin
05:47:42.910 --> 05:47:42.920 align:start position:0%
get push you origin
05:47:42.920 --> 05:47:45.468 align:start position:0%
get push you origin
Master<05:47:43.920> once<05:47:44.080> you<05:47:44.240> do<05:47:44.400> it<05:47:44.798> our<05:47:45.000> code<05:47:45.240> should
05:47:45.468 --> 05:47:45.478 align:start position:0%
Master once you do it our code should
05:47:45.478 --> 05:47:47.910 align:start position:0%
Master once you do it our code should
now<05:47:45.638> be<05:47:45.920> live<05:47:46.240> on<05:47:46.600> GitHub<05:47:47.240> which<05:47:47.360> you<05:47:47.440> can<05:47:47.600> see
05:47:47.910 --> 05:47:47.920 align:start position:0%
now be live on GitHub which you can see
05:47:47.920 --> 05:47:51.070 align:start position:0%
now be live on GitHub which you can see
if<05:47:48.000> you<05:47:48.160> simply<05:47:48.920> reload<05:47:49.920> and<05:47:50.120> there<05:47:50.240> we<05:47:50.440> go<05:47:50.878> our
05:47:51.070 --> 05:47:51.080 align:start position:0%
if you simply reload and there we go our
05:47:51.080 --> 05:47:53.910 align:start position:0%
if you simply reload and there we go our
code<05:47:51.320> is<05:47:51.558> here<05:47:52.360> now<05:47:52.600> that<05:47:52.840> repo<05:47:53.240> is<05:47:53.400> live<05:47:53.840> we
05:47:53.910 --> 05:47:53.920 align:start position:0%
code is here now that repo is live we
05:47:53.920 --> 05:47:55.910 align:start position:0%
code is here now that repo is live we
can<05:47:54.080> go<05:47:54.320> back<05:47:54.478> to<05:47:54.718> versel<05:47:55.600> and<05:47:55.760> it
05:47:55.910 --> 05:47:55.920 align:start position:0%
can go back to versel and it
05:47:55.920 --> 05:47:57.548 align:start position:0%
can go back to versel and it
automatically<05:47:56.478> figured<05:47:56.840> that<05:47:56.958> we<05:47:57.080> have<05:47:57.200> a<05:47:57.320> new
05:47:57.548 --> 05:47:57.558 align:start position:0%
automatically figured that we have a new
05:47:57.558 --> 05:47:59.670 align:start position:0%
automatically figured that we have a new
V<05:47:58.000> project<05:47:58.360> right<05:47:58.478> here<05:47:58.718> here<05:47:59.080> which<05:47:59.240> we<05:47:59.360> can
05:47:59.670 --> 05:47:59.680 align:start position:0%
V project right here here which we can
05:47:59.680 --> 05:48:02.030 align:start position:0%
V project right here here which we can
import<05:48:00.680> once<05:48:00.840> you<05:48:01.000> import<05:48:01.320> it<05:48:01.520> you'll<05:48:01.718> have<05:48:01.840> to
05:48:02.030 --> 05:48:02.040 align:start position:0%
import once you import it you'll have to
05:48:02.040 --> 05:48:04.510 align:start position:0%
import once you import it you'll have to
add<05:48:02.200> your<05:48:02.400> environment<05:48:03.000> variables<05:48:04.000> so<05:48:04.320> back
05:48:04.510 --> 05:48:04.520 align:start position:0%
add your environment variables so back
05:48:04.520 --> 05:48:08.750 align:start position:0%
add your environment variables so back
in<05:48:04.638> our<05:48:04.878> code<05:48:05.400> you<05:48:05.520> can<05:48:05.798> go<05:48:06.080> to<05:48:06.478> our<05:48:07.160> env.<05:48:07.920> looc
05:48:08.750 --> 05:48:08.760 align:start position:0%
in our code you can go to our env. looc
05:48:08.760 --> 05:48:11.510 align:start position:0%
in our code you can go to our env. looc
copy<05:48:09.200> all<05:48:09.440> the<05:48:09.638> variables<05:48:10.600> and<05:48:10.840> simply<05:48:11.240> paste
05:48:11.510 --> 05:48:11.520 align:start position:0%
copy all the variables and simply paste
05:48:11.520 --> 05:48:12.910 align:start position:0%
copy all the variables and simply paste
them<05:48:11.760> right<05:48:11.958> here<05:48:12.478> it's<05:48:12.638> going<05:48:12.760> to
05:48:12.910 --> 05:48:12.920 align:start position:0%
them right here it's going to
05:48:12.920 --> 05:48:14.788 align:start position:0%
them right here it's going to
automatically<05:48:13.558> figure<05:48:13.878> out<05:48:14.280> all<05:48:14.680> the
05:48:14.788 --> 05:48:14.798 align:start position:0%
automatically figure out all the
05:48:14.798 --> 05:48:18.510 align:start position:0%
automatically figure out all the
individual<05:48:15.638> variables<05:48:16.638> and<05:48:16.920> click<05:48:17.400> deploy<05:48:18.400> as
05:48:18.510 --> 05:48:18.520 align:start position:0%
individual variables and click deploy as
05:48:18.520 --> 05:48:21.230 align:start position:0%
individual variables and click deploy as
you<05:48:18.600> can<05:48:18.760> see<05:48:18.958> the<05:48:19.120> deployment<05:48:19.638> is<05:48:20.000> cued<05:48:21.000> so
05:48:21.230 --> 05:48:21.240 align:start position:0%
you can see the deployment is cued so
05:48:21.240 --> 05:48:23.150 align:start position:0%
you can see the deployment is cued so
let's<05:48:21.440> give<05:48:21.558> it<05:48:21.680> a<05:48:21.798> minute<05:48:22.320> and<05:48:22.520> let's<05:48:22.760> see<05:48:23.040> if
05:48:23.150 --> 05:48:23.160 align:start position:0%
let's give it a minute and let's see if
05:48:23.160 --> 05:48:26.070 align:start position:0%
let's give it a minute and let's see if
it's<05:48:23.600> successful<05:48:24.600> and<05:48:24.798> in<05:48:25.000> just<05:48:25.200> 30<05:48:25.558> seconds
05:48:26.070 --> 05:48:26.080 align:start position:0%
it's successful and in just 30 seconds
05:48:26.080 --> 05:48:29.070 align:start position:0%
it's successful and in just 30 seconds
our<05:48:26.360> website<05:48:26.920> is<05:48:27.160> now<05:48:27.478> live<05:48:28.400> and<05:48:28.638> and<05:48:28.798> let's<05:48:28.958> go
05:48:29.070 --> 05:48:29.080 align:start position:0%
our website is now live and and let's go
05:48:29.080 --> 05:48:30.830 align:start position:0%
our website is now live and and let's go
ahead<05:48:29.280> and<05:48:29.478> click<05:48:29.798> here<05:48:30.040> to<05:48:30.320> visit<05:48:30.638> our
05:48:30.830 --> 05:48:30.840 align:start position:0%
ahead and click here to visit our
05:48:30.840 --> 05:48:31.990 align:start position:0%
ahead and click here to visit our
deployed
05:48:31.990 --> 05:48:32.000 align:start position:0%
deployed
05:48:32.000 --> 05:48:34.948 align:start position:0%
deployed
application<05:48:33.000> there<05:48:33.320> we<05:48:33.638> go<05:48:34.160> our<05:48:34.400> sign<05:48:34.638> in<05:48:34.840> is
05:48:34.948 --> 05:48:34.958 align:start position:0%
application there we go our sign in is
05:48:34.958 --> 05:48:37.868 align:start position:0%
application there we go our sign in is
looking<05:48:35.360> great<05:48:35.958> but<05:48:36.160> if<05:48:36.240> you<05:48:36.360> go<05:48:36.558> to<05:48:36.878> inspect
05:48:37.868 --> 05:48:37.878 align:start position:0%
looking great but if you go to inspect
05:48:37.878 --> 05:48:40.390 align:start position:0%
looking great but if you go to inspect
and<05:48:38.120> if<05:48:38.240> you<05:48:38.400> look<05:48:38.600> into<05:48:38.840> the<05:48:39.080> console<05:48:40.080> you<05:48:40.200> can
05:48:40.390 --> 05:48:40.400 align:start position:0%
and if you look into the console you can
05:48:40.400 --> 05:48:42.390 align:start position:0%
and if you look into the console you can
notice<05:48:40.958> that<05:48:41.280> we<05:48:41.440> cannot<05:48:41.760> really<05:48:41.958> make<05:48:42.160> a
05:48:42.390 --> 05:48:42.400 align:start position:0%
notice that we cannot really make a
05:48:42.400 --> 05:48:45.628 align:start position:0%
notice that we cannot really make a
request<05:48:43.000> to<05:48:43.240> our<05:48:43.478> new<05:48:43.760> domain<05:48:44.400> or<05:48:44.798> rather<05:48:45.360> the
05:48:45.628 --> 05:48:45.638 align:start position:0%
request to our new domain or rather the
05:48:45.638 --> 05:48:47.948 align:start position:0%
request to our new domain or rather the
access<05:48:45.958> to<05:48:46.200> ight<05:48:46.840> is<05:48:46.958> being<05:48:47.280> blocked<05:48:47.680> from<05:48:47.798> our
05:48:47.948 --> 05:48:47.958 align:start position:0%
access to ight is being blocked from our
05:48:47.958 --> 05:48:50.270 align:start position:0%
access to ight is being blocked from our
new<05:48:48.200> domain<05:48:49.160> that's<05:48:49.400> because<05:48:49.600> of<05:48:49.760> the<05:48:49.920> course
05:48:50.270 --> 05:48:50.280 align:start position:0%
new domain that's because of the course
05:48:50.280 --> 05:48:52.548 align:start position:0%
new domain that's because of the course
policy<05:48:51.160> something<05:48:51.520> that<05:48:51.718> developers<05:48:52.200> don't
05:48:52.548 --> 05:48:52.558 align:start position:0%
policy something that developers don't
05:48:52.558 --> 05:48:54.510 align:start position:0%
policy something that developers don't
really<05:48:52.878> like<05:48:53.600> but<05:48:53.760> thankfully<05:48:54.160> there's<05:48:54.360> an
05:48:54.510 --> 05:48:54.520 align:start position:0%
really like but thankfully there's an
05:48:54.520 --> 05:48:57.510 align:start position:0%
really like but thankfully there's an
easy<05:48:54.760> way<05:48:54.958> around<05:48:55.240> it<05:48:56.000> you<05:48:56.160> need<05:48:56.320> to<05:48:56.478> go<05:48:56.638> to
05:48:57.510 --> 05:48:57.520 align:start position:0%
easy way around it you need to go to
05:48:57.520 --> 05:49:00.430 align:start position:0%
easy way around it you need to go to
aight<05:48:59.000> and<05:48:59.160> then<05:48:59.280> you<05:48:59.400> need<05:48:59.520> to<05:48:59.760> add<05:49:00.000> a<05:49:00.160> new
05:49:00.430 --> 05:49:00.440 align:start position:0%
aight and then you need to add a new
05:49:00.440 --> 05:49:02.430 align:start position:0%
aight and then you need to add a new
platform<05:49:01.160> in<05:49:01.360> this<05:49:01.520> case<05:49:01.680> we're<05:49:01.840> going<05:49:01.920> to<05:49:02.040> do
05:49:02.430 --> 05:49:02.440 align:start position:0%
platform in this case we're going to do
05:49:02.440 --> 05:49:06.788 align:start position:0%
platform in this case we're going to do
web<05:49:03.440> the<05:49:03.600> name<05:49:04.040> is<05:49:04.200> going<05:49:04.360> to<05:49:04.520> be
05:49:06.788 --> 05:49:06.798 align:start position:0%
05:49:06.798 --> 05:49:09.190 align:start position:0%
snapgram<05:49:07.798> and<05:49:08.000> the<05:49:08.120> host<05:49:08.440> name<05:49:08.680> can<05:49:08.840> be
05:49:09.190 --> 05:49:09.200 align:start position:0%
snapgram and the host name can be
05:49:09.200 --> 05:49:11.708 align:start position:0%
snapgram and the host name can be
everything<05:49:09.718> ad<05:49:10.040> verell<05:49:10.600> thata<05:49:11.360> and<05:49:11.478> we<05:49:11.558> can
05:49:11.708 --> 05:49:11.718 align:start position:0%
everything ad verell thata and we can
05:49:11.718 --> 05:49:12.750 align:start position:0%
everything ad verell thata and we can
click
05:49:12.750 --> 05:49:12.760 align:start position:0%
click
05:49:12.760 --> 05:49:16.310 align:start position:0%
click
next<05:49:13.760> finally<05:49:14.200> let's<05:49:14.558> skip<05:49:14.798> optional
05:49:16.310 --> 05:49:16.320 align:start position:0%
next finally let's skip optional
05:49:16.320 --> 05:49:19.590 align:start position:0%
next finally let's skip optional
steps<05:49:17.320> and<05:49:17.558> this<05:49:17.798> created<05:49:18.240> a<05:49:18.440> new<05:49:18.680> integration
05:49:19.590 --> 05:49:19.600 align:start position:0%
steps and this created a new integration
05:49:19.600 --> 05:49:21.430 align:start position:0%
steps and this created a new integration
with<05:49:19.798> a<05:49:20.000> web<05:49:20.320> platform<05:49:20.958> where<05:49:21.120> we<05:49:21.240> have
05:49:21.430 --> 05:49:21.440 align:start position:0%
with a web platform where we have
05:49:21.440 --> 05:49:23.788 align:start position:0%
with a web platform where we have
deployed<05:49:21.878> our<05:49:22.040> snapgram<05:49:23.040> and<05:49:23.280> every<05:49:23.478> single
05:49:23.788 --> 05:49:23.798 align:start position:0%
deployed our snapgram and every single
05:49:23.798 --> 05:49:26.510 align:start position:0%
deployed our snapgram and every single
host<05:49:24.080> name<05:49:24.240> on<05:49:24.478> verell<05:49:25.120> should<05:49:25.440> work<05:49:26.120> so<05:49:26.280> let's
05:49:26.510 --> 05:49:26.520 align:start position:0%
host name on verell should work so let's
05:49:26.520 --> 05:49:29.590 align:start position:0%
host name on verell should work so let's
go<05:49:27.040> back<05:49:28.040> clear<05:49:28.360> the<05:49:28.520> the<05:49:28.638> console<05:49:29.040> and<05:49:29.200> reload
05:49:29.590 --> 05:49:29.600 align:start position:0%
go back clear the the console and reload
05:49:29.600 --> 05:49:30.830 align:start position:0%
go back clear the the console and reload
the
05:49:30.830 --> 05:49:30.840 align:start position:0%
the
05:49:30.840 --> 05:49:34.390 align:start position:0%
the
page<05:49:31.840> we<05:49:32.280> immediately<05:49:33.280> get<05:49:33.478> logged<05:49:33.840> in<05:49:34.120> into
05:49:34.390 --> 05:49:34.400 align:start position:0%
page we immediately get logged in into
05:49:34.400 --> 05:49:36.510 align:start position:0%
page we immediately get logged in into
our<05:49:34.558> new<05:49:34.718> domain<05:49:35.520> if<05:49:35.718> that<05:49:35.878> hasn't<05:49:36.120> worked<05:49:36.320> for
05:49:36.510 --> 05:49:36.520 align:start position:0%
our new domain if that hasn't worked for
05:49:36.520 --> 05:49:38.948 align:start position:0%
our new domain if that hasn't worked for
you<05:49:36.798> you<05:49:36.920> can<05:49:37.080> just<05:49:37.280> manually<05:49:37.680> log<05:49:37.958> in<05:49:38.680> and
05:49:38.948 --> 05:49:38.958 align:start position:0%
you you can just manually log in and
05:49:38.958 --> 05:49:40.548 align:start position:0%
you you can just manually log in and
with<05:49:39.120> that<05:49:39.320> said<05:49:39.760> you<05:49:39.840> should<05:49:40.040> be<05:49:40.160> able<05:49:40.360> to
05:49:40.548 --> 05:49:40.558 align:start position:0%
with that said you should be able to
05:49:40.558 --> 05:49:42.948 align:start position:0%
with that said you should be able to
have<05:49:40.760> this<05:49:40.958> explore<05:49:41.440> features<05:49:42.200> the<05:49:42.360> people<05:49:42.798> as
05:49:42.948 --> 05:49:42.958 align:start position:0%
have this explore features the people as
05:49:42.958 --> 05:49:45.030 align:start position:0%
have this explore features the people as
well<05:49:43.280> if<05:49:43.400> you<05:49:43.520> have<05:49:43.718> implemented<05:49:44.240> it<05:49:44.638> saved
05:49:45.030 --> 05:49:45.040 align:start position:0%
well if you have implemented it saved
05:49:45.040 --> 05:49:47.590 align:start position:0%
well if you have implemented it saved
features<05:49:45.478> as<05:49:45.638> well<05:49:46.320> everything<05:49:46.840> is<05:49:47.160> working
05:49:47.590 --> 05:49:47.600 align:start position:0%
features as well everything is working
05:49:47.600 --> 05:49:50.868 align:start position:0%
features as well everything is working
flawlessly<05:49:48.520> on<05:49:48.760> our<05:49:48.958> newly<05:49:49.360> deployed<05:49:49.878> website
05:49:50.868 --> 05:49:50.878 align:start position:0%
flawlessly on our newly deployed website
05:49:50.878 --> 05:49:53.750 align:start position:0%
flawlessly on our newly deployed website
how<05:49:51.280> great<05:49:51.718> is<05:49:51.958> that<05:49:52.718> so<05:49:53.200> how<05:49:53.320> did<05:49:53.478> you<05:49:53.600> like
05:49:53.750 --> 05:49:53.760 align:start position:0%
how great is that so how did you like
05:49:53.760 --> 05:49:55.830 align:start position:0%
how great is that so how did you like
the<05:49:53.878> build<05:49:54.600> if<05:49:54.718> you're<05:49:54.920> watching<05:49:55.320> all<05:49:55.558> the<05:49:55.638> way
05:49:55.830 --> 05:49:55.840 align:start position:0%
the build if you're watching all the way
05:49:55.840 --> 05:49:58.510 align:start position:0%
the build if you're watching all the way
until<05:49:56.080> the<05:49:56.200> end<05:49:56.760> I<05:49:56.878> hope<05:49:57.040> you<05:49:57.280> loved<05:49:57.558> it<05:49:58.200> Andy
05:49:58.510 --> 05:49:58.520 align:start position:0%
until the end I hope you loved it Andy
05:49:58.520 --> 05:49:59.788 align:start position:0%
until the end I hope you loved it Andy
and<05:49:58.680> how<05:49:58.798> did<05:49:58.920> you<05:49:59.000> like<05:49:59.160> the<05:49:59.280> new<05:49:59.478> active
05:49:59.788 --> 05:49:59.798 align:start position:0%
and how did you like the new active
05:49:59.798 --> 05:50:02.590 align:start position:0%
and how did you like the new active
lessons<05:50:00.798> I<05:50:00.920> hope<05:50:01.120> they<05:50:01.280> truly<05:50:01.638> tested<05:50:02.080> you<05:50:02.400> and
05:50:02.590 --> 05:50:02.600 align:start position:0%
lessons I hope they truly tested you and
05:50:02.600 --> 05:50:04.910 align:start position:0%
lessons I hope they truly tested you and
helped<05:50:02.878> you<05:50:03.080> build<05:50:03.360> your<05:50:03.520> own<05:50:03.840> developer
05:50:04.910 --> 05:50:04.920 align:start position:0%
helped you build your own developer
05:50:04.920 --> 05:50:07.310 align:start position:0%
helped you build your own developer
mindset<05:50:05.920> if<05:50:06.040> you<05:50:06.120> want<05:50:06.240> to<05:50:06.478> improve<05:50:06.798> your<05:50:07.000> game
05:50:07.310 --> 05:50:07.320 align:start position:0%
mindset if you want to improve your game
05:50:07.320 --> 05:50:09.708 align:start position:0%
mindset if you want to improve your game
and<05:50:07.478> build<05:50:07.840> even<05:50:08.120> better<05:50:08.478> applications<05:50:09.478> now
05:50:09.708 --> 05:50:09.718 align:start position:0%
and build even better applications now
05:50:09.718 --> 05:50:12.548 align:start position:0%
and build even better applications now
using<05:50:10.040> nextjs<05:50:10.798> instead<05:50:11.080> of<05:50:11.240> react<05:50:12.040> you<05:50:12.200> can<05:50:12.360> do
05:50:12.548 --> 05:50:12.558 align:start position:0%
using nextjs instead of react you can do
05:50:12.558 --> 05:50:15.270 align:start position:0%
using nextjs instead of react you can do
so<05:50:12.840> in<05:50:12.958> your<05:50:13.120> nextjs<05:50:13.680> 13<05:50:14.120> course<05:50:14.760> so<05:50:14.958> just<05:50:15.120> go
05:50:15.270 --> 05:50:15.280 align:start position:0%
so in your nextjs 13 course so just go
05:50:15.280 --> 05:50:19.548 align:start position:0%
so in your nextjs 13 course so just go
to<05:50:15.600> jm.pro<05:50:16.600> and<05:50:17.200> check<05:50:17.400> it<05:50:17.680> out<05:50:18.680> within<05:50:18.958> it<05:50:19.320> we
05:50:19.548 --> 05:50:19.558 align:start position:0%
to jm.pro and check it out within it we
05:50:19.558 --> 05:50:22.270 align:start position:0%
to jm.pro and check it out within it we
have<05:50:19.958> many<05:50:20.240> more<05:50:20.600> active<05:50:20.958> lessons<05:50:21.638> and<05:50:21.920> a<05:50:22.080> lot
05:50:22.270 --> 05:50:22.280 align:start position:0%
have many more active lessons and a lot
05:50:22.280 --> 05:50:24.670 align:start position:0%
have many more active lessons and a lot
of<05:50:22.520> interesting<05:50:22.958> things<05:50:23.200> to<05:50:23.360> learn<05:50:23.878> to<05:50:24.080> land<05:50:24.478> a
05:50:24.670 --> 05:50:24.680 align:start position:0%
of interesting things to learn to land a
05:50:24.680 --> 05:50:28.510 align:start position:0%
of interesting things to learn to land a
developer<05:50:25.400> job<05:50:26.400> and<05:50:26.718> finally<05:50:27.360> huge<05:50:27.798> thanks<05:50:28.080> to
05:50:28.510 --> 05:50:28.520 align:start position:0%
developer job and finally huge thanks to
05:50:28.520 --> 05:50:31.190 align:start position:0%
developer job and finally huge thanks to
aight<05:50:29.120> not<05:50:29.360> only<05:50:29.600> for<05:50:29.878> sponsoring<05:50:30.440> this<05:50:30.600> video
05:50:31.190 --> 05:50:31.200 align:start position:0%
aight not only for sponsoring this video
05:50:31.200 --> 05:50:33.350 align:start position:0%
aight not only for sponsoring this video
but<05:50:31.360> for<05:50:31.638> building<05:50:32.080> such<05:50:32.240> a<05:50:32.478> phenomenal
05:50:33.350 --> 05:50:33.360 align:start position:0%
but for building such a phenomenal
05:50:33.360 --> 05:50:36.230 align:start position:0%
but for building such a phenomenal
open-source<05:50:34.040> platform<05:50:34.718> that<05:50:34.840> lets<05:50:35.080> us<05:50:35.280> add<05:50:35.638> OD
05:50:36.230 --> 05:50:36.240 align:start position:0%
open-source platform that lets us add OD
05:50:36.240 --> 05:50:39.110 align:start position:0%
open-source platform that lets us add OD
databases<05:50:37.160> function<05:50:37.520> and<05:50:37.760> storage<05:50:38.718> in<05:50:38.920> a
05:50:39.110 --> 05:50:39.120 align:start position:0%
databases function and storage in a
05:50:39.120 --> 05:50:41.548 align:start position:0%
databases function and storage in a
matter<05:50:39.400> of<05:50:39.600> minutes<05:50:40.520> once<05:50:40.798> again<05:50:41.280> thank<05:50:41.440> you
05:50:41.548 --> 05:50:41.558 align:start position:0%
matter of minutes once again thank you
05:50:41.558 --> 05:50:44.190 align:start position:0%
matter of minutes once again thank you
so<05:50:41.718> much<05:50:41.878> for<05:50:42.120> watching<05:50:43.040> and<05:50:43.360> I'll<05:50:43.520> see<05:50:43.760> you<05:50:44.040> in
05:50:44.190 --> 05:50:44.200 align:start position:0%
so much for watching and I'll see you in
05:50:44.200 --> 05:50:48.878 align:start position:0%
so much for watching and I'll see you in
the<05:50:44.320> next<05:50:44.638> one<05:50:45.320> have<05:50:45.478> a<05:50:45.680> wonderful<05:50:46.280> day
2622311
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.