Stacking Context - Shopify Development Tutorials
내용
[subtitle-meta] lang=en auto=True
hello in this video you're going to see
the new set of array filters introduced
to liquid on February of
2025 these filters are the following
find which Returns the first item that
matches your condition find index which
Returns the index of the first item that
matches your condition has which returns
true when the array includes an item
that matches your condition and then we
have F which returns an array without
the items that match your
condition so now let's go to visual
studio code and these filters in
actions for this I will be running a
local copy up down so over here Vis code
I have already run Shopify def to have
my theme run locally and now let's go to
the theme editor over here and let's add
a reach text section which will be the
section that I will use throughout this
video to Showcase these new filters so
let's save
this and let's maybe add a couple of the
blocks over here so let's add two more
headings let's add talk about your round
two and talk about your round three and
as we have on here let's give this an
INT of one and let's let's also change
the label of the fent to maybe something
like normal let's save once again and
now let's go to visual studio code and
start using the new filters now from
Visual Studio code let's go to reach
text. liquid and let's scroll to the
bottom over here to see the different
block we have available so we have a
block of type heading which was the one
we added we have block of type caption a
block of type text and a block of type
button so let's go to the top over here
let's add a comment and let's say find
filter so let's start by using the find
filter and let's say that for example we
wanted to find a heading blog so heading
blog and this will be equal
to section
box and we're going to use the find
filter over here and it receives two
parameters so first of all we have to
specifies the property and then the
value of this property so headache and
now if I try to print heading block
settings that heading which is the
property that contains the value of this
heading let's go over here and you can
see that I get talk about your brand one
and the reason I get talk about your
round one is because once again as we
hover over this find filter we can see
that it Returns the first item in an
array with a specific property so it
will not return all of the type heading
blocks it will just return the first one
which in this case is this one if we
wanted to return them all in an array we
will use thew filter which has been
around for a while and it will behave
roughly the same so we will have to
specify here on the property then the
value and then it will return return an
array with all of the items in this
array that match this condition over
here and before this filter was added if
you wanted to have this exact Behavior
we will have needed to write some code
like this so over here I am iterating
through every block in section blocks
and if the block. type matches heading
then I am assigning that block to the
variable heading block and immediately
breaking out of the loop so we get only
the first heading block over here
exactly like the find filter is doing as
you can see this line over here is much
shorter than trying to do this and if I
save
this and over here I access settings of
heading we are going to
see that these both return the exact
same thing next we are going to see the
find index filter so I am going to copy
this same line because it is very
similar to what we did with a fine
filter I am just going to replace the
word find here with find index but the
parameters are the same so in this case
what I am trying to do is to find the
index of the first block of type heading
so now let's print this and let's change
the name of this variable so heading
block
index and the save and over here you see
that I have a zero that is because this
is exactly the first block and it starts
at index zero if I wanted to check for
example example the index of a button I
will
replace this with Ty button and now we
get a two because that is the second
item counting from zero so we have first
The Heading then this block over here
and then the
block and before to do something like
this it will be with all of this code so
once again looping through all of the
blocks in section blocks and we check if
the block the type is button which is
the one group we checking over here and
if it is then we assign the value of
four Loop index zero to this variable
over here which it is head lock but
could be bottom block index so that's C
that and over here we're going to see
that in both cases we get a
two next we are going to see the has
filter so over here let's
print whether section that blogs has a
blog type heading or
not so if I save this over here we see
and if we add an S over here of type
headings we're going to get false
because there is no block of type
headings so this filter is very
simple and before to do something like
this we will have needed to do something
like what I am doing this for Loop over
here where we start by by assigning has
heading to fals and then we look through
all of the blogs in section the blogs
and if we find one that has a type of
heading then we assign has heading to
Dro and we bring the value of has
heading over here and in both cases we
get true and if over here I were to
change has headings we are going to see
that now we have false over here because
this section has no blocks of type
headings next we are going to see the
reject filter so this one does the
opposite of what the word filter does so
in this case let's create a variable
over here non heading blocks and what we
are going to do is section of
blocks and we're going to
project all blocks that have a type of
heading and now let's print over here
non-heading blocks. size and we should
get a two as you can see over here
because out of all of the blocks in this
section only these two are of a type
older than
heading now one limitation that is
important to know is that at the moment
of launch these filters do not support
Nest properties so let's see what do I
mean by this so for example let's say
that I wanted to check whether we have a
learn more button or not for that you
will think that I just need to replace
the property name over here from TY to
settings. button
label and then the value from heading to
learn
more however as this is a nested
property we are going to see over here
that we get false even though we do have
a learn more Buton as you can see over
here and if we were to do this at the
top instead in the way that it was done
before by trading through all of the
blocks I just need to change this over
here to be settings. bottom
label and the value to be learn more and
we can change the name of this property
to has B more
button and T it here as well we are
going to see that in this case we get
and the reason for that is because by
doing it this way we are able to check
for nested properties but by using the
house filter we are not because Nest
properties are not currently
supported there is an open issue in the
official liquid repository maintained by
Shopify to add support for nested
properties in a filters but at the time
I am recording this video this feature
is not available
yet and there you have it these are the
new filters available in liquid they
don't radically change the way we write
liquid code but they offer some nice
quality of life improvements in some
scenarios so if you found this video
helpful remember to like And subscribe
for more Shopify related content and I
will see you all in the next one
원문 자막 펼치기
WEBVTT Kind: captions Language: en 00:00:00.560 --> 00:00:01.910 align:start position:0% hello<00:00:00.880><c> in</c><00:00:01.000><c> this</c><00:00:01.160><c> video</c><00:00:01.360><c> you're</c><00:00:01.520><c> going</c><00:00:01.680><c> to</c><00:00:01.760><c> see</c> 00:00:01.910 --> 00:00:01.920 align:start position:0% hello in this video you're going to see 00:00:01.920 --> 00:00:03.669 align:start position:0% hello in this video you're going to see the<00:00:02.040><c> new</c><00:00:02.200><c> set</c><00:00:02.360><c> of</c><00:00:02.480><c> array</c><00:00:02.760><c> filters</c><00:00:03.199><c> introduced</c> 00:00:03.669 --> 00:00:03.679 align:start position:0% the new set of array filters introduced 00:00:03.679 --> 00:00:06.309 align:start position:0% the new set of array filters introduced to<00:00:03.800><c> liquid</c><00:00:04.200><c> on</c><00:00:04.480><c> February</c><00:00:04.920><c> of</c> 00:00:06.309 --> 00:00:06.319 align:start position:0% to liquid on February of 00:00:06.319 --> 00:00:09.190 align:start position:0% to liquid on February of 2025<00:00:07.319><c> these</c><00:00:07.520><c> filters</c><00:00:08.000><c> are</c><00:00:08.160><c> the</c><00:00:08.280><c> following</c> 00:00:09.190 --> 00:00:09.200 align:start position:0% 2025 these filters are the following 00:00:09.200 --> 00:00:11.070 align:start position:0% 2025 these filters are the following find<00:00:09.760><c> which</c><00:00:10.080><c> Returns</c><00:00:10.320><c> the</c><00:00:10.480><c> first</c><00:00:10.679><c> item</c><00:00:10.920><c> that</c> 00:00:11.070 --> 00:00:11.080 align:start position:0% find which Returns the first item that 00:00:11.080 --> 00:00:13.950 align:start position:0% find which Returns the first item that matches<00:00:11.440><c> your</c><00:00:11.799><c> condition</c><00:00:12.679><c> find</c><00:00:13.080><c> index</c><00:00:13.679><c> which</c> 00:00:13.950 --> 00:00:13.960 align:start position:0% matches your condition find index which 00:00:13.960 --> 00:00:15.589 align:start position:0% matches your condition find index which Returns<00:00:14.240><c> the</c><00:00:14.360><c> index</c><00:00:14.719><c> of</c><00:00:14.879><c> the</c><00:00:15.000><c> first</c><00:00:15.200><c> item</c><00:00:15.440><c> that</c> 00:00:15.589 --> 00:00:15.599 align:start position:0% Returns the index of the first item that 00:00:15.599 --> 00:00:18.310 align:start position:0% Returns the index of the first item that matches<00:00:15.839><c> your</c><00:00:16.240><c> condition</c><00:00:17.160><c> has</c><00:00:17.720><c> which</c><00:00:18.039><c> returns</c> 00:00:18.310 --> 00:00:18.320 align:start position:0% matches your condition has which returns 00:00:18.320 --> 00:00:20.950 align:start position:0% matches your condition has which returns true<00:00:19.000><c> when</c><00:00:19.160><c> the</c><00:00:19.320><c> array</c><00:00:19.640><c> includes</c><00:00:20.519><c> an</c><00:00:20.720><c> item</c> 00:00:20.950 --> 00:00:20.960 align:start position:0% true when the array includes an item 00:00:20.960 --> 00:00:22.710 align:start position:0% true when the array includes an item that<00:00:21.119><c> matches</c><00:00:21.439><c> your</c><00:00:21.760><c> condition</c><00:00:22.320><c> and</c><00:00:22.439><c> then</c><00:00:22.600><c> we</c> 00:00:22.710 --> 00:00:22.720 align:start position:0% that matches your condition and then we 00:00:22.720 --> 00:00:24.990 align:start position:0% that matches your condition and then we have<00:00:23.000><c> F</c><00:00:23.760><c> which</c><00:00:24.119><c> returns</c><00:00:24.320><c> an</c><00:00:24.480><c> array</c><00:00:24.760><c> without</c> 00:00:24.990 --> 00:00:25.000 align:start position:0% have F which returns an array without 00:00:25.000 --> 00:00:27.109 align:start position:0% have F which returns an array without the<00:00:25.119><c> items</c><00:00:25.519><c> that</c><00:00:25.680><c> match</c><00:00:26.000><c> your</c> 00:00:27.109 --> 00:00:27.119 align:start position:0% the items that match your 00:00:27.119 --> 00:00:29.269 align:start position:0% the items that match your condition<00:00:28.119><c> so</c><00:00:28.320><c> now</c><00:00:28.519><c> let's</c><00:00:28.720><c> go</c><00:00:28.840><c> to</c><00:00:29.000><c> visual</c> 00:00:29.269 --> 00:00:29.279 align:start position:0% condition so now let's go to visual 00:00:29.279 --> 00:00:31.830 align:start position:0% condition so now let's go to visual studio<00:00:29.560><c> code</c><00:00:29.759><c> and</c><00:00:30.119><c> these</c><00:00:30.240><c> filters</c><00:00:30.560><c> in</c> 00:00:31.830 --> 00:00:31.840 align:start position:0% studio code and these filters in 00:00:31.840 --> 00:00:33.950 align:start position:0% studio code and these filters in actions<00:00:32.840><c> for</c><00:00:33.120><c> this</c><00:00:33.239><c> I</c><00:00:33.360><c> will</c><00:00:33.480><c> be</c><00:00:33.600><c> running</c><00:00:33.840><c> a</c> 00:00:33.950 --> 00:00:33.960 align:start position:0% actions for this I will be running a 00:00:33.960 --> 00:00:37.670 align:start position:0% actions for this I will be running a local<00:00:34.239><c> copy</c><00:00:34.520><c> up</c><00:00:34.760><c> down</c><00:00:35.680><c> so</c><00:00:36.360><c> over</c><00:00:36.600><c> here</c><00:00:36.840><c> Vis</c><00:00:37.440><c> code</c> 00:00:37.670 --> 00:00:37.680 align:start position:0% local copy up down so over here Vis code 00:00:37.680 --> 00:00:40.310 align:start position:0% local copy up down so over here Vis code I<00:00:37.800><c> have</c><00:00:38.000><c> already</c><00:00:38.280><c> run</c><00:00:38.559><c> Shopify</c><00:00:39.239><c> def</c><00:00:39.800><c> to</c><00:00:40.079><c> have</c> 00:00:40.310 --> 00:00:40.320 align:start position:0% I have already run Shopify def to have 00:00:40.320 --> 00:00:42.950 align:start position:0% I have already run Shopify def to have my<00:00:40.760><c> theme</c><00:00:41.039><c> run</c><00:00:41.360><c> locally</c><00:00:42.160><c> and</c><00:00:42.320><c> now</c><00:00:42.520><c> let's</c><00:00:42.719><c> go</c><00:00:42.840><c> to</c> 00:00:42.950 --> 00:00:42.960 align:start position:0% my theme run locally and now let's go to 00:00:42.960 --> 00:00:45.750 align:start position:0% my theme run locally and now let's go to the<00:00:43.079><c> theme</c><00:00:43.320><c> editor</c><00:00:43.719><c> over</c><00:00:44.000><c> here</c><00:00:44.879><c> and</c><00:00:45.079><c> let's</c><00:00:45.399><c> add</c> 00:00:45.750 --> 00:00:45.760 align:start position:0% the theme editor over here and let's add 00:00:45.760 --> 00:00:48.549 align:start position:0% the theme editor over here and let's add a<00:00:46.039><c> reach</c><00:00:46.559><c> text</c><00:00:47.079><c> section</c><00:00:47.879><c> which</c><00:00:48.039><c> will</c><00:00:48.160><c> be</c><00:00:48.320><c> the</c> 00:00:48.549 --> 00:00:48.559 align:start position:0% a reach text section which will be the 00:00:48.559 --> 00:00:50.950 align:start position:0% a reach text section which will be the section<00:00:49.199><c> that</c><00:00:49.920><c> I</c><00:00:50.039><c> will</c><00:00:50.199><c> use</c><00:00:50.440><c> throughout</c><00:00:50.800><c> this</c> 00:00:50.950 --> 00:00:50.960 align:start position:0% section that I will use throughout this 00:00:50.960 --> 00:00:53.510 align:start position:0% section that I will use throughout this video<00:00:51.559><c> to</c><00:00:51.800><c> Showcase</c><00:00:52.320><c> these</c><00:00:52.480><c> new</c><00:00:52.640><c> filters</c><00:00:53.280><c> so</c> 00:00:53.510 --> 00:00:53.520 align:start position:0% video to Showcase these new filters so 00:00:53.520 --> 00:00:56.110 align:start position:0% video to Showcase these new filters so let's<00:00:53.719><c> save</c> 00:00:56.110 --> 00:00:56.120 align:start position:0% let's save 00:00:56.120 --> 00:00:59.150 align:start position:0% let's save this<00:00:57.120><c> and</c><00:00:57.399><c> let's</c><00:00:57.640><c> maybe</c><00:00:57.960><c> add</c><00:00:58.320><c> a</c><00:00:58.480><c> couple</c><00:00:58.719><c> of</c><00:00:58.920><c> the</c> 00:00:59.150 --> 00:00:59.160 align:start position:0% this and let's maybe add a couple of the 00:00:59.160 --> 00:01:01.910 align:start position:0% this and let's maybe add a couple of the blocks<00:00:59.519><c> over</c><00:00:59.719><c> here</c><00:01:00.039><c> so</c><00:01:00.239><c> let's</c><00:01:00.519><c> add</c><00:01:01.160><c> two</c><00:01:01.359><c> more</c> 00:01:01.910 --> 00:01:01.920 align:start position:0% blocks over here so let's add two more 00:01:01.920 --> 00:01:04.950 align:start position:0% blocks over here so let's add two more headings<00:01:02.920><c> let's</c><00:01:03.199><c> add</c><00:01:03.879><c> talk</c><00:01:04.119><c> about</c><00:01:04.320><c> your</c><00:01:04.479><c> round</c> 00:01:04.950 --> 00:01:04.960 align:start position:0% headings let's add talk about your round 00:01:04.960 --> 00:01:08.469 align:start position:0% headings let's add talk about your round two<00:01:05.880><c> and</c><00:01:06.119><c> talk</c><00:01:06.320><c> about</c><00:01:06.520><c> your</c><00:01:06.720><c> round</c><00:01:07.320><c> three</c><00:01:08.240><c> and</c> 00:01:08.469 --> 00:01:08.479 align:start position:0% two and talk about your round three and 00:01:08.479 --> 00:01:10.310 align:start position:0% two and talk about your round three and as<00:01:08.640><c> we</c><00:01:08.799><c> have</c><00:01:09.119><c> on</c><00:01:09.360><c> here</c><00:01:09.640><c> let's</c><00:01:09.880><c> give</c><00:01:10.040><c> this</c><00:01:10.159><c> an</c> 00:01:10.310 --> 00:01:10.320 align:start position:0% as we have on here let's give this an 00:01:10.320 --> 00:01:13.230 align:start position:0% as we have on here let's give this an INT<00:01:10.600><c> of</c><00:01:10.720><c> one</c><00:01:11.640><c> and</c><00:01:11.840><c> let's</c><00:01:12.320><c> let's</c><00:01:12.560><c> also</c><00:01:12.920><c> change</c> 00:01:13.230 --> 00:01:13.240 align:start position:0% INT of one and let's let's also change 00:01:13.240 --> 00:01:14.950 align:start position:0% INT of one and let's let's also change the<00:01:13.400><c> label</c><00:01:13.640><c> of</c><00:01:13.759><c> the</c><00:01:13.880><c> fent</c><00:01:14.200><c> to</c><00:01:14.320><c> maybe</c><00:01:14.640><c> something</c> 00:01:14.950 --> 00:01:14.960 align:start position:0% the label of the fent to maybe something 00:01:14.960 --> 00:01:18.070 align:start position:0% the label of the fent to maybe something like<00:01:15.560><c> normal</c><00:01:16.560><c> let's</c><00:01:16.720><c> save</c><00:01:17.000><c> once</c><00:01:17.240><c> again</c><00:01:17.920><c> and</c> 00:01:18.070 --> 00:01:18.080 align:start position:0% like normal let's save once again and 00:01:18.080 --> 00:01:20.030 align:start position:0% like normal let's save once again and now<00:01:18.240><c> let's</c><00:01:18.479><c> go</c><00:01:18.640><c> to</c><00:01:18.880><c> visual</c><00:01:19.159><c> studio</c><00:01:19.479><c> code</c><00:01:19.799><c> and</c> 00:01:20.030 --> 00:01:20.040 align:start position:0% now let's go to visual studio code and 00:01:20.040 --> 00:01:22.830 align:start position:0% now let's go to visual studio code and start<00:01:20.560><c> using</c><00:01:20.920><c> the</c><00:01:21.000><c> new</c><00:01:21.479><c> filters</c><00:01:22.479><c> now</c><00:01:22.640><c> from</c> 00:01:22.830 --> 00:01:22.840 align:start position:0% start using the new filters now from 00:01:22.840 --> 00:01:24.830 align:start position:0% start using the new filters now from Visual<00:01:23.159><c> Studio</c><00:01:23.479><c> code</c><00:01:23.840><c> let's</c><00:01:24.119><c> go</c><00:01:24.240><c> to</c><00:01:24.479><c> reach</c> 00:01:24.830 --> 00:01:24.840 align:start position:0% Visual Studio code let's go to reach 00:01:24.840 --> 00:01:27.630 align:start position:0% Visual Studio code let's go to reach text.<00:01:25.560><c> liquid</c><00:01:26.439><c> and</c><00:01:26.680><c> let's</c><00:01:27.000><c> scroll</c><00:01:27.360><c> to</c><00:01:27.520><c> the</c> 00:01:27.630 --> 00:01:27.640 align:start position:0% text. liquid and let's scroll to the 00:01:27.640 --> 00:01:29.670 align:start position:0% text. liquid and let's scroll to the bottom<00:01:28.040><c> over</c><00:01:28.320><c> here</c><00:01:28.880><c> to</c><00:01:29.040><c> see</c><00:01:29.240><c> the</c><00:01:29.400><c> different</c> 00:01:29.670 --> 00:01:29.680 align:start position:0% bottom over here to see the different 00:01:29.680 --> 00:01:31.950 align:start position:0% bottom over here to see the different block<00:01:30.119><c> we</c><00:01:30.200><c> have</c><00:01:30.400><c> available</c><00:01:31.159><c> so</c><00:01:31.360><c> we</c><00:01:31.560><c> have</c><00:01:31.799><c> a</c> 00:01:31.950 --> 00:01:31.960 align:start position:0% block we have available so we have a 00:01:31.960 --> 00:01:34.069 align:start position:0% block we have available so we have a block<00:01:32.159><c> of</c><00:01:32.320><c> type</c><00:01:32.560><c> heading</c><00:01:33.200><c> which</c><00:01:33.399><c> was</c><00:01:33.560><c> the</c><00:01:33.720><c> one</c> 00:01:34.069 --> 00:01:34.079 align:start position:0% block of type heading which was the one 00:01:34.079 --> 00:01:37.550 align:start position:0% block of type heading which was the one we<00:01:34.280><c> added</c><00:01:35.240><c> we</c><00:01:35.399><c> have</c><00:01:35.759><c> block</c><00:01:36.079><c> of</c><00:01:36.320><c> type</c><00:01:36.720><c> caption</c><00:01:37.439><c> a</c> 00:01:37.550 --> 00:01:37.560 align:start position:0% we added we have block of type caption a 00:01:37.560 --> 00:01:40.069 align:start position:0% we added we have block of type caption a block<00:01:37.759><c> of</c><00:01:38.000><c> type</c><00:01:38.280><c> text</c><00:01:38.960><c> and</c><00:01:39.079><c> a</c><00:01:39.240><c> block</c><00:01:39.520><c> of</c><00:01:39.680><c> type</c> 00:01:40.069 --> 00:01:40.079 align:start position:0% block of type text and a block of type 00:01:40.079 --> 00:01:43.870 align:start position:0% block of type text and a block of type button<00:01:41.079><c> so</c><00:01:41.479><c> let's</c><00:01:41.720><c> go</c><00:01:41.840><c> to</c><00:01:41.960><c> the</c><00:01:42.159><c> top</c><00:01:42.479><c> over</c><00:01:42.880><c> here</c> 00:01:43.870 --> 00:01:43.880 align:start position:0% button so let's go to the top over here 00:01:43.880 --> 00:01:47.550 align:start position:0% button so let's go to the top over here let's<00:01:44.119><c> add</c><00:01:44.320><c> a</c><00:01:44.799><c> comment</c><00:01:45.799><c> and</c><00:01:46.119><c> let's</c><00:01:46.360><c> say</c><00:01:47.240><c> find</c> 00:01:47.550 --> 00:01:47.560 align:start position:0% let's add a comment and let's say find 00:01:47.560 --> 00:01:49.870 align:start position:0% let's add a comment and let's say find filter<00:01:48.079><c> so</c><00:01:48.360><c> let's</c><00:01:48.640><c> start</c><00:01:49.040><c> by</c><00:01:49.159><c> using</c><00:01:49.399><c> the</c><00:01:49.520><c> find</c> 00:01:49.870 --> 00:01:49.880 align:start position:0% filter so let's start by using the find 00:01:49.880 --> 00:01:51.910 align:start position:0% filter so let's start by using the find filter<00:01:50.640><c> and</c><00:01:50.799><c> let's</c><00:01:50.960><c> say</c><00:01:51.159><c> that</c><00:01:51.280><c> for</c><00:01:51.479><c> example</c><00:01:51.799><c> we</c> 00:01:51.910 --> 00:01:51.920 align:start position:0% filter and let's say that for example we 00:01:51.920 --> 00:01:55.429 align:start position:0% filter and let's say that for example we wanted<00:01:52.200><c> to</c><00:01:52.439><c> find</c><00:01:53.439><c> a</c><00:01:53.640><c> heading</c><00:01:53.960><c> blog</c><00:01:54.640><c> so</c><00:01:55.119><c> heading</c> 00:01:55.429 --> 00:01:55.439 align:start position:0% wanted to find a heading blog so heading 00:01:55.439 --> 00:01:57.630 align:start position:0% wanted to find a heading blog so heading blog<00:01:55.880><c> and</c><00:01:56.079><c> this</c><00:01:56.200><c> will</c><00:01:56.360><c> be</c><00:01:56.520><c> equal</c> 00:01:57.630 --> 00:01:57.640 align:start position:0% blog and this will be equal 00:01:57.640 --> 00:02:00.389 align:start position:0% blog and this will be equal to<00:01:58.640><c> section</c> 00:02:00.389 --> 00:02:00.399 align:start position:0% to section 00:02:00.399 --> 00:02:02.590 align:start position:0% to section box<00:02:01.399><c> and</c><00:02:01.520><c> we're</c><00:02:01.719><c> going</c><00:02:01.840><c> to</c><00:02:01.960><c> use</c><00:02:02.119><c> the</c><00:02:02.280><c> find</c> 00:02:02.590 --> 00:02:02.600 align:start position:0% box and we're going to use the find 00:02:02.600 --> 00:02:05.630 align:start position:0% box and we're going to use the find filter<00:02:03.039><c> over</c><00:02:03.280><c> here</c><00:02:04.200><c> and</c><00:02:04.600><c> it</c><00:02:05.000><c> receives</c><00:02:05.280><c> two</c> 00:02:05.630 --> 00:02:05.640 align:start position:0% filter over here and it receives two 00:02:05.640 --> 00:02:07.870 align:start position:0% filter over here and it receives two parameters<00:02:06.640><c> so</c><00:02:07.039><c> first</c><00:02:07.200><c> of</c><00:02:07.360><c> all</c><00:02:07.479><c> we</c><00:02:07.600><c> have</c><00:02:07.680><c> to</c> 00:02:07.870 --> 00:02:07.880 align:start position:0% parameters so first of all we have to 00:02:07.880 --> 00:02:10.350 align:start position:0% parameters so first of all we have to specifies<00:02:08.560><c> the</c><00:02:08.759><c> property</c><00:02:09.360><c> and</c><00:02:09.560><c> then</c><00:02:10.160><c> the</c> 00:02:10.350 --> 00:02:10.360 align:start position:0% specifies the property and then the 00:02:10.360 --> 00:02:13.270 align:start position:0% specifies the property and then the value<00:02:10.640><c> of</c><00:02:10.800><c> this</c><00:02:11.039><c> property</c><00:02:11.599><c> so</c><00:02:12.120><c> headache</c><00:02:13.120><c> and</c> 00:02:13.270 --> 00:02:13.280 align:start position:0% value of this property so headache and 00:02:13.280 --> 00:02:17.750 align:start position:0% value of this property so headache and now<00:02:14.080><c> if</c><00:02:14.239><c> I</c><00:02:14.440><c> try</c><00:02:14.920><c> to</c><00:02:15.160><c> print</c><00:02:15.879><c> heading</c><00:02:16.120><c> block</c> 00:02:17.750 --> 00:02:17.760 align:start position:0% now if I try to print heading block 00:02:17.760 --> 00:02:21.110 align:start position:0% now if I try to print heading block settings<00:02:18.760><c> that</c><00:02:19.160><c> heading</c><00:02:19.760><c> which</c><00:02:19.959><c> is</c><00:02:20.920><c> the</c> 00:02:21.110 --> 00:02:21.120 align:start position:0% settings that heading which is the 00:02:21.120 --> 00:02:23.309 align:start position:0% settings that heading which is the property<00:02:21.560><c> that</c><00:02:21.720><c> contains</c><00:02:22.319><c> the</c><00:02:22.480><c> value</c><00:02:22.720><c> of</c><00:02:22.840><c> this</c> 00:02:23.309 --> 00:02:23.319 align:start position:0% property that contains the value of this 00:02:23.319 --> 00:02:25.949 align:start position:0% property that contains the value of this heading<00:02:24.319><c> let's</c><00:02:24.560><c> go</c><00:02:24.760><c> over</c><00:02:25.080><c> here</c><00:02:25.640><c> and</c><00:02:25.760><c> you</c><00:02:25.840><c> can</c> 00:02:25.949 --> 00:02:25.959 align:start position:0% heading let's go over here and you can 00:02:25.959 --> 00:02:30.110 align:start position:0% heading let's go over here and you can see<00:02:26.160><c> that</c><00:02:26.280><c> I</c><00:02:26.480><c> get</c><00:02:26.720><c> talk</c><00:02:27.000><c> about</c><00:02:27.200><c> your</c><00:02:27.360><c> brand</c><00:02:27.680><c> one</c> 00:02:30.110 --> 00:02:30.120 align:start position:0% see that I get talk about your brand one 00:02:30.120 --> 00:02:31.750 align:start position:0% see that I get talk about your brand one and<00:02:30.280><c> the</c><00:02:30.400><c> reason</c><00:02:30.640><c> I</c><00:02:30.840><c> get</c><00:02:31.160><c> talk</c><00:02:31.400><c> about</c><00:02:31.599><c> your</c> 00:02:31.750 --> 00:02:31.760 align:start position:0% and the reason I get talk about your 00:02:31.760 --> 00:02:34.670 align:start position:0% and the reason I get talk about your round<00:02:32.040><c> one</c><00:02:32.440><c> is</c><00:02:32.640><c> because</c><00:02:33.640><c> once</c><00:02:33.879><c> again</c><00:02:34.160><c> as</c><00:02:34.360><c> we</c> 00:02:34.670 --> 00:02:34.680 align:start position:0% round one is because once again as we 00:02:34.680 --> 00:02:36.750 align:start position:0% round one is because once again as we hover<00:02:35.040><c> over</c><00:02:35.440><c> this</c><00:02:35.640><c> find</c><00:02:35.920><c> filter</c><00:02:36.280><c> we</c><00:02:36.360><c> can</c><00:02:36.480><c> see</c> 00:02:36.750 --> 00:02:36.760 align:start position:0% hover over this find filter we can see 00:02:36.760 --> 00:02:38.670 align:start position:0% hover over this find filter we can see that<00:02:37.040><c> it</c><00:02:37.360><c> Returns</c><00:02:37.640><c> the</c><00:02:37.879><c> first</c><00:02:38.200><c> item</c><00:02:38.440><c> in</c><00:02:38.560><c> an</c> 00:02:38.670 --> 00:02:38.680 align:start position:0% that it Returns the first item in an 00:02:38.680 --> 00:02:40.790 align:start position:0% that it Returns the first item in an array<00:02:39.040><c> with</c><00:02:39.159><c> a</c><00:02:39.280><c> specific</c><00:02:39.720><c> property</c><00:02:40.440><c> so</c><00:02:40.680><c> it</c> 00:02:40.790 --> 00:02:40.800 align:start position:0% array with a specific property so it 00:02:40.800 --> 00:02:43.270 align:start position:0% array with a specific property so it will<00:02:40.920><c> not</c><00:02:41.319><c> return</c><00:02:41.760><c> all</c><00:02:42.159><c> of</c><00:02:42.360><c> the</c><00:02:42.519><c> type</c><00:02:42.959><c> heading</c> 00:02:43.270 --> 00:02:43.280 align:start position:0% will not return all of the type heading 00:02:43.280 --> 00:02:45.509 align:start position:0% will not return all of the type heading blocks<00:02:44.040><c> it</c><00:02:44.159><c> will</c><00:02:44.319><c> just</c><00:02:44.599><c> return</c><00:02:44.840><c> the</c><00:02:44.959><c> first</c><00:02:45.200><c> one</c> 00:02:45.509 --> 00:02:45.519 align:start position:0% blocks it will just return the first one 00:02:45.519 --> 00:02:47.869 align:start position:0% blocks it will just return the first one which<00:02:45.680><c> in</c><00:02:45.879><c> this</c><00:02:46.120><c> case</c><00:02:46.400><c> is</c><00:02:46.640><c> this</c><00:02:46.760><c> one</c><00:02:47.640><c> if</c><00:02:47.760><c> we</c> 00:02:47.869 --> 00:02:47.879 align:start position:0% which in this case is this one if we 00:02:47.879 --> 00:02:49.990 align:start position:0% which in this case is this one if we wanted<00:02:48.159><c> to</c><00:02:48.440><c> return</c><00:02:48.680><c> them</c><00:02:48.920><c> all</c><00:02:49.159><c> in</c><00:02:49.280><c> an</c><00:02:49.440><c> array</c><00:02:49.879><c> we</c> 00:02:49.990 --> 00:02:50.000 align:start position:0% wanted to return them all in an array we 00:02:50.000 --> 00:02:52.350 align:start position:0% wanted to return them all in an array we will<00:02:50.200><c> use</c><00:02:50.760><c> thew</c><00:02:51.280><c> filter</c><00:02:51.840><c> which</c><00:02:52.040><c> has</c><00:02:52.159><c> been</c> 00:02:52.350 --> 00:02:52.360 align:start position:0% will use thew filter which has been 00:02:52.360 --> 00:02:55.509 align:start position:0% will use thew filter which has been around<00:02:52.840><c> for</c><00:02:53.000><c> a</c><00:02:53.159><c> while</c><00:02:54.080><c> and</c><00:02:54.400><c> it</c><00:02:54.519><c> will</c><00:02:54.760><c> behave</c> 00:02:55.509 --> 00:02:55.519 align:start position:0% around for a while and it will behave 00:02:55.519 --> 00:02:57.350 align:start position:0% around for a while and it will behave roughly<00:02:55.879><c> the</c><00:02:56.000><c> same</c><00:02:56.360><c> so</c><00:02:56.879><c> we</c><00:02:56.959><c> will</c><00:02:57.120><c> have</c><00:02:57.239><c> to</c> 00:02:57.350 --> 00:02:57.360 align:start position:0% roughly the same so we will have to 00:02:57.360 --> 00:02:58.830 align:start position:0% roughly the same so we will have to specify<00:02:57.720><c> here</c><00:02:57.840><c> on</c><00:02:57.920><c> the</c><00:02:58.080><c> property</c><00:02:58.519><c> then</c><00:02:58.680><c> the</c> 00:02:58.830 --> 00:02:58.840 align:start position:0% specify here on the property then the 00:02:58.840 --> 00:03:00.149 align:start position:0% specify here on the property then the value<00:02:59.200><c> and</c><00:02:59.319><c> then</c><00:02:59.400><c> it</c><00:02:59.519><c> will</c><00:02:59.840><c> return</c><00:02:59.879><c> return</c><00:03:00.040><c> an</c> 00:03:00.149 --> 00:03:00.159 align:start position:0% value and then it will return return an 00:03:00.159 --> 00:03:02.309 align:start position:0% value and then it will return return an array<00:03:00.879><c> with</c><00:03:01.280><c> all</c><00:03:01.440><c> of</c><00:03:01.560><c> the</c><00:03:01.720><c> items</c><00:03:02.040><c> in</c><00:03:02.159><c> this</c> 00:03:02.309 --> 00:03:02.319 align:start position:0% array with all of the items in this 00:03:02.319 --> 00:03:04.670 align:start position:0% array with all of the items in this array<00:03:02.760><c> that</c><00:03:03.040><c> match</c><00:03:03.440><c> this</c><00:03:03.760><c> condition</c><00:03:03.959><c> over</c> 00:03:04.670 --> 00:03:04.680 align:start position:0% array that match this condition over 00:03:04.680 --> 00:03:07.149 align:start position:0% array that match this condition over here<00:03:05.680><c> and</c><00:03:05.879><c> before</c><00:03:06.159><c> this</c><00:03:06.280><c> filter</c><00:03:06.599><c> was</c><00:03:06.760><c> added</c><00:03:07.080><c> if</c> 00:03:07.149 --> 00:03:07.159 align:start position:0% here and before this filter was added if 00:03:07.159 --> 00:03:09.390 align:start position:0% here and before this filter was added if you<00:03:07.280><c> wanted</c><00:03:07.519><c> to</c><00:03:08.120><c> have</c><00:03:08.319><c> this</c><00:03:08.560><c> exact</c><00:03:08.879><c> Behavior</c> 00:03:09.390 --> 00:03:09.400 align:start position:0% you wanted to have this exact Behavior 00:03:09.400 --> 00:03:11.430 align:start position:0% you wanted to have this exact Behavior we<00:03:09.480><c> will</c><00:03:09.680><c> have</c><00:03:09.799><c> needed</c><00:03:10.080><c> to</c><00:03:10.280><c> write</c><00:03:10.760><c> some</c><00:03:11.080><c> code</c> 00:03:11.430 --> 00:03:11.440 align:start position:0% we will have needed to write some code 00:03:11.440 --> 00:03:14.149 align:start position:0% we will have needed to write some code like<00:03:11.640><c> this</c><00:03:12.239><c> so</c><00:03:12.519><c> over</c><00:03:12.799><c> here</c><00:03:13.159><c> I</c><00:03:13.239><c> am</c><00:03:13.400><c> iterating</c> 00:03:14.149 --> 00:03:14.159 align:start position:0% like this so over here I am iterating 00:03:14.159 --> 00:03:16.390 align:start position:0% like this so over here I am iterating through<00:03:14.840><c> every</c><00:03:15.080><c> block</c><00:03:15.400><c> in</c><00:03:15.519><c> section</c><00:03:16.000><c> blocks</c> 00:03:16.390 --> 00:03:16.400 align:start position:0% through every block in section blocks 00:03:16.400 --> 00:03:18.670 align:start position:0% through every block in section blocks and<00:03:16.519><c> if</c><00:03:16.640><c> the</c><00:03:16.799><c> block.</c><00:03:17.239><c> type</c><00:03:17.599><c> matches</c><00:03:18.080><c> heading</c> 00:03:18.670 --> 00:03:18.680 align:start position:0% and if the block. type matches heading 00:03:18.680 --> 00:03:21.229 align:start position:0% and if the block. type matches heading then<00:03:19.080><c> I</c><00:03:19.200><c> am</c><00:03:19.400><c> assigning</c><00:03:20.120><c> that</c><00:03:20.319><c> block</c><00:03:20.640><c> to</c><00:03:20.840><c> the</c> 00:03:21.229 --> 00:03:21.239 align:start position:0% then I am assigning that block to the 00:03:21.239 --> 00:03:23.990 align:start position:0% then I am assigning that block to the variable<00:03:21.680><c> heading</c><00:03:21.920><c> block</c><00:03:22.879><c> and</c><00:03:23.280><c> immediately</c> 00:03:23.990 --> 00:03:24.000 align:start position:0% variable heading block and immediately 00:03:24.000 --> 00:03:26.589 align:start position:0% variable heading block and immediately breaking<00:03:24.360><c> out</c><00:03:24.480><c> of</c><00:03:24.599><c> the</c><00:03:24.720><c> loop</c><00:03:25.440><c> so</c><00:03:25.720><c> we</c><00:03:25.920><c> get</c><00:03:26.319><c> only</c> 00:03:26.589 --> 00:03:26.599 align:start position:0% breaking out of the loop so we get only 00:03:26.599 --> 00:03:28.190 align:start position:0% breaking out of the loop so we get only the<00:03:26.720><c> first</c><00:03:27.040><c> heading</c><00:03:27.319><c> block</c><00:03:27.640><c> over</c><00:03:27.879><c> here</c> 00:03:28.190 --> 00:03:28.200 align:start position:0% the first heading block over here 00:03:28.200 --> 00:03:30.270 align:start position:0% the first heading block over here exactly<00:03:28.599><c> like</c><00:03:28.720><c> the</c><00:03:28.879><c> find</c><00:03:29.120><c> filter</c><00:03:29.400><c> is</c><00:03:29.519><c> doing</c><00:03:30.159><c> as</c> 00:03:30.270 --> 00:03:30.280 align:start position:0% exactly like the find filter is doing as 00:03:30.280 --> 00:03:32.550 align:start position:0% exactly like the find filter is doing as you<00:03:30.400><c> can</c><00:03:30.519><c> see</c><00:03:31.120><c> this</c><00:03:31.319><c> line</c><00:03:31.560><c> over</c><00:03:31.760><c> here</c><00:03:32.000><c> is</c><00:03:32.360><c> much</c> 00:03:32.550 --> 00:03:32.560 align:start position:0% you can see this line over here is much 00:03:32.560 --> 00:03:35.350 align:start position:0% you can see this line over here is much shorter<00:03:33.040><c> than</c><00:03:33.360><c> trying</c><00:03:33.599><c> to</c><00:03:33.720><c> do</c><00:03:34.000><c> this</c><00:03:35.000><c> and</c><00:03:35.120><c> if</c><00:03:35.239><c> I</c> 00:03:35.350 --> 00:03:35.360 align:start position:0% shorter than trying to do this and if I 00:03:35.360 --> 00:03:36.390 align:start position:0% shorter than trying to do this and if I save 00:03:36.390 --> 00:03:36.400 align:start position:0% save 00:03:36.400 --> 00:03:40.309 align:start position:0% save this<00:03:37.400><c> and</c><00:03:37.680><c> over</c><00:03:37.959><c> here</c><00:03:38.159><c> I</c><00:03:38.480><c> access</c><00:03:39.000><c> settings</c><00:03:39.439><c> of</c> 00:03:40.309 --> 00:03:40.319 align:start position:0% this and over here I access settings of 00:03:40.319 --> 00:03:42.429 align:start position:0% this and over here I access settings of heading<00:03:41.319><c> we</c><00:03:41.400><c> are</c><00:03:41.560><c> going</c><00:03:41.720><c> to</c> 00:03:42.429 --> 00:03:42.439 align:start position:0% heading we are going to 00:03:42.439 --> 00:03:45.750 align:start position:0% heading we are going to see<00:03:43.439><c> that</c><00:03:43.720><c> these</c><00:03:44.319><c> both</c><00:03:44.840><c> return</c><00:03:45.280><c> the</c><00:03:45.480><c> exact</c> 00:03:45.750 --> 00:03:45.760 align:start position:0% see that these both return the exact 00:03:45.760 --> 00:03:48.470 align:start position:0% see that these both return the exact same<00:03:46.360><c> thing</c><00:03:47.360><c> next</c><00:03:47.599><c> we</c><00:03:47.680><c> are</c><00:03:47.799><c> going</c><00:03:47.959><c> to</c><00:03:48.040><c> see</c><00:03:48.239><c> the</c> 00:03:48.470 --> 00:03:48.480 align:start position:0% same thing next we are going to see the 00:03:48.480 --> 00:03:52.069 align:start position:0% same thing next we are going to see the find<00:03:48.959><c> index</c><00:03:49.640><c> filter</c><00:03:50.640><c> so</c><00:03:51.200><c> I</c><00:03:51.280><c> am</c><00:03:51.439><c> going</c><00:03:51.599><c> to</c><00:03:51.760><c> copy</c> 00:03:52.069 --> 00:03:52.079 align:start position:0% find index filter so I am going to copy 00:03:52.079 --> 00:03:54.030 align:start position:0% find index filter so I am going to copy this<00:03:52.239><c> same</c><00:03:52.519><c> line</c><00:03:52.920><c> because</c><00:03:53.439><c> it</c><00:03:53.599><c> is</c><00:03:53.840><c> very</c> 00:03:54.030 --> 00:03:54.040 align:start position:0% this same line because it is very 00:03:54.040 --> 00:03:55.589 align:start position:0% this same line because it is very similar<00:03:54.400><c> to</c><00:03:54.560><c> what</c><00:03:54.680><c> we</c><00:03:54.799><c> did</c><00:03:55.040><c> with</c><00:03:55.159><c> a</c><00:03:55.319><c> fine</c> 00:03:55.589 --> 00:03:55.599 align:start position:0% similar to what we did with a fine 00:03:55.599 --> 00:03:57.309 align:start position:0% similar to what we did with a fine filter<00:03:56.239><c> I</c><00:03:56.319><c> am</c><00:03:56.480><c> just</c><00:03:56.599><c> going</c><00:03:56.760><c> to</c><00:03:56.920><c> replace</c><00:03:57.200><c> the</c> 00:03:57.309 --> 00:03:57.319 align:start position:0% filter I am just going to replace the 00:03:57.319 --> 00:04:00.149 align:start position:0% filter I am just going to replace the word<00:03:57.599><c> find</c><00:03:57.879><c> here</c><00:03:58.120><c> with</c><00:03:58.599><c> find</c><00:03:58.959><c> index</c><00:03:59.840><c> but</c><00:04:00.040><c> the</c> 00:04:00.149 --> 00:04:00.159 align:start position:0% word find here with find index but the 00:04:00.159 --> 00:04:02.110 align:start position:0% word find here with find index but the parameters<00:04:00.680><c> are</c><00:04:00.879><c> the</c><00:04:01.040><c> same</c><00:04:01.400><c> so</c><00:04:01.599><c> in</c><00:04:01.760><c> this</c><00:04:01.920><c> case</c> 00:04:02.110 --> 00:04:02.120 align:start position:0% parameters are the same so in this case 00:04:02.120 --> 00:04:03.789 align:start position:0% parameters are the same so in this case what<00:04:02.239><c> I</c><00:04:02.319><c> am</c><00:04:02.439><c> trying</c><00:04:02.640><c> to</c><00:04:02.760><c> do</c><00:04:03.120><c> is</c><00:04:03.239><c> to</c><00:04:03.439><c> find</c><00:04:03.640><c> the</c> 00:04:03.789 --> 00:04:03.799 align:start position:0% what I am trying to do is to find the 00:04:03.799 --> 00:04:07.149 align:start position:0% what I am trying to do is to find the index<00:04:04.560><c> of</c><00:04:04.720><c> the</c><00:04:04.879><c> first</c><00:04:05.200><c> block</c><00:04:05.879><c> of</c><00:04:06.079><c> type</c><00:04:06.400><c> heading</c> 00:04:07.149 --> 00:04:07.159 align:start position:0% index of the first block of type heading 00:04:07.159 --> 00:04:10.390 align:start position:0% index of the first block of type heading so<00:04:07.400><c> now</c><00:04:08.120><c> let's</c><00:04:08.319><c> print</c><00:04:08.760><c> this</c><00:04:09.680><c> and</c><00:04:09.879><c> let's</c><00:04:10.079><c> change</c> 00:04:10.390 --> 00:04:10.400 align:start position:0% so now let's print this and let's change 00:04:10.400 --> 00:04:11.949 align:start position:0% so now let's print this and let's change the<00:04:10.560><c> name</c><00:04:10.720><c> of</c><00:04:10.840><c> this</c><00:04:11.000><c> variable</c><00:04:11.360><c> so</c><00:04:11.560><c> heading</c> 00:04:11.949 --> 00:04:11.959 align:start position:0% the name of this variable so heading 00:04:11.959 --> 00:04:17.189 align:start position:0% the name of this variable so heading block 00:04:17.189 --> 00:04:17.199 align:start position:0% 00:04:17.199 --> 00:04:20.390 align:start position:0% index<00:04:18.199><c> and</c><00:04:18.359><c> the</c><00:04:18.600><c> save</c><00:04:19.160><c> and</c><00:04:19.440><c> over</c><00:04:19.720><c> here</c><00:04:20.040><c> you</c><00:04:20.160><c> see</c> 00:04:20.390 --> 00:04:20.400 align:start position:0% index and the save and over here you see 00:04:20.400 --> 00:04:23.790 align:start position:0% index and the save and over here you see that<00:04:20.519><c> I</c><00:04:20.639><c> have</c><00:04:20.880><c> a</c><00:04:21.520><c> zero</c><00:04:22.520><c> that</c><00:04:22.639><c> is</c><00:04:22.840><c> because</c><00:04:23.560><c> this</c> 00:04:23.790 --> 00:04:23.800 align:start position:0% that I have a zero that is because this 00:04:23.800 --> 00:04:26.510 align:start position:0% that I have a zero that is because this is<00:04:24.160><c> exactly</c><00:04:24.560><c> the</c><00:04:24.720><c> first</c><00:04:24.960><c> block</c><00:04:25.520><c> and</c><00:04:25.759><c> it</c><00:04:26.040><c> starts</c> 00:04:26.510 --> 00:04:26.520 align:start position:0% is exactly the first block and it starts 00:04:26.520 --> 00:04:29.469 align:start position:0% is exactly the first block and it starts at<00:04:26.759><c> index</c><00:04:27.199><c> zero</c><00:04:28.120><c> if</c><00:04:28.280><c> I</c><00:04:28.440><c> wanted</c><00:04:28.759><c> to</c><00:04:29.120><c> check</c><00:04:29.360><c> for</c> 00:04:29.469 --> 00:04:29.479 align:start position:0% at index zero if I wanted to check for 00:04:29.479 --> 00:04:31.550 align:start position:0% at index zero if I wanted to check for example<00:04:29.720><c> example</c><00:04:30.000><c> the</c><00:04:30.160><c> index</c><00:04:30.479><c> of</c><00:04:30.600><c> a</c><00:04:30.720><c> button</c><00:04:31.440><c> I</c> 00:04:31.550 --> 00:04:31.560 align:start position:0% example example the index of a button I 00:04:31.560 --> 00:04:32.430 align:start position:0% example example the index of a button I will 00:04:32.430 --> 00:04:32.440 align:start position:0% will 00:04:32.440 --> 00:04:35.909 align:start position:0% will replace<00:04:33.440><c> this</c><00:04:33.840><c> with</c><00:04:34.039><c> Ty</c><00:04:34.520><c> button</c><00:04:35.520><c> and</c><00:04:35.680><c> now</c><00:04:35.800><c> we</c> 00:04:35.909 --> 00:04:35.919 align:start position:0% replace this with Ty button and now we 00:04:35.919 --> 00:04:38.070 align:start position:0% replace this with Ty button and now we get<00:04:36.080><c> a</c><00:04:36.199><c> two</c><00:04:36.759><c> because</c><00:04:37.320><c> that</c><00:04:37.440><c> is</c><00:04:37.560><c> the</c><00:04:37.759><c> second</c> 00:04:38.070 --> 00:04:38.080 align:start position:0% get a two because that is the second 00:04:38.080 --> 00:04:40.469 align:start position:0% get a two because that is the second item<00:04:38.479><c> counting</c><00:04:38.880><c> from</c><00:04:39.080><c> zero</c><00:04:39.400><c> so</c><00:04:39.600><c> we</c><00:04:39.720><c> have</c><00:04:39.960><c> first</c> 00:04:40.469 --> 00:04:40.479 align:start position:0% item counting from zero so we have first 00:04:40.479 --> 00:04:42.510 align:start position:0% item counting from zero so we have first The<00:04:40.639><c> Heading</c><00:04:41.160><c> then</c><00:04:41.600><c> this</c><00:04:41.759><c> block</c><00:04:42.039><c> over</c><00:04:42.280><c> here</c> 00:04:42.510 --> 00:04:42.520 align:start position:0% The Heading then this block over here 00:04:42.520 --> 00:04:44.230 align:start position:0% The Heading then this block over here and<00:04:42.639><c> then</c><00:04:42.759><c> the</c> 00:04:44.230 --> 00:04:44.240 align:start position:0% and then the 00:04:44.240 --> 00:04:46.629 align:start position:0% and then the block<00:04:45.240><c> and</c><00:04:45.400><c> before</c><00:04:45.800><c> to</c><00:04:45.919><c> do</c><00:04:46.120><c> something</c><00:04:46.400><c> like</c> 00:04:46.629 --> 00:04:46.639 align:start position:0% block and before to do something like 00:04:46.639 --> 00:04:48.749 align:start position:0% block and before to do something like this<00:04:47.080><c> it</c><00:04:47.160><c> will</c><00:04:47.360><c> be</c><00:04:47.560><c> with</c><00:04:47.720><c> all</c><00:04:47.880><c> of</c><00:04:48.039><c> this</c><00:04:48.199><c> code</c><00:04:48.600><c> so</c> 00:04:48.749 --> 00:04:48.759 align:start position:0% this it will be with all of this code so 00:04:48.759 --> 00:04:50.310 align:start position:0% this it will be with all of this code so once<00:04:48.960><c> again</c><00:04:49.240><c> looping</c><00:04:49.720><c> through</c><00:04:49.960><c> all</c><00:04:50.080><c> of</c><00:04:50.240><c> the</c> 00:04:50.310 --> 00:04:50.320 align:start position:0% once again looping through all of the 00:04:50.320 --> 00:04:52.629 align:start position:0% once again looping through all of the blocks<00:04:50.639><c> in</c><00:04:50.840><c> section</c><00:04:51.320><c> blocks</c><00:04:52.039><c> and</c><00:04:52.160><c> we</c><00:04:52.320><c> check</c><00:04:52.560><c> if</c> 00:04:52.629 --> 00:04:52.639 align:start position:0% blocks in section blocks and we check if 00:04:52.639 --> 00:04:54.909 align:start position:0% blocks in section blocks and we check if the<00:04:52.759><c> block</c><00:04:53.000><c> the</c><00:04:53.240><c> type</c><00:04:53.800><c> is</c><00:04:54.199><c> button</c><00:04:54.680><c> which</c><00:04:54.759><c> is</c> 00:04:54.909 --> 00:04:54.919 align:start position:0% the block the type is button which is 00:04:54.919 --> 00:04:56.830 align:start position:0% the block the type is button which is the<00:04:55.039><c> one</c><00:04:55.240><c> group</c><00:04:55.440><c> we</c><00:04:55.560><c> checking</c><00:04:55.960><c> over</c><00:04:56.240><c> here</c><00:04:56.720><c> and</c> 00:04:56.830 --> 00:04:56.840 align:start position:0% the one group we checking over here and 00:04:56.840 --> 00:04:59.029 align:start position:0% the one group we checking over here and if<00:04:56.960><c> it</c><00:04:57.080><c> is</c><00:04:57.360><c> then</c><00:04:57.479><c> we</c><00:04:57.680><c> assign</c><00:04:58.039><c> the</c><00:04:58.199><c> value</c><00:04:58.560><c> of</c> 00:04:59.029 --> 00:04:59.039 align:start position:0% if it is then we assign the value of 00:04:59.039 --> 00:05:01.670 align:start position:0% if it is then we assign the value of four<00:04:59.400><c> Loop</c><00:04:59.759><c> index</c><00:05:00.120><c> zero</c><00:05:00.840><c> to</c><00:05:01.120><c> this</c><00:05:01.320><c> variable</c> 00:05:01.670 --> 00:05:01.680 align:start position:0% four Loop index zero to this variable 00:05:01.680 --> 00:05:03.749 align:start position:0% four Loop index zero to this variable over<00:05:01.880><c> here</c><00:05:02.280><c> which</c><00:05:02.520><c> it</c><00:05:02.680><c> is</c><00:05:02.960><c> head</c><00:05:03.240><c> lock</c><00:05:03.520><c> but</c> 00:05:03.749 --> 00:05:03.759 align:start position:0% over here which it is head lock but 00:05:03.759 --> 00:05:09.550 align:start position:0% over here which it is head lock but could<00:05:03.919><c> be</c><00:05:04.880><c> bottom</c><00:05:05.199><c> block</c><00:05:05.520><c> index</c><00:05:06.160><c> so</c><00:05:06.479><c> that's</c><00:05:06.840><c> C</c> 00:05:09.550 --> 00:05:09.560 align:start position:0% 00:05:09.560 --> 00:05:11.590 align:start position:0% that<00:05:10.560><c> and</c><00:05:10.720><c> over</c><00:05:10.919><c> here</c><00:05:11.039><c> we're</c><00:05:11.199><c> going</c><00:05:11.360><c> to</c><00:05:11.440><c> see</c> 00:05:11.590 --> 00:05:11.600 align:start position:0% that and over here we're going to see 00:05:11.600 --> 00:05:14.029 align:start position:0% that and over here we're going to see that<00:05:11.720><c> in</c><00:05:11.840><c> both</c><00:05:12.039><c> cases</c><00:05:12.280><c> we</c><00:05:12.400><c> get</c><00:05:12.520><c> a</c> 00:05:14.029 --> 00:05:14.039 align:start position:0% that in both cases we get a 00:05:14.039 --> 00:05:16.510 align:start position:0% that in both cases we get a two<00:05:15.039><c> next</c><00:05:15.280><c> we</c><00:05:15.360><c> are</c><00:05:15.479><c> going</c><00:05:15.680><c> to</c><00:05:15.759><c> see</c><00:05:15.960><c> the</c><00:05:16.120><c> has</c> 00:05:16.510 --> 00:05:16.520 align:start position:0% two next we are going to see the has 00:05:16.520 --> 00:05:20.189 align:start position:0% two next we are going to see the has filter<00:05:17.520><c> so</c><00:05:17.880><c> over</c><00:05:18.199><c> here</c><00:05:19.120><c> let's</c> 00:05:20.189 --> 00:05:20.199 align:start position:0% filter so over here let's 00:05:20.199 --> 00:05:23.430 align:start position:0% filter so over here let's print<00:05:21.199><c> whether</c><00:05:21.520><c> section</c><00:05:21.880><c> that</c><00:05:22.120><c> blogs</c><00:05:23.120><c> has</c><00:05:23.280><c> a</c> 00:05:23.430 --> 00:05:23.440 align:start position:0% print whether section that blogs has a 00:05:23.440 --> 00:05:25.909 align:start position:0% print whether section that blogs has a blog<00:05:24.160><c> type</c><00:05:24.479><c> heading</c><00:05:24.800><c> or</c> 00:05:25.909 --> 00:05:25.919 align:start position:0% blog type heading or 00:05:25.919 --> 00:05:31.309 align:start position:0% blog type heading or not<00:05:26.919><c> so</c><00:05:27.120><c> if</c><00:05:27.240><c> I</c><00:05:27.360><c> save</c><00:05:27.680><c> this</c><00:05:28.600><c> over</c><00:05:28.840><c> here</c><00:05:29.120><c> we</c><00:05:29.240><c> see</c> 00:05:31.309 --> 00:05:31.319 align:start position:0% not so if I save this over here we see 00:05:31.319 --> 00:05:33.670 align:start position:0% not so if I save this over here we see and<00:05:31.520><c> if</c><00:05:31.639><c> we</c><00:05:31.759><c> add</c><00:05:31.919><c> an</c><00:05:32.080><c> S</c><00:05:32.400><c> over</c><00:05:32.680><c> here</c><00:05:33.080><c> of</c><00:05:33.280><c> type</c> 00:05:33.670 --> 00:05:33.680 align:start position:0% and if we add an S over here of type 00:05:33.680 --> 00:05:35.469 align:start position:0% and if we add an S over here of type headings<00:05:34.160><c> we're</c><00:05:34.360><c> going</c><00:05:34.520><c> to</c><00:05:34.680><c> get</c><00:05:34.880><c> false</c> 00:05:35.469 --> 00:05:35.479 align:start position:0% headings we're going to get false 00:05:35.479 --> 00:05:37.670 align:start position:0% headings we're going to get false because<00:05:35.840><c> there</c><00:05:35.960><c> is</c><00:05:36.120><c> no</c><00:05:36.319><c> block</c><00:05:37.000><c> of</c><00:05:37.199><c> type</c> 00:05:37.670 --> 00:05:37.680 align:start position:0% because there is no block of type 00:05:37.680 --> 00:05:40.230 align:start position:0% because there is no block of type headings<00:05:38.319><c> so</c><00:05:38.639><c> this</c><00:05:38.840><c> filter</c><00:05:39.160><c> is</c><00:05:39.360><c> very</c> 00:05:40.230 --> 00:05:40.240 align:start position:0% headings so this filter is very 00:05:40.240 --> 00:05:42.550 align:start position:0% headings so this filter is very simple<00:05:41.240><c> and</c><00:05:41.400><c> before</c><00:05:41.720><c> to</c><00:05:41.880><c> do</c><00:05:42.039><c> something</c><00:05:42.360><c> like</c> 00:05:42.550 --> 00:05:42.560 align:start position:0% simple and before to do something like 00:05:42.560 --> 00:05:44.230 align:start position:0% simple and before to do something like this<00:05:42.880><c> we</c><00:05:42.960><c> will</c><00:05:43.120><c> have</c><00:05:43.280><c> needed</c><00:05:43.520><c> to</c><00:05:43.639><c> do</c><00:05:43.840><c> something</c> 00:05:44.230 --> 00:05:44.240 align:start position:0% this we will have needed to do something 00:05:44.240 --> 00:05:45.950 align:start position:0% this we will have needed to do something like<00:05:44.400><c> what</c><00:05:44.520><c> I</c><00:05:44.600><c> am</c><00:05:44.759><c> doing</c><00:05:45.039><c> this</c><00:05:45.199><c> for</c><00:05:45.440><c> Loop</c><00:05:45.720><c> over</c> 00:05:45.950 --> 00:05:45.960 align:start position:0% like what I am doing this for Loop over 00:05:45.960 --> 00:05:48.590 align:start position:0% like what I am doing this for Loop over here<00:05:46.280><c> where</c><00:05:46.479><c> we</c><00:05:47.039><c> start</c><00:05:47.479><c> by</c><00:05:47.759><c> by</c><00:05:47.880><c> assigning</c><00:05:48.319><c> has</c> 00:05:48.590 --> 00:05:48.600 align:start position:0% here where we start by by assigning has 00:05:48.600 --> 00:05:51.110 align:start position:0% here where we start by by assigning has heading<00:05:48.919><c> to</c><00:05:49.120><c> fals</c><00:05:49.639><c> and</c><00:05:49.759><c> then</c><00:05:49.919><c> we</c><00:05:50.080><c> look</c><00:05:50.759><c> through</c> 00:05:51.110 --> 00:05:51.120 align:start position:0% heading to fals and then we look through 00:05:51.120 --> 00:05:53.150 align:start position:0% heading to fals and then we look through all<00:05:51.240><c> of</c><00:05:51.360><c> the</c><00:05:51.479><c> blogs</c><00:05:51.840><c> in</c><00:05:52.039><c> section</c><00:05:52.360><c> the</c><00:05:52.520><c> blogs</c> 00:05:53.150 --> 00:05:53.160 align:start position:0% all of the blogs in section the blogs 00:05:53.160 --> 00:05:55.309 align:start position:0% all of the blogs in section the blogs and<00:05:53.280><c> if</c><00:05:53.360><c> we</c><00:05:53.520><c> find</c><00:05:53.840><c> one</c><00:05:54.160><c> that</c><00:05:54.360><c> has</c><00:05:54.759><c> a</c><00:05:54.960><c> type</c><00:05:55.160><c> of</c> 00:05:55.309 --> 00:05:55.319 align:start position:0% and if we find one that has a type of 00:05:55.319 --> 00:05:57.230 align:start position:0% and if we find one that has a type of heading<00:05:55.720><c> then</c><00:05:55.880><c> we</c><00:05:56.039><c> assign</c><00:05:56.520><c> has</c><00:05:56.759><c> heading</c><00:05:57.039><c> to</c> 00:05:57.230 --> 00:05:57.240 align:start position:0% heading then we assign has heading to 00:05:57.240 --> 00:05:59.670 align:start position:0% heading then we assign has heading to Dro<00:05:58.160><c> and</c><00:05:58.280><c> we</c><00:05:58.440><c> bring</c><00:05:58.720><c> the</c><00:05:58.840><c> value</c><00:05:59.120><c> of</c><00:05:59.319><c> has</c> 00:05:59.670 --> 00:05:59.680 align:start position:0% Dro and we bring the value of has 00:05:59.680 --> 00:06:01.990 align:start position:0% Dro and we bring the value of has heading<00:05:59.960><c> over</c><00:06:00.199><c> here</c><00:06:00.960><c> and</c><00:06:01.120><c> in</c><00:06:01.280><c> both</c><00:06:01.520><c> cases</c><00:06:01.840><c> we</c> 00:06:01.990 --> 00:06:02.000 align:start position:0% heading over here and in both cases we 00:06:02.000 --> 00:06:03.710 align:start position:0% heading over here and in both cases we get<00:06:02.199><c> true</c><00:06:02.600><c> and</c><00:06:02.759><c> if</c><00:06:02.919><c> over</c><00:06:03.080><c> here</c><00:06:03.240><c> I</c><00:06:03.360><c> were</c><00:06:03.600><c> to</c> 00:06:03.710 --> 00:06:03.720 align:start position:0% get true and if over here I were to 00:06:03.720 --> 00:06:06.350 align:start position:0% get true and if over here I were to change<00:06:04.400><c> has</c><00:06:04.639><c> headings</c><00:06:05.639><c> we</c><00:06:05.759><c> are</c><00:06:05.880><c> going</c><00:06:06.039><c> to</c><00:06:06.120><c> see</c> 00:06:06.350 --> 00:06:06.360 align:start position:0% change has headings we are going to see 00:06:06.360 --> 00:06:08.990 align:start position:0% change has headings we are going to see that<00:06:06.520><c> now</c><00:06:06.680><c> we</c><00:06:06.800><c> have</c><00:06:07.039><c> false</c><00:06:07.440><c> over</c><00:06:07.800><c> here</c><00:06:08.440><c> because</c> 00:06:08.990 --> 00:06:09.000 align:start position:0% that now we have false over here because 00:06:09.000 --> 00:06:11.870 align:start position:0% that now we have false over here because this<00:06:09.160><c> section</c><00:06:09.599><c> has</c><00:06:09.800><c> no</c><00:06:10.080><c> blocks</c><00:06:10.520><c> of</c><00:06:10.759><c> type</c> 00:06:11.870 --> 00:06:11.880 align:start position:0% this section has no blocks of type 00:06:11.880 --> 00:06:14.309 align:start position:0% this section has no blocks of type headings<00:06:12.880><c> next</c><00:06:13.120><c> we</c><00:06:13.240><c> are</c><00:06:13.360><c> going</c><00:06:13.520><c> to</c><00:06:13.639><c> see</c><00:06:14.039><c> the</c> 00:06:14.309 --> 00:06:14.319 align:start position:0% headings next we are going to see the 00:06:14.319 --> 00:06:17.150 align:start position:0% headings next we are going to see the reject<00:06:15.039><c> filter</c><00:06:16.039><c> so</c><00:06:16.360><c> this</c><00:06:16.520><c> one</c><00:06:16.759><c> does</c><00:06:17.000><c> the</c> 00:06:17.150 --> 00:06:17.160 align:start position:0% reject filter so this one does the 00:06:17.160 --> 00:06:19.870 align:start position:0% reject filter so this one does the opposite<00:06:17.680><c> of</c><00:06:18.080><c> what</c><00:06:18.240><c> the</c><00:06:18.400><c> word</c><00:06:18.680><c> filter</c><00:06:19.080><c> does</c><00:06:19.720><c> so</c> 00:06:19.870 --> 00:06:19.880 align:start position:0% opposite of what the word filter does so 00:06:19.880 --> 00:06:22.670 align:start position:0% opposite of what the word filter does so in<00:06:20.039><c> this</c><00:06:20.199><c> case</c><00:06:20.520><c> let's</c><00:06:21.080><c> create</c><00:06:22.080><c> a</c><00:06:22.280><c> variable</c> 00:06:22.670 --> 00:06:22.680 align:start position:0% in this case let's create a variable 00:06:22.680 --> 00:06:27.350 align:start position:0% in this case let's create a variable over<00:06:22.919><c> here</c><00:06:23.880><c> non</c><00:06:24.880><c> heading</c><00:06:26.000><c> blocks</c><00:06:27.000><c> and</c><00:06:27.160><c> what</c><00:06:27.280><c> we</c> 00:06:27.350 --> 00:06:27.360 align:start position:0% over here non heading blocks and what we 00:06:27.360 --> 00:06:31.589 align:start position:0% over here non heading blocks and what we are<00:06:27.479><c> going</c><00:06:27.639><c> to</c><00:06:27.800><c> do</c><00:06:28.560><c> is</c><00:06:29.639><c> section</c><00:06:30.080><c> of</c> 00:06:31.589 --> 00:06:31.599 align:start position:0% are going to do is section of 00:06:31.599 --> 00:06:34.189 align:start position:0% are going to do is section of blocks<00:06:32.599><c> and</c><00:06:32.720><c> we're</c><00:06:32.919><c> going</c><00:06:33.120><c> to</c> 00:06:34.189 --> 00:06:34.199 align:start position:0% blocks and we're going to 00:06:34.199 --> 00:06:36.629 align:start position:0% blocks and we're going to project<00:06:35.199><c> all</c><00:06:35.479><c> blocks</c><00:06:35.800><c> that</c><00:06:35.960><c> have</c><00:06:36.120><c> a</c><00:06:36.280><c> type</c><00:06:36.479><c> of</c> 00:06:36.629 --> 00:06:36.639 align:start position:0% project all blocks that have a type of 00:06:36.639 --> 00:06:40.189 align:start position:0% project all blocks that have a type of heading<00:06:37.560><c> and</c><00:06:37.759><c> now</c><00:06:38.280><c> let's</c><00:06:38.520><c> print</c><00:06:39.080><c> over</c><00:06:39.360><c> here</c> 00:06:40.189 --> 00:06:40.199 align:start position:0% heading and now let's print over here 00:06:40.199 --> 00:06:42.790 align:start position:0% heading and now let's print over here non-heading<00:06:40.840><c> blocks.</c><00:06:41.639><c> size</c><00:06:42.360><c> and</c><00:06:42.520><c> we</c><00:06:42.599><c> should</c> 00:06:42.790 --> 00:06:42.800 align:start position:0% non-heading blocks. size and we should 00:06:42.800 --> 00:06:45.510 align:start position:0% non-heading blocks. size and we should get<00:06:42.960><c> a</c><00:06:43.120><c> two</c><00:06:44.080><c> as</c><00:06:44.199><c> you</c><00:06:44.319><c> can</c><00:06:44.440><c> see</c><00:06:44.720><c> over</c><00:06:45.000><c> here</c> 00:06:45.510 --> 00:06:45.520 align:start position:0% get a two as you can see over here 00:06:45.520 --> 00:06:47.430 align:start position:0% get a two as you can see over here because<00:06:45.960><c> out</c><00:06:46.120><c> of</c><00:06:46.240><c> all</c><00:06:46.400><c> of</c><00:06:46.520><c> the</c><00:06:46.599><c> blocks</c><00:06:47.080><c> in</c><00:06:47.240><c> this</c> 00:06:47.430 --> 00:06:47.440 align:start position:0% because out of all of the blocks in this 00:06:47.440 --> 00:06:50.629 align:start position:0% because out of all of the blocks in this section<00:06:48.000><c> only</c><00:06:48.360><c> these</c><00:06:48.840><c> two</c><00:06:49.840><c> are</c><00:06:50.039><c> of</c><00:06:50.199><c> a</c><00:06:50.360><c> type</c> 00:06:50.629 --> 00:06:50.639 align:start position:0% section only these two are of a type 00:06:50.639 --> 00:06:52.309 align:start position:0% section only these two are of a type older<00:06:51.000><c> than</c> 00:06:52.309 --> 00:06:52.319 align:start position:0% older than 00:06:52.319 --> 00:06:54.550 align:start position:0% older than heading<00:06:53.319><c> now</c><00:06:53.599><c> one</c><00:06:53.759><c> limitation</c><00:06:54.280><c> that</c><00:06:54.400><c> is</c> 00:06:54.550 --> 00:06:54.560 align:start position:0% heading now one limitation that is 00:06:54.560 --> 00:06:56.189 align:start position:0% heading now one limitation that is important<00:06:54.880><c> to</c><00:06:55.000><c> know</c><00:06:55.400><c> is</c><00:06:55.520><c> that</c><00:06:55.720><c> at</c><00:06:55.840><c> the</c><00:06:55.960><c> moment</c> 00:06:56.189 --> 00:06:56.199 align:start position:0% important to know is that at the moment 00:06:56.199 --> 00:06:58.230 align:start position:0% important to know is that at the moment of<00:06:56.319><c> launch</c><00:06:56.800><c> these</c><00:06:57.000><c> filters</c><00:06:57.479><c> do</c><00:06:57.599><c> not</c><00:06:57.800><c> support</c> 00:06:58.230 --> 00:06:58.240 align:start position:0% of launch these filters do not support 00:06:58.240 --> 00:07:00.869 align:start position:0% of launch these filters do not support Nest<00:06:58.800><c> properties</c><00:06:59.879><c> so</c><00:07:00.120><c> let's</c><00:07:00.319><c> see</c><00:07:00.520><c> what</c><00:07:00.680><c> do</c><00:07:00.759><c> I</c> 00:07:00.869 --> 00:07:00.879 align:start position:0% Nest properties so let's see what do I 00:07:00.879 --> 00:07:03.510 align:start position:0% Nest properties so let's see what do I mean<00:07:01.039><c> by</c><00:07:01.319><c> this</c><00:07:02.319><c> so</c><00:07:02.520><c> for</c><00:07:02.720><c> example</c><00:07:03.120><c> let's</c><00:07:03.319><c> say</c> 00:07:03.510 --> 00:07:03.520 align:start position:0% mean by this so for example let's say 00:07:03.520 --> 00:07:05.510 align:start position:0% mean by this so for example let's say that<00:07:03.639><c> I</c><00:07:03.759><c> wanted</c><00:07:04.000><c> to</c><00:07:04.160><c> check</c><00:07:04.520><c> whether</c><00:07:04.759><c> we</c><00:07:04.960><c> have</c><00:07:05.319><c> a</c> 00:07:05.510 --> 00:07:05.520 align:start position:0% that I wanted to check whether we have a 00:07:05.520 --> 00:07:08.550 align:start position:0% that I wanted to check whether we have a learn<00:07:05.800><c> more</c><00:07:06.080><c> button</c><00:07:06.400><c> or</c><00:07:06.560><c> not</c><00:07:07.280><c> for</c><00:07:07.599><c> that</c><00:07:08.440><c> you</c> 00:07:08.550 --> 00:07:08.560 align:start position:0% learn more button or not for that you 00:07:08.560 --> 00:07:10.390 align:start position:0% learn more button or not for that you will<00:07:08.800><c> think</c><00:07:09.080><c> that</c><00:07:09.280><c> I</c><00:07:09.400><c> just</c><00:07:09.560><c> need</c><00:07:09.720><c> to</c><00:07:09.879><c> replace</c> 00:07:10.390 --> 00:07:10.400 align:start position:0% will think that I just need to replace 00:07:10.400 --> 00:07:14.070 align:start position:0% will think that I just need to replace the<00:07:11.039><c> property</c><00:07:11.440><c> name</c><00:07:11.680><c> over</c><00:07:11.919><c> here</c><00:07:12.560><c> from</c><00:07:12.840><c> TY</c><00:07:13.440><c> to</c> 00:07:14.070 --> 00:07:14.080 align:start position:0% the property name over here from TY to 00:07:14.080 --> 00:07:16.230 align:start position:0% the property name over here from TY to settings.<00:07:15.080><c> button</c> 00:07:16.230 --> 00:07:16.240 align:start position:0% settings. button 00:07:16.240 --> 00:07:19.749 align:start position:0% settings. button label<00:07:17.240><c> and</c><00:07:17.440><c> then</c><00:07:17.919><c> the</c><00:07:18.120><c> value</c><00:07:18.520><c> from</c><00:07:18.759><c> heading</c><00:07:19.360><c> to</c> 00:07:19.749 --> 00:07:19.759 align:start position:0% label and then the value from heading to 00:07:19.759 --> 00:07:20.950 align:start position:0% label and then the value from heading to learn 00:07:20.950 --> 00:07:20.960 align:start position:0% learn 00:07:20.960 --> 00:07:23.629 align:start position:0% learn more<00:07:21.960><c> however</c><00:07:22.479><c> as</c><00:07:22.759><c> this</c><00:07:22.879><c> is</c><00:07:23.000><c> a</c><00:07:23.160><c> nested</c> 00:07:23.629 --> 00:07:23.639 align:start position:0% more however as this is a nested 00:07:23.639 --> 00:07:25.869 align:start position:0% more however as this is a nested property<00:07:24.160><c> we</c><00:07:24.280><c> are</c><00:07:24.400><c> going</c><00:07:24.560><c> to</c><00:07:24.680><c> see</c><00:07:24.879><c> over</c><00:07:25.160><c> here</c> 00:07:25.869 --> 00:07:25.879 align:start position:0% property we are going to see over here 00:07:25.879 --> 00:07:28.629 align:start position:0% property we are going to see over here that<00:07:26.039><c> we</c><00:07:26.199><c> get</c><00:07:26.639><c> false</c><00:07:27.639><c> even</c><00:07:27.919><c> though</c><00:07:28.120><c> we</c><00:07:28.240><c> do</c><00:07:28.440><c> have</c> 00:07:28.629 --> 00:07:28.639 align:start position:0% that we get false even though we do have 00:07:28.639 --> 00:07:30.469 align:start position:0% that we get false even though we do have a<00:07:28.800><c> learn</c><00:07:29.000><c> more</c><00:07:29.160><c> Buton</c><00:07:29.520><c> as</c><00:07:29.639><c> you</c><00:07:29.720><c> can</c><00:07:29.800><c> see</c><00:07:30.039><c> over</c> 00:07:30.469 --> 00:07:30.479 align:start position:0% a learn more Buton as you can see over 00:07:30.479 --> 00:07:34.029 align:start position:0% a learn more Buton as you can see over here<00:07:31.479><c> and</c><00:07:32.360><c> if</c><00:07:32.479><c> we</c><00:07:32.639><c> were</c><00:07:32.840><c> to</c><00:07:32.960><c> do</c><00:07:33.199><c> this</c><00:07:33.759><c> at</c><00:07:33.879><c> the</c> 00:07:34.029 --> 00:07:34.039 align:start position:0% here and if we were to do this at the 00:07:34.039 --> 00:07:36.390 align:start position:0% here and if we were to do this at the top<00:07:34.319><c> instead</c><00:07:35.319><c> in</c><00:07:35.479><c> the</c><00:07:35.639><c> way</c><00:07:35.840><c> that</c><00:07:35.960><c> it</c><00:07:36.080><c> was</c><00:07:36.240><c> done</c> 00:07:36.390 --> 00:07:36.400 align:start position:0% top instead in the way that it was done 00:07:36.400 --> 00:07:37.950 align:start position:0% top instead in the way that it was done before<00:07:36.639><c> by</c><00:07:36.879><c> trading</c><00:07:37.319><c> through</c><00:07:37.599><c> all</c><00:07:37.720><c> of</c><00:07:37.840><c> the</c> 00:07:37.950 --> 00:07:37.960 align:start position:0% before by trading through all of the 00:07:37.960 --> 00:07:40.869 align:start position:0% before by trading through all of the blocks<00:07:38.960><c> I</c><00:07:39.120><c> just</c><00:07:39.280><c> need</c><00:07:39.479><c> to</c><00:07:39.680><c> change</c><00:07:40.360><c> this</c><00:07:40.599><c> over</c> 00:07:40.869 --> 00:07:40.879 align:start position:0% blocks I just need to change this over 00:07:40.879 --> 00:07:44.629 align:start position:0% blocks I just need to change this over here<00:07:41.199><c> to</c><00:07:41.360><c> be</c><00:07:42.039><c> settings.</c><00:07:43.039><c> bottom</c> 00:07:44.629 --> 00:07:44.639 align:start position:0% here to be settings. bottom 00:07:44.639 --> 00:07:48.710 align:start position:0% here to be settings. bottom label<00:07:45.639><c> and</c><00:07:45.800><c> the</c><00:07:45.960><c> value</c><00:07:46.319><c> to</c><00:07:46.479><c> be</c><00:07:46.960><c> learn</c><00:07:47.520><c> more</c><00:07:48.520><c> and</c> 00:07:48.710 --> 00:07:48.720 align:start position:0% label and the value to be learn more and 00:07:48.720 --> 00:07:50.510 align:start position:0% label and the value to be learn more and we<00:07:48.800><c> can</c><00:07:48.960><c> change</c><00:07:49.400><c> the</c><00:07:49.520><c> name</c><00:07:49.680><c> of</c><00:07:49.800><c> this</c><00:07:49.960><c> property</c> 00:07:50.510 --> 00:07:50.520 align:start position:0% we can change the name of this property 00:07:50.520 --> 00:07:54.110 align:start position:0% we can change the name of this property to<00:07:51.520><c> has</c><00:07:52.240><c> B</c><00:07:52.560><c> more</c> 00:07:54.110 --> 00:07:54.120 align:start position:0% to has B more 00:07:54.120 --> 00:07:57.189 align:start position:0% to has B more button<00:07:55.120><c> and</c><00:07:55.360><c> T</c><00:07:55.599><c> it</c><00:07:55.800><c> here</c><00:07:56.000><c> as</c><00:07:56.120><c> well</c><00:07:56.960><c> we</c><00:07:57.039><c> are</c> 00:07:57.189 --> 00:07:57.199 align:start position:0% button and T it here as well we are 00:07:57.199 --> 00:07:59.909 align:start position:0% button and T it here as well we are going<00:07:57.360><c> to</c><00:07:57.520><c> see</c><00:07:58.120><c> that</c><00:07:58.280><c> in</c><00:07:58.440><c> this</c><00:07:58.639><c> case</c><00:07:58.960><c> we</c><00:07:59.120><c> get</c> 00:07:59.909 --> 00:07:59.919 align:start position:0% going to see that in this case we get 00:07:59.919 --> 00:08:02.110 align:start position:0% going to see that in this case we get and<00:08:00.080><c> the</c><00:08:00.199><c> reason</c><00:08:00.440><c> for</c><00:08:00.680><c> that</c><00:08:00.960><c> is</c><00:08:01.199><c> because</c><00:08:01.960><c> by</c> 00:08:02.110 --> 00:08:02.120 align:start position:0% and the reason for that is because by 00:08:02.120 --> 00:08:03.830 align:start position:0% and the reason for that is because by doing<00:08:02.360><c> it</c><00:08:02.599><c> this</c><00:08:02.759><c> way</c><00:08:03.039><c> we</c><00:08:03.120><c> are</c><00:08:03.280><c> able</c><00:08:03.479><c> to</c><00:08:03.639><c> check</c> 00:08:03.830 --> 00:08:03.840 align:start position:0% doing it this way we are able to check 00:08:03.840 --> 00:08:06.469 align:start position:0% doing it this way we are able to check for<00:08:04.159><c> nested</c><00:08:04.599><c> properties</c><00:08:05.360><c> but</c><00:08:06.000><c> by</c><00:08:06.120><c> using</c><00:08:06.360><c> the</c> 00:08:06.469 --> 00:08:06.479 align:start position:0% for nested properties but by using the 00:08:06.479 --> 00:08:08.830 align:start position:0% for nested properties but by using the house<00:08:06.720><c> filter</c><00:08:07.080><c> we</c><00:08:07.199><c> are</c><00:08:07.319><c> not</c><00:08:07.720><c> because</c><00:08:08.319><c> Nest</c> 00:08:08.830 --> 00:08:08.840 align:start position:0% house filter we are not because Nest 00:08:08.840 --> 00:08:10.749 align:start position:0% house filter we are not because Nest properties<00:08:09.240><c> are</c><00:08:09.400><c> not</c><00:08:09.639><c> currently</c> 00:08:10.749 --> 00:08:10.759 align:start position:0% properties are not currently 00:08:10.759 --> 00:08:12.869 align:start position:0% properties are not currently supported<00:08:11.759><c> there</c><00:08:11.919><c> is</c><00:08:12.039><c> an</c><00:08:12.159><c> open</c><00:08:12.400><c> issue</c><00:08:12.639><c> in</c><00:08:12.759><c> the</c> 00:08:12.869 --> 00:08:12.879 align:start position:0% supported there is an open issue in the 00:08:12.879 --> 00:08:14.510 align:start position:0% supported there is an open issue in the official<00:08:13.159><c> liquid</c><00:08:13.479><c> repository</c><00:08:14.039><c> maintained</c><00:08:14.440><c> by</c> 00:08:14.510 --> 00:08:14.520 align:start position:0% official liquid repository maintained by 00:08:14.520 --> 00:08:16.309 align:start position:0% official liquid repository maintained by Shopify<00:08:15.000><c> to</c><00:08:15.120><c> add</c><00:08:15.280><c> support</c><00:08:15.599><c> for</c><00:08:15.919><c> nested</c> 00:08:16.309 --> 00:08:16.319 align:start position:0% Shopify to add support for nested 00:08:16.319 --> 00:08:18.550 align:start position:0% Shopify to add support for nested properties<00:08:16.720><c> in</c><00:08:16.879><c> a</c><00:08:17.199><c> filters</c><00:08:18.039><c> but</c><00:08:18.159><c> at</c><00:08:18.280><c> the</c><00:08:18.400><c> time</c> 00:08:18.550 --> 00:08:18.560 align:start position:0% properties in a filters but at the time 00:08:18.560 --> 00:08:20.070 align:start position:0% properties in a filters but at the time I<00:08:18.639><c> am</c><00:08:18.800><c> recording</c><00:08:19.159><c> this</c><00:08:19.280><c> video</c><00:08:19.639><c> this</c><00:08:19.759><c> feature</c> 00:08:20.070 --> 00:08:20.080 align:start position:0% I am recording this video this feature 00:08:20.080 --> 00:08:21.469 align:start position:0% I am recording this video this feature is<00:08:20.199><c> not</c><00:08:20.400><c> available</c> 00:08:21.469 --> 00:08:21.479 align:start position:0% is not available 00:08:21.479 --> 00:08:23.830 align:start position:0% is not available yet<00:08:22.479><c> and</c><00:08:22.639><c> there</c><00:08:22.759><c> you</c><00:08:22.879><c> have</c><00:08:23.039><c> it</c><00:08:23.479><c> these</c><00:08:23.599><c> are</c><00:08:23.759><c> the</c> 00:08:23.830 --> 00:08:23.840 align:start position:0% yet and there you have it these are the 00:08:23.840 --> 00:08:25.629 align:start position:0% yet and there you have it these are the new<00:08:24.000><c> filters</c><00:08:24.400><c> available</c><00:08:24.759><c> in</c><00:08:24.879><c> liquid</c><00:08:25.520><c> they</c> 00:08:25.629 --> 00:08:25.639 align:start position:0% new filters available in liquid they 00:08:25.639 --> 00:08:27.270 align:start position:0% new filters available in liquid they don't<00:08:25.879><c> radically</c><00:08:26.280><c> change</c><00:08:26.599><c> the</c><00:08:26.720><c> way</c><00:08:26.879><c> we</c><00:08:27.039><c> write</c> 00:08:27.270 --> 00:08:27.280 align:start position:0% don't radically change the way we write 00:08:27.280 --> 00:08:29.029 align:start position:0% don't radically change the way we write liquid<00:08:27.599><c> code</c><00:08:28.120><c> but</c><00:08:28.280><c> they</c><00:08:28.440><c> offer</c><00:08:28.680><c> some</c><00:08:28.879><c> nice</c> 00:08:29.029 --> 00:08:29.039 align:start position:0% liquid code but they offer some nice 00:08:29.039 --> 00:08:31.829 align:start position:0% liquid code but they offer some nice quality<00:08:29.319><c> of</c><00:08:29.560><c> life</c><00:08:29.759><c> improvements</c><00:08:30.440><c> in</c><00:08:30.560><c> some</c> 00:08:31.829 --> 00:08:31.839 align:start position:0% quality of life improvements in some 00:08:31.839 --> 00:08:33.790 align:start position:0% quality of life improvements in some scenarios<00:08:32.839><c> so</c><00:08:33.039><c> if</c><00:08:33.120><c> you</c><00:08:33.240><c> found</c><00:08:33.479><c> this</c><00:08:33.599><c> video</c> 00:08:33.790 --> 00:08:33.800 align:start position:0% scenarios so if you found this video 00:08:33.800 --> 00:08:35.350 align:start position:0% scenarios so if you found this video helpful<00:08:34.240><c> remember</c><00:08:34.519><c> to</c><00:08:34.680><c> like</c><00:08:34.839><c> And</c><00:08:35.000><c> subscribe</c> 00:08:35.350 --> 00:08:35.360 align:start position:0% helpful remember to like And subscribe 00:08:35.360 --> 00:08:37.070 align:start position:0% helpful remember to like And subscribe for<00:08:35.479><c> more</c><00:08:35.640><c> Shopify</c><00:08:36.200><c> related</c><00:08:36.560><c> content</c><00:08:36.880><c> and</c><00:08:37.000><c> I</c> 00:08:37.070 --> 00:08:37.080 align:start position:0% for more Shopify related content and I 00:08:37.080 --> 00:08:40.919 align:start position:0% for more Shopify related content and I will<00:08:37.200><c> see</c><00:08:37.320><c> you</c><00:08:37.399><c> all</c><00:08:37.599><c> in</c><00:08:37.680><c> the</c><00:08:37.800><c> next</c><00:08:38.000><c> one</c>