single-scripture-rcl 3.1.0-alpha.2 → 3.2.0

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/README.md CHANGED
@@ -1,2 +1,3 @@
1
1
  # single-scripture-rcl
2
2
 
3
+ A React Component Library for Rendering a Single Scripture Resource
@@ -42,7 +42,8 @@ var style = {
42
42
  export default function ScriptureCard(_ref) {
43
43
  var _scriptureConfig$reso2, _scriptureConfig$reso3;
44
44
 
45
- var isNT = _ref.isNT,
45
+ var id = _ref.id,
46
+ isNT = _ref.isNT,
46
47
  title = _ref.title,
47
48
  server = _ref.server,
48
49
  appRef = _ref.appRef,
@@ -67,7 +68,8 @@ export default function ScriptureCard(_ref) {
67
68
  hebrewRepoUrl = _ref.hebrewRepoUrl,
68
69
  getLexiconData = _ref.getLexiconData,
69
70
  fetchGlossesForVerse = _ref.fetchGlossesForVerse,
70
- translate = _ref.translate;
71
+ translate = _ref.translate,
72
+ onMinimize = _ref.onMinimize;
71
73
 
72
74
  var _React$useState = React.useState(null),
73
75
  _React$useState2 = _slicedToArray(_React$useState, 2),
@@ -210,7 +212,7 @@ export default function ScriptureCard(_ref) {
210
212
  while (1) {
211
213
  switch (_context.prev = _context.next) {
212
214
  case 0:
213
- if (!(!disableWordPopover && scriptureConfig !== null && scriptureConfig !== void 0 && (_scriptureConfig$vers = scriptureConfig.verseObjects) !== null && _scriptureConfig$vers !== void 0 && _scriptureConfig$vers.length)) {
215
+ if (!(!disableWordPopover && scriptureConfig !== null && scriptureConfig !== void 0 && (_scriptureConfig$vers = scriptureConfig.verseObjects) !== null && _scriptureConfig$vers !== void 0 && _scriptureConfig$vers.length && fetchGlossesForVerse)) {
214
216
  _context.next = 3;
215
217
  break;
216
218
  }
@@ -250,7 +252,10 @@ export default function ScriptureCard(_ref) {
250
252
  setMarkdownView: setMarkdownView,
251
253
  getCustomComponent: getScriptureSelector,
252
254
  hideMarkdownToggle: true,
253
- onMenuClose: onMenuClose
255
+ onMenuClose: onMenuClose,
256
+ onMinimize: onMinimize ? function () {
257
+ return onMinimize(id);
258
+ } : null
254
259
  }, /*#__PURE__*/React.createElement(ScripturePane, _extends({
255
260
  refStyle: refStyle
256
261
  }, scriptureConfig, {
@@ -266,6 +271,9 @@ export default function ScriptureCard(_ref) {
266
271
  })));
267
272
  }
268
273
  ScriptureCard.propTypes = {
274
+ /** identifier to use for card */
275
+ id: PropTypes.string,
276
+
269
277
  /** method to determine if NT or OT */
270
278
  isNT: PropTypes.func.isRequired,
271
279
 
@@ -343,6 +351,9 @@ ScriptureCard.propTypes = {
343
351
  fetchGlossesForVerse: PropTypes.func,
344
352
 
345
353
  /** optional function for localization */
346
- translate: PropTypes.func
354
+ translate: PropTypes.func,
355
+
356
+ /** function to minimize the card (optional) */
357
+ onMinimize: PropTypes.func
347
358
  };
348
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1NjcmlwdHVyZUNhcmQvU2NyaXB0dXJlQ2FyZC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQcm9wVHlwZXMiLCJDYXJkIiwidXNlQ2FyZFN0YXRlIiwiRVJST1JfU1RBVEUiLCJNQU5JRkVTVF9OT1RfTE9BREVEX0VSUk9SIiwiU2NyaXB0dXJlUGFuZSIsIlNjcmlwdHVyZVNlbGVjdG9yIiwidXNlU2NyaXB0dXJlU2V0dGluZ3MiLCJnZXRSZXNvdXJjZUxpbmsiLCJnZXRSZXNvdXJjZU1lc3NhZ2UiLCJnZXRTY3JpcHR1cmVWZXJzaW9uU2V0dGluZ3MiLCJpc09yaWdpbmFsQmlibGUiLCJUaXRsZSIsIktFWV9GT05UX1NJWkVfQkFTRSIsImxhYmVsIiwic3R5bGUiLCJtYXJnaW5Ub3AiLCJ3aWR0aCIsIlNjcmlwdHVyZUNhcmQiLCJpc05UIiwidGl0bGUiLCJzZXJ2ZXIiLCJhcHBSZWYiLCJjYXJkTnVtIiwiY2xhc3NlcyIsInJlc291cmNlIiwib3duZXIiLCJsYW5ndWFnZUlkIiwicmVzb3VyY2VJZCIsIm9yaWdpbmFsTGFuZ3VhZ2VPd25lciIsImdldExhbmd1YWdlIiwicmVmZXJlbmNlIiwidmVyc2UiLCJjaGFwdGVyIiwiYm9va0lkIiwicHJvamVjdElkIiwicmVzb3VyY2VMaW5rIiwidXNlVXNlckxvY2FsU3RvcmFnZSIsImRpc2FibGVXb3JkUG9wb3ZlciIsIm9uUmVzb3VyY2VFcnJvciIsImh0dHBDb25maWciLCJncmVla1JlcG9VcmwiLCJoZWJyZXdSZXBvVXJsIiwiZ2V0TGV4aWNvbkRhdGEiLCJmZXRjaEdsb3NzZXNGb3JWZXJzZSIsInRyYW5zbGF0ZSIsInVzZVN0YXRlIiwidXJsRXJyb3IiLCJzZXRVcmxFcnJvciIsImZvbnRTaXplIiwic2V0Rm9udFNpemUiLCJzY3JpcHR1cmVDb25maWciLCJzZXRTY3JpcHR1cmUiLCJzY3JpcHR1cmVWZXJzaW9uSGlzdCIsInNjcmlwdHVyZVRpdGxlIiwidXNlRWZmZWN0IiwiZXJyb3IiLCJyZXNvdXJjZVN0YXR1cyIsIm1lc3NhZ2UiLCJpc0FjY2Vzc0Vycm9yIiwidmVyc2lvbiIsInVwZGF0ZVRpdGxlIiwiZ2V0U2NyaXB0dXJlU2VsZWN0b3IiLCJzY3JpcHR1cmVTZWxlY3Rpb25Db25maWciLCJvbk1lbnVDbG9zZSIsImxhbmd1YWdlSWRfIiwibGFuZ3VhZ2UiLCJkaXJlY3Rpb24iLCJpc0hlYnJldyIsImZvbnRGYWN0b3IiLCJzY2FsZWRGb250U2l6ZSIsIm1hdGNoZWRWZXJzZSIsIml0ZW1zIiwic3RhdGUiLCJoZWFkZXJzIiwiZmlsdGVycyIsIml0ZW1JbmRleCIsIm1hcmtkb3duVmlldyIsImFjdGlvbnMiLCJzZXRGaWx0ZXJzIiwic2V0SXRlbUluZGV4Iiwic2V0TWFya2Rvd25WaWV3IiwicmVmU3R5bGUiLCJmb250RmFtaWx5IiwiTWF0aCIsInJvdW5kIiwiY29udGVudFN0eWxlIiwic2NyaXB0dXJlTGFiZWwiLCJkaXNhYmxlV29yZFBvcG92ZXJfIiwidW5kZWZpbmVkIiwiZmV0Y2hHbG9zc0RhdGFGb3JWZXJzZSIsInZlcnNlT2JqZWN0cyIsImxlbmd0aCIsInByb3BUeXBlcyIsImZ1bmMiLCJpc1JlcXVpcmVkIiwic3RyaW5nIiwibnVtYmVyIiwic2hhcGUiLCJvbmVPZlR5cGUiLCJib29sIiwib2JqZWN0IiwiYW55Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLQSxLQUFaLE1BQXVCLE9BQXZCO0FBQ0EsT0FBTyxLQUFLQyxTQUFaLE1BQTJCLFlBQTNCO0FBQ0EsU0FDRUMsSUFERixFQUVFQyxZQUZGLEVBR0VDLFdBSEYsRUFJRUMseUJBSkYsUUFLTyx1QkFMUDtBQU1BLFNBQVNDLGFBQVQsRUFBd0JDLGlCQUF4QixRQUFpRCxJQUFqRDtBQUNBLFNBQVNDLG9CQUFULFFBQXFDLGtDQUFyQztBQUNBLFNBQ0VDLGVBREYsRUFFRUMsa0JBRkYsRUFHRUMsMkJBSEYsRUFJRUMsZUFKRixRQUtP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QUFDcUcsTUE5Q0U7O0FBK0N4QjtBQUNBNUQsRUFBQUEsWUFBWSxFQUFFekMsU0FBUyxDQUFDZ0csTUFoREE7O0FBaUR4QjtBQUNBdEQsRUFBQUEsYUFBYSxFQUFFMUMsU0FBUyxDQUFDZ0csTUFsREQ7O0FBbUR4QjtBQUNBckQsRUFBQUEsY0FBYyxFQUFFM0MsU0FBUyxDQUFDOEYsSUFwREY7O0FBcUR4QjtBQUNBbEQsRUFBQUEsb0JBQW9CLEVBQUU1QyxTQUFTLENBQUM4RixJQXREUjs7QUF1RHhCO0FBQ0FqRCxFQUFBQSxTQUFTLEVBQUU3QyxTQUFTLENBQUM4RjtBQXhERyxDQUExQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0ICogYXMgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnXG5pbXBvcnQge1xuICBDYXJkLFxuICB1c2VDYXJkU3RhdGUsXG4gIEVSUk9SX1NUQVRFLFxuICBNQU5JRkVTVF9OT1RfTE9BREVEX0VSUk9SLFxufSBmcm9tICd0cmFuc2xhdGlvbi1oZWxwcy1yY2wnXG5pbXBvcnQgeyBTY3JpcHR1cmVQYW5lLCBTY3JpcHR1cmVTZWxlY3RvciB9IGZyb20gJy4uJ1xuaW1wb3J0IHsgdXNlU2NyaXB0dXJlU2V0dGluZ3MgfSBmcm9tICcuLi8uLi9ob29rcy91c2VTY3JpcHR1cmVTZXR0aW5ncydcbmltcG9ydCB7XG4gIGdldFJlc291cmNlTGluayxcbiAgZ2V0UmVzb3VyY2VNZXNzYWdlLFxuICBnZXRTY3JpcHR1cmVWZXJzaW9uU2V0dGluZ3MsXG4gIGlzT3JpZ2luYWxCaWJsZSxcbn0gZnJvbSAnLi4vLi4vdXRpbHMvU2NyaXB0dXJlU2V0dGluZ3MnXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJy4uL1NjcmlwdHVyZVBhbmUvc3R5bGVkJ1xuXG5jb25zdCBLRVlfRk9OVF9TSVpFX0JBU0UgPSAnc2NyaXB0dXJlUGFuZUZvbnRTaXplXydcbmNvbnN0IGxhYmVsID0gJ1ZlcnNpb24nXG5jb25zdCBzdHlsZSA9IHsgbWFyZ2luVG9wOiAnMTZweCcsIHdpZHRoOiAnNTAwcHgnIH1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gU2NyaXB0dXJlQ2FyZCh7XG4gIGlzTlQsXG4gIHRpdGxlLFxuICBzZXJ2ZXIsXG4gIGFwcFJlZixcbiAgY2FyZE51bSxcbiAgY2xhc3NlcyxcbiAgcmVzb3VyY2U6IHtcbiAgICBvd25lcixcbiAgICBsYW5ndWFnZUlkLFxuICAgIHJlc291cmNlSWQsXG4gICAgb3JpZ2luYWxMYW5ndWFnZU93bmVyLFxuICB9LFxuICBnZXRMYW5ndWFnZSxcbiAgcmVmZXJlbmNlOiB7XG4gICAgdmVyc2UsXG4gICAgY2hhcHRlcixcbiAgICBwcm9qZWN0SWQ6IGJvb2tJZCxcbiAgfSxcbiAgcmVzb3VyY2VMaW5rLFxuICB1c2VVc2VyTG9jYWxTdG9yYWdlLFxuICBkaXNhYmxlV29yZFBvcG92ZXIsXG4gIG9uUmVzb3VyY2VFcnJvcixcbiAgaHR0cENvbmZpZyxcbiAgZ3JlZWtSZXBvVXJsLFxuICBoZWJyZXdSZXBvVXJsLFxuICBnZXRMZXhpY29uRGF0YSxcbiAgZmV0Y2hHbG9zc2VzRm9yVmVyc2UsXG4gIHRyYW5zbGF0ZSxcbn0pIHtcbiAgY29uc3QgW3VybEVycm9yLCBzZXRVcmxFcnJvcl0gPSBSZWFjdC51c2VTdGF0ZShudWxsKVxuICBjb25zdCBbZm9udFNpemUsIHNldEZvbnRTaXplXSA9IHVzZVVzZXJMb2NhbFN0b3JhZ2UoS0VZX0ZPTlRfU0laRV9CQVNFICsgY2FyZE51bSwgMTAwKVxuICBjb25zdCB7XG4gICAgc2NyaXB0dXJlQ29uZmlnLFxuICAgIHNldFNjcmlwdHVyZSxcbiAgICBzY3JpcHR1cmVWZXJzaW9uSGlzdCxcbiAgfSA9IHVzZVNjcmlwdHVyZVNldHRpbmdzKHtcbiAgICBpc05ULFxuICAgIHRpdGxlLFxuICAgIHZlcnNlLFxuICAgIG93bmVyLFxuICAgIGJvb2tJZCxcbiAgICBhcHBSZWYsXG4gICAgc2VydmVyLFxuICAgIGNhcmROdW0sXG4gICAgY2hhcHRlcixcbiAgICBsYW5ndWFnZUlkLFxuICAgIHJlc291cmNlSWQsXG4gICAgcmVzb3VyY2VMaW5rLFxuICAgIHVzZVVzZXJMb2NhbFN0b3JhZ2UsXG4gICAgZGlzYWJsZVdvcmRQb3BvdmVyLFxuICAgIG9yaWdpbmFsTGFuZ3VhZ2VPd25lcixcbiAgICBzZXRVcmxFcnJvcixcbiAgICBodHRwQ29uZmlnLFxuICAgIGdyZWVrUmVwb1VybCxcbiAgICBoZWJyZXdSZXBvVXJsLFxuICB9KVxuXG4gIGxldCBzY3JpcHR1cmVUaXRsZVxuXG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgZXJyb3IgPSBzY3JpcHR1cmVDb25maWc/LnJlc291cmNlU3RhdHVzPy5bRVJST1JfU1RBVEVdXG5cbiAgICBpZiAoZXJyb3IpIHsgLy8gaWYgZXJyb3Igd2FzIGZvdW5kIGRvIGNhbGxiYWNrXG4gICAgICBjb25zdCByZXNvdXJjZVN0YXR1cyA9IHNjcmlwdHVyZUNvbmZpZz8ucmVzb3VyY2VTdGF0dXNcbiAgICAgIGNvbnN0IHJlc291cmNlTGluayA9IGdldFJlc291cmNlTGluayhzY3JpcHR1cmVDb25maWcpXG4gICAgICBjb25zdCBtZXNzYWdlID0gZ2V0UmVzb3VyY2VNZXNzYWdlKHJlc291cmNlU3RhdHVzLCBzZXJ2ZXIsIHJlc291cmNlTGluaywgaXNOVChib29rSWQpKVxuICAgICAgY29uc3QgaXNBY2Nlc3NFcnJvciA9IHJlc291cmNlU3RhdHVzW01BTklGRVNUX05PVF9MT0FERURfRVJST1JdXG4gICAgICBvblJlc291cmNlRXJyb3IgJiYgb25SZXNvdXJjZUVycm9yKG1lc3NhZ2UsIGlzQWNjZXNzRXJyb3IsIHJlc291cmNlU3RhdHVzKVxuICAgIH1cbiAgfSwgW3NjcmlwdHVyZUNvbmZpZz8ucmVzb3VyY2VTdGF0dXM/LltFUlJPUl9TVEFURV1dKVxuXG4gIGlmIChzY3JpcHR1cmVDb25maWcudGl0bGUgJiYgc2NyaXB0dXJlQ29uZmlnLnZlcnNpb24pIHtcbiAgICBzY3JpcHR1cmVUaXRsZSA9IGAke3NjcmlwdHVyZUNvbmZpZy50aXRsZX0gdiR7c2NyaXB0dXJlQ29uZmlnLnZlcnNpb259YFxuICAgIHNjcmlwdHVyZVZlcnNpb25IaXN0LnVwZGF0ZVRpdGxlKHNjcmlwdHVyZUNvbmZpZy5yZXNvdXJjZUxpbmssIHNjcmlwdHVyZVRpdGxlKVxuICB9IGVsc2Uge1xuICAgIHNjcmlwdHVyZVRpdGxlID0gYFRpdGxlIG1pc3NpbmcgZnJvbSBwcm9qZWN0IG1hbmlmZXN0YFxuICB9XG5cbiAgLyoqIER5bmFtaWNhbGx5IGNyZWF0ZXMgdGhlIHNjcmlwdHVyZSBzZWxlY3Rpb24gZHJvcGRvd24gdG8gYmUgaW5zZXJ0ZWQgaW50byBjYXJkIHNldHRpbmdzICovXG4gIGZ1bmN0aW9uIGdldFNjcmlwdHVyZVNlbGVjdG9yKCkge1xuICAgIGNvbnN0IHNjcmlwdHVyZVNlbGVjdGlvbkNvbmZpZyA9IGdldFNjcmlwdHVyZVZlcnNpb25TZXR0aW5ncyh7XG4gICAgICBsYWJlbCxcbiAgICAgIHJlc291cmNlTGluazogc2NyaXB0dXJlQ29uZmlnLnJlc291cmNlTGluayxcbiAgICAgIHNldFNjcmlwdHVyZSxcbiAgICAgIHNjcmlwdHVyZVZlcnNpb25IaXN0LFxuICAgIH0pXG5cbiAgICByZXR1cm4gPFNjcmlwdHVyZVNlbGVjdG9yIHsuLi5zY3JpcHR1cmVTZWxlY3Rpb25Db25maWd9IHN0eWxlPXtzdHlsZX0gZXJyb3JNZXNzYWdlPXt1cmxFcnJvcn0gLz5cbiAgfVxuXG4gIGZ1bmN0aW9uIG9uTWVudUNsb3NlKCkge1xuICAgIC8vIGNvbnNvbGUubG9nKGBvbk1lbnVDbG9zZSgpYClcbiAgICBzZXRVcmxFcnJvcihudWxsKSAvLyBjbGVhciBhbnkgZXJyb3IgbWVzc2FnZXNcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgY29uc3QgbGFuZ3VhZ2VJZF8gPSBzY3JpcHR1cmVDb25maWc/LnJlc291cmNlPy5sYW5ndWFnZUlkXG4gIGNvbnN0IGxhbmd1YWdlID0gZ2V0TGFuZ3VhZ2UoeyBsYW5ndWFnZUlkOiBsYW5ndWFnZUlkXyB9KVxuICBjb25zdCBkaXJlY3Rpb24gPSAobGFuZ3VhZ2U/LmRpcmVjdGlvbikgfHwgJ2x0cidcbiAgY29uc3QgcmVmZXJlbmNlID0geyAuLi5zY3JpcHR1cmVDb25maWcucmVmZXJlbmNlIH1cblxuICBjb25zdCBpc0hlYnJldyA9IChsYW5ndWFnZUlkXyA9PT0gJ2hibycpXG4gIGNvbnN0IGZvbnRGYWN0b3IgPSBpc0hlYnJldyA/IDEuNCA6IDEgLy8gd2UgYXV0b21hdGljYWxseSBzY2FsZSB1cCBmb250IHNpemUgZm9yIEhlYnJld1xuICBjb25zdCBzY2FsZWRGb250U2l6ZSA9IGZvbnRTaXplICogZm9udEZhY3RvclxuXG4gIGlmIChzY3JpcHR1cmVDb25maWcubWF0Y2hlZFZlcnNlKSB7IC8vIHN1cHBvcnQgdmVyc2UgcmFuZ2VzXG4gICAgcmVmZXJlbmNlLnZlcnNlID0gc2NyaXB0dXJlQ29uZmlnLm1hdGNoZWRWZXJzZVxuICB9XG5cbiAgY29uc3QgaXRlbXMgPSBudWxsXG4gIGNvbnN0IHtcbiAgICBzdGF0ZToge1xuICAgICAgaGVhZGVycywgZmlsdGVycywgaXRlbUluZGV4LCBtYXJrZG93blZpZXcsXG4gICAgfSxcbiAgICBhY3Rpb25zOiB7XG4gICAgICBzZXRGaWx0ZXJzLCBzZXRJdGVtSW5kZXgsIHNldE1hcmtkb3duVmlldyxcbiAgICB9LFxuICB9ID0gdXNlQ2FyZFN0YXRlKHsgaXRlbXMgfSlcblxuICBjb25zdCByZWZTdHlsZSA9IHtcbiAgICBmb250RmFtaWx5OiAnTm90byBTYW5zJyxcbiAgICBmb250U2l6ZTogYCR7TWF0aC5yb3VuZChzY2FsZWRGb250U2l6ZSAqIDAuOSl9JWAsXG4gIH1cblxuICBjb25zdCBjb250ZW50U3R5bGUgPSB7XG4gICAgZm9udEZhbWlseTogJ05vdG8gU2FucycsXG4gICAgZm9udFNpemU6IGAke3NjYWxlZEZvbnRTaXplfSVgLFxuICB9XG5cbiAgY29uc3Qgc2NyaXB0dXJlTGFiZWwgPSA8VGl0bGU+e3NjcmlwdHVyZVRpdGxlfTwvVGl0bGU+XG4gIGxldCBkaXNhYmxlV29yZFBvcG92ZXJfID0gZGlzYWJsZVdvcmRQb3BvdmVyXG5cbiAgaWYgKGRpc2FibGVXb3JkUG9wb3ZlciA9PT0gdW5kZWZpbmVkKSB7IC8vIGlmIG5vdCBzcGVjaWZpZWQsIHRoZW4gZGV0ZXJtaW5lIGlmIG9yaWdpbmFsIGxhbmd1YWdlIHJlc291cmNlXG4gICAgZGlzYWJsZVdvcmRQb3BvdmVyXyA9ICFpc09yaWdpbmFsQmlibGUoc2NyaXB0dXJlQ29uZmlnWydyZXNvdXJjZSddPy5wcm9qZWN0SWQpXG4gIH1cblxuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGZldGNoR2xvc3NEYXRhRm9yVmVyc2UgPSBhc3luYyAoKSA9PiB7XG4gICAgICBpZiAoIWRpc2FibGVXb3JkUG9wb3ZlciAmJiBzY3JpcHR1cmVDb25maWc/LnZlcnNlT2JqZWN0cz8ubGVuZ3RoKSB7XG4gICAgICAgIGF3YWl0IGZldGNoR2xvc3Nlc0ZvclZlcnNlKHNjcmlwdHVyZUNvbmZpZz8udmVyc2VPYmplY3RzLCBsYW5ndWFnZUlkXylcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmZXRjaEdsb3NzRGF0YUZvclZlcnNlKClcbiAgfSwgW3NjcmlwdHVyZUNvbmZpZz8udmVyc2VPYmplY3RzXSlcblxuICByZXR1cm4gKFxuICAgIDxDYXJkXG4gICAgICBpZD17YHNjcmlwdHVyZV9jYXJkXyR7Y2FyZE51bX1gfVxuICAgICAgdGl0bGU9e3NjcmlwdHVyZUxhYmVsfVxuICAgICAgc2V0dGluZ3NUaXRsZT17c2NyaXB0dXJlVGl0bGUgKyAnIFNldHRpbmdzJ31cbiAgICAgIGl0ZW1zPXtpdGVtc31cbiAgICAgIGNsYXNzZXM9e2NsYXNzZXN9XG4gICAgICBoZWFkZXJzPXtoZWFkZXJzfVxuICAgICAgZmlsdGVycz17ZmlsdGVyc31cbiAgICAgIGZvbnRTaXplPXtmb250U2l6ZX1cbiAgICAgIGl0ZW1JbmRleD17aXRlbUluZGV4fVxuICAgICAgc2V0RmlsdGVycz17c2V0RmlsdGVyc31cbiAgICAgIHNldEZvbnRTaXplPXtzZXRGb250U2l6ZX1cbiAgICAgIHNldEl0ZW1JbmRleD17c2V0SXRlbUluZGV4fVxuICAgICAgbWFya2Rvd25WaWV3PXttYXJrZG93blZpZXd9XG4gICAgICBzZXRNYXJrZG93blZpZXc9e3NldE1hcmtkb3duVmlld31cbiAgICAgIGdldEN1c3RvbUNvbXBvbmVudD17Z2V0U2NyaXB0dXJlU2VsZWN0b3J9XG4gICAgICBoaWRlTWFya2Rvd25Ub2dnbGVcbiAgICAgIG9uTWVudUNsb3NlPXtvbk1lbnVDbG9zZX1cbiAgICA+XG4gICAgICA8U2NyaXB0dXJlUGFuZVxuICAgICAgICByZWZTdHlsZT17cmVmU3R5bGV9XG4gICAgICAgIHsuLi5zY3JpcHR1cmVDb25maWd9XG4gICAgICAgIGlzTlQ9e2lzTlQoYm9va0lkKX1cbiAgICAgICAgc2VydmVyPXtzZXJ2ZXJ9XG4gICAgICAgIHJlZmVyZW5jZT17cmVmZXJlbmNlfVxuICAgICAgICBkaXJlY3Rpb249e2RpcmVjdGlvbn1cbiAgICAgICAgY29udGVudFN0eWxlPXtjb250ZW50U3R5bGV9XG4gICAgICAgIGZvbnRTaXplPXtmb250U2l6ZX1cbiAgICAgICAgZGlzYWJsZVdvcmRQb3BvdmVyPXtkaXNhYmxlV29yZFBvcG92ZXJffVxuICAgICAgICBnZXRMZXhpY29uRGF0YT17Z2V0TGV4aWNvbkRhdGF9XG4gICAgICAgIHRyYW5zbGF0ZT17dHJhbnNsYXRlfVxuICAgICAgLz5cbiAgICA8L0NhcmQ+XG4gIClcbn1cblxuU2NyaXB0dXJlQ2FyZC5wcm9wVHlwZXMgPSB7XG4gIC8qKiBtZXRob2QgdG8gZGV0ZXJtaW5lIGlmIE5UIG9yIE9UICovXG4gIGlzTlQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIC8qKiB0aXRsZSBmb3Igc2NyaXB0dXJlIGNhcmQgKi9cbiAgdGl0bGU6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgLyoqIGdldCBsYW5ndWFnZSBkZXRhaWxzICovXG4gIGdldExhbmd1YWdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAvKiogc2NyaXB0dXJlIGNhcmQgbnVtYmVyICgwIHRvIDIgZm9yIGV4YW1wbGUpICovXG4gIGNhcmROdW06IFByb3BUeXBlcy5udW1iZXIuaXNSZXF1aXJlZCxcbiAgLyoqIHJlc291cmNlIG9iamVjdCAqL1xuICByZXNvdXJjZTogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICAvKiogcmVzb3VyY2UgbGFuZ3VhZ2UgdG8gdXNlICovXG4gICAgbGFuZ3VhZ2VJZDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgIC8qKiByZXBvIG93bmVyIHN1Y2ggYXMgdW5mb2xkaW5nV29yZCAqL1xuICAgIG93bmVyOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgLyoqIHJlc291cmNlSWQgdG8gdXNlIChlLmcuIHVnbnQpICovXG4gICAgcmVzb3VyY2VJZDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgIC8qKiByZXBvIG93bmVyIGZvciBvcmlnaW5hbCBsYW5ndWFnZXMgc3VjaCBhcyB1bmZvbGRpbmdXb3JkICovXG4gICAgb3JpZ2luYWxMYW5ndWFnZU93bmVyOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIH0pLFxuICByZWZlcmVuY2U6IFByb3BUeXBlcy5zaGFwZSh7XG4gICAgLyoqIHByb2plY3RJZCAoYm9va0lEKSB0byB1c2UgKi9cbiAgICBwcm9qZWN0SWQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAvKiogY3VycmVudCBjaGFwdGVyIG51bWJlciAqL1xuICAgIGNoYXB0ZXI6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5udW1iZXIsIFByb3BUeXBlcy5zdHJpbmddKS5pc1JlcXVpcmVkLFxuICAgIC8qKiBjdXJyZW50IHZlcnNlIG51bWJlciAqL1xuICAgIHZlcnNlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuc3RyaW5nXSkuaXNSZXF1aXJlZCxcbiAgfSksXG4gIC8qKiBzZXJ2ZXIgKGUuZy4gJ2h0dHBzOi8vZ2l0LmRvb3I0My5vcmcnKSAqL1xuICBzZXJ2ZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgLyoqIHJlcG8gYnJhbmNoIG9yIHRhZyBzdWNoIGFzIG1hc3RlciAqL1xuICBhcHBSZWY6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgLyoqIGlmIHRydWUgdGhlbiB3b3JkIGRhdGEgaG92ZXIgaXMgc2hvd24gKi9cbiAgZGlzYWJsZVdvcmRQb3BvdmVyOiBQcm9wVHlwZXMuYm9vbCxcbiAgLyoqIENTUyBjbGFzc2VzICovXG4gIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gIC8qKiByZXNvdXJjZUxpbmsgKi9cbiAgcmVzb3VyY2VMaW5rOiBQcm9wVHlwZXMuYW55LFxuICAvKiogdXNlIG1ldGhvZCBmb3IgdXNpbmcgbG9jYWwgc3RvcmFnZSBzcGVjaWZpYyBmb3IgdXNlciAqL1xuICB1c2VVc2VyTG9jYWxTdG9yYWdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAvKiogb3B0aW9uYWwgY2FsbGJhY2sgaWYgZXJyb3IgbG9hZGluZyByZXNvdXJjZSwgcGFyYW1ldGVyIHJldHVybmVkIGFyZTpcbiAgICogICAgKHtzdHJpbmd9IGVycm9yTWVzc2FnZSwge2Jvb2xlYW59IGlzQWNjZXNzRXJyb3IsIHtvYmplY3R9IHJlc291cmNlU3RhdHVzKVxuICAgKiAgICAgIC0gaXNBY2Nlc3NFcnJvciAtIGlzIHRydWUgaWYgdGhpcyB3YXMgYW4gZXJyb3IgdHJ5aW5nIHRvIGFjY2VzcyBmaWxlXG4gICAqICAgICAgLSByZXNvdXJjZVN0YXR1cyAtIGlzIG9iamVjdCBjb250YWluaW5nIGRldGFpbHMgYWJvdXQgcHJvYmxlbXMgZmV0Y2hpbmcgcmVzb3VyY2UgKi9cbiAgb25SZXNvdXJjZUVycm9yOiBQcm9wVHlwZXMuZnVuYyxcbiAgLyoqIG9wdGlvbmFsIGh0dHAgdGltZW91dCBpbiBtaWxsaXNlY29uZHMgZm9yIGZldGNoaW5nIHJlc291cmNlcywgZGVmYXVsdCBpcyAwICh2ZXJ5IGxvbmcgd2FpdCkgKi9cbiAgaHR0cENvbmZpZzogUHJvcFR5cGVzLm9iamVjdCxcbiAgLyoqIG9wdGlvbmFsIHVybCBmb3IgZ3JlZWsgcmVwbyAqL1xuICBncmVla1JlcG9Vcmw6IFByb3BUeXBlcy5zdHJpbmcsXG4gIC8qKiBvcHRpb25hbCB1cmwgZm9yIGhlYnJldyByZXBvICovXG4gIGhlYnJld1JlcG9Vcmw6IFByb3BUeXBlcy5zdHJpbmcsXG4gIC8qKiBmdW5jdGlvbiB0byBnZXQgbGF0ZXN0IGxleGljb24gZGF0YSAqL1xuICBnZXRMZXhpY29uRGF0YTogUHJvcFR5cGVzLmZ1bmMsXG4gIC8qKiBmdW5jdGlvbiB0byBwcmUtbG9hZCBsZXhpY29uIGRhdGEgZm9yIHZlcnNlICovXG4gIGZldGNoR2xvc3Nlc0ZvclZlcnNlOiBQcm9wVHlwZXMuZnVuYyxcbiAgLyoqIG9wdGlvbmFsIGZ1bmN0aW9uIGZvciBsb2NhbGl6YXRpb24gKi9cbiAgdHJhbnNsYXRlOiBQcm9wVHlwZXMuZnVuYyxcbn1cbiJdfQ==
359
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL1NjcmlwdHVyZUNhcmQvU2NyaXB0dXJlQ2FyZC50c3giXSwibmFtZXMiOlsiUmVhY3QiLCJQcm9wVHlwZXMiLCJDYXJkIiwidXNlQ2FyZFN0YXRlIiwiRVJST1JfU1RBVEUiLCJNQU5JRkVTVF9OT1RfTE9BREVEX0VSUk9SIiwiU2NyaXB0dXJlUGFuZSIsIlNjcmlwdHVyZVNlbGVjdG9yIiwidXNlU2NyaXB0dXJlU2V0dGluZ3MiLCJnZXRSZXNvdXJjZUxpbmsiLCJnZXRSZXNvdXJjZU1lc3NhZ2UiLCJnZXRTY3JpcHR1cmVWZXJzaW9uU2V0dGluZ3MiLCJpc09yaWdpbmFsQmlibGUiLCJUaXRsZSIsIktFWV9GT05UX1NJWkVfQkFTRSIsImxhYmVsIiwic3R5bGUiLCJtYXJnaW5Ub3AiLCJ3aWR0aCIsIlNjcmlwdHVyZUNhcmQiLCJpZCIsImlzTlQiLCJ0aXRsZSIsInNlcnZlciIsImFwcFJlZiIsImNhcmROdW0iLCJjbGFzc2VzIiwicmVzb3VyY2UiLCJvd25lciIsImxhbmd1YWdlSWQiLCJyZXNvdXJjZUlkIiwib3JpZ2luYWxMYW5ndWFnZU93bmVyIiwiZ2V0TGFuZ3VhZ2UiLCJyZWZlcmVuY2UiLCJ2ZXJzZSIsImNoYXB0ZXIiLCJib29rSWQiLCJwcm9qZWN0SWQiLCJyZXNvdXJjZUxpbmsiLCJ1c2VVc2VyTG9jYWxTdG9yYWdlIiwiZGlzYWJsZVdvcmRQb3BvdmVyIiwib25SZXNvdXJjZUVycm9yIiwiaHR0cENvbmZpZyIsImdyZWVrUmVwb1VybCIsImhlYnJld1JlcG9VcmwiLCJnZXRMZXhpY29uRGF0YSIsImZldGNoR2xvc3Nlc0ZvclZlcnNlIiwidHJhbnNsYXRlIiwib25NaW5pbWl6ZSIsInVzZVN0YXRlIiwidXJsRXJyb3IiLCJzZXRVcmxFcnJvciIsImZvbnRTaXplIiwic2V0Rm9udFNpemUiLCJzY3JpcHR1cmVDb25maWciLCJzZXRTY3JpcHR1cmUiLCJzY3JpcHR1cmVWZXJzaW9uSGlzdCIsInNjcmlwdHVyZVRpdGxlIiwidXNlRWZmZWN0IiwiZXJyb3IiLCJyZXNvdXJjZVN0YXR1cyIsIm1lc3NhZ2UiLCJpc0FjY2Vzc0Vycm9yIiwidmVyc2lvbiIsInVwZGF0ZVRpdGxlIiwiZ2V0U2NyaXB0dXJlU2VsZWN0b3IiLCJzY3JpcHR1cmVTZWxlY3Rpb25Db25maWciLCJvbk1lbnVDbG9zZSIsImxhbmd1YWdlSWRfIiwibGFuZ3VhZ2UiLCJkaXJlY3Rpb24iLCJpc0hlYnJldyIsImZvbnRGYWN0b3IiLCJzY2FsZWRGb250U2l6ZSIsIm1hdGNoZWRWZXJzZSIsIml0ZW1zIiwic3RhdGUiLCJoZWFkZXJzIiwiZmlsdGVycyIsIml0ZW1JbmRleCIsIm1hcmtkb3duVmlldyIsImFjdGlvbnMiLCJzZXRGaWx0ZXJzIiwic2V0SXRlbUluZGV4Iiwic2V0TWFya2Rvd25WaWV3IiwicmVmU3R5bGUiLCJmb250RmFtaWx5IiwiTWF0aCIsInJvdW5kIiwiY29udGVudFN0eWxlIiwic2NyaXB0dXJlTGFiZWwiLCJkaXNhYmxlV29yZFBvcG92ZXJfIiwidW5kZWZpbmVkIiwiZmV0Y2hHbG9zc0RhdGFGb3JWZXJzZSIsInZlcnNlT2JqZWN0cyIsImxlbmd0aCIsInByb3BUeXBlcyIsInN0cmluZyIsImZ1bmMiLCJpc1JlcXVpcmVkIiwibnVtYmVyIiwic2hhcGUiLCJvbmVPZlR5cGUiLCJib29sIiwib2JqZWN0IiwiYW55Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLQSxLQUFaLE1BQXVCLE9BQXZCO0FBQ0EsT0FBTyxLQUFLQyxTQUFaLE1BQTJCLFlBQTNCO0FBQ0EsU0FDRUMsSUFERixFQUVFQyxZQUZGLEVBR0VDLFdBSEYsRUFJRUMseUJBSkYsUUFLTyx1QkFMUDtBQU1BLFNBQVNDLGFBQVQsRUFBd0JDLGlCQUF4QixRQUFpRCxJQUFqRDtBQUNBLFNBQVNDLG9CQUFULFFBQXFDLGtDQUFyQztBQUNBLFNBQ0VDLGVBREYsRUFFRUMsa0JBRkYsRUFHRUMsMkJB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LENBQUN1RyxNQXJDSzs7QUFzQ3hCO0FBQ0FsRSxFQUFBQSxZQUFZLEVBQUVyQyxTQUFTLENBQUN3RyxHQXZDQTs7QUF3Q3hCO0FBQ0FsRSxFQUFBQSxtQkFBbUIsRUFBRXRDLFNBQVMsQ0FBQ2lHLElBQVYsQ0FBZUMsVUF6Q1o7O0FBMEN4QjtBQUNGO0FBQ0E7QUFDQTtBQUNFMUQsRUFBQUEsZUFBZSxFQUFFeEMsU0FBUyxDQUFDaUcsSUE5Q0g7O0FBK0N4QjtBQUNBeEQsRUFBQUEsVUFBVSxFQUFFekMsU0FBUyxDQUFDdUcsTUFoREU7O0FBaUR4QjtBQUNBN0QsRUFBQUEsWUFBWSxFQUFFMUMsU0FBUyxDQUFDZ0csTUFsREE7O0FBbUR4QjtBQUNBckQsRUFBQUEsYUFBYSxFQUFFM0MsU0FBUyxDQUFDZ0csTUFwREQ7O0FBcUR4QjtBQUNBcEQsRUFBQUEsY0FBYyxFQUFFNUMsU0FBUyxDQUFDaUcsSUF0REY7O0FBdUR4QjtBQUNBcEQsRUFBQUEsb0JBQW9CLEVBQUU3QyxTQUFTLENBQUNpRyxJQXhEUjs7QUF5RHhCO0FBQ0FuRCxFQUFBQSxTQUFTLEVBQUU5QyxTQUFTLENBQUNpRyxJQTFERzs7QUEyRHhCO0FBQ0FsRCxFQUFBQSxVQUFVLEVBQUUvQyxTQUFTLENBQUNpRztBQTVERSxDQUExQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0ICogYXMgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnXG5pbXBvcnQge1xuICBDYXJkLFxuICB1c2VDYXJkU3RhdGUsXG4gIEVSUk9SX1NUQVRFLFxuICBNQU5JRkVTVF9OT1RfTE9BREVEX0VSUk9SLFxufSBmcm9tICd0cmFuc2xhdGlvbi1oZWxwcy1yY2wnXG5pbXBvcnQgeyBTY3JpcHR1cmVQYW5lLCBTY3JpcHR1cmVTZWxlY3RvciB9IGZyb20gJy4uJ1xuaW1wb3J0IHsgdXNlU2NyaXB0dXJlU2V0dGluZ3MgfSBmcm9tICcuLi8uLi9ob29rcy91c2VTY3JpcHR1cmVTZXR0aW5ncydcbmltcG9ydCB7XG4gIGdldFJlc291cmNlTGluayxcbiAgZ2V0UmVzb3VyY2VNZXNzYWdlLFxuICBnZXRTY3JpcHR1cmVWZXJzaW9uU2V0dGluZ3MsXG4gIGlzT3JpZ2luYWxCaWJsZSxcbn0gZnJvbSAnLi4vLi4vdXRpbHMvU2NyaXB0dXJlU2V0dGluZ3MnXG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJy4uL1NjcmlwdHVyZVBhbmUvc3R5bGVkJ1xuXG5jb25zdCBLRVlfRk9OVF9TSVpFX0JBU0UgPSAnc2NyaXB0dXJlUGFuZUZvbnRTaXplXydcbmNvbnN0IGxhYmVsID0gJ1ZlcnNpb24nXG5jb25zdCBzdHlsZSA9IHsgbWFyZ2luVG9wOiAnMTZweCcsIHdpZHRoOiAnNTAwcHgnIH1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gU2NyaXB0dXJlQ2FyZCh7XG4gIGlkLFxuICBpc05ULFxuICB0aXRsZSxcbiAgc2VydmVyLFxuICBhcHBSZWYsXG4gIGNhcmROdW0sXG4gIGNsYXNzZXMsXG4gIHJlc291cmNlOiB7XG4gICAgb3duZXIsXG4gICAgbGFuZ3VhZ2VJZCxcbiAgICByZXNvdXJjZUlkLFxuICAgIG9yaWdpbmFsTGFuZ3VhZ2VPd25lcixcbiAgfSxcbiAgZ2V0TGFuZ3VhZ2UsXG4gIHJlZmVyZW5jZToge1xuICAgIHZlcnNlLFxuICAgIGNoYXB0ZXIsXG4gICAgcHJvamVjdElkOiBib29rSWQsXG4gIH0sXG4gIHJlc291cmNlTGluayxcbiAgdXNlVXNlckxvY2FsU3RvcmFnZSxcbiAgZGlzYWJsZVdvcmRQb3BvdmVyLFxuICBvblJlc291cmNlRXJyb3IsXG4gIGh0dHBDb25maWcsXG4gIGdyZWVrUmVwb1VybCxcbiAgaGVicmV3UmVwb1VybCxcbiAgZ2V0TGV4aWNvbkRhdGEsXG4gIGZldGNoR2xvc3Nlc0ZvclZlcnNlLFxuICB0cmFuc2xhdGUsXG4gIG9uTWluaW1pemUsXG59KSB7XG4gIGNvbnN0IFt1cmxFcnJvciwgc2V0VXJsRXJyb3JdID0gUmVhY3QudXNlU3RhdGUobnVsbClcbiAgY29uc3QgW2ZvbnRTaXplLCBzZXRGb250U2l6ZV0gPSB1c2VVc2VyTG9jYWxTdG9yYWdlKEtFWV9GT05UX1NJWkVfQkFTRSArIGNhcmROdW0sIDEwMClcbiAgY29uc3Qge1xuICAgIHNjcmlwdHVyZUNvbmZpZyxcbiAgICBzZXRTY3JpcHR1cmUsXG4gICAgc2NyaXB0dXJlVmVyc2lvbkhpc3QsXG4gIH0gPSB1c2VTY3JpcHR1cmVTZXR0aW5ncyh7XG4gICAgaXNOVCxcbiAgICB0aXRsZSxcbiAgICB2ZXJzZSxcbiAgICBvd25lcixcbiAgICBib29rSWQsXG4gICAgYXBwUmVmLFxuICAgIHNlcnZlcixcbiAgICBjYXJkTnVtLFxuICAgIGNoYXB0ZXIsXG4gICAgbGFuZ3VhZ2VJZCxcbiAgICByZXNvdXJjZUlkLFxuICAgIHJlc291cmNlTGluayxcbiAgICB1c2VVc2VyTG9jYWxTdG9yYWdlLFxuICAgIGRpc2FibGVXb3JkUG9wb3ZlcixcbiAgICBvcmlnaW5hbExhbmd1YWdlT3duZXIsXG4gICAgc2V0VXJsRXJyb3IsXG4gICAgaHR0cENvbmZpZyxcbiAgICBncmVla1JlcG9VcmwsXG4gICAgaGVicmV3UmVwb1VybCxcbiAgfSlcblxuICBsZXQgc2NyaXB0dXJlVGl0bGVcblxuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGVycm9yID0gc2NyaXB0dXJlQ29uZmlnPy5yZXNvdXJjZVN0YXR1cz8uW0VSUk9SX1NUQVRFXVxuXG4gICAgaWYgKGVycm9yKSB7IC8vIGlmIGVycm9yIHdhcyBmb3VuZCBkbyBjYWxsYmFja1xuICAgICAgY29uc3QgcmVzb3VyY2VTdGF0dXMgPSBzY3JpcHR1cmVDb25maWc/LnJlc291cmNlU3RhdHVzXG4gICAgICBjb25zdCByZXNvdXJjZUxpbmsgPSBnZXRSZXNvdXJjZUxpbmsoc2NyaXB0dXJlQ29uZmlnKVxuICAgICAgY29uc3QgbWVzc2FnZSA9IGdldFJlc291cmNlTWVzc2FnZShyZXNvdXJjZVN0YXR1cywgc2VydmVyLCByZXNvdXJjZUxpbmssIGlzTlQoYm9va0lkKSlcbiAgICAgIGNvbnN0IGlzQWNjZXNzRXJyb3IgPSByZXNvdXJjZVN0YXR1c1tNQU5JRkVTVF9OT1RfTE9BREVEX0VSUk9SXVxuICAgICAgb25SZXNvdXJjZUVycm9yICYmIG9uUmVzb3VyY2VFcnJvcihtZXNzYWdlLCBpc0FjY2Vzc0Vycm9yLCByZXNvdXJjZVN0YXR1cylcbiAgICB9XG4gIH0sIFtzY3JpcHR1cmVDb25maWc/LnJlc291cmNlU3RhdHVzPy5bRVJST1JfU1RBVEVdXSlcblxuICBpZiAoc2NyaXB0dXJlQ29uZmlnLnRpdGxlICYmIHNjcmlwdHVyZUNvbmZpZy52ZXJzaW9uKSB7XG4gICAgc2NyaXB0dXJlVGl0bGUgPSBgJHtzY3JpcHR1cmVDb25maWcudGl0bGV9IHYke3NjcmlwdHVyZUNvbmZpZy52ZXJzaW9ufWBcbiAgICBzY3JpcHR1cmVWZXJzaW9uSGlzdC51cGRhdGVUaXRsZShzY3JpcHR1cmVDb25maWcucmVzb3VyY2VMaW5rLCBzY3JpcHR1cmVUaXRsZSlcbiAgfSBlbHNlIHtcbiAgICBzY3JpcHR1cmVUaXRsZSA9IGBUaXRsZSBtaXNzaW5nIGZyb20gcHJvamVjdCBtYW5pZmVzdGBcbiAgfVxuXG4gIC8qKiBEeW5hbWljYWxseSBjcmVhdGVzIHRoZSBzY3JpcHR1cmUgc2VsZWN0aW9uIGRyb3Bkb3duIHRvIGJlIGluc2VydGVkIGludG8gY2FyZCBzZXR0aW5ncyAqL1xuICBmdW5jdGlvbiBnZXRTY3JpcHR1cmVTZWxlY3RvcigpIHtcbiAgICBjb25zdCBzY3JpcHR1cmVTZWxlY3Rpb25Db25maWcgPSBnZXRTY3JpcHR1cmVWZXJzaW9uU2V0dGluZ3Moe1xuICAgICAgbGFiZWwsXG4gICAgICByZXNvdXJjZUxpbms6IHNjcmlwdHVyZUNvbmZpZy5yZXNvdXJjZUxpbmssXG4gICAgICBzZXRTY3JpcHR1cmUsXG4gICAgICBzY3JpcHR1cmVWZXJzaW9uSGlzdCxcbiAgICB9KVxuXG4gICAgcmV0dXJuIDxTY3JpcHR1cmVTZWxlY3RvciB7Li4uc2NyaXB0dXJlU2VsZWN0aW9uQ29uZmlnfSBzdHlsZT17c3R5bGV9IGVycm9yTWVzc2FnZT17dXJsRXJyb3J9IC8+XG4gIH1cblxuICBmdW5jdGlvbiBvbk1lbnVDbG9zZSgpIHtcbiAgICAvLyBjb25zb2xlLmxvZyhgb25NZW51Q2xvc2UoKWApXG4gICAgc2V0VXJsRXJyb3IobnVsbCkgLy8gY2xlYXIgYW55IGVycm9yIG1lc3NhZ2VzXG4gIH1cblxuICAvLyBAdHMtaWdub3JlXG4gIGNvbnN0IGxhbmd1YWdlSWRfID0gc2NyaXB0dXJlQ29uZmlnPy5yZXNvdXJjZT8ubGFuZ3VhZ2VJZFxuICBjb25zdCBsYW5ndWFnZSA9IGdldExhbmd1YWdlKHsgbGFuZ3VhZ2VJZDogbGFuZ3VhZ2VJZF8gfSlcbiAgY29uc3QgZGlyZWN0aW9uID0gKGxhbmd1YWdlPy5kaXJlY3Rpb24pIHx8ICdsdHInXG4gIGNvbnN0IHJlZmVyZW5jZSA9IHsgLi4uc2NyaXB0dXJlQ29uZmlnLnJlZmVyZW5jZSB9XG5cbiAgY29uc3QgaXNIZWJyZXcgPSAobGFuZ3VhZ2VJZF8gPT09ICdoYm8nKVxuICBjb25zdCBmb250RmFjdG9yID0gaXNIZWJyZXcgPyAxLjQgOiAxIC8vIHdlIGF1dG9tYXRpY2FsbHkgc2NhbGUgdXAgZm9udCBzaXplIGZvciBIZWJyZXdcbiAgY29uc3Qgc2NhbGVkRm9udFNpemUgPSBmb250U2l6ZSAqIGZvbnRGYWN0b3JcblxuICBpZiAoc2NyaXB0dXJlQ29uZmlnLm1hdGNoZWRWZXJzZSkgeyAvLyBzdXBwb3J0IHZlcnNlIHJhbmdlc1xuICAgIHJlZmVyZW5jZS52ZXJzZSA9IHNjcmlwdHVyZUNvbmZpZy5tYXRjaGVkVmVyc2VcbiAgfVxuXG4gIGNvbnN0IGl0ZW1zID0gbnVsbFxuICBjb25zdCB7XG4gICAgc3RhdGU6IHtcbiAgICAgIGhlYWRlcnMsIGZpbHRlcnMsIGl0ZW1JbmRleCwgbWFya2Rvd25WaWV3LFxuICAgIH0sXG4gICAgYWN0aW9uczoge1xuICAgICAgc2V0RmlsdGVycywgc2V0SXRlbUluZGV4LCBzZXRNYXJrZG93blZpZXcsXG4gICAgfSxcbiAgfSA9IHVzZUNhcmRTdGF0ZSh7IGl0ZW1zIH0pXG5cbiAgY29uc3QgcmVmU3R5bGUgPSB7XG4gICAgZm9udEZhbWlseTogJ05vdG8gU2FucycsXG4gICAgZm9udFNpemU6IGAke01hdGgucm91bmQoc2NhbGVkRm9udFNpemUgKiAwLjkpfSVgLFxuICB9XG5cbiAgY29uc3QgY29udGVudFN0eWxlID0ge1xuICAgIGZvbnRGYW1pbHk6ICdOb3RvIFNhbnMnLFxuICAgIGZvbnRTaXplOiBgJHtzY2FsZWRGb250U2l6ZX0lYCxcbiAgfVxuXG4gIGNvbnN0IHNjcmlwdHVyZUxhYmVsID0gPFRpdGxlPntzY3JpcHR1cmVUaXRsZX08L1RpdGxlPlxuICBsZXQgZGlzYWJsZVdvcmRQb3BvdmVyXyA9IGRpc2FibGVXb3JkUG9wb3ZlclxuXG4gIGlmIChkaXNhYmxlV29yZFBvcG92ZXIgPT09IHVuZGVmaW5lZCkgeyAvLyBpZiBub3Qgc3BlY2lmaWVkLCB0aGVuIGRldGVybWluZSBpZiBvcmlnaW5hbCBsYW5ndWFnZSByZXNvdXJjZVxuICAgIGRpc2FibGVXb3JkUG9wb3Zlcl8gPSAhaXNPcmlnaW5hbEJpYmxlKHNjcmlwdHVyZUNvbmZpZ1sncmVzb3VyY2UnXT8ucHJvamVjdElkKVxuICB9XG5cbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBmZXRjaEdsb3NzRGF0YUZvclZlcnNlID0gYXN5bmMgKCkgPT4ge1xuICAgICAgaWYgKCFkaXNhYmxlV29yZFBvcG92ZXIgJiYgc2NyaXB0dXJlQ29uZmlnPy52ZXJzZU9iamVjdHM/Lmxlbmd0aCAmJiBmZXRjaEdsb3NzZXNGb3JWZXJzZSkge1xuICAgICAgICBhd2FpdCBmZXRjaEdsb3NzZXNGb3JWZXJzZShzY3JpcHR1cmVDb25maWc/LnZlcnNlT2JqZWN0cywgbGFuZ3VhZ2VJZF8pXG4gICAgICB9XG4gICAgfVxuXG4gICAgZmV0Y2hHbG9zc0RhdGFGb3JWZXJzZSgpXG4gIH0sIFtzY3JpcHR1cmVDb25maWc/LnZlcnNlT2JqZWN0c10pXG5cbiAgcmV0dXJuIChcbiAgICA8Q2FyZFxuICAgICAgaWQ9e2BzY3JpcHR1cmVfY2FyZF8ke2NhcmROdW19YH1cbiAgICAgIHRpdGxlPXtzY3JpcHR1cmVMYWJlbH1cbiAgICAgIHNldHRpbmdzVGl0bGU9e3NjcmlwdHVyZVRpdGxlICsgJyBTZXR0aW5ncyd9XG4gICAgICBpdGVtcz17aXRlbXN9XG4gICAgICBjbGFzc2VzPXtjbGFzc2VzfVxuICAgICAgaGVhZGVycz17aGVhZGVyc31cbiAgICAgIGZpbHRlcnM9e2ZpbHRlcnN9XG4gICAgICBmb250U2l6ZT17Zm9udFNpemV9XG4gICAgICBpdGVtSW5kZXg9e2l0ZW1JbmRleH1cbiAgICAgIHNldEZpbHRlcnM9e3NldEZpbHRlcnN9XG4gICAgICBzZXRGb250U2l6ZT17c2V0Rm9udFNpemV9XG4gICAgICBzZXRJdGVtSW5kZXg9e3NldEl0ZW1JbmRleH1cbiAgICAgIG1hcmtkb3duVmlldz17bWFya2Rvd25WaWV3fVxuICAgICAgc2V0TWFya2Rvd25WaWV3PXtzZXRNYXJrZG93blZpZXd9XG4gICAgICBnZXRDdXN0b21Db21wb25lbnQ9e2dldFNjcmlwdHVyZVNlbGVjdG9yfVxuICAgICAgaGlkZU1hcmtkb3duVG9nZ2xlXG4gICAgICBvbk1lbnVDbG9zZT17b25NZW51Q2xvc2V9XG4gICAgICBvbk1pbmltaXplPXtvbk1pbmltaXplID8gKCkgPT4gb25NaW5pbWl6ZShpZCkgOiBudWxsfVxuICAgID5cbiAgICAgIDxTY3JpcHR1cmVQYW5lXG4gICAgICAgIHJlZlN0eWxlPXtyZWZTdHlsZX1cbiAgICAgICAgey4uLnNjcmlwdHVyZUNvbmZpZ31cbiAgICAgICAgaXNOVD17aXNOVChib29rSWQpfVxuICAgICAgICBzZXJ2ZXI9e3NlcnZlcn1cbiAgICAgICAgcmVmZXJlbmNlPXtyZWZlcmVuY2V9XG4gICAgICAgIGRpcmVjdGlvbj17ZGlyZWN0aW9ufVxuICAgICAgICBjb250ZW50U3R5bGU9e2NvbnRlbnRTdHlsZX1cbiAgICAgICAgZm9udFNpemU9e2ZvbnRTaXplfVxuICAgICAgICBkaXNhYmxlV29yZFBvcG92ZXI9e2Rpc2FibGVXb3JkUG9wb3Zlcl99XG4gICAgICAgIGdldExleGljb25EYXRhPXtnZXRMZXhpY29uRGF0YX1cbiAgICAgICAgdHJhbnNsYXRlPXt0cmFuc2xhdGV9XG4gICAgICAvPlxuICAgIDwvQ2FyZD5cbiAgKVxufVxuXG5TY3JpcHR1cmVDYXJkLnByb3BUeXBlcyA9IHtcbiAgLyoqIGlkZW50aWZpZXIgdG8gdXNlIGZvciBjYXJkICovXG4gIGlkOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAvKiogbWV0aG9kIHRvIGRldGVybWluZSBpZiBOVCBvciBPVCAqL1xuICBpc05UOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAvKiogdGl0bGUgZm9yIHNjcmlwdHVyZSBjYXJkICovXG4gIHRpdGxlOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIC8qKiBnZXQgbGFuZ3VhZ2UgZGV0YWlscyAqL1xuICBnZXRMYW5ndWFnZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgLyoqIHNjcmlwdHVyZSBjYXJkIG51bWJlciAoMCB0byAyIGZvciBleGFtcGxlKSAqL1xuICBjYXJkTnVtOiBQcm9wVHlwZXMubnVtYmVyLmlzUmVxdWlyZWQsXG4gIC8qKiByZXNvdXJjZSBvYmplY3QgKi9cbiAgcmVzb3VyY2U6IFByb3BUeXBlcy5zaGFwZSh7XG4gICAgLyoqIHJlc291cmNlIGxhbmd1YWdlIHRvIHVzZSAqL1xuICAgIGxhbmd1YWdlSWQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAvKiogcmVwbyBvd25lciBzdWNoIGFzIHVuZm9sZGluZ1dvcmQgKi9cbiAgICBvd25lcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgIC8qKiByZXNvdXJjZUlkIHRvIHVzZSAoZS5nLiB1Z250KSAqL1xuICAgIHJlc291cmNlSWQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAvKiogcmVwbyBvd25lciBmb3Igb3JpZ2luYWwgbGFuZ3VhZ2VzIHN1Y2ggYXMgdW5mb2xkaW5nV29yZCAqL1xuICAgIG9yaWdpbmFsTGFuZ3VhZ2VPd25lcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICB9KSxcbiAgcmVmZXJlbmNlOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgIC8qKiBwcm9qZWN0SWQgKGJvb2tJRCkgdG8gdXNlICovXG4gICAgcHJvamVjdElkOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgLyoqIGN1cnJlbnQgY2hhcHRlciBudW1iZXIgKi9cbiAgICBjaGFwdGVyOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuc3RyaW5nXSkuaXNSZXF1aXJlZCxcbiAgICAvKiogY3VycmVudCB2ZXJzZSBudW1iZXIgKi9cbiAgICB2ZXJzZTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLm51bWJlciwgUHJvcFR5cGVzLnN0cmluZ10pLmlzUmVxdWlyZWQsXG4gIH0pLFxuICAvKiogc2VydmVyIChlLmcuICdodHRwczovL2dpdC5kb29yNDMub3JnJykgKi9cbiAgc2VydmVyOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIC8qKiByZXBvIGJyYW5jaCBvciB0YWcgc3VjaCBhcyBtYXN0ZXIgKi9cbiAgYXBwUmVmOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIC8qKiBpZiB0cnVlIHRoZW4gd29yZCBkYXRhIGhvdmVyIGlzIHNob3duICovXG4gIGRpc2FibGVXb3JkUG9wb3ZlcjogUHJvcFR5cGVzLmJvb2wsXG4gIC8qKiBDU1MgY2xhc3NlcyAqL1xuICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LFxuICAvKiogcmVzb3VyY2VMaW5rICovXG4gIHJlc291cmNlTGluazogUHJvcFR5cGVzLmFueSxcbiAgLyoqIHVzZSBtZXRob2QgZm9yIHVzaW5nIGxvY2FsIHN0b3JhZ2Ugc3BlY2lmaWMgZm9yIHVzZXIgKi9cbiAgdXNlVXNlckxvY2FsU3RvcmFnZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgLyoqIG9wdGlvbmFsIGNhbGxiYWNrIGlmIGVycm9yIGxvYWRpbmcgcmVzb3VyY2UsIHBhcmFtZXRlciByZXR1cm5lZCBhcmU6XG4gICAqICAgICh7c3RyaW5nfSBlcnJvck1lc3NhZ2UsIHtib29sZWFufSBpc0FjY2Vzc0Vycm9yLCB7b2JqZWN0fSByZXNvdXJjZVN0YXR1cylcbiAgICogICAgICAtIGlzQWNjZXNzRXJyb3IgLSBpcyB0cnVlIGlmIHRoaXMgd2FzIGFuIGVycm9yIHRyeWluZyB0byBhY2Nlc3MgZmlsZVxuICAgKiAgICAgIC0gcmVzb3VyY2VTdGF0dXMgLSBpcyBvYmplY3QgY29udGFpbmluZyBkZXRhaWxzIGFib3V0IHByb2JsZW1zIGZldGNoaW5nIHJlc291cmNlICovXG4gIG9uUmVzb3VyY2VFcnJvcjogUHJvcFR5cGVzLmZ1bmMsXG4gIC8qKiBvcHRpb25hbCBodHRwIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzIGZvciBmZXRjaGluZyByZXNvdXJjZXMsIGRlZmF1bHQgaXMgMCAodmVyeSBsb25nIHdhaXQpICovXG4gIGh0dHBDb25maWc6IFByb3BUeXBlcy5vYmplY3QsXG4gIC8qKiBvcHRpb25hbCB1cmwgZm9yIGdyZWVrIHJlcG8gKi9cbiAgZ3JlZWtSZXBvVXJsOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAvKiogb3B0aW9uYWwgdXJsIGZvciBoZWJyZXcgcmVwbyAqL1xuICBoZWJyZXdSZXBvVXJsOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAvKiogZnVuY3Rpb24gdG8gZ2V0IGxhdGVzdCBsZXhpY29uIGRhdGEgKi9cbiAgZ2V0TGV4aWNvbkRhdGE6IFByb3BUeXBlcy5mdW5jLFxuICAvKiogZnVuY3Rpb24gdG8gcHJlLWxvYWQgbGV4aWNvbiBkYXRhIGZvciB2ZXJzZSAqL1xuICBmZXRjaEdsb3NzZXNGb3JWZXJzZTogUHJvcFR5cGVzLmZ1bmMsXG4gIC8qKiBvcHRpb25hbCBmdW5jdGlvbiBmb3IgbG9jYWxpemF0aW9uICovXG4gIHRyYW5zbGF0ZTogUHJvcFR5cGVzLmZ1bmMsXG4gIC8qKiBmdW5jdGlvbiB0byBtaW5pbWl6ZSB0aGUgY2FyZCAob3B0aW9uYWwpICovXG4gIG9uTWluaW1pemU6IFByb3BUeXBlcy5mdW5jLFxufVxuIl19
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "single-scripture-rcl",
3
3
  "description": "A React Component Library for Rendering a Single Scripture Resource.",
4
- "version": "3.1.0-alpha.2",
4
+ "version": "3.2.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/unfoldingWord/single-scripture-rcl.git"
@@ -24,8 +24,10 @@
24
24
  "prop-types": "^15.x",
25
25
  "react": "^17.x",
26
26
  "react-dom": "^17.x",
27
- "scripture-resources-rcl": "^5.x",
28
- "translation-helps-rcl": "^1.x"
27
+ "scripture-resources-rcl": "^5.2.0",
28
+ "tc-ui-toolkit": "^5.3.3",
29
+ "translation-helps-rcl": "^1.x",
30
+ "word-aligner": "^1.0.0"
29
31
  },
30
32
  "devDependencies": {
31
33
  "@babel/cli": "^7.12.1",
@@ -61,10 +63,12 @@
61
63
  "react": "^17.0.1",
62
64
  "react-dom": "^17.0.1",
63
65
  "react-styleguidist": "^11.1.5",
64
- "scripture-resources-rcl": "5.0.0",
66
+ "scripture-resources-rcl": "^5.2.0",
65
67
  "style-loader": "^2.0.0",
68
+ "tc-ui-toolkit": "^5.3.3",
66
69
  "translation-helps-rcl": "1.47.0",
67
- "webpack": "^4.44.2"
70
+ "webpack": "^4.44.2",
71
+ "word-aligner": "^1.0.0"
68
72
  },
69
73
  "dependencies": {
70
74
  "@types/react": "^17.0.0",