@budibase/string-templates 2.15.7 → 2.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/manifest.json CHANGED
@@ -6,7 +6,8 @@
6
6
  ],
7
7
  "numArgs": 1,
8
8
  "example": "{{ abs 12012.1000 }} -> 12012.1",
9
- "description": "<p>Return the magnitude of <code>a</code>.</p>\n"
9
+ "description": "<p>Return the magnitude of <code>a</code>.</p>\n",
10
+ "requiresBlock": false
10
11
  },
11
12
  "add": {
12
13
  "args": [
@@ -15,7 +16,8 @@
15
16
  ],
16
17
  "numArgs": 2,
17
18
  "example": "{{ add 1 2 }} -> 3",
18
- "description": "<p>Return the sum of <code>a</code> plus <code>b</code>.</p>\n"
19
+ "description": "<p>Return the sum of <code>a</code> plus <code>b</code>.</p>\n",
20
+ "requiresBlock": false
19
21
  },
20
22
  "avg": {
21
23
  "args": [
@@ -23,7 +25,8 @@
23
25
  ],
24
26
  "numArgs": 1,
25
27
  "example": "{{ avg 1 2 3 4 5 }} -> 3",
26
- "description": "<p>Returns the average of all numbers in the given array.</p>\n"
28
+ "description": "<p>Returns the average of all numbers in the given array.</p>\n",
29
+ "requiresBlock": false
27
30
  },
28
31
  "ceil": {
29
32
  "args": [
@@ -31,7 +34,8 @@
31
34
  ],
32
35
  "numArgs": 1,
33
36
  "example": "{{ ceil 1.2 }} -> 2",
34
- "description": "<p>Get the <code>Math.ceil()</code> of the given value.</p>\n"
37
+ "description": "<p>Get the <code>Math.ceil()</code> of the given value.</p>\n",
38
+ "requiresBlock": false
35
39
  },
36
40
  "divide": {
37
41
  "args": [
@@ -40,7 +44,8 @@
40
44
  ],
41
45
  "numArgs": 2,
42
46
  "example": "{{ divide 10 5 }} -> 2",
43
- "description": "<p>Divide <code>a</code> by <code>b</code></p>\n"
47
+ "description": "<p>Divide <code>a</code> by <code>b</code></p>\n",
48
+ "requiresBlock": false
44
49
  },
45
50
  "floor": {
46
51
  "args": [
@@ -48,7 +53,8 @@
48
53
  ],
49
54
  "numArgs": 1,
50
55
  "example": "{{ floor 1.2 }} -> 1",
51
- "description": "<p>Get the <code>Math.floor()</code> of the given value.</p>\n"
56
+ "description": "<p>Get the <code>Math.floor()</code> of the given value.</p>\n",
57
+ "requiresBlock": false
52
58
  },
53
59
  "minus": {
54
60
  "args": [
@@ -57,7 +63,8 @@
57
63
  ],
58
64
  "numArgs": 2,
59
65
  "example": "{{ subtract 10 5 }} -> 5",
60
- "description": "<p>Return the product of <code>a</code> minus <code>b</code>.</p>\n"
66
+ "description": "<p>Return the product of <code>a</code> minus <code>b</code>.</p>\n",
67
+ "requiresBlock": false
61
68
  },
62
69
  "modulo": {
63
70
  "args": [
@@ -66,7 +73,8 @@
66
73
  ],
67
74
  "numArgs": 2,
68
75
  "example": "{{ modulo 10 5 }} -> 0",
69
- "description": "<p>Get the remainder of a division operation.</p>\n"
76
+ "description": "<p>Get the remainder of a division operation.</p>\n",
77
+ "requiresBlock": false
70
78
  },
71
79
  "multiply": {
72
80
  "args": [
@@ -75,7 +83,8 @@
75
83
  ],
76
84
  "numArgs": 2,
77
85
  "example": "{{ multiply 10 5 }} -> 50",
78
- "description": "<p>Multiply number <code>a</code> by number <code>b</code>.</p>\n"
86
+ "description": "<p>Multiply number <code>a</code> by number <code>b</code>.</p>\n",
87
+ "requiresBlock": false
79
88
  },
80
89
  "plus": {
81
90
  "args": [
@@ -84,7 +93,8 @@
84
93
  ],
85
94
  "numArgs": 2,
86
95
  "example": "{{ plus 10 5 }} -> 15",
87
- "description": "<p>Add <code>a</code> by <code>b</code>.</p>\n"
96
+ "description": "<p>Add <code>a</code> by <code>b</code>.</p>\n",
97
+ "requiresBlock": false
88
98
  },
89
99
  "random": {
90
100
  "args": [
@@ -93,7 +103,8 @@
93
103
  ],
94
104
  "numArgs": 2,
95
105
  "example": "{{ random 0 20 }} -> 10",
96
- "description": "<p>Generate a random number between two values</p>\n"
106
+ "description": "<p>Generate a random number between two values</p>\n",
107
+ "requiresBlock": false
97
108
  },
98
109
  "remainder": {
99
110
  "args": [
@@ -102,7 +113,8 @@
102
113
  ],
103
114
  "numArgs": 2,
104
115
  "example": "{{ remainder 10 6 }} -> 4",
105
- "description": "<p>Get the remainder when <code>a</code> is divided by <code>b</code>.</p>\n"
116
+ "description": "<p>Get the remainder when <code>a</code> is divided by <code>b</code>.</p>\n",
117
+ "requiresBlock": false
106
118
  },
107
119
  "round": {
108
120
  "args": [
@@ -110,7 +122,8 @@
110
122
  ],
111
123
  "numArgs": 1,
112
124
  "example": "{{ round 10.3 }} -> 10",
113
- "description": "<p>Round the given number.</p>\n"
125
+ "description": "<p>Round the given number.</p>\n",
126
+ "requiresBlock": false
114
127
  },
115
128
  "subtract": {
116
129
  "args": [
@@ -119,7 +132,8 @@
119
132
  ],
120
133
  "numArgs": 2,
121
134
  "example": "{{ subtract 10 5 }} -> 5",
122
- "description": "<p>Return the product of <code>a</code> minus <code>b</code>.</p>\n"
135
+ "description": "<p>Return the product of <code>a</code> minus <code>b</code>.</p>\n",
136
+ "requiresBlock": false
123
137
  },
124
138
  "sum": {
125
139
  "args": [
@@ -127,7 +141,8 @@
127
141
  ],
128
142
  "numArgs": 1,
129
143
  "example": "{{ sum [1, 2, 3] }} -> 6",
130
- "description": "<p>Returns the sum of all numbers in the given array.</p>\n"
144
+ "description": "<p>Returns the sum of all numbers in the given array.</p>\n",
145
+ "requiresBlock": false
131
146
  }
132
147
  },
133
148
  "array": {
@@ -138,7 +153,8 @@
138
153
  ],
139
154
  "numArgs": 2,
140
155
  "example": "{{ after ['a', 'b', 'c', 'd'] 2}} -> ['c', 'd']",
141
- "description": "<p>Returns all of the items in an array after the specified index. Opposite of <a href=\"#before\">before</a>.</p>\n"
156
+ "description": "<p>Returns all of the items in an array after the specified index. Opposite of <a href=\"#before\">before</a>.</p>\n",
157
+ "requiresBlock": false
142
158
  },
143
159
  "arrayify": {
144
160
  "args": [
@@ -146,7 +162,8 @@
146
162
  ],
147
163
  "numArgs": 1,
148
164
  "example": "{{ arrayify 'foo' }} -> ['foo']",
149
- "description": "<p>Cast the given <code>value</code> to an array.</p>\n"
165
+ "description": "<p>Cast the given <code>value</code> to an array.</p>\n",
166
+ "requiresBlock": false
150
167
  },
151
168
  "before": {
152
169
  "args": [
@@ -155,7 +172,8 @@
155
172
  ],
156
173
  "numArgs": 2,
157
174
  "example": "{{ before ['a', 'b', 'c', 'd'] 3}} -> ['a', 'b']",
158
- "description": "<p>Return all of the items in the collection before the specified count. Opposite of <a href=\"#after\">after</a>.</p>\n"
175
+ "description": "<p>Return all of the items in the collection before the specified count. Opposite of <a href=\"#after\">after</a>.</p>\n",
176
+ "requiresBlock": false
159
177
  },
160
178
  "eachIndex": {
161
179
  "args": [
@@ -163,8 +181,9 @@
163
181
  "options"
164
182
  ],
165
183
  "numArgs": 2,
166
- "example": "{{#eachIndex [1, 2, 3]}} {{item}} is {{index}} {{/eachIndex}}",
167
- "description": "<p>Iterates the array, listing an item and the index of it.</p>\n"
184
+ "example": "{{#eachIndex [1, 2, 3]}} {{item}} is {{index}} {{/eachIndex}} -> ' 1 is 0 2 is 1 3 is 2 '",
185
+ "description": "<p>Iterates the array, listing an item and the index of it.</p>\n",
186
+ "requiresBlock": true
168
187
  },
