@magmamath/students-features 1.2.1-rc.21 → 1.2.1-rc.22

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.
Files changed (91) hide show
  1. package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js +7 -1
  2. package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js.map +1 -1
  3. package/dist/commonjs/features/pmProgress/components/list/Fluency.js +5 -1
  4. package/dist/commonjs/features/pmProgress/components/list/Fluency.js.map +1 -1
  5. package/dist/commonjs/features/pmProgress/components/list/ListCard.js +3 -1
  6. package/dist/commonjs/features/pmProgress/components/list/ListCard.js.map +1 -1
  7. package/dist/commonjs/features/pmProgress/components/list/ListItem.js +33 -14
  8. package/dist/commonjs/features/pmProgress/components/list/ListItem.js.map +1 -1
  9. package/dist/commonjs/features/pmProgress/components/list/PmDomainList.js +5 -1
  10. package/dist/commonjs/features/pmProgress/components/list/PmDomainList.js.map +1 -1
  11. package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js +10 -2
  12. package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -1
  13. package/dist/commonjs/features/pmProgress/model/PmSolvingFlowModel.js +2 -0
  14. package/dist/commonjs/features/pmProgress/model/PmSolvingFlowModel.js.map +1 -1
  15. package/dist/commonjs/features/pmProgress/shared/pmProgress.constants.js +6 -1
  16. package/dist/commonjs/features/pmProgress/shared/pmProgress.constants.js.map +1 -1
  17. package/dist/commonjs/shared/translation/localization/ca.json +2 -1
  18. package/dist/commonjs/shared/translation/localization/de.json +2 -1
  19. package/dist/commonjs/shared/translation/localization/en.json +2 -1
  20. package/dist/commonjs/shared/translation/localization/gb.json +2 -1
  21. package/dist/commonjs/shared/translation/localization/sct.json +2 -1
  22. package/dist/commonjs/shared/translation/localization/sw.json +2 -1
  23. package/dist/module/features/pmProgress/components/header/PmProgressHeader.js +9 -3
  24. package/dist/module/features/pmProgress/components/header/PmProgressHeader.js.map +1 -1
  25. package/dist/module/features/pmProgress/components/list/Fluency.js +5 -1
  26. package/dist/module/features/pmProgress/components/list/Fluency.js.map +1 -1
  27. package/dist/module/features/pmProgress/components/list/ListCard.js +3 -1
  28. package/dist/module/features/pmProgress/components/list/ListCard.js.map +1 -1
  29. package/dist/module/features/pmProgress/components/list/ListItem.js +35 -16
  30. package/dist/module/features/pmProgress/components/list/ListItem.js.map +1 -1
  31. package/dist/module/features/pmProgress/components/list/PmDomainList.js +5 -1
  32. package/dist/module/features/pmProgress/components/list/PmDomainList.js.map +1 -1
  33. package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js +12 -4
  34. package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -1
  35. package/dist/module/features/pmProgress/model/PmSolvingFlowModel.js +2 -0
  36. package/dist/module/features/pmProgress/model/PmSolvingFlowModel.js.map +1 -1
  37. package/dist/module/features/pmProgress/shared/pmProgress.constants.js +5 -0
  38. package/dist/module/features/pmProgress/shared/pmProgress.constants.js.map +1 -1
  39. package/dist/module/shared/translation/localization/ca.json +2 -1
  40. package/dist/module/shared/translation/localization/de.json +2 -1
  41. package/dist/module/shared/translation/localization/en.json +2 -1
  42. package/dist/module/shared/translation/localization/gb.json +2 -1
  43. package/dist/module/shared/translation/localization/sct.json +2 -1
  44. package/dist/module/shared/translation/localization/sw.json +2 -1
  45. package/dist/typescript/commonjs/features/pmProgress/components/header/PmProgressHeader.d.ts.map +1 -1
  46. package/dist/typescript/commonjs/features/pmProgress/components/list/Fluency.d.ts.map +1 -1
  47. package/dist/typescript/commonjs/features/pmProgress/components/list/ListCard.d.ts +2 -1
  48. package/dist/typescript/commonjs/features/pmProgress/components/list/ListCard.d.ts.map +1 -1
  49. package/dist/typescript/commonjs/features/pmProgress/components/list/ListItem.d.ts +2 -1
  50. package/dist/typescript/commonjs/features/pmProgress/components/list/ListItem.d.ts.map +1 -1
  51. package/dist/typescript/commonjs/features/pmProgress/components/list/PmDomainList.d.ts.map +1 -1
  52. package/dist/typescript/commonjs/features/pmProgress/components/recs/PmTeacherRecs.d.ts.map +1 -1
  53. package/dist/typescript/commonjs/features/pmProgress/model/PmSolvingFlowModel.d.ts +2 -0
  54. package/dist/typescript/commonjs/features/pmProgress/model/PmSolvingFlowModel.d.ts.map +1 -1
  55. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.constants.d.ts +4 -0
  56. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.constants.d.ts.map +1 -1
  57. package/dist/typescript/commonjs/shared/translation/constants.d.ts +6 -0
  58. package/dist/typescript/commonjs/shared/translation/constants.d.ts.map +1 -1
  59. package/dist/typescript/commonjs/shared/translation/model.d.ts +2 -0
  60. package/dist/typescript/commonjs/shared/translation/model.d.ts.map +1 -1
  61. package/dist/typescript/module/features/pmProgress/components/header/PmProgressHeader.d.ts.map +1 -1
  62. package/dist/typescript/module/features/pmProgress/components/list/Fluency.d.ts.map +1 -1
  63. package/dist/typescript/module/features/pmProgress/components/list/ListCard.d.ts +2 -1
  64. package/dist/typescript/module/features/pmProgress/components/list/ListCard.d.ts.map +1 -1
  65. package/dist/typescript/module/features/pmProgress/components/list/ListItem.d.ts +2 -1
  66. package/dist/typescript/module/features/pmProgress/components/list/ListItem.d.ts.map +1 -1
  67. package/dist/typescript/module/features/pmProgress/components/list/PmDomainList.d.ts.map +1 -1
  68. package/dist/typescript/module/features/pmProgress/components/recs/PmTeacherRecs.d.ts.map +1 -1
  69. package/dist/typescript/module/features/pmProgress/model/PmSolvingFlowModel.d.ts +2 -0
  70. package/dist/typescript/module/features/pmProgress/model/PmSolvingFlowModel.d.ts.map +1 -1
  71. package/dist/typescript/module/features/pmProgress/shared/pmProgress.constants.d.ts +4 -0
  72. package/dist/typescript/module/features/pmProgress/shared/pmProgress.constants.d.ts.map +1 -1
  73. package/dist/typescript/module/shared/translation/constants.d.ts +6 -0
  74. package/dist/typescript/module/shared/translation/constants.d.ts.map +1 -1
  75. package/dist/typescript/module/shared/translation/model.d.ts +2 -0
  76. package/dist/typescript/module/shared/translation/model.d.ts.map +1 -1
  77. package/package.json +1 -1
  78. package/src/features/pmProgress/components/header/PmProgressHeader.tsx +10 -3
  79. package/src/features/pmProgress/components/list/Fluency.tsx +5 -1
  80. package/src/features/pmProgress/components/list/ListCard.tsx +3 -0
  81. package/src/features/pmProgress/components/list/ListItem.tsx +38 -13
  82. package/src/features/pmProgress/components/list/PmDomainList.tsx +5 -1
  83. package/src/features/pmProgress/components/recs/PmTeacherRecs.tsx +12 -4
  84. package/src/features/pmProgress/model/PmSolvingFlowModel.ts +3 -0
  85. package/src/features/pmProgress/shared/pmProgress.constants.ts +5 -0
  86. package/src/shared/translation/localization/ca.json +2 -1
  87. package/src/shared/translation/localization/de.json +2 -1
  88. package/src/shared/translation/localization/en.json +2 -1
  89. package/src/shared/translation/localization/gb.json +2 -1
  90. package/src/shared/translation/localization/sct.json +2 -1
  91. package/src/shared/translation/localization/sw.json +2 -1
