handlebars_assets 0.23.4 → 0.23.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 275133dd046896ad9905ebe998590182b3e9e58a
4
- data.tar.gz: 213f51bc1bd6b2724f564d6616f6f88d5e9b1b38
3
+ metadata.gz: c8b34c84840eeb4f4620a11108f0912572dfad5c
4
+ data.tar.gz: 1af75c60e57bcaf03fe005ea8a19130dfa090f27
5
5
  SHA512:
6
- metadata.gz: be2793014a2734c371acc33b5388c866e0d88994f3968fdab9ddbd79d1f7028212d8ff28402a5204e3d5efb03035633393246ff8ff9c020d881c76f59e7a6cba
7
- data.tar.gz: 3a436c81df47ad50c9f31d52e3ad9b347068ff2bf5ce2d5121cda099116ce95c5b0b28947f9a3cb4f5249836e8d309cf22a7ff9fbc1917ed7af4003885f80a99
6
+ metadata.gz: '069aa1f01568f9d5d50685712a0c2d7183a094ddac08a765c25bf7cf63d41516ccd6987ebeacc49cbea58cf397efe952822e9feab4aaa2e9b3d4e87ce37b2982'
7
+ data.tar.gz: ac5c513bf1b293c3416caac16bb0087a2a411e93cd2db6b23d4114a3fc3499e61512184ca52848c5c16e876ed092710e7bc8f4ba458daa7bb11133c9d3b7c2e4
@@ -1,3 +1,15 @@
1
+ ## 0.23.5 (2019-09-25)
2
+
3
+ * Update Handlebars to v4.3.1
4
+
5
+ ## 0.23.4 (2019-06-03)
6
+
7
+ * Update Handlebars to v4.1.2
8
+
9
+ ## 0.23.3 (2019-02-20)
10
+
11
+ * Update Handlebars to v4.1.0
12
+
1
13
  ## 0.23.2 (2017-05-07)
2
14
 
3
15
  * Remove requirement for MultiJSON
@@ -1,3 +1,3 @@
1
1
  module HandlebarsAssets
2
- VERSION = "0.23.4"
2
+ VERSION = "0.23.5"
3
3
  end