169
188
  "filter": {
170
189
  "args": [
@@ -173,8 +192,9 @@
173
192
  "options"
174
193
  ],
175
194
  "numArgs": 3,
176
- "example": "{{#filter [1, 2, 3] 2}}2 Found{{else}}2 not found{{/filter}}",
177
- "description": "<p>Block helper that filters the given array and renders the block for values that evaluate to <code>true</code>, otherwise the inverse block is returned.</p>\n"
195
+ "example": "{{#filter [1, 2, 3] 2}}2 Found{{else}}2 not found{{/filter}} -> 2 Found",
196
+ "description": "<p>Block helper that filters the given array and renders the block for values that evaluate to <code>true</code>, otherwise the inverse block is returned.</p>\n",
197
+ "requiresBlock": true
178
198
  },
179
199
  "first": {
180
200
  "args": [
@@ -183,15 +203,18 @@
183
203
  ],
184
204
  "numArgs": 2,
185
205
  "example": "{{first [1, 2, 3, 4] 2}} -> 1,2",
186
- "description": "<p>Returns the first item, or first <code>n</code> items of an array.</p>\n"
206
+ "description": "<p>Returns the first item, or first <code>n</code> items of an array.</p>\n",
207
+ "requiresBlock": false
187
208
  },
188
209
  "forEach": {
189
210
  "args": [
190
- "array"
211
+ "array",
212
+ "options"
191
213
  ],
192
- "numArgs": 1,
193
- "example": "{{#forEach [{ 'name': 'John' }] }} {{ name }} {{/forEach}}",
194
- "description": "<p>Iterates over each item in an array and exposes the current item in the array as context to the inner block. In addition to the current array item, the helper exposes the following variables to the inner block: - <code>index</code> - <code>total</code> - <code>isFirst</code> - <code>isLast</code> Also, <code>@index</code> is exposed as a private variable, and additional private variables may be defined as hash arguments.</p>\n"
214
+ "numArgs": 2,
215
+ "example": "{{#forEach [{ 'name': 'John' }] }} {{ name }} {{/forEach}} -> ' John '",
216
+ "description": "<p>Iterates over each item in an array and exposes the current item in the array as context to the inner block. In addition to the current array item, the helper exposes the following variables to the inner block: - <code>index</code> - <code>total</code> - <code>isFirst</code> - <code>isLast</code> Also, <code>@index</code> is exposed as a private variable, and additional private variables may be defined as hash arguments.</p>\n",
217
+ "requiresBlock": true
195
218
  },
196
219
  "inArray": {
197
220
  "args": [
@@ -201,7 +224,8 @@
201
224
  ],
202
225
  "numArgs": 3,
203
226
  "example": "{{#inArray [1, 2, 3] 2}} 2 exists {{else}} 2 does not exist {{/inArray}} -> ' 2 exists '",
204
- "description": "<p>Block helper that renders the block if an array has the given <code>value</code>. Optionally specify an inverse block to render when the array does not have the given value.</p>\n"
227
+ "description": "<p>Block helper that renders the block if an array has the given <code>value</code>. Optionally specify an inverse block to render when the array does not have the given value.</p>\n",
228
+ "requiresBlock": true
205
229
  },
206
230
  "isArray": {
207
231
  "args": [
@@ -209,7 +233,8 @@
209
233
  ],
210
234
  "numArgs": 1,
211
235
  "example": "{{isArray [1, 2]}} -> true",
212
- "description": "<p>Returns true if <code>value</code> is an es5 array.</p>\n"
236
+ "description": "<p>Returns true if <code>value</code> is an es5 array.</p>\n",
237
+ "requiresBlock": false
213
238
  },
214
239
  "itemAt": {
215
240
  "args": [
@@ -218,7 +243,8 @@
218
243
  ],
219
244
  "numArgs": 2,
220
245
  "example": "{{itemAt [1, 2, 3] 1}} -> 2",
221
- "description": "<p>Returns the item from <code>array</code> at index <code>idx</code>.</p>\n"
246
+ "description": "<p>Returns the item from <code>array</code> at index <code>idx</code>.</p>\n",
247
+ "requiresBlock": false
222
248
  },
223
249
  "join": {
224
250
  "args": [
@@ -227,17 +253,18 @@
227
253
  ],
228
254
  "numArgs": 2,
229
255
  "example": "{{join [1, 2, 3]}} -> 1, 2, 3",
230
- "description": "<p>Join all elements of array into a string, optionally using a given separator.</p>\n"
256
+ "description": "<p>Join all elements of array into a string, optionally using a given separator.</p>\n",
257
+ "requiresBlock": false
231
258
  },
232
259
  "equalsLength": {
233
260
  "args": [
234
261
  "value",
235
- "length",
236
- "options"
262
+ "length"
237
263
  ],
238
- "numArgs": 3,
264
+ "numArgs": 2,
239
265
  "example": "{{equalsLength [1, 2, 3] 3}} -> true",
240
- "description": "<p>Returns true if the the length of the given <code>value</code> is equal to the given <code>length</code>. Can be used as a block or inline helper.</p>\n"
266
+ "description": "<p>Returns true if the the length of the given <code>value</code> is equal to the given <code>length</code>. Can be used as a block or inline helper.</p>\n",
267
+ "requiresBlock": false
241
268
  },
242
269
  "last": {
243
270
  "args": [
@@ -246,7 +273,8 @@
246
273
  ],
247
274
  "numArgs": 2,
248
275
  "example": "{{last [1, 2, 3]}} -> 3",
249
- "description": "<p>Returns the last item, or last <code>n</code> items of an array or string. Opposite of <a href=\"#first\">first</a>.</p>\n"
276
+ "description": "<p>Returns the last item, or last <code>n</code> items of an array or string. Opposite of <a href=\"#first\">first</a>.</p>\n",
277
+ "requiresBlock": false
250
278
  },
251
279
  "length": {
252
280
  "args": [
@@ -254,17 +282,18 @@
254
282
  ],
255
283
  "numArgs": 1,
256
284
  "example": "{{length [1, 2, 3]}} -> 3",
257
- "description": "<p>Returns the length of the given string or array.</p>\n"
285
+ "description": "<p>Returns the length of the given string or array.</p>\n",
286
+ "requiresBlock": false
258
287
  },
259
288
  "lengthEqual": {
260
289
  "args": [
261
290
  "value",
262
- "length",
263
- "options"
291
+ "length"
264
292
  ],
265
- "numArgs": 3,
293
+ "numArgs": 2,
266
294
  "example": "{{equalsLength [1, 2, 3] 3}} -> true",
267
- "description": "<p>Returns true if the the length of the given <code>value</code> is equal to the given <code>length</code>. Can be used as a block or inline helper.</p>\n"
295
+ "description": "<p>Returns true if the the length of the given <code>value</code> is equal to the given <code>length</code>. Can be used as a block or inline helper.</p>\n",
296
+ "requiresBlock": false
268
297
  },
269
298
  "map": {
270
299
  "args": [
@@ -273,7 +302,8 @@
273
302
  ],
274
303
  "numArgs": 2,
275
304
  "example": "{{map [1, 2, 3] double}} -> [2, 4, 6]",
276
- "description": "<p>Returns a new array, created by calling <code>function</code> on each element of the given <code>array</code>. For example,</p>\n"
305
+ "description": "<p>Returns a new array, created by calling <code>function</code> on each element of the given <code>array</code>. For example,</p>\n",
306
+ "requiresBlock": false
277
307
  },
278
308
  "pluck": {
279
309
  "args": [
@@ -282,7 +312,8 @@
282
312
  ],
283
313
  "numArgs": 2,
284
314
  "example": "{{pluck [{ 'name': 'Bob' }] 'name' }} -> ['Bob']",
285
- "description": "<p>Map over the given object or array or objects and create an array of values from the given <code>prop</code>. Dot-notation may be used (as a string) to get nested properties.</p>\n"
315
+ "description": "<p>Map over the given object or array or objects and create an array of values from the given <code>prop</code>. Dot-notation may be used (as a string) to get nested properties.</p>\n",
316
+ "requiresBlock": false
286
317
  },
287
318
  "reverse": {
288
319
  "args": [
@@ -290,7 +321,8 @@
290
321
  ],
291
322
  "numArgs": 1,
292
323
  "example": "{{reverse [1, 2, 3]}} -> [3, 2, 1]",
293
- "description": "<p>Reverse the elements in an array, or the characters in a string.</p>\n"
324
+ "description": "<p>Reverse the elements in an array, or the characters in a string.</p>\n",
325
+ "requiresBlock": false
294
326
  },
295
327
  "some": {
296
328
  "args": [
@@ -300,7 +332,8 @@
300
332
  ],
301
333
  "numArgs": 3,
302
334
  "example": "{{#some [1, \"b\", 3] isString}} string found {{else}} No string found {{/some}} -> ' string found '",
303
- "description": "<p>Block helper that returns the block if the callback returns true for some value in the given array.</p>\n"
335
+ "description": "<p>Block helper that returns the block if the callback returns true for some value in the given array.</p>\n",
336
+ "requiresBlock": true
304
337
  },
