@magmamath/students-features 1.3.9-rc.1 → 1.3.9

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 (129) hide show
  1. package/.claude/settings.local.json +25 -0
  2. package/.editorconfig +15 -0
  3. package/.eslintignore +2 -0
  4. package/.eslintrc +22 -0
  5. package/.gitattributes +3 -0
  6. package/.github/actions/setup/action.yml +37 -0
  7. package/.github/workflows/ci.yml +73 -0
  8. package/.gitignore +84 -0
  9. package/.idea/.gitignore +8 -0
  10. package/.idea/codeStyles/Project.xml +62 -0
  11. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  12. package/.idea/copilot.data.migration.agent.xml +6 -0
  13. package/.idea/copilot.data.migration.ask.xml +6 -0
  14. package/.idea/copilot.data.migration.ask2agent.xml +6 -0
  15. package/.idea/copilot.data.migration.edit.xml +6 -0
  16. package/.idea/inspectionProfiles/Project_Default.xml +8 -0
  17. package/.idea/jsLinters/eslint.xml +6 -0
  18. package/.idea/modules.xml +8 -0
  19. package/.idea/prettier.xml +7 -0
  20. package/.idea/students-features.iml +12 -0
  21. package/.idea/vcs.xml +6 -0
  22. package/.idea/workspace.xml +675 -0
  23. package/.nvmrc +1 -0
  24. package/.prettierrc +11 -0
  25. package/.release-it.json +17 -0
  26. package/.watchmanconfig +1 -0
  27. package/.yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs +541 -0
  28. package/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs +28 -0
  29. package/.yarn/releases/yarn-3.6.1.cjs +874 -0
  30. package/babel.config.js +5 -0
  31. package/bob.config.js +25 -0
  32. package/dist/commonjs/features/chatbot/helpers.js +5 -1
  33. package/dist/commonjs/features/chatbot/helpers.js.map +1 -1
  34. package/dist/commonjs/features/chatbot/model/ChatBotModel.js +1 -0
  35. package/dist/commonjs/features/chatbot/model/ChatBotModel.js.map +1 -1
  36. package/dist/commonjs/features/chatbot/types/model.types.js.map +1 -1
  37. package/dist/commonjs/index.js +0 -12
  38. package/dist/commonjs/index.js.map +1 -1
  39. package/dist/module/features/chatbot/helpers.js +5 -1
  40. package/dist/module/features/chatbot/helpers.js.map +1 -1
  41. package/dist/module/features/chatbot/model/ChatBotModel.js +1 -0
  42. package/dist/module/features/chatbot/model/ChatBotModel.js.map +1 -1
  43. package/dist/module/features/chatbot/types/model.types.js.map +1 -1
  44. package/dist/module/index.js +0 -1
  45. package/dist/module/index.js.map +1 -1
  46. package/dist/typescript/commonjs/features/chatbot/helpers.d.ts.map +1 -1
  47. package/dist/typescript/commonjs/features/chatbot/model/ChatBotModel.d.ts.map +1 -1
  48. package/dist/typescript/commonjs/features/chatbot/types/api.types.d.ts +2 -0
  49. package/dist/typescript/commonjs/features/chatbot/types/api.types.d.ts.map +1 -1
  50. package/dist/typescript/commonjs/features/chatbot/types/model.types.d.ts +1 -0
  51. package/dist/typescript/commonjs/features/chatbot/types/model.types.d.ts.map +1 -1
  52. package/dist/typescript/commonjs/index.d.ts +0 -1
  53. package/dist/typescript/commonjs/index.d.ts.map +1 -1
  54. package/dist/typescript/module/features/chatbot/helpers.d.ts.map +1 -1
  55. package/dist/typescript/module/features/chatbot/model/ChatBotModel.d.ts.map +1 -1
  56. package/dist/typescript/module/features/chatbot/types/api.types.d.ts +2 -0
  57. package/dist/typescript/module/features/chatbot/types/api.types.d.ts.map +1 -1
  58. package/dist/typescript/module/features/chatbot/types/model.types.d.ts +1 -0
  59. package/dist/typescript/module/features/chatbot/types/model.types.d.ts.map +1 -1
  60. package/dist/typescript/module/index.d.ts +0 -1
  61. package/dist/typescript/module/index.d.ts.map +1 -1
  62. package/example/.expo/README.md +8 -0
  63. package/example/.expo/devices.json +3 -0
  64. package/example/.expo/web/cache/production/images/favicon/favicon-24272cdaeff82cc5facdaccd982a6f05b60c4504704bbf94c19a6388659880bb-contain-transparent/favicon-48.png +0 -0
  65. package/example/app.json +30 -0
  66. package/example/assets/adaptive-icon.png +0 -0
  67. package/example/assets/favicon.png +0 -0
  68. package/example/assets/icon.png +0 -0
  69. package/example/assets/splash-icon.png +0 -0
  70. package/example/babel.config.js +28 -0
  71. package/example/index.js +8 -0
  72. package/example/metro.config.js +18 -0
  73. package/example/package.json +25 -0
  74. package/example/src/App.tsx +8 -0
  75. package/example/tsconfig.json +6 -0
  76. package/package.json +1 -1
  77. package/src/features/chatbot/helpers.ts +2 -0
  78. package/src/features/chatbot/model/ChatBotModel.ts +1 -0
  79. package/src/features/chatbot/types/api.types.ts +2 -0
  80. package/src/features/chatbot/types/model.types.ts +1 -0
  81. package/src/index.ts +0 -1
  82. package/tsconfig.build.json +4 -0
  83. package/tsconfig.json +34 -0
  84. package/yarn.lock +10984 -0
  85. package/dist/commonjs/features/featureUsage/featureUsage.constants.js +0 -12
  86. package/dist/commonjs/features/featureUsage/featureUsage.constants.js.map +0 -1
  87. package/dist/commonjs/features/featureUsage/featureUsage.types.js +0 -6
  88. package/dist/commonjs/features/featureUsage/featureUsage.types.js.map +0 -1
  89. package/dist/commonjs/features/featureUsage/index.js +0 -27
  90. package/dist/commonjs/features/featureUsage/index.js.map +0 -1
  91. package/dist/commonjs/features/featureUsage/model/FeatureUsageModel.js +0 -24
  92. package/dist/commonjs/features/featureUsage/model/FeatureUsageModel.js.map +0 -1
  93. package/dist/commonjs/features/featureUsage/model/UsageTracker.js +0 -17
  94. package/dist/commonjs/features/featureUsage/model/UsageTracker.js.map +0 -1
  95. package/dist/module/features/featureUsage/featureUsage.constants.js +0 -8
  96. package/dist/module/features/featureUsage/featureUsage.constants.js.map +0 -1
  97. package/dist/module/features/featureUsage/featureUsage.types.js +0 -4
  98. package/dist/module/features/featureUsage/featureUsage.types.js.map +0 -1
  99. package/dist/module/features/featureUsage/index.js +0 -6
  100. package/dist/module/features/featureUsage/index.js.map +0 -1
  101. package/dist/module/features/featureUsage/model/FeatureUsageModel.js +0 -19
  102. package/dist/module/features/featureUsage/model/FeatureUsageModel.js.map +0 -1
  103. package/dist/module/features/featureUsage/model/UsageTracker.js +0 -12
  104. package/dist/module/features/featureUsage/model/UsageTracker.js.map +0 -1
  105. package/dist/typescript/commonjs/features/featureUsage/featureUsage.constants.d.ts +0 -5
  106. package/dist/typescript/commonjs/features/featureUsage/featureUsage.constants.d.ts.map +0 -1
  107. package/dist/typescript/commonjs/features/featureUsage/featureUsage.types.d.ts +0 -4
  108. package/dist/typescript/commonjs/features/featureUsage/featureUsage.types.d.ts.map +0 -1
  109. package/dist/typescript/commonjs/features/featureUsage/index.d.ts +0 -5
  110. package/dist/typescript/commonjs/features/featureUsage/index.d.ts.map +0 -1
  111. package/dist/typescript/commonjs/features/featureUsage/model/FeatureUsageModel.d.ts +0 -9
  112. package/dist/typescript/commonjs/features/featureUsage/model/FeatureUsageModel.d.ts.map +0 -1
  113. package/dist/typescript/commonjs/features/featureUsage/model/UsageTracker.d.ts +0 -9
  114. package/dist/typescript/commonjs/features/featureUsage/model/UsageTracker.d.ts.map +0 -1
  115. package/dist/typescript/module/features/featureUsage/featureUsage.constants.d.ts +0 -5
  116. package/dist/typescript/module/features/featureUsage/featureUsage.constants.d.ts.map +0 -1
  117. package/dist/typescript/module/features/featureUsage/featureUsage.types.d.ts +0 -4
  118. package/dist/typescript/module/features/featureUsage/featureUsage.types.d.ts.map +0 -1
  119. package/dist/typescript/module/features/featureUsage/index.d.ts +0 -5
  120. package/dist/typescript/module/features/featureUsage/index.d.ts.map +0 -1
  121. package/dist/typescript/module/features/featureUsage/model/FeatureUsageModel.d.ts +0 -9
  122. package/dist/typescript/module/features/featureUsage/model/FeatureUsageModel.d.ts.map +0 -1
  123. package/dist/typescript/module/features/featureUsage/model/UsageTracker.d.ts +0 -9
  124. package/dist/typescript/module/features/featureUsage/model/UsageTracker.d.ts.map +0 -1
  125. package/src/features/featureUsage/featureUsage.constants.ts +0 -4
  126. package/src/features/featureUsage/featureUsage.types.ts +0 -4
  127. package/src/features/featureUsage/index.ts +0 -4
  128. package/src/features/featureUsage/model/FeatureUsageModel.ts +0 -17
  129. package/src/features/featureUsage/model/UsageTracker.ts +0 -16
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.UsageTrackScope = void 0;
7
- let UsageTrackScope = exports.UsageTrackScope = /*#__PURE__*/function (UsageTrackScope) {
8
- UsageTrackScope["PROBLEM"] = "PROBLEM";
9
- UsageTrackScope["ASSIGNMENT"] = "ASSIGNMENT";
10
- return UsageTrackScope;
11
- }({});
12
- //# sourceMappingURL=featureUsage.constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["UsageTrackScope","exports"],"sourceRoot":"../../../../src","sources":["features/featureUsage/featureUsage.constants.ts"],"mappings":";;;;;;IAAYA,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA","ignoreList":[]}
@@ -1,6 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- //# sourceMappingURL=featureUsage.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["features/featureUsage/featureUsage.types.ts"],"mappings":"","ignoreList":[]}
@@ -1,27 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "FeatureUsageModel", {
7
- enumerable: true,
8
- get: function () {
9
- return _FeatureUsageModel.FeatureUsageModel;
10
- }
11
- });
12
- Object.defineProperty(exports, "UsageTrackScope", {
13
- enumerable: true,
14
- get: function () {
15
- return _featureUsageConstants.UsageTrackScope;
16
- }
17
- });
18
- Object.defineProperty(exports, "UsageTracker", {
19
- enumerable: true,
20
- get: function () {
21
- return _UsageTracker.UsageTracker;
22
- }
23
- });
24
- var _featureUsageConstants = require("./featureUsage.constants.js");
25
- var _UsageTracker = require("./model/UsageTracker.js");
26
- var _FeatureUsageModel = require("./model/FeatureUsageModel.js");
27
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_featureUsageConstants","require","_UsageTracker","_FeatureUsageModel"],"sourceRoot":"../../../../src","sources":["features/featureUsage/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,kBAAA,GAAAF,OAAA","ignoreList":[]}
@@ -1,24 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.FeatureUsageModel = void 0;
7
- var _effector = require("effector");
8
- var _UsageTracker = require("./UsageTracker.js");
9
- var _featureUsageConstants = require("../featureUsage.constants.js");
10
- class FeatureUsageModel {
11
- tts = new _UsageTracker.UsageTracker(_featureUsageConstants.UsageTrackScope.PROBLEM);
12
- translation = new _UsageTracker.UsageTracker(_featureUsageConstants.UsageTrackScope.PROBLEM);
13
- features = [this.tts, this.translation];
14
- setupScopeResets(scopes) {
15
- for (const tracker of this.features) {
16
- (0, _effector.sample)({
17
- clock: scopes[tracker.scope],
18
- target: tracker.reset
19
- });
20
- }
21
- }
22
- }
23
- exports.FeatureUsageModel = FeatureUsageModel;
24
- //# sourceMappingURL=FeatureUsageModel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_effector","require","_UsageTracker","_featureUsageConstants","FeatureUsageModel","tts","UsageTracker","UsageTrackScope","PROBLEM","translation","features","setupScopeResets","scopes","tracker","sample","clock","scope","target","reset","exports"],"sourceRoot":"../../../../../src","sources":["features/featureUsage/model/FeatureUsageModel.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AAGO,MAAMG,iBAAiB,CAAC;EACbC,GAAG,GAAG,IAAIC,0BAAY,CAACC,sCAAe,CAACC,OAAO,CAAC;EAC/CC,WAAW,GAAG,IAAIH,0BAAY,CAACC,sCAAe,CAACC,OAAO,CAAC;EAEtDE,QAAQ,GAAG,CAAC,IAAI,CAACL,GAAG,EAAE,IAAI,CAACI,WAAW,CAAC;EAEjDE,gBAAgBA,CAACC,MAA8B,EAAE;IACtD,KAAK,MAAMC,OAAO,IAAI,IAAI,CAACH,QAAQ,EAAE;MACnC,IAAAI,gBAAM,EAAC;QAAEC,KAAK,EAAEH,MAAM,CAACC,OAAO,CAACG,KAAK,CAAC;QAAEC,MAAM,EAAEJ,OAAO,CAACK;MAAM,CAAC,CAAC;IACjE;EACF;AACF;AAACC,OAAA,CAAAf,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.UsageTracker = void 0;
7
- var _effector = require("effector");
8
- class UsageTracker {
9
- reset = (0, _effector.createEvent)();
10
- track = (0, _effector.createEvent)();
11
- $isUsed = (0, _effector.createStore)(false).on(this.track, () => true).reset(this.reset);
12
- constructor(scope) {
13
- this.scope = scope;
14
- }
15
- }
16
- exports.UsageTracker = UsageTracker;
17
- //# sourceMappingURL=UsageTracker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_effector","require","UsageTracker","reset","createEvent","track","$isUsed","createStore","on","constructor","scope","exports"],"sourceRoot":"../../../../../src","sources":["features/featureUsage/model/UsageTracker.ts"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAGO,MAAMC,YAAY,CAAC;EACRC,KAAK,GAAG,IAAAC,qBAAW,EAAC,CAAC;EACrBC,KAAK,GAAG,IAAAD,qBAAW,EAAC,CAAC;EAGrBE,OAAO,GAAG,IAAAC,qBAAW,EAAC,KAAK,CAAC,CACzCC,EAAE,CAAC,IAAI,CAACH,KAAK,EAAE,MAAM,IAAI,CAAC,CAC1BF,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAEpBM,WAAWA,CAACC,KAAsB,EAAE;IAClC,IAAI,CAACA,KAAK,GAAGA,KAAK;EACpB;AACF;AAACC,OAAA,CAAAT,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -1,8 +0,0 @@
1
- "use strict";
2
-
3
- export let UsageTrackScope = /*#__PURE__*/function (UsageTrackScope) {
4
- UsageTrackScope["PROBLEM"] = "PROBLEM";
5
- UsageTrackScope["ASSIGNMENT"] = "ASSIGNMENT";
6
- return UsageTrackScope;
7
- }({});
8
- //# sourceMappingURL=featureUsage.constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["UsageTrackScope"],"sourceRoot":"../../../../src","sources":["features/featureUsage/featureUsage.constants.ts"],"mappings":";;AAAA,WAAYA,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- "use strict";
2
-
3
- export {};
4
- //# sourceMappingURL=featureUsage.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["features/featureUsage/featureUsage.types.ts"],"mappings":"","ignoreList":[]}
@@ -1,6 +0,0 @@
1
- "use strict";
2
-
3
- export { UsageTrackScope } from "./featureUsage.constants.js";
4
- export { UsageTracker } from "./model/UsageTracker.js";
5
- export { FeatureUsageModel } from "./model/FeatureUsageModel.js";
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["UsageTrackScope","UsageTracker","FeatureUsageModel"],"sourceRoot":"../../../../src","sources":["features/featureUsage/index.ts"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,6BAA0B;AAC1D,SAASC,YAAY,QAAQ,yBAAsB;AACnD,SAASC,iBAAiB,QAAQ,8BAA2B","ignoreList":[]}
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- import { sample } from 'effector';
4
- import { UsageTracker } from "./UsageTracker.js";
5
- import { UsageTrackScope } from "../featureUsage.constants.js";
6
- export class FeatureUsageModel {
7
- tts = new UsageTracker(UsageTrackScope.PROBLEM);
8
- translation = new UsageTracker(UsageTrackScope.PROBLEM);
9
- features = [this.tts, this.translation];
10
- setupScopeResets(scopes) {
11
- for (const tracker of this.features) {
12
- sample({
13
- clock: scopes[tracker.scope],
14
- target: tracker.reset
15
- });
16
- }
17
- }
18
- }
19
- //# sourceMappingURL=FeatureUsageModel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sample","UsageTracker","UsageTrackScope","FeatureUsageModel","tts","PROBLEM","translation","features","setupScopeResets","scopes","tracker","clock","scope","target","reset"],"sourceRoot":"../../../../../src","sources":["features/featureUsage/model/FeatureUsageModel.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,UAAU;AACjC,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,eAAe,QAAQ,8BAA2B;AAG3D,OAAO,MAAMC,iBAAiB,CAAC;EACbC,GAAG,GAAG,IAAIH,YAAY,CAACC,eAAe,CAACG,OAAO,CAAC;EAC/CC,WAAW,GAAG,IAAIL,YAAY,CAACC,eAAe,CAACG,OAAO,CAAC;EAEtDE,QAAQ,GAAG,CAAC,IAAI,CAACH,GAAG,EAAE,IAAI,CAACE,WAAW,CAAC;EAEjDE,gBAAgBA,CAACC,MAA8B,EAAE;IACtD,KAAK,MAAMC,OAAO,IAAI,IAAI,CAACH,QAAQ,EAAE;MACnCP,MAAM,CAAC;QAAEW,KAAK,EAAEF,MAAM,CAACC,OAAO,CAACE,KAAK,CAAC;QAAEC,MAAM,EAAEH,OAAO,CAACI;MAAM,CAAC,CAAC;IACjE;EACF;AACF","ignoreList":[]}
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- import { createEvent, createStore } from 'effector';
4
- export class UsageTracker {
5
- reset = createEvent();
6
- track = createEvent();
7
- $isUsed = createStore(false).on(this.track, () => true).reset(this.reset);
8
- constructor(scope) {
9
- this.scope = scope;
10
- }
11
- }
12
- //# sourceMappingURL=UsageTracker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["createEvent","createStore","UsageTracker","reset","track","$isUsed","on","constructor","scope"],"sourceRoot":"../../../../../src","sources":["features/featureUsage/model/UsageTracker.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,WAAW,QAAQ,UAAU;AAGnD,OAAO,MAAMC,YAAY,CAAC;EACRC,KAAK,GAAGH,WAAW,CAAC,CAAC;EACrBI,KAAK,GAAGJ,WAAW,CAAC,CAAC;EAGrBK,OAAO,GAAGJ,WAAW,CAAC,KAAK,CAAC,CACzCK,EAAE,CAAC,IAAI,CAACF,KAAK,EAAE,MAAM,IAAI,CAAC,CAC1BD,KAAK,CAAC,IAAI,CAACA,KAAK,CAAC;EAEpBI,WAAWA,CAACC,KAAsB,EAAE;IAClC,IAAI,CAACA,KAAK,GAAGA,KAAK;EACpB;AACF","ignoreList":[]}
@@ -1,5 +0,0 @@
1
- export declare enum UsageTrackScope {
2
- PROBLEM = "PROBLEM",
3
- ASSIGNMENT = "ASSIGNMENT"
4
- }
5
- //# sourceMappingURL=featureUsage.constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"featureUsage.constants.d.ts","sourceRoot":"","sources":["../../../../../src/features/featureUsage/featureUsage.constants.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B"}
@@ -1,4 +0,0 @@
1
- import type { UsageTrackScope } from '@magmamath/students-features';
2
- import type { Unit } from 'effector';
3
- export type FeatureUsageScopeProps = Record<UsageTrackScope, Unit<any>>;
4
- //# sourceMappingURL=featureUsage.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"featureUsage.types.d.ts","sourceRoot":"","sources":["../../../../../src/features/featureUsage/featureUsage.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- export { UsageTrackScope } from './featureUsage.constants';
2
- export { UsageTracker } from './model/UsageTracker';
3
- export { FeatureUsageModel } from './model/FeatureUsageModel';
4
- export type { FeatureUsageScopeProps } from './featureUsage.types';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/featureUsage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA"}
@@ -1,9 +0,0 @@
1
- import { UsageTracker } from './UsageTracker';
2
- import { FeatureUsageScopeProps } from '../featureUsage.types';
3
- export declare class FeatureUsageModel {
4
- readonly tts: UsageTracker;
5
- readonly translation: UsageTracker;
6
- private readonly features;
7
- setupScopeResets(scopes: FeatureUsageScopeProps): void;
8
- }
9
- //# sourceMappingURL=FeatureUsageModel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FeatureUsageModel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/featureUsage/model/FeatureUsageModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAE9D,qBAAa,iBAAiB;IAC5B,SAAgB,GAAG,eAA4C;IAC/D,SAAgB,WAAW,eAA4C;IAEvE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IAEjD,gBAAgB,CAAC,MAAM,EAAE,sBAAsB;CAKvD"}
@@ -1,9 +0,0 @@
1
- import { UsageTrackScope } from '../featureUsage.constants';
2
- export declare class UsageTracker {
3
- readonly reset: import("effector").EventCallable<void>;
4
- readonly track: import("effector").EventCallable<void>;
5
- readonly scope: UsageTrackScope;
6
- readonly $isUsed: import("effector").StoreWritable<boolean>;
7
- constructor(scope: UsageTrackScope);
8
- }
9
- //# sourceMappingURL=UsageTracker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UsageTracker.d.ts","sourceRoot":"","sources":["../../../../../../src/features/featureUsage/model/UsageTracker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,qBAAa,YAAY;IACvB,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,KAAK,EAAE,eAAe,CAAA;IAEtC,SAAgB,OAAO,4CAEH;gBAER,KAAK,EAAE,eAAe;CAGnC"}
@@ -1,5 +0,0 @@
1
- export declare enum UsageTrackScope {
2
- PROBLEM = "PROBLEM",
3
- ASSIGNMENT = "ASSIGNMENT"
4
- }
5
- //# sourceMappingURL=featureUsage.constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"featureUsage.constants.d.ts","sourceRoot":"","sources":["../../../../../src/features/featureUsage/featureUsage.constants.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B"}
@@ -1,4 +0,0 @@
1
- import type { UsageTrackScope } from '@magmamath/students-features';
2
- import type { Unit } from 'effector';
3
- export type FeatureUsageScopeProps = Record<UsageTrackScope, Unit<any>>;
4
- //# sourceMappingURL=featureUsage.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"featureUsage.types.d.ts","sourceRoot":"","sources":["../../../../../src/features/featureUsage/featureUsage.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- export { UsageTrackScope } from './featureUsage.constants';
2
- export { UsageTracker } from './model/UsageTracker';
3
- export { FeatureUsageModel } from './model/FeatureUsageModel';
4
- export type { FeatureUsageScopeProps } from './featureUsage.types';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/featureUsage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA"}
@@ -1,9 +0,0 @@
1
- import { UsageTracker } from './UsageTracker';
2
- import { FeatureUsageScopeProps } from '../featureUsage.types';
3
- export declare class FeatureUsageModel {
4
- readonly tts: UsageTracker;
5
- readonly translation: UsageTracker;
6
- private readonly features;
7
- setupScopeResets(scopes: FeatureUsageScopeProps): void;
8
- }
9
- //# sourceMappingURL=FeatureUsageModel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FeatureUsageModel.d.ts","sourceRoot":"","sources":["../../../../../../src/features/featureUsage/model/FeatureUsageModel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAE9D,qBAAa,iBAAiB;IAC5B,SAAgB,GAAG,eAA4C;IAC/D,SAAgB,WAAW,eAA4C;IAEvE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IAEjD,gBAAgB,CAAC,MAAM,EAAE,sBAAsB;CAKvD"}
@@ -1,9 +0,0 @@
1
- import { UsageTrackScope } from '../featureUsage.constants';
2
- export declare class UsageTracker {
3
- readonly reset: import("effector").EventCallable<void>;
4
- readonly track: import("effector").EventCallable<void>;
5
- readonly scope: UsageTrackScope;
6
- readonly $isUsed: import("effector").StoreWritable<boolean>;
7
- constructor(scope: UsageTrackScope);
8
- }
9
- //# sourceMappingURL=UsageTracker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UsageTracker.d.ts","sourceRoot":"","sources":["../../../../../../src/features/featureUsage/model/UsageTracker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAE3D,qBAAa,YAAY;IACvB,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,KAAK,yCAAgB;IACrC,SAAgB,KAAK,EAAE,eAAe,CAAA;IAEtC,SAAgB,OAAO,4CAEH;gBAER,KAAK,EAAE,eAAe;CAGnC"}
@@ -1,4 +0,0 @@
1
- export enum UsageTrackScope {
2
- PROBLEM = 'PROBLEM',
3
- ASSIGNMENT = 'ASSIGNMENT',
4
- }
@@ -1,4 +0,0 @@
1
- import type { UsageTrackScope } from '@magmamath/students-features'
2
- import type { Unit } from 'effector'
3
-
4
- export type FeatureUsageScopeProps = Record<UsageTrackScope, Unit<any>>
@@ -1,4 +0,0 @@
1
- export { UsageTrackScope } from './featureUsage.constants'
2
- export { UsageTracker } from './model/UsageTracker'
3
- export { FeatureUsageModel } from './model/FeatureUsageModel'
4
- export type { FeatureUsageScopeProps } from './featureUsage.types'
@@ -1,17 +0,0 @@
1
- import { sample } from 'effector'
2
- import { UsageTracker } from './UsageTracker'
3
- import { UsageTrackScope } from '../featureUsage.constants'
4
- import { FeatureUsageScopeProps } from '../featureUsage.types'
5
-
6
- export class FeatureUsageModel {
7
- public readonly tts = new UsageTracker(UsageTrackScope.PROBLEM)
8
- public readonly translation = new UsageTracker(UsageTrackScope.PROBLEM)
9
-
10
- private readonly features = [this.tts, this.translation]
11
-
12
- public setupScopeResets(scopes: FeatureUsageScopeProps) {
13
- for (const tracker of this.features) {
14
- sample({ clock: scopes[tracker.scope], target: tracker.reset })
15
- }
16
- }
17
- }
@@ -1,16 +0,0 @@
1
- import { createEvent, createStore } from 'effector'
2
- import { UsageTrackScope } from '../featureUsage.constants'
3
-
4
- export class UsageTracker {
5
- public readonly reset = createEvent()
6
- public readonly track = createEvent()
7
- public readonly scope: UsageTrackScope
8
-
9
- public readonly $isUsed = createStore(false)
10
- .on(this.track, () => true)
11
- .reset(this.reset)
12
-
13
- constructor(scope: UsageTrackScope) {
14
- this.scope = scope
15
- }
16
- }