@@ -1,7 +1,7 @@
1
1
  /**!
2
2
 
3
3
  @license
4
- handlebars v4.1.2
4
+ handlebars v4.3.1
5
5
 
6
6
  Copyright (C) 2011-2017 by Yehuda Katz
7
7
 
@@ -275,11 +275,13 @@ return /******/ (function(modules) { // webpackBootstrap
275
275
 
276
276
  var _logger2 = _interopRequireDefault(_logger);
277
277
 
278
- var VERSION = '4.1.2';
278
+ var VERSION = '4.3.1';
279
279
  exports.VERSION = VERSION;
280
- var COMPILER_REVISION = 7;
281
-
280
+ var COMPILER_REVISION = 8;
282
281
  exports.COMPILER_REVISION = COMPILER_REVISION;
282
+ var LAST_COMPATIBLE_COMPILER_REVISION = 7;
283
+
284
+ exports.LAST_COMPATIBLE_COMPILER_REVISION = LAST_COMPATIBLE_COMPILER_REVISION;
283
285
  var REVISION_CHANGES = {
284
286
  1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it
285
287
  2: '== 1.0.0-rc.3',
@@ -287,7 +289,8 @@ return /******/ (function(modules) { // webpackBootstrap
287
289
  4: '== 1.x.x',
288
290
  5: '== 2.0.0-alpha.x',
289
291
  6: '>= 2.0.0-beta.1',
290
- 7: '>= 4.0.0'
292
+ 7: '>= 4.0.0 <4.3.0',
293
+ 8: '>= 4.3.0'
291
294
  };
292
295
 
293
296
  exports.REVISION_CHANGES = REVISION_CHANGES;
@@ -371,6 +374,7 @@ return /******/ (function(modules) { // webpackBootstrap
371
374
  exports.createFrame = createFrame;
372
375
  exports.blockParams = blockParams;
373
376
  exports.appendContextPath = appendContextPath;
377
+
374
378
  var escape = {
375
379
  '&': '&amp;',
376
380
  '<': '&lt;',
@@ -588,6 +592,7 @@ return /******/ (function(modules) { // webpackBootstrap
588
592
 
589
593
  exports.__esModule = true;
590
594
  exports.registerDefaultHelpers = registerDefaultHelpers;
595
+ exports.moveHelperToHooks = moveHelperToHooks;
591
596
 
592
597
  var _helpersBlockHelperMissing = __webpack_require__(11);
593
598
 
@@ -627,6 +632,15 @@ return /******/ (function(modules) { // webpackBootstrap
627
632
  _helpersWith2['default'](instance);
628
633
  }
629
634
 
635
+ function moveHelperToHooks(instance, helperName, keepHelper) {
636
+ if (instance.helpers[helperName]) {
637
+ instance.hooks[helperName] = instance.helpers[helperName];
638
+ if (!keepHelper) {
639
+ delete instance.helpers[helperName];
640
+ }
641
+ }
642
+ }
643
+
630
644
  /***/ }),
631
645
  /* 11 */
632
646
  /***/ (function(module, exports, __webpack_require__) {
@@ -1069,23 +1083,28 @@ return /******/ (function(modules) { // webpackBootstrap
1069
1083
 
1070
1084
  var _base = __webpack_require__(4);
1071
1085
 
1086
+ var _helpers = __webpack_require__(10);
1087
+
1072
1088
  function checkRevision(compilerInfo) {
1073
1089
  var compilerRevision = compilerInfo && compilerInfo[0] || 1,
1074
1090
  currentRevision = _base.COMPILER_REVISION;
1075
1091
 
1076
- if (compilerRevision !== currentRevision) {
1077
- if (compilerRevision < currentRevision) {
1078
- var runtimeVersions = _base.REVISION_CHANGES[currentRevision],
1079
- compilerVersions = _base.REVISION_CHANGES[compilerRevision];
1080
- throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');
1081
- } else {
1082
- // Use the embedded version info since the runtime doesn't know about this revision yet
1083
- throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');
1084
- }
1092
+ if (compilerRevision >= _base.LAST_COMPATIBLE_COMPILER_REVISION && compilerRevision <= _base.COMPILER_REVISION) {
1093
+ return;
1094
+ }
1095
+
1096
+ if (compilerRevision < _base.LAST_COMPATIBLE_COMPILER_REVISION) {
1097
+ var runtimeVersions = _base.REVISION_CHANGES[currentRevision],
1098
+ compilerVersions = _base.REVISION_CHANGES[compilerRevision];
1099
+ throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');
1100
+ } else {
1101
+ // Use the embedded version info since the runtime doesn't know about this revision yet
1102
+ throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');
1085
1103
  }
1086
1104
  }
1087
1105
 
1088
1106
  function template(templateSpec, env) {
1107
+
1089
1108
  /* istanbul ignore next */
1090
1109
  if (!env) {
1091
1110
  throw new _exception2['default']('No environment passed to template');
@@ -1097,9 +1116,12 @@ return /******/ (function(modules) { // webpackBootstrap
1097
1116
  templateSpec.main.decorator = templateSpec.main_d;
1098
1117
 
1099
1118
  // Note: Using env.VM references rather than local var references throughout this section to allow
1100
- // for external users to override these as psuedo-supported APIs.
1119
+ // for external users to override these as pseudo-supported APIs.
1101
1120
  env.VM.checkRevision(templateSpec.compiler);
1102
1121
 
1122
+ // backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)
1123
+ var templateWasPrecompiledWithCompilerV7 = templateSpec.compiler && templateSpec.compiler[0] === 7;
1124
+
1103
1125
  function invokePartialWrapper(partial, context, options) {
1104
1126
  if (options.hash) {
1105
1127
  context = Utils.extend({}, context, options.hash);
@@ -1107,13 +1129,15 @@ return /******/ (function(modules) { // webpackBootstrap
1107
1129
  options.ids[0] = true;
1108
1130
  }
1109
1131
  }
1110
-
1111
1132
  partial = env.VM.resolvePartial.call(this, partial, context, options);
1112
- var result = env.VM.invokePartial.call(this, partial, context, options);
1133
+
1134
+ var optionsWithHooks = Utils.extend({}, options, { hooks: this.hooks });
1135
+
1136
+ var result = env.VM.invokePartial.call(this, partial, context, optionsWithHooks);
1113
1137
 
1114
1138
  if (result == null && env.compile) {
1115
1139
  options.partials[options.name] = env.compile(partial, templateSpec.compilerOptions, env);
1116
- result = options.partials[options.name](context, options);
1140
+ result = options.partials[options.name](context, optionsWithHooks);
1117
1141
  }
1118
1142
  if (result != null) {
1119
1143
  if (options.indent) {
@@ -1180,15 +1204,6 @@ return /******/ (function(modules) { // webpackBootstrap
1180
1204
  }
1181
1205
  return value;
1182
1206
  },
1183
- merge: function merge(param, common) {
1184
- var obj = param || common;
1185
-
1186
- if (param && common && param !== common) {
1187
- obj = Utils.extend({}, common, param);
1188
- }
1189
-
1190
- return obj;
1191
- },
1192
1207
  // An empty object to use as replacement for null-contexts
1193
1208
  nullContext: _Object$seal({}),
1194
1209
 
@@ -1225,18 +1240,25 @@ return /******/ (function(modules) { // webpackBootstrap
1225
1240
 
1226
1241
  ret._setup = function (options) {
1227
1242
  if (!options.partial) {
1228
- container.helpers = container.merge(options.helpers, env.helpers);
1243
+ container.helpers = Utils.extend({}, env.helpers, options.helpers);
1229
1244
 
1230
1245
  if (templateSpec.usePartial) {
1231
- container.partials = container.merge(options.partials, env.partials);
1246
+ container.partials = Utils.extend({}, env.partials, options.partials);
1232
1247
  }
1233
1248
  if (templateSpec.usePartial || templateSpec.useDecorators) {
1234
- container.decorators = container.merge(options.decorators, env.decorators);
1249
+ container.decorators = Utils.extend({}, env.decorators, options.decorators);
1235
1250
  }
1251
+
1252
+ container.hooks = {};
1253
+
1254
+ var keepHelperInHelpers = options.allowCallsToHelperMissing || templateWasPrecompiledWithCompilerV7;
1255
+ _helpers.moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);
1256
+ _helpers.moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);
1236
1257
  } else {
1237
1258
  container.helpers = options.helpers;
1238
1259
  container.partials = options.partials;
1239
1260
  container.decorators = options.decorators;
1261
+ container.hooks = options.hooks;
1240
1262
  }
1241
1263
  };
1242
1264
 
@@ -1273,6 +1295,10 @@ return /******/ (function(modules) { // webpackBootstrap
1273
1295
  return prog;
1274
1296
  }
1275
1297
 
1298
+ /**
1299
+ * This is currently part of the official API, therefore implementation details should not be changed.
1300
+ */
1301
+
1276
1302
  function resolvePartial(partial, context, options) {
1277
1303
  if (!partial) {
1278
1304
  if (options.name === '@partial-block') {
@@ -2575,7 +2601,7 @@ return /******/ (function(modules) { // webpackBootstrap
2575
2601
  return;
2576
2602
  }
2577
2603
 
2578
- // We omit the last node if it's whitespace only and not preceeded by a non-content node.
2604
+ // We omit the last node if it's whitespace only and not preceded by a non-content node.
2579
2605
  var original = current.value;
2580
2606
  current.value = current.value.replace(multiple ? /\s+$/ : /[ \t]+$/, '');
2581
2607
  current.leftStripped = current.value !== original;
@@ -3867,7 +3893,7 @@ return /******/ (function(modules) { // webpackBootstrap
3867
3893
  // replace it on the stack with the result of properly
3868
3894
  // invoking blockHelperMissing.
3869
3895
  blockValue: function blockValue(name) {
3870
- var blockHelperMissing = this.aliasable('helpers.blockHelperMissing'),
3896
+ var blockHelperMissing = this.aliasable('container.hooks.blockHelperMissing'),
3871
3897
  params = [this.contextName(0)];
3872
3898
  this.setupHelperArgs(name, 0, params);
3873
3899
 
@@ -3885,7 +3911,7 @@ return /******/ (function(modules) { // webpackBootstrap
3885
3911
  // On stack, after, if lastHelper: value
3886
3912
  ambiguousBlockValue: function ambiguousBlockValue() {
3887
3913
  // We're being a bit cheeky and reusing the options value from the prior exec
3888
- var blockHelperMissing = this.aliasable('helpers.blockHelperMissing'),
3914
+ var blockHelperMissing = this.aliasable('container.hooks.blockHelperMissing'),
3889
3915
  params = [this.contextName(0)];
3890
3916
  this.setupHelperArgs('', 0, params, true);
3891
3917
 
@@ -4176,18 +4202,33 @@ return /******/ (function(modules) { // webpackBootstrap
4176
4202
  // If the helper is not found, `helperMissing` is called.
4177
4203
  invokeHelper: function invokeHelper(paramSize, name, isSimple) {
4178
4204
  var nonHelper = this.popStack(),
4179
- helper = this.setupHelper(paramSize, name),
4180
- simple = isSimple ? [helper.name, ' || '] : '';
4205
+ helper = this.setupHelper(paramSize, name);
4181
4206
 
4182
- var lookup = ['('].concat(simple, nonHelper);
4207
+ var possibleFunctionCalls = [];
4208
+
4209
+ if (isSimple) {
4210
+ // direct call to helper
4211
+ possibleFunctionCalls.push(helper.name);
4212
+ }
4213
+ // call a function from the input object
4214
+ possibleFunctionCalls.push(nonHelper);
4183
4215
  if (!this.options.strict) {
4184
- lookup.push(' || ', this.aliasable('helpers.helperMissing'));
4216
+ possibleFunctionCalls.push(this.aliasable('container.hooks.helperMissing'));
4185
4217
  }
4186
- lookup.push(')');
4187
4218
 
4188
- this.push(this.source.functionCall(lookup, 'call', helper.callParams));
4219
+ var functionLookupCode = ['(', this.itemsSeparatedBy(possibleFunctionCalls, '||'), ')'];
4220
+ var functionCall = this.source.functionCall(functionLookupCode, 'call', helper.callParams);
4221
+ this.push(functionCall);
4189
4222
  },
4190
4223
 
4224
+ itemsSeparatedBy: function itemsSeparatedBy(items, separator) {
4225
+ var result = [];
4226
+ result.push(items[0]);
4227
+ for (var i = 1; i < items.length; i++) {
4228
+ result.push(separator, items[i]);
4229
+ }
4230
+ return result;
4231
+ },
4191
4232
  // [invokeKnownHelper]
4192
4233
  //
4193
4234
  // On stack, before: hash, inverse, program, params..., ...
@@ -4225,7 +4266,7 @@ return /******/ (function(modules) { // webpackBootstrap
4225
4266
  var lookup = ['(', '(helper = ', helperName, ' || ', nonHelper, ')'];
4226
4267
  if (!this.options.strict) {
4227
4268
  lookup[0] = '(helper = ';
4228
- lookup.push(' != null ? helper : ', this.aliasable('helpers.helperMissing'));
4269
+ lookup.push(' != null ? helper : ', this.aliasable('container.hooks.helperMissing'));
4229
4270
  }
4230
4271
 
4231
4272
  this.push(['(', lookup, helper.paramsInit ? ['),(', helper.paramsInit] : [], '),', '(typeof helper === ', this.aliasable('"function"'), ' ? ', this.source.functionCall('helper', 'call', helper.callParams), ' : helper))']);
@@ -1,7 +1,7 @@
1
1
  /**!
2
2
 
3
3
  @license
4
- handlebars v4.1.2
4
+ handlebars v4.3.1
5
5
 
6
6
  Copyright (C) 2011-2017 by Yehuda Katz
7
7
 
@@ -207,11 +207,13 @@ return /******/ (function(modules) { // webpackBootstrap
207
207
 
208
208
  var _logger2 = _interopRequireDefault(_logger);
209
209
 
210
- var VERSION = '4.1.2';
210
+ var VERSION = '4.3.1';
211
211
  exports.VERSION = VERSION;
212
- var COMPILER_REVISION = 7;
213
-
212
+ var COMPILER_REVISION = 8;
214
213
  exports.COMPILER_REVISION = COMPILER_REVISION;
214
+ var LAST_COMPATIBLE_COMPILER_REVISION = 7;
215
+
216
+ exports.LAST_COMPATIBLE_COMPILER_REVISION = LAST_COMPATIBLE_COMPILER_REVISION;
215
217
  var REVISION_CHANGES = {
216
218
  1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it
217
219
  2: '== 1.0.0-rc.3',
@@ -219,7 +221,8 @@ return /******/ (function(modules) { // webpackBootstrap
219
221
  4: '== 1.x.x',
220
222
  5: '== 2.0.0-alpha.x',
221
223
  6: '>= 2.0.0-beta.1',
222
- 7: '>= 4.0.0'
224
+ 7: '>= 4.0.0 <4.3.0',
225
+ 8: '>= 4.3.0'
223
226
  };
224
227
 
225
228
  exports.REVISION_CHANGES = REVISION_CHANGES;
@@ -303,6 +306,7 @@ return /******/ (function(modules) { // webpackBootstrap
303
306
  exports.createFrame = createFrame;
304
307
  exports.blockParams = blockParams;
305
308
  exports.appendContextPath = appendContextPath;
309
+
306
310
  var escape = {
307
311
  '&': '&amp;',
308
312
  '<': '&lt;',
@@ -520,6 +524,7 @@ return /******/ (function(modules) { // webpackBootstrap
520
524
 
521
525
  exports.__esModule = true;
522
526
  exports.registerDefaultHelpers = registerDefaultHelpers;
527
+ exports.moveHelperToHooks = moveHelperToHooks;
523
528
 
524
529
  var _helpersBlockHelperMissing = __webpack_require__(10);
525
530
 
@@ -559,6 +564,15 @@ return /******/ (function(modules) { // webpackBootstrap
559
564
  _helpersWith2['default'](instance);
560
565
  }
561
566
 
567
+ function moveHelperToHooks(instance, helperName, keepHelper) {
568
+ if (instance.helpers[helperName]) {
569
+ instance.hooks[helperName] = instance.helpers[helperName];
570
+ if (!keepHelper) {
571
+ delete instance.helpers[helperName];
572
+ }
573
+ }
574
+ }
575
+
562
576
  /***/ }),
563
577
  /* 10 */
564
578
  /***/ (function(module, exports, __webpack_require__) {
@@ -1001,23 +1015,28 @@ return /******/ (function(modules) { // webpackBootstrap
1001
1015
 
1002
1016
  var _base = __webpack_require__(3);
1003
1017
 
1018
+ var _helpers = __webpack_require__(9);
1019
+
1004
1020
  function checkRevision(compilerInfo) {
1005
1021
  var compilerRevision = compilerInfo && compilerInfo[0] || 1,
1006
1022
  currentRevision = _base.COMPILER_REVISION;
1007
1023
 
1008
- if (compilerRevision !== currentRevision) {
1009
- if (compilerRevision < currentRevision) {
1010
- var runtimeVersions = _base.REVISION_CHANGES[currentRevision],
1011
- compilerVersions = _base.REVISION_CHANGES[compilerRevision];
1012
- throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');
1013
- } else {
1014
- // Use the embedded version info since the runtime doesn't know about this revision yet
1015
- throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');
1016
- }
1024
+ if (compilerRevision >= _base.LAST_COMPATIBLE_COMPILER_REVISION && compilerRevision <= _base.COMPILER_REVISION) {
1025
+ return;
1026
+ }
1027
+
1028
+ if (compilerRevision < _base.LAST_COMPATIBLE_COMPILER_REVISION) {
1029
+ var runtimeVersions = _base.REVISION_CHANGES[currentRevision],
1030
+ compilerVersions = _base.REVISION_CHANGES[compilerRevision];
1031
+ throw new _exception2['default']('Template was precompiled with an older version of Handlebars than the current runtime. ' + 'Please update your precompiler to a newer version (' + runtimeVersions + ') or downgrade your runtime to an older version (' + compilerVersions + ').');
1032
+ } else {
1033
+ // Use the embedded version info since the runtime doesn't know about this revision yet
1034
+ throw new _exception2['default']('Template was precompiled with a newer version of Handlebars than the current runtime. ' + 'Please update your runtime to a newer version (' + compilerInfo[1] + ').');
1017
1035
  }
1018
1036
  }
1019
1037
 
1020
1038
  function template(templateSpec, env) {
1039
+
1021
1040
  /* istanbul ignore next */
1022
1041
  if (!env) {
1023
1042
  throw new _exception2['default']('No environment passed to template');
@@ -1029,9 +1048,12 @@ return /******/ (function(modules) { // webpackBootstrap
1029
1048
  templateSpec.main.decorator = templateSpec.main_d;
1030
1049
 
1031
1050
  // Note: Using env.VM references rather than local var references throughout this section to allow
1032
- // for external users to override these as psuedo-supported APIs.
1051
+ // for external users to override these as pseudo-supported APIs.
1033
1052
  env.VM.checkRevision(templateSpec.compiler);
1034
1053
 
1054
+ // backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)
1055
+ var templateWasPrecompiledWithCompilerV7 = templateSpec.compiler && templateSpec.compiler[0] === 7;
1056
+
1035
1057
  function invokePartialWrapper(partial, context, options) {
1036
1058
  if (options.hash) {
1037
1059
  context = Utils.extend({}, context, options.hash);
@@ -1039,13 +1061,15 @@ return /******/ (function(modules) { // webpackBootstrap
1039
1061
  options.ids[0] = true;
1040
1062
  }
1041
1063
  }
1042
-
1043
1064
  partial = env.VM.resolvePartial.call(this, partial, context, options);
1044
- var result = env.VM.invokePartial.call(this, partial, context, options);
1065
+
1066
+ var optionsWithHooks = Utils.extend({}, options, { hooks: this.hooks });
1067
+
1068
+ var result = env.VM.invokePartial.call(this, partial, context, optionsWithHooks);
1045
1069
 
1046
1070
  if (result == null && env.compile) {
1047
1071
  options.partials[options.name] = env.compile(partial, templateSpec.compilerOptions, env);
1048
- result = options.partials[options.name](context, options);
1072
+ result = options.partials[options.name](context, optionsWithHooks);
1049
1073
  }
1050
1074
  if (result != null) {
1051
1075
  if (options.indent) {
@@ -1112,15 +1136,6 @@ return /******/ (function(modules) { // webpackBootstrap
1112
1136
  }
1113
1137
  return value;
1114
1138
  },
1115
- merge: function merge(param, common) {
1116
- var obj = param || common;
1117
-
1118
- if (param && common && param !== common) {
1119
- obj = Utils.extend({}, common, param);
1120
- }
1121
-
1122
- return obj;
1123
- },
1124
1139
  // An empty object to use as replacement for null-contexts
1125
1140
  nullContext: _Object$seal({}),
1126
1141
 
@@ -1157,18 +1172,25 @@ return /******/ (function(modules) { // webpackBootstrap
1157
1172
 
1158
1173
  ret._setup = function (options) {
1159
1174
  if (!options.partial) {
1160
- container.helpers = container.merge(options.helpers, env.helpers);
1175
+ container.helpers = Utils.extend({}, env.helpers, options.helpers);
1161
1176
 
1162
1177
  if (templateSpec.usePartial) {
1163
- container.partials = container.merge(options.partials, env.partials);
1178
+ container.partials = Utils.extend({}, env.partials, options.partials);
1164
1179
  }
1165
1180
  if (templateSpec.usePartial || templateSpec.useDecorators) {
1166
- container.decorators = container.merge(options.decorators, env.decorators);
1181
+ container.decorators = Utils.extend({}, env.decorators, options.decorators);
1167
1182
  }
1183
+
1184
+ container.hooks = {};
1185
+
1186
+ var keepHelperInHelpers = options.allowCallsToHelperMissing || templateWasPrecompiledWithCompilerV7;
1187
+ _helpers.moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);
1188
+ _helpers.moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);
1168
1189
  } else {
1169
1190
  container.helpers = options.helpers;
1170
1191
  container.partials = options.partials;
1171
1192
  container.decorators = options.decorators;
1193
+ container.hooks = options.hooks;
1172
1194
  }
1173
1195
  };
1174
1196
 
@@ -1205,6 +1227,10 @@ return /******/ (function(modules) { // webpackBootstrap
1205
1227
  return prog;
1206
1228
  }
1207
1229
 
1230
+ /**
1231
+ * This is currently part of the official API, therefore implementation details should not be changed.
1232
+ */
1233
+
1208
1234
  function resolvePartial(partial, context, options) {
1209
1235
  if (!partial) {
1210
1236
  if (options.name === '@partial-block') {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: handlebars_assets
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.23.4
4
+ version: 0.23.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Les Hill
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-01 00:00:00.000000000 Z
11
+ date: 2019-09-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: execjs