305
338
  "sort": {
306
339
  "args": [
@@ -309,7 +342,8 @@
309
342
  ],
310
343
  "numArgs": 2,
311
344
  "example": "{{ sort ['b', 'a', 'c'] }} -> ['a', 'b', 'c']",
312
- "description": "<p>Sort the given <code>array</code>. If an array of objects is passed, you may optionally pass a <code>key</code> to sort on as the second argument. You may alternatively pass a sorting function as the second argument.</p>\n"
345
+ "description": "<p>Sort the given <code>array</code>. If an array of objects is passed, you may optionally pass a <code>key</code> to sort on as the second argument. You may alternatively pass a sorting function as the second argument.</p>\n",
346
+ "requiresBlock": false
313
347
  },
314
348
  "sortBy": {
315
349
  "args": [
@@ -318,7 +352,8 @@
318
352
  ],
319
353
  "numArgs": 2,
320
354
  "example": "{{ sortBy [{'a': 'zzz'}, {'a': 'aaa'}] 'a' }} -> [{'a':'aaa'},{'a':'zzz'}]",
321
- "description": "<p>Sort an <code>array</code>. If an array of objects is passed, you may optionally pass a <code>key</code> to sort on as the second argument. You may alternatively pass a sorting function as the second argument.</p>\n"
355
+ "description": "<p>Sort an <code>array</code>. If an array of objects is passed, you may optionally pass a <code>key</code> to sort on as the second argument. You may alternatively pass a sorting function as the second argument.</p>\n",
356
+ "requiresBlock": false
322
357
  },
323
358
  "withAfter": {
324
359
  "args": [
@@ -327,8 +362,9 @@
327
362
  "options"
328
363
  ],
329
364
  "numArgs": 3,
330
- "example": "{{ withAfter [1, 2, 3] 1 }} {{this}} {{/withAfter}}",
331
- "description": "<p>Use the items in the array <em>after</em> the specified index as context inside a block. Opposite of <a href=\"#withBefore\">withBefore</a>.</p>\n"
365
+ "example": "{{#withAfter [1, 2, 3] 1 }} {{this}} {{/withAfter}} -> ' 2 3 '",
366
+ "description": "<p>Use the items in the array <em>after</em> the specified index as context inside a block. Opposite of <a href=\"#withBefore\">withBefore</a>.</p>\n",
367
+ "requiresBlock": true
332
368
  },
333
369
  "withBefore": {
334
370
  "args": [
@@ -337,8 +373,9 @@
337
373
  "options"
338
374
  ],
339
375
  "numArgs": 3,
340
- "example": "{{ withBefore [1, 2, 3] 2 }} {{this}} {{/withBefore}}",
341
- "description": "<p>Use the items in the array <em>before</em> the specified index as context inside a block. Opposite of <a href=\"#withAfter\">withAfter</a>.</p>\n"
376
+ "example": "{{#withBefore [1, 2, 3] 2 }} {{this}} {{/withBefore}} -> ' 1 '",
377
+ "description": "<p>Use the items in the array <em>before</em> the specified index as context inside a block. Opposite of <a href=\"#withAfter\">withAfter</a>.</p>\n",
378
+ "requiresBlock": true
342
379
  },
343
380
  "withFirst": {
344
381
  "args": [
@@ -348,7 +385,8 @@
348
385
  ],
349
386
  "numArgs": 3,
350
387
  "example": "{{#withFirst [1, 2, 3] }}{{this}}{{/withFirst}} -> 1",
351
- "description": "<p>Use the first item in a collection inside a handlebars block expression. Opposite of <a href=\"#withLast\">withLast</a>.</p>\n"
388
+ "description": "<p>Use the first item in a collection inside a handlebars block expression. Opposite of <a href=\"#withLast\">withLast</a>.</p>\n",
389
+ "requiresBlock": true
352
390
  },
353
391
  "withGroup": {
354
392
  "args": [
@@ -358,7 +396,8 @@
358
396
  ],
359
397
  "numArgs": 3,
360
398
  "example": "{{#withGroup [1, 2, 3, 4] 2}}{{#each this}}{{.}}{{/each}}<br>{{/withGroup}} -> 12<br>34<br>",
361
- "description": "<p>Block helper that groups array elements by given group <code>size</code>.</p>\n"
399
+ "description": "<p>Block helper that groups array elements by given group <code>size</code>.</p>\n",
400
+ "requiresBlock": true
362
401
  },
363
402
  "withLast": {
364
403
  "args": [
@@ -368,7 +407,8 @@
368
407
  ],
369
408
  "numArgs": 3,
370
409
  "example": "{{#withLast [1, 2, 3, 4]}}{{this}}{{/withLast}} -> 4",
371
- "description": "<p>Use the last item or <code>n</code> items in an array as context inside a block. Opposite of <a href=\"#withFirst\">withFirst</a>.</p>\n"
410
+ "description": "<p>Use the last item or <code>n</code> items in an array as context inside a block. Opposite of <a href=\"#withFirst\">withFirst</a>.</p>\n",
411
+ "requiresBlock": true
372
412
  },
373
413
  "withSort": {
374
414
  "args": [
@@ -378,7 +418,8 @@
378
418
  ],
379
419
  "numArgs": 3,
380
420
  "example": "{{#withSort ['b', 'a', 'c']}}{{this}}{{/withSort}} -> abc",
381
- "description": "<p>Block helper that sorts a collection and exposes the sorted collection as context inside the block.</p>\n"
421
+ "description": "<p>Block helper that sorts a collection and exposes the sorted collection as context inside the block.</p>\n",
422
+ "requiresBlock": true
382
423
  },
383
424
  "unique": {
384
425
  "args": [
@@ -387,7 +428,8 @@
387
428
  ],
388
429
  "numArgs": 2,
389
430
  "example": "{{#each (unique ['a', 'a', 'c', 'b', 'e', 'e']) }}{{.}}{{/each}} -> acbe",
390
- "description": "<p>Block helper that return an array with all duplicate values removed. Best used along with a <a href=\"#each\">each</a> helper.</p>\n"
431
+ "description": "<p>Block helper that return an array with all duplicate values removed. Best used along with a <a href=\"#each\">each</a> helper.</p>\n",
432
+ "requiresBlock": true
391
433
  }
392
434
  },
393
435
  "number": {
@@ -397,7 +439,8 @@
397
439
  ],
398
440
  "numArgs": 1,
399
441
  "example": "{{ bytes 1386 1 }} -> 1.4 kB",
400
- "description": "<p>Format a number to it&#39;s equivalent in bytes. If a string is passed, it&#39;s length will be formatted and returned. <strong>Examples:</strong> - <code>&#39;foo&#39; =&gt; 3 B</code> - <code>13661855 =&gt; 13.66 MB</code> - <code>825399 =&gt; 825.39 kB</code> - <code>1396 =&gt; 1.4 kB</code></p>\n"
442
+ "description": "<p>Format a number to it&#39;s equivalent in bytes. If a string is passed, it&#39;s length will be formatted and returned. <strong>Examples:</strong> - <code>&#39;foo&#39; =&gt; 3 B</code> - <code>13661855 =&gt; 13.66 MB</code> - <code>825399 =&gt; 825.39 kB</code> - <code>1396 =&gt; 1.4 kB</code></p>\n",
443
+ "requiresBlock": false
401
444
  },
402
445
  "addCommas": {
403
446
  "args": [
@@ -405,7 +448,8 @@
405
448
  ],
406
449
  "numArgs": 1,
407
450
  "example": "{{ addCommas 1000000 }} -> 1,000,000",
408
- "description": "<p>Add commas to numbers</p>\n"
451
+ "description": "<p>Add commas to numbers</p>\n",
452
+ "requiresBlock": false
409
453
  },
410
454
  "phoneNumber": {
411
455
  "args": [
@@ -413,7 +457,8 @@
413
457
  ],
414
458
  "numArgs": 1,
415
459
  "example": "{{ phoneNumber 8005551212 }} -> (800) 555-1212",
416
- "description": "<p>Convert a string or number to a formatted phone number.</p>\n"
460
+ "description": "<p>Convert a string or number to a formatted phone number.</p>\n",
461
+ "requiresBlock": false
417
462
  },
418
463
  "toAbbr": {
419
464
  "args": [
@@ -422,7 +467,8 @@
422
467
  ],
423
468
  "numArgs": 2,
424
469
  "example": "{{ toAbbr 10123 2 }} -> 10.12k",
425
- "description": "<p>Abbreviate numbers to the given number of <code>precision</code>. This for general numbers, not size in bytes.</p>\n"
470
+ "description": "<p>Abbreviate numbers to the given number of <code>precision</code>. This for general numbers, not size in bytes.</p>\n",
471
+ "requiresBlock": false
426
472
  },
427
473
  "toExponential": {
428
474
  "args": [
@@ -431,7 +477,8 @@
431
477
  ],
432
478
  "numArgs": 2,
433
479
  "example": "{{ toExponential 10123 2 }} -> 1.01e+4",
434
- "description": "<p>Returns a string representing the given number in exponential notation.</p>\n"
480
+ "description": "<p>Returns a string representing the given number in exponential notation.</p>\n",
481
+ "requiresBlock": false
435
482
  },
436
483
  "toFixed": {
437
484
  "args": [
@@ -440,21 +487,24 @@
440
487
  ],
441
488
  "numArgs": 2,
442
489
  "example": "{{ toFixed 1.1234 2 }} -> 1.12",
443
- "description": "<p>Formats the given number using fixed-point notation.</p>\n"
490
+ "description": "<p>Formats the given number using fixed-point notation.</p>\n",
491
+ "requiresBlock": false
444
492
  },