@@ -75,6 +75,7 @@
75
75
  "skillLeft": "",
76
76
  "grade": "",
77
77
  "gradeK": "",
78
- "gradeOther": ""
78
+ "gradeOther": "",
79
+ "loading": ""
79
80
  }
80
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PmProgressHeader.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/header/PmProgressHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAyBvC,eAAO,MAAM,gBAAgB,yBAkG5B,CAAA"}
1
+ {"version":3,"file":"PmProgressHeader.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/header/PmProgressHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAyBvC,eAAO,MAAM,gBAAgB,yBAyG5B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Fluency.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/Fluency.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAGtD,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,OAAO,aAAc,YAAY,6BA8B7C,CAAA"}
1
+ {"version":3,"file":"Fluency.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/Fluency.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAGtD,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,OAAO,aAAc,YAAY,6BAkC7C,CAAA"}
@@ -24,7 +24,8 @@ type ListCardProps<T extends ListCardItem> = {
24
24
  expandedColor?: string;
25
25
  isSkillsLeftHidden?: boolean;
26
26
  isHighlighted?: boolean;
27
+ loadingItemId?: string | null;
27
28
  };
28
- export declare const ListCard: <T extends ListCardItem>({ title, icon, color, items, isExpanded, isHighlighted, onPress, onHoverIn, onHoverOut, onItemPress, progress, rightContent, isFirst, isLast, maxItems, expandedColor, isSkillsLeftHidden, }: ListCardProps<T>) => React.JSX.Element;
29
+ export declare const ListCard: <T extends ListCardItem>({ title, icon, color, items, isExpanded, isHighlighted, onPress, onHoverIn, onHoverOut, onItemPress, progress, rightContent, isFirst, isLast, maxItems, expandedColor, isSkillsLeftHidden, loadingItemId, }: ListCardProps<T>) => React.JSX.Element;
29
30
  export {};
30
31
  //# sourceMappingURL=ListCard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListCard.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAavC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAM3D,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,WAAW,CAAA;CACzB,CAAA;AAQD,KAAK,aAAa,CAAC,CAAC,SAAS,YAAY,IAAI;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAC,YAAY,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,CAAC,EAAE,CAAA;IACV,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,YAAY,gMAkB5C,aAAa,CAAC,CAAC,CAAC,sBAiFlB,CAAA"}
1
+ {"version":3,"file":"ListCard.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAavC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAM3D,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,WAAW,CAAA;CACzB,CAAA;AAQD,KAAK,aAAa,CAAC,CAAC,SAAS,YAAY,IAAI;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAC,YAAY,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,CAAC,EAAE,CAAA;IACV,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,YAAY,+MAmB5C,aAAa,CAAC,CAAC,CAAC,sBAkFlB,CAAA"}
@@ -4,8 +4,9 @@ export type ListItemProps = {
4
4
  subtitle: string;
5
5
  skillsLeft: number;
6
6
  isFinished?: boolean;
7
+ isLoading?: boolean;
7
8
  onPress?: () => void;
8
9
  isSkillsLeftHidden?: boolean;
9
10
  };
