Skip to content

Commit 693b743

Browse files
authoredJul 15, 2021
Liquid: Added all objects from Shopify reference (#2998)
1 parent fe3bc52 commit 693b743

File tree

5 files changed

+495
-17
lines changed

5 files changed

+495
-17
lines changed
 

‎components/prism-liquid.js

+1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ Prism.languages.liquid = {
1212
greedy: true
1313
},
1414
'keyword': /\b(?:as|assign|break|continue|cycle|decrement|echo|else|elsif|(?:end)?(?:capture|case|comment|for|form|if|paginate|style|raw|tablerow|unless)|in|include|increment|limit|liquid|offset|range|render|reversed|section|when|with)\b/,
15+
'object': /\b(?:address|all_country_option_tags|article|block|blog|cart|checkout|collection|color|comment|country|country_option_tags|currency|current_page|current_tags|customer|customer_address|date|discount_allocation|discount_application|external_video|filter|filter_value|font|forloop|form|fulfillment|generic_file|gift_card|group|handle|image|line_item|link|linklist|localization|location|measurement|media|metafield|model|model_source|order|page|page_description|page_image|page_title|paginate|part|policy|product|product_option|recommendations|request|robots|routes|rule|script|search|section|selling_plan|selling_plan_allocation|selling_plan_group|shipping_method|shop|shop_locale|sitemap|store_availability|tablerow|tax_line|template|theme|transaction|unit_price_measurement|user_agent|variant|video|video_source)\b/,
1516
'function': [
1617
{
1718
pattern: /(\|\s*)\w+/,

‎components/prism-liquid.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎tests/languages/liquid/function_feature.test

+15-15
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
[
4747
["liquid", [
4848
["delimiter", "{{"],
49-
" product",
49+
["object", "product"],
5050
["punctuation", "."],
5151
"tags ",
5252
["operator", "|"],
@@ -56,7 +56,7 @@
5656
["liquid", [
5757
["delimiter", "{%"],
5858
["keyword", "if"],
59-
" product",
59+
["object", "product"],
6060
["punctuation", "."],
6161
"tags",
6262
["punctuation", "."],
@@ -67,7 +67,7 @@
6767
]],
6868
["liquid", [
6969
["delimiter", "{{"],
70-
" product",
70+
["object", "product"],
7171
["punctuation", "."],
7272
"tags ",
7373
["operator", "|"],
@@ -77,7 +77,7 @@
7777
["liquid", [
7878
["delimiter", "{%"],
7979
["keyword", "if"],
80-
" product",
80+
["object", "product"],
8181
["punctuation", "."],
8282
"tags",
8383
["punctuation", "."],
@@ -136,7 +136,7 @@
136136
["keyword", "assign"],
137137
" products ",
138138
["operator", "="],
139-
" collection",
139+
["object", "collection"],
140140
["punctuation", "."],
141141
"products ",
142142
["operator", "|"],
@@ -150,7 +150,7 @@
150150
["keyword", "assign"],
151151
" kitchen_products ",
152152
["operator", "="],
153-
" collection",
153+
["object", "collection"],
154154
["punctuation", "."],
155155
"products ",
156156
["operator", "|"],
@@ -224,7 +224,7 @@
224224
]],
225225
["liquid", [
226226
["delimiter", "{{"],
227-
" article",
227+
["object", "article"],
228228
["punctuation", "."],
229229
"published_at ",
230230
["operator", "|"],
@@ -253,7 +253,7 @@
253253
]],
254254
["liquid", [
255255
["delimiter", "{{"],
256-
" product",
256+
["object", "product"],
257257
["punctuation", "."],
258258
"price ",
259259
["operator", "|"],
@@ -264,7 +264,7 @@
264264
]],
265265
["liquid", [
266266
["delimiter", "{{"],
267-
" product",
267+
["object", "product"],
268268
["punctuation", "."],
269269
"price ",
270270
["operator", "|"],
@@ -276,7 +276,7 @@
276276

277277
["liquid", [
278278
["delimiter", "{{"],
279-
" product",
279+
["object", "product"],
280280
["punctuation", "."],
281281
"featured_media ",
282282
["operator", "|"],
@@ -289,7 +289,7 @@
289289
]],
290290
["liquid", [
291291
["delimiter", "{{"],
292-
" product",
292+
["object", "product"],
293293
["punctuation", "."],
294294
"featured_media ",
295295
["operator", "|"],
@@ -300,7 +300,7 @@
300300
]],
301301
["liquid", [
302302
["delimiter", "{{"],
303-
" product",
303+
["object", "product"],
304304
["punctuation", "."],
305305
"featured_media ",
306306
["operator", "|"],
@@ -402,11 +402,11 @@
402402

403403
["liquid", [
404404
["delimiter", "{{"],
405-
" article",
405+
["object", "article"],
406406
["punctuation", "."],
407407
"published_at ",
408408
["operator", "|"],
409-
["function", "date"],
409+
["object", "date"],
410410
["operator", ":"],
411411
["string", "\"%a, %b %d, %y\""],
412412
["delimiter", "}}"]
@@ -428,7 +428,7 @@
428428
]],
429429
["liquid", [
430430
["delimiter", "{{"],
431-
" product",
431+
["object", "product"],
432432
["punctuation", "."],
433433
"variants",
434434
["punctuation", "."],
+477
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,477 @@
1+
{{ address }}
2+
{{ all_country_option_tags }}
3+
{{ article }}
4+
{{ block }}
5+
{{ blog }}
6+
{{ cart }}
7+
{{ checkout }}
8+
{{ collection }}
9+
{{ color }}
10+
{{ comment }}
11+
{{ country }}
12+
{{ country_option_tags }}
13+
{{ currency }}
14+
{{ current_page }}
15+
{{ current_tags }}
16+
{{ customer }}
17+
{{ customer_address }}
18+
{{ date }}
19+
{{ discount_allocation }}
20+
{{ discount_application }}
21+
{{ external_video }}
22+
{{ filter }}
23+
{{ filter_value }}
24+
{{ font }}
25+
{{ forloop }}
26+
{{ form }}
27+
{{ fulfillment }}
28+
{{ generic_file }}
29+
{{ gift_card }}
30+
{{ group }}
31+
{{ handle }}
32+
{{ image }}
33+
{{ line_item }}
34+
{{ link }}
35+
{{ linklist }}
36+
{{ localization }}
37+
{{ location }}
38+
{{ measurement }}
39+
{{ media }}
40+
{{ metafield }}
41+
{{ model }}
42+
{{ model_source }}
43+
{{ order }}
44+
{{ page }}
45+
{{ page_description }}
46+
{{ page_image }}
47+
{{ page_title }}
48+
{{ paginate }}
49+
{{ part }}
50+
{{ policy }}
51+
{{ product }}
52+
{{ product_option }}
53+
{{ recommendations }}
54+
{{ request }}
55+
{{ robots }}
56+
{{ routes }}
57+
{{ rule }}
58+
{{ script }}
59+
{{ search }}
60+
{{ section }}
61+
{{ selling_plan }}
62+
{{ selling_plan_allocation }}
63+
{{ selling_plan_group }}
64+
{{ shipping_method }}
65+
{{ shop }}
66+
{{ shop_locale }}
67+
{{ sitemap }}
68+
{{ store_availability }}
69+
{{ tablerow }}
70+
{{ tax_line }}
71+
{{ template }}
72+
{{ theme }}
73+
{{ transaction }}
74+
{{ unit_price_measurement }}
75+
{{ user_agent }}
76+
{{ variant }}
77+
{{ video }}
78+
{{ video_source }}
79+
80+
----------------------------------------------------
81+
82+
[
83+
["liquid", [
84+
["delimiter", "{{"],
85+
["object", "address"],
86+
["delimiter", "}}"]
87+
]],
88+
["liquid", [
89+
["delimiter", "{{"],
90+
["object", "all_country_option_tags"],
91+
["delimiter", "}}"]
92+
]],
93+
["liquid", [
94+
["delimiter", "{{"],
95+
["object", "article"],
96+
["delimiter", "}}"]
97+
]],
98+
["liquid", [
99+
["delimiter", "{{"],
100+
["object", "block"],
101+
["delimiter", "}}"]
102+
]],
103+
["liquid", [
104+
["delimiter", "{{"],
105+
["object", "blog"],
106+
["delimiter", "}}"]
107+
]],
108+
["liquid", [
109+
["delimiter", "{{"],
110+
["object", "cart"],
111+
["delimiter", "}}"]
112+
]],
113+
["liquid", [
114+
["delimiter", "{{"],
115+
["object", "checkout"],
116+
["delimiter", "}}"]
117+
]],
118+
["liquid", [
119+
["delimiter", "{{"],
120+
["object", "collection"],
121+
["delimiter", "}}"]
122+
]],
123+
["liquid", [
124+
["delimiter", "{{"],
125+
["object", "color"],
126+
["delimiter", "}}"]
127+
]],
128+
["liquid", [
129+
["delimiter", "{{"],
130+
["keyword", "comment"],
131+
["delimiter", "}}"]
132+
]],
133+
["liquid", [
134+
["delimiter", "{{"],
135+
["object", "country"],
136+
["delimiter", "}}"]
137+
]],
138+
["liquid", [
139+
["delimiter", "{{"],
140+
["object", "country_option_tags"],
141+
["delimiter", "}}"]
142+
]],
143+
["liquid", [
144+
["delimiter", "{{"],
145+
["object", "currency"],
146+
["delimiter", "}}"]
147+
]],
148+
["liquid", [
149+
["delimiter", "{{"],
150+
["object", "current_page"],
151+
["delimiter", "}}"]
152+
]],
153+
["liquid", [
154+
["delimiter", "{{"],
155+
["object", "current_tags"],
156+
["delimiter", "}}"]
157+
]],
158+
["liquid", [
159+
["delimiter", "{{"],
160+
["object", "customer"],
161+
["delimiter", "}}"]
162+
]],
163+
["liquid", [
164+
["delimiter", "{{"],
165+
["object", "customer_address"],
166+
["delimiter", "}}"]
167+
]],
168+
["liquid", [
169+
["delimiter", "{{"],
170+
["object", "date"],
171+
["delimiter", "}}"]
172+
]],
173+
["liquid", [
174+
["delimiter", "{{"],
175+
["object", "discount_allocation"],
176+
["delimiter", "}}"]
177+
]],
178+
["liquid", [
179+
["delimiter", "{{"],
180+
["object", "discount_application"],
181+
["delimiter", "}}"]
182+
]],
183+
["liquid", [
184+
["delimiter", "{{"],
185+
["object", "external_video"],
186+
["delimiter", "}}"]
187+
]],
188+
["liquid", [
189+
["delimiter", "{{"],
190+
["object", "filter"],
191+
["delimiter", "}}"]
192+
]],
193+
["liquid", [
194+
["delimiter", "{{"],
195+
["object", "filter_value"],
196+
["delimiter", "}}"]
197+
]],
198+
["liquid", [
199+
["delimiter", "{{"],
200+
["object", "font"],
201+
["delimiter", "}}"]
202+
]],
203+
["liquid", [
204+
["delimiter", "{{"],
205+
["object", "forloop"],
206+
["delimiter", "}}"]
207+
]],
208+
["liquid", [
209+
["delimiter", "{{"],
210+
["keyword", "form"],
211+
["delimiter", "}}"]
212+
]],
213+
["liquid", [
214+
["delimiter", "{{"],
215+
["object", "fulfillment"],
216+
["delimiter", "}}"]
217+
]],
218+
["liquid", [
219+
["delimiter", "{{"],
220+
["object", "generic_file"],
221+
["delimiter", "}}"]
222+
]],
223+
["liquid", [
224+
["delimiter", "{{"],
225+
["object", "gift_card"],
226+
["delimiter", "}}"]
227+
]],
228+
["liquid", [
229+
["delimiter", "{{"],
230+
["object", "group"],
231+
["delimiter", "}}"]
232+
]],
233+
["liquid", [
234+
["delimiter", "{{"],
235+
["object", "handle"],
236+
["delimiter", "}}"]
237+
]],
238+
["liquid", [
239+
["delimiter", "{{"],
240+
["object", "image"],
241+
["delimiter", "}}"]
242+
]],
243+
["liquid", [
244+
["delimiter", "{{"],
245+
["object", "line_item"],
246+
["delimiter", "}}"]
247+
]],
248+
["liquid", [
249+
["delimiter", "{{"],
250+
["object", "link"],
251+
["delimiter", "}}"]
252+
]],
253+
["liquid", [
254+
["delimiter", "{{"],
255+
["object", "linklist"],
256+
["delimiter", "}}"]
257+
]],
258+
["liquid", [
259+
["delimiter", "{{"],
260+
["object", "localization"],
261+
["delimiter", "}}"]
262+
]],
263+
["liquid", [
264+
["delimiter", "{{"],
265+
["object", "location"],
266+
["delimiter", "}}"]
267+
]],
268+
["liquid", [
269+
["delimiter", "{{"],
270+
["object", "measurement"],
271+
["delimiter", "}}"]
272+
]],
273+
["liquid", [
274+
["delimiter", "{{"],
275+
["object", "media"],
276+
["delimiter", "}}"]
277+
]],
278+
["liquid", [
279+
["delimiter", "{{"],
280+
["object", "metafield"],
281+
["delimiter", "}}"]
282+
]],
283+
["liquid", [
284+
["delimiter", "{{"],
285+
["object", "model"],
286+
["delimiter", "}}"]
287+
]],
288+
["liquid", [
289+
["delimiter", "{{"],
290+
["object", "model_source"],
291+
["delimiter", "}}"]
292+
]],
293+
["liquid", [
294+
["delimiter", "{{"],
295+
["object", "order"],
296+
["delimiter", "}}"]
297+
]],
298+
["liquid", [
299+
["delimiter", "{{"],
300+
["object", "page"],
301+
["delimiter", "}}"]
302+
]],
303+
["liquid", [
304+
["delimiter", "{{"],
305+
["object", "page_description"],
306+
["delimiter", "}}"]
307+
]],
308+
["liquid", [
309+
["delimiter", "{{"],
310+
["object", "page_image"],
311+
["delimiter", "}}"]
312+
]],
313+
["liquid", [
314+
["delimiter", "{{"],
315+
["object", "page_title"],
316+
["delimiter", "}}"]
317+
]],
318+
["liquid", [
319+
["delimiter", "{{"],
320+
["keyword", "paginate"],
321+
["delimiter", "}}"]
322+
]],
323+
["liquid", [
324+
["delimiter", "{{"],
325+
["object", "part"],
326+
["delimiter", "}}"]
327+
]],
328+
["liquid", [
329+
["delimiter", "{{"],
330+
["object", "policy"],
331+
["delimiter", "}}"]
332+
]],
333+
["liquid", [
334+
["delimiter", "{{"],
335+
["object", "product"],
336+
["delimiter", "}}"]
337+
]],
338+
["liquid", [
339+
["delimiter", "{{"],
340+
["object", "product_option"],
341+
["delimiter", "}}"]
342+
]],
343+
["liquid", [
344+
["delimiter", "{{"],
345+
["object", "recommendations"],
346+
["delimiter", "}}"]
347+
]],
348+
["liquid", [
349+
["delimiter", "{{"],
350+
["object", "request"],
351+
["delimiter", "}}"]
352+
]],
353+
["liquid", [
354+
["delimiter", "{{"],
355+
["object", "robots"],
356+
["delimiter", "}}"]
357+
]],
358+
["liquid", [
359+
["delimiter", "{{"],
360+
["object", "routes"],
361+
["delimiter", "}}"]
362+
]],
363+
["liquid", [
364+
["delimiter", "{{"],
365+
["object", "rule"],
366+
["delimiter", "}}"]
367+
]],
368+
["liquid", [
369+
["delimiter", "{{"],
370+
["object", "script"],
371+
["delimiter", "}}"]
372+
]],
373+
["liquid", [
374+
["delimiter", "{{"],
375+
["object", "search"],
376+
["delimiter", "}}"]
377+
]],
378+
["liquid", [
379+
["delimiter", "{{"],
380+
["keyword", "section"],
381+
["delimiter", "}}"]
382+
]],
383+
["liquid", [
384+
["delimiter", "{{"],
385+
["object", "selling_plan"],
386+
["delimiter", "}}"]
387+
]],
388+
["liquid", [
389+
["delimiter", "{{"],
390+
["object", "selling_plan_allocation"],
391+
["delimiter", "}}"]
392+
]],
393+
["liquid", [
394+
["delimiter", "{{"],
395+
["object", "selling_plan_group"],
396+
["delimiter", "}}"]
397+
]],
398+
["liquid", [
399+
["delimiter", "{{"],
400+
["object", "shipping_method"],
401+
["delimiter", "}}"]
402+
]],
403+
["liquid", [
404+
["delimiter", "{{"],
405+
["object", "shop"],
406+
["delimiter", "}}"]
407+
]],
408+
["liquid", [
409+
["delimiter", "{{"],
410+
["object", "shop_locale"],
411+
["delimiter", "}}"]
412+
]],
413+
["liquid", [
414+
["delimiter", "{{"],
415+
["object", "sitemap"],
416+
["delimiter", "}}"]
417+
]],
418+
["liquid", [
419+
["delimiter", "{{"],
420+
["object", "store_availability"],
421+
["delimiter", "}}"]
422+
]],
423+
["liquid", [
424+
["delimiter", "{{"],
425+
["keyword", "tablerow"],
426+
["delimiter", "}}"]
427+
]],
428+
["liquid", [
429+
["delimiter", "{{"],
430+
["object", "tax_line"],
431+
["delimiter", "}}"]
432+
]],
433+
["liquid", [
434+
["delimiter", "{{"],
435+
["object", "template"],
436+
["delimiter", "}}"]
437+
]],
438+
["liquid", [
439+
["delimiter", "{{"],
440+
["object", "theme"],
441+
["delimiter", "}}"]
442+
]],
443+
["liquid", [
444+
["delimiter", "{{"],
445+
["object", "transaction"],
446+
["delimiter", "}}"]
447+
]],
448+
["liquid", [
449+
["delimiter", "{{"],
450+
["object", "unit_price_measurement"],
451+
["delimiter", "}}"]
452+
]],
453+
["liquid", [
454+
["delimiter", "{{"],
455+
["object", "user_agent"],
456+
["delimiter", "}}"]
457+
]],
458+
["liquid", [
459+
["delimiter", "{{"],
460+
["object", "variant"],
461+
["delimiter", "}}"]
462+
]],
463+
["liquid", [
464+
["delimiter", "{{"],
465+
["object", "video"],
466+
["delimiter", "}}"]
467+
]],
468+
["liquid", [
469+
["delimiter", "{{"],
470+
["object", "video_source"],
471+
["delimiter", "}}"]
472+
]]
473+
]
474+
475+
----------------------------------------------------
476+
477+
Liquid objects sourced from https://shopify.dev/api/liquid/objects

‎tests/languages/liquid/template_feature.test

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
[
1717
["liquid", [
1818
["delimiter", "{{"],
19-
" page",
19+
["object", "page"],
2020
["punctuation", "."],
2121
"title ",
2222
["delimiter", "}}"]

0 commit comments

Comments
 (0)
Please sign in to comment.