445
493
  "toFloat": {
446
494
  "args": [
447
495
  "number"
448
496
  ],
449
497
  "numArgs": 1,
450
- "description": "<p>Convert input to a float.</p>\n"
498
+ "description": "<p>Convert input to a float.</p>\n",
499
+ "requiresBlock": false
451
500
  },
452
501
  "toInt": {
453
502
  "args": [
454
503
  "number"
455
504
  ],
456
505
  "numArgs": 1,
457
- "description": "<p>Convert input to an integer.</p>\n"
506
+ "description": "<p>Convert input to an integer.</p>\n",
507
+ "requiresBlock": false
458
508
  },
459
509
  "toPrecision": {
460
510
  "args": [
@@ -462,8 +512,9 @@
462
512
  "precision"
463
513
  ],
464
514
  "numArgs": 2,
465
- "example": "{{toPrecision '1.1234' 2}}",
466
- "description": "<p>Returns a string representing the <code>Number</code> object to the specified precision.</p>\n"
515
+ "example": "{{toPrecision '1.1234' 2}} -> 1.1",
516
+ "description": "<p>Returns a string representing the <code>Number</code> object to the specified precision.</p>\n",
517
+ "requiresBlock": false
467
518
  }
468
519
  },
469
520
  "url": {
@@ -473,7 +524,8 @@
473
524
  ],
474
525
  "numArgs": 1,
475
526
  "example": "{{ encodeURI 'https://myurl?Hello There' }} -> https%3A%2F%2Fmyurl%3FHello%20There",
476
- "description": "<p>Encodes a Uniform Resource Identifier (URI) component by replacing each instance of certain characters by one, two, three, or four escape sequences representing the UTF-8 encoding of the character.</p>\n"
527
+ "description": "<p>Encodes a Uniform Resource Identifier (URI) component by replacing each instance of certain characters by one, two, three, or four escape sequences representing the UTF-8 encoding of the character.</p>\n",
528
+ "requiresBlock": false
477
529
  },
478
530
  "escape": {
479
531
  "args": [
@@ -481,7 +533,8 @@
481
533
  ],
482
534
  "numArgs": 1,
483
535
  "example": "{{ escape 'https://myurl?Hello+There' }} -> https%3A%2F%2Fmyurl%3FHello%2BThere",
484
- "description": "<p>Escape the given string by replacing characters with escape sequences. Useful for allowing the string to be used in a URL, etc.</p>\n"
536
+ "description": "<p>Escape the given string by replacing characters with escape sequences. Useful for allowing the string to be used in a URL, etc.</p>\n",
537
+ "requiresBlock": false
485
538
  },
486
539
  "decodeURI": {
487
540
  "args": [
@@ -489,7 +542,8 @@
489
542
  ],
490
543
  "numArgs": 1,
491
544
  "example": "{{ decodeURI 'https://myurl?Hello%20There' }} -> https://myurl?Hello There",
492
- "description": "<p>Decode a Uniform Resource Identifier (URI) component.</p>\n"
545
+ "description": "<p>Decode a Uniform Resource Identifier (URI) component.</p>\n",
546
+ "requiresBlock": false
493
547
  },
494
548
  "urlResolve": {
495
549
  "args": [
@@ -498,7 +552,8 @@
498
552
  ],
499
553
  "numArgs": 2,
500
554
  "example": "{{ urlResolve 'https://myurl' '/api/test' }} -> https://myurl/api/test",
501
- "description": "<p>Take a base URL, and a href URL, and resolve them as a browser would for an anchor tag.</p>\n"
555
+ "description": "<p>Take a base URL, and a href URL, and resolve them as a browser would for an anchor tag.</p>\n",
556
+ "requiresBlock": false
502
557
  },
503
558
  "urlParse": {
504
559
  "args": [
@@ -506,7 +561,8 @@
506
561
  ],
507
562
  "numArgs": 1,
508
563
  "example": "{{ urlParse 'https://myurl/api/test' }}",
509
- "description": "<p>Parses a <code>url</code> string into an object.</p>\n"
564
+ "description": "<p>Parses a <code>url</code> string into an object.</p>\n",
565
+ "requiresBlock": false
510
566
  },
511
567
  "stripQuerystring": {
512
568
  "args": [
@@ -514,7 +570,8 @@
514
570
  ],
515
571
  "numArgs": 1,
516
572
  "example": "{{ stripQuerystring 'https://myurl/api/test?foo=bar' }} -> 'https://myurl/api/test'",
517
- "description": "<p>Strip the query string from the given <code>url</code>.</p>\n"
573
+ "description": "<p>Strip the query string from the given <code>url</code>.</p>\n",
574
+ "requiresBlock": false
518
575
  },
519
576
  "stripProtocol": {
520
577
  "args": [
@@ -522,7 +579,8 @@
522
579
  ],
523
580
  "numArgs": 1,
524
581
  "example": "{{ stripProtocol 'https://myurl/api/test' }} -> '//myurl/api/test'",
525
- "description": "<p>Strip protocol from a <code>url</code>. Useful for displaying media that may have an &#39;http&#39; protocol on secure connections.</p>\n"
582
+ "description": "<p>Strip protocol from a <code>url</code>. Useful for displaying media that may have an &#39;http&#39; protocol on secure connections.</p>\n",
583
+ "requiresBlock": false
526
584
  }
527
585
  },
528
586
  "string": {
@@ -533,7 +591,8 @@
533
591
  ],
534
592
  "numArgs": 2,
535
593
  "example": "{{append 'index' '.html'}} -> index.html",
536
- "description": "<p>Append the specified <code>suffix</code> to the given string.</p>\n"
594
+ "description": "<p>Append the specified <code>suffix</code> to the given string.</p>\n",
595
+ "requiresBlock": false
537
596
  },
538
597
  "camelcase": {
539
598
  "args": [
@@ -541,7 +600,8 @@
541
600
  ],
542
601
  "numArgs": 1,
543
602
  "example": "{{camelcase 'foo bar baz'}} -> fooBarBaz",
544
- "description": "<p>camelCase the characters in the given <code>string</code>.</p>\n"
603
+ "description": "<p>camelCase the characters in the given <code>string</code>.</p>\n",
604
+ "requiresBlock": false
545
605
  },
546
606
  "capitalize": {
547
607
  "args": [
@@ -549,7 +609,8 @@
549
609
  ],
550
610
  "numArgs": 1,
551
611
  "example": "{{capitalize 'foo bar baz'}} -> Foo bar baz",
552
- "description": "<p>Capitalize the first word in a sentence.</p>\n"
612
+ "description": "<p>Capitalize the first word in a sentence.</p>\n",
613
+ "requiresBlock": false
553
614
  },
554
615
  "capitalizeAll": {
555
616
  "args": [
@@ -557,7 +618,8 @@
557
618
  ],
558
619
  "numArgs": 1,
559
620
  "example": "{{ capitalizeAll 'foo bar baz'}} -> Foo Bar Baz",
560
- "description": "<p>Capitalize all words in a string.</p>\n"
621
+ "description": "<p>Capitalize all words in a string.</p>\n",
622
+ "requiresBlock": false
561
623
  },
562
624
  "center": {
563
625
  "args": [
@@ -566,7 +628,8 @@
566
628
  ],
567
629
  "numArgs": 2,
568
630
  "example": "{{ center 'test' 1}} -> ' test '",
569
- "description": "<p>Center a string using non-breaking spaces</p>\n"
631
+ "description": "<p>Center a string using non-breaking spaces</p>\n",
632
+ "requiresBlock": false
570
633
  },
571
634
  "chop": {
572
635
  "args": [
@@ -574,7 +637,8 @@
574
637
  ],
575
638
  "numArgs": 1,
576
639
  "example": "{{ chop ' ABC '}} -> ABC",
577
- "description": "<p>Like trim, but removes both extraneous whitespace <strong>and non-word characters</strong> from the beginning and end of a string.</p>\n"
640
+ "description": "<p>Like trim, but removes both extraneous whitespace <strong>and non-word characters</strong> from the beginning and end of a string.</p>\n",
641
+ "requiresBlock": false
578
642
  },
579
643
  "dashcase": {
580
644
  "args": [
@@ -582,7 +646,8 @@
582
646
  ],
583
647
  "numArgs": 1,
584
648
  "example": "{{dashcase 'a-b-c d_e'}} -> a-b-c-d-e",
585
- "description": "<p>dash-case the characters in <code>string</code>. Replaces non-word characters and periods with hyphens.</p>\n"
649
+ "description": "<p>dash-case the characters in <code>string</code>. Replaces non-word characters and periods with hyphens.</p>\n",
650
+ "requiresBlock": false
586
651
  },
587
652
  "dotcase": {
588
653
  "args": [
@@ -590,7 +655,8 @@
590
655
  ],
591
656
  "numArgs": 1,
592
657
  "example": "{{dotcase 'a-b-c d_e'}} -> a.b.c.d.e",
593
- "description": "<p>dot.case the characters in <code>string</code>.</p>\n"
658
+ "description": "<p>dot.case the characters in <code>string</code>.</p>\n",
659
+ "requiresBlock": false
594
660
  },