10
- export declare const ListItem: ({ title, subtitle, skillsLeft, isFinished, onPress, isSkillsLeftHidden, }: ListItemProps) => React.JSX.Element;
11
+ export declare const ListItem: ({ title, subtitle, skillsLeft, isFinished, isLoading, onPress, isSkillsLeftHidden, }: ListItemProps) => React.JSX.Element;
11
12
  //# sourceMappingURL=ListItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAqBvC,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,QAAQ,8EAOlB,aAAa,sBA2Cf,CAAA"}
1
+ {"version":3,"file":"ListItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAqBvC,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,QAAQ,yFAQlB,aAAa,sBA2Df,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PmDomainList.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/PmDomainList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,eAAO,MAAM,YAAY,yBA4CxB,CAAA"}
1
+ {"version":3,"file":"PmDomainList.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/PmDomainList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,eAAO,MAAM,YAAY,yBAgDxB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PmTeacherRecs.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/recs/PmTeacherRecs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAiBzB,eAAO,MAAM,aAAa,gCA8DzB,CAAA"}
1
+ {"version":3,"file":"PmTeacherRecs.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/recs/PmTeacherRecs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAiBzB,eAAO,MAAM,aAAa,gCAsEzB,CAAA"}
@@ -7,6 +7,8 @@ export declare class PmSolvingFlowModel {
7
7
  readonly reset: import("effector").EventCallable<void>;
8
8
  readonly setQueue: import("effector").EventCallable<Skill[]>;
9
9
  readonly advance: import("effector").EventCallable<void>;
10
+ readonly setLoaderOpeningId: import("effector").EventCallable<string | null>;
11
+ readonly $loaderOpeningId: import("effector").StoreWritable<string | null>;
10
12
  readonly $queue: import("effector").StoreWritable<Skill[]>;
11
13
  constructor(treeModel: PmTreeModel, recommendationsModel: PmRecommendationsModel);
12
14
  start(props: StartSolvingProps): Promise<Skill>;
@@ -1 +1 @@
1
- {"version":3,"file":"PmSolvingFlowModel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/model/PmSolvingFlowModel.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAIL,KAAK,EAEL,iBAAiB,EAGlB,MAAM,4BAA4B,CAAA;AAYnC,qBAAa,kBAAkB;IAW3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAXvC,SAAgB,KAAK,yCAAgB;IAErC,SAAgB,QAAQ,4CAAyB;IACjD,SAAgB,OAAO,yCAAgB;IAEvC,SAAgB,MAAM,4CAEF;gBAGD,SAAS,EAAE,WAAW,EACtB,oBAAoB,EAAE,sBAAsB;IAKlD,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC;IAU/C,IAAI;IAKjB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,kBAAkB;YAkBZ,UAAU;CAWzB"}
1
+ {"version":3,"file":"PmSolvingFlowModel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/model/PmSolvingFlowModel.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAIL,KAAK,EAEL,iBAAiB,EAGlB,MAAM,4BAA4B,CAAA;AAYnC,qBAAa,kBAAkB;IAc3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAdvC,SAAgB,KAAK,yCAAgB;IAErC,SAAgB,QAAQ,4CAAyB;IACjD,SAAgB,OAAO,yCAAgB;IACvC,SAAgB,kBAAkB,kDAA+B;IAEjE,SAAgB,gBAAgB,kDAAyC;IAEzE,SAAgB,MAAM,4CAEF;gBAGD,SAAS,EAAE,WAAW,EACtB,oBAAoB,EAAE,sBAAsB;IAKlD,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC;IAU/C,IAAI;IAKjB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,kBAAkB;YAkBZ,UAAU;CAWzB"}
@@ -15,6 +15,10 @@ export declare enum SolvingFlow {
15
15
  MAGMA = "MAGMA",
16
16
  STANDARD = "STANDARD"
17
17
  }
18
+ export declare enum OpeningLoaderId {
19
+ START_BUTTON = "START_BUTTON",
20
+ PRACTICE_BUTTON = "PRACTICE_BUTTON"
21
+ }
18
22
  export declare enum SessionStorageKeys {
19
23
  SOLVING_QUEUE = "PM_SOLVING_QUEUE",
20
24
  GRADE = "PM_GRADE",
@@ -1 +1 @@
1
- {"version":3,"file":"pmProgress.constants.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/shared/pmProgress.constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,MAAM,CAAA;AACnC,eAAO,MAAM,2BAA2B,MAAM,CAAA;AAC9C,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,iBAAiB;IAC3B,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,SAAS,aAAa;CACvB;AAED,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,oBAAY,kBAAkB;IAC5B,aAAa,qBAAqB;IAClC,KAAK,aAAa;IAClB,OAAO,eAAe;CACvB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,+PAsBzB,CAAA;AAED,eAAO,MAAM,oBAAoB;;;;;;GAM9B,CAAA;AAEH,eAAO,MAAM,oBAAoB,uFAsBhC,CAAA"}
1
+ {"version":3,"file":"pmProgress.constants.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/shared/pmProgress.constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,MAAM,CAAA;AACnC,eAAO,MAAM,2BAA2B,MAAM,CAAA;AAC9C,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,iBAAiB;IAC3B,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,SAAS,aAAa;CACvB;AAED,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;CACpC;AAED,oBAAY,kBAAkB;IAC5B,aAAa,qBAAqB;IAClC,KAAK,aAAa;IAClB,OAAO,eAAe;CACvB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,+PAsBzB,CAAA;AAED,eAAO,MAAM,oBAAoB;;;;;;GAM9B,CAAA;AAEH,eAAO,MAAM,oBAAoB,uFAsBhC,CAAA"}
@@ -77,6 +77,7 @@ export declare const LOCALIZATION_CONFIGS: {
77
77
  grade: string;
78
78
  gradeK: string;
79
79
  gradeOther: string;
80
+ loading: string;
80
81
  };
81
82
  };
82
83
  "en-GB": {
@@ -157,6 +158,7 @@ export declare const LOCALIZATION_CONFIGS: {
157
158
  grade: string;
158
159
  gradeK: string;
159
160
  gradeOther: string;
161
+ loading: string;
160
162
  };
161
163
  };
162
164
  "sv-SE": {
@@ -237,6 +239,7 @@ export declare const LOCALIZATION_CONFIGS: {
237
239
  grade: string;
238
240
  gradeK: string;
239
241
  gradeOther: string;
242
+ loading: string;
240
243
  };
241
244
  };
242
245
  "en-CA": {
@@ -317,6 +320,7 @@ export declare const LOCALIZATION_CONFIGS: {
317
320
  grade: string;
318
321
  gradeK: string;
319
322
  gradeOther: string;
323
+ loading: string;
320
324
  };
321
325
  };
322
326
  "en-SCT": {
@@ -397,6 +401,7 @@ export declare const LOCALIZATION_CONFIGS: {
397
401
  grade: string;
398
402
  gradeK: string;
399
403
  gradeOther: string;
404
+ loading: string;
400
405
  };
401
406
  };
402
407
  "de-DE": {
@@ -477,6 +482,7 @@ export declare const LOCALIZATION_CONFIGS: {
477
482
  grade: string;
478
483
  gradeK: string;
479
484
  gradeOther: string;
485
+ loading: string;
480
486
  };
481
487
  };
482
488
  };
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/constants.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOhC,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/constants.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOhC,CAAA"}
@@ -78,6 +78,7 @@ export declare const setLocalization: import("effector").EventCallable<{
78
78
  grade: string;
79
79
  gradeK: string;
80
80
  gradeOther: string;
81
+ loading: string;
81
82
  };
