@vidispine/vdt-js 22.3.0-pre.2 → 22.3.0-pre.5

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/dist/index.js CHANGED
@@ -3,23 +3,23 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
7
6
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
7
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
8
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
8
9
  var _typeof = require('@babel/runtime/helpers/typeof');
9
10
  var _classCallCheck = require('@babel/runtime/helpers/classCallCheck');
10
11
  var _createClass = require('@babel/runtime/helpers/createClass');
11
- var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
12
12
  var parseFileSize = require('filesize');
13
13
 
14
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
15
 
16
16
  var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
17
- var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
18
17
  var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
18
+ var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
19
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
19
20
  var _typeof__default = /*#__PURE__*/_interopDefaultLegacy(_typeof);
20
21
  var _classCallCheck__default = /*#__PURE__*/_interopDefaultLegacy(_classCallCheck);
21
22
  var _createClass__default = /*#__PURE__*/_interopDefaultLegacy(_createClass);
22
- var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
23
23
  var parseFileSize__default = /*#__PURE__*/_interopDefaultLegacy(parseFileSize);
24
24
 
25
25
  function ownKeys$8(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
@@ -259,171 +259,212 @@ var roles = /*#__PURE__*/Object.freeze({
259
259
  VXA_READ: VXA_READ
260
260
  });
261
261
 
262
- var _excluded$4 = ["groupName"],
262
+ var _excluded$4 = ["value"],
263
263
  _excluded2$2 = ["start", "end"];
264
264
 
265
265
  function ownKeys$7(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
266
266
 
267
267
  function _objectSpread$7(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$7(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$7(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
268
268
 
269
- var parseValueList$1 = function parseValueList(value) {
270
- if (value === undefined) return [];
271
- if (value === null) return [{
272
- value: ''
273
- }];
269
+ var COMBINED_PROPERTY_KEYS = ['uuid', 'user', 'timestamp', 'change', 'conflict', 'mode', 'name', 'id', 'referenced', 'data', 'inheritance'];
270
+ var GROUP_PROPERTY_KEYS = [].concat(COMBINED_PROPERTY_KEYS, ['cycle']);
271
+ var FIELD_PROPERTY_KEYS = [].concat(COMBINED_PROPERTY_KEYS, ['value', 'reference', 'type', 'track']);
272
+ var FIELD_VALUE_PROPERTY_KEYS = [].concat(COMBINED_PROPERTY_KEYS, ['value', 'lang']);
273
+
274
+ var isObject = function isObject(o) {
275
+ return Object.prototype.toString.call(o) === '[object Object]';
276
+ };
277
+
278
+ var isDate = function isDate(o) {
279
+ return Object.prototype.toString.call(o) === '[object Date]';
280
+ };
281
+
282
+ var isField = function isField(value) {
283
+ var FIELD_TYPES = ['string', 'boolean', 'number'];
284
+
285
+ var isFieldType = function isFieldType(v) {
286
+ return FIELD_TYPES.includes(_typeof__default["default"](v));
287
+ };
288
+
289
+ var isFieldObject = function isFieldObject(v) {
290
+ return isObject(v) && (v.value === null || isObject(v.value) || isFieldType(v.value));
291
+ };
292
+
293
+ if (value === null) {
294
+ return true;
295
+ }
274
296
 
275
297
  if (Array.isArray(value)) {
276
- return value.map(function (valueOrObject) {
277
- if (_typeof__default["default"](valueOrObject) === 'object') {
278
- return _objectSpread$7({
279
- value: valueOrObject.value || ''
280
- }, valueOrObject);
281
- }
298
+ return value.some(isField);
299
+ }
282
300
 
283
- return {
284
- value: valueOrObject
285
- };
286
- });
301
+ return isFieldType(value) || isFieldObject(value) || isDate(value);
302
+ };
303
+
304
+ var isGroup = function isGroup(value) {
305
+ var isGroupObject = function isGroupObject(v) {
306
+ return isObject(v) && v.value === undefined && Object.entries(value);
307
+ };
308
+
309
+ if (Array.isArray(value)) {
310
+ return value.every(isGroup);
287
311
  }
288
312
 
289
- if (value.value) return [value];
290
- return [{
291
- value: value
292
- }];
313
+ return isGroupObject(value);
293
314
  };
294
315
 
295
- var parseValue = function parseValue() {
296
- var fieldValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
316
+ var tryPluralize = function tryPluralize(str, arr) {
317
+ return str + (arr.length > 1 ? 's' : '');
318
+ };
297
319
 
298
- if (fieldValue && (fieldValue.value || fieldValue.name)) {
299
- var valueList = fieldValue.value,
300
- uuid = fieldValue.uuid;
301
- var value = parseValueList$1(valueList);
302
- return {
303
- value: value,
304
- uuid: uuid
305
- };
320
+ var ensureKeysAreValid = function ensureKeysAreValid(keysToCheck, keysToMatch) {
321
+ var unsupportedKeys = keysToCheck.filter(function (k) {
322
+ return !keysToMatch.includes(k);
323
+ });
324
+
325
+ if (unsupportedKeys.length) {
326
+ throw Error("Unsupported ".concat(tryPluralize('key', unsupportedKeys), " (").concat(unsupportedKeys.join(', '), ")"));
327
+ }
328
+ };
329
+
330
+ var parseValue = function parseValue(value) {
331
+ if (Array.isArray(value)) {
332
+ throw Error('Invalid value object, cannot be array');
306
333
  }
307
334
 
335
+ if ([undefined, null].includes(value)) return {};
336
+ if (isDate(value)) return {
337
+ value: value.toISOString()
338
+ };
308
339
  return {
309
- value: parseValueList$1(fieldValue)
340
+ value: value
310
341
  };
311
342
  };
312
343
 
313
- var parseField$1 = function parseField() {
314
- var field = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
315
- var name = field.name,
316
- value = field.value;
317
- var parsedValue = parseValue(value);
318
- return _objectSpread$7({
319
- name: name
320
- }, parsedValue);
344
+ var parseValueObject = function parseValueObject(valueObject) {
345
+ ensureKeysAreValid(Object.keys(valueObject), FIELD_VALUE_PROPERTY_KEYS);
346
+
347
+ if (Object.keys(valueObject).length === 0) {
348
+ throw Error('Invalid value object, cannot be empty object');
349
+ }
350
+
351
+ var parsedValue = parseValue(valueObject === null || valueObject === void 0 ? void 0 : valueObject.value);
352
+ return _objectSpread$7(_objectSpread$7({}, valueObject), parsedValue !== undefined ? parsedValue : {});
321
353
  };
322
354
 
323
- var shouldBeField = function shouldBeField(_ref) {
324
- var name = _ref.name,
325
- value = _ref.value;
326
- return ['string', 'boolean', 'number'].includes(_typeof__default["default"](value)) || name !== 'group' && Array.isArray(value) || value === null;
355
+ var parseFieldValue = function parseFieldValue(value) {
356
+ if ([undefined, null].includes(value)) return undefined;
357
+ if (Array.isArray(value)) return value.map(parseFieldValue);
358
+ if (isObject(value)) return parseValueObject(value);
359
+ return parseValue(value);
327
360
  };
328
361
 
329
- var parseGroup$1 = function parseGroup() {
330
- var thisGroup = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
331
- var groupName = thisGroup.name,
332
- _thisGroup$value = thisGroup.value,
333
- groupsOrFields = _thisGroup$value === void 0 ? {} : _thisGroup$value; // eslint-disable-next-line no-use-before-define
362
+ var parseFieldObject = function parseFieldObject(fieldObject) {
363
+ ensureKeysAreValid(Object.keys(fieldObject), FIELD_PROPERTY_KEYS);
364
+ var parsedFieldValue = parseFieldValue(fieldObject === null || fieldObject === void 0 ? void 0 : fieldObject.value);
334
365
 
335
- var _parseGroupsOrFields = parseGroupsOrFields(groupsOrFields),
336
- field = _parseGroupsOrFields.field,
337
- group = _parseGroupsOrFields.group;
366
+ if (parsedFieldValue === undefined) {
367
+ fieldObject.value;
368
+ var fieldObjectWithoutValue = _objectWithoutProperties__default["default"](fieldObject, _excluded$4);
369
+
370
+ return fieldObjectWithoutValue;
371
+ }
372
+
373
+ return _objectSpread$7(_objectSpread$7({}, fieldObject), {}, {
374
+ value: _toConsumableArray__default["default"](Array.isArray(parsedFieldValue) ? parsedFieldValue : [parsedFieldValue])
375
+ });
376
+ };
377
+
378
+ var parseField$1 = function parseField(field) {
379
+ if (isObject(field)) {
380
+ return parseFieldObject(field);
381
+ }
382
+
383
+ var parsedFieldValue = parseFieldValue(field);
384
+
385
+ if (parsedFieldValue === undefined) {
386
+ return undefined;
387
+ }
338
388
 
339
389
  return {
340
- name: groupName,
341
- group: group,
342
- field: field
390
+ value: _toConsumableArray__default["default"](Array.isArray(parsedFieldValue) ? parsedFieldValue : [parsedFieldValue])
343
391
  };
344
392
  };
345
393
 
346
- var parseGroupsOrFields = function parseGroupsOrFields(groupsOrFields) {
394
+ var parseGroupsAndFields = function parseGroupsAndFields(groupOrField) {
347
395
  var group = [];
348
396
  var field = [];
349
- Object.entries(groupsOrFields).forEach(function (_ref2) {
350
- var _ref3 = _slicedToArray__default["default"](_ref2, 2),
351
- name = _ref3[0],
352
- value = _ref3[1];
353
-
354
- if (shouldBeField({
355
- name: name,
356
- value: value
357
- })) {
358
- field.push(parseField$1({
359
- name: name,
360
- value: value
361
- }));
362
- } else if (Array.isArray(value)) {
363
- value.forEach(function (_ref4) {
364
- var groupName = _ref4.groupName,
365
- groupValue = _objectWithoutProperties__default["default"](_ref4, _excluded$4);
366
-
367
- group.push(parseGroup$1({
368
- name: groupName,
369
- value: groupValue
370
- }));
397
+ var groupAttributes = {};
398
+ Object.entries(groupOrField || {}).forEach(function (_ref) {
399
+ var _ref2 = _slicedToArray__default["default"](_ref, 2),
400
+ name = _ref2[0],
401
+ value = _ref2[1];
402
+
403
+ if (GROUP_PROPERTY_KEYS.includes(name)) {
404
+ groupAttributes = _objectSpread$7(_objectSpread$7({}, groupAttributes), {}, _defineProperty__default["default"]({}, name, value));
405
+ } else if (isField(value)) {
406
+ try {
407
+ field.push(_objectSpread$7({
408
+ name: name
409
+ }, parseField$1(value)));
410
+ } catch (error) {
411
+ throw Error(error.message + (name ? " for field \"".concat(name, "\"") : ''));
412
+ }
413
+ } else if (isGroup(value)) {
414
+ (Array.isArray(value) ? value : [value]).forEach(function (v) {
415
+ group.push(_objectSpread$7({
416
+ name: name
417
+ }, parseGroupsAndFields(v)));
371
418
  });
372
419
  } else {
373
- group.push(parseGroup$1({
374
- name: name,
375
- value: value
376
- }));
420
+ throw Error("Unhandled value for \"".concat(name, "\""));
377
421
  }
378
422
  });
379
- return {
380
- group: group,
423
+ return _objectSpread$7(_objectSpread$7(_objectSpread$7({}, groupAttributes), group.length > 0 ? {
424
+ group: group
425
+ } : {}), field.length > 0 ? {
381
426
  field: field
382
- };
427
+ } : {});
383
428
  };
384
429
 
385
430
  var parseTimespan$1 = function parseTimespan() {
386
431
  var timespan = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
387
432
 
388
- var _ref5 = timespan || {},
389
- _ref5$start = _ref5.start,
390
- start = _ref5$start === void 0 ? '-INF' : _ref5$start,
391
- _ref5$end = _ref5.end,
392
- end = _ref5$end === void 0 ? '+INF' : _ref5$end,
393
- groupsOrFields = _objectWithoutProperties__default["default"](_ref5, _excluded2$2);
433
+ var _ref3 = timespan || {},
434
+ _ref3$start = _ref3.start,
435
+ start = _ref3$start === void 0 ? '-INF' : _ref3$start,
436
+ _ref3$end = _ref3.end,
437
+ end = _ref3$end === void 0 ? '+INF' : _ref3$end,
438
+ groupsAndFields = _objectWithoutProperties__default["default"](_ref3, _excluded2$2);
394
439
 
395
- var _parseGroupsOrFields2 = parseGroupsOrFields(groupsOrFields),
396
- group = _parseGroupsOrFields2.group,
397
- field = _parseGroupsOrFields2.field;
440
+ var _parseGroupsAndFields = parseGroupsAndFields(groupsAndFields),
441
+ group = _parseGroupsAndFields.group,
442
+ field = _parseGroupsAndFields.field;
398
443
 
399
- return {
400
- start: start,
401
- end: end,
402
- field: field,
444
+ return _objectSpread$7(_objectSpread$7(_objectSpread$7({}, group ? {
403
445
  group: group
404
- };
446
+ } : {}), field ? {
447
+ field: field
448
+ } : {}), {}, {
449
+ start: start,
450
+ end: end
451
+ });
405
452
  };
406
453
  /**
407
454
  * Create a MetadataType object from a metadata object
408
- * @param {Object} metadata={} - object with metadata to create MetadataType object of
455
+ *
456
+ * @param {Object} metadata - object with metadata to create MetadataType object of
409
457
  * @returns {Object} MetadataType
410
458
  */
411
459
 
412
460
 
413
461
  var createMetadataType = function createMetadataType() {
414
462
  var metadata = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
415
- var metadataType = {};
416
-
417
- if (Array.isArray(metadata)) {
418
- metadataType.timespan = metadata.map(function (thisTimeSpan) {
419
- return parseTimespan$1(thisTimeSpan);
420
- });
421
- } else {
422
- var genericTimespan = parseTimespan$1(metadata);
423
- metadataType.timespan = [genericTimespan];
424
- }
425
-
426
- return metadataType;
463
+ return {
464
+ timespan: (Array.isArray(metadata) ? metadata : [metadata]).map(function (t) {
465
+ return parseTimespan$1(t);
466
+ })
467
+ };
427
468
  };
428
469
 
429
470
  var sortTimespanList = function sortTimespanList(timespan1, timespan2) {
@@ -859,13 +900,13 @@ var parseHighlightTimespan = function parseHighlightTimespan() {
859
900
  start = _ref.start,
860
901
  end = _ref.end;
861
902
 
862
- var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
863
- var _opts$arrayOnSingle = opts.arrayOnSingle,
864
- arrayOnSingle = _opts$arrayOnSingle === void 0 ? true : _opts$arrayOnSingle,
865
- _opts$joinValue = opts.joinValue,
866
- joinValue = _opts$joinValue === void 0 ? undefined : _opts$joinValue,
867
- _opts$timespanAsList = opts.timespanAsList,
868
- timespanAsList = _opts$timespanAsList === void 0 ? undefined : _opts$timespanAsList;
903
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
904
+ var _options$arrayOnSingl = options.arrayOnSingle,
905
+ arrayOnSingle = _options$arrayOnSingl === void 0 ? true : _options$arrayOnSingl,
906
+ _options$joinValue = options.joinValue,
907
+ joinValue = _options$joinValue === void 0 ? undefined : _options$joinValue,
908
+ _options$timespanAsLi = options.timespanAsList,
909
+ timespanAsList = _options$timespanAsLi === void 0 ? undefined : _options$timespanAsLi;
869
910
  var initialValue = timespanAsList ? {
870
911
  start: start,
871
912
  end: end
@@ -923,27 +964,28 @@ var parseHighlightTimespanList = function parseHighlightTimespanList() {
923
964
  }, {});
924
965
  };
925
966
 
926
- var _CONSTANT_TIMEBASES;
927
-
928
- var PAL = 'PAL';
929
- var NTSC = 'NTSC';
930
- var NTSC30 = 'NTSC30';
931
- var CONSTANT_TIMEBASES = (_CONSTANT_TIMEBASES = {}, _defineProperty__default["default"](_CONSTANT_TIMEBASES, PAL, {
932
- denominator: 25,
933
- numerator: 1
934
- }), _defineProperty__default["default"](_CONSTANT_TIMEBASES, NTSC, {
935
- denominator: 30000,
936
- numerator: 1001
937
- }), _defineProperty__default["default"](_CONSTANT_TIMEBASES, NTSC30, {
938
- denominator: 30,
939
- numerator: 1
940
- }), _defineProperty__default["default"](_CONSTANT_TIMEBASES, 29.97, {
941
- denominator: 30000,
942
- numerator: 1001
943
- }), _defineProperty__default["default"](_CONSTANT_TIMEBASES, 59.94, {
944
- denominator: 60000,
945
- numerator: 1001
946
- }), _CONSTANT_TIMEBASES);
967
+ var CONSTANT_TIMEBASES = {
968
+ PAL: {
969
+ denominator: 25,
970
+ numerator: 1
971
+ },
972
+ NTSC: {
973
+ denominator: 30000,
974
+ numerator: 1001
975
+ },
976
+ NTSC30: {
977
+ denominator: 30,
978
+ numerator: 1
979
+ },
980
+ 29.97: {
981
+ denominator: 30000,
982
+ numerator: 1001
983
+ },
984
+ 59.94: {
985
+ denominator: 60000,
986
+ numerator: 1001
987
+ }
988
+ };
947
989
  var FRAME_SEPARATORS = {
948
990
  ':': {
949
991
  dropFrame: false,
@@ -963,96 +1005,13 @@ var FRAME_SEPARATORS = {
963
1005
  }
964
1006
  };
965
1007
 
966
- function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
967
-
968
- function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
969
-
970
- var splitSmpte = function splitSmpte(smpteText) {
971
- var hasDropFrameSeparator = smpteText.match(/[^0-9:\-_]/);
972
- var hhmmssff;
973
- var frameOptions = {};
974
-
975
- if (hasDropFrameSeparator) {
976
- var _hasDropFrameSeparato = _slicedToArray__default["default"](hasDropFrameSeparator, 1),
977
- frameSeparator = _hasDropFrameSeparato[0];
978
-
979
- var _smpteText$split = smpteText.split(frameSeparator),
980
- _smpteText$split2 = _slicedToArray__default["default"](_smpteText$split, 2),
981
- hhmmss = _smpteText$split2[0],
982
- splitFrames = _smpteText$split2[1];
983
-
984
- hhmmssff = [].concat(_toConsumableArray__default["default"](hhmmss.split(':')), [splitFrames]);
985
- frameOptions = FRAME_SEPARATORS[frameSeparator] || {};
986
- } else {
987
- hhmmssff = smpteText.split(':');
988
- }
989
-
990
- hhmmssff = hhmmssff.map(Number);
991
-
992
- if (hhmmssff.length > 4 || hhmmssff.some(function (n) {
993
- return Number.isNaN(n);
994
- })) {
995
- throw new Error('Invalid SMPTE timecode');
996
- }
997
-
998
- return [hhmmssff, frameOptions];
999
- };
1000
-
1001
- var getDropFrames = function getDropFrames(roundedFrameRate) {
1002
- return roundedFrameRate === 60 ? 4 : 2;
1003
- };
1004
-
1005
- var getRoundedFrameRate = function getRoundedFrameRate(timeBase) {
1006
- return Math.round(timeBase.denominator / timeBase.numerator);
1007
- };
1008
-
1009
- var countSamples = function countSamples(hh, mm, ss, ff, _ref) {
1010
- var dropFrame = _ref.dropFrame,
1011
- roundedFrameRate = _ref.roundedFrameRate;
1012
-
1013
- if (!dropFrame) {
1014
- return hh * 3600 * roundedFrameRate + mm * 60 * roundedFrameRate + ss * roundedFrameRate + ff;
1015
- }
1016
-
1017
- if (![30, 60].includes(roundedFrameRate)) {
1018
- throw new Error('Cannot use dropframe with non NTSC timebase');
1019
- }
1020
-
1021
- var dropFrames = getDropFrames(roundedFrameRate);
1022
- var shouldDropMinute = mm % 10 !== 0;
1023
- var shouldDropSecond = shouldDropMinute && ss === 0;
1024
- var hourFrames = hh * (3600 * roundedFrameRate - 54 * dropFrames);
1025
- var minuteFrames = mm * 60 * roundedFrameRate - (mm - Math.ceil(mm / 10)) * dropFrames;
1026
- var secondFrames = ss * roundedFrameRate - (shouldDropMinute && ss > 1 ? dropFrames : 0);
1027
-
1028
- if (shouldDropSecond && ff < dropFrames) {
1029
- throw new Error('Invalid ff');
1030
- }
1031
-
1032
- var frameFrames = shouldDropSecond ? ff - dropFrames : ff;
1033
- return hourFrames + minuteFrames + secondFrames + frameFrames;
1034
- };
1035
-
1036
- function countDroppedFrames(frames, roundedFrameRate) {
1037
- var dropFrames = getDropFrames(roundedFrameRate);
1038
- var oneMinuteUndroppedFrames = 60 * roundedFrameRate;
1039
- var oneMinuteDroppedFrames = 60 * roundedFrameRate - dropFrames;
1040
- var tenMinuteFrames = 10 * (oneMinuteUndroppedFrames - dropFrames) + dropFrames;
1041
- var tenMinuteChunks = Math.floor(frames / tenMinuteFrames);
1042
- var minuteRemainder = Math.max(0, frames % tenMinuteFrames - oneMinuteUndroppedFrames);
1043
- var oneMinuteChunks = Math.floor(minuteRemainder / oneMinuteDroppedFrames);
1044
- var frameRemainder = minuteRemainder % oneMinuteDroppedFrames;
1045
- var frameChunks = frameRemainder > 0 ? dropFrames : 0;
1046
- return tenMinuteChunks * 9 * dropFrames + oneMinuteChunks * dropFrames + frameChunks;
1047
- }
1048
-
1049
1008
  var TimeBase = /*#__PURE__*/function () {
1050
1009
  function TimeBase() {
1051
- var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1052
- _ref2$numerator = _ref2.numerator,
1053
- numerator = _ref2$numerator === void 0 ? 1 : _ref2$numerator,
1054
- _ref2$denominator = _ref2.denominator,
1055
- denominator = _ref2$denominator === void 0 ? 1 : _ref2$denominator;
1010
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1011
+ _ref$numerator = _ref.numerator,
1012
+ numerator = _ref$numerator === void 0 ? 1 : _ref$numerator,
1013
+ _ref$denominator = _ref.denominator,
1014
+ denominator = _ref$denominator === void 0 ? 1 : _ref$denominator;
1056
1015
 
1057
1016
  _classCallCheck__default["default"](this, TimeBase);
1058
1017
 
@@ -1136,23 +1095,94 @@ var TimeBase = /*#__PURE__*/function () {
1136
1095
  return TimeBase;
1137
1096
  }();
1138
1097
 
1139
- var isDropFrameTimeBase = function isDropFrameTimeBase(_ref3) {
1140
- var numerator = _ref3.numerator,
1141
- denominator = _ref3.denominator;
1098
+ var formatTimeBaseType = function formatTimeBaseType(timeBase) {
1099
+ return new TimeBase(timeBase);
1100
+ };
1101
+
1102
+ var formatTimeBaseText = function formatTimeBaseText(timeBaseText) {
1103
+ if (timeBaseText === undefined) {
1104
+ return formatTimeBaseType();
1105
+ }
1106
+
1107
+ if (typeof timeBaseText === 'number') {
1108
+ return formatTimeBaseType({
1109
+ denominator: timeBaseText
1110
+ });
1111
+ }
1112
+
1113
+ if (timeBaseText.includes(':')) {
1114
+ var _timeBaseText$split = timeBaseText.split(':'),
1115
+ _timeBaseText$split2 = _slicedToArray__default["default"](_timeBaseText$split, 2),
1116
+ _denominator = _timeBaseText$split2[0],
1117
+ numerator = _timeBaseText$split2[1];
1118
+
1119
+ return formatTimeBaseType({
1120
+ denominator: _denominator,
1121
+ numerator: numerator
1122
+ });
1123
+ }
1124
+
1125
+ if (Object.keys(CONSTANT_TIMEBASES).includes(timeBaseText)) {
1126
+ return formatTimeBaseType(CONSTANT_TIMEBASES[timeBaseText]);
1127
+ }
1128
+
1129
+ var denominator = Number(timeBaseText);
1130
+
1131
+ if (Number.isNaN(denominator)) {
1132
+ throw new Error("timeBaseText must be a number or ".concat(Object.keys(CONSTANT_TIMEBASES).join(','), " - is ").concat(timeBaseText));
1133
+ }
1134
+
1135
+ return formatTimeBaseType({
1136
+ denominator: denominator
1137
+ });
1138
+ };
1139
+
1140
+ var formatTimeBase = function formatTimeBase(timeBase) {
1141
+ if (_typeof__default["default"](timeBase) === 'object') {
1142
+ return formatTimeBaseType(timeBase);
1143
+ }
1144
+
1145
+ return formatTimeBaseText(timeBase);
1146
+ };
1147
+
1148
+ var getDropFrames$1 = function getDropFrames(roundedFrameRate) {
1149
+ return roundedFrameRate === 60 ? 4 : 2;
1150
+ };
1151
+
1152
+ var getRoundedFrameRate$1 = function getRoundedFrameRate(timeBase) {
1153
+ return Math.round(timeBase.denominator / timeBase.numerator);
1154
+ };
1155
+
1156
+ function countDroppedFrames(frames, roundedFrameRate) {
1157
+ var dropFrames = getDropFrames$1(roundedFrameRate);
1158
+ var oneMinuteUndroppedFrames = 60 * roundedFrameRate;
1159
+ var oneMinuteDroppedFrames = 60 * roundedFrameRate - dropFrames;
1160
+ var tenMinuteFrames = 10 * (oneMinuteUndroppedFrames - dropFrames) + dropFrames;
1161
+ var tenMinuteChunks = Math.floor(frames / tenMinuteFrames);
1162
+ var minuteRemainder = Math.max(0, frames % tenMinuteFrames - oneMinuteUndroppedFrames);
1163
+ var oneMinuteChunks = Math.floor(minuteRemainder / oneMinuteDroppedFrames);
1164
+ var frameRemainder = minuteRemainder % oneMinuteDroppedFrames;
1165
+ var frameChunks = frameRemainder > 0 ? dropFrames : 0;
1166
+ return tenMinuteChunks * 9 * dropFrames + oneMinuteChunks * dropFrames + frameChunks;
1167
+ }
1168
+
1169
+ var isDropFrameTimeBase = function isDropFrameTimeBase(_ref) {
1170
+ var numerator = _ref.numerator,
1171
+ denominator = _ref.denominator;
1142
1172
  return numerator === 1001 && (denominator === 60000 || denominator === 30000);
1143
1173
  };
1144
1174
 
1145
1175
  var TimeCode = /*#__PURE__*/function () {
1146
1176
  function TimeCode() {
1147
- var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1148
- _ref4$samples = _ref4.samples,
1149
- samples = _ref4$samples === void 0 ? 0 : _ref4$samples,
1150
- timeBase = _ref4.timeBase;
1177
+ var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1178
+ _ref2$samples = _ref2.samples,
1179
+ samples = _ref2$samples === void 0 ? 0 : _ref2$samples,
1180
+ timeBase = _ref2.timeBase;
1151
1181
 
1152
- var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1153
- dropFrame = _ref5.dropFrame,
1154
- _ref5$field = _ref5.field,
1155
- field = _ref5$field === void 0 ? 2 : _ref5$field;
1182
+ var _ref3 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
1183
+ dropFrame = _ref3.dropFrame,
1184
+ _ref3$field = _ref3.field,
1185
+ field = _ref3$field === void 0 ? 2 : _ref3$field;
1156
1186
 
1157
1187
  _classCallCheck__default["default"](this, TimeCode);
1158
1188
 
@@ -1260,7 +1290,7 @@ var TimeCode = /*#__PURE__*/function () {
1260
1290
  }, {
1261
1291
  key: "toTime",
1262
1292
  value: function toTime() {
1263
- var roundedFrameRate = getRoundedFrameRate(this.timeBase);
1293
+ var roundedFrameRate = getRoundedFrameRate$1(this.timeBase);
1264
1294
  var totalSamples = this.samples + (this.dropFrame ? countDroppedFrames(this.samples + 1, roundedFrameRate) : 0);
1265
1295
  var hours = Math.floor(totalSamples / (3600 * roundedFrameRate));
1266
1296
  var minutes = Math.floor(totalSamples / (60 * roundedFrameRate)) % 60;
@@ -1278,8 +1308,8 @@ var TimeCode = /*#__PURE__*/function () {
1278
1308
  }, {
1279
1309
  key: "toDuration",
1280
1310
  value: function toDuration() {
1281
- var _ref6 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1282
- format = _ref6.format;
1311
+ var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
1312
+ format = _ref4.format;
1283
1313
 
1284
1314
  var _this$toTime = this.toTime(),
1285
1315
  hours = _this$toTime.hours,
@@ -1305,7 +1335,7 @@ var TimeCode = /*#__PURE__*/function () {
1305
1335
  }, {
1306
1336
  key: "toSmpte",
1307
1337
  value: function toSmpte() {
1308
- var _this2 = this;
1338
+ var _this = this;
1309
1339
 
1310
1340
  if (this.samples === -Infinity) return '00:00:00:00';
1311
1341
 
@@ -1323,7 +1353,7 @@ var TimeCode = /*#__PURE__*/function () {
1323
1353
  dropFrame = _thisSeparator$.dropFrame,
1324
1354
  field = _thisSeparator$.field;
1325
1355
 
1326
- return dropFrame === _this2.dropFrame && field === _this2.field;
1356
+ return dropFrame === _this.dropFrame && field === _this.field;
1327
1357
  }),
1328
1358
  _Object$entries$find2 = _slicedToArray__default["default"](_Object$entries$find, 1),
1329
1359
  _Object$entries$find3 = _Object$entries$find2[0],
@@ -1341,56 +1371,6 @@ var TimeCode = /*#__PURE__*/function () {
1341
1371
  return TimeCode;
1342
1372
  }();
1343
1373
 
1344
- var formatTimeBaseType = function formatTimeBaseType(timeBase) {
1345
- return new TimeBase(timeBase);
1346
- };
1347
-
1348
- var formatTimeBaseText = function formatTimeBaseText(timeBaseText) {
1349
- if (timeBaseText === undefined) {
1350
- return formatTimeBaseType();
1351
- }
1352
-
1353
- if (typeof timeBaseText === 'number') {
1354
- return formatTimeBaseType({
1355
- denominator: timeBaseText
1356
- });
1357
- }
1358
-
1359
- if (timeBaseText.includes(':')) {
1360
- var _timeBaseText$split = timeBaseText.split(':'),
1361
- _timeBaseText$split2 = _slicedToArray__default["default"](_timeBaseText$split, 2),
1362
- _denominator = _timeBaseText$split2[0],
1363
- numerator = _timeBaseText$split2[1];
1364
-
1365
- return formatTimeBaseType({
1366
- denominator: _denominator,
1367
- numerator: numerator
1368
- });
1369
- }
1370
-
1371
- if (Object.keys(CONSTANT_TIMEBASES).includes(timeBaseText)) {
1372
- return formatTimeBaseType(CONSTANT_TIMEBASES[timeBaseText]);
1373
- }
1374
-
1375
- var denominator = Number(timeBaseText);
1376
-
1377
- if (Number.isNaN(denominator)) {
1378
- throw new Error("timeBaseText must be a number or ".concat(Object.keys(CONSTANT_TIMEBASES).join(','), " - is ").concat(timeBaseText));
1379
- }
1380
-
1381
- return formatTimeBaseType({
1382
- denominator: denominator
1383
- });
1384
- };
1385
-
1386
- var formatTimeBase = function formatTimeBase(timeBase) {
1387
- if (_typeof__default["default"](timeBase) === 'object') {
1388
- return formatTimeBaseType(timeBase);
1389
- }
1390
-
1391
- return formatTimeBaseText(timeBase);
1392
- };
1393
-
1394
1374
  var formatTimeCodeType = function formatTimeCodeType(timeCode, options) {
1395
1375
  return new TimeCode(timeCode, options);
1396
1376
  };
@@ -1460,11 +1440,11 @@ var formatSeconds = function formatSeconds(seconds, timeBase, options) {
1460
1440
  throw new Error("seconds must be digits, is ".concat(seconds));
1461
1441
  }
1462
1442
 
1463
- var _ref7 = timeBase || {},
1464
- _ref7$denominator = _ref7.denominator,
1465
- denominator = _ref7$denominator === void 0 ? 1 : _ref7$denominator,
1466
- _ref7$numerator = _ref7.numerator,
1467
- numerator = _ref7$numerator === void 0 ? 1 : _ref7$numerator;
1443
+ var _ref = timeBase || {},
1444
+ _ref$denominator = _ref.denominator,
1445
+ denominator = _ref$denominator === void 0 ? 1 : _ref$denominator,
1446
+ _ref$numerator = _ref.numerator,
1447
+ numerator = _ref$numerator === void 0 ? 1 : _ref$numerator;
1468
1448
 
1469
1449
  var samples = seconds * (denominator / numerator);
1470
1450
  var timeCode = {
@@ -1479,13 +1459,13 @@ var formatSecondsPrecise = function formatSecondsPrecise(seconds, timeBase, opti
1479
1459
  throw new Error("seconds must be digits, is ".concat(seconds));
1480
1460
  }
1481
1461
 
1482
- var _ref8 = timeBase || {},
1483
- _ref8$numerator = _ref8.numerator,
1484
- numerator = _ref8$numerator === void 0 ? 1 : _ref8$numerator;
1462
+ var _ref = timeBase || {},
1463
+ _ref$numerator = _ref.numerator,
1464
+ numerator = _ref$numerator === void 0 ? 1 : _ref$numerator;
1485
1465
 
1486
- var _ref9 = timeBase || {},
1487
- _ref9$denominator = _ref9.denominator,
1488
- denominator = _ref9$denominator === void 0 ? 1 : _ref9$denominator;
1466
+ var _ref2 = timeBase || {},
1467
+ _ref2$denominator = _ref2.denominator,
1468
+ denominator = _ref2$denominator === void 0 ? 1 : _ref2$denominator;
1489
1469
 
1490
1470
  if (!Number.isInteger(seconds)) {
1491
1471
  var decimalPlaces = String(seconds).split('.')[1].length;
@@ -1503,17 +1483,87 @@ var formatSecondsPrecise = function formatSecondsPrecise(seconds, timeBase, opti
1503
1483
  return new TimeCode(timeCode, options);
1504
1484
  };
1505
1485
 
1486
+ function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1487
+
1488
+ function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1489
+
1490
+ var getDropFrames = function getDropFrames(roundedFrameRate) {
1491
+ return roundedFrameRate === 60 ? 4 : 2;
1492
+ };
1493
+
1494
+ var getRoundedFrameRate = function getRoundedFrameRate(timeBase) {
1495
+ return Math.round(timeBase.denominator / timeBase.numerator);
1496
+ };
1497
+
1498
+ var splitSmpte = function splitSmpte(smpteText) {
1499
+ var hasDropFrameSeparator = smpteText.match(/[^0-9:\-_]/);
1500
+ var hhmmssff;
1501
+ var frameOptions = {};
1502
+
1503
+ if (hasDropFrameSeparator) {
1504
+ var _hasDropFrameSeparato = _slicedToArray__default["default"](hasDropFrameSeparator, 1),
1505
+ frameSeparator = _hasDropFrameSeparato[0];
1506
+
1507
+ var _smpteText$split = smpteText.split(frameSeparator),
1508
+ _smpteText$split2 = _slicedToArray__default["default"](_smpteText$split, 2),
1509
+ hhmmss = _smpteText$split2[0],
1510
+ splitFrames = _smpteText$split2[1];
1511
+
1512
+ hhmmssff = [].concat(_toConsumableArray__default["default"](hhmmss.split(':')), [splitFrames]);
1513
+ frameOptions = FRAME_SEPARATORS[frameSeparator] || {};
1514
+ } else {
1515
+ hhmmssff = smpteText.split(':');
1516
+ }
1517
+
1518
+ hhmmssff = hhmmssff.map(Number);
1519
+
1520
+ if (hhmmssff.length > 4 || hhmmssff.some(function (n) {
1521
+ return Number.isNaN(n);
1522
+ })) {
1523
+ throw new Error('Invalid SMPTE timecode');
1524
+ }
1525
+
1526
+ return [hhmmssff, frameOptions];
1527
+ };
1528
+
1529
+ var countSamples = function countSamples(hh, mm, ss, ff, _ref) {
1530
+ var dropFrame = _ref.dropFrame,
1531
+ roundedFrameRate = _ref.roundedFrameRate;
1532
+
1533
+ if (!dropFrame) {
1534
+ return hh * 3600 * roundedFrameRate + mm * 60 * roundedFrameRate + ss * roundedFrameRate + ff;
1535
+ }
1536
+
1537
+ if (![30, 60].includes(roundedFrameRate)) {
1538
+ throw new Error('Cannot use dropframe with non NTSC timebase');
1539
+ }
1540
+
1541
+ var dropFrames = getDropFrames(roundedFrameRate);
1542
+ var shouldDropMinute = mm % 10 !== 0;
1543
+ var shouldDropSecond = shouldDropMinute && ss === 0;
1544
+ var hourFrames = hh * (3600 * roundedFrameRate - 54 * dropFrames);
1545
+ var minuteFrames = mm * 60 * roundedFrameRate - (mm - Math.ceil(mm / 10)) * dropFrames;
1546
+ var secondFrames = ss * roundedFrameRate - (shouldDropMinute && ss > 1 ? dropFrames : 0);
1547
+
1548
+ if (shouldDropSecond && ff < dropFrames) {
1549
+ throw new Error('Invalid ff');
1550
+ }
1551
+
1552
+ var frameFrames = shouldDropSecond ? ff - dropFrames : ff;
1553
+ return hourFrames + minuteFrames + secondFrames + frameFrames;
1554
+ };
1555
+
1506
1556
  var formatSmpte = function formatSmpte(smpteText, timeBaseText) {
1507
1557
  var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
1508
1558
 
1509
1559
  if (smpteText === undefined) {
1510
1560
  var _timeBase = formatTimeBase(timeBaseText);
1511
1561
 
1512
- var _timeCode6 = {
1562
+ var _timeCode = {
1513
1563
  samples: 0,
1514
1564
  timeBase: _timeBase
1515
1565
  };
1516
- return formatTimeCodeType(_timeCode6);
1566
+ return formatTimeCodeType(_timeCode);
1517
1567
  }
1518
1568
 
1519
1569
  if (typeof smpteText !== 'string') {
@@ -1575,7 +1625,7 @@ function timeToCueTime(_ref) {
1575
1625
  */
1576
1626
 
1577
1627
 
1578
- function metadataTypeToWebVtt(_ref2) {
1628
+ var metadataTypeToWebVtt = function metadataTypeToWebVtt(_ref2) {
1579
1629
  var metadataType = _ref2.metadataType,
1580
1630
  _ref2$subtitleGroup = _ref2.subtitleGroup,
1581
1631
  subtitleGroup = _ref2$subtitleGroup === void 0 ? 'stl_subtitle' : _ref2$subtitleGroup,
@@ -1611,7 +1661,10 @@ function metadataTypeToWebVtt(_ref2) {
1611
1661
  return "".concat(start, " --> ").concat(end, " line:0%\r").concat(text, "\r");
1612
1662
  });
1613
1663
  return "WEBVTT\n\n\n".concat(vttCues.join('\n'));
1614
- }
1664
+ };
1665
+
1666
+ var SYSTEM_FIELDGROUPS = ['stl_subtitle', 'stl_tti', 'stl_gsi', 'mrk_marker', 'pho_validation', 'pho_resource', 'pho_error', 'facedetect_rect', 'facedetect_face', 'originalTrackFilename', 'stl_gsiHeader'];
1667
+ var SYSTEM_FIELDS = ['title', 'user', 'shapeTag', 'representativeThumbnail', 'representativeThumbnailNoAuth', 'representativeItems', 'itemId', 'collectionId', 'mediaType', 'mimeType', 'created', 'startTimeCode', 'startSeconds', 'fieldValidationError', 'schemaValidationError', 'originalFilename', 'originalUri', 'originalAudioCodec', 'originalVideoCodec', 'originalHeight', 'originalWidth', 'originalFormat', 'durationSeconds', 'durationTimeCode', 'solr-index', '__user', '__collection', '__collection_size', '__ancestor_collection', '__ancestor_collection_size', '__shape', '__shape_size', '__shape_last_added', '__placeholder_shape_size', '__version', '__version_count', '__storage', '__storage_size', '__shapetag_{tag}_hash_{hash}', '__storage_{tag}', '__storage_{tag}_size', '__storagegroup', '__storagegroup_size', '__sequence', '__sequence_size', '__metadata_last_modified', '__external_id', '__deletion_lock_id', '__deletion_lock_expiry', '__child_collection', '__child_collection_size', '__parent_collection', '__parent_collection_size', '__items_size', 'stl_text', 'stl_justification', 'stl_xrelative', 'stl_yrelative', 'stl_vertical', 'stl_verticalbase', 'stl_horizontalbase', 'stl_sizerelative', 'stl_color', 'stl_outline', 'stl_outlinecolor', 'stl_outlinesize', 'stl_font', 'stl_service', 'stl_tti', 'stl_gsi', 'cct', 'tcd', 'tcf', 'oet', 'cd', 'mnc', 'cpn', 'dfc', 'tcp', 'tcs', 'tet', 'tnb', 'tnd', 'en', 'co', 'tng', 'rd', 'mnr', 'dsc', 'opt', 'lc', 'tpt', 'tn', 'slr', 'tns', 'rn', 'pub', 'dsn', 'ecd', 'mrk_zerolength', 'mrk_text', 'mrk_color', 'pho_resource_name', 'pho_error_level', 'pho_error_code', 'pho_error_description', 'facedetect_rect_width', 'facedetect_rect_height', 'facedetect_rect_y', 'facedetect_rect_x', 'facedetect_pid', 'facedetect_rect', 'trackId', 'eidr_actor', 'eidr_alternateId', 'eidr_countryOfOrigin', 'eidr_director', 'eidr_id', 'eidr_referentType', 'eidr_releaseDate', 'eidr_resourceName', 'eidr_status', 'eidr_sync', 'ttml_div', 'ttml_root', 'vxa_collection_id', 'vxaId', 'vxaLocalPath', 'tco', 'cs', 'ebn', 'tf', 'cf', 'sgn', 'tci', 'jc', 'vp', 'sn'];
1615
1668
 
1616
1669
  var createFacetType = function createFacetType() {
1617
1670
  var fieldList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
@@ -2072,6 +2125,7 @@ var IMAGE = 'IMAGE';
2072
2125
  var AUDIO = 'AUDIO';
2073
2126
  var VIDEO = 'VIDEO';
2074
2127
  var DOCUMENT = 'DOCUMENT';
2128
+ var BINARY = 'BINARY';
2075
2129
  var getShapeMediaType = function getShapeMediaType() {
2076
2130
  var shapeType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2077
2131
  var mimeType = shapeType.mimeType,
@@ -2094,6 +2148,7 @@ var getShapeMediaType = function getShapeMediaType() {
2094
2148
  if (mimeType.endsWith('/msword')) return DOCUMENT;
2095
2149
  if (mimeType.endsWith('/json')) return DOCUMENT;
2096
2150
  if (mimeType.endsWith('/xml')) return DOCUMENT;
2151
+ if (mimeType.endsWith('/octet-stream')) return BINARY;
2097
2152
  return undefined;
2098
2153
  };
2099
2154
 
@@ -2311,6 +2366,8 @@ var getDocumentType = function getDocumentType() {
2311
2366
  return undefined;
2312
2367
  };
2313
2368
 
2369
+ exports.SYSTEM_FIELDGROUPS = SYSTEM_FIELDGROUPS;
2370
+ exports.SYSTEM_FIELDS = SYSTEM_FIELDS;
2314
2371
  exports.TimeBase = TimeBase;
2315
2372
  exports.TimeCode = TimeCode;
2316
2373
  exports.createFacetType = createFacetType;