595
661
  "downcase": {
596
662
  "args": [
@@ -598,7 +664,8 @@
598
664
  ],
599
665
  "numArgs": 1,
600
666
  "example": "{{downcase 'aBcDeF'}} -> abcdef",
601
- "description": "<p>Lowercase all of the characters in the given string. Alias for <a href=\"#lowercase\">lowercase</a>.</p>\n"
667
+ "description": "<p>Lowercase all of the characters in the given string. Alias for <a href=\"#lowercase\">lowercase</a>.</p>\n",
668
+ "requiresBlock": false
602
669
  },
603
670
  "ellipsis": {
604
671
  "args": [
@@ -607,7 +674,8 @@
607
674
  ],
608
675
  "numArgs": 2,
609
676
  "example": "{{ellipsis 'foo bar baz' 7}} -> foo bar…",
610
- "description": "<p>Truncates a string to the specified <code>length</code>, and appends it with an elipsis, <code>…</code>.</p>\n"
677
+ "description": "<p>Truncates a string to the specified <code>length</code>, and appends it with an elipsis, <code>…</code>.</p>\n",
678
+ "requiresBlock": false
611
679
  },
612
680
  "hyphenate": {
613
681
  "args": [
@@ -615,7 +683,8 @@
615
683
  ],
616
684
  "numArgs": 1,
617
685
  "example": "{{hyphenate 'foo bar baz qux'}} -> foo-bar-baz-qux",
618
- "description": "<p>Replace spaces in a string with hyphens.</p>\n"
686
+ "description": "<p>Replace spaces in a string with hyphens.</p>\n",
687
+ "requiresBlock": false
619
688
  },
620
689
  "isString": {
621
690
  "args": [
@@ -623,7 +692,8 @@
623
692
  ],
624
693
  "numArgs": 1,
625
694
  "example": "{{isString 'foo'}} -> true",
626
- "description": "<p>Return true if <code>value</code> is a string.</p>\n"
695
+ "description": "<p>Return true if <code>value</code> is a string.</p>\n",
696
+ "requiresBlock": false
627
697
  },
628
698
  "lowercase": {
629
699
  "args": [
@@ -631,7 +701,8 @@
631
701
  ],
632
702
  "numArgs": 1,
633
703
  "example": "{{lowercase 'Foo BAR baZ'}} -> foo bar baz",
634
- "description": "<p>Lowercase all characters in the given string.</p>\n"
704
+ "description": "<p>Lowercase all characters in the given string.</p>\n",
705
+ "requiresBlock": false
635
706
  },
636
707
  "occurrences": {
637
708
  "args": [
@@ -640,7 +711,8 @@
640
711
  ],
641
712
  "numArgs": 2,
642
713
  "example": "{{occurrences 'foo bar foo bar baz' 'foo'}} -> 2",
643
- "description": "<p>Return the number of occurrences of <code>substring</code> within the given <code>string</code>.</p>\n"
714
+ "description": "<p>Return the number of occurrences of <code>substring</code> within the given <code>string</code>.</p>\n",
715
+ "requiresBlock": false
644
716
  },
645
717
  "pascalcase": {
646
718
  "args": [
@@ -648,7 +720,8 @@
648
720
  ],
649
721
  "numArgs": 1,
650
722
  "example": "{{pascalcase 'foo bar baz'}} -> FooBarBaz",
651
- "description": "<p>PascalCase the characters in <code>string</code>.</p>\n"
723
+ "description": "<p>PascalCase the characters in <code>string</code>.</p>\n",
724
+ "requiresBlock": false
652
725
  },
653
726
  "pathcase": {
654
727
  "args": [
@@ -656,7 +729,8 @@
656
729
  ],
657
730
  "numArgs": 1,
658
731
  "example": "{{pathcase 'a-b-c d_e'}} -> a/b/c/d/e",
659
- "description": "<p>path/case the characters in <code>string</code>.</p>\n"
732
+ "description": "<p>path/case the characters in <code>string</code>.</p>\n",
733
+ "requiresBlock": false
660
734
  },
661
735
  "plusify": {
662
736
  "args": [
@@ -664,7 +738,8 @@
664
738
  ],
665
739
  "numArgs": 1,
666
740
  "example": "{{plusify 'foo bar baz'}} -> foo+bar+baz",
667
- "description": "<p>Replace spaces in the given string with pluses.</p>\n"
741
+ "description": "<p>Replace spaces in the given string with pluses.</p>\n",
742
+ "requiresBlock": false
668
743
  },
669
744
  "prepend": {
670
745
  "args": [
@@ -673,7 +748,8 @@
673
748
  ],
674
749
  "numArgs": 2,
675
750
  "example": "{{prepend 'bar' 'foo-'}} -> foo-bar",
676
- "description": "<p>Prepends the given <code>string</code> with the specified <code>prefix</code>.</p>\n"
751
+ "description": "<p>Prepends the given <code>string</code> with the specified <code>prefix</code>.</p>\n",
752
+ "requiresBlock": false
677
753
  },
678
754
  "remove": {
679
755
  "args": [
@@ -682,7 +758,8 @@
682
758
  ],
683
759
  "numArgs": 2,
684
760
  "example": "{{remove 'a b a b a b' 'a '}} -> b b b",
685
- "description": "<p>Remove all occurrences of <code>substring</code> from the given <code>str</code>.</p>\n"
761
+ "description": "<p>Remove all occurrences of <code>substring</code> from the given <code>str</code>.</p>\n",
762
+ "requiresBlock": false
686
763
  },
687
764
  "removeFirst": {
688
765
  "args": [
@@ -691,7 +768,8 @@
691
768
  ],
692
769
  "numArgs": 2,
693
770
  "example": "{{removeFirst 'a b a b a b' 'a'}} -> ' b a b a b'",
694
- "description": "<p>Remove the first occurrence of <code>substring</code> from the given <code>str</code>.</p>\n"
771
+ "description": "<p>Remove the first occurrence of <code>substring</code> from the given <code>str</code>.</p>\n",
772
+ "requiresBlock": false
695
773
  },
696
774
  "replace": {
697
775
  "args": [
@@ -701,7 +779,8 @@
701
779
  ],
702
780
  "numArgs": 3,
703
781
  "example": "{{replace 'a b a b a b' 'a' 'z'}} -> z b z b z b",
704
- "description": "<p>Replace all occurrences of substring <code>a</code> with substring <code>b</code>.</p>\n"
782
+ "description": "<p>Replace all occurrences of substring <code>a</code> with substring <code>b</code>.</p>\n",
783
+ "requiresBlock": false
705
784
  },
706
785
  "replaceFirst": {
707
786
  "args": [
@@ -711,7 +790,8 @@
711
790
  ],
712
791
  "numArgs": 3,
713
792
  "example": "{{replaceFirst 'a b a b a b' 'a' 'z'}} -> z b a b a b",
714
- "description": "<p>Replace the first occurrence of substring <code>a</code> with substring <code>b</code>.</p>\n"
793
+ "description": "<p>Replace the first occurrence of substring <code>a</code> with substring <code>b</code>.</p>\n",
794
+ "requiresBlock": false
715
795
  },
716
796
  "sentence": {
717
797
  "args": [
@@ -719,7 +799,8 @@
719
799
  ],
720
800
  "numArgs": 1,
721
801
  "example": "{{sentence 'hello world. goodbye world.'}} -> Hello world. Goodbye world.",
722
- "description": "<p>Sentence case the given string</p>\n"
802
+ "description": "<p>Sentence case the given string</p>\n",
803
+ "requiresBlock": false
723
804
  },
724
805
  "snakecase": {
725
806
  "args": [
@@ -727,7 +808,8 @@
727
808
  ],
728
809
  "numArgs": 1,
729
810
  "example": "{{snakecase 'a-b-c d_e'}} -> a_b_c_d_e",
730
- "description": "<p>snake_case the characters in the given <code>string</code>.</p>\n"
811
+ "description": "<p>snake_case the characters in the given <code>string</code>.</p>\n",
812
+ "requiresBlock": false
731
813
  },
732
814
  "split": {
733
815
  "args": [
@@ -735,7 +817,8 @@
735
817
  ],
736
818
  "numArgs": 1,
737
819
  "example": "{{split 'a,b,c'}} -> ['a', 'b', 'c']",
738
- "description": "<p>Split <code>string</code> by the given <code>character</code>.</p>\n"
820
+ "description": "<p>Split <code>string</code> by the given <code>character</code>.</p>\n",
821
+ "requiresBlock": false
739
822
  },
740
823
  "startsWith": {
741
824
  "args": [
@@ -745,7 +828,8 @@
745
828
  ],
746
829
  "numArgs": 3,
747
830
  "example": "{{#startsWith 'Goodbye' 'Hello, world!'}}Yep{{else}}Nope{{/startsWith}} -> Nope",
748
- "description": "<p>Tests whether a string begins with the given prefix.</p>\n"
831
+ "description": "<p>Tests whether a string begins with the given prefix.</p>\n",
832
+ "requiresBlock": true
749
833
  },