82
83
  } | ((config: typeof LOCALIZATION_CONFIGS) => Translations)>;
83
84
  export declare const $localization: import("effector").StoreWritable<{
@@ -158,6 +159,7 @@ export declare const $localization: import("effector").StoreWritable<{
158
159
  grade: string;
159
160
  gradeK: string;
160
161
  gradeOther: string;
162
+ loading: string;
161
163
  };
162
164
  }>;
163
165
  //# sourceMappingURL=model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAGlD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cACD,OAAO,oBAAoB,KAAK,YAAY,EACpE,CAAA;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMzB,CAAA"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAGlD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cACD,OAAO,oBAAoB,KAAK,YAAY,EACpE,CAAA;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMzB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PmProgressHeader.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/header/PmProgressHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAyBvC,eAAO,MAAM,gBAAgB,yBAkG5B,CAAA"}
1
+ {"version":3,"file":"PmProgressHeader.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/header/PmProgressHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAyBvC,eAAO,MAAM,gBAAgB,yBAyG5B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Fluency.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/Fluency.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAGtD,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,OAAO,aAAc,YAAY,6BA8B7C,CAAA"}
1
+ {"version":3,"file":"Fluency.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/Fluency.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAGtD,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,OAAO,aAAc,YAAY,6BAkC7C,CAAA"}
@@ -24,7 +24,8 @@ type ListCardProps<T extends ListCardItem> = {
24
24
  expandedColor?: string;
25
25
  isSkillsLeftHidden?: boolean;
26
26
  isHighlighted?: boolean;
27
+ loadingItemId?: string | null;
27
28
  };
28
- export declare const ListCard: <T extends ListCardItem>({ title, icon, color, items, isExpanded, isHighlighted, onPress, onHoverIn, onHoverOut, onItemPress, progress, rightContent, isFirst, isLast, maxItems, expandedColor, isSkillsLeftHidden, }: ListCardProps<T>) => React.JSX.Element;
29
+ export declare const ListCard: <T extends ListCardItem>({ title, icon, color, items, isExpanded, isHighlighted, onPress, onHoverIn, onHoverOut, onItemPress, progress, rightContent, isFirst, isLast, maxItems, expandedColor, isSkillsLeftHidden, loadingItemId, }: ListCardProps<T>) => React.JSX.Element;
29
30
  export {};
30
31
  //# sourceMappingURL=ListCard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListCard.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAavC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAM3D,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,WAAW,CAAA;CACzB,CAAA;AAQD,KAAK,aAAa,CAAC,CAAC,SAAS,YAAY,IAAI;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAC,YAAY,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,CAAC,EAAE,CAAA;IACV,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,YAAY,gMAkB5C,aAAa,CAAC,CAAC,CAAC,sBAiFlB,CAAA"}
