halo-fe 1.0.23 → 1.0.24

Sign up to get free protection for your applications and to get access to all the features.
Files changed (143) hide show
  1. package/dist/assets/{liquidjs-C-LVcoaY.js → liquidjs-B8dqQyVv.js} +639 -632
  2. package/dist/main.js +2084 -2005
  3. package/esm/coms/Empty.vue.d.ts +15 -13
  4. package/esm/coms/Fill.vue.d.ts +14 -5
  5. package/esm/coms/Scroller.vue.d.ts +19 -16
  6. package/esm/coms/Timer.vue.d.ts +12 -5
  7. package/esm/coms/conditions/Condition.vue.d.ts +1 -10
  8. package/esm/coms/conditions/Index.vue.d.ts +1 -10
  9. package/esm/coms/controls/Code.vue.d.ts +19 -17
  10. package/esm/coms/controls/Compare.vue.d.ts +11 -19
  11. package/esm/coms/controls/Option.vue.d.ts +1 -1
  12. package/esm/coms/controls/RichText.vue.d.ts +6 -15
  13. package/esm/coms/controls/Select.vue.d.ts +1 -1
  14. package/esm/coms/layouts/Col.vue.d.ts +11 -4
  15. package/esm/coms/layouts/Container.vue.d.ts +15 -11
  16. package/esm/coms/layouts/Row.vue.d.ts +11 -14
  17. package/esm/coms/progresses/Progress.vue.d.ts +4 -16
  18. package/esm/coms/progresses/SocketProgress.vue.d.ts +11 -13
  19. package/esm/coms/tables/Table.vue.d.ts +1 -1
  20. package/esm/coms/tabs/Tab.vue.d.ts +1 -10
  21. package/esm/coms/tabs/TabPane.vue.d.ts +1 -1
  22. package/esm/drivers/builders/types/ProviderTable.d.ts +6 -0
  23. package/esm/drivers/builders/types/index.d.ts +2 -0
  24. package/esm/drivers/excels/ExcelFactory.d.ts +1 -1
  25. package/esm/drivers/helpers/implements/ArrayHelper.d.ts +1 -2
  26. package/esm/drivers/helpers/implements/DomHelper.d.ts +1 -1
  27. package/esm/drivers/index.d.ts +1 -0
  28. package/esm/drivers/utilities/@types/DragEvent.d.ts +11 -0
  29. package/esm/drivers/utilities/@types/DragOptions.d.ts +28 -0
  30. package/esm/drivers/utilities/@types/Position.d.ts +15 -0
  31. package/esm/drivers/utilities/@types/Rect.d.ts +10 -0
  32. package/esm/drivers/utilities/@types/index.d.ts +5 -0
  33. package/esm/drivers/utilities/IUtility.d.ts +4 -0
  34. package/esm/drivers/utilities/Utility.d.ts +5 -0
  35. package/esm/drivers/utilities/UtilityFactory.d.ts +43 -0
  36. package/esm/drivers/utilities/implement/AffixUtility.d.ts +11 -0
  37. package/esm/drivers/utilities/implement/DeltaUtility.d.ts +11 -0
  38. package/esm/drivers/utilities/implement/EventUtility.d.ts +73 -0
  39. package/esm/drivers/utilities/implement/KeyboardUtility.d.ts +74 -0
  40. package/esm/drivers/utilities/implement/MouseUtility.d.ts +25 -0
  41. package/esm/drivers/utilities/implement/RandomUtility.d.ts +41 -0
  42. package/esm/drivers/utilities/implement/SaveUtility.d.ts +16 -0
  43. package/esm/drivers/utilities/index.d.ts +9 -0
  44. package/esm/factorying/Factories.d.ts +5 -1
  45. package/esm/factorying/{Helpers.d.ts → Helps.d.ts} +2 -2
  46. package/esm/factorying/Utils.d.ts +14 -0
  47. package/esm/factorying/index.d.ts +2 -2
  48. package/esm/helpers/DictionaryHelper.d.ts +6 -0
  49. package/esm/main.d.ts +1 -1
  50. package/esm/svcs/@types/Dictionary.d.ts +4 -0
  51. package/esm/svcs/implement/DriverSvc.d.ts +4 -0
  52. package/esm/svcs/implement/I18nSvc.d.ts +1 -1
  53. package/esm/svcs/index.d.ts +1 -0
  54. package/esm/utilities/MathUtility.d.ts +35 -0
  55. package/package.json +9 -9
  56. package/esm/coms/Code.vue.d.ts +0 -41
  57. package/esm/coms/Col.vue.d.ts +0 -11
  58. package/esm/coms/Compare.vue.d.ts +0 -40
  59. package/esm/coms/Container.vue.d.ts +0 -23
  60. package/esm/coms/RichText.vue.d.ts +0 -24
  61. package/esm/coms/Row.vue.d.ts +0 -21
  62. package/esm/coms/types/CodeEmit.d.ts +0 -23
  63. package/esm/coms/types/CodeProps.d.ts +0 -18
  64. package/esm/coms/types/RichTextOptions.d.ts +0 -14
  65. package/esm/coms/types/RichTextProps.d.ts +0 -12
  66. package/esm/coms/types/RowProps.d.ts +0 -14
  67. package/esm/drivers/IDriver.d.ts +0 -10
  68. package/esm/drivers/cdns/implements/BootCdn.d.ts +0 -12
  69. package/esm/drivers/cdns/implements/JsdelivrCdn.d.ts +0 -15
  70. package/esm/drivers/cdns/implements/StaticFileCdn.d.ts +0 -21
  71. package/esm/drivers/cdns/implements/UnpkgCdn.d.ts +0 -12
  72. package/esm/drivers/factories/DriverFactory.d.ts +0 -64
  73. package/esm/drivers/factories/Factory.d.ts +0 -18
  74. package/esm/drivers/factories/IFactory.d.ts +0 -18
  75. package/esm/drivers/factories/index.d.ts +0 -42
  76. package/esm/drivers/providers/implements/StorageHelper.d.ts +0 -34
  77. package/esm/helpers/ScriptHelper.d.ts +0 -19
  78. package/esm/helpers/array-helper.d.ts +0 -97
  79. package/esm/helpers/component-helper.d.ts +0 -18
  80. package/esm/helpers/cookie-helper.d.ts +0 -6
  81. package/esm/helpers/dictionary-helper.d.ts +0 -18
  82. package/esm/helpers/dom-helper.d.ts +0 -86
  83. package/esm/helpers/event-helper.d.ts +0 -30
  84. package/esm/helpers/file-helper.d.ts +0 -22
  85. package/esm/helpers/html-helper.d.ts +0 -10
  86. package/esm/helpers/i18n-helper.d.ts +0 -14
  87. package/esm/helpers/image-helper.d.ts +0 -10
  88. package/esm/helpers/json-helper.d.ts +0 -39
  89. package/esm/helpers/math-helper.d.ts +0 -46
  90. package/esm/helpers/micro-helper.d.ts +0 -10
  91. package/esm/helpers/mount-helper.d.ts +0 -14
  92. package/esm/helpers/object-helper.d.ts +0 -38
  93. package/esm/helpers/script-helper.d.ts +0 -31
  94. package/esm/helpers/scroll-helper.d.ts +0 -14
  95. package/esm/helpers/sign-helper.d.ts +0 -14
  96. package/esm/helpers/storage-helper.d.ts +0 -34
  97. package/esm/helpers/string-helper.d.ts +0 -94
  98. package/esm/helpers/task-helper.d.ts +0 -26
  99. package/esm/helpers/time-helper.d.ts +0 -66
  100. package/esm/helpers/tree-helper.d.ts +0 -54
  101. package/esm/helpers/type-helper.d.ts +0 -26
  102. package/esm/helpers/url-helper.d.ts +0 -96
  103. package/esm/plugins/HtmlTransform.d.ts +0 -6
  104. package/esm/plugins/types/IMessager.d.ts +0 -34
  105. package/esm/plugins/types/index.d.ts +0 -7
  106. package/esm/services/ConfigService.d.ts +0 -66
  107. package/esm/services/DriverService.d.ts +0 -36
  108. package/esm/services/EnvService.d.ts +0 -14
  109. package/esm/services/LogService.d.ts +0 -19
  110. package/esm/services/SettingService.d.ts +0 -42
  111. package/esm/services/SocketService.d.ts +0 -23
  112. package/esm/services/UserService.d.ts +0 -47
  113. package/esm/services/index.d.ts +0 -15
  114. package/esm/services/types/IMessage.d.ts +0 -14
  115. package/esm/services/types/IMessager.d.ts +0 -34
  116. package/esm/services/types/index.d.ts +0 -2
  117. package/esm/servs/ConfigServ.d.ts +0 -66
  118. package/esm/servs/DriverServ.d.ts +0 -36
  119. package/esm/servs/EnvServ.d.ts +0 -14
  120. package/esm/servs/IServ.d.ts +0 -6
  121. package/esm/servs/LogServ.d.ts +0 -19
  122. package/esm/servs/Serv.d.ts +0 -4
  123. package/esm/servs/ServFactory.d.ts +0 -11
  124. package/esm/servs/SettingServ.d.ts +0 -42
  125. package/esm/servs/SocketServ.d.ts +0 -38
  126. package/esm/servs/UserServ.d.ts +0 -47
  127. package/esm/servs/implement/ConfigServ.d.ts +0 -66
  128. package/esm/servs/implement/DriverServ.d.ts +0 -36
  129. package/esm/servs/implement/EnvServ.d.ts +0 -14
  130. package/esm/servs/implement/LogServ.d.ts +0 -19
  131. package/esm/servs/implement/SettingServ.d.ts +0 -42
  132. package/esm/servs/implement/SocketServ.d.ts +0 -38
  133. package/esm/servs/implement/UserServ.d.ts +0 -47
  134. package/esm/servs/index.d.ts +0 -15
  135. package/esm/stores/config.d.ts +0 -63
  136. package/esm/stores/driver.d.ts +0 -37
  137. package/esm/stores/env.d.ts +0 -12
  138. package/esm/stores/index.d.ts +0 -8
  139. package/esm/stores/log.d.ts +0 -20
  140. package/esm/stores/setting.d.ts +0 -43
  141. package/esm/stores/socket.d.ts +0 -27
  142. package/esm/stores/user.d.ts +0 -40
  143. package/esm/types/CreateOptions.d.ts +0 -18