750
834
  "titleize": {
751
835
  "args": [
@@ -753,7 +837,8 @@
753
837
  ],
754
838
  "numArgs": 1,
755
839
  "example": "{{titleize 'this is title case' }} -> This Is Title Case",
756
- "description": "<p>Title case the given string.</p>\n"
840
+ "description": "<p>Title case the given string.</p>\n",
841
+ "requiresBlock": false
757
842
  },
758
843
  "trim": {
759
844
  "args": [
@@ -761,7 +846,8 @@
761
846
  ],
762
847
  "numArgs": 1,
763
848
  "example": "{{trim ' ABC ' }} -> ABC",
764
- "description": "<p>Removes extraneous whitespace from the beginning and end of a string.</p>\n"
849
+ "description": "<p>Removes extraneous whitespace from the beginning and end of a string.</p>\n",
850
+ "requiresBlock": false
765
851
  },
766
852
  "trimLeft": {
767
853
  "args": [
@@ -769,7 +855,8 @@
769
855
  ],
770
856
  "numArgs": 1,
771
857
  "example": "{{trimLeft ' ABC ' }} -> 'ABC '",
772
- "description": "<p>Removes extraneous whitespace from the beginning of a string.</p>\n"
858
+ "description": "<p>Removes extraneous whitespace from the beginning of a string.</p>\n",
859
+ "requiresBlock": false
773
860
  },
774
861
  "trimRight": {
775
862
  "args": [
@@ -777,7 +864,8 @@
777
864
  ],
778
865
  "numArgs": 1,
779
866
  "example": "{{trimRight ' ABC ' }} -> ' ABC'",
780
- "description": "<p>Removes extraneous whitespace from the end of a string.</p>\n"
867
+ "description": "<p>Removes extraneous whitespace from the end of a string.</p>\n",
868
+ "requiresBlock": false
781
869
  },
782
870
  "truncate": {
783
871
  "args": [
@@ -787,7 +875,8 @@
787
875
  ],
788
876
  "numArgs": 3,
789
877
  "example": "{{truncate 'foo bar baz' 7 }} -> foo bar",
790
- "description": "<p>Truncate a string to the specified <code>length</code>. Also see <a href=\"#ellipsis\">ellipsis</a>.</p>\n"
878
+ "description": "<p>Truncate a string to the specified <code>length</code>. Also see <a href=\"#ellipsis\">ellipsis</a>.</p>\n",
879
+ "requiresBlock": false
791
880
  },
792
881
  "truncateWords": {
793
882
  "args": [
@@ -797,7 +886,8 @@
797
886
  ],
798
887
  "numArgs": 3,
799
888
  "example": "{{truncateWords 'foo bar baz' 1 }} -> foo…",
800
- "description": "<p>Truncate a string to have the specified number of words. Also see <a href=\"#truncate\">truncate</a>.</p>\n"
889
+ "description": "<p>Truncate a string to have the specified number of words. Also see <a href=\"#truncate\">truncate</a>.</p>\n",
890
+ "requiresBlock": false
801
891
  },
802
892
  "upcase": {
803
893
  "args": [
@@ -805,7 +895,8 @@
805
895
  ],
806
896
  "numArgs": 1,
807
897
  "example": "{{upcase 'aBcDef'}} -> ABCDEF",
808
- "description": "<p>Uppercase all of the characters in the given string. Alias for <a href=\"#uppercase\">uppercase</a>.</p>\n"
898
+ "description": "<p>Uppercase all of the characters in the given string. Alias for <a href=\"#uppercase\">uppercase</a>.</p>\n",
899
+ "requiresBlock": false
809
900
  },
810
901
  "uppercase": {
811
902
  "args": [
@@ -814,7 +905,8 @@
814
905
  ],
815
906
  "numArgs": 2,
816
907
  "example": "{{uppercase 'aBcDef'}} -> ABCDEF",
817
- "description": "<p>Uppercase all of the characters in the given string. If used as a block helper it will uppercase the entire block. This helper does not support inverse blocks.</p>\n"
908
+ "description": "<p>Uppercase all of the characters in the given string. If used as a block helper it will uppercase the entire block. This helper does not support inverse blocks.</p>\n",
909
+ "requiresBlock": false
818
910
  }
819
911
  },
820
912
  "comparison": {
@@ -825,8 +917,9 @@
825
917
  "options"
826
918
  ],
827
919
  "numArgs": 3,
828
- "example": "{{#and great magnificent}}both{{else}}no{{/and}}",
829
- "description": "<p>Helper that renders the block if <strong>both</strong> of the given values are truthy. If an inverse block is specified it will be rendered when falsy. Works as a block helper, inline helper or subexpression.</p>\n"
920
+ "example": "{{#and great magnificent}}both{{else}}no{{/and}} -> no",
921
+ "description": "<p>Helper that renders the block if <strong>both</strong> of the given values are truthy. If an inverse block is specified it will be rendered when falsy. Works as a block helper, inline helper or subexpression.</p>\n",
922
+ "requiresBlock": true
830
923
  },
831
924
  "compare": {
832
925
  "args": [
@@ -837,7 +930,8 @@
837
930
  ],
838
931
  "numArgs": 4,
839
932
  "example": "{{compare 10 '<' 5 }} -> false",
840
- "description": "<p>Render a block when a comparison of the first and third arguments returns true. The second argument is the [arithemetic operator][operators] to use. You may also optionally specify an inverse block to render when falsy.</p>\n"
933
+ "description": "<p>Render a block when a comparison of the first and third arguments returns true. The second argument is the [arithemetic operator][operators] to use. You may also optionally specify an inverse block to render when falsy.</p>\n",
934
+ "requiresBlock": false
841
935
  },
842
936
  "contains": {
843
937
  "args": [
@@ -847,8 +941,9 @@
847
941
  "options"
848
942
  ],
849
943
  "numArgs": 4,
850
- "example": "{{#contains ['a', 'b', 'c'] 'd'}} This will not be rendered. {{else}} This will be rendered. {{/contains}}",
851
- "description": "<p>Block helper that renders the block if <code>collection</code> has the given <code>value</code>, using strict equality (<code>===</code>) for comparison, otherwise the inverse block is rendered (if specified). If a <code>startIndex</code> is specified and is negative, it is used as the offset from the end of the collection.</p>\n"
944
+ "example": "{{#contains ['a', 'b', 'c'] 'd'}} This will not be rendered. {{else}} This will be rendered. {{/contains}} -> ' This will be rendered. '",
945
+ "description": "<p>Block helper that renders the block if <code>collection</code> has the given <code>value</code>, using strict equality (<code>===</code>) for comparison, otherwise the inverse block is rendered (if specified). If a <code>startIndex</code> is specified and is negative, it is used as the offset from the end of the collection.</p>\n",
946
+ "requiresBlock": true
852
947
  },
853
948
  "default": {
854
949
  "args": [
@@ -857,7 +952,8 @@
857
952
  ],
858
953
  "numArgs": 2,
859
954
  "example": "{{default null null 'default'}} -> default",
860
- "description": "<p>Returns the first value that is not undefined, otherwise the &#39;default&#39; value is returned.</p>\n"
955
+ "description": "<p>Returns the first value that is not undefined, otherwise the &#39;default&#39; value is returned.</p>\n",
956
+ "requiresBlock": false
861
957
  },
862
958
  "eq": {
863
959
  "args": [
@@ -867,7 +963,8 @@
867
963
  ],
868
964
  "numArgs": 3,
869
965
  "example": "{{#eq 3 3}}equal{{else}}not equal{{/eq}} -> equal",
870
- "description": "<p>Block helper that renders a block if <code>a</code> is <strong>equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n"
966
+ "description": "<p>Block helper that renders a block if <code>a</code> is <strong>equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n",
967
+ "requiresBlock": true
871
968
  },
872
969
  "gt": {
873
970
  "args": [
@@ -877,7 +974,8 @@
877
974
  ],
878
975
  "numArgs": 3,
879
976
  "example": "{{#gt 4 3}} greater than{{else}} not greater than{{/gt}} -> ' greater than'",
880
- "description": "<p>Block helper that renders a block if <code>a</code> is <strong>greater than</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n"
977
+ "description": "<p>Block helper that renders a block if <code>a</code> is <strong>greater than</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n",
978
+ "requiresBlock": true
881
979
  },
882
980
  "gte": {
883
981
  "args": [
@@ -887,7 +985,8 @@
887
985
  ],
888
986
  "numArgs": 3,
889
987
  "example": "{{#gte 4 3}} greater than or equal{{else}} not greater than{{/gte}} -> ' greater than or equal'",
890
- "description": "<p>Block helper that renders a block if <code>a</code> is <strong>greater than or equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n"
988
+ "description": "<p>Block helper that renders a block if <code>a</code> is <strong>greater than or equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n",
989
+ "requiresBlock": true
891
990
  },
892
991
  "has": {
893
992
  "args": [
@@ -897,7 +996,8 @@
897
996
  ],
898
997
  "numArgs": 3,
899
998
  "example": "{{#has 'foobar' 'foo'}}has it{{else}}doesn't{{/has}} -> has it",
900
- "description": "<p>Block helper that renders a block if <code>value</code> has <code>pattern</code>. If an inverse block is specified it will be rendered when falsy.</p>\n"
999
+ "description": "<p>Block helper that renders a block if <code>value</code> has <code>pattern</code>. If an inverse block is specified it will be rendered when falsy.</p>\n",
1000
+ "requiresBlock": true
901
1001
  },