1
+ {"version":3,"file":"ListCard.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAavC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAM3D,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,WAAW,CAAA;CACzB,CAAA;AAQD,KAAK,aAAa,CAAC,CAAC,SAAS,YAAY,IAAI;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAC,YAAY,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,CAAC,EAAE,CAAA;IACV,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAA;IAC/B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,YAAY,+MAmB5C,aAAa,CAAC,CAAC,CAAC,sBAkFlB,CAAA"}
@@ -4,8 +4,9 @@ export type ListItemProps = {
4
4
  subtitle: string;
5
5
  skillsLeft: number;
6
6
  isFinished?: boolean;
7
+ isLoading?: boolean;
7
8
  onPress?: () => void;
8
9
  isSkillsLeftHidden?: boolean;
9
10
  };
10
- export declare const ListItem: ({ title, subtitle, skillsLeft, isFinished, onPress, isSkillsLeftHidden, }: ListItemProps) => React.JSX.Element;
11
+ export declare const ListItem: ({ title, subtitle, skillsLeft, isFinished, isLoading, onPress, isSkillsLeftHidden, }: ListItemProps) => React.JSX.Element;
11
12
  //# sourceMappingURL=ListItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAqBvC,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,QAAQ,8EAOlB,aAAa,sBA2Cf,CAAA"}
