@imposium-hub/components 1.51.2 → 1.51.4

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.
@@ -44,13 +44,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
44
44
  var React = __importStar(require("react"));
45
45
  var FieldWrapper_1 = __importDefault(require("../field-wrapper/FieldWrapper"));
46
46
  var smpte_timecode_1 = __importDefault(require("smpte-timecode"));
47
- var Util_1 = require("../../Util");
48
47
  var timecode_1 = require("../../constants/timecode");
48
+ var Util_1 = require("../../Util");
49
49
  var SMPTEField = /** @class */ (function (_super) {
50
50
  __extends(SMPTEField, _super);
51
51
  function SMPTEField(props) {
52
52
  var _this = _super.call(this, props) || this;
53
- _this.regex = '^[0-9]+(:[0-9]+){0,3}$';
53
+ _this.regex = '^[0-9]+(:[0-9]+){0,2}?((:|;)[0-9]+){0,1}$';
54
54
  _this.state = {
55
55
  error: false,
56
56
  errorMsg: null
@@ -62,17 +62,24 @@ var SMPTEField = /** @class */ (function (_super) {
62
62
  this.updateComp();
63
63
  };
64
64
  SMPTEField.prototype.componentDidUpdate = function (prevProps) {
65
- if (prevProps.value !== this.props.value) {
65
+ var preValue = prevProps.value;
66
+ var curValue = this.props.value;
67
+ if (typeof prevProps.value === 'object') {
68
+ preValue = prevProps.value.toString();
69
+ }
70
+ if (typeof this.props.value === 'object') {
71
+ curValue = this.props.value.toString();
72
+ }
73
+ if (preValue !== curValue) {
66
74
  this.updateComp();
67
75
  }
68
76
  };
69
- SMPTEField.prototype.updateComp = function () {
70
- if (this.props.value.includes(';')) {
71
- this.inputRef.current.value = this.props.value.replace(';', ':');
72
- }
73
- else {
74
- this.inputRef.current.value = this.props.value;
77
+ SMPTEField.prototype.updateComp = function (obj) {
78
+ var propValue = this.props.value;
79
+ if (typeof propValue === 'object') {
80
+ propValue = this.props.value.toString();
75
81
  }
82
+ this.inputRef.current.value = propValue;
76
83
  this.setState({
77
84
  error: false,
78
85
  errorMsg: null
@@ -106,13 +113,18 @@ var SMPTEField = /** @class */ (function (_super) {
106
113
  };
107
114
  SMPTEField.prototype.getSMPTE = function (val) {
108
115
  var frameRate = this.props.frameRate;
109
- var rates = parseFloat((0, Util_1.toFixed)(frameRate, 3));
110
- var valArray = val.split(':').map(Number);
116
+ var rates = Math.ceil(frameRate);
117
+ var checkStr = val.includes(';');
118
+ var valArray = checkStr
119
+ ? val.replace(';', ':').split(':').map(Number)
120
+ : val.split(':').map(Number);
111
121
  var toFrames = this.toFrames(valArray, rates);
112
122
  var duration = new smpte_timecode_1.default(toFrames, rates).toString();
113
- var newDuration = duration.includes(';') ? duration.replace(';', ':') : duration;
114
- this.inputRef.current.value = newDuration;
115
- return newDuration;
123
+ if (parseFloat((0, Util_1.toFixed)(frameRate, 3)) === 29.97) {
124
+ duration = duration.replace(/:(?=[^:]*$)/, ';');
125
+ }
126
+ this.inputRef.current.value = duration;
127
+ return duration;
116
128
  };
117
129
  SMPTEField.prototype.toFrames = function (array, rates) {
118
130
  var length = array.length;
@@ -1 +1 @@
1
- {"version":3,"file":"SMPTEField.js","sourceRoot":"","sources":["../../../../src/components/smpte-field/SMPTEField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SMPTEField.js","sourceRoot":"","sources":["../../../../src/components/smpte-field/SMPTEField.tsx"],"names":[],"mappings":"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"}
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TIMECODE = void 0;
4
4
  exports.TIMECODE = {
5
- ERROR: 'Input must be HH:MM:SS:FF'
5
+ ERROR: 'Input must be HH:MM:SS:FF or HH:MM:SS;FF'
6
6
  };
7
7
  //# sourceMappingURL=timecode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"timecode.js","sourceRoot":"","sources":["../../../src/constants/timecode.tsx"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG;IACpB,KAAK,EAAE,2BAA2B;CACrC,CAAC"}
1
+ {"version":3,"file":"timecode.js","sourceRoot":"","sources":["../../../src/constants/timecode.tsx"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG;IACpB,KAAK,EAAE,0CAA0C;CACpD,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import * as React from 'react';
2
2
  import FieldWrapper from '../field-wrapper/FieldWrapper';
3
3
  import Timecode from 'smpte-timecode';
4
- import { toFixed } from '../../Util';
5
4
  import { TIMECODE } from '../../constants/timecode';
5
+ import { toFixed } from '../../Util';
6
6
  class SMPTEField extends React.PureComponent {
7
7
  inputRef;
8
- regex = '^[0-9]+(:[0-9]+){0,3}$';
8
+ regex = '^[0-9]+(:[0-9]+){0,2}?((:|;)[0-9]+){0,1}$';
9
9
  constructor(props) {
10
10
  super(props);
11
11
  this.state = {
@@ -18,17 +18,24 @@ class SMPTEField extends React.PureComponent {
18
18
  this.updateComp();
19
19
  }
20
20
  componentDidUpdate(prevProps) {
21
- if (prevProps.value !== this.props.value) {
21
+ let preValue = prevProps.value;
22
+ let curValue = this.props.value;
23
+ if (typeof prevProps.value === 'object') {
24
+ preValue = prevProps.value.toString();
25
+ }
26
+ if (typeof this.props.value === 'object') {
27
+ curValue = this.props.value.toString();
28
+ }
29
+ if (preValue !== curValue) {
22
30
  this.updateComp();
23
31
  }
24
32
  }
25
- updateComp() {
26
- if (this.props.value.includes(';')) {
27
- this.inputRef.current.value = this.props.value.replace(';', ':');
28
- }
29
- else {
30
- this.inputRef.current.value = this.props.value;
33
+ updateComp(obj) {
34
+ let propValue = this.props.value;
35
+ if (typeof propValue === 'object') {
36
+ propValue = this.props.value.toString();
31
37
  }
38
+ this.inputRef.current.value = propValue;
32
39
  this.setState({
33
40
  error: false,
34
41
  errorMsg: null
@@ -62,13 +69,18 @@ class SMPTEField extends React.PureComponent {
62
69
  }
63
70
  getSMPTE(val) {
64
71
  const { frameRate } = this.props;
65
- const rates = parseFloat(toFixed(frameRate, 3));
66
- const valArray = val.split(':').map(Number);
72
+ const rates = Math.ceil(frameRate);
73
+ const checkStr = val.includes(';');
74
+ const valArray = checkStr
75
+ ? val.replace(';', ':').split(':').map(Number)
76
+ : val.split(':').map(Number);
67
77
  const toFrames = this.toFrames(valArray, rates);
68
- const duration = new Timecode(toFrames, rates).toString();
69
- const newDuration = duration.includes(';') ? duration.replace(';', ':') : duration;
70
- this.inputRef.current.value = newDuration;
71
- return newDuration;
78
+ let duration = new Timecode(toFrames, rates).toString();
79
+ if (parseFloat(toFixed(frameRate, 3)) === 29.97) {
80
+ duration = duration.replace(/:(?=[^:]*$)/, ';');
81
+ }
82
+ this.inputRef.current.value = duration;
83
+ return duration;
72
84
  }
73
85
  toFrames(array, rates) {
74
86
  const length = array.length;
@@ -1 +1 @@
1
- {"version":3,"file":"SMPTEField.js","sourceRoot":"","sources":["../../../../src/components/smpte-field/SMPTEField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SMPTEField.js","sourceRoot":"","sources":["../../../../src/components/smpte-field/SMPTEField.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  export const TIMECODE = {
2
- ERROR: 'Input must be HH:MM:SS:FF'
2
+ ERROR: 'Input must be HH:MM:SS:FF or HH:MM:SS;FF'
3
3
  };
4
4
  //# sourceMappingURL=timecode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"timecode.js","sourceRoot":"","sources":["../../../src/constants/timecode.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACpB,KAAK,EAAE,2BAA2B;CACrC,CAAC"}
1
+ {"version":3,"file":"timecode.js","sourceRoot":"","sources":["../../../src/constants/timecode.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG;IACpB,KAAK,EAAE,0CAA0C;CACpD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@imposium-hub/components",
3
- "version": "1.51.2",
3
+ "version": "1.51.4",
4
4
  "description": "React & Typescript component / asset library for Imposium front-ends",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -2,8 +2,8 @@ import * as React from 'react';
2
2
  import FieldWrapper from '../field-wrapper/FieldWrapper';
3
3
  import { IToolTipConfig } from '../Tooltip';
4
4
  import Timecode from 'smpte-timecode';
5
- import { toFixed } from '../../Util';
6
5
  import { TIMECODE } from '../../constants/timecode';
6
+ import { toFixed } from '../../Util';
7
7
 
8
8
  interface ISMPTEFieldProps {
9
9
  label?: string;
@@ -26,7 +26,7 @@ interface ISMPTEFieldState {
26
26
  class SMPTEField extends React.PureComponent<ISMPTEFieldProps, ISMPTEFieldState> {
27
27
  private inputRef: any;
28
28
 
29
- private regex = '^[0-9]+(:[0-9]+){0,3}$';
29
+ private regex = '^[0-9]+(:[0-9]+){0,2}?((:|;)[0-9]+){0,1}$';
30
30
 
31
31
  constructor(props) {
32
32
  super(props);
@@ -42,18 +42,30 @@ class SMPTEField extends React.PureComponent<ISMPTEFieldProps, ISMPTEFieldState>
42
42
  }
43
43
 
44
44
  public componentDidUpdate(prevProps): void {
45
- if (prevProps.value !== this.props.value) {
45
+ let preValue = prevProps.value;
46
+ let curValue = this.props.value;
47
+
48
+ if (typeof prevProps.value === 'object') {
49
+ preValue = prevProps.value.toString();
50
+ }
51
+
52
+ if (typeof this.props.value === 'object') {
53
+ curValue = this.props.value.toString();
54
+ }
55
+ if (preValue !== curValue) {
46
56
  this.updateComp();
47
57
  }
48
58
  }
49
59
 
50
- private updateComp() {
51
- if (this.props.value.includes(';')) {
52
- this.inputRef.current.value = this.props.value.replace(';', ':');
53
- } else {
54
- this.inputRef.current.value = this.props.value;
60
+ private updateComp(obj?) {
61
+ let propValue = this.props.value;
62
+
63
+ if (typeof propValue === 'object') {
64
+ propValue = this.props.value.toString();
55
65
  }
56
66
 
67
+ this.inputRef.current.value = propValue;
68
+
57
69
  this.setState({
58
70
  error: false,
59
71
  errorMsg: null
@@ -92,20 +104,26 @@ class SMPTEField extends React.PureComponent<ISMPTEFieldProps, ISMPTEFieldState>
92
104
 
93
105
  private getSMPTE(val) {
94
106
  const { frameRate } = this.props;
95
- const rates = parseFloat(toFixed(frameRate, 3));
107
+ const rates = Math.ceil(frameRate);
96
108
 
97
- const valArray = val.split(':').map(Number);
109
+ const checkStr = val.includes(';');
110
+ const valArray = checkStr
111
+ ? val.replace(';', ':').split(':').map(Number)
112
+ : val.split(':').map(Number);
98
113
 
99
114
  const toFrames = this.toFrames(valArray, rates);
100
115
 
101
- const duration: string = new Timecode(toFrames, rates).toString();
102
- const newDuration = duration.includes(';') ? duration.replace(';', ':') : duration;
116
+ let duration: string = new Timecode(toFrames, rates).toString();
117
+
118
+ if (parseFloat(toFixed(frameRate, 3)) === 29.97) {
119
+ duration = duration.replace(/:(?=[^:]*$)/, ';');
120
+ }
103
121
 
104
- this.inputRef.current.value = newDuration;
105
- return newDuration;
122
+ this.inputRef.current.value = duration;
123
+ return duration;
106
124
  }
107
125
 
108
- private toFrames(array, rates) {
126
+ private toFrames(array, rates): number {
109
127
  const length = array.length;
110
128
 
111
129
  let hours = 0;
@@ -1,3 +1,3 @@
1
1
  export const TIMECODE = {
2
- ERROR: 'Input must be HH:MM:SS:FF'
2
+ ERROR: 'Input must be HH:MM:SS:FF or HH:MM:SS;FF'
3
3
  };