902
1002
  "isFalsey": {
903
1003
  "args": [
@@ -906,7 +1006,8 @@
906
1006
  ],
907
1007
  "numArgs": 2,
908
1008
  "example": "{{isFalsey '' }} -> true",
909
- "description": "<p>Returns true if the given <code>value</code> is falsey. Uses the [falsey][] library for comparisons. Please see that library for more information or to report bugs with this helper.</p>\n"
1009
+ "description": "<p>Returns true if the given <code>value</code> is falsey. Uses the [falsey][] library for comparisons. Please see that library for more information or to report bugs with this helper.</p>\n",
1010
+ "requiresBlock": false
910
1011
  },
911
1012
  "isTruthy": {
912
1013
  "args": [
@@ -915,7 +1016,8 @@
915
1016
  ],
916
1017
  "numArgs": 2,
917
1018
  "example": "{{isTruthy '12' }} -> true",
918
- "description": "<p>Returns true if the given <code>value</code> is truthy. Uses the [falsey][] library for comparisons. Please see that library for more information or to report bugs with this helper.</p>\n"
1019
+ "description": "<p>Returns true if the given <code>value</code> is truthy. Uses the [falsey][] library for comparisons. Please see that library for more information or to report bugs with this helper.</p>\n",
1020
+ "requiresBlock": false
919
1021
  },
920
1022
  "ifEven": {
921
1023
  "args": [
@@ -924,7 +1026,8 @@
924
1026
  ],
925
1027
  "numArgs": 2,
926
1028
  "example": "{{#ifEven 2}} even {{else}} odd {{/ifEven}} -> ' even '",
927
- "description": "<p>Return true if the given value is an even number.</p>\n"
1029
+ "description": "<p>Return true if the given value is an even number.</p>\n",
1030
+ "requiresBlock": true
928
1031
  },
929
1032
  "ifNth": {
930
1033
  "args": [
@@ -934,7 +1037,8 @@
934
1037
  ],
935
1038
  "numArgs": 3,
936
1039
  "example": "{{#ifNth 2 10}}remainder{{else}}no remainder{{/ifNth}} -> remainder",
937
- "description": "<p>Conditionally renders a block if the remainder is zero when <code>b</code> operand is divided by <code>a</code>. If an inverse block is specified it will be rendered when the remainder is <strong>not zero</strong>.</p>\n"
1040
+ "description": "<p>Conditionally renders a block if the remainder is zero when <code>b</code> operand is divided by <code>a</code>. If an inverse block is specified it will be rendered when the remainder is <strong>not zero</strong>.</p>\n",
1041
+ "requiresBlock": true
938
1042
  },
939
1043
  "ifOdd": {
940
1044
  "args": [
@@ -943,7 +1047,8 @@
943
1047
  ],
944
1048
  "numArgs": 2,
945
1049
  "example": "{{#ifOdd 3}}odd{{else}}even{{/ifOdd}} -> odd",
946
- "description": "<p>Block helper that renders a block if <code>value</code> is <strong>an odd number</strong>. If an inverse block is specified it will be rendered when falsy.</p>\n"
1050
+ "description": "<p>Block helper that renders a block if <code>value</code> is <strong>an odd number</strong>. If an inverse block is specified it will be rendered when falsy.</p>\n",
1051
+ "requiresBlock": true
947
1052
  },
948
1053
  "is": {
949
1054
  "args": [
@@ -953,7 +1058,8 @@
953
1058
  ],
954
1059
  "numArgs": 3,
955
1060
  "example": "{{#is 3 3}} is {{else}} is not {{/is}} -> ' is '",
956
- "description": "<p>Block helper that renders a block if <code>a</code> is <strong>equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. Similar to <a href=\"#eq\">eq</a> but does not do strict equality.</p>\n"
1061
+ "description": "<p>Block helper that renders a block if <code>a</code> is <strong>equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. Similar to <a href=\"#eq\">eq</a> but does not do strict equality.</p>\n",
1062
+ "requiresBlock": true
957
1063
  },
958
1064
  "isnt": {
959
1065
  "args": [
@@ -963,7 +1069,8 @@
963
1069
  ],
964
1070
  "numArgs": 3,
965
1071
  "example": "{{#isnt 3 3}} isnt {{else}} is {{/isnt}} -> ' is '",
966
- "description": "<p>Block helper that renders a block if <code>a</code> is <strong>not equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. Similar to <a href=\"#unlesseq\">unlessEq</a> but does not use strict equality for comparisons.</p>\n"
1072
+ "description": "<p>Block helper that renders a block if <code>a</code> is <strong>not equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. Similar to <a href=\"#unlesseq\">unlessEq</a> but does not use strict equality for comparisons.</p>\n",
1073
+ "requiresBlock": true
967
1074
  },
968
1075
  "lt": {
969
1076
  "args": [
@@ -972,7 +1079,8 @@
972
1079
  ],
973
1080
  "numArgs": 2,
974
1081
  "example": "{{#lt 2 3}} less than {{else}} more than or equal {{/lt}} -> ' less than '",
975
- "description": "<p>Block helper that renders a block if <code>a</code> is <strong>less than</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n"
1082
+ "description": "<p>Block helper that renders a block if <code>a</code> is <strong>less than</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n",
1083
+ "requiresBlock": true
976
1084
  },
977
1085
  "lte": {
978
1086
  "args": [
@@ -982,7 +1090,8 @@
982
1090
  ],
983
1091
  "numArgs": 3,
984
1092
  "example": "{{#lte 2 3}} less than or equal {{else}} more than {{/lte}} -> ' less than or equal '",
985
- "description": "<p>Block helper that renders a block if <code>a</code> is <strong>less than or equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n"
1093
+ "description": "<p>Block helper that renders a block if <code>a</code> is <strong>less than or equal to</strong> <code>b</code>. If an inverse block is specified it will be rendered when falsy. You may optionally use the <code>compare=&#39;&#39;</code> hash argument for the second value.</p>\n",
1094
+ "requiresBlock": true
986
1095
  },
987
1096
  "neither": {
988
1097
  "args": [
@@ -992,7 +1101,8 @@
992
1101
  ],
993
1102
  "numArgs": 3,
994
1103
  "example": "{{#neither null null}}both falsey{{else}}both not falsey{{/neither}} -> both falsey",
995
- "description": "<p>Block helper that renders a block if <strong>neither of</strong> the given values are truthy. If an inverse block is specified it will be rendered when falsy.</p>\n"
1104
+ "description": "<p>Block helper that renders a block if <strong>neither of</strong> the given values are truthy. If an inverse block is specified it will be rendered when falsy.</p>\n",
1105
+ "requiresBlock": true
996
1106
  },
997
1107
  "not": {
998
1108
  "args": [
@@ -1001,7 +1111,8 @@
1001
1111
  ],
1002
1112
  "numArgs": 2,
1003
1113
  "example": "{{#not undefined }}falsey{{else}}not falsey{{/not}} -> falsey",
1004
- "description": "<p>Returns true if <code>val</code> is falsey. Works as a block or inline helper.</p>\n"
1114
+ "description": "<p>Returns true if <code>val</code> is falsey. Works as a block or inline helper.</p>\n",
1115
+ "requiresBlock": true
1005
1116
  },
1006
1117
  "or": {
1007
1118
  "args": [
@@ -1010,7 +1121,8 @@
1010
1121
  ],
1011
1122
  "numArgs": 2,
1012
1123
  "example": "{{#or 1 2 undefined }} at least one truthy {{else}} all falsey {{/or}} -> ' at least one truthy '",
1013
- "description": "<p>Block helper that renders a block if <strong>any of</strong> the given values is truthy. If an inverse block is specified it will be rendered when falsy.</p>\n"
1124
+ "description": "<p>Block helper that renders a block if <strong>any of</strong> the given values is truthy. If an inverse block is specified it will be rendered when falsy.</p>\n",
1125
+ "requiresBlock": true
1014
1126
  },
1015
1127
  "unlessEq": {
1016
1128
  "args": [
@@ -1020,7 +1132,8 @@
1020
1132
  ],
1021
1133
  "numArgs": 3,
1022
1134
  "example": "{{#unlessEq 2 1 }} not equal {{else}} equal {{/unlessEq}} -> ' not equal '",
1023
- "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is equal to <code>b</code></strong>.</p>\n"
1135
+ "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is equal to <code>b</code></strong>.</p>\n",
1136
+ "requiresBlock": true
1024
1137
  },
1025
1138
  "unlessGt": {
1026
1139
  "args": [
@@ -1030,7 +1143,8 @@
1030
1143
  ],
1031
1144
  "numArgs": 3,
1032
1145
  "example": "{{#unlessGt 20 1 }} not greater than {{else}} greater than {{/unlessGt}} -> ' greater than '",
1033
- "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is greater than <code>b</code></strong>.</p>\n"
1146
+ "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is greater than <code>b</code></strong>.</p>\n",
1147
+ "requiresBlock": true
1034
1148
  },