1
+ {"version":3,"file":"ListItem.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/ListItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAqBvC,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,QAAQ,yFAQlB,aAAa,sBA2Df,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PmDomainList.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/PmDomainList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,eAAO,MAAM,YAAY,yBA4CxB,CAAA"}
1
+ {"version":3,"file":"PmDomainList.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/list/PmDomainList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,eAAO,MAAM,YAAY,yBAgDxB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PmTeacherRecs.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/recs/PmTeacherRecs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAiBzB,eAAO,MAAM,aAAa,gCA8DzB,CAAA"}
1
+ {"version":3,"file":"PmTeacherRecs.d.ts","sourceRoot":"","sources":["../../../../../../../src/features/pmProgress/components/recs/PmTeacherRecs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAiBzB,eAAO,MAAM,aAAa,gCAsEzB,CAAA"}
@@ -7,6 +7,8 @@ export declare class PmSolvingFlowModel {
7
7
  readonly reset: import("effector").EventCallable<void>;
8
8
  readonly setQueue: import("effector").EventCallable<Skill[]>;
9
9
  readonly advance: import("effector").EventCallable<void>;
10
+ readonly setLoaderOpeningId: import("effector").EventCallable<string | null>;
11
+ readonly $loaderOpeningId: import("effector").StoreWritable<string | null>;
10
12
  readonly $queue: import("effector").StoreWritable<Skill[]>;
11
13
  constructor(treeModel: PmTreeModel, recommendationsModel: PmRecommendationsModel);
12
14
  start(props: StartSolvingProps): Promise<Skill>;
@@ -1 +1 @@
1
- {"version":3,"file":"PmSolvingFlowModel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/model/PmSolvingFlowModel.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAIL,KAAK,EAEL,iBAAiB,EAGlB,MAAM,4BAA4B,CAAA;AAYnC,qBAAa,kBAAkB;IAW3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAXvC,SAAgB,KAAK,yCAAgB;IAErC,SAAgB,QAAQ,4CAAyB;IACjD,SAAgB,OAAO,yCAAgB;IAEvC,SAAgB,MAAM,4CAEF;gBAGD,SAAS,EAAE,WAAW,EACtB,oBAAoB,EAAE,sBAAsB;IAKlD,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC;IAU/C,IAAI;IAKjB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,kBAAkB;YAkBZ,UAAU;CAWzB"}
1
+ {"version":3,"file":"PmSolvingFlowModel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/model/PmSolvingFlowModel.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAIL,KAAK,EAEL,iBAAiB,EAGlB,MAAM,4BAA4B,CAAA;AAYnC,qBAAa,kBAAkB;IAc3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IAdvC,SAAgB,KAAK,yCAAgB;IAErC,SAAgB,QAAQ,4CAAyB;IACjD,SAAgB,OAAO,yCAAgB;IACvC,SAAgB,kBAAkB,kDAA+B;IAEjE,SAAgB,gBAAgB,kDAAyC;IAEzE,SAAgB,MAAM,4CAEF;gBAGD,SAAS,EAAE,WAAW,EACtB,oBAAoB,EAAE,sBAAsB;IAKlD,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC;IAU/C,IAAI;IAKjB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,kBAAkB;YAkBZ,UAAU;CAWzB"}
@@ -15,6 +15,10 @@ export declare enum SolvingFlow {
15
15
  MAGMA = "MAGMA",
16
16
  STANDARD = "STANDARD"
17
17
  }
18
+ export declare enum OpeningLoaderId {
19
+ START_BUTTON = "START_BUTTON",
20
+ PRACTICE_BUTTON = "PRACTICE_BUTTON"
21
+ }
18
22
  export declare enum SessionStorageKeys {
19
23
  SOLVING_QUEUE = "PM_SOLVING_QUEUE",
20
24
  GRADE = "PM_GRADE",
@@ -1 +1 @@
1
- {"version":3,"file":"pmProgress.constants.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/shared/pmProgress.constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,MAAM,CAAA;AACnC,eAAO,MAAM,2BAA2B,MAAM,CAAA;AAC9C,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,iBAAiB;IAC3B,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,SAAS,aAAa;CACvB;AAED,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,oBAAY,kBAAkB;IAC5B,aAAa,qBAAqB;IAClC,KAAK,aAAa;IAClB,OAAO,eAAe;CACvB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,+PAsBzB,CAAA;AAED,eAAO,MAAM,oBAAoB;;;;;;GAM9B,CAAA;AAEH,eAAO,MAAM,oBAAoB,uFAsBhC,CAAA"}
1
+ {"version":3,"file":"pmProgress.constants.d.ts","sourceRoot":"","sources":["../../../../../../src/features/pmProgress/shared/pmProgress.constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,MAAM,CAAA;AACnC,eAAO,MAAM,2BAA2B,MAAM,CAAA;AAC9C,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,oBAAY,YAAY;IACtB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,iBAAiB;IAC3B,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,SAAS,aAAa;CACvB;AAED,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;CACtB;AAED,oBAAY,eAAe;IACzB,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;CACpC;AAED,oBAAY,kBAAkB;IAC5B,aAAa,qBAAqB;IAClC,KAAK,aAAa;IAClB,OAAO,eAAe;CACvB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,+PAsBzB,CAAA;AAED,eAAO,MAAM,oBAAoB;;;;;;GAM9B,CAAA;AAEH,eAAO,MAAM,oBAAoB,uFAsBhC,CAAA"}
@@ -77,6 +77,7 @@ export declare const LOCALIZATION_CONFIGS: {
77
77
  grade: string;
78
78
  gradeK: string;
79
79
  gradeOther: string;
80
+ loading: string;
80
81
  };
81
82
  };
82
83
  "en-GB": {
@@ -157,6 +158,7 @@ export declare const LOCALIZATION_CONFIGS: {
157
158
  grade: string;
158
159
  gradeK: string;
159
160
  gradeOther: string;
161
+ loading: string;
160
162
  };
161
163
  };
162
164
  "sv-SE": {
@@ -237,6 +239,7 @@ export declare const LOCALIZATION_CONFIGS: {
237
239
  grade: string;
238
240
  gradeK: string;
239
241
  gradeOther: string;
242
+ loading: string;
240
243
  };
241
244
  };
242
245
  "en-CA": {
@@ -317,6 +320,7 @@ export declare const LOCALIZATION_CONFIGS: {
317
320
  grade: string;
318
321
  gradeK: string;
319
322
  gradeOther: string;
323
+ loading: string;
320
324
  };
321
325
  };
322
326
  "en-SCT": {
@@ -397,6 +401,7 @@ export declare const LOCALIZATION_CONFIGS: {
397
401
  grade: string;
398
402
  gradeK: string;
399
403
  gradeOther: string;
404
+ loading: string;
400
405
  };
401
406
  };
402
407
  "de-DE": {
@@ -477,6 +482,7 @@ export declare const LOCALIZATION_CONFIGS: {
477
482
  grade: string;
478
483
  gradeK: string;
479
484
  gradeOther: string;
485
+ loading: string;
480
486
  };
481
487
  };
482
488
  };
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/constants.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOhC,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/constants.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOhC,CAAA"}
@@ -78,6 +78,7 @@ export declare const setLocalization: import("effector").EventCallable<{
78
78
  grade: string;
79
79
  gradeK: string;
80
80
  gradeOther: string;
81
+ loading: string;
81
82
  };
82
83
  } | ((config: typeof LOCALIZATION_CONFIGS) => Translations)>;
83
84
  export declare const $localization: import("effector").StoreWritable<{
@@ -158,6 +159,7 @@ export declare const $localization: import("effector").StoreWritable<{
158
159
  grade: string;
159
160
  gradeK: string;
160
161
  gradeOther: string;
162
+ loading: string;
161
163
  };
162
164
  }>;
163
165
  //# sourceMappingURL=model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAGlD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cACD,OAAO,oBAAoB,KAAK,YAAY,EACpE,CAAA;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMzB,CAAA"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/shared/translation/model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAGlD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cACD,OAAO,oBAAoB,KAAK,YAAY,EACpE,CAAA;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMzB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magmamath/students-features",
3
- "version": "1.2.1-rc.21",
3
+ "version": "1.2.1-rc.22",
4
4
  "description": "Magmamath features library",
5
5
  "source": "src/index.ts",
6
6
  "main": "src/index.ts",
@@ -18,10 +18,10 @@ import {
18
18
  import { SketchArrowRight } from '../../../../shared/icons/SketchArrowRight'
19
19
  import { SliceDiamondIcon } from '../../../../shared/icons/SliceDiamondIcon'
20
20
  import { useText } from '../../../../shared/translation'
21
- import { useStoreMap, useUnit } from 'effector-react'
21
+ import { useUnit, useStoreMap } from 'effector-react'
22
22
  import { usePmProgress } from '../../context/PmProgressContext'
23
23
  import { formatGradeName, isFluencyDomain } from '../../shared/pmProgress.helpers'
24
- import { SolvingFlow } from '../../shared/pmProgress.constants'
24
+ import { OpeningLoaderId, SolvingFlow } from '../../shared/pmProgress.constants'
25
25
 
26
26
  export const PmProgressHeader = () => {
27
27
  const t = useText()
@@ -37,6 +37,8 @@ export const PmProgressHeader = () => {
37
37
  })),
38
38
  )
39
39
 
