@sency/react-native-smkit-ui 0.1.4 → 0.1.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.
@@ -93,7 +93,7 @@ dependencies {
93
93
  implementation "com.facebook.react:react-native:+"
94
94
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
95
95
 
96
- compileOnly("com.sency.smkitui:smkitui:0.1.4") {
96
+ compileOnly("com.sency.smkitui:smkitui:0.1.6") {
97
97
  exclude group: 'com.facebook.fbjni', module: 'fbjni-java-only'
98
98
  }
99
99
 
@@ -10,6 +10,7 @@ import com.sency.smkitui.SMKitUI
10
10
  import com.sency.smkitui.listener.SMKitUIWorkoutListener
11
11
  import com.sency.smkitui.model.ExerciseData
12
12
  import com.sency.smkitui.model.WorkoutSummaryData
13
+ import com.sency.smkitui.model.smkitui.Custom
13
14
  import com.smkituilibrary.mapper.toSMWorkout
14
15
  import com.smkituilibrary.mapper.toWorkoutConfig
15
16
  import com.smkituilibrary.model.SMKitWorkout
@@ -60,10 +61,10 @@ class SmkitUiLibraryModule(reactContext: ReactApplicationContext) :
60
61
  }
61
62
 
62
63
  @ReactMethod
63
- fun startAssessment(type: String, showSummary: Boolean, promise: Promise) {
64
+ fun startAssessment(type: String, showSummary: Boolean, customAssessmentId: String, promise: Promise) {
64
65
  this.resultPromise = promise
65
66
  try {
66
- smKitUI?.startAssessment(listener = this)
67
+ smKitUI?.startAssessment(listener = this, assessmentType = Custom(customAssessmentId))
67
68
  } catch (e: Exception) {
68
69
  promise.reject("Configure Failed", e)
69
70
  }
@@ -2,12 +2,14 @@ package com.smkituilibrary.mapper
2
2
 
3
3
  import com.sency.smkitui.model.SMExercise
4
4
  import com.sency.smkitui.model.SMWorkout
5
+ import com.sency.smkitui.model.ScoringParams
5
6
  import com.sency.smkitui.model.workoutConfig.BodyZone
6
7
  import com.sency.smkitui.model.workoutConfig.DifficultyLevel
7
8
  import com.sency.smkitui.model.workoutConfig.SMLanguage
8
9
  import com.sency.smkitui.model.workoutConfig.WorkoutConfig
9
10
  import com.sency.smkitui.model.workoutConfig.WorkoutDuration
10
11
  import com.smkituilibrary.model.SMKitExercise
12
+ import com.smkituilibrary.model.SMKitScoringParams
11
13
  import com.smkituilibrary.model.SMKitWorkout
12
14
  import com.smkituilibrary.model.SMKitWorkoutConfig
13
15
 
@@ -32,7 +34,7 @@ internal fun SMKitWorkout.toSMWorkout(): SMWorkout = SMWorkout(
32
34
  )
33
35
 
34
36
  private fun SMKitExercise.toSMExercise(): SMExercise = SMExercise(
35
- prettyName = name ?: "",
37
+ prettyName = prettyName ?: "",
36
38
  exerciseIntro = exerciseIntro ?: "",
37
39
  totalSeconds = totalSeconds ?: 0,
38
40
  introSeconds = introSeconds ?: 0,
@@ -41,8 +43,23 @@ private fun SMKitExercise.toSMExercise(): SMExercise = SMExercise(
41
43
  detector = detector ?: "",
42
44
  repBased = repBased ?: false,
43
45
  exerciseClosure = exerciseClosure ?: "",
44
- targetReps = 0,
45
- targetTime = 0,
46
- scoreFactor = 0.0,
47
- passCriteria = null
46
+ scoringParams = scoringParams?.toParams() ?: ScoringParams(
47
+ type = "",
48
+ scoreFactor = 0f,
49
+ targetTime = 0,
50
+ targetReps = 0,
51
+ targetRom = "",
52
+ passCriteria = null
53
+ )
48
54
  )
55
+
56
+ private fun SMKitScoringParams.toParams(): ScoringParams {
57
+ return ScoringParams(
58
+ type = type,
59
+ scoreFactor = scoreFactor,
60
+ targetTime = targetTime,
61
+ targetReps = targetReps,
62
+ targetRom = targetRom,
63
+ passCriteria = passCriteria
64
+ )
65
+ }
@@ -1,17 +1,29 @@
1
1
  package com.smkituilibrary.model
2
2
 
3
3
  import androidx.annotation.Keep
4
+ import com.sency.smkitui.model.ScoringParams
4
5
  import com.sency.smkitui.model.UiElement
5
6
 
6
7
  @Keep
7
8
  internal data class SMKitExercise(
8
- val name: String? = null,
9
- val exerciseIntro: String? = null,
10
- val totalSeconds: Int? = null,
11
- val introSeconds: Int? = null,
12
- val videoInstruction: String? = null,
13
- val uiElements: Set<UiElement>? = null,
14
9
  val detector: String? = null,
10
+ val uiElements: Set<UiElement>? = null,
15
11
  val repBased: Boolean? = null,
12
+ val videoInstruction: String? = null,
13
+ val introSeconds: Int? = null,
14
+ val totalSeconds: Int? = null,
15
+ val scoringParams: SMKitScoringParams? = null,
16
+ val prettyName: String? = null,
17
+ val exerciseIntro: String? = null,
16
18
  val exerciseClosure: String? = null,
17
19
  )
20
+
21
+ @Keep
22
+ internal data class SMKitScoringParams(
23
+ val type: String,
24
+ val scoreFactor: Float,
25
+ val targetTime: Int,
26
+ val targetReps: Int,
27
+ val targetRom: String?,
28
+ val passCriteria: List<String>?
29
+ )
@@ -3,7 +3,7 @@
3
3
 
4
4
  @interface RCT_EXTERN_MODULE(SMKitUIManager, RCTViewManager)
5
5
  RCT_EXTERN_METHOD(configure:(NSString*)key onSuccess:(RCTPromiseResolveBlock)onSuccess onFailure:(RCTPromiseRejectBlock)onFailure)
6
- RCT_EXTERN_METHOD(startAssessment:(NSString*)type showSummary:(BOOL)showSummary onWorkoutDidFinish:(RCTPromiseResolveBlock)onWorkoutDidFinish onWorkoutFailed:(RCTPromiseRejectBlock)onWorkoutFailed)
6
+ RCT_EXTERN_METHOD(startAssessment:(NSString*)type showSummary:(BOOL)showSummary customAssessmentID:(NSString*)customAssessmentID onWorkoutDidFinish:(RCTPromiseResolveBlock)onWorkoutDidFinish onWorkoutFailed:(RCTPromiseRejectBlock)onWorkoutFailed)
7
7
  RCT_EXTERN_METHOD(startCustomWorkout:(NSDictionary*)dic onWorkoutDidFinish:(RCTPromiseResolveBlock)onWorkoutDidFinish onWorkoutFailed:(RCTPromiseRejectBlock)onWorkoutFailed)
8
8
  RCT_EXTERN_METHOD(startWorkoutProgram:(NSDictionary*)dic onWorkoutDidFinish:(RCTPromiseResolveBlock)onWorkoutDidFinish onWorkoutFailed:(RCTPromiseRejectBlock)onWorkoutFailed)
9
9
  @end
@@ -21,15 +21,23 @@ class SMKitUIManager: RCTViewManager {
21
21
 
22
22
  @objc(configure:onSuccess:onFailure:)
23
23
  func configure(key:NSString, onSuccess: @escaping RCTPromiseResolveBlock,onFailure:@escaping RCTPromiseRejectBlock) -> Void {
24
+ var isConfigDone = false
25
+ var didFail = false
24
26
  SMKitUIModel.configure(authKey: "\(key)") {
25
- onSuccess("")
27
+ if !isConfigDone{
28
+ isConfigDone = true
29
+ onSuccess("")
30
+ }
26
31
  } onFailure: { err in
27
- onFailure("Configure Failed", err?.localizedDescription ?? "", err)
32
+ if !didFail{
33
+ didFail = true
34
+ onFailure("Configure Failed", err?.localizedDescription ?? "", err)
35
+ }
28
36
  }
29
37
  }
30
38
 
31
- @objc(startAssessment:showSummary:onWorkoutDidFinish:onWorkoutFailed:)
32
- func startAssessment(type:NSString, showSummary:Bool, onWorkoutDidFinish: @escaping RCTPromiseResolveBlock, onWorkoutFailed:@escaping RCTPromiseRejectBlock){
39
+ @objc(startAssessment:showSummary:customAssessmentID:onWorkoutDidFinish:onWorkoutFailed:)
40
+ func startAssessment(type:NSString, showSummary:Bool, customAssessmentID:String?, onWorkoutDidFinish: @escaping RCTPromiseResolveBlock, onWorkoutFailed:@escaping RCTPromiseRejectBlock){
33
41
  guard let smkitUIViewController = smkitUIViewController else {
34
42
  onWorkoutFailed("StartAssessment Failed", "Failed to present view", nil)
35
43
  return
@@ -40,7 +48,7 @@ class SMKitUIManager: RCTViewManager {
40
48
  DispatchQueue.main.async {
41
49
  do{
42
50
  if let type = AssessmentTypes(rawValue: "\(type)"){
43
- try SMKitUIModel.startAssessmet(viewController: smkitUIViewController, type: type, showSummary: showSummary, delegate: self){error in
51
+ try SMKitUIModel.startAssessmet(viewController: smkitUIViewController, type: type, customAssessmentID:customAssessmentID, showSummary: showSummary, delegate: self){error in
44
52
  onWorkoutFailed("StartAssessment Failed", error.localizedDescription, error)
45
53
  }
46
54
  }else{
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.WorkoutDuration = exports.WorkoutDifficulty = exports.WorkoutConfig = exports.UIElement = exports.SMWorkout = exports.SMExercise = exports.BodyZone = exports.AssessmentTypes = void 0;
6
+ exports.WorkoutDuration = exports.WorkoutDifficulty = exports.WorkoutConfig = exports.UIElement = exports.SMWorkout = exports.SMScoringParams = exports.SMExercise = exports.BodyZone = exports.AssessmentTypes = void 0;
7
7
  let AssessmentTypes = exports.AssessmentTypes = /*#__PURE__*/function (AssessmentTypes) {
8
8
  AssessmentTypes["Fitness"] = "fitness";
9
9
  return AssessmentTypes;
@@ -45,8 +45,8 @@ class SMWorkout {
45
45
  }
46
46
  exports.SMWorkout = SMWorkout;
47
47
  class SMExercise {
48
- constructor(name, totalSeconds, introSeconds, videoInstruction, exerciseIntro, uiElements, detector, repBased, exerciseClosure, targetReps, targetTime, scoreFactor) {
49
- this.name = name || null;
48
+ constructor(prettyName, totalSeconds, introSeconds, videoInstruction, exerciseIntro, uiElements, detector, repBased, exerciseClosure, scoringParams) {
49
+ this.prettyName = prettyName || null;
50
50
  this.totalSeconds = totalSeconds || null;
51
51
  this.introSeconds = introSeconds || null;
52
52
  this.videoInstruction = videoInstruction || null;
@@ -54,13 +54,22 @@ class SMExercise {
54
54
  this.uiElements = uiElements || null;
55
55
  this.detector = detector;
56
56
  this.repBased = repBased || null;
57
- this.targetReps = targetReps || null;
58
- this.targetTime = targetTime || null;
59
- this.scoreFactor = scoreFactor || null;
60
57
  this.exerciseClosure = exerciseClosure || null;
58
+ this.scoringParams = scoringParams || null;
61
59
  }
62
60
  }
63
61
  exports.SMExercise = SMExercise;
62
+ class SMScoringParams {
63
+ constructor(type, scoreFactor, targetTime, targetReps, targetRom, passCriteria) {
64
+ this.type = type || null;
65
+ this.scoreFactor = scoreFactor || null;
66
+ this.targetTime = targetTime || null;
67
+ this.targetReps = targetReps || null;
68
+ this.targetRom = targetRom || null;
69
+ this.passCriteria = passCriteria || null;
70
+ }
71
+ }
72
+ exports.SMScoringParams = SMScoringParams;
64
73
  class WorkoutConfig {
65
74
  constructor(week, bodyZone, difficultyLevel, workoutDuration, programID) {
66
75
  this.week = week;
@@ -1 +1 @@
1
- {"version":3,"names":["AssessmentTypes","exports","UIElement","BodyZone","WorkoutDifficulty","WorkoutDuration","SMWorkout","constructor","id","name","workoutIntro","soundtrack","exercises","getInFrame","bodycalFinished","workoutClosure","SMExercise","totalSeconds","introSeconds","videoInstruction","exerciseIntro","uiElements","detector","repBased","exerciseClosure","targetReps","targetTime","scoreFactor","WorkoutConfig","week","bodyZone","difficultyLevel","workoutDuration","programID"],"sourceRoot":"../../src","sources":["SMWorkout.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AssessmentTypes","exports","UIElement","BodyZone","WorkoutDifficulty","WorkoutDuration","SMWorkout","constructor","id","name","workoutIntro","soundtrack","exercises","getInFrame","bodycalFinished","workoutClosure","SMExercise","prettyName","totalSeconds","introSeconds","videoInstruction","exerciseIntro","uiElements","detector","repBased","exerciseClosure","scoringParams","SMScoringParams","type","scoreFactor","targetTime","targetReps","targetRom","passCriteria","WorkoutConfig","week","bodyZone","difficultyLevel","workoutDuration","programID"],"sourceRoot":"../../src","sources":["SMWorkout.tsx"],"mappings":"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","ignoreList":[]}
@@ -21,8 +21,8 @@ const SMKitUIManager = _reactNative.NativeModules.SMKitUIManager ? _reactNative.
21
21
  function configure(key) {
22
22
  return SMKitUIManager.configure(key);
23
23
  }
24
- function startAssessment(type, showSummary) {
25
- return SMKitUIManager.startAssessment(type, showSummary);
24
+ function startAssessment(type, showSummary, customAssessmentID) {
25
+ return SMKitUIManager.startAssessment(type, showSummary, customAssessmentID);
26
26
  }
27
27
  function startCustomWorkout(workout) {
28
28
  return SMKitUIManager.startCustomWorkout(workout);
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","SMKitUIManager","NativeModules","Proxy","get","Error","configure","key","startAssessment","type","showSummary","startCustomWorkout","workout","startWorkoutProgram","workoutConfig","AssessmentTypes","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAGA,MAAMC,aAAa,GAChB,gFAA+E,GAChFC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,cAAc,GAAGC,0BAAa,CAACD,cAAc,GAC/CC,0BAAa,CAACD,cAAc,GAC5B,IAAIE,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACT,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEE,SAASU,SAASA,CAACC,GAAW,EAAmB;EACtD,OAAON,cAAc,CAACK,SAAS,CAACC,GAAG,CAAC;AACtC;AAEO,SAASC,eAAeA,CAACC,IAAqC,EAAEC,WAAmB,EAAgD;EACxI,OAAOT,cAAc,CAACO,eAAe,CAACC,IAAI,EAAEC,WAAW,CAAC;AAC1D;AAEO,SAASC,kBAAkBA,CAACC,OAAkC,EAAgD;EACnH,OAAOX,cAAc,CAACU,kBAAkB,CAACC,OAAO,CAAC;AACnD;AAEO,SAASC,mBAAmBA,CAACC,aAA4C,EAAgD;EAC9H,OAAOb,cAAc,CAACY,mBAAmB,CAACC,aAAa,CAAC;AAC1D;AAAC,IAEWC,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","SMKitUIManager","NativeModules","Proxy","get","Error","configure","key","startAssessment","type","showSummary","customAssessmentID","startCustomWorkout","workout","startWorkoutProgram","workoutConfig","AssessmentTypes","exports"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAGA,MAAMC,aAAa,GAChB,gFAA+E,GAChFC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,cAAc,GAAGC,0BAAa,CAACD,cAAc,GAC/CC,0BAAa,CAACD,cAAc,GAC5B,IAAIE,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACT,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEE,SAASU,SAASA,CAACC,GAAW,EAAmB;EACtD,OAAON,cAAc,CAACK,SAAS,CAACC,GAAG,CAAC;AACtC;AAEO,SAASC,eAAeA,CAC7BC,IAAsC,EACtCC,WAAoB,EACpBC,kBAA0B,EACwB;EAClD,OAAOV,cAAc,CAACO,eAAe,CAACC,IAAI,EAAEC,WAAW,EAAEC,kBAAkB,CAAC;AAC9E;AAEO,SAASC,kBAAkBA,CAACC,OAAkC,EAAgD;EACnH,OAAOZ,cAAc,CAACW,kBAAkB,CAACC,OAAO,CAAC;AACnD;AAEO,SAASC,mBAAmBA,CAACC,aAA4C,EAAgD;EAC9H,OAAOd,cAAc,CAACa,mBAAmB,CAACC,aAAa,CAAC;AAC1D;AAAC,IAEWC,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA","ignoreList":[]}
@@ -38,8 +38,8 @@ export class SMWorkout {
38
38
  }
39
39
  }
40
40
  export class SMExercise {
41
- constructor(name, totalSeconds, introSeconds, videoInstruction, exerciseIntro, uiElements, detector, repBased, exerciseClosure, targetReps, targetTime, scoreFactor) {
42
- this.name = name || null;
41
+ constructor(prettyName, totalSeconds, introSeconds, videoInstruction, exerciseIntro, uiElements, detector, repBased, exerciseClosure, scoringParams) {
42
+ this.prettyName = prettyName || null;
43
43
  this.totalSeconds = totalSeconds || null;
44
44
  this.introSeconds = introSeconds || null;
45
45
  this.videoInstruction = videoInstruction || null;
@@ -47,10 +47,18 @@ export class SMExercise {
47
47
  this.uiElements = uiElements || null;
48
48
  this.detector = detector;
49
49
  this.repBased = repBased || null;
50
- this.targetReps = targetReps || null;
51
- this.targetTime = targetTime || null;
52
- this.scoreFactor = scoreFactor || null;
53
50
  this.exerciseClosure = exerciseClosure || null;
51
+ this.scoringParams = scoringParams || null;
52
+ }
53
+ }
54
+ export class SMScoringParams {
55
+ constructor(type, scoreFactor, targetTime, targetReps, targetRom, passCriteria) {
56
+ this.type = type || null;
57
+ this.scoreFactor = scoreFactor || null;
58
+ this.targetTime = targetTime || null;
59
+ this.targetReps = targetReps || null;
60
+ this.targetRom = targetRom || null;
61
+ this.passCriteria = passCriteria || null;
54
62
  }
55
63
  }
56
64
  export class WorkoutConfig {
@@ -1 +1 @@
1
- {"version":3,"names":["AssessmentTypes","UIElement","BodyZone","WorkoutDifficulty","WorkoutDuration","SMWorkout","constructor","id","name","workoutIntro","soundtrack","exercises","getInFrame","bodycalFinished","workoutClosure","SMExercise","totalSeconds","introSeconds","videoInstruction","exerciseIntro","uiElements","detector","repBased","exerciseClosure","targetReps","targetTime","scoreFactor","WorkoutConfig","week","bodyZone","difficultyLevel","workoutDuration","programID"],"sourceRoot":"../../src","sources":["SMWorkout.tsx"],"mappings":"AAAA,WAAYA,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAI3B,WAAYC,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA;AAMrB,WAAYC,QAAQ,0BAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA;AAMpB,WAAYC,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA;AAM7B,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAK3B,OAAO,MAAMC,SAAS;EAUrBC,WAAWA,CAACC,EAAiB,EAAEC,IAAmB,EAAEC,YAA2B,EAAEC,UAAyB,EAAEC,SAAuB,EAAEC,UAAyB,EAAEC,eAA8B,EAAEC,cAA6B,EAAE;IACxN,IAAI,CAACP,EAAE,GAAGA,EAAE,IAAI,IAAI;IACpB,IAAI,CAACC,IAAI,GAAGA,IAAI,IAAI,IAAI;IACxB,IAAI,CAACC,YAAY,GAAGA,YAAY,IAAI,IAAI;IACxC,IAAI,CAACC,UAAU,GAAGA,UAAU,IAAI,IAAI;IACpC,IAAI,CAACC,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,UAAU,GAAGA,UAAU,IAAI,IAAI;IACpC,IAAI,CAACC,eAAe,GAAGA,eAAe,IAAI,IAAI;IAC9C,IAAI,CAACC,cAAc,GAAGA,cAAc,IAAI,IAAI;EAChD;AACJ;AAEA,OAAO,MAAMC,UAAU;EAcrBT,WAAWA,CAACE,IAAmB,EAAEQ,YAA2B,EAAEC,YAA2B,EAAEC,gBAA+B,EAAEC,aAA4B,EAAEC,UAA8B,EAAEC,QAAgB,EAAEC,QAAwB,EAAEC,eAA8B,EAAEC,UAAyB,EAAEC,UAAyB,EAAEC,WAA0B,EAAE;IACtV,IAAI,CAAClB,IAAI,GAAGA,IAAI,IAAI,IAAI;IACxB,IAAI,CAACQ,YAAY,GAAGA,YAAY,IAAI,IAAI;IACxC,IAAI,CAACC,YAAY,GAAGA,YAAY,IAAI,IAAI;IACxC,IAAI,CAACC,gBAAgB,GAAGA,gBAAgB,IAAI,IAAI;IAChD,IAAI,CAACC,aAAa,GAAGA,aAAa,IAAI,IAAI;IAC1C,IAAI,CAACC,UAAU,GAAGA,UAAU,IAAI,IAAI;IACpC,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,QAAQ,GAAGA,QAAQ,IAAI,IAAI;IAChC,IAAI,CAACE,UAAU,GAAGA,UAAU,IAAI,IAAI;IACpC,IAAI,CAACC,UAAU,GAAGA,UAAU,IAAI,IAAI;IACpC,IAAI,CAACC,WAAW,GAAGA,WAAW,IAAI,IAAI;IACtC,IAAI,CAACH,eAAe,GAAGA,eAAe,IAAI,IAAI;EAChD;AACF;AAEA,OAAO,MAAMI,aAAa;EAOxBrB,WAAWA,CAACsB,IAAY,EAAEC,QAAkB,EAAEC,eAAkC,EAAEC,eAAgC,EAAEC,SAAiB,EAAC;IACpI,IAAI,CAACJ,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,eAAe,GAAGA,eAAe;IACtC,IAAI,CAACC,SAAS,GAAGA,SAAS;EAC5B;AACF","ignoreList":[]}
1
+ {"version":3,"names":["AssessmentTypes","UIElement","BodyZone","WorkoutDifficulty","WorkoutDuration","SMWorkout","constructor","id","name","workoutIntro","soundtrack","exercises","getInFrame","bodycalFinished","workoutClosure","SMExercise","prettyName","totalSeconds","introSeconds","videoInstruction","exerciseIntro","uiElements","detector","repBased","exerciseClosure","scoringParams","SMScoringParams","type","scoreFactor","targetTime","targetReps","targetRom","passCriteria","WorkoutConfig","week","bodyZone","difficultyLevel","workoutDuration","programID"],"sourceRoot":"../../src","sources":["SMWorkout.tsx"],"mappings":"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","ignoreList":[]}
@@ -11,8 +11,8 @@ const SMKitUIManager = NativeModules.SMKitUIManager ? NativeModules.SMKitUIManag
11
11
  export function configure(key) {
12
12
  return SMKitUIManager.configure(key);
13
13
  }
14
- export function startAssessment(type, showSummary) {
15
- return SMKitUIManager.startAssessment(type, showSummary);
14
+ export function startAssessment(type, showSummary, customAssessmentID) {
15
+ return SMKitUIManager.startAssessment(type, showSummary, customAssessmentID);
16
16
  }
17
17
  export function startCustomWorkout(workout) {
18
18
  return SMKitUIManager.startCustomWorkout(workout);
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","SMKitUIManager","Proxy","get","Error","configure","key","startAssessment","type","showSummary","startCustomWorkout","workout","startWorkoutProgram","workoutConfig","AssessmentTypes"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAGtD,MAAMC,aAAa,GAChB,gFAA+E,GAChFD,QAAQ,CAACE,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,cAAc,GAAGN,aAAa,CAACM,cAAc,GAC/CN,aAAa,CAACM,cAAc,GAC5B,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEL,OAAO,SAASQ,SAASA,CAACC,GAAW,EAAmB;EACtD,OAAOL,cAAc,CAACI,SAAS,CAACC,GAAG,CAAC;AACtC;AAEA,OAAO,SAASC,eAAeA,CAACC,IAAqC,EAAEC,WAAmB,EAAgD;EACxI,OAAOR,cAAc,CAACM,eAAe,CAACC,IAAI,EAAEC,WAAW,CAAC;AAC1D;AAEA,OAAO,SAASC,kBAAkBA,CAACC,OAAkC,EAAgD;EACnH,OAAOV,cAAc,CAACS,kBAAkB,CAACC,OAAO,CAAC;AACnD;AAEA,OAAO,SAASC,mBAAmBA,CAACC,aAA4C,EAAgD;EAC9H,OAAOZ,cAAc,CAACW,mBAAmB,CAACC,aAAa,CAAC;AAC1D;AAEA,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","SMKitUIManager","Proxy","get","Error","configure","key","startAssessment","type","showSummary","customAssessmentID","startCustomWorkout","workout","startWorkoutProgram","workoutConfig","AssessmentTypes"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAGtD,MAAMC,aAAa,GAChB,gFAA+E,GAChFD,QAAQ,CAACE,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,cAAc,GAAGN,aAAa,CAACM,cAAc,GAC/CN,aAAa,CAACM,cAAc,GAC5B,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEL,OAAO,SAASQ,SAASA,CAACC,GAAW,EAAmB;EACtD,OAAOL,cAAc,CAACI,SAAS,CAACC,GAAG,CAAC;AACtC;AAEA,OAAO,SAASC,eAAeA,CAC7BC,IAAsC,EACtCC,WAAoB,EACpBC,kBAA0B,EACwB;EAClD,OAAOT,cAAc,CAACM,eAAe,CAACC,IAAI,EAAEC,WAAW,EAAEC,kBAAkB,CAAC;AAC9E;AAEA,OAAO,SAASC,kBAAkBA,CAACC,OAAkC,EAAgD;EACnH,OAAOX,cAAc,CAACU,kBAAkB,CAACC,OAAO,CAAC;AACnD;AAEA,OAAO,SAASC,mBAAmBA,CAACC,aAA4C,EAAgD;EAC9H,OAAOb,cAAc,CAACY,mBAAmB,CAACC,aAAa,CAAC;AAC1D;AAEA,WAAYC,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA","ignoreList":[]}
@@ -32,19 +32,26 @@ export declare class SMWorkout {
32
32
  constructor(id: string | null, name: string | null, workoutIntro: string | null, soundtrack: string | null, exercises: SMExercise[], getInFrame: string | null, bodycalFinished: string | null, workoutClosure: string | null);
33
33
  }
34
34
  export declare class SMExercise {
35
- name: string | null;
36
- totalSeconds: number | null;
37
- introSeconds: number | null;
38
- videoInstruction: string | null;
39
- exerciseIntro: string | null;
40
- uiElements: UIElement[] | null;
41
35
  detector: string;
36
+ uiElements: UIElement[] | null;
42
37
  repBased: boolean | null;
38
+ videoInstruction: string | null;
39
+ introSeconds: number | null;
40
+ totalSeconds: number | null;
41
+ prettyName: string | null;
42
+ exerciseIntro: string | null;
43
43
  exerciseClosure: string | null;
44
- targetReps: number | null;
45
- targetTime: number | null;
44
+ scoringParams: SMScoringParams | null;
45
+ constructor(prettyName: string | null, totalSeconds: number | null, introSeconds: number | null, videoInstruction: string | null, exerciseIntro: string | null, uiElements: UIElement[] | null, detector: string, repBased: boolean | null, exerciseClosure: string | null, scoringParams: SMScoringParams | null);
46
+ }
47
+ export declare class SMScoringParams {
48
+ type: string | null;
46
49
  scoreFactor: number | null;
47
- constructor(name: string | null, totalSeconds: number | null, introSeconds: number | null, videoInstruction: string | null, exerciseIntro: string | null, uiElements: UIElement[] | null, detector: string, repBased: boolean | null, exerciseClosure: string | null, targetReps: number | null, targetTime: number | null, scoreFactor: number | null);
50
+ targetTime: number | null;
51
+ targetReps: number | null;
52
+ targetRom: string | null;
53
+ passCriteria: string[] | null;
54
+ constructor(type: string | null, scoreFactor: number | null, targetTime: number | null, targetReps: number | null, targetRom: string | null, passCriteria: string[] | null);
48
55
  }
49
56
  export declare class WorkoutConfig {
50
57
  week: number;
@@ -1 +1 @@
1
- {"version":3,"file":"SMWorkout.d.ts","sourceRoot":"","sources":["../../../src/SMWorkout.tsx"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,oBAAY,SAAS;IACnB,WAAW,gBAAgB;IAC3B,KAAK,UAAU;IACf,aAAa,kBAAkB;CAChC;AAED,oBAAY,QAAQ;IAClB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,oBAAY,iBAAiB;IAC3B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;CAClC;AAED,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,IAAI,SAAS;CACd;AAED,qBAAa,SAAS;IACrB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;gBAElB,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI;CAU7N;AAED,qBAAa,UAAU;IACrB,IAAI,EAAC,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;gBAEf,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;CAcvV;AAED,qBAAa,aAAa;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,eAAe,EAAE,iBAAiB,CAAC;IACnC,eAAe,EAAE,eAAe,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;gBAEN,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM;CAOtI"}
1
+ {"version":3,"file":"SMWorkout.d.ts","sourceRoot":"","sources":["../../../src/SMWorkout.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as SMWorkoutLibrary from '../src/SMWorkout';
2
2
  export declare function configure(key: string): Promise<string>;
3
- export declare function startAssessment(type: SMWorkoutLibrary.AssessmentTypes, showSummary: boolean): Promise<{
3
+ export declare function startAssessment(type: SMWorkoutLibrary.AssessmentTypes, showSummary: boolean, customAssessmentID: string): Promise<{
4
4
  summary: string;
5
5
  didFinish: boolean;
6
6
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,gBAAgB,MAAM,kBAAkB,CAAC;AAmBrD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEtD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAC,gBAAgB,CAAC,eAAe,EAAE,WAAW,EAAC,OAAO,GAAG,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAC,OAAO,CAAA;CAAC,CAAC,CAEzI;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAC,gBAAgB,CAAC,SAAS,GAAG,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAC,OAAO,CAAA;CAAC,CAAC,CAEpH;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAC,gBAAgB,CAAC,aAAa,GAAG,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAC,OAAO,CAAA;CAAC,CAAC,CAE/H;AAED,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,gBAAgB,MAAM,kBAAkB,CAAC;AAmBrD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAEtD;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,gBAAgB,CAAC,eAAe,EACtC,WAAW,EAAE,OAAO,EACpB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,CAElD;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAC,gBAAgB,CAAC,SAAS,GAAG,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAC,OAAO,CAAA;CAAC,CAAC,CAEpH;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAC,gBAAgB,CAAC,aAAa,GAAG,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAC,OAAO,CAAA;CAAC,CAAC,CAE/H;AAED,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sency/react-native-smkit-ui",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "description": "react-native-smkit-ui",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -15,7 +15,7 @@ Pod::Spec.new do |s|
15
15
  s.source = { :git => "https://github.com/sency-ai/smkit-ui-react-native-demo.git", :tag => "#{s.version}" }
16
16
 
17
17
  s.source_files = "ios/**/*.{h,m,mm,swift}"
18
- s.dependency "SMKitUI" ,'0.1.9'
18
+ s.dependency "SMKitUI" ,'0.2.1'
19
19
 
20
20
  # Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
21
21
  # See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
package/src/SMWorkout.tsx CHANGED
@@ -48,21 +48,20 @@ export class SMWorkout{
48
48
  }
49
49
 
50
50
  export class SMExercise{
51
- name:string | null;
52
- totalSeconds: number | null;
53
- introSeconds: number | null;
54
- videoInstruction: string | null;
55
- exerciseIntro: string | null;
56
- uiElements: UIElement[] | null;
57
51
  detector: string;
52
+ uiElements: UIElement[] | null;
58
53
  repBased: boolean | null;
54
+ videoInstruction: string | null;
55
+ introSeconds: number | null;
56
+ totalSeconds: number | null;
57
+ prettyName:string | null;
58
+ exerciseIntro: string | null;
59
59
  exerciseClosure: string | null;
60
- targetReps: number | null;
61
- targetTime: number | null;
62
- scoreFactor: number | null;
60
+ scoringParams: SMScoringParams | null;
61
+
63
62
 
64
- constructor(name: string | null, totalSeconds: number | null, introSeconds: number | null, videoInstruction: string | null, exerciseIntro: string | null, uiElements: UIElement[] | null, detector: string, repBased: boolean | null, exerciseClosure: string | null, targetReps: number | null, targetTime: number | null, scoreFactor: number | null) {
65
- this.name = name || null
63
+ constructor(prettyName: string | null, totalSeconds: number | null, introSeconds: number | null, videoInstruction: string | null, exerciseIntro: string | null, uiElements: UIElement[] | null, detector: string, repBased: boolean | null, exerciseClosure: string | null, scoringParams: SMScoringParams | null) {
64
+ this.prettyName = prettyName || null
66
65
  this.totalSeconds = totalSeconds || null
67
66
  this.introSeconds = introSeconds || null
68
67
  this.videoInstruction = videoInstruction || null
@@ -70,13 +69,30 @@ export class SMExercise{
70
69
  this.uiElements = uiElements || null
71
70
  this.detector = detector
72
71
  this.repBased = repBased || null
73
- this.targetReps = targetReps || null
74
- this.targetTime = targetTime || null
75
- this.scoreFactor = scoreFactor || null
76
72
  this.exerciseClosure = exerciseClosure || null;
73
+ this.scoringParams = scoringParams || null;
77
74
  }
78
75
  }
79
76
 
77
+ export class SMScoringParams {
78
+ type:string | null;
79
+ scoreFactor: number | null;
80
+ targetTime: number | null;
81
+ targetReps: number | null;
82
+ targetRom: string | null;
83
+ passCriteria: string[] | null;
84
+
85
+ constructor(type: string | null, scoreFactor: number | null, targetTime: number | null, targetReps: number | null, targetRom: string | null, passCriteria: string[] | null) {
86
+ this.type = type || null
87
+ this.scoreFactor = scoreFactor || null
88
+ this.targetTime = targetTime || null
89
+ this.targetReps = targetReps || null
90
+ this.targetRom = targetRom || null
91
+ this.passCriteria = passCriteria || null
92
+ }
93
+
94
+ }
95
+
80
96
  export class WorkoutConfig{
81
97
  week: number;
82
98
  bodyZone: BodyZone;
package/src/index.tsx CHANGED
@@ -22,8 +22,12 @@ export function configure(key: string): Promise<string> {
22
22
  return SMKitUIManager.configure(key);
23
23
  }
24
24
 
25
- export function startAssessment(type:SMWorkoutLibrary.AssessmentTypes, showSummary:boolean): Promise<{summary: string, didFinish:boolean}>{
26
- return SMKitUIManager.startAssessment(type, showSummary);
25
+ export function startAssessment(
26
+ type: SMWorkoutLibrary.AssessmentTypes,
27
+ showSummary: boolean,
28
+ customAssessmentID: string
29
+ ): Promise<{ summary: string; didFinish: boolean }> {
30
+ return SMKitUIManager.startAssessment(type, showSummary, customAssessmentID);
27
31
  }
28
32
 
29
33
  export function startCustomWorkout(workout:SMWorkoutLibrary.SMWorkout): Promise<{summary: string, didFinish:boolean}>{