1035
1149
  "unlessLt": {
1036
1150
  "args": [
@@ -1040,7 +1154,8 @@
1040
1154
  ],
1041
1155
  "numArgs": 3,
1042
1156
  "example": "{{#unlessLt 20 1 }}greater than or equal{{else}}less than{{/unlessLt}} -> greater than or equal",
1043
- "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is less than <code>b</code></strong>.</p>\n"
1157
+ "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is less than <code>b</code></strong>.</p>\n",
1158
+ "requiresBlock": true
1044
1159
  },
1045
1160
  "unlessGteq": {
1046
1161
  "args": [
@@ -1050,7 +1165,8 @@
1050
1165
  ],
1051
1166
  "numArgs": 3,
1052
1167
  "example": "{{#unlessGteq 20 1 }} less than {{else}}greater than or equal to{{/unlessGteq}} -> greater than or equal to",
1053
- "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is greater than or equal to <code>b</code></strong>.</p>\n"
1168
+ "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is greater than or equal to <code>b</code></strong>.</p>\n",
1169
+ "requiresBlock": true
1054
1170
  },
1055
1171
  "unlessLteq": {
1056
1172
  "args": [
@@ -1060,7 +1176,8 @@
1060
1176
  ],
1061
1177
  "numArgs": 3,
1062
1178
  "example": "{{#unlessLteq 20 1 }} greater than {{else}} less than or equal to {{/unlessLteq}} -> ' greater than '",
1063
- "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is less than or equal to <code>b</code></strong>.</p>\n"
1179
+ "description": "<p>Block helper that always renders the inverse block <strong>unless <code>a</code> is less than or equal to <code>b</code></strong>.</p>\n",
1180
+ "requiresBlock": true
1064
1181
  }
1065
1182
  },
1066
1183
  "object": {
@@ -1069,7 +1186,8 @@
1069
1186
  "objects"
1070
1187
  ],
1071
1188
  "numArgs": 1,
1072
- "description": "<p>Extend the context with the properties of other objects. A shallow merge is performed to avoid mutating the context.</p>\n"
1189
+ "description": "<p>Extend the context with the properties of other objects. A shallow merge is performed to avoid mutating the context.</p>\n",
1190
+ "requiresBlock": false
1073
1191
  },
1074
1192
  "forIn": {
1075
1193
  "args": [
@@ -1077,7 +1195,8 @@
1077
1195
  "options"
1078
1196
  ],
1079
1197
  "numArgs": 2,
1080
- "description": "<p>Block helper that iterates over the properties of an object, exposing each key and value on the context.</p>\n"
1198
+ "description": "<p>Block helper that iterates over the properties of an object, exposing each key and value on the context.</p>\n",
1199
+ "requiresBlock": true
1081
1200
  },
1082
1201
  "forOwn": {
1083
1202
  "args": [
@@ -1085,14 +1204,16 @@
1085
1204
  "options"
1086
1205
  ],
1087
1206
  "numArgs": 2,
1088
- "description": "<p>Block helper that iterates over the <strong>own</strong> properties of an object, exposing each key and value on the context.</p>\n"
1207
+ "description": "<p>Block helper that iterates over the <strong>own</strong> properties of an object, exposing each key and value on the context.</p>\n",
1208
+ "requiresBlock": true
1089
1209
  },
1090
1210
  "toPath": {
1091
1211
  "args": [
1092
1212
  "prop"
1093
1213
  ],
1094
1214
  "numArgs": 1,
1095
- "description": "<p>Take arguments and, if they are string or number, convert them to a dot-delineated object property path.</p>\n"
1215
+ "description": "<p>Take arguments and, if they are string or number, convert them to a dot-delineated object property path.</p>\n",
1216
+ "requiresBlock": false
1096
1217
  },
1097
1218
  "get": {
1098
1219
  "args": [
@@ -1101,7 +1222,8 @@
1101
1222
  "options"
1102
1223
  ],
1103
1224
  "numArgs": 3,
1104
- "description": "<p>Use property paths (<code>a.b.c</code>) to get a value or nested value from the context. Works as a regular helper or block helper.</p>\n"
1225
+ "description": "<p>Use property paths (<code>a.b.c</code>) to get a value or nested value from the context. Works as a regular helper or block helper.</p>\n",
1226
+ "requiresBlock": true
1105
1227
  },
1106
1228
  "getObject": {
1107
1229
  "args": [
@@ -1109,7 +1231,8 @@
1109
1231
  "context"
1110
1232
  ],
1111
1233
  "numArgs": 2,
1112
- "description": "<p>Use property paths (<code>a.b.c</code>) to get an object from the context. Differs from the <code>get</code> helper in that this helper will return the actual object, including the given property key. Also, this helper does not work as a block helper.</p>\n"
1234
+ "description": "<p>Use property paths (<code>a.b.c</code>) to get an object from the context. Differs from the <code>get</code> helper in that this helper will return the actual object, including the given property key. Also, this helper does not work as a block helper.</p>\n",
1235
+ "requiresBlock": false
1113
1236
  },
1114
1237
  "hasOwn": {
1115
1238
  "args": [
@@ -1117,28 +1240,32 @@
1117
1240
  "context"
1118
1241
  ],
1119
1242
  "numArgs": 2,
1120
- "description": "<p>Return true if <code>key</code> is an own, enumerable property of the given <code>context</code> object.</p>\n"
1243
+ "description": "<p>Return true if <code>key</code> is an own, enumerable property of the given <code>context</code> object.</p>\n",
1244
+ "requiresBlock": false
1121
1245
  },
1122
1246
  "isObject": {
1123
1247
  "args": [
1124
1248
  "value"
1125
1249
  ],
1126
1250
  "numArgs": 1,
1127
- "description": "<p>Return true if <code>value</code> is an object.</p>\n"
1251
+ "description": "<p>Return true if <code>value</code> is an object.</p>\n",
1252
+ "requiresBlock": false
1128
1253
  },
1129
1254
  "JSONparse": {
1130
1255
  "args": [
1131
1256
  "string"
1132
1257
  ],
1133
1258
  "numArgs": 1,
1134
- "description": "<p>Parses the given string using <code>JSON.parse</code>.</p>\n"
1259
+ "description": "<p>Parses the given string using <code>JSON.parse</code>.</p>\n",
1260
+ "requiresBlock": true
1135
1261
  },
1136
1262
  "JSONstringify": {
1137
1263
  "args": [
1138
1264
  "obj"
1139
1265
  ],
1140
1266
  "numArgs": 1,
1141
- "description": "<p>Stringify an object using <code>JSON.stringify</code>.</p>\n"
1267
+ "description": "<p>Stringify an object using <code>JSON.stringify</code>.</p>\n",
1268
+ "requiresBlock": false
1142
1269
  },
1143
1270
  "merge": {
1144
1271
  "args": [
@@ -1146,14 +1273,16 @@
1146
1273
  "objects"
1147
1274
  ],
1148
1275
  "numArgs": 2,
1149
- "description": "<p>Deeply merge the properties of the given <code>objects</code> with the context object.</p>\n"
1276
+ "description": "<p>Deeply merge the properties of the given <code>objects</code> with the context object.</p>\n",
1277
+ "requiresBlock": false
1150
1278
  },
1151
1279
  "parseJSON": {
1152
1280
  "args": [
1153
1281
  "string"
1154
1282
  ],
1155
1283
  "numArgs": 1,
1156
- "description": "<p>Parses the given string using <code>JSON.parse</code>.</p>\n"
1284
+ "description": "<p>Parses the given string using <code>JSON.parse</code>.</p>\n",
1285
+ "requiresBlock": true
1157
1286
  },
1158
1287
  "pick": {
1159
1288
  "args": [
@@ -1162,14 +1291,16 @@
1162
1291
  "options"
1163
1292
  ],
1164
1293
  "numArgs": 3,
1165
- "description": "<p>Pick properties from the context object.</p>\n"
1294
+ "description": "<p>Pick properties from the context object.</p>\n",
1295
+ "requiresBlock": true
1166
1296
  },
1167
1297
  "stringify": {
1168
1298
  "args": [
1169
1299
  "obj"
1170
1300
  ],
1171
1301
  "numArgs": 1,
1172
- "description": "<p>Stringify an object using <code>JSON.stringify</code>.</p>\n"
1302
+ "description": "<p>Stringify an object using <code>JSON.stringify</code>.</p>\n",
1303
+ "requiresBlock": false
1173
1304
  }
1174
1305
  },
1175
1306
  "uuid": {
@@ -1177,7 +1308,8 @@
1177
1308
  "args": [],
1178
1309
  "numArgs": 0,
1179
1310
  "example": "{{ uuid }} -> f34ebc66-93bd-4f7c-b79b-92b5569138bc",
1180
- "description": "<p>Generates a UUID, using the V4 method (identical to the browser crypto.randomUUID function).</p>\n"
1311
+ "description": "<p>Generates a UUID, using the V4 method (identical to the browser crypto.randomUUID function).</p>\n",
1312
+ "requiresBlock": false
1181
1313
  }
1182
1314
  },
1183
1315
  "date": {