@micromag/core 0.3.477 → 0.3.480

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es/hooks.js CHANGED
@@ -1839,7 +1839,8 @@ var useParsedStory = function useParsedStory(story) {
1839
1839
  var parser = useMemo(function () {
1840
1840
  return new StoryParser({
1841
1841
  screensManager: screensManager,
1842
- fieldsManager: fieldsManager
1842
+ fieldsManager: fieldsManager,
1843
+ fieldsPattern: screensManager.getFieldsPattern()
1843
1844
  });
1844
1845
  }, [screensManager, fieldsManager]);
1845
1846
  var newStory = useMemo(function () {
package/es/index.js CHANGED
@@ -1245,11 +1245,13 @@ var _excluded$4 = ["medias"],
1245
1245
  var MediasParser = /*#__PURE__*/function () {
1246
1246
  function MediasParser(_ref) {
1247
1247
  var fieldsManager = _ref.fieldsManager,
1248
- screensManager = _ref.screensManager;
1248
+ screensManager = _ref.screensManager,
1249
+ _ref$fieldsPattern = _ref.fieldsPattern,
1250
+ fieldsPattern = _ref$fieldsPattern === void 0 ? {} : _ref$fieldsPattern;
1249
1251
  _classCallCheck(this, MediasParser);
1250
1252
  this.fieldsManager = fieldsManager;
1251
1253
  this.screensManager = screensManager;
1252
- this.fieldsPatternCache = {};
1254
+ this.fieldsPatternCache = fieldsPattern || {};
1253
1255
  this.parsedThemesCache = {};
1254
1256
  }
1255
1257
  _createClass(MediasParser, [{
@@ -1273,7 +1275,7 @@ var MediasParser = /*#__PURE__*/function () {
1273
1275
  var _ref2 = this.screensManager.getDefinition(type) || {},
1274
1276
  _ref2$fields = _ref2.fields,
1275
1277
  fields = _ref2$fields === void 0 ? [] : _ref2$fields;
1276
- this.fieldsPatternCache[type] = this.getMediaFieldsPattern(fields);
1278
+ this.fieldsPatternCache[type] = this.getFieldsPattern(fields);
1277
1279
  }
1278
1280
  return this.fieldsPatternCache[type];
1279
1281
  }
@@ -1373,8 +1375,8 @@ var MediasParser = /*#__PURE__*/function () {
1373
1375
  }) : story;
1374
1376
  }
1375
1377
  }, {
1376
- key: "getMediaFieldsPattern",
1377
- value: function getMediaFieldsPattern(fields) {
1378
+ key: "getFieldsPattern",
1379
+ value: function getFieldsPattern(fields) {
1378
1380
  var _this2 = this;
1379
1381
  var namePrefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1380
1382
  return fields.reduce(function (patterns, field) {
@@ -1394,7 +1396,7 @@ var MediasParser = /*#__PURE__*/function () {
1394
1396
  itemsField = _fieldDefinition$item === void 0 ? null : _fieldDefinition$item,
1395
1397
  _fieldDefinition$sett = fieldDefinition.settings,
1396
1398
  settings = _fieldDefinition$sett === void 0 ? [] : _fieldDefinition$sett;
1397
- return [].concat(_toConsumableArray(patterns), _toConsumableArray(MediasParser.fieldIsMedia(fieldDefinition) ? [new RegExp("^".concat(path, "$"))] : []), _toConsumableArray(MediasParser.fieldIsFontFamily(fieldDefinition) ? [new RegExp("^".concat(path, "\\.media$")), new RegExp("^".concat(path, "\\.variants\\.[0-9]+\\.media$"))] : []), _toConsumableArray(_this2.getMediaFieldsPattern(subFields, path)), _toConsumableArray(_this2.getMediaFieldsPattern(settings, path)), _toConsumableArray(itemsField !== null ? _this2.getMediaFieldsPattern([itemsField], "".concat(path, "\\.[0-9]+")) : []));
1399
+ return [].concat(_toConsumableArray(patterns), _toConsumableArray(MediasParser.fieldIsMedia(fieldDefinition) ? [new RegExp("^".concat(path, "$"))] : []), _toConsumableArray(MediasParser.fieldIsFontFamily(fieldDefinition) ? [new RegExp("^".concat(path, "\\.media$")), new RegExp("^".concat(path, "\\.variants\\.[0-9]+\\.media$"))] : []), _toConsumableArray(_this2.getFieldsPattern(subFields, path)), _toConsumableArray(_this2.getFieldsPattern(settings, path)), _toConsumableArray(itemsField !== null ? _this2.getFieldsPattern([itemsField], "".concat(path, "\\.[0-9]+")) : []));
1398
1400
  }, []);
1399
1401
  }
1400
1402
  }], [{
@@ -1515,8 +1517,12 @@ var MediasParser = /*#__PURE__*/function () {
1515
1517
  var ScreensManager = /*#__PURE__*/function (_DefinitionsManager) {
1516
1518
  _inherits(ScreensManager, _DefinitionsManager);
1517
1519
  function ScreensManager() {
1520
+ var _this;
1521
+ var definitions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
1518
1522
  _classCallCheck(this, ScreensManager);
1519
- return _callSuper(this, ScreensManager, arguments);
1523
+ _this = _callSuper(this, ScreensManager, [definitions]);
1524
+ _this.fieldsPattern = null;
1525
+ return _this;
1520
1526
  }
1521
1527
  _createClass(ScreensManager, [{
1522
1528
  key: "getFields",
@@ -1534,6 +1540,16 @@ var ScreensManager = /*#__PURE__*/function (_DefinitionsManager) {
1534
1540
  layouts = _ref2$layouts === void 0 ? null : _ref2$layouts;
1535
1541
  return layouts;
1536
1542
  }
1543
+ }, {
1544
+ key: "getFieldsPattern",
1545
+ value: function getFieldsPattern() {
1546
+ return this.fieldsPattern;
1547
+ }
1548
+ }, {
1549
+ key: "setFieldsPattern",
1550
+ value: function setFieldsPattern(fieldsPattern) {
1551
+ this.fieldsPattern = fieldsPattern;
1552
+ }
1537
1553
  }, {
1538
1554
  key: "filter",
1539
1555
  value: function filter(_filter) {
@@ -1541,6 +1557,15 @@ var ScreensManager = /*#__PURE__*/function (_DefinitionsManager) {
1541
1557
  // this.definitions = this.definitions.filter(filter);
1542
1558
  // return this;
1543
1559
  }
1560
+ }, {
1561
+ key: "merge",
1562
+ value: function merge(manager) {
1563
+ var newFieldsPattern = manager.getFieldsPattern();
1564
+ if (newFieldsPattern !== null && this.fieldsPattern === null) {
1565
+ this.fieldsPattern = newFieldsPattern;
1566
+ }
1567
+ return this.addDefinitions(manager.getDefinitions());
1568
+ }
1544
1569
  }]);
1545
1570
  return ScreensManager;
1546
1571
  }(DefinitionsManager);
@@ -1549,11 +1574,13 @@ var _excluded$3 = ["fonts"];
1549
1574
  var FontsParser = /*#__PURE__*/function () {
1550
1575
  function FontsParser(_ref) {
1551
1576
  var fieldsManager = _ref.fieldsManager,
1552
- screensManager = _ref.screensManager;
1577
+ screensManager = _ref.screensManager,
1578
+ _ref$fieldsPattern = _ref.fieldsPattern,
1579
+ fieldsPattern = _ref$fieldsPattern === void 0 ? {} : _ref$fieldsPattern;
1553
1580
  _classCallCheck(this, FontsParser);
1554
1581
  this.fieldsManager = fieldsManager;
1555
1582
  this.screensManager = screensManager;
1556
- this.fieldsPatternCache = {};
1583
+ this.fieldsPatternCache = fieldsPattern || {};
1557
1584
  }
1558
1585
  _createClass(FontsParser, [{
1559
1586
  key: "getFieldsPatternByScreen",
@@ -2090,18 +2117,26 @@ var ThemeParser = /*#__PURE__*/function () {
2090
2117
  var StoryParser = /*#__PURE__*/function () {
2091
2118
  function StoryParser(_ref) {
2092
2119
  var screensManager = _ref.screensManager,
2093
- fieldsManager = _ref.fieldsManager;
2120
+ fieldsManager = _ref.fieldsManager,
2121
+ fieldsPattern = _ref.fieldsPattern;
2094
2122
  _classCallCheck(this, StoryParser);
2123
+ var _ref2 = fieldsPattern || {},
2124
+ _ref2$medias = _ref2.medias,
2125
+ mediasPattern = _ref2$medias === void 0 ? null : _ref2$medias,
2126
+ _ref2$fonts = _ref2.fonts,
2127
+ fontsPattern = _ref2$fonts === void 0 ? null : _ref2$fonts;
2095
2128
  this.themeParser = new ThemeParser({
2096
2129
  screensManager: screensManager
2097
2130
  });
2098
2131
  this.mediasParser = new MediasParser({
2099
2132
  screensManager: screensManager,
2100
- fieldsManager: fieldsManager
2133
+ fieldsManager: fieldsManager,
2134
+ fieldsPattern: mediasPattern
2101
2135
  });
2102
2136
  this.fontsParser = new FontsParser({
2103
2137
  screensManager: screensManager,
2104
- fieldsManager: fieldsManager
2138
+ fieldsManager: fieldsManager,
2139
+ fieldsPattern: fontsPattern
2105
2140
  });
2106
2141
  this.migrationsParser = new MigrationsParser({
2107
2142
  screensManager: screensManager
@@ -2111,15 +2146,15 @@ var StoryParser = /*#__PURE__*/function () {
2111
2146
  key: "parse",
2112
2147
  value: function parse(story) {
2113
2148
  var _this = this;
2114
- var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
2115
- _ref2$withTheme = _ref2.withTheme,
2116
- withTheme = _ref2$withTheme === void 0 ? true : _ref2$withTheme,
2117
- _ref2$withMedias = _ref2.withMedias,
2118
- withMedias = _ref2$withMedias === void 0 ? true : _ref2$withMedias,
2119
- _ref2$withFonts = _ref2.withFonts,
2120
- withFonts = _ref2$withFonts === void 0 ? true : _ref2$withFonts,
2121
- _ref2$withMigrations = _ref2.withMigrations,
2122
- withMigrations = _ref2$withMigrations === void 0 ? true : _ref2$withMigrations;
2149
+ var _ref3 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
2150
+ _ref3$withTheme = _ref3.withTheme,
2151
+ withTheme = _ref3$withTheme === void 0 ? true : _ref3$withTheme,
2152
+ _ref3$withMedias = _ref3.withMedias,
2153
+ withMedias = _ref3$withMedias === void 0 ? true : _ref3$withMedias,
2154
+ _ref3$withFonts = _ref3.withFonts,
2155
+ withFonts = _ref3$withFonts === void 0 ? true : _ref3$withFonts,
2156
+ _ref3$withMigrations = _ref3.withMigrations,
2157
+ withMigrations = _ref3$withMigrations === void 0 ? true : _ref3$withMigrations;
2123
2158
  if (story === null) {
2124
2159
  return story;
2125
2160
  }
@@ -2132,10 +2167,10 @@ var StoryParser = /*#__PURE__*/function () {
2132
2167
  }], [withMigrations, function (newStory) {
2133
2168
  return _this.migrationsParser.parse(newStory);
2134
2169
  }]];
2135
- return parsers.reduce(function (parsedStory, _ref3) {
2136
- var _ref4 = _slicedToArray(_ref3, 2),
2137
- enabled = _ref4[0],
2138
- parse = _ref4[1];
2170
+ return parsers.reduce(function (parsedStory, _ref4) {
2171
+ var _ref5 = _slicedToArray(_ref4, 2),
2172
+ enabled = _ref5[0],
2173
+ parse = _ref5[1];
2139
2174
  return enabled ? parse(parsedStory) : parsedStory;
2140
2175
  }, story);
2141
2176
  }
package/lib/hooks.js CHANGED
@@ -1841,7 +1841,8 @@ var useParsedStory = function useParsedStory(story) {
1841
1841
  var parser = react.useMemo(function () {
1842
1842
  return new core.StoryParser({
1843
1843
  screensManager: screensManager,
1844
- fieldsManager: fieldsManager
1844
+ fieldsManager: fieldsManager,
1845
+ fieldsPattern: screensManager.getFieldsPattern()
1845
1846
  });
1846
1847
  }, [screensManager, fieldsManager]);
1847
1848
  var newStory = react.useMemo(function () {
package/lib/index.js CHANGED
@@ -1247,11 +1247,13 @@ var _excluded$4 = ["medias"],
1247
1247
  var MediasParser = /*#__PURE__*/function () {
1248
1248
  function MediasParser(_ref) {
1249
1249
  var fieldsManager = _ref.fieldsManager,
1250
- screensManager = _ref.screensManager;
1250
+ screensManager = _ref.screensManager,
1251
+ _ref$fieldsPattern = _ref.fieldsPattern,
1252
+ fieldsPattern = _ref$fieldsPattern === void 0 ? {} : _ref$fieldsPattern;
1251
1253
  _classCallCheck(this, MediasParser);
1252
1254
  this.fieldsManager = fieldsManager;
1253
1255
  this.screensManager = screensManager;
1254
- this.fieldsPatternCache = {};
1256
+ this.fieldsPatternCache = fieldsPattern || {};
1255
1257
  this.parsedThemesCache = {};
1256
1258
  }
1257
1259
  _createClass(MediasParser, [{
@@ -1275,7 +1277,7 @@ var MediasParser = /*#__PURE__*/function () {
1275
1277
  var _ref2 = this.screensManager.getDefinition(type) || {},
1276
1278
  _ref2$fields = _ref2.fields,
1277
1279
  fields = _ref2$fields === void 0 ? [] : _ref2$fields;
1278
- this.fieldsPatternCache[type] = this.getMediaFieldsPattern(fields);
1280
+ this.fieldsPatternCache[type] = this.getFieldsPattern(fields);
1279
1281
  }
1280
1282
  return this.fieldsPatternCache[type];
1281
1283
  }
@@ -1375,8 +1377,8 @@ var MediasParser = /*#__PURE__*/function () {
1375
1377
  }) : story;
1376
1378
  }
1377
1379
  }, {
1378
- key: "getMediaFieldsPattern",
1379
- value: function getMediaFieldsPattern(fields) {
1380
+ key: "getFieldsPattern",
1381
+ value: function getFieldsPattern(fields) {
1380
1382
  var _this2 = this;
1381
1383
  var namePrefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1382
1384
  return fields.reduce(function (patterns, field) {
@@ -1396,7 +1398,7 @@ var MediasParser = /*#__PURE__*/function () {
1396
1398
  itemsField = _fieldDefinition$item === void 0 ? null : _fieldDefinition$item,
1397
1399
  _fieldDefinition$sett = fieldDefinition.settings,
1398
1400
  settings = _fieldDefinition$sett === void 0 ? [] : _fieldDefinition$sett;
1399
- return [].concat(_toConsumableArray(patterns), _toConsumableArray(MediasParser.fieldIsMedia(fieldDefinition) ? [new RegExp("^".concat(path, "$"))] : []), _toConsumableArray(MediasParser.fieldIsFontFamily(fieldDefinition) ? [new RegExp("^".concat(path, "\\.media$")), new RegExp("^".concat(path, "\\.variants\\.[0-9]+\\.media$"))] : []), _toConsumableArray(_this2.getMediaFieldsPattern(subFields, path)), _toConsumableArray(_this2.getMediaFieldsPattern(settings, path)), _toConsumableArray(itemsField !== null ? _this2.getMediaFieldsPattern([itemsField], "".concat(path, "\\.[0-9]+")) : []));
1401
+ return [].concat(_toConsumableArray(patterns), _toConsumableArray(MediasParser.fieldIsMedia(fieldDefinition) ? [new RegExp("^".concat(path, "$"))] : []), _toConsumableArray(MediasParser.fieldIsFontFamily(fieldDefinition) ? [new RegExp("^".concat(path, "\\.media$")), new RegExp("^".concat(path, "\\.variants\\.[0-9]+\\.media$"))] : []), _toConsumableArray(_this2.getFieldsPattern(subFields, path)), _toConsumableArray(_this2.getFieldsPattern(settings, path)), _toConsumableArray(itemsField !== null ? _this2.getFieldsPattern([itemsField], "".concat(path, "\\.[0-9]+")) : []));
1400
1402
  }, []);
1401
1403
  }
1402
1404
  }], [{
@@ -1517,8 +1519,12 @@ var MediasParser = /*#__PURE__*/function () {
1517
1519
  var ScreensManager = /*#__PURE__*/function (_DefinitionsManager) {
1518
1520
  _inherits(ScreensManager, _DefinitionsManager);
1519
1521
  function ScreensManager() {
1522
+ var _this;
1523
+ var definitions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
1520
1524
  _classCallCheck(this, ScreensManager);
1521
- return _callSuper(this, ScreensManager, arguments);
1525
+ _this = _callSuper(this, ScreensManager, [definitions]);
1526
+ _this.fieldsPattern = null;
1527
+ return _this;
1522
1528
  }
1523
1529
  _createClass(ScreensManager, [{
1524
1530
  key: "getFields",
@@ -1536,6 +1542,16 @@ var ScreensManager = /*#__PURE__*/function (_DefinitionsManager) {
1536
1542
  layouts = _ref2$layouts === void 0 ? null : _ref2$layouts;
1537
1543
  return layouts;
1538
1544
  }
1545
+ }, {
1546
+ key: "getFieldsPattern",
1547
+ value: function getFieldsPattern() {
1548
+ return this.fieldsPattern;
1549
+ }
1550
+ }, {
1551
+ key: "setFieldsPattern",
1552
+ value: function setFieldsPattern(fieldsPattern) {
1553
+ this.fieldsPattern = fieldsPattern;
1554
+ }
1539
1555
  }, {
1540
1556
  key: "filter",
1541
1557
  value: function filter(_filter) {
@@ -1543,6 +1559,15 @@ var ScreensManager = /*#__PURE__*/function (_DefinitionsManager) {
1543
1559
  // this.definitions = this.definitions.filter(filter);
1544
1560
  // return this;
1545
1561
  }
1562
+ }, {
1563
+ key: "merge",
1564
+ value: function merge(manager) {
1565
+ var newFieldsPattern = manager.getFieldsPattern();
1566
+ if (newFieldsPattern !== null && this.fieldsPattern === null) {
1567
+ this.fieldsPattern = newFieldsPattern;
1568
+ }
1569
+ return this.addDefinitions(manager.getDefinitions());
1570
+ }
1546
1571
  }]);
1547
1572
  return ScreensManager;
1548
1573
  }(DefinitionsManager);
@@ -1551,11 +1576,13 @@ var _excluded$3 = ["fonts"];
1551
1576
  var FontsParser = /*#__PURE__*/function () {
1552
1577
  function FontsParser(_ref) {
1553
1578
  var fieldsManager = _ref.fieldsManager,
1554
- screensManager = _ref.screensManager;
1579
+ screensManager = _ref.screensManager,
1580
+ _ref$fieldsPattern = _ref.fieldsPattern,
1581
+ fieldsPattern = _ref$fieldsPattern === void 0 ? {} : _ref$fieldsPattern;
1555
1582
  _classCallCheck(this, FontsParser);
1556
1583
  this.fieldsManager = fieldsManager;
1557
1584
  this.screensManager = screensManager;
1558
- this.fieldsPatternCache = {};
1585
+ this.fieldsPatternCache = fieldsPattern || {};
1559
1586
  }
1560
1587
  _createClass(FontsParser, [{
1561
1588
  key: "getFieldsPatternByScreen",
@@ -2092,18 +2119,26 @@ var ThemeParser = /*#__PURE__*/function () {
2092
2119
  var StoryParser = /*#__PURE__*/function () {
2093
2120
  function StoryParser(_ref) {
2094
2121
  var screensManager = _ref.screensManager,
2095
- fieldsManager = _ref.fieldsManager;
2122
+ fieldsManager = _ref.fieldsManager,
2123
+ fieldsPattern = _ref.fieldsPattern;
2096
2124
  _classCallCheck(this, StoryParser);
2125
+ var _ref2 = fieldsPattern || {},
2126
+ _ref2$medias = _ref2.medias,
2127
+ mediasPattern = _ref2$medias === void 0 ? null : _ref2$medias,
2128
+ _ref2$fonts = _ref2.fonts,
2129
+ fontsPattern = _ref2$fonts === void 0 ? null : _ref2$fonts;
2097
2130
  this.themeParser = new ThemeParser({
2098
2131
  screensManager: screensManager
2099
2132
  });
2100
2133
  this.mediasParser = new MediasParser({
2101
2134
  screensManager: screensManager,
2102
- fieldsManager: fieldsManager
2135
+ fieldsManager: fieldsManager,
2136
+ fieldsPattern: mediasPattern
2103
2137
  });
2104
2138
  this.fontsParser = new FontsParser({
2105
2139
  screensManager: screensManager,
2106
- fieldsManager: fieldsManager
2140
+ fieldsManager: fieldsManager,
2141
+ fieldsPattern: fontsPattern
2107
2142
  });
2108
2143
  this.migrationsParser = new MigrationsParser({
2109
2144
  screensManager: screensManager
@@ -2113,15 +2148,15 @@ var StoryParser = /*#__PURE__*/function () {
2113
2148
  key: "parse",
2114
2149
  value: function parse(story) {
2115
2150
  var _this = this;
2116
- var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
2117
- _ref2$withTheme = _ref2.withTheme,
2118
- withTheme = _ref2$withTheme === void 0 ? true : _ref2$withTheme,
2119
- _ref2$withMedias = _ref2.withMedias,
2120
- withMedias = _ref2$withMedias === void 0 ? true : _ref2$withMedias,
2121
- _ref2$withFonts = _ref2.withFonts,
2122
- withFonts = _ref2$withFonts === void 0 ? true : _ref2$withFonts,
2123
- _ref2$withMigrations = _ref2.withMigrations,
2124
- withMigrations = _ref2$withMigrations === void 0 ? true : _ref2$withMigrations;
2151
+ var _ref3 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
2152
+ _ref3$withTheme = _ref3.withTheme,
2153
+ withTheme = _ref3$withTheme === void 0 ? true : _ref3$withTheme,
2154
+ _ref3$withMedias = _ref3.withMedias,
2155
+ withMedias = _ref3$withMedias === void 0 ? true : _ref3$withMedias,
2156
+ _ref3$withFonts = _ref3.withFonts,
2157
+ withFonts = _ref3$withFonts === void 0 ? true : _ref3$withFonts,
2158
+ _ref3$withMigrations = _ref3.withMigrations,
2159
+ withMigrations = _ref3$withMigrations === void 0 ? true : _ref3$withMigrations;
2125
2160
  if (story === null) {
2126
2161
  return story;
2127
2162
  }
@@ -2134,10 +2169,10 @@ var StoryParser = /*#__PURE__*/function () {
2134
2169
  }], [withMigrations, function (newStory) {
2135
2170
  return _this.migrationsParser.parse(newStory);
2136
2171
  }]];
2137
- return parsers.reduce(function (parsedStory, _ref3) {
2138
- var _ref4 = _slicedToArray(_ref3, 2),
2139
- enabled = _ref4[0],
2140
- parse = _ref4[1];
2172
+ return parsers.reduce(function (parsedStory, _ref4) {
2173
+ var _ref5 = _slicedToArray(_ref4, 2),
2174
+ enabled = _ref5[0],
2175
+ parse = _ref5[1];
2141
2176
  return enabled ? parse(parsedStory) : parsedStory;
2142
2177
  }, story);
2143
2178
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/core",
3
- "version": "0.3.477",
3
+ "version": "0.3.480",
4
4
  "private": false,
5
5
  "description": "",
6
6
  "keywords": [
@@ -153,5 +153,5 @@
153
153
  "access": "public",
154
154
  "registry": "https://registry.npmjs.org/"
155
155
  },
156
- "gitHead": "bb9bf58bc81bab88260ffd2f231abe01d9caa841"
156
+ "gitHead": "4a69863ce7f8aa2e254242a2fd368763611cf096"
157
157
  }