40
+ const loaderOpeningId = useUnit(model.solving.$loaderOpeningId)
41
+
40
42
  const nextUp = useStoreMap(model.tree.$domains, (domains) =>
41
43
  domains.find((domain) => {
42
44
  const isFluency = isFluencyDomain(domain.title)
@@ -104,9 +106,14 @@ export const PmProgressHeader = () => {
104
106
  </View>
105
107
  <Button
106
108
  onPress={async () => {
109
+ model.solving.setLoaderOpeningId(OpeningLoaderId.START_BUTTON)
107
110
  const skill = await model.solving.start({ type: SolvingFlow.MAGMA })
108
- onStartPress?.(skill)
111
+ await onStartPress?.(skill)
112
+ model.solving.setLoaderOpeningId(null)
109
113
  }}
114
+ disabled={loaderOpeningId !== null}
115
+ isLoading={loaderOpeningId === OpeningLoaderId.START_BUTTON}
116
+ isActive={loaderOpeningId === OpeningLoaderId.START_BUTTON}
110
117
  icon={<PlayIcon size={16} color={COLORS.NEUTRAL_1} />}
111
118
  variant={ButtonVariant.PRIMARY}
112
119
  size={ButtonSize.LARGE}
@@ -17,6 +17,7 @@ export const Fluency = ({ data }: FluencyProps) => {
17
17
  const t = useText()
18
18
  const { model, onStandardPress } = usePmProgress()
19
19
  const expandedId = useUnit(model.highlight.$expandedId)
20
+ const loaderOpeningId = useUnit(model.solving.$loaderOpeningId)
20
21
 
21
22
  if (!data) return null
22
23
 
@@ -30,12 +31,15 @@ export const Fluency = ({ data }: FluencyProps) => {
30
31
  color={COLORS.PRIMARY_ORANGE}
31
32
  onPress={() => model.highlight.expand(CustomDomain.FLUENCY)}
32
33
  onItemPress={async (item) => {
34
+ model.solving.setLoaderOpeningId(item.id)
33
35
  const skill = await model.solving.start({
34
36
  type: SolvingFlow.STANDARD,
35
37
  standardId: item.standardId,
36
38
  })
37
- onStandardPress?.(skill)
39
+ await onStandardPress?.(skill)
40
+ model.solving.setLoaderOpeningId(null)
38
41
  }}
42
+ loadingItemId={loaderOpeningId}
39
43
  isFirst
40
44
  isLast
41
45
  isExpanded={expandedId === CustomDomain.FLUENCY}
@@ -48,6 +48,7 @@ type ListCardProps<T extends ListCardItem> = {
48
48
  expandedColor?: string
49
49
  isSkillsLeftHidden?: boolean
50
50
  isHighlighted?: boolean
51
+ loadingItemId?: string | null
51
52
  }
52
53
 
53
54
  export const ListCard = <T extends ListCardItem>({
@@ -68,6 +69,7 @@ export const ListCard = <T extends ListCardItem>({
68
69
  maxItems,
69
70
  expandedColor = COLORS.NEUTRAL_3,
70
71
  isSkillsLeftHidden = false,
72
+ loadingItemId = null,
71
73
  }: ListCardProps<T>) => {
72
74
  const t = useText()
73
75
  const [isHovered, setIsHovered] = useState(false)
@@ -135,6 +137,7 @@ export const ListCard = <T extends ListCardItem>({
135
137
  skillsLeft={skillsLeft}
136
138
  subtitle={item.subtitle}
137
139
  isFinished={skillsLeft === 0}
140
+ isLoading={loadingItemId === item.id}
138
141
  isSkillsLeftHidden={isSkillsLeftHidden}
139
142
  onPress={() => onItemPress?.(item)}
140
143
  />
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react'
2
- import { View, Pressable, StyleSheet } from 'react-native'
2
+ import { ActivityIndicator, View, Pressable, StyleSheet, Text } from 'react-native'
3
3
  import {
4
4
  ArrowRightIcon,
5
5
  CheckIcon,
@@ -24,6 +24,7 @@ export type ListItemProps = {
24
24
  subtitle: string
25
25
  skillsLeft: number
26
26
  isFinished?: boolean
27
+ isLoading?: boolean
27
28
  onPress?: () => void
28
29
  isSkillsLeftHidden?: boolean
29
30
  }
@@ -33,6 +34,7 @@ export const ListItem = ({
33
34
  subtitle,
34
35
  skillsLeft,
35
36
  isFinished = false,
37
+ isLoading = false,
36
38
  onPress,
37
39
  isSkillsLeftHidden = false,
38
40
  }: ListItemProps) => {
@@ -43,7 +45,13 @@ export const ListItem = ({
43
45
  return (
44
46
  <Pressable
45
47
  onPress={onPress}
46
- style={[styles.card, isFinished && styles.finished, isHovered && styles.hovered]}
48
+ disabled={isLoading}
49
+ style={[
50
+ styles.card,
51
+ isFinished && styles.finished,
52
+ isHovered && styles.hovered,
53
+ isLoading && styles.loading,
54
+ ]}
47
55
  onHoverIn={() => setIsHovered(true)}
48
56
  onHoverOut={() => setIsHovered(false)}
49
57
  >
@@ -63,18 +71,28 @@ export const ListItem = ({
63
71
  </Typography>
64
72
  </View>
65
73
  <View style={styles.trailing}>
66
- {isSkillsLeftVisible && (
67
- <Typography variant={HeadingVariants.H10} style={styles.skills}>
68
- {skillsLeft} {skillsLeft === 1 ? t('pmProgress.skillLeft') : t('pmProgress.skillsLeft')}
69
- </Typography>
74
+ {isLoading ? (
75
+ <View style={styles.loadingIndicator}>
76
+ <Text>{t('pmProgress.loading')} </Text>
77
+ <ActivityIndicator size="small" color={COLORS.NEUTRAL_7} />
78
+ </View>
79
+ ) : (
80
+ <>
81
+ {isSkillsLeftVisible && (
82
+ <Typography variant={HeadingVariants.H10} style={styles.skills}>
83
+ {skillsLeft}{' '}
84
+ {skillsLeft === 1 ? t('pmProgress.skillLeft') : t('pmProgress.skillsLeft')}
85
+ </Typography>
86
+ )}
87
+ <View style={styles.icon}>
88
+ {isFinished ? (
89
+ <CheckIcon color={FINISHED_ICON} />
90
+ ) : (
91
+ <ArrowRightIcon color={COLORS.NEUTRAL_9} />
92
+ )}
93
+ </View>
94
+ </>
70
95
  )}
71
- <View style={styles.icon}>
72
- {isFinished ? (
73
- <CheckIcon color={FINISHED_ICON} />
74
- ) : (
75
- <ArrowRightIcon color={COLORS.NEUTRAL_9} />
76
- )}
77
- </View>
78
96
  </View>
79
97
  </Pressable>
80
98
  )
@@ -133,4 +151,11 @@ const styles = StyleSheet.create({
133
151
  justifyContent: 'center',
134
152
  alignItems: 'center',
135
153
  },
154
+ loading: {
155
+ opacity: 0.5,
156
+ },
157
+ loadingIndicator: {
158
+ flexDirection: 'row',
159
+ gap: 8,
160
+ },
136
161
  })
@@ -14,6 +14,7 @@ export const PmDomainList = () => {
14
14
  const domains = useUnit(model.tree.$domains)
15
15
  const expandedId = useUnit(model.highlight.$expandedId)
16
16
  const hoveredId = useUnit(model.highlight.$hoveredId)
17
+ const loaderOpeningId = useUnit(model.solving.$loaderOpeningId)
17
18
 
18
19
  const fluency = domains.find(({ title }) => isFluencyDomain(title))
19
20
  const list = fluency ? domains.filter(({ title }) => !isFluencyDomain(title)) : domains
@@ -37,12 +38,15 @@ export const PmDomainList = () => {
37
38
  onHoverIn={() => model.highlight.hover(item.domainId)}
38
39
  onHoverOut={() => model.highlight.hover(null)}
39
40
  onItemPress={async (item) => {
41
+ model.solving.setLoaderOpeningId(item.id)
40
42
  const skill = await model.solving.start({
41
43
  type: SolvingFlow.STANDARD,
42
44
  standardId: item.standardId,
43
45
  })
44
- onStandardPress?.(skill)
46
+ await onStandardPress?.(skill)
47
+ model.solving.setLoaderOpeningId(null)
45
48
  }}
49
+ loadingItemId={loaderOpeningId}
46
50
  isLast={index === list.length - 1}
47
51
  isFirst={index === 0}
48
52
  isExpanded={expandedId === item.domainId}
@@ -11,14 +11,15 @@ import {
11
11
  SPACING,
12
12
  } from '@magmamath/react-native-ui'
13
13
  import { useText } from '../../../../shared/translation'
14
- import { useStoreMap, useUnit } from 'effector-react'
15
- import { CustomDomain, SolvingFlow } from '../../shared/pmProgress.constants'
14
+ import { useUnit, useStoreMap } from 'effector-react'
15
+ import { CustomDomain, OpeningLoaderId, SolvingFlow } from '../../shared/pmProgress.constants'
16
16
  import { usePmProgress } from '../../context/PmProgressContext'
17
17
 
18
18
  export const PmTeacherRecs = () => {
19
19
  const t = useText()
20
20
  const { model, onPracticePress, onTeacherRecommendationPress } = usePmProgress()
21
21
  const expandedId = useUnit(model.highlight.$expandedId)
22
+ const loaderOpeningId = useUnit(model.solving.$loaderOpeningId)
22
23
 
23
24
  // TODO: rework this, probably split and pass renderer to ListCard
24
25
  const recommendations = useStoreMap(model.recommendations.$teacher, ({ items }) =>
@@ -44,12 +45,15 @@ export const PmTeacherRecs = () => {
44
45
  expandedColor={COLORS.YELLOW_1}
45
46
  onPress={() => model.highlight.expand(CustomDomain.TEACHER)}
46
47
  onItemPress={async (item) => {
48
+ model.solving.setLoaderOpeningId(item.id)
47
49
  const skill = await model.solving.start({
48
50
  type: SolvingFlow.TEACHER,
49
51
  skillId: item.skillId,
50
52
  })
51
- onPracticePress?.(skill)
53
+ await onPracticePress?.(skill)
54
+ model.solving.setLoaderOpeningId(null)
52
55
  }}
56
+ loadingItemId={loaderOpeningId}
53
57
  isLast
54
58
  isFirst
55
59
  isSkillsLeftHidden
@@ -59,9 +63,13 @@ export const PmTeacherRecs = () => {
59
63
  rightContent={
60
64
  <Button
61
65
  onPress={async () => {
66
+ model.solving.setLoaderOpeningId(OpeningLoaderId.PRACTICE_BUTTON)
62
67
  const skill = await model.solving.start({ type: SolvingFlow.TEACHER })
63
- onTeacherRecommendationPress?.(skill)
68
+ await onTeacherRecommendationPress?.(skill)
69
+ model.solving.setLoaderOpeningId(null)
64
70
  }}
71
+ disabled={loaderOpeningId !== null}
72
+ isLoading={loaderOpeningId === OpeningLoaderId.PRACTICE_BUTTON}
65
73
  size={ButtonSize.SMALL}
66
74
  variant={ButtonVariant.SECONDARY}
67
75
  >