@@ -1,4 +1,4 @@
1
- class v {
1
+ class L {
2
2
  constructor(e, s, r, i, n) {
3
3
  this.kind = e, this.input = s, this.begin = r, this.end = i, this.file = n;
4
4
  }
@@ -20,131 +20,134 @@ class V {
20
20
  liquidMethodMissing(e) {
21
21
  }
22
22
  }
23
- const ct = Object.prototype.toString, ke = String.prototype.toLowerCase, je = Object.hasOwnProperty;
24
- function O(t) {
23
+ const ft = Object.prototype.toString, be = String.prototype.toLowerCase, ce = Object.hasOwnProperty;
24
+ function R(t) {
25
25
  return typeof t == "string";
26
26
  }
27
27
  function w(t) {
28
28
  return typeof t == "function";
29
29
  }
30
- function dt(t) {
30
+ function pt(t) {
31
31
  return t && w(t.then);
32
32
  }
33
33
  function X(t) {
34
34
  return t && w(t.next) && w(t.throw) && w(t.return);
35
35
  }
36
- function ft(t) {
36
+ function gt(t) {
37
37
  return t.replace(/[-/\\^$*+?.()|[\]{}]/g, "\\$&");
38
38
  }
39
- function u(t) {
40
- return t = d(t), O(t) ? t : R(t) ? "" : k(t) ? t.map((e) => u(e)).join("") : String(t);
39
+ function c(t) {
40
+ return t = d(t), R(t) ? t : _(t) ? "" : k(t) ? t.map((e) => c(e)).join("") : String(t);
41
41
  }
42
42
  function ue(t) {
43
- return t = d(t), k(t) ? t : O(t) && t.length > 0 ? [t] : gt(t) ? Array.from(t) : te(t) ? Object.keys(t).map((e) => [e, t[e]]) : [];
43
+ return t = d(t), k(t) ? t : R(t) && t.length > 0 ? [t] : yt(t) ? Array.from(t) : te(t) ? Object.keys(t).map((e) => [e, t[e]]) : [];
44
44
  }
45
45
  function T(t) {
46
- return t = d(t), R(t) ? [] : k(t) ? t : [t];
46
+ return t = d(t), _(t) ? [] : k(t) ? t : [t];
47
47
  }
48
48
  function d(t) {
49
49
  return t instanceof V && w(t.valueOf) ? t.valueOf() : t;
50
50
  }
51
- function ce(t) {
51
+ function xe(t) {
52
+ return t = Number(t), isNaN(t) ? 0 : t;
53
+ }
54
+ function de(t) {
52
55
  return typeof t == "number";
53
56
  }
54
- function Ue(t) {
55
- return t && w(t.toLiquid) ? Ue(t.toLiquid()) : t;
57
+ function He(t) {
58
+ return t && w(t.toLiquid) ? He(t.toLiquid()) : t;
56
59
  }
57
- function R(t) {
60
+ function _(t) {
58
61
  return t == null;
59
62
  }
60
- function pt(t) {
63
+ function mt(t) {
61
64
  return t === void 0;
62
65
  }
63
66
  function k(t) {
64
- return ct.call(t) === "[object Array]";
67
+ return ft.call(t) === "[object Array]";
65
68
  }
66
- function gt(t) {
69
+ function yt(t) {
67
70
  return te(t) && Symbol.iterator in t;
68
71
  }
69
- function be(t, e) {
72
+ function _e(t, e) {
70
73
  t = t || {};
71
74
  for (const s in t)
72
- if (je.call(t, s) && e(t[s], s, t) === !1)
75
+ if (ce.call(t, s) && e(t[s], s, t) === !1)
73
76
  break;
74
77
  return t;
75
78
  }
76
- function He(t) {
79
+ function We(t) {
77
80
  return t[t.length - 1];
78
81
  }
79
82
  function te(t) {
80
83
  const e = typeof t;
81
84
  return t !== null && (e === "object" || e === "function");
82
85
  }
83
- function We(t, e, s = 1) {
86
+ function Ye(t, e, s = 1) {
84
87
  const r = [];
85
88
  for (let i = t; i < e; i += s)
86
89
  r.push(i);
87
90
  return r;
88
91
  }
89
92
  function J(t, e, s = " ") {
90
- return Ye(t, e, s, (r, i) => i + r);
93
+ return Je(t, e, s, (r, i) => i + r);
91
94
  }
92
- function mt(t, e, s = " ") {
93
- return Ye(t, e, s, (r, i) => r + i);
95
+ function wt(t, e, s = " ") {
96
+ return Je(t, e, s, (r, i) => r + i);
94
97
  }
95
- function Ye(t, e, s, r) {
98
+ function Je(t, e, s, r) {
96
99
  t = String(t);
97
100
  let i = e - t.length;
98
101
  for (; i-- > 0; )
99
102
  t = r(t, s);
100
103
  return t;
101
104
  }
102
- function Je(t) {
105
+ function Qe(t) {
103
106
  return t;
104
107
  }
105
- function yt(t) {
108
+ function Tt(t) {
106
109
  return [...t].some((s) => s >= "a" && s <= "z") ? t.toUpperCase() : t.toLowerCase();
107
110
  }
108
- function wt(t, e) {
111
+ function kt(t, e) {
109
112
  return t.length > e ? t.slice(0, e - 3) + "..." : t;
110
113
  }
111
- function xe(t, e) {
112
- return t == null && e == null ? 0 : t == null ? 1 : e == null || (t = ke.call(t), e = ke.call(e), t < e) ? -1 : t > e ? 1 : 0;
114
+ function ve(t, e) {
115
+ return t == null && e == null ? 0 : t == null ? 1 : e == null || (t = be.call(t), e = be.call(e), t < e) ? -1 : t > e ? 1 : 0;
113
116
  }
114
117
  function x(t) {
115
118
  return function(...e) {
116
119
  return t.call(this, ...e.map(d));
117
120
  };
118
121
  }
119
- function de(t) {
122
+ function fe(t) {
120
123
  return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
121
124
  }
122
- const _e = "__liquidClass__";
125
+ const Le = "__liquidClass__";
123
126
  class B extends Error {
124
127
  constructor(e, s) {
125
- super(typeof e == "string" ? e : e.message), this.context = "", typeof e != "string" && Object.defineProperty(this, "originalError", { value: e, enumerable: !1 }), Object.defineProperty(this, "token", { value: s, enumerable: !1 }), Object.defineProperty(this, _e, { value: "LiquidError", enumerable: !1 });
128
+ super(typeof e == "string" ? e : e.message), this.context = "", typeof e != "string" && Object.defineProperty(this, "originalError", { value: e, enumerable: !1 }), Object.defineProperty(this, "token", { value: s, enumerable: !1 }), Object.defineProperty(this, Le, { value: "LiquidError", enumerable: !1 });
126
129
  }
127
130
  update() {
128
- Object.defineProperty(this, "context", { value: Lt(this.token), enumerable: !1 }), this.message = Ft(this.message, this.token), this.stack = this.message + `
131
+ Object.defineProperty(this, "context", { value: St(this.token), enumerable: !1 }), this.message = Ot(this.message, this.token), this.stack = this.message + `
129
132
  ` + this.context + `
130
133
  ` + this.stack, this.originalError && (this.stack += `
131
134
  From ` + this.originalError.stack);
132
135
  }
133
136
  static is(e) {
134
- return (e == null ? void 0 : e[_e]) === "LiquidError";
137
+ return (e == null ? void 0 : e[Le]) === "LiquidError";
135
138
  }
136
139
  }
137
- class Tt extends B {
140
+ class bt extends B {
138
141
  constructor(e, s) {
139
142
  super(e, s), this.name = "TokenizationError", super.update();
140
143
  }
141
144
  }
142
- class kt extends B {
145
+ class xt extends B {
143
146
  constructor(e, s) {
144
147
  super(e, s), this.name = "ParseError", this.message = e.message, super.update();
145
148
  }
146
149
  }
147
- class bt extends B {
150
+ class _t extends B {
148
151
  constructor(e, s) {
149
152
  super(e, s.token), this.name = "RenderError", this.message = e.message, super.update();
150
153
  }
@@ -152,7 +155,7 @@ class bt extends B {
152
155
  return e.name === "RenderError";
153
156
  }
154
157
  }
155
- class Qe extends B {
158
+ class Ze extends B {
156
159
  constructor(e) {
157
160
  super(e[0], e[0].token), this.errors = e, this.name = "LiquidErrors";
158
161
  const s = e.length > 1 ? "s" : "";
@@ -162,57 +165,57 @@ class Qe extends B {
162
165
  return e.name === "LiquidErrors";
163
166
  }
164
167
  }
165
- class xt extends B {
168
+ class vt extends B {
166
169
  constructor(e, s) {
167
170
  super(e, s), this.name = "UndefinedVariableError", this.message = e.message, super.update();
168
171
  }
169
172
  }
170
- class _t extends Error {
173
+ class Lt extends Error {
171
174
  constructor(e) {
172
175
  super(`undefined variable: ${e}`), this.name = "InternalUndefinedVariableError", this.variableName = e;
173
176
  }
174
177
  }
175
- class vt extends Error {
178
+ class Ft extends Error {
176
179
  constructor(e) {
177
180
  super(e), this.name = "AssertionError", this.message = e + "";
178
181
  }
179
182
  }
180
- function Lt(t) {
183
+ function St(t) {
181
184
  const [e, s] = t.getPosition(), r = t.input.split(`
182
185
  `), i = Math.max(e - 2, 1), n = Math.min(e + 3, r.length);
183
- return We(i, n + 1).map((a) => {
186
+ return Ye(i, n + 1).map((a) => {
184
187
  const l = a === e ? ">> " : " ", h = J(String(a), String(n).length);
185
- let c = `${l}${h}| `;
188
+ let u = `${l}${h}| `;
186
189
  const p = a === e ? `
187
- ` + J("^", s + c.length) : "";
188
- return c += r[a - 1], c += p, c;
190
+ ` + J("^", s + u.length) : "";
191
+ return u += r[a - 1], u += p, u;
189
192
  }).join(`
190
193
  `);
191
194
  }
192
- function Ft(t, e) {
195
+ function Ot(t, e) {
193
196
  e.file && (t += `, file:${e.file}`);
194
197
  const [s, r] = e.getPosition();
195
198
  return t += `, line:${s}, col:${r}`, t;
196
199
  }
197
- const f = [0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 4, 4, 4, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 8, 0, 0, 0, 0, 8, 0, 0, 0, 64, 0, 65, 0, 0, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 0, 0, 2, 2, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0], St = 1, H = 4, ve = 8, Ze = 16, Ot = 32, Rt = 64, Et = 128;
200
+ const f = [0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 4, 4, 4, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 8, 0, 0, 0, 0, 8, 0, 0, 0, 64, 0, 65, 0, 0, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 0, 0, 2, 2, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0], Rt = 1, H = 4, Fe = 8, Ge = 16, Et = 32, zt = 64, Nt = 128;
198
201
  function Q(t) {
199
202
  const e = t.charCodeAt(0);
200
- return e >= 128 ? !f[e] : !!(f[e] & St);
203
+ return e >= 128 ? !f[e] : !!(f[e] & Rt);
201
204
  }
202
205
  f[160] = f[5760] = f[6158] = f[8192] = f[8193] = f[8194] = f[8195] = f[8196] = f[8197] = f[8198] = f[8199] = f[8200] = f[8201] = f[8202] = f[8232] = f[8233] = f[8239] = f[8287] = f[12288] = H;
203
- f[8220] = f[8221] = Et;
206
+ f[8220] = f[8221] = Nt;
204
207
  function b(t, e) {
205
208
  if (!t) {
206
209
  const s = typeof e == "function" ? e() : e || `expect ${t} to be true`;
207
- throw new vt(s);
210
+ throw new Ft(s);
208
211
  }
209
212
  }
210
213
  function K(t, e = `unexpected ${JSON.stringify(t)}`) {
211
214
  b(!t, e);
212
215
  }
213
- class zt extends V {
216
+ class Dt extends V {
214
217
  equals(e) {
215
- return R(d(e));
218
+ return _(d(e));
216
219
  }
217
220
  gt() {
218
221
  return !1;
@@ -232,7 +235,7 @@ class zt extends V {
232
235
  }
233
236
  class se extends V {
234
237
  equals(e) {
235
- return e instanceof se ? !1 : (e = d(e), O(e) || k(e) ? e.length === 0 : te(e) ? Object.keys(e).length === 0 : !1);
238
+ return e instanceof se ? !1 : (e = d(e), R(e) || k(e) ? e.length === 0 : te(e) ? Object.keys(e).length === 0 : !1);
236
239
  }
237
240
  gt() {
238
241
  return !1;
@@ -250,12 +253,12 @@ class se extends V {
250
253
  return "";
251
254
  }
252
255
  }
253
- class Nt extends se {
256
+ class qt extends se {
254
257
  equals(e) {
255
- return e === !1 || R(d(e)) ? !0 : O(e) ? /^\s*$/.test(e) : super.equals(e);
258
+ return e === !1 || _(d(e)) ? !0 : R(e) ? /^\s*$/.test(e) : super.equals(e);
256
259
  }
257
260
  }
258
- class fe extends V {
261
+ class pe extends V {
259
262
  constructor(e, s, r) {
260
263
  super(), this.i = 0, this.length = e, this.name = `${r}-${s}`;
261
264
  }
@@ -284,7 +287,7 @@ class fe extends V {
284
287
  return JSON.stringify(this);
285
288
  }
286
289
  }
287
- class Le extends V {
290
+ class Se extends V {
288
291
  constructor(e = () => "") {
289
292
  super(), this.superBlockRender = e;
290
293
  }
@@ -299,15 +302,15 @@ class Le extends V {
299
302
  function E(t) {
300
303
  return t && w(t.equals) && w(t.gt) && w(t.geq) && w(t.lt) && w(t.leq);
301
304
  }
302
- const Fe = new zt(), Ge = {
305
+ const Oe = new Dt(), Xe = {
303
306
  true: !0,
304
307
  false: !1,
305
- nil: Fe,
306
- null: Fe,
308
+ nil: Oe,
309
+ null: Oe,
307
310
  empty: new se(),
308
- blank: new Nt()
311
+ blank: new qt()
309
312
  };
310
- function Se(t) {
313
+ function Re(t) {
311
314
  const e = {};
312
315
  for (const [s, r] of Object.entries(t)) {
313
316
  let i = e;
@@ -328,35 +331,35 @@ var ee = function() {
328
331
  return e;
329
332
  }, ee.apply(this, arguments);
330
333
  };
331
- function F(t, e, s, r) {
334
+ function S(t, e, s, r) {
332
335
  function i(n) {
333
336
  return n instanceof s ? n : new s(function(o) {
334
337
  o(n);
335
338
  });
336
339
  }
337
340
  return new (s || (s = Promise))(function(n, o) {
338
- function a(c) {
341
+ function a(u) {
339
342
  try {
340
- h(r.next(c));
343
+ h(r.next(u));
341
344
  } catch (p) {
342
345
  o(p);
343
346
  }
344
347
  }
345
- function l(c) {
348
+ function l(u) {
346
349
  try {
347
- h(r.throw(c));
350
+ h(r.throw(u));
348
351
  } catch (p) {
349
352
  o(p);
350
353
  }
351
354
  }
352
- function h(c) {
353
- c.done ? n(c.value) : i(c.value).then(a, l);
355
+ function h(u) {
356
+ u.done ? n(u.value) : i(u.value).then(a, l);
354
357
  }
355
358
  h((r = r.apply(t, [])).next());
356
359
  });
357
360
  }
358
361
  function N(t) {
359
- return F(this, void 0, void 0, function* () {
362
+ return S(this, void 0, void 0, function* () {
360
363
  if (!X(t))
361
364
  return t;
362
365
  let e, s = !1, r = "next";
@@ -364,7 +367,7 @@ function N(t) {
364
367
  const i = t[r](e);
365
368
  s = i.done, e = i.value, r = "next";
366
369
  try {
367
- X(e) && (e = N(e)), dt(e) && (e = yield e);
370
+ X(e) && (e = N(e)), pt(e) && (e = yield e);
368
371
  } catch (n) {
369
372
  r = "throw", e = n;
370
373
  }
@@ -387,25 +390,25 @@ function D(t) {
387
390
  } while (!s);
388
391
  return e;
389
392
  }
390
- const Dt = /%([-_0^#:]+)?(\d+)?([EO])?(.)/;
391
- function qt(t) {
392
- return [31, Mt(t) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
393
+ const Mt = /%([-_0^#:]+)?(\d+)?([EO])?(.)/;
394
+ function It(t) {
395
+ return [31, $t(t) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
393
396
  }
394
- function Xe(t) {
397
+ function Ke(t) {
395
398
  let e = 0;
396
399
  for (let s = 0; s < t.getMonth(); ++s)
397
- e += qt(t)[s];
400
+ e += It(t)[s];
398
401
  return e + t.getDate();
399
402
  }
400
- function Oe(t, e) {
401
- const s = Xe(t) + (e - t.getDay()), i = 7 - new Date(t.getFullYear(), 0, 1).getDay() + e;
403
+ function Ee(t, e) {
404
+ const s = Ke(t) + (e - t.getDay()), i = 7 - new Date(t.getFullYear(), 0, 1).getDay() + e;
402
405
  return String(Math.floor((s - i) / 7) + 1);
403
406
  }
404
- function Mt(t) {
407
+ function $t(t) {
405
408
  const e = t.getFullYear();
406
409
  return !!(!(e & 3) && (e % 100 || e % 400 === 0 && e));
407
410
  }
408
- function It(t) {
411
+ function Pt(t) {
409
412
  const e = t.getDate();
410
413
  if ([11, 12, 13].includes(e))
411
414
  return "th";
@@ -420,10 +423,10 @@ function It(t) {
420
423
  return "th";
421
424
  }
422
425
  }
423
- function $t(t) {
426
+ function Ct(t) {
424
427
  return parseInt(t.getFullYear().toString().substring(0, 2), 10);
425
428
  }
426
- const Pt = {
429
+ const At = {
427
430
  d: 2,
428
431
  e: 2,
429
432
  H: 2,
@@ -437,8 +440,8 @@ const Pt = {
437
440
  S: 2,
438
441
  U: 2,
439
442
  W: 2
440
- }, Ct = new Set("aAbBceklpP");
441
- function Re(t, e) {
443
+ }, Vt = new Set("aAbBceklpP");
444
+ function ze(t, e) {
442
445
  const s = Math.abs(t.getTimezoneOffset()), r = Math.floor(s / 60), i = s % 60;
443
446
  return (t.getTimezoneOffset() > 0 ? "-" : "+") + J(r, 2, "0") + (e.flags[":"] ? ":" : "") + J(i, 2, "0");
444
447
  }
@@ -448,12 +451,12 @@ const le = {
448
451
  b: (t) => t.getShortMonthName(),
449
452
  B: (t) => t.getLongMonthName(),
450
453
  c: (t) => t.toLocaleString(),
451
- C: (t) => $t(t),
454
+ C: (t) => Ct(t),
452
455
  d: (t) => t.getDate(),
453
456
  e: (t) => t.getDate(),
454
457
  H: (t) => t.getHours(),
455
458
  I: (t) => String(t.getHours() % 12 || 12),
456
- j: (t) => Xe(t),
459
+ j: (t) => Ke(t),
457
460
  k: (t) => t.getHours(),
458
461
  l: (t) => String(t.getHours() % 12 || 12),
459
462
  L: (t) => t.getMilliseconds(),
@@ -461,23 +464,23 @@ const le = {
461
464
  M: (t) => t.getMinutes(),
462
465
  N: (t, e) => {
463
466
  const s = Number(e.width) || 9, r = String(t.getMilliseconds()).slice(0, s);
464
- return mt(r, s, "0");
467
+ return wt(r, s, "0");
465
468
  },
466
469
  p: (t) => t.getHours() < 12 ? "AM" : "PM",
467
470
  P: (t) => t.getHours() < 12 ? "am" : "pm",
468
- q: (t) => It(t),
471
+ q: (t) => Pt(t),
469
472
  s: (t) => Math.round(t.getTime() / 1e3),
470
473
  S: (t) => t.getSeconds(),
471
474
  u: (t) => t.getDay() || 7,
472
- U: (t) => Oe(t, 0),
475
+ U: (t) => Ee(t, 0),
473
476
  w: (t) => t.getDay(),
474
- W: (t) => Oe(t, 1),
477
+ W: (t) => Ee(t, 1),
475
478
  x: (t) => t.toLocaleDateString(),
476
479
  X: (t) => t.toLocaleTimeString(),
477
480
  y: (t) => t.getFullYear().toString().slice(2, 4),
478
481
  Y: (t) => t.getFullYear(),
479
- z: Re,
480
- Z: (t, e) => t.getTimeZoneName() || Re(t, e),
482
+ z: ze,
483
+ Z: (t, e) => t.getTimeZoneName() || ze(t, e),
481
484
  t: () => " ",
482
485
  n: () => `
483
486
  `,
@@ -486,24 +489,24 @@ const le = {
486
489
  le.h = le.b;
487
490
  function Z(t, e) {
488
491
  let s = "", r = e, i;
489
- for (; i = Dt.exec(r); )
490
- s += r.slice(0, i.index), r = r.slice(i.index + i[0].length), s += At(t, i);
492
+ for (; i = Mt.exec(r); )
493
+ s += r.slice(0, i.index), r = r.slice(i.index + i[0].length), s += Bt(t, i);
491
494
  return s + r;
492
495
  }
493
- function At(t, e) {
496
+ function Bt(t, e) {
494
497
  const [s, r = "", i, n, o] = e, a = le[o];
495
498
  if (!a)
496
499
  return s;
497
500
  const l = {};
498
- for (const L of r)
499
- l[L] = !0;
500
- let h = String(a(t, { flags: l, width: i, modifier: n })), c = Ct.has(o) ? " " : "0", p = i || Pt[o] || 0;
501
- return l["^"] ? h = h.toUpperCase() : l["#"] && (h = yt(h)), l._ ? c = " " : l[0] && (c = "0"), l["-"] && (p = 0), J(h, p, c);
501
+ for (const F of r)
502
+ l[F] = !0;
503
+ let h = String(a(t, { flags: l, width: i, modifier: n })), u = Vt.has(o) ? " " : "0", p = i || At[o] || 0;
504
+ return l["^"] ? h = h.toUpperCase() : l["#"] && (h = Tt(h)), l._ ? u = " " : l[0] && (u = "0"), l["-"] && (p = 0), J(h, p, u);
502
505
  }
503
- function Ke() {
506
+ function et() {
504
507
  return typeof Intl < "u" ? Intl.DateTimeFormat : void 0;
505
508
  }
506
- const Vt = 6e4, Bt = /([zZ]|([+-])(\d{2}):(\d{2}))$/, et = [
509
+ const jt = 6e4, Ut = /([zZ]|([+-])(\d{2}):(\d{2}))$/, tt = [
507
510
  "January",
508
511
  "February",
509
512
  "March",
@@ -516,7 +519,7 @@ const Vt = 6e4, Bt = /([zZ]|([+-])(\d{2}):(\d{2}))$/, et = [
516
519
  "October",
517
520
  "November",
518
521
  "December"
519
- ], jt = et.map((t) => t.slice(0, 3)), tt = [
522
+ ], Ht = tt.map((t) => t.slice(0, 3)), st = [
520
523
  "Sunday",
521
524
  "Monday",
522
525
  "Tuesday",
@@ -524,11 +527,11 @@ const Vt = 6e4, Bt = /([zZ]|([+-])(\d{2}):(\d{2}))$/, et = [
524
527
  "Thursday",
525
528
  "Friday",
526
529
  "Saturday"
527
- ], Ut = tt.map((t) => t.slice(0, 3));
528
- class S {
530
+ ], Wt = st.map((t) => t.slice(0, 3));
531
+ class O {
529
532
  constructor(e, s, r) {
530
- this.locale = s, this.DateTimeFormat = Ke(), this.date = new Date(e), this.timezoneFixed = r !== void 0, r === void 0 && (r = this.date.getTimezoneOffset()), this.timezoneOffset = O(r) ? S.getTimezoneOffset(r, this.date) : r, this.timezoneName = O(r) ? r : "";
531
- const i = (this.date.getTimezoneOffset() - this.timezoneOffset) * Vt, n = this.date.getTime() + i;
533
+ this.locale = s, this.DateTimeFormat = et(), this.date = new Date(e), this.timezoneFixed = r !== void 0, r === void 0 && (r = this.date.getTimezoneOffset()), this.timezoneOffset = R(r) ? O.getTimezoneOffset(r, this.date) : r, this.timezoneName = R(r) ? r : "";
534
+ const i = (this.date.getTimezoneOffset() - this.timezoneOffset) * jt, n = this.date.getTime() + i;
532
535
  this.displayDate = new Date(n);
533
536
  }
534
537
  getTime() {
@@ -578,19 +581,19 @@ class S {
578
581
  }
579
582
  getLongMonthName() {
580
583
  var e;
581
- return (e = this.format({ month: "long" })) !== null && e !== void 0 ? e : et[this.getMonth()];
584
+ return (e = this.format({ month: "long" })) !== null && e !== void 0 ? e : tt[this.getMonth()];
582
585
  }
583
586
  getShortMonthName() {
584
587
  var e;
585
- return (e = this.format({ month: "short" })) !== null && e !== void 0 ? e : jt[this.getMonth()];
588
+ return (e = this.format({ month: "short" })) !== null && e !== void 0 ? e : Ht[this.getMonth()];
586
589
  }
587
590
  getLongWeekdayName() {
588
591
  var e;
589
- return (e = this.format({ weekday: "long" })) !== null && e !== void 0 ? e : tt[this.displayDate.getDay()];
592
+ return (e = this.format({ weekday: "long" })) !== null && e !== void 0 ? e : st[this.displayDate.getDay()];
590
593
  }
591
594
  getShortWeekdayName() {
592
595
  var e;
593
- return (e = this.format({ weekday: "short" })) !== null && e !== void 0 ? e : Ut[this.displayDate.getDay()];
596
+ return (e = this.format({ weekday: "short" })) !== null && e !== void 0 ? e : Wt[this.displayDate.getDay()];
594
597
  }
595
598
  valid() {
596
599
  return !isNaN(this.getTime());
@@ -612,14 +615,14 @@ class S {
612
615
  * Given that a template is expected to be parsed fewer times than rendered.
613
616
  */
614
617
  static createDateFixedToTimezone(e, s) {
615
- const r = e.match(Bt);
618
+ const r = e.match(Ut);
616
619
  if (r && r[1] === "Z")
617
- return new S(+new Date(e), s, 0);
620
+ return new O(+new Date(e), s, 0);
618
621
  if (r && r[2] && r[3] && r[4]) {
619
622
  const [, , i, n, o] = r, a = (i === "+" ? -1 : 1) * (parseInt(n, 10) * 60 + parseInt(o, 10));
620
- return new S(+new Date(e), s, a);
623
+ return new O(+new Date(e), s, a);
621
624
  }
622
- return new S(e, s);
625
+ return new O(e, s);
623
626
  }
624
627
  static getTimezoneOffset(e, s) {
625
628
  const r = s.toLocaleString("en-US", { timeZone: e }), i = s.toLocaleString("en-US", { timeZone: "UTC" }), n = new Date(r);
@@ -631,43 +634,43 @@ class he {
631
634
  this.base = 0, this.message = `${e} limit exceeded`, this.limit = s;
632
635
  }
633
636
  use(e) {
634
- b(this.base + e <= this.limit, this.message), this.base += e;
637
+ e = xe(e), b(this.base + e <= this.limit, this.message), this.base += e;
635
638
  }
636
639
  check(e) {
637
- b(e <= this.limit, this.message);
640
+ e = xe(e), b(e <= this.limit, this.message);
638
641
  }
639
642
  }
640
- class pe extends v {
643
+ class ge extends L {
641
644
  constructor(e, [s, r], i, n, o, a, l, h) {
642
645
  super(e, i, n, o, h), this.trimLeft = !1, this.trimRight = !1;
643
- const c = i[s] === "-", p = i[r - 1] === "-";
644
- let L = c ? s + 1 : s, Y = p ? r - 1 : r;
645
- for (; L < Y && f[i.charCodeAt(L)] & H; )
646
- L++;
647
- for (; Y > L && f[i.charCodeAt(Y - 1)] & H; )
646
+ const u = i[s] === "-", p = i[r - 1] === "-";
647
+ let F = u ? s + 1 : s, Y = p ? r - 1 : r;
648
+ for (; F < Y && f[i.charCodeAt(F)] & H; )
649
+ F++;
650
+ for (; Y > F && f[i.charCodeAt(Y - 1)] & H; )
648
651
  Y--;
649
- this.contentRange = [L, Y], this.trimLeft = c || a, this.trimRight = p || l;
652
+ this.contentRange = [F, Y], this.trimLeft = u || a, this.trimRight = p || l;
650
653
  }
651
654
  get content() {
652
655
  return this.input.slice(this.contentRange[0], this.contentRange[1]);
653
656
  }
654
657
  }
655
- class Ee extends pe {
658
+ class Ne extends ge {
656
659
  constructor(e, s, r, i, n) {
657
- const { trimTagLeft: o, trimTagRight: a, tagDelimiterLeft: l, tagDelimiterRight: h } = i, [c, p] = [s + l.length, r - h.length];
658
- super(g.Tag, [c, p], e, s, r, o, a, n), this.tokenizer = new z(e, i.operators, n, this.contentRange), this.name = this.tokenizer.readTagName(), this.tokenizer.assert(this.name, "illegal tag syntax, tag name expected"), this.tokenizer.skipBlank();
660
+ const { trimTagLeft: o, trimTagRight: a, tagDelimiterLeft: l, tagDelimiterRight: h } = i, [u, p] = [s + l.length, r - h.length];
661
+ super(g.Tag, [u, p], e, s, r, o, a, n), this.tokenizer = new z(e, i.operators, n, this.contentRange), this.name = this.tokenizer.readTagName(), this.tokenizer.assert(this.name, "illegal tag syntax, tag name expected"), this.tokenizer.skipBlank();
659
662
  }
660
663
  get args() {
661
664
  return this.tokenizer.input.slice(this.tokenizer.p, this.contentRange[1]);
662
665
  }
663
666
  }
664
- class Ht extends pe {
667
+ class Yt extends ge {
665
668
  constructor(e, s, r, i, n) {
666
- const { trimOutputLeft: o, trimOutputRight: a, outputDelimiterLeft: l, outputDelimiterRight: h } = i, c = [s + l.length, r - h.length];
667
- super(g.Output, c, e, s, r, o, a, n);
669
+ const { trimOutputLeft: o, trimOutputRight: a, outputDelimiterLeft: l, outputDelimiterRight: h } = i, u = [s + l.length, r - h.length];
670
+ super(g.Output, u, e, s, r, o, a, n);
668
671
  }
669
672
  }
670
- class ze extends v {
673
+ class De extends L {
671
674
  constructor(e, s, r, i) {
672
675
  super(g.HTML, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.trimLeft = 0, this.trimRight = 0;
673
676
  }
@@ -675,22 +678,22 @@ class ze extends v {
675
678
  return this.input.slice(this.begin + this.trimLeft, this.end - this.trimRight);
676
679
  }
677
680
  }
678
- class Wt extends v {
681
+ class Jt extends L {
679
682
  constructor(e, s, r, i) {
680
683
  super(g.Number, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.content = Number(this.getText());
681
684
  }
682
685
  }
683
- class ne extends v {
686
+ class ne extends L {
684
687
  constructor(e, s, r, i) {
685
688
  super(g.Word, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.content = this.getText();
686
689
  }
687
690
  }
688
- class Yt extends v {
691
+ class Qt extends L {
689
692
  constructor(e, s, r, i) {
690
- super(g.Literal, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.literal = this.getText(), this.content = Ge[this.literal];
693
+ super(g.Literal, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.literal = this.getText(), this.content = Xe[this.literal];
691
694
  }
692
695
  }
693
- const Ne = {
696
+ const qe = {
694
697
  "==": 2,
695
698
  "!=": 2,
696
699
  ">": 2,
@@ -701,7 +704,7 @@ const Ne = {
701
704
  not: 1,
702
705
  and: 0,
703
706
  or: 0
704
- }, Jt = {
707
+ }, Zt = {
705
708
  "==": 0,
706
709
  "!=": 0,
707
710
  ">": 0,
@@ -714,31 +717,31 @@ const Ne = {
714
717
  or: 0
715
718
  /* OperatorType.Binary */
716
719
  };
717
- class Qt extends v {
720
+ class Gt extends L {
718
721
  constructor(e, s, r, i) {
719
722
  super(g.Operator, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.operator = this.getText();
720
723
  }
721
724
  getPrecedence() {
722
725
  const e = this.getText();
723
- return e in Ne ? Ne[e] : 1;
726
+ return e in qe ? qe[e] : 1;
724
727
  }
725
728
  }
726
- class De extends v {
729
+ class Me extends L {
727
730
  constructor(e, s, r, i, n, o) {
728
731
  super(g.PropertyAccess, r, i, n, o), this.variable = e, this.props = s;
729
732
  }
730
733
  }
731
- class Zt extends v {
734
+ class Xt extends L {
732
735
  constructor(e, s, r, i, n, o) {
733
736
  super(g.Filter, r, i, n, o), this.name = e, this.args = s;
734
737
  }
735
738
  }
736
- class Gt extends v {
739
+ class Kt extends L {
737
740
  constructor(e, s, r, i, n, o) {
738
741
  super(g.Hash, e, s, r, o), this.input = e, this.begin = s, this.end = r, this.name = i, this.value = n, this.file = o;
739
742
  }
740
743
  }
741
- const Xt = /[\da-fA-F]/, qe = /[0-7]/, Me = {
744
+ const es = /[\da-fA-F]/, Ie = /[0-7]/, $e = {
742
745
  b: "\b",
743
746
  f: "\f",
744
747
  n: `
@@ -747,92 +750,98 @@ const Xt = /[\da-fA-F]/, qe = /[0-7]/, Me = {
747
750
  t: " ",
748
751
  v: "\v"
749
752
  };
750
- function Ie(t) {
753
+ function Pe(t) {
751
754
  const e = t.charCodeAt(0);
752
755
  return e >= 97 ? e - 87 : e >= 65 ? e - 55 : e - 48;
753
756
  }
754
- function Kt(t) {
757
+ function ts(t) {
755
758
  let e = "";
756
759
  for (let s = 1; s < t.length - 1; s++) {
757
760
  if (t[s] !== "\\") {
758
761
  e += t[s];
759
762
  continue;
760
763
  }
761
- if (Me[t[s + 1]] !== void 0)
762
- e += Me[t[++s]];
764
+ if ($e[t[s + 1]] !== void 0)
765
+ e += $e[t[++s]];
763
766
  else if (t[s + 1] === "u") {
764
767
  let r = 0, i = s + 2;
765
- for (; i <= s + 5 && Xt.test(t[i]); )
766
- r = r * 16 + Ie(t[i++]);
768
+ for (; i <= s + 5 && es.test(t[i]); )
769
+ r = r * 16 + Pe(t[i++]);
767
770
  s = i - 1, e += String.fromCharCode(r);
768
- } else if (!qe.test(t[s + 1]))
771
+ } else if (!Ie.test(t[s + 1]))
769
772
  e += t[++s];
770
773
  else {
771
774
  let r = s + 1, i = 0;
772
- for (; r <= s + 3 && qe.test(t[r]); )
773
- i = i * 8 + Ie(t[r++]);
775
+ for (; r <= s + 3 && Ie.test(t[r]); )
776
+ i = i * 8 + Pe(t[r++]);
774
777
  s = r - 1, e += String.fromCharCode(i);
775
778
  }
776
779
  }
777
780
  return e;
778
781
  }
779
- class es extends v {
782
+ class ss extends L {
780
783
  constructor(e, s, r, i) {
781
- super(g.Quoted, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.content = Kt(this.getText());
784
+ super(g.Quoted, e, s, r, i), this.input = e, this.begin = s, this.end = r, this.file = i, this.content = ts(this.getText());
782
785
  }
783
786
  }
784
- class ts extends v {
787
+ class rs extends L {
785
788
  constructor(e, s, r, i, n, o) {
786
789
  super(g.Range, e, s, r, o), this.input = e, this.begin = s, this.end = r, this.lhs = i, this.rhs = n, this.file = o;
787
790
  }
788
791
  }
789
- class ss extends pe {
792
+ class is extends ge {
790
793
  constructor(e, s, r, i, n) {
791
794
  super(g.Tag, [s, r], e, s, r, !1, !1, n), this.tokenizer = new z(e, i.operators, n, this.contentRange), this.name = this.tokenizer.readTagName(), this.tokenizer.assert(this.name, "illegal liquid tag syntax"), this.tokenizer.skipBlank(), this.args = this.tokenizer.remaining();
792
795
  }
793
796
  }
794
- class rs extends v {
797
+ class ns extends L {
795
798
  constructor(e, s, r, i, n, o) {
796
799
  super(g.FilteredValue, r, i, n, o), this.initial = e, this.filters = s, this.input = r, this.begin = i, this.end = n, this.file = o;
797
800
  }
798
801
  }
799
- class is {
802
+ const os = {
803
+ now: () => Date.now()
804
+ };
805
+ function rt() {
806
+ return typeof global == "object" && global.performance || typeof window == "object" && window.performance || os;
807
+ }
808
+ class as {
800
809
  constructor() {
801
810
  this.buffer = "";
802
811
  }
803
812
  write(e) {
804
- this.buffer += u(e);
813
+ this.buffer += c(e);
805
814
  }
806
815
  }
807
- class ns {
816
+ class ls {
808
817
  constructor() {
809
818
  throw this.buffer = "", this.stream = null, new Error("streaming not supported in browser");
810
819
  }
811
820
  }
812
- class os {
821
+ class hs {
813
822
  constructor() {
814
823
  this.buffer = "";
815
824
  }
816
825
  write(e) {
817
- e = d(e), typeof e != "string" && this.buffer === "" ? this.buffer = e : this.buffer = u(this.buffer) + u(e);
826
+ e = d(e), typeof e != "string" && this.buffer === "" ? this.buffer = e : this.buffer = c(this.buffer) + c(e);
818
827
  }
819
828
  }
820
- class as {
829
+ class cs {
821
830
  renderTemplatesToNodeStream(e, s) {
822
- const r = new ns();
831
+ const r = new ls();
823
832
  return Promise.resolve().then(() => N(this.renderTemplates(e, s, r))).then(() => r.end(), (i) => r.error(i)), r.stream;
824
833
  }
825
834
  *renderTemplates(e, s, r) {
826
- r || (r = s.opts.keepOutputType ? new os() : new is());
835
+ r || (r = s.opts.keepOutputType ? new hs() : new as());
827
836
  const i = [];
828
837
  for (const n of e) {
829
- s.renderLimit.check(performance.now());
838
+ s.renderLimit.check(rt().now());
830
839
  try {
831
840
  const o = yield n.render(s, r);
832
841
  if (o && r.write(o), r.break || r.continue)
833
842
  break;
834
843
  } catch (o) {
835
- const a = B.is(o) ? o : new bt(o, n);
844
+ const a = B.is(o) ? o : new _t(o, n);
836
845
  if (s.opts.catchAllErrors)
837
846
  i.push(a);
838
847
  else
@@ -840,22 +849,22 @@ class as {
840
849
  }
841
850
  }
842
851
  if (i.length)
843
- throw new Qe(i);
852
+ throw new Ze(i);
844
853
  return r.buffer;
845
854
  }
846
855
  }
847
- class ls {
856
+ class us {
848
857
  constructor(e) {
849
- this.postfix = [...cs(e)];
858
+ this.postfix = [...ps(e)];
850
859
  }
851
860
  *evaluate(e, s) {
852
861
  b(e, "unable to evaluate: context not defined");
853
862
  const r = [];
854
863
  for (const i of this.postfix)
855
- if (ot(i)) {
864
+ if (lt(i)) {
856
865
  const n = r.pop();
857
866
  let o;
858
- if (Jt[i.operator] === 1)
867
+ if (Zt[i.operator] === 1)
859
868
  o = yield e.opts.operators[i.operator](n, e);
860
869
  else {
861
870
  const a = r.pop();
@@ -874,13 +883,13 @@ function* y(t, e, s = !1) {
874
883
  if (t) {
875
884
  if ("content" in t)
876
885
  return t.content;
877
- if (Qs(t))
878
- return yield hs(t, e, s);
879
- if (Zs(t))
880
- return yield us(t, e);
886
+ if (Xs(t))
887
+ return yield ds(t, e, s);
888
+ if (Ks(t))
889
+ return yield fs(t, e);
881
890
  }
882
891
  }
883
- function* hs(t, e, s) {
892
+ function* ds(t, e, s) {
884
893
  const r = [];
885
894
  for (const i of t.props)
886
895
  r.push(yield y(i, e, !1));
@@ -893,20 +902,20 @@ function* hs(t, e, s) {
893
902
  } catch (i) {
894
903
  if (s && i.name === "InternalUndefinedVariableError")
895
904
  return null;
896
- throw new xt(i, t);
905
+ throw new vt(i, t);
897
906
  }
898
907
  }
899
- function st(t) {
908
+ function it(t) {
900
909
  return t.content;
901
910
  }
902
- function* us(t, e) {
911
+ function* fs(t, e) {
903
912
  const s = yield y(t.lhs, e), r = yield y(t.rhs, e);
904
- return We(+s, +r + 1);
913
+ return Ye(+s, +r + 1);
905
914
  }
906
- function* cs(t) {
915
+ function* ps(t) {
907
916
  const e = [];
908
917
  for (const s of t)
909
- if (ot(s)) {
918
+ if (lt(s)) {
910
919
  for (; e.length && e[e.length - 1].getPrecedence() > s.getPrecedence(); )
911
920
  yield e.pop();
912
921
  e.push(s);
@@ -921,7 +930,7 @@ function $(t, e) {
921
930
  function re(t, e) {
922
931
  return t = d(t), e.opts.jsTruthy ? !t : t === !1 || t === void 0 || t === null;
923
932
  }
924
- const ds = {
933
+ const gs = {
925
934
  "==": P,
926
935
  "!=": (t, e) => !P(t, e),
927
936
  ">": (t, e) => E(t) ? t.gt(e) : E(e) ? e.lt(t) : d(t) > d(e),
@@ -934,9 +943,9 @@ const ds = {
934
943
  or: (t, e, s) => $(d(t), s) || $(d(e), s)
935
944
  };
936
945
  function P(t, e) {
937
- return E(t) ? t.equals(e) : E(e) ? e.equals(t) : (t = d(t), e = d(e), k(t) ? k(e) && fs(t, e) : t === e);
946
+ return E(t) ? t.equals(e) : E(e) ? e.equals(t) : (t = d(t), e = d(e), k(t) ? k(e) && ms(t, e) : t === e);
938
947
  }
939
- function fs(t, e) {
948
+ function ms(t, e) {
940
949
  return t.length !== e.length ? !1 : !t.some((s, r) => !P(s, e[r]));
941
950
  }
942
951
  class oe {
@@ -944,7 +953,7 @@ class oe {
944
953
  this.key = e, this.value = s, this.next = r, this.prev = i;
945
954
  }
946
955
  }
947
- class $e {
956
+ class Ce {
948
957
  constructor(e, s = 0) {
949
958
  this.limit = e, this.size = s, this.cache = {}, this.head = new oe("HEAD", null, null, null), this.tail = new oe("TAIL", null, null, null), this.head.next = this.tail, this.tail.prev = this.head;
950
959
  }
@@ -973,7 +982,7 @@ class $e {
973
982
  this.size > this.limit && this.remove(this.tail.prev.key);
974
983
  }
975
984
  }
976
- function rt(t, e) {
985
+ function nt(t, e) {
977
986
  const s = document.createElement("base");
978
987
  s.href = t;
979
988
  const r = document.getElementsByTagName("head")[0];
@@ -983,14 +992,14 @@ function rt(t, e) {
983
992
  const n = i.href;
984
993
  return r.removeChild(s), n;
985
994
  }
986
- function ps(t, e, s) {
987
- return t.length && He(t) !== "/" && (t += "/"), rt(t, e).replace(/^(\w+:\/\/[^/]+)(\/[^?]+)/, (i, n, o) => {
995
+ function ys(t, e, s) {
996
+ return t.length && We(t) !== "/" && (t += "/"), nt(t, e).replace(/^(\w+:\/\/[^/]+)(\/[^?]+)/, (i, n, o) => {
988
997
  const a = o.split("/").pop();
989
998
  return /\.\w+$/.test(a) ? i : n + o + s;
990
999
  });
991
1000
  }
992
- function gs(t) {
993
- return F(this, void 0, void 0, function* () {
1001
+ function ws(t) {
1002
+ return S(this, void 0, void 0, function* () {
994
1003
  return new Promise((e, s) => {
995
1004
  const r = new XMLHttpRequest();
996
1005
  r.onload = () => {
@@ -1001,41 +1010,41 @@ function gs(t) {
1001
1010
  });
1002
1011
  });
1003
1012
  }
1004
- function ms(t) {
1013
+ function Ts(t) {
1005
1014
  const e = new XMLHttpRequest();
1006
1015
  if (e.open("GET", t, !1), e.send(), e.status < 200 || e.status >= 300)
1007
1016
  throw new Error(e.statusText);
1008
1017
  return e.responseText;
1009
1018
  }
1010
- function ys(t) {
1011
- return F(this, void 0, void 0, function* () {
1019
+ function ks(t) {
1020
+ return S(this, void 0, void 0, function* () {
1012
1021
  return !0;
1013
1022
  });
1014
1023
  }
1015
- function ws(t) {
1024
+ function bs(t) {
1016
1025
  return !0;
1017
1026
  }
1018
- function Ts(t) {
1019
- return rt(t, ".");
1027
+ function xs(t) {
1028
+ return nt(t, ".");
1020
1029
  }
1021
- const ks = "/";
1022
- var bs = /* @__PURE__ */ Object.freeze({
1030
+ const _s = "/";
1031
+ var vs = /* @__PURE__ */ Object.freeze({
1023
1032
  __proto__: null,
1024
- resolve: ps,
1025
- readFile: gs,
1026
- readFileSync: ms,
1027
- exists: ys,
1028
- existsSync: ws,
1029
- dirname: Ts,
1030
- sep: ks
1033
+ resolve: ys,
1034
+ readFile: ws,
1035
+ readFileSync: Ts,
1036
+ exists: ks,
1037
+ existsSync: bs,
1038
+ dirname: xs,
1039
+ sep: _s
1031
1040
  });
1032
- function xs(t, e, ...s) {
1033
- return t = d(t), k(t) || O(t) ? t.length ? t : e : t === !1 && new Map(s).get("allow_false") ? !1 : re(t, this.context) ? e : t;
1041
+ function Ls(t, e, ...s) {
1042
+ return t = d(t), k(t) || R(t) ? t.length ? t : e : t === !1 && new Map(s).get("allow_false") ? !1 : re(t, this.context) ? e : t;
1034
1043
  }
1035
- function Pe(t, e = 0) {
1044
+ function Ae(t, e = 0) {
1036
1045
  return JSON.stringify(t, null, e);
1037
1046
  }
1038
- function _s(t, e = 0) {
1047
+ function Fs(t, e = 0) {
1039
1048
  const s = [];
1040
1049
  return JSON.stringify(t, function(r, i) {
1041
1050
  if (typeof i != "object" || i === null)
@@ -1045,28 +1054,28 @@ function _s(t, e = 0) {
1045
1054
  return s.includes(i) ? "[Circular]" : (s.push(i), i);
1046
1055
  }, e);
1047
1056
  }
1048
- function vs(t) {
1057
+ function Ss(t) {
1049
1058
  return Number(t);
1050
1059
  }
1051
- const Ls = {
1060
+ const Os = {
1052
1061
  raw: !0,
1053
- handler: Je
1062
+ handler: Qe
1054
1063
  };
1055
- var it = {
1056
- default: xs,
1057
- raw: Ls,
1058
- jsonify: Pe,
1059
- to_integer: vs,
1060
- json: Pe,
1061
- inspect: _s
1064
+ var ot = {
1065
+ default: Ls,
1066
+ raw: Os,
1067
+ jsonify: Ae,
1068
+ to_integer: Ss,
1069
+ json: Ae,
1070
+ inspect: Fs
1062
1071
  };
1063
- const Fs = {
1072
+ const Rs = {
1064
1073
  "&": "&amp;",
1065
1074
  "<": "&lt;",
1066
1075
  ">": "&gt;",
1067
1076
  '"': "&#34;",
1068
1077
  "'": "&#39;"
1069
- }, Ss = {
1078
+ }, Es = {
1070
1079
  "&amp;": "&",
1071
1080
  "&lt;": "<",
1072
1081
  "&gt;": ">",
@@ -1074,54 +1083,54 @@ const Fs = {
1074
1083
  "&#39;": "'"
1075
1084
  };
1076
1085
  function ie(t) {
1077
- return t = u(t), this.context.memoryLimit.use(t.length), t.replace(/&|<|>|"|'/g, (e) => Fs[e]);
1086
+ return t = c(t), this.context.memoryLimit.use(t.length), t.replace(/&|<|>|"|'/g, (e) => Rs[e]);
1078
1087
  }
1079
- function Os(t) {
1088
+ function zs(t) {
1080
1089
  return ie.call(this, t);
1081
1090
  }
1082
- function Rs(t) {
1083
- return t = u(t), this.context.memoryLimit.use(t.length), t.replace(/&(amp|lt|gt|#34|#39);/g, (e) => Ss[e]);
1091
+ function Ns(t) {
1092
+ return t = c(t), this.context.memoryLimit.use(t.length), t.replace(/&(amp|lt|gt|#34|#39);/g, (e) => Es[e]);
1084
1093
  }
1085
- function Es(t) {
1086
- return ie.call(this, Rs.call(this, t));
1094
+ function Ds(t) {
1095
+ return ie.call(this, Ns.call(this, t));
1087
1096
  }
1088
- function zs(t) {
1089
- const e = u(t);
1097
+ function qs(t) {
1098
+ const e = c(t);
1090
1099
  return this.context.memoryLimit.use(e.length), e.replace(/\r?\n/gm, `<br />
1091
1100
  `);
1092
1101
  }
1093
- function Ns(t) {
1094
- const e = u(t);
1102
+ function Ms(t) {
1103
+ const e = c(t);
1095
1104
  return this.context.memoryLimit.use(e.length), e.replace(/<script[\s\S]*?<\/script>|<style[\s\S]*?<\/style>|<.*?>|<!--[\s\S]*?-->/g, "");
1096
1105
  }
1097
- var Ds = /* @__PURE__ */ Object.freeze({
1106
+ var Is = /* @__PURE__ */ Object.freeze({
1098
1107
  __proto__: null,
1099
1108
  escape: ie,
1100
- xml_escape: Os,
1101
- escape_once: Es,
1102
- newline_to_br: zs,
1103
- strip_html: Ns
1109
+ xml_escape: zs,
1110
+ escape_once: Ds,
1111
+ newline_to_br: qs,
1112
+ strip_html: Ms
1104
1113
  });
1105
- class qs {
1114
+ class $s {
1106
1115
  constructor(e) {
1107
1116
  this.mapping = e, this.sep = "/";
1108
1117
  }
1109
1118
  exists(e) {
1110
- return F(this, void 0, void 0, function* () {
1119
+ return S(this, void 0, void 0, function* () {
1111
1120
  return this.existsSync(e);
1112
1121
  });
1113
1122
  }
1114
1123
  existsSync(e) {
1115
- return !R(this.mapping[e]);
1124
+ return !_(this.mapping[e]);
1116
1125
  }
1117
1126
  readFile(e) {
1118
- return F(this, void 0, void 0, function* () {
1127
+ return S(this, void 0, void 0, function* () {
1119
1128
  return this.readFileSync(e);
1120
1129
  });
1121
1130
  }
1122
1131
  readFileSync(e) {
1123
1132
  const s = this.mapping[e];
1124
- if (R(s))
1133
+ if (_(s))
1125
1134
  throw new Error(`ENOENT: ${e}`);
1126
1135
  return s;
1127
1136
  }
@@ -1146,7 +1155,7 @@ const U = {
1146
1155
  jekyllInclude: !1,
1147
1156
  cache: void 0,
1148
1157
  extname: "",
1149
- fs: bs,
1158
+ fs: vs,
1150
1159
  dynamicPartials: !0,
1151
1160
  jsTruthy: !1,
1152
1161
  dateFormat: "%A, %B %-e, %Y at %-l:%M %P %z",
@@ -1167,44 +1176,44 @@ const U = {
1167
1176
  lenientIf: !1,
1168
1177
  globals: {},
1169
1178
  keepOutputType: !1,
1170
- operators: ds,
1179
+ operators: gs,
1171
1180
  memoryLimit: 1 / 0,
1172
1181
  parseLimit: 1 / 0,
1173
1182
  renderLimit: 1 / 0
1174
1183
  };
1175
- function Ms(t) {
1184
+ function Ps(t) {
1176
1185
  var e, s;
1177
1186
  if (t.hasOwnProperty("root") && (t.hasOwnProperty("partials") || (t.partials = t.root), t.hasOwnProperty("layouts") || (t.layouts = t.root)), t.hasOwnProperty("cache")) {
1178
1187
  let r;
1179
- typeof t.cache == "number" ? r = t.cache > 0 ? new $e(t.cache) : void 0 : typeof t.cache == "object" ? r = t.cache : r = t.cache ? new $e(1024) : void 0, t.cache = r;
1188
+ typeof t.cache == "number" ? r = t.cache > 0 ? new Ce(t.cache) : void 0 : typeof t.cache == "object" ? r = t.cache : r = t.cache ? new Ce(1024) : void 0, t.cache = r;
1180
1189
  }
1181
- return t = Object.assign(Object.assign(Object.assign({}, U), t.jekyllInclude ? { dynamicPartials: !1 } : {}), t), (!t.fs.dirname || !t.fs.sep) && t.relativeReference && (console.warn("[LiquidJS] `fs.dirname` and `fs.sep` are required for relativeReference, set relativeReference to `false` to suppress this warning"), t.relativeReference = !1), t.root = G(t.root), t.partials = G(t.partials), t.layouts = G(t.layouts), t.outputEscape = t.outputEscape && Is(t.outputEscape), t.locale || (t.locale = (s = (e = Ke()) === null || e === void 0 ? void 0 : e().resolvedOptions().locale) !== null && s !== void 0 ? s : "en-US"), t.templates && (t.fs = new qs(t.templates), t.relativeReference = !0, t.root = t.partials = t.layouts = "."), t;
1190
+ return t = Object.assign(Object.assign(Object.assign({}, U), t.jekyllInclude ? { dynamicPartials: !1 } : {}), t), (!t.fs.dirname || !t.fs.sep) && t.relativeReference && (console.warn("[LiquidJS] `fs.dirname` and `fs.sep` are required for relativeReference, set relativeReference to `false` to suppress this warning"), t.relativeReference = !1), t.root = G(t.root), t.partials = G(t.partials), t.layouts = G(t.layouts), t.outputEscape = t.outputEscape && Cs(t.outputEscape), t.locale || (t.locale = (s = (e = et()) === null || e === void 0 ? void 0 : e().resolvedOptions().locale) !== null && s !== void 0 ? s : "en-US"), t.templates && (t.fs = new $s(t.templates), t.relativeReference = !0, t.root = t.partials = t.layouts = "."), t;
1182
1191
  }
1183
- function Is(t) {
1184
- return t === "escape" ? ie : t === "json" ? it.json : (b(w(t), "`outputEscape` need to be of type string or function"), t);
1192
+ function Cs(t) {
1193
+ return t === "escape" ? ie : t === "json" ? ot.json : (b(w(t), "`outputEscape` need to be of type string or function"), t);
1185
1194
  }
1186
1195
  function G(t) {
1187
1196
  let e = [];
1188
- return k(t) && (e = t), O(t) && (e = [t]), e;
1197
+ return k(t) && (e = t), R(t) && (e = [t]), e;
1189
1198
  }
1190
- function $s(t, e) {
1199
+ function As(t, e) {
1191
1200
  let s = !1;
1192
1201
  for (let r = 0; r < t.length; r++) {
1193
1202
  const i = t[r];
1194
- Ws(i) && (!s && i.trimLeft && Ps(t[r - 1], e.greedy), j(i) && (i.name === "raw" ? s = !0 : i.name === "endraw" && (s = !1)), !s && i.trimRight && Cs(t[r + 1], e.greedy));
1203
+ Qs(i) && (!s && i.trimLeft && Vs(t[r - 1], e.greedy), j(i) && (i.name === "raw" ? s = !0 : i.name === "endraw" && (s = !1)), !s && i.trimRight && Bs(t[r + 1], e.greedy));
1195
1204
  }
1196
1205
  }
1197
- function Ps(t, e) {
1198
- if (!t || !me(t))
1206
+ function Vs(t, e) {
1207
+ if (!t || !ye(t))
1199
1208
  return;
1200
- const s = e ? H : Ze;
1209
+ const s = e ? H : Ge;
1201
1210
  for (; f[t.input.charCodeAt(t.end - 1 - t.trimRight)] & s; )
1202
1211
  t.trimRight++;
1203
1212
  }
1204
- function Cs(t, e) {
1205
- if (!t || !me(t))
1213
+ function Bs(t, e) {
1214
+ if (!t || !ye(t))
1206
1215
  return;
1207
- const s = e ? H : Ze;
1216
+ const s = e ? H : Ge;
1208
1217
  for (; f[t.input.charCodeAt(t.begin + t.trimLeft)] & s; )
1209
1218
  t.trimLeft++;
1210
1219
  t.input.charAt(t.begin + t.trimLeft) === `
@@ -1212,10 +1221,10 @@ function Cs(t, e) {
1212
1221
  }
1213
1222
  class z {
1214
1223
  constructor(e, s = U.operators, r, i) {
1215
- this.input = e, this.file = r, this.rawBeginAt = -1, this.p = i ? i[0] : 0, this.N = i ? i[1] : e.length, this.opTrie = Se(s), this.literalTrie = Se(Ge);
1224
+ this.input = e, this.file = r, this.rawBeginAt = -1, this.p = i ? i[0] : 0, this.N = i ? i[1] : e.length, this.opTrie = Re(s), this.literalTrie = Re(Xe);
1216
1225
  }
1217
1226
  readExpression() {
1218
- return new ls(this.readExpressionTokens());
1227
+ return new us(this.readExpressionTokens());
1219
1228
  }
1220
1229
  *readExpressionTokens() {
1221
1230
  for (; this.p < this.N; ) {
@@ -1236,7 +1245,7 @@ class z {
1236
1245
  this.skipBlank();
1237
1246
  const e = this.matchTrie(this.opTrie);
1238
1247
  if (e !== -1)
1239
- return new Qt(this.input, this.p, this.p = e, this.file);
1248
+ return new Gt(this.input, this.p, this.p = e, this.file);
1240
1249
  }
1241
1250
  matchTrie(e) {
1242
1251
  let s = e, r = this.p, i;
@@ -1248,7 +1257,7 @@ class z {
1248
1257
  const e = this.p, s = this.readExpression();
1249
1258
  this.assert(s.valid(), `invalid value expression: ${this.snapshot()}`);
1250
1259
  const r = this.readFilters();
1251
- return new rs(s, r, this.input, e, this.p, this.file);
1260
+ return new ns(s, r, this.input, e, this.p, this.file);
1252
1261
  }
1253
1262
  readFilters() {
1254
1263
  const e = [];
@@ -1274,7 +1283,7 @@ class z {
1274
1283
  i && r.push(i), this.skipBlank(), this.assert(this.end() || this.peek() === "," || this.peek() === "|", () => `unexpected character ${this.snapshot()}`);
1275
1284
  } while (this.peek() === ",");
1276
1285
  else if (!(this.peek() === "|" || this.end())) throw this.error('expected ":" after filter name');
1277
- return new Zt(s.getText(), r, this.input, e, this.p, this.file);
1286
+ return new Xt(s.getText(), r, this.input, e, this.p, this.file);
1278
1287
  }
1279
1288
  readFilterArg() {
1280
1289
  const e = this.readValue();
@@ -1292,7 +1301,7 @@ class z {
1292
1301
  const r = this.readTopLevelToken(e);
1293
1302
  s.push(r);
1294
1303
  }
1295
- return $s(s, e), s;
1304
+ return As(s, e), s;
1296
1305
  }
1297
1306
  readTopLevelToken(e) {
1298
1307
  const { tagDelimiterLeft: s, outputDelimiterLeft: r } = e;
@@ -1302,18 +1311,18 @@ class z {
1302
1311
  const s = this.p;
1303
1312
  for (; this.p < this.N && !e.some((r) => this.match(r)); )
1304
1313
  ++this.p;
1305
- return new ze(this.input, s, this.p, this.file);
1314
+ return new De(this.input, s, this.p, this.file);
1306
1315
  }
1307
1316
  readTagToken(e) {
1308
1317
  const { file: s, input: r } = this, i = this.p;
1309
1318
  if (this.readToDelimiter(e.tagDelimiterRight) === -1)
1310
1319
  throw this.error(`tag ${this.snapshot(i)} not closed`, i);
1311
- const n = new Ee(r, i, this.p, e, s);
1320
+ const n = new Ne(r, i, this.p, e, s);
1312
1321
  return n.name === "raw" && (this.rawBeginAt = i), n;
1313
1322
  }
1314
1323
  readToDelimiter(e, s = !1) {
1315
1324
  for (this.skipBlank(); this.p < this.N; ) {
1316
- if (s && this.peekType() & ve) {
1325
+ if (s && this.peekType() & Fe) {
1317
1326
  this.readQuoted();
1318
1327
  continue;
1319
1328
  }
@@ -1326,7 +1335,7 @@ class z {
1326
1335
  const { file: s, input: r } = this, { outputDelimiterRight: i } = e, n = this.p;
1327
1336
  if (this.readToDelimiter(i, !0) === -1)
1328
1337
  throw this.error(`output ${this.snapshot(n)} not closed`, n);
1329
- return new Ht(r, n, this.p, e, s);
1338
+ return new Yt(r, n, this.p, e, s);
1330
1339
  }
1331
1340
  readEndrawOrRawContent(e) {
1332
1341
  const { tagDelimiterLeft: s, tagDelimiterRight: r } = e, i = this.p;
@@ -1339,7 +1348,7 @@ class z {
1339
1348
  for (; this.p <= this.N; ) {
1340
1349
  if (this.rmatch(r)) {
1341
1350
  const o = this.p;
1342
- return i === n ? (this.rawBeginAt = -1, new Ee(this.input, i, o, e, this.file)) : (this.p = n, new ze(this.input, i, n, this.file));
1351
+ return i === n ? (this.rawBeginAt = -1, new Ne(this.input, i, o, e, this.file)) : (this.p = n, new De(this.input, i, n, this.file));
1343
1352
  }
1344
1353
  if (this.rmatch(s))
1345
1354
  break;
@@ -1363,17 +1372,17 @@ class z {
1363
1372
  this.readToDelimiter(`
1364
1373
  `);
1365
1374
  const r = this.p;
1366
- return new ss(this.input, s, r, e, this.file);
1375
+ return new is(this.input, s, r, e, this.file);
1367
1376
  }
1368
1377
  error(e, s = this.p) {
1369
- return new Tt(e, new ne(this.input, s, this.N, this.file));
1378
+ return new bt(e, new ne(this.input, s, this.N, this.file));
1370
1379
  }
1371
1380
  assert(e, s, r) {
1372
1381
  if (!e)
1373
1382
  throw this.error(typeof s == "function" ? s() : s, r);
1374
1383
  }
1375
1384
  snapshot(e = this.p) {
1376
- return JSON.stringify(wt(this.input.slice(e, this.N), 32));
1385
+ return JSON.stringify(kt(this.input.slice(e, this.N), 32));
1377
1386
  }
1378
1387
  /**
1379
1388
  * @deprecated use #readIdentifier instead
@@ -1412,7 +1421,7 @@ class z {
1412
1421
  let i;
1413
1422
  this.skipBlank();
1414
1423
  const n = e ? "=" : ":";
1415
- return this.peek() === n && (++this.p, i = this.readValue()), new Gt(this.input, s, this.p, r, i, this.file);
1424
+ return this.peek() === n && (++this.p, i = this.readValue()), new Kt(this.input, s, this.p, r, i, this.file);
1416
1425
  }
1417
1426
  remaining() {
1418
1427
  return this.input.slice(this.p, this.N);
@@ -1432,13 +1441,13 @@ class z {
1432
1441
  readValue() {
1433
1442
  this.skipBlank();
1434
1443
  const e = this.p, s = this.readLiteral() || this.readQuoted() || this.readRange() || this.readNumber(), r = this.readProperties(!s);
1435
- return r.length ? new De(s, r, this.input, e, this.p) : s;
1444
+ return r.length ? new Me(s, r, this.input, e, this.p) : s;
1436
1445
  }
1437
1446
  readScopeValue() {
1438
1447
  this.skipBlank();
1439
1448
  const e = this.p, s = this.readProperties();
1440
1449
  if (s.length)
1441
- return new De(void 0, s, this.input, e, this.p);
1450
+ return new Me(void 0, s, this.input, e, this.p);
1442
1451
  }
1443
1452
  readProperties(e = !0) {
1444
1453
  const s = [];
@@ -1471,8 +1480,8 @@ class z {
1471
1480
  readNumber() {
1472
1481
  this.skipBlank();
1473
1482
  let e = !1, s = !1, r = 0;
1474
- for (this.peekType() & Rt && r++; this.p + r <= this.N; )
1475
- if (this.peekType(r) & Ot)
1483
+ for (this.peekType() & zt && r++; this.p + r <= this.N; )
1484
+ if (this.peekType(r) & Et)
1476
1485
  s = !0, r++;
1477
1486
  else if (this.peek(r) === "." && this.peek(r + 1) !== ".") {
1478
1487
  if (e || !s)
@@ -1481,7 +1490,7 @@ class z {
1481
1490
  } else
1482
1491
  break;
1483
1492
  if (s && !Q(this.peek(r))) {
1484
- const i = new Wt(this.input, this.p, this.p + r, this.file);
1493
+ const i = new Jt(this.input, this.p, this.p + r, this.file);
1485
1494
  return this.advance(r), i;
1486
1495
  }
1487
1496
  }
@@ -1490,7 +1499,7 @@ class z {
1490
1499
  const e = this.matchTrie(this.literalTrie);
1491
1500
  if (e === -1)
1492
1501
  return;
1493
- const s = new Yt(this.input, this.p, e, this.file);
1502
+ const s = new Qt(this.input, this.p, e, this.file);
1494
1503
  return this.p = e, s;
1495
1504
  }
1496
1505
  readRange() {
@@ -1502,7 +1511,7 @@ class z {
1502
1511
  const s = this.readValueOrThrow();
1503
1512
  this.p += 2;
1504
1513
  const r = this.readValueOrThrow();
1505
- return ++this.p, new ts(this.input, e, this.p, s, r, this.file);
1514
+ return ++this.p, new rs(this.input, e, this.p, s, r, this.file);
1506
1515
  }
1507
1516
  readValueOrThrow() {
1508
1517
  const e = this.readValue();
@@ -1511,13 +1520,13 @@ class z {
1511
1520
  readQuoted() {
1512
1521
  this.skipBlank();
1513
1522
  const e = this.p;
1514
- if (!(this.peekType() & ve))
1523
+ if (!(this.peekType() & Fe))
1515
1524
  return;
1516
1525
  ++this.p;
1517
1526
  let s = !1;
1518
1527
  for (; this.p < this.N && (++this.p, !(this.input[this.p - 1] === this.input[e] && !s)); )
1519
1528
  s ? s = !1 : this.input[this.p - 1] === "\\" && (s = !0);
1520
- return new es(this.input, e, this.p, this.file);
1529
+ return new ss(this.input, e, this.p, this.file);
1521
1530
  }
1522
1531
  *readFileNameTemplate(e) {
1523
1532
  const { outputDelimiterLeft: s } = e, r = [",", " ", s], i = new Set(r);
@@ -1547,7 +1556,7 @@ class z {
1547
1556
  ++this.p;
1548
1557
  }
1549
1558
  }
1550
- class As {
1559
+ class js {
1551
1560
  constructor(e, s) {
1552
1561
  this.handlers = {}, this.stopRequested = !1, this.tokens = e, this.parseToken = s;
1553
1562
  }
@@ -1573,12 +1582,12 @@ class As {
1573
1582
  return this.stopRequested = !0, this;
1574
1583
  }
1575
1584
  }
1576
- class ge {
1585
+ class me {
1577
1586
  constructor(e) {
1578
1587
  this.token = e;
1579
1588
  }
1580
1589
  }
1581
- class m extends ge {
1590
+ class m extends me {
1582
1591
  constructor(e, s, r) {
1583
1592
  super(e), this.name = e.name, this.liquid = r, this.tokenizer = e.tokenizer;
1584
1593
  }
@@ -1597,7 +1606,7 @@ class W {
1597
1606
  return s;
1598
1607
  }
1599
1608
  }
1600
- function Vs(t) {
1609
+ function Us(t) {
1601
1610
  return class extends m {
1602
1611
  constructor(e, s, r) {
1603
1612
  super(e, s, r), w(t.parse) && t.parse.call(this, e, s);
@@ -1608,28 +1617,28 @@ function Vs(t) {
1608
1617
  }
1609
1618
  };
1610
1619
  }
1611
- function Bs(t) {
1620
+ function Hs(t) {
1612
1621
  return k(t);
1613
1622
  }
1614
- class nt {
1623
+ class at {
1615
1624
  constructor(e, s, r, i) {
1616
- this.name = e, this.handler = w(s) ? s : w(s == null ? void 0 : s.handler) ? s.handler : Je, this.raw = !w(s) && !!(s != null && s.raw), this.args = r, this.liquid = i;
1625
+ this.name = e, this.handler = w(s) ? s : w(s == null ? void 0 : s.handler) ? s.handler : Qe, this.raw = !w(s) && !!(s != null && s.raw), this.args = r, this.liquid = i;
1617
1626
  }
1618
1627
  *render(e, s) {
1619
1628
  const r = [];
1620
1629
  for (const i of this.args)
1621
- Bs(i) ? r.push([i[0], yield y(i[1], s)]) : r.push(yield y(i, s));
1630
+ Hs(i) ? r.push([i[0], yield y(i[1], s)]) : r.push(yield y(i, s));
1622
1631
  return yield this.handler.apply({ context: s, liquid: this.liquid }, [e, ...r]);
1623
1632
  }
1624
1633
  }
1625
- class _ {
1634
+ class v {
1626
1635
  /**
1627
1636
  * @param str the value to be valuated, eg.: "foobar" | truncate: 3
1628
1637
  */
1629
1638
  constructor(e, s) {
1630
1639
  this.filters = [];
1631
1640
  const r = typeof e == "string" ? new z(e, s.options.operators).readFilteredValue() : e;
1632
- this.initial = r.initial, this.filters = r.filters.map(({ name: i, args: n }) => new nt(i, this.getFilter(s, i), n, s));
1641
+ this.initial = r.initial, this.filters = r.filters.map(({ name: i, args: n }) => new at(i, this.getFilter(s, i), n, s));
1633
1642
  }
1634
1643
  *value(e, s) {
1635
1644
  s = s || e.opts.lenientIf && this.filters.length > 0 && this.filters[0].name === "default";
@@ -1643,21 +1652,21 @@ class _ {
1643
1652
  return b(r || !e.options.strictFilters, () => `undefined filter: ${s}`), r;
1644
1653
  }
1645
1654
  }
1646
- class js extends ge {
1655
+ class Ws extends me {
1647
1656
  constructor(e, s) {
1648
1657
  var r;
1649
1658
  super(e);
1650
1659
  const i = new z(e.input, s.options.operators, e.file, e.contentRange);
1651
- this.value = new _(i.readFilteredValue(), s);
1660
+ this.value = new v(i.readFilteredValue(), s);
1652
1661
  const n = this.value.filters, o = s.options.outputEscape;
1653
- !(!((r = n[n.length - 1]) === null || r === void 0) && r.raw) && o && n.push(new nt(toString.call(o), o, [], s));
1662
+ !(!((r = n[n.length - 1]) === null || r === void 0) && r.raw) && o && n.push(new at(toString.call(o), o, [], s));
1654
1663
  }
1655
1664
  *render(e, s) {
1656
1665
  const r = yield this.value.value(e, !1);
1657
1666
  s.write(r);
1658
1667
  }
1659
1668
  }
1660
- class Us extends ge {
1669
+ class Ys extends me {
1661
1670
  constructor(e) {
1662
1671
  super(e), this.str = e.getContent();
1663
1672
  }
@@ -1669,12 +1678,12 @@ var A;
1669
1678
  (function(t) {
1670
1679
  t.Partials = "partials", t.Layouts = "layouts", t.Root = "root";
1671
1680
  })(A || (A = {}));
1672
- class Hs {
1681
+ class Js {
1673
1682
  constructor(e) {
1674
1683
  if (this.options = e, e.relativeReference) {
1675
1684
  const s = e.fs.sep;
1676
1685
  b(s, "`fs.sep` is required for relative reference");
1677
- const r = new RegExp(["." + s, ".." + s, "./", "../"].map((i) => ft(i)).join("|"));
1686
+ const r = new RegExp(["." + s, ".." + s, "./", "../"].map((i) => gt(i)).join("|"));
1678
1687
  this.shouldLoadRelative = (i) => r.test(i);
1679
1688
  } else
1680
1689
  this.shouldLoadRelative = (s) => !1;
@@ -1717,7 +1726,7 @@ class Hs {
1717
1726
  }
1718
1727
  class M {
1719
1728
  constructor(e) {
1720
- this.liquid = e, this.cache = this.liquid.options.cache, this.fs = this.liquid.options.fs, this.parseFile = this.cache ? this._parseFileCached : this._parseFile, this.loader = new Hs(this.liquid.options), this.parseLimit = new he("parse length", e.options.parseLimit);
1729
+ this.liquid = e, this.cache = this.liquid.options.cache, this.fs = this.liquid.options.fs, this.parseFile = this.cache ? this._parseFileCached : this._parseFile, this.loader = new Js(this.liquid.options), this.parseLimit = new he("parse length", e.options.parseLimit);
1721
1730
  }
1722
1731
  parse(e, s) {
1723
1732
  e = String(e), this.parseLimit.use(e.length);
@@ -1737,7 +1746,7 @@ class M {
1737
1746
  throw n;
1738
1747
  }
1739
1748
  if (i.length)
1740
- throw new Qe(i);
1749
+ throw new Ze(i);
1741
1750
  return r;
1742
1751
  }
1743
1752
  parseToken(e, s) {
@@ -1746,13 +1755,13 @@ class M {
1746
1755
  const r = this.liquid.tags[e.name];
1747
1756
  return b(r, `tag "${e.name}" not found`), new r(e, s, this.liquid, this);
1748
1757
  }
1749
- return Ys(e) ? new js(e, this.liquid) : new Us(e);
1758
+ return Zs(e) ? new Ws(e, this.liquid) : new Ys(e);
1750
1759
  } catch (r) {
1751
- throw B.is(r) ? r : new kt(r, e);
1760
+ throw B.is(r) ? r : new xt(r, e);
1752
1761
  }
1753
1762
  }
1754
1763
  parseStream(e) {
1755
- return new As(e, (s, r) => this.parseToken(s, r));
1764
+ return new js(e, (s, r) => this.parseToken(s, r));
1756
1765
  }
1757
1766
  *_parseFileCached(e, s, r = A.Root, i) {
1758
1767
  const n = this.cache, o = this.loader.shouldLoadRelative(e) ? i + "," + e : r + ":" + e, a = yield n.read(o);
@@ -1762,8 +1771,8 @@ class M {
1762
1771
  n.write(o, h);
1763
1772
  try {
1764
1773
  return yield h;
1765
- } catch (c) {
1766
- throw n.remove(o), c;
1774
+ } catch (u) {
1775
+ throw n.remove(o), u;
1767
1776
  }
1768
1777
  }
1769
1778
  *_parseFile(e, s, r = A.Root, i) {
@@ -1775,28 +1784,28 @@ var g;
1775
1784
  (function(t) {
1776
1785
  t[t.Number = 1] = "Number", t[t.Literal = 2] = "Literal", t[t.Tag = 4] = "Tag", t[t.Output = 8] = "Output", t[t.HTML = 16] = "HTML", t[t.Filter = 32] = "Filter", t[t.Hash = 64] = "Hash", t[t.PropertyAccess = 128] = "PropertyAccess", t[t.Word = 256] = "Word", t[t.Range = 512] = "Range", t[t.Quoted = 1024] = "Quoted", t[t.Operator = 2048] = "Operator", t[t.FilteredValue = 4096] = "FilteredValue", t[t.Delimited = 12] = "Delimited";
1777
1786
  })(g || (g = {}));
1778
- function Ws(t) {
1787
+ function Qs(t) {
1779
1788
  return !!(q(t) & g.Delimited);
1780
1789
  }
1781
- function ot(t) {
1790
+ function lt(t) {
1782
1791
  return q(t) === g.Operator;
1783
1792
  }
1784
- function me(t) {
1793
+ function ye(t) {
1785
1794
  return q(t) === g.HTML;
1786
1795
  }
1787
- function Ys(t) {
1796
+ function Zs(t) {
1788
1797
  return q(t) === g.Output;
1789
1798
  }
1790
1799
  function j(t) {
1791
1800
  return q(t) === g.Tag;
1792
1801
  }
1793
- function Js(t) {
1802
+ function Gs(t) {
1794
1803
  return q(t) === g.Quoted;
1795
1804
  }
1796
- function Qs(t) {
1805
+ function Xs(t) {
1797
1806
  return q(t) === g.PropertyAccess;
1798
1807
  }
1799
- function Zs(t) {
1808
+ function Ks(t) {
1800
1809
  return q(t) === g.Range;
1801
1810
  }
1802
1811
  function q(t) {
@@ -1804,8 +1813,8 @@ function q(t) {
1804
1813
  }
1805
1814
  class I {
1806
1815
  constructor(e = {}, s = U, r = {}, { memoryLimit: i, renderLimit: n } = {}) {
1807
- var o, a, l, h, c;
1808
- this.scopes = [{}], this.registers = {}, this.sync = !!r.sync, this.opts = s, this.globals = (o = r.globals) !== null && o !== void 0 ? o : s.globals, this.environments = te(e) ? e : Object(e), this.strictVariables = (a = r.strictVariables) !== null && a !== void 0 ? a : this.opts.strictVariables, this.ownPropertyOnly = (l = r.ownPropertyOnly) !== null && l !== void 0 ? l : s.ownPropertyOnly, this.memoryLimit = i ?? new he("memory alloc", (h = r.memoryLimit) !== null && h !== void 0 ? h : s.memoryLimit), this.renderLimit = n ?? new he("template render", performance.now() + ((c = r.renderLimit) !== null && c !== void 0 ? c : s.renderLimit));
1816
+ var o, a, l, h, u;
1817
+ this.scopes = [{}], this.registers = {}, this.sync = !!r.sync, this.opts = s, this.globals = (o = r.globals) !== null && o !== void 0 ? o : s.globals, this.environments = te(e) ? e : Object(e), this.strictVariables = (a = r.strictVariables) !== null && a !== void 0 ? a : this.opts.strictVariables, this.ownPropertyOnly = (l = r.ownPropertyOnly) !== null && l !== void 0 ? l : s.ownPropertyOnly, this.memoryLimit = i ?? new he("memory alloc", (h = r.memoryLimit) !== null && h !== void 0 ? h : s.memoryLimit), this.renderLimit = n ?? new he("template render", rt().now() + ((u = r.renderLimit) !== null && u !== void 0 ? u : s.renderLimit));
1809
1818
  }
1810
1819
  getRegister(e) {
1811
1820
  return this.registers[e] = this.registers[e] || {};
@@ -1842,10 +1851,10 @@ class I {
1842
1851
  return D(this._getFromScope(e, s));
1843
1852
  }
1844
1853
  *_getFromScope(e, s, r = this.strictVariables) {
1845
- O(s) && (s = s.split("."));
1854
+ R(s) && (s = s.split("."));
1846
1855
  for (let i = 0; i < s.length; i++)
1847
- if (e = yield Gs(e, s[i], this.ownPropertyOnly), r && pt(e))
1848
- throw new _t(s.slice(0, i + 1).join("."));
1856
+ if (e = yield er(e, s[i], this.ownPropertyOnly), r && mt(e))
1857
+ throw new Lt(s.slice(0, i + 1).join("."));
1849
1858
  return e;
1850
1859
  }
1851
1860
  push(e) {
@@ -1876,28 +1885,28 @@ class I {
1876
1885
  return e in this.environments ? this.environments : this.globals;
1877
1886
  }
1878
1887
  }
1879
- function Gs(t, e, s) {
1880
- if (t = Ue(t), R(t))
1888
+ function er(t, e, s) {
1889
+ if (t = He(t), _(t))
1881
1890
  return t;
1882
1891
  if (k(t) && e < 0)
1883
1892
  return t[t.length + +e];
1884
- const r = Xs(t, e, s);
1885
- return r === void 0 && t instanceof V ? t.liquidMethodMissing(e) : w(r) ? r.call(t) : e === "size" ? tr(t) : e === "first" ? Ks(t) : e === "last" ? er(t) : r;
1893
+ const r = tr(t, e, s);
1894
+ return r === void 0 && t instanceof V ? t.liquidMethodMissing(e) : w(r) ? r.call(t) : e === "size" ? ir(t) : e === "first" ? sr(t) : e === "last" ? rr(t) : r;
1886
1895
  }
1887
- function Xs(t, e, s) {
1888
- if (!(s && !Object.hasOwnProperty.call(t, e) && !(t instanceof V)))
1896
+ function tr(t, e, s) {
1897
+ if (!(s && !ce.call(t, e) && !(t instanceof V)))
1889
1898
  return t[e];
1890
1899
  }
1891
- function Ks(t) {
1900
+ function sr(t) {
1892
1901
  return k(t) ? t[0] : t.first;
1893
1902
  }
1894
- function er(t) {
1903
+ function rr(t) {
1895
1904
  return k(t) ? t[t.length - 1] : t.last;
1896
1905
  }
1897
- function tr(t) {
1898
- if (t.hasOwnProperty("size") || t.size !== void 0)
1906
+ function ir(t) {
1907
+ if (ce.call(t, "size") || t.size !== void 0)
1899
1908
  return t.size;
1900
- if (k(t) || O(t))
1909
+ if (k(t) || R(t))
1901
1910
  return t.length;
1902
1911
  if (typeof t == "object")
1903
1912
  return Object.keys(t).length;
@@ -1906,143 +1915,143 @@ var C;
1906
1915
  (function(t) {
1907
1916
  t[t.OUTPUT = 0] = "OUTPUT", t[t.STORE = 1] = "STORE";
1908
1917
  })(C || (C = {}));
1909
- const sr = x(Math.abs), rr = x(Math.max), ir = x(Math.min), nr = x(Math.ceil), or = x((t, e, s = !1) => s ? Math.floor(t / e) : t / e), ar = x(Math.floor), lr = x((t, e) => t - e), hr = x((t, e) => t % e), ur = x((t, e) => t * e);
1910
- function cr(t, e = 0) {
1918
+ const nr = x(Math.abs), or = x(Math.max), ar = x(Math.min), lr = x(Math.ceil), hr = x((t, e, s = !1) => s ? Math.floor(t / e) : t / e), cr = x(Math.floor), ur = x((t, e) => t - e), dr = x((t, e) => t % e), fr = x((t, e) => t * e);
1919
+ function pr(t, e = 0) {
1911
1920
  t = d(t), e = d(e);
1912
1921
  const s = Math.pow(10, e);
1913
1922
  return Math.round(t * s) / s;
1914
1923
  }
1915
- function dr(t, e) {
1924
+ function gr(t, e) {
1916
1925
  return t = d(t), e = d(e), Number(t) + Number(e);
1917
1926
  }
1918
- var fr = /* @__PURE__ */ Object.freeze({
1927
+ var mr = /* @__PURE__ */ Object.freeze({
1919
1928
  __proto__: null,
1920
- abs: sr,
1921
- at_least: rr,
1922
- at_most: ir,
1923
- ceil: nr,
1924
- divided_by: or,
1925
- floor: ar,
1926
- minus: lr,
1927
- modulo: hr,
1928
- times: ur,
1929
- round: cr,
1930
- plus: dr
1929
+ abs: nr,
1930
+ at_least: or,
1931
+ at_most: ar,
1932
+ ceil: lr,
1933
+ divided_by: hr,
1934
+ floor: cr,
1935
+ minus: ur,
1936
+ modulo: dr,
1937
+ times: fr,
1938
+ round: pr,
1939
+ plus: gr
1931
1940
  });
1932
- const pr = (t) => decodeURIComponent(u(t)).replace(/\+/g, " "), gr = (t) => encodeURIComponent(u(t)).replace(/%20/g, "+"), mr = (t) => encodeURIComponent(u(t)).replace(/%20/g, "+").replace(/[!'()*]/g, (e) => "%" + e.charCodeAt(0).toString(16).toUpperCase()), yr = (t) => encodeURI(u(t)).replace(/%5B/g, "[").replace(/%5D/g, "]"), Ce = /[^\p{M}\p{L}\p{Nd}]+/ug, wr = {
1941
+ const yr = (t) => decodeURIComponent(c(t)).replace(/\+/g, " "), wr = (t) => encodeURIComponent(c(t)).replace(/%20/g, "+"), Tr = (t) => encodeURIComponent(c(t)).replace(/%20/g, "+").replace(/[!'()*]/g, (e) => "%" + e.charCodeAt(0).toString(16).toUpperCase()), kr = (t) => encodeURI(c(t)).replace(/%5B/g, "[").replace(/%5D/g, "]"), Ve = /[^\p{M}\p{L}\p{Nd}]+/ug, br = {
1933
1942
  raw: /\s+/g,
1934
- default: Ce,
1943
+ default: Ve,
1935
1944
  pretty: /[^\p{M}\p{L}\p{Nd}._~!$&'()+,;=@]+/ug,
1936
1945
  ascii: /[^A-Za-z0-9]+/g,
1937
- latin: Ce,
1946
+ latin: Ve,
1938
1947
  none: null
1939
1948
  };
1940
- function Tr(t, e = "default", s = !1) {
1941
- t = u(t);
1942
- const r = wr[e];
1943
- return r && (e === "latin" && (t = kr(t)), t = t.replace(r, "-").replace(/^-|-$/g, "")), s ? t : t.toLowerCase();
1949
+ function xr(t, e = "default", s = !1) {
1950
+ t = c(t);
1951
+ const r = br[e];
1952
+ return r && (e === "latin" && (t = _r(t)), t = t.replace(r, "-").replace(/^-|-$/g, "")), s ? t : t.toLowerCase();
1944
1953
  }
1945
- function kr(t) {
1954
+ function _r(t) {
1946
1955
  return t.replace(/[àáâãäå]/g, "a").replace(/[æ]/g, "ae").replace(/[ç]/g, "c").replace(/[èéêë]/g, "e").replace(/[ìíîï]/g, "i").replace(/[ð]/g, "d").replace(/[ñ]/g, "n").replace(/[òóôõöø]/g, "o").replace(/[ùúûü]/g, "u").replace(/[ýÿ]/g, "y").replace(/[ß]/g, "ss").replace(/[œ]/g, "oe").replace(/[þ]/g, "th").replace(/[ẞ]/g, "SS").replace(/[Œ]/g, "OE").replace(/[Þ]/g, "TH");
1947
1956
  }
1948
- var br = /* @__PURE__ */ Object.freeze({
1957
+ var vr = /* @__PURE__ */ Object.freeze({
1949
1958
  __proto__: null,
1950
- url_decode: pr,
1951
- url_encode: gr,
1952
- cgi_escape: mr,
1953
- uri_escape: yr,
1954
- slugify: Tr
1959
+ url_decode: yr,
1960
+ url_encode: wr,
1961
+ cgi_escape: Tr,
1962
+ uri_escape: kr,
1963
+ slugify: xr
1955
1964
  });
1956
- const xr = x(function(t, e) {
1957
- const s = T(t), r = e === void 0 ? " " : e, i = s.length * (1 + r.length);
1965
+ const Lr = x(function(t, e) {
1966
+ const s = T(t), r = _(e) ? " " : c(e), i = s.length * (1 + r.length);
1958
1967
  return this.context.memoryLimit.use(i), s.join(r);
1959
- }), _r = x((t) => k(t) ? He(t) : ""), vr = x((t) => k(t) ? t[0] : ""), Lr = x(function(t) {
1968
+ }), Fr = x((t) => k(t) ? We(t) : ""), Sr = x((t) => k(t) ? t[0] : ""), Or = x(function(t) {
1960
1969
  const e = T(t);
1961
1970
  return this.context.memoryLimit.use(e.length), [...e].reverse();
1962
1971
  });
1963
- function* Fr(t, e) {
1972
+ function* Rr(t, e) {
1964
1973
  const s = [], r = T(t);
1965
1974
  this.context.memoryLimit.use(r.length);
1966
1975
  for (const i of r)
1967
1976
  s.push([
1968
1977
  i,
1969
- e ? yield this.context._getFromScope(i, u(e).split("."), !1) : i
1978
+ e ? yield this.context._getFromScope(i, c(e).split("."), !1) : i
1970
1979
  ]);
1971
1980
  return s.sort((i, n) => {
1972
1981
  const o = i[1], a = n[1];
1973
1982
  return o < a ? -1 : o > a ? 1 : 0;
1974
1983
  }).map((i) => i[0]);
1975
1984
  }
1976
- function Sr(t, e) {
1977
- const s = u(e), r = e === void 0 ? xe : (n, o) => xe(n[s], o[s]), i = T(t);
1985
+ function Er(t, e) {
1986
+ const s = c(e), r = e === void 0 ? ve : (n, o) => ve(n[s], o[s]), i = T(t);
1978
1987
  return this.context.memoryLimit.use(i.length), [...i].sort(r);
1979
1988
  }
1980
- const Or = (t) => t && t.length || 0;
1981
- function* Rr(t, e) {
1989
+ const zr = (t) => t && t.length || 0;
1990
+ function* Nr(t, e) {
1982
1991
  const s = [], r = T(t);
1983
1992
  this.context.memoryLimit.use(r.length);
1984
1993
  for (const i of r)
1985
- s.push(yield this.context._getFromScope(i, u(e), !1));
1994
+ s.push(yield this.context._getFromScope(i, c(e), !1));
1986
1995
  return s;
1987
1996
  }
1988
- function* Er(t, e) {
1997
+ function* Dr(t, e) {
1989
1998
  let s = 0;
1990
1999
  const r = T(t);
1991
2000
  for (const i of r) {
1992
- const n = Number(e ? yield this.context._getFromScope(i, u(e), !1) : i);
2001
+ const n = Number(e ? yield this.context._getFromScope(i, c(e), !1) : i);
1993
2002
  s += Number.isNaN(n) ? 0 : n;
1994
2003
  }
1995
2004
  return s;
1996
2005
  }
1997
- function zr(t) {
2006
+ function qr(t) {
1998
2007
  const e = T(t);
1999
- return this.context.memoryLimit.use(e.length), e.filter((s) => !R(d(s)));
2008
+ return this.context.memoryLimit.use(e.length), e.filter((s) => !_(d(s)));
2000
2009
  }
2001
- function at(t, e = []) {
2010
+ function ht(t, e = []) {
2002
2011
  const s = T(t), r = T(e);
2003
2012
  return this.context.memoryLimit.use(s.length + r.length), s.concat(r);
2004
2013
  }
2005
- function Nr(t, e) {
2006
- return at.call(this, t, [e]);
2014
+ function Mr(t, e) {
2015
+ return ht.call(this, t, [e]);
2007
2016
  }
2008
- function Dr(t, e) {
2017
+ function Ir(t, e) {
2009
2018
  const s = T(t);
2010
2019
  this.context.memoryLimit.use(s.length);
2011
2020
  const r = [...s];
2012
2021
  return r.unshift(e), r;
2013
2022
  }
2014
- function qr(t) {
2023
+ function $r(t) {
2015
2024
  const e = [...T(t)];
2016
2025
  return e.pop(), e;
2017
2026
  }
2018
- function Mr(t) {
2027
+ function Pr(t) {
2019
2028
  const e = T(t);
2020
2029
  this.context.memoryLimit.use(e.length);
2021
2030
  const s = [...e];
2022
2031
  return s.shift(), s;
2023
2032
  }
2024
- function Ir(t, e, s = 1) {
2025
- return t = d(t), R(t) ? [] : (k(t) || (t = u(t)), e = e < 0 ? t.length + e : e, this.context.memoryLimit.use(s), t.slice(e, e + s));
2033
+ function Cr(t, e, s = 1) {
2034
+ return t = d(t), _(t) ? [] : (k(t) || (t = c(t)), e = e < 0 ? t.length + e : e, this.context.memoryLimit.use(s), t.slice(e, e + s));
2026
2035
  }
2027
- function* $r(t, e, s) {
2036
+ function* Ar(t, e, s) {
2028
2037
  const r = [];
2029
2038
  t = T(t), this.context.memoryLimit.use(t.length);
2030
- const i = new z(u(e)).readScopeValue();
2039
+ const i = new z(c(e)).readScopeValue();
2031
2040
  for (const n of t)
2032
2041
  r.push(yield y(i, this.context.spawn(n)));
2033
2042
  return t.filter((n, o) => s === void 0 ? $(r[o], this.context) : P(r[o], s));
2034
2043
  }
2035
- function* Pr(t, e, s) {
2036
- const r = [], i = new _(u(s), this.liquid), n = T(t);
2044
+ function* Vr(t, e, s) {
2045
+ const r = [], i = new v(c(s), this.liquid), n = T(t);
2037
2046
  this.context.memoryLimit.use(n.length);
2038
2047
  for (const o of n)
2039
2048
  (yield i.value(this.context.spawn({ [e]: o }))) && r.push(o);
2040
2049
  return r;
2041
2050
  }
2042
- function* Cr(t, e) {
2051
+ function* Br(t, e) {
2043
2052
  const s = /* @__PURE__ */ new Map();
2044
2053
  t = T(t);
2045
- const r = new z(u(e)).readScopeValue();
2054
+ const r = new z(c(e)).readScopeValue();
2046
2055
  this.context.memoryLimit.use(t.length);
2047
2056
  for (const i of t) {
2048
2057
  const n = yield y(r, this.context.spawn(i));
@@ -2050,8 +2059,8 @@ function* Cr(t, e) {
2050
2059
  }
2051
2060
  return [...s.entries()].map(([i, n]) => ({ name: i, items: n }));
2052
2061
  }
2053
- function* Ar(t, e, s) {
2054
- const r = /* @__PURE__ */ new Map(), i = new _(u(s), this.liquid);
2062
+ function* jr(t, e, s) {
2063
+ const r = /* @__PURE__ */ new Map(), i = new v(c(s), this.liquid);
2055
2064
  t = T(t), this.context.memoryLimit.use(t.length);
2056
2065
  for (const n of t) {
2057
2066
  const o = yield i.value(this.context.spawn({ [e]: n }));
@@ -2059,80 +2068,78 @@ function* Ar(t, e, s) {
2059
2068
  }
2060
2069
  return [...r.entries()].map(([n, o]) => ({ name: n, items: o }));
2061
2070
  }
2062
- function* Vr(t, e, s) {
2063
- const r = new z(u(e)).readScopeValue(), i = T(t);
2071
+ function* Ur(t, e, s) {
2072
+ const r = new z(c(e)).readScopeValue(), i = T(t);
2064
2073
  for (const n of i) {
2065
2074
  const o = yield y(r, this.context.spawn(n));
2066
2075
  if (P(o, s))
2067
2076
  return n;
2068
2077
  }
2069
2078
  }
2070
- function* Br(t, e, s) {
2071
- const r = new _(u(s), this.liquid), i = T(t);
2079
+ function* Hr(t, e, s) {
2080
+ const r = new v(c(s), this.liquid), i = T(t);
2072
2081
  for (const n of i)
2073
2082
  if (yield r.value(this.context.spawn({ [e]: n })))
2074
2083
  return n;
2075
2084
  }
2076
- function jr(t) {
2077
- t = d(t), this.context.memoryLimit.use(t.length);
2078
- const e = {};
2079
- return (t || []).filter((s) => je.call(e, String(s)) ? !1 : (e[String(s)] = !0, !0));
2085
+ function Wr(t) {
2086
+ return t = T(t), this.context.memoryLimit.use(t.length), [...new Set(t)];
2080
2087
  }
2081
- function Ur(t, e = 1) {
2082
- if (t = d(t), R(t))
2088
+ function Yr(t, e = 1) {
2089
+ if (t = d(t), _(t))
2083
2090
  return [];
2084
- k(t) || (t = u(t)), this.context.memoryLimit.use(e);
2091
+ k(t) || (t = c(t)), this.context.memoryLimit.use(e);
2085
2092
  const s = [...t].sort(() => Math.random() - 0.5);
2086
2093
  return e === 1 ? s[0] : s.slice(0, e);
2087
2094
  }
2088
- var Hr = /* @__PURE__ */ Object.freeze({
2095
+ var Jr = /* @__PURE__ */ Object.freeze({
2089
2096
  __proto__: null,
2090
- join: xr,
2091
- last: _r,
2092
- first: vr,
2093
- reverse: Lr,
2094
- sort: Fr,
2095
- sort_natural: Sr,
2096
- size: Or,
2097
- map: Rr,
2098
- sum: Er,
2099
- compact: zr,
2100
- concat: at,
2101
- push: Nr,
2102
- unshift: Dr,
2103
- pop: qr,
2104
- shift: Mr,
2105
- slice: Ir,
2106
- where: $r,
2107
- where_exp: Pr,
2108
- group_by: Cr,
2109
- group_by_exp: Ar,
2110
- find: Vr,
2111
- find_exp: Br,
2112
- uniq: jr,
2113
- sample: Ur
2097
+ join: Lr,
2098
+ last: Fr,
2099
+ first: Sr,
2100
+ reverse: Or,
2101
+ sort: Rr,
2102
+ sort_natural: Er,
2103
+ size: zr,
2104
+ map: Nr,
2105
+ sum: Dr,
2106
+ compact: qr,
2107
+ concat: ht,
2108
+ push: Mr,
2109
+ unshift: Ir,
2110
+ pop: $r,
2111
+ shift: Pr,
2112
+ slice: Cr,
2113
+ where: Ar,
2114
+ where_exp: Vr,
2115
+ group_by: Br,
2116
+ group_by_exp: jr,
2117
+ find: Ur,
2118
+ find_exp: Hr,
2119
+ uniq: Wr,
2120
+ sample: Yr
2114
2121
  });
2115
- function ye(t, e, s) {
2122
+ function we(t, e, s) {
2116
2123
  var r, i, n;
2117
2124
  const o = ((r = t == null ? void 0 : t.length) !== null && r !== void 0 ? r : 0) + ((i = e == null ? void 0 : e.length) !== null && i !== void 0 ? i : 0) + ((n = s == null ? void 0 : s.length) !== null && n !== void 0 ? n : 0);
2118
2125
  this.context.memoryLimit.use(o);
2119
- const a = ht(t, this.context.opts, s);
2120
- return a ? (e = d(e), e = R(e) ? this.context.opts.dateFormat : u(e), Z(a, e)) : t;
2126
+ const a = ut(t, this.context.opts, s);
2127
+ return a ? (e = d(e), e = _(e) ? this.context.opts.dateFormat : c(e), Z(a, e)) : t;
2121
2128
  }
2122
- function Wr(t) {
2123
- return ye.call(this, t, "%Y-%m-%dT%H:%M:%S%:z");
2129
+ function Qr(t) {
2130
+ return we.call(this, t, "%Y-%m-%dT%H:%M:%S%:z");
2124
2131
  }
2125
- function Yr(t) {
2126
- return ye.call(this, t, "%a, %d %b %Y %H:%M:%S %z");
2132
+ function Zr(t) {
2133
+ return we.call(this, t, "%a, %d %b %Y %H:%M:%S %z");
2127
2134
  }
2128
- function Jr(t, e, s) {
2129
- return lt.call(this, t, "%b", e, s);
2135
+ function Gr(t, e, s) {
2136
+ return ct.call(this, t, "%b", e, s);
2130
2137
  }
2131
- function Qr(t, e, s) {
2132
- return lt.call(this, t, "%B", e, s);
2138
+ function Xr(t, e, s) {
2139
+ return ct.call(this, t, "%B", e, s);
2133
2140
  }
2134
- function lt(t, e, s, r) {
2135
- const i = ht(t, this.context.opts);
2141
+ function ct(t, e, s, r) {
2142
+ const i = ut(t, this.context.opts);
2136
2143
  if (!i)
2137
2144
  return t;
2138
2145
  if (s === "ordinal") {
@@ -2141,125 +2148,125 @@ function lt(t, e, s, r) {
2141
2148
  }
2142
2149
  return Z(i, `%d ${e} %Y`);
2143
2150
  }
2144
- function ht(t, e, s) {
2151
+ function ut(t, e, s) {
2145
2152
  let r;
2146
2153
  const i = s ?? e.timezoneOffset, n = e.locale;
2147
- return t = d(t), t === "now" || t === "today" ? r = new S(Date.now(), n, i) : ce(t) ? r = new S(t * 1e3, n, i) : O(t) ? /^\d+$/.test(t) ? r = new S(+t * 1e3, n, i) : e.preserveTimezones && s === void 0 ? r = S.createDateFixedToTimezone(t, n) : r = new S(t, n, i) : r = new S(t, n, i), r.valid() ? r : void 0;
2154
+ return t = d(t), t === "now" || t === "today" ? r = new O(Date.now(), n, i) : de(t) ? r = new O(t * 1e3, n, i) : R(t) ? /^\d+$/.test(t) ? r = new O(+t * 1e3, n, i) : e.preserveTimezones && s === void 0 ? r = O.createDateFixedToTimezone(t, n) : r = new O(t, n, i) : r = new O(t, n, i), r.valid() ? r : void 0;
2148
2155
  }
2149
- var Zr = /* @__PURE__ */ Object.freeze({
2156
+ var Kr = /* @__PURE__ */ Object.freeze({
2150
2157
  __proto__: null,
2151
- date: ye,
2152
- date_to_xmlschema: Wr,
2153
- date_to_rfc822: Yr,
2154
- date_to_string: Jr,
2155
- date_to_long_string: Qr
2158
+ date: we,
2159
+ date_to_xmlschema: Qr,
2160
+ date_to_rfc822: Zr,
2161
+ date_to_string: Gr,
2162
+ date_to_long_string: Xr
2156
2163
  });
2157
- const ae = /[\u4E00-\u9FFF\uF900-\uFAFF\u3400-\u4DBF\u3040-\u309F\u30A0-\u30FF\uAC00-\uD7AF]/gu, Ae = /[^\u4E00-\u9FFF\uF900-\uFAFF\u3400-\u4DBF\u3040-\u309F\u30A0-\u30FF\uAC00-\uD7AF\s]+/gu;
2158
- function Gr(t, e) {
2164
+ const ae = /[\u4E00-\u9FFF\uF900-\uFAFF\u3400-\u4DBF\u3040-\u309F\u30A0-\u30FF\uAC00-\uD7AF]/gu, Be = /[^\u4E00-\u9FFF\uF900-\uFAFF\u3400-\u4DBF\u3040-\u309F\u30A0-\u30FF\uAC00-\uD7AF\s]+/gu;
2165
+ function ei(t, e) {
2159
2166
  b(arguments.length === 2, "append expect 2 arguments");
2160
- const s = u(t), r = u(e);
2167
+ const s = c(t), r = c(e);
2161
2168
  return this.context.memoryLimit.use(s.length + r.length), s + r;
2162
2169
  }
2163
- function Xr(t, e) {
2170
+ function ti(t, e) {
2164
2171
  b(arguments.length === 2, "prepend expect 2 arguments");
2165
- const s = u(t), r = u(e);
2172
+ const s = c(t), r = c(e);
2166
2173
  return this.context.memoryLimit.use(s.length + r.length), r + s;
2167
2174
  }
2168
- function Kr(t, e) {
2169
- const s = u(t);
2170
- return this.context.memoryLimit.use(s.length), e ? (e = de(u(e)), s.replace(new RegExp(`^[${e}]+`, "g"), "")) : s.replace(/^\s+/, "");
2175
+ function si(t, e) {
2176
+ const s = c(t);
2177
+ return this.context.memoryLimit.use(s.length), e ? (e = fe(c(e)), s.replace(new RegExp(`^[${e}]+`, "g"), "")) : s.replace(/^\s+/, "");
2171
2178
  }
2172
- function ei(t) {
2173
- const e = u(t);
2179
+ function ri(t) {
2180
+ const e = c(t);
2174
2181
  return this.context.memoryLimit.use(e.length), e.toLowerCase();
2175
2182
  }
2176
- function ti(t) {
2177
- const e = u(t);
2178
- return this.context.memoryLimit.use(e.length), u(e).toUpperCase();
2183
+ function ii(t) {
2184
+ const e = c(t);
2185
+ return this.context.memoryLimit.use(e.length), c(e).toUpperCase();
2179
2186
  }
2180
- function si(t, e) {
2181
- const s = u(t);
2182
- return this.context.memoryLimit.use(s.length), s.split(u(e)).join("");
2187
+ function ni(t, e) {
2188
+ const s = c(t);
2189
+ return this.context.memoryLimit.use(s.length), s.split(c(e)).join("");
2183
2190
  }
2184
- function ri(t, e) {
2185
- const s = u(t);
2186
- return this.context.memoryLimit.use(s.length), s.replace(u(e), "");
2191
+ function oi(t, e) {
2192
+ const s = c(t);
2193
+ return this.context.memoryLimit.use(s.length), s.replace(c(e), "");
2187
2194
  }
2188
- function ii(t, e) {
2189
- const s = u(t);
2195
+ function ai(t, e) {
2196
+ const s = c(t);
2190
2197
  this.context.memoryLimit.use(s.length);
2191
- const r = u(e), i = s.lastIndexOf(r);
2198
+ const r = c(e), i = s.lastIndexOf(r);
2192
2199
  return i === -1 ? s : s.substring(0, i) + s.substring(i + r.length);
2193
2200
  }
2194
- function ni(t, e) {
2195
- return t = u(t), this.context.memoryLimit.use(t.length), e ? (e = de(u(e)), t.replace(new RegExp(`[${e}]+$`, "g"), "")) : t.replace(/\s+$/, "");
2201
+ function li(t, e) {
2202
+ return t = c(t), this.context.memoryLimit.use(t.length), e ? (e = fe(c(e)), t.replace(new RegExp(`[${e}]+$`, "g"), "")) : t.replace(/\s+$/, "");
2196
2203
  }
2197
- function oi(t, e) {
2198
- const s = u(t);
2204
+ function hi(t, e) {
2205
+ const s = c(t);
2199
2206
  this.context.memoryLimit.use(s.length);
2200
- const r = s.split(u(e));
2207
+ const r = s.split(c(e));
2201
2208
  for (; r.length && r[r.length - 1] === ""; )
2202
2209
  r.pop();
2203
2210
  return r;
2204
2211
  }
2205
- function ai(t, e) {
2206
- const s = u(t);
2207
- return this.context.memoryLimit.use(s.length), e ? (e = de(u(e)), s.replace(new RegExp(`^[${e}]+`, "g"), "").replace(new RegExp(`[${e}]+$`, "g"), "")) : s.trim();
2212
+ function ci(t, e) {
2213
+ const s = c(t);
2214
+ return this.context.memoryLimit.use(s.length), e ? (e = fe(c(e)), s.replace(new RegExp(`^[${e}]+`, "g"), "").replace(new RegExp(`[${e}]+$`, "g"), "")) : s.trim();
2208
2215
  }
2209
- function li(t) {
2210
- const e = u(t);
2216
+ function ui(t) {
2217
+ const e = c(t);
2211
2218
  return this.context.memoryLimit.use(e.length), e.replace(/\r?\n/gm, "");
2212
2219
  }
2213
- function hi(t) {
2214
- return t = u(t), this.context.memoryLimit.use(t.length), t.charAt(0).toUpperCase() + t.slice(1).toLowerCase();
2220
+ function di(t) {
2221
+ return t = c(t), this.context.memoryLimit.use(t.length), t.charAt(0).toUpperCase() + t.slice(1).toLowerCase();
2215
2222
  }
2216
- function ui(t, e, s) {
2217
- const r = u(t);
2218
- return this.context.memoryLimit.use(r.length), r.split(u(e)).join(s);
2223
+ function fi(t, e, s) {
2224
+ const r = c(t);
2225
+ return this.context.memoryLimit.use(r.length), r.split(c(e)).join(s);
2219
2226
  }
2220
- function ci(t, e, s) {
2221
- const r = u(t);
2222
- return this.context.memoryLimit.use(r.length), r.replace(u(e), s);
2227
+ function pi(t, e, s) {
2228
+ const r = c(t);
2229
+ return this.context.memoryLimit.use(r.length), r.replace(c(e), s);
2223
2230
  }
2224
- function di(t, e, s) {
2225
- const r = u(t);
2231
+ function gi(t, e, s) {
2232
+ const r = c(t);
2226
2233
  this.context.memoryLimit.use(r.length);
2227
- const i = u(e), n = r.lastIndexOf(i);
2234
+ const i = c(e), n = r.lastIndexOf(i);
2228
2235
  if (n === -1)
2229
2236
  return r;
2230
- const o = u(s);
2237
+ const o = c(s);
2231
2238
  return r.substring(0, n) + o + r.substring(n + i.length);
2232
2239
  }
2233
- function fi(t, e = 50, s = "...") {
2234
- const r = u(t);
2240
+ function mi(t, e = 50, s = "...") {
2241
+ const r = c(t);
2235
2242
  return this.context.memoryLimit.use(r.length), r.length <= e ? t : r.substring(0, e - s.length) + s;
2236
2243
  }
2237
- function pi(t, e = 15, s = "...") {
2238
- const r = u(t);
2244
+ function yi(t, e = 15, s = "...") {
2245
+ const r = c(t);
2239
2246
  this.context.memoryLimit.use(r.length);
2240
2247
  const i = r.split(/\s+/);
2241
2248
  e <= 0 && (e = 1);
2242
2249
  let n = i.slice(0, e).join(" ");
2243
2250
  return i.length >= e && (n += s), n;
2244
2251
  }
2245
- function gi(t) {
2246
- const e = u(t);
2252
+ function wi(t) {
2253
+ const e = c(t);
2247
2254
  return this.context.memoryLimit.use(e.length), e.replace(/\s+/g, " ");
2248
2255
  }
2249
- function mi(t, e) {
2250
- const s = u(t);
2256
+ function Ti(t, e) {
2257
+ const s = c(t);
2251
2258
  if (this.context.memoryLimit.use(s.length), t = s.trim(), !t)
2252
2259
  return 0;
2253
2260
  switch (e) {
2254
2261
  case "cjk":
2255
- return (t.match(ae) || []).length + (t.match(Ae) || []).length;
2262
+ return (t.match(ae) || []).length + (t.match(Be) || []).length;
2256
2263
  case "auto":
2257
- return ae.test(t) ? t.match(ae).length + (t.match(Ae) || []).length : t.split(/\s+/).length;
2264
+ return ae.test(t) ? t.match(ae).length + (t.match(Be) || []).length : t.split(/\s+/).length;
2258
2265
  default:
2259
2266
  return t.split(/\s+/).length;
2260
2267
  }
2261
2268
  }
2262
- function yi(t, e = "and") {
2269
+ function ki(t, e = "and") {
2263
2270
  switch (this.context.memoryLimit.use(t.length), t.length) {
2264
2271
  case 0:
2265
2272
  return "";
@@ -2271,41 +2278,41 @@ function yi(t, e = "and") {
2271
2278
  return `${t.slice(0, -1).join(", ")}, ${e} ${t[t.length - 1]}`;
2272
2279
  }
2273
2280
  }
2274
- var wi = /* @__PURE__ */ Object.freeze({
2281
+ var bi = /* @__PURE__ */ Object.freeze({
2275
2282
  __proto__: null,
2276
- append: Gr,
2277
- prepend: Xr,
2278
- lstrip: Kr,
2279
- downcase: ei,
2280
- upcase: ti,
2281
- remove: si,
2282
- remove_first: ri,
2283
- remove_last: ii,
2284
- rstrip: ni,
2285
- split: oi,
2286
- strip: ai,
2287
- strip_newlines: li,
2288
- capitalize: hi,
2289
- replace: ui,
2290
- replace_first: ci,
2291
- replace_last: di,
2292
- truncate: fi,
2293
- truncatewords: pi,
2294
- normalize_whitespace: gi,
2295
- number_of_words: mi,
2296
- array_to_sentence_string: yi
2283
+ append: ei,
2284
+ prepend: ti,
2285
+ lstrip: si,
2286
+ downcase: ri,
2287
+ upcase: ii,
2288
+ remove: ni,
2289
+ remove_first: oi,
2290
+ remove_last: ai,
2291
+ rstrip: li,
2292
+ split: hi,
2293
+ strip: ci,
2294
+ strip_newlines: ui,
2295
+ capitalize: di,
2296
+ replace: fi,
2297
+ replace_first: pi,
2298
+ replace_last: gi,
2299
+ truncate: mi,
2300
+ truncatewords: yi,
2301
+ normalize_whitespace: wi,
2302
+ number_of_words: Ti,
2303
+ array_to_sentence_string: ki
2297
2304
  });
2298
- const Ti = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, Ds), fr), br), Hr), Zr), wi), it);
2299
- class ki extends m {
2305
+ const xi = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, Is), mr), vr), Jr), Kr), bi), ot);
2306
+ class _i extends m {
2300
2307
  constructor(e, s, r) {
2301
- super(e, s, r), this.key = this.tokenizer.readIdentifier().content, this.tokenizer.assert(this.key, "expected variable name"), this.tokenizer.skipBlank(), this.tokenizer.assert(this.tokenizer.peek() === "=", 'expected "="'), this.tokenizer.advance(), this.value = new _(this.tokenizer.readFilteredValue(), this.liquid);
2308
+ super(e, s, r), this.key = this.tokenizer.readIdentifier().content, this.tokenizer.assert(this.key, "expected variable name"), this.tokenizer.skipBlank(), this.tokenizer.assert(this.tokenizer.peek() === "=", 'expected "="'), this.tokenizer.advance(), this.value = new v(this.tokenizer.readFilteredValue(), this.liquid);
2302
2309
  }
2303
2310
  *render(e) {
2304
2311
  e.bottom()[this.key] = yield this.value.value(e, this.liquid.options.lenientIf);
2305
2312
  }
2306
2313
  }
2307
- const Ve = ["offset", "limit", "reversed"];
2308
- class bi extends m {
2314
+ const je = ["offset", "limit", "reversed"];
2315
+ class vi extends m {
2309
2316
  constructor(e, s, r, i) {
2310
2317
  super(e, s, r);
2311
2318
  const n = this.tokenizer.readIdentifier(), o = this.tokenizer.readIdentifier(), a = this.tokenizer.readValue();
@@ -2313,11 +2320,11 @@ class bi extends m {
2313
2320
  throw new Error(`illegal tag: ${e.getText()}`);
2314
2321
  this.variable = n.content, this.collection = a, this.hash = new W(this.tokenizer.remaining()), this.templates = [], this.elseTemplates = [];
2315
2322
  let l;
2316
- const h = i.parseStream(s).on("start", () => l = this.templates).on("tag:else", (c) => {
2317
- K(c.args), l = this.elseTemplates;
2318
- }).on("tag:endfor", (c) => {
2319
- K(c.args), h.stop();
2320
- }).on("template", (c) => l.push(c)).on("end", () => {
2323
+ const h = i.parseStream(s).on("start", () => l = this.templates).on("tag:else", (u) => {
2324
+ K(u.args), l = this.elseTemplates;
2325
+ }).on("tag:endfor", (u) => {
2326
+ K(u.args), h.stop();
2327
+ }).on("template", (u) => l.push(u)).on("end", () => {
2321
2328
  throw new Error(`tag ${e.getText()} not closed`);
2322
2329
  });
2323
2330
  h.start();
@@ -2332,8 +2339,8 @@ class bi extends m {
2332
2339
  const n = "continue-" + this.variable + "-" + this.collection.getText();
2333
2340
  e.push({ continue: e.getRegister(n) });
2334
2341
  const o = yield this.hash.render(e);
2335
- e.pop(), i = (this.liquid.options.orderedFilterParameters ? Object.keys(o).filter((h) => Ve.includes(h)) : Ve.filter((h) => o[h] !== void 0)).reduce((h, c) => c === "offset" ? _i(h, o.offset) : c === "limit" ? vi(h, o.limit) : xi(h), i), e.setRegister(n, (o.offset || 0) + i.length);
2336
- const l = { forloop: new fe(i.length, this.collection.getText(), this.variable) };
2342
+ e.pop(), i = (this.liquid.options.orderedFilterParameters ? Object.keys(o).filter((h) => je.includes(h)) : je.filter((h) => o[h] !== void 0)).reduce((h, u) => u === "offset" ? Fi(h, o.offset) : u === "limit" ? Si(h, o.limit) : Li(h), i), e.setRegister(n, (o.offset || 0) + i.length);
2343
+ const l = { forloop: new pe(i.length, this.collection.getText(), this.variable) };
2337
2344
  e.push(l);
2338
2345
  for (const h of i) {
2339
2346
  if (l[this.variable] = h, yield r.renderTemplates(this.templates, e, s), s.break) {
@@ -2345,16 +2352,16 @@ class bi extends m {
2345
2352
  e.pop();
2346
2353
  }
2347
2354
  }
2348
- function xi(t) {
2355
+ function Li(t) {
2349
2356
  return [...t].reverse();
2350
2357
  }
2351
- function _i(t, e) {
2358
+ function Fi(t, e) {
2352
2359
  return t.slice(e);
2353
2360
  }
2354
- function vi(t, e) {
2361
+ function Si(t, e) {
2355
2362
  return t.slice(0, e);
2356
2363
  }
2357
- class Li extends m {
2364
+ class Oi extends m {
2358
2365
  constructor(e, s, r, i) {
2359
2366
  for (super(e, s, r), this.templates = [], this.variable = this.readVariableName(); s.length; ) {
2360
2367
  const n = s.shift();
@@ -2374,13 +2381,13 @@ class Li extends m {
2374
2381
  return e;
2375
2382
  const s = this.tokenizer.readQuoted();
2376
2383
  if (s)
2377
- return st(s);
2384
+ return it(s);
2378
2385
  throw this.tokenizer.error("invalid capture name");
2379
2386
  }
2380
2387
  }
2381
- class Fi extends m {
2388
+ class Ri extends m {
2382
2389
  constructor(e, s, r, i) {
2383
- super(e, s, r), this.branches = [], this.elseTemplates = [], this.value = new _(this.tokenizer.readFilteredValue(), this.liquid), this.elseTemplates = [];
2390
+ super(e, s, r), this.branches = [], this.elseTemplates = [], this.value = new v(this.tokenizer.readFilteredValue(), this.liquid), this.elseTemplates = [];
2384
2391
  let n = [], o = 0;
2385
2392
  const a = i.parseStream(s).on("tag:when", (l) => {
2386
2393
  if (o > 0)
@@ -2416,7 +2423,7 @@ class Fi extends m {
2416
2423
  n || (yield r.renderTemplates(this.elseTemplates, e, s));
2417
2424
  }
2418
2425
  }
2419
- class Si extends m {
2426
+ class Ei extends m {
2420
2427
  constructor(e, s, r) {
2421
2428
  for (super(e, s, r); s.length; ) {
2422
2429
  const i = s.shift();
@@ -2428,19 +2435,19 @@ class Si extends m {
2428
2435
  render() {
2429
2436
  }
2430
2437
  }
2431
- class Oi extends m {
2438
+ class zi extends m {
2432
2439
  constructor(e, s, r, i) {
2433
2440
  super(e, s, r);
2434
2441
  const n = this.tokenizer;
2435
- for (this.file = we(n, this.liquid, i), this.currentFile = e.file; !n.end(); ) {
2442
+ for (this.file = Te(n, this.liquid, i), this.currentFile = e.file; !n.end(); ) {
2436
2443
  n.skipBlank();
2437
2444
  const o = n.p, a = n.readIdentifier();
2438
2445
  if ((a.content === "with" || a.content === "for") && (n.skipBlank(), n.peek() !== ":")) {
2439
2446
  const l = n.readValue();
2440
2447
  if (l) {
2441
- const h = n.p, c = n.readIdentifier();
2448
+ const h = n.p, u = n.readIdentifier();
2442
2449
  let p;
2443
- c.content === "as" ? p = n.readIdentifier() : n.p = h, this[a.content] = { value: l, alias: p && p.content }, n.skipBlank(), n.peek() === "," && n.advance();
2450
+ u.content === "as" ? p = n.readIdentifier() : n.p = h, this[a.content] = { value: l, alias: p && p.content }, n.skipBlank(), n.peek() === "," && n.advance();
2444
2451
  continue;
2445
2452
  }
2446
2453
  }
@@ -2450,7 +2457,7 @@ class Oi extends m {
2450
2457
  this.hash = new W(n.remaining());
2451
2458
  }
2452
2459
  *render(e, s) {
2453
- const { liquid: r, hash: i } = this, n = yield Te(this.file, e, r);
2460
+ const { liquid: r, hash: i } = this, n = yield ke(this.file, e, r);
2454
2461
  b(n, () => `illegal file path "${n}"`);
2455
2462
  const o = e.spawn(), a = o.bottom();
2456
2463
  if (ee(a, yield i.render(e)), this.with) {
@@ -2458,12 +2465,12 @@ class Oi extends m {
2458
2465
  a[h || n] = yield y(l, e);
2459
2466
  }
2460
2467
  if (this.for) {
2461
- const { value: l, alias: h } = this.for, c = ue(yield y(l, e));
2462
- a.forloop = new fe(c.length, l.getText(), h);
2463
- for (const p of c) {
2468
+ const { value: l, alias: h } = this.for, u = ue(yield y(l, e));
2469
+ a.forloop = new pe(u.length, l.getText(), h);
2470
+ for (const p of u) {
2464
2471
  a[h] = p;
2465
- const L = yield r._parsePartialFile(n, o.sync, this.currentFile);
2466
- yield r.renderer.renderTemplates(L, o, s), a.forloop.next();
2472
+ const F = yield r._parsePartialFile(n, o.sync, this.currentFile);
2473
+ yield r.renderer.renderTemplates(F, o, s), a.forloop.next();
2467
2474
  }
2468
2475
  } else {
2469
2476
  const l = yield r._parsePartialFile(n, o.sync, this.currentFile);
@@ -2471,55 +2478,55 @@ class Oi extends m {
2471
2478
  }
2472
2479
  }
2473
2480
  }
2474
- function we(t, e, s) {
2481
+ function Te(t, e, s) {
2475
2482
  if (e.options.dynamicPartials) {
2476
2483
  const n = t.readValue();
2477
2484
  if (t.assert(n, "illegal file path"), n.getText() === "none")
2478
2485
  return;
2479
- if (Js(n)) {
2480
- const o = s.parse(st(n));
2481
- return Be(o);
2486
+ if (Gs(n)) {
2487
+ const o = s.parse(it(n));
2488
+ return Ue(o);
2482
2489
  }
2483
2490
  return n;
2484
2491
  }
2485
- const r = [...t.readFileNameTemplate(e.options)], i = Be(s.parseTokens(r));
2492
+ const r = [...t.readFileNameTemplate(e.options)], i = Ue(s.parseTokens(r));
2486
2493
  return i === "none" ? void 0 : i;
2487
2494
  }
2488
- function Be(t) {
2489
- return t.length === 1 && me(t[0].token) ? t[0].token.getContent() : t;
2495
+ function Ue(t) {
2496
+ return t.length === 1 && ye(t[0].token) ? t[0].token.getContent() : t;
2490
2497
  }
2491
- function* Te(t, e, s) {
2498
+ function* ke(t, e, s) {
2492
2499
  return typeof t == "string" ? t : Array.isArray(t) ? s.renderer.renderTemplates(t, e) : yield y(t, e);
2493
2500
  }
2494
- class Ri extends m {
2501
+ class Ni extends m {
2495
2502
  constructor(e, s, r, i) {
2496
2503
  super(e, s, r);
2497
2504
  const { tokenizer: n } = e;
2498
- this.file = we(n, this.liquid, i), this.currentFile = e.file;
2505
+ this.file = Te(n, this.liquid, i), this.currentFile = e.file;
2499
2506
  const o = n.p;
2500
2507
  n.readIdentifier().content === "with" ? (n.skipBlank(), n.peek() !== ":" ? this.withVar = n.readValue() : n.p = o) : n.p = o, this.hash = new W(n.remaining(), this.liquid.options.jekyllInclude);
2501
2508
  }
2502
2509
  *render(e, s) {
2503
- const { liquid: r, hash: i, withVar: n } = this, { renderer: o } = r, a = yield Te(this.file, e, r);
2510
+ const { liquid: r, hash: i, withVar: n } = this, { renderer: o } = r, a = yield ke(this.file, e, r);
2504
2511
  b(a, () => `illegal file path "${a}"`);
2505
2512
  const l = e.saveRegister("blocks", "blockMode");
2506
2513
  e.setRegister("blocks", {}), e.setRegister("blockMode", C.OUTPUT);
2507
2514
  const h = yield i.render(e);
2508
2515
  n && (h[a] = yield y(n, e));
2509
- const c = yield r._parsePartialFile(a, e.sync, this.currentFile);
2510
- e.push(e.opts.jekyllInclude ? { include: h } : h), yield o.renderTemplates(c, e, s), e.pop(), e.restoreRegister(l);
2516
+ const u = yield r._parsePartialFile(a, e.sync, this.currentFile);
2517
+ e.push(e.opts.jekyllInclude ? { include: h } : h), yield o.renderTemplates(u, e, s), e.pop(), e.restoreRegister(l);
2511
2518
  }
2512
2519
  }
2513
- class Ei extends m {
2520
+ class Di extends m {
2514
2521
  constructor(e, s, r) {
2515
2522
  super(e, s, r), this.variable = this.tokenizer.readIdentifier().content;
2516
2523
  }
2517
2524
  render(e, s) {
2518
2525
  const r = e.environments;
2519
- ce(r[this.variable]) || (r[this.variable] = 0), s.write(u(--r[this.variable]));
2526
+ de(r[this.variable]) || (r[this.variable] = 0), s.write(c(--r[this.variable]));
2520
2527
  }
2521
2528
  }
2522
- class zi extends m {
2529
+ class qi extends m {
2523
2530
  constructor(e, s, r) {
2524
2531
  super(e, s, r), this.candidates = [];
2525
2532
  const i = this.tokenizer.readValue();
@@ -2537,16 +2544,16 @@ class zi extends m {
2537
2544
  return o = (o + 1) % this.candidates.length, n[i] = o, yield y(a, e);
2538
2545
  }
2539
2546
  }
2540
- class Ni extends m {
2547
+ class Mi extends m {
2541
2548
  constructor(e, s, r, i) {
2542
2549
  super(e, s, r), this.branches = [];
2543
2550
  let n = [];
2544
2551
  i.parseStream(s).on("start", () => this.branches.push({
2545
- value: new _(e.args, this.liquid),
2552
+ value: new v(e.args, this.liquid),
2546
2553
  templates: n = []
2547
2554
  })).on("tag:elsif", (o) => {
2548
2555
  b(!this.elseTemplates, "unexpected elsif after else"), this.branches.push({
2549
- value: new _(o.args, this.liquid),
2556
+ value: new v(o.args, this.liquid),
2550
2557
  templates: n = []
2551
2558
  });
2552
2559
  }).on("tag:else", (o) => {
@@ -2569,20 +2576,20 @@ class Ni extends m {
2569
2576
  yield r.renderTemplates(this.elseTemplates || [], e, s);
2570
2577
  }
2571
2578
  }
2572
- class Di extends m {
2579
+ class Ii extends m {
2573
2580
  constructor(e, s, r) {
2574
2581
  super(e, s, r), this.variable = this.tokenizer.readIdentifier().content;
2575
2582
  }
2576
2583
  render(e, s) {
2577
2584
  const r = e.environments;
2578
- ce(r[this.variable]) || (r[this.variable] = 0);
2585
+ de(r[this.variable]) || (r[this.variable] = 0);
2579
2586
  const i = r[this.variable];
2580
- r[this.variable]++, s.write(u(i));
2587
+ r[this.variable]++, s.write(c(i));
2581
2588
  }
2582
2589
  }
2583
- class qi extends m {
2590
+ class $i extends m {
2584
2591
  constructor(e, s, r, i) {
2585
- super(e, s, r), this.file = we(this.tokenizer, this.liquid, i), this.currentFile = e.file, this.args = new W(this.tokenizer.remaining()), this.templates = i.parseTokens(s);
2592
+ super(e, s, r), this.file = Te(this.tokenizer, this.liquid, i), this.currentFile = e.file, this.args = new W(this.tokenizer.remaining()), this.templates = i.parseTokens(s);
2586
2593
  }
2587
2594
  *render(e, s) {
2588
2595
  const { liquid: r, args: i, file: n } = this, { renderer: o } = r;
@@ -2590,15 +2597,15 @@ class qi extends m {
2590
2597
  e.setRegister("blockMode", C.OUTPUT), yield o.renderTemplates(this.templates, e, s);
2591
2598
  return;
2592
2599
  }
2593
- const a = yield Te(this.file, e, r);
2600
+ const a = yield ke(this.file, e, r);
2594
2601
  b(a, () => `illegal file path "${a}"`);
2595
2602
  const l = yield r._parseLayoutFile(a, e.sync, this.currentFile);
2596
2603
  e.setRegister("blockMode", C.STORE);
2597
- const h = yield o.renderTemplates(this.templates, e), c = e.getRegister("blocks");
2598
- c[""] === void 0 && (c[""] = (p, L) => L.write(h)), e.setRegister("blockMode", C.OUTPUT), e.push(yield i.render(e)), yield o.renderTemplates(l, e, s), e.pop();
2604
+ const h = yield o.renderTemplates(this.templates, e), u = e.getRegister("blocks");
2605
+ u[""] === void 0 && (u[""] = (p, F) => F.write(h)), e.setRegister("blockMode", C.OUTPUT), e.push(yield i.render(e)), yield o.renderTemplates(l, e, s), e.pop();
2599
2606
  }
2600
2607
  }
2601
- class Mi extends m {
2608
+ class Pi extends m {
2602
2609
  constructor(e, s, r, i) {
2603
2610
  super(e, s, r), this.templates = [];
2604
2611
  const n = /\w+/.exec(e.args);
@@ -2613,16 +2620,16 @@ class Mi extends m {
2613
2620
  }
2614
2621
  *render(e, s) {
2615
2622
  const r = this.getBlockRender(e);
2616
- e.getRegister("blockMode") === C.STORE ? e.getRegister("blocks")[this.block] = r : yield r(new Le(), s);
2623
+ e.getRegister("blockMode") === C.STORE ? e.getRegister("blocks")[this.block] = r : yield r(new Se(), s);
2617
2624
  }
2618
2625
  getBlockRender(e) {
2619
2626
  const { liquid: s, templates: r } = this, i = e.getRegister("blocks")[this.block], n = function* (o, a) {
2620
2627
  e.push({ block: o }), yield s.renderer.renderTemplates(r, e, a), e.pop();
2621
2628
  };
2622
- return i ? (o, a) => i(new Le(() => n(o, a)), a) : n;
2629
+ return i ? (o, a) => i(new Se(() => n(o, a)), a) : n;
2623
2630
  }
2624
2631
  }
2625
- class Ii extends m {
2632
+ class Ci extends m {
2626
2633
  constructor(e, s, r) {
2627
2634
  for (super(e, s, r), this.tokens = []; s.length; ) {
2628
2635
  const i = s.shift();
@@ -2636,7 +2643,7 @@ class Ii extends m {
2636
2643
  return this.tokens.map((e) => e.getText()).join("");
2637
2644
  }
2638
2645
  }
2639
- class $i extends fe {
2646
+ class Ai extends pe {
2640
2647
  constructor(e, s, r, i) {
2641
2648
  super(e, r, i), this.length = e, this.cols = s;
2642
2649
  }
@@ -2656,7 +2663,7 @@ class $i extends fe {
2656
2663
  return this.col() === this.cols;
2657
2664
  }
2658
2665
  }
2659
- class Pi extends m {
2666
+ class Vi extends m {
2660
2667
  constructor(e, s, r, i) {
2661
2668
  super(e, s, r);
2662
2669
  const n = this.tokenizer.readIdentifier();
@@ -2666,7 +2673,7 @@ class Pi extends m {
2666
2673
  throw new Error(`illegal tag: ${e.getText()}`);
2667
2674
  this.variable = n.content, this.collection = a, this.args = new W(this.tokenizer.remaining()), this.templates = [];
2668
2675
  let l;
2669
- const h = i.parseStream(s).on("start", () => l = this.templates).on("tag:endtablerow", () => h.stop()).on("template", (c) => l.push(c)).on("end", () => {
2676
+ const h = i.parseStream(s).on("start", () => l = this.templates).on("tag:endtablerow", () => h.stop()).on("template", (u) => l.push(u)).on("end", () => {
2670
2677
  throw new Error(`tag ${e.getText()} not closed`);
2671
2678
  });
2672
2679
  h.start();
@@ -2675,19 +2682,19 @@ class Pi extends m {
2675
2682
  let r = ue(yield y(this.collection, e));
2676
2683
  const i = yield this.args.render(e), n = i.offset || 0, o = i.limit === void 0 ? r.length : i.limit;
2677
2684
  r = r.slice(n, n + o);
2678
- const a = i.cols || r.length, l = this.liquid.renderer, h = new $i(r.length, a, this.collection.getText(), this.variable), c = { tablerowloop: h };
2679
- e.push(c);
2685
+ const a = i.cols || r.length, l = this.liquid.renderer, h = new Ai(r.length, a, this.collection.getText(), this.variable), u = { tablerowloop: h };
2686
+ e.push(u);
2680
2687
  for (let p = 0; p < r.length; p++, h.next())
2681
- c[this.variable] = r[p], h.col0() === 0 && (h.row() !== 1 && s.write("</tr>"), s.write(`<tr class="row${h.row()}">`)), s.write(`<td class="col${h.col()}">`), yield l.renderTemplates(this.templates, e, s), s.write("</td>");
2688
+ u[this.variable] = r[p], h.col0() === 0 && (h.row() !== 1 && s.write("</tr>"), s.write(`<tr class="row${h.row()}">`)), s.write(`<td class="col${h.col()}">`), yield l.renderTemplates(this.templates, e, s), s.write("</td>");
2682
2689
  r.length && s.write("</tr>"), e.pop();
2683
2690
  }
2684
2691
  }
2685
- class Ci extends m {
2692
+ class Bi extends m {
2686
2693
  constructor(e, s, r, i) {
2687
2694
  super(e, s, r), this.branches = [], this.elseTemplates = [];
2688
2695
  let n = [], o = 0;
2689
2696
  i.parseStream(s).on("start", () => this.branches.push({
2690
- value: new _(e.args, this.liquid),
2697
+ value: new v(e.args, this.liquid),
2691
2698
  test: re,
2692
2699
  templates: n = []
2693
2700
  })).on("tag:elsif", (a) => {
@@ -2696,7 +2703,7 @@ class Ci extends m {
2696
2703
  return;
2697
2704
  }
2698
2705
  this.branches.push({
2699
- value: new _(a.args, this.liquid),
2706
+ value: new v(a.args, this.liquid),
2700
2707
  test: $,
2701
2708
  templates: n = []
2702
2709
  });
@@ -2722,19 +2729,19 @@ class Ci extends m {
2722
2729
  yield r.renderTemplates(this.elseTemplates, e, s);
2723
2730
  }
2724
2731
  }
2725
- class Ai extends m {
2732
+ class ji extends m {
2726
2733
  render(e, s) {
2727
2734
  s.break = !0;
2728
2735
  }
2729
2736
  }
2730
- class Vi extends m {
2737
+ class Ui extends m {
2731
2738
  render(e, s) {
2732
2739
  s.continue = !0;
2733
2740
  }
2734
2741
  }
2735
- class Bi extends m {
2742
+ class Hi extends m {
2736
2743
  constructor(e, s, r) {
2737
- super(e, s, r), this.tokenizer.skipBlank(), this.tokenizer.end() || (this.value = new _(this.tokenizer.readFilteredValue(), this.liquid));
2744
+ super(e, s, r), this.tokenizer.skipBlank(), this.tokenizer.end() || (this.value = new v(this.tokenizer.readFilteredValue(), this.liquid));
2738
2745
  }
2739
2746
  *render(e, s) {
2740
2747
  if (!this.value)
@@ -2743,7 +2750,7 @@ class Bi extends m {
2743
2750
  s.write(r);
2744
2751
  }
2745
2752
  }
2746
- class ji extends m {
2753
+ class Wi extends m {
2747
2754
  constructor(e, s, r, i) {
2748
2755
  super(e, s, r);
2749
2756
  const n = this.tokenizer.readLiquidTagTokens(this.liquid.options);
@@ -2753,7 +2760,7 @@ class ji extends m {
2753
2760
  yield this.liquid.renderer.renderTemplates(this.templates, e, s);
2754
2761
  }
2755
2762
  }
2756
- class Ui extends m {
2763
+ class Yi extends m {
2757
2764
  constructor(e, s, r) {
2758
2765
  if (super(e, s, r), e.args.search(/\n\s*[^#\s]/g) !== -1)
2759
2766
  throw new Error("every line of an inline comment must start with a '#' character");
@@ -2761,32 +2768,32 @@ class Ui extends m {
2761
2768
  render() {
2762
2769
  }
2763
2770
  }
2764
- const Hi = {
2765
- assign: ki,
2766
- for: bi,
2767
- capture: Li,
2768
- case: Fi,
2769
- comment: Si,
2770
- include: Ri,
2771
- render: Oi,
2772
- decrement: Ei,
2773
- increment: Di,
2774
- cycle: zi,
2775
- if: Ni,
2776
- layout: qi,
2777
- block: Mi,
2778
- raw: Ii,
2779
- tablerow: Pi,
2780
- unless: Ci,
2781
- break: Ai,
2782
- continue: Vi,
2783
- echo: Bi,
2784
- liquid: ji,
2785
- "#": Ui
2771
+ const Ji = {
2772
+ assign: _i,
2773
+ for: vi,
2774
+ capture: Oi,
2775
+ case: Ri,
2776
+ comment: Ei,
2777
+ include: Ni,
2778
+ render: zi,
2779
+ decrement: Di,
2780
+ increment: Ii,
2781
+ cycle: qi,
2782
+ if: Mi,
2783
+ layout: $i,
2784
+ block: Pi,
2785
+ raw: Ci,
2786
+ tablerow: Vi,
2787
+ unless: Bi,
2788
+ break: ji,
2789
+ continue: Ui,
2790
+ echo: Hi,
2791
+ liquid: Wi,
2792
+ "#": Yi
2786
2793
  };
2787
- class ut {
2794
+ class dt {
2788
2795
  constructor(e = {}) {
2789
- this.renderer = new as(), this.filters = {}, this.tags = {}, this.options = Ms(e), this.parser = new M(this), be(Hi, (s, r) => this.registerTag(r, s)), be(Ti, (s, r) => this.registerFilter(r, s));
2796
+ this.renderer = new cs(), this.filters = {}, this.tags = {}, this.options = Ps(e), this.parser = new M(this), _e(Ji, (s, r) => this.registerTag(r, s)), _e(xi, (s, r) => this.registerFilter(r, s));
2790
2797
  }
2791
2798
  parse(e, s) {
2792
2799
  return new M(this).parse(e, s);
@@ -2796,7 +2803,7 @@ class ut {
2796
2803
  return this.renderer.renderTemplates(e, i);
2797
2804
  }
2798
2805
  render(e, s, r) {
2799
- return F(this, void 0, void 0, function* () {
2806
+ return S(this, void 0, void 0, function* () {
2800
2807
  return N(this._render(e, s, Object.assign(Object.assign({}, r), { sync: !1 })));
2801
2808
  });
2802
2809
  }
@@ -2812,7 +2819,7 @@ class ut {
2812
2819
  return this._render(i, s, r);
2813
2820
  }
2814
2821
  parseAndRender(e, s, r) {
2815
- return F(this, void 0, void 0, function* () {
2822
+ return S(this, void 0, void 0, function* () {
2816
2823
  return N(this._parseAndRender(e, s, Object.assign(Object.assign({}, r), { sync: !1 })));
2817
2824
  });
2818
2825
  }
@@ -2829,7 +2836,7 @@ class ut {
2829
2836
  return new M(this).parseFile(e, s, r, i);
2830
2837
  }
2831
2838
  parseFile(e, s) {
2832
- return F(this, void 0, void 0, function* () {
2839
+ return S(this, void 0, void 0, function* () {
2833
2840
  return N(new M(this).parseFile(e, !1, s));
2834
2841
  });
2835
2842
  }
@@ -2841,7 +2848,7 @@ class ut {
2841
2848
  return yield this._render(i, s, r);
2842
2849
  }
2843
2850
  renderFile(e, s, r) {
2844
- return F(this, void 0, void 0, function* () {
2851
+ return S(this, void 0, void 0, function* () {
2845
2852
  return N(this._renderFile(e, s, Object.assign(Object.assign({}, r), { sync: !1 })));
2846
2853
  });
2847
2854
  }
@@ -2849,17 +2856,17 @@ class ut {
2849
2856
  return D(this._renderFile(e, s, Object.assign(Object.assign({}, r), { sync: !0 })));
2850
2857
  }
2851
2858
  renderFileToNodeStream(e, s, r) {
2852
- return F(this, void 0, void 0, function* () {
2859
+ return S(this, void 0, void 0, function* () {
2853
2860
  const i = yield this.parseFile(e);
2854
2861
  return this.renderToNodeStream(i, s, r);
2855
2862
  });
2856
2863
  }
2857
2864
  _evalValue(e, s) {
2858
- const r = new _(e, this), i = s instanceof I ? s : new I(s, this.options);
2865
+ const r = new v(e, this), i = s instanceof I ? s : new I(s, this.options);
2859
2866
  return r.value(i);
2860
2867
  }
2861
2868
  evalValue(e, s) {
2862
- return F(this, void 0, void 0, function* () {
2869
+ return S(this, void 0, void 0, function* () {
2863
2870
  return N(this._evalValue(e, s));
2864
2871
  });
2865
2872
  }
@@ -2870,10 +2877,10 @@ class ut {
2870
2877
  this.filters[e] = s;
2871
2878
  }
2872
2879
  registerTag(e, s) {
2873
- this.tags[e] = w(s) ? s : Vs(s);
2880
+ this.tags[e] = w(s) ? s : Us(s);
2874
2881
  }
2875
2882
  plugin(e) {
2876
- return e.call(this, ut);
2883
+ return e.call(this, dt);
2877
2884
  }
2878
2885
  express() {
2879
2886
  const e = this;
@@ -2889,5 +2896,5 @@ class ut {
2889
2896
  }
2890
2897
  }
2891
2898
  export {
2892
- ut as L
2899
+ dt as L
2893
2900
  };