@lssm/example.learning-journey-studio-onboarding 0.0.0-canary-20251217054315 → 0.0.0-canary-20251217060433

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.
@@ -0,0 +1,29 @@
1
+
2
+ $ tsdown
3
+ ℹ tsdown v0.17.4 powered by rolldown v1.0.0-beta.53
4
+ ℹ config file: /Users/tboutron/Documents/clients/lssm/monorepo-lssm/packages/contractspec/packages/examples/learning-journey-studio-onboarding/tsdown.config.js (unrun)
5
+ ℹ entry: src/example.ts, src/index.ts, src/learning-journey-studio-onboarding.feature.ts, src/track.ts, src/contracts/index.ts, src/docs/index.ts, src/docs/studio-onboarding.docblock.ts, src/handlers/demo.handlers.ts, src/presentations/index.ts
6
+ ℹ target: esnext
7
+ ℹ tsconfig: tsconfig.json
8
+ ℹ Build start
9
+ ℹ Cleaning 22 files
10
+ ℹ dist/contracts/index.js 2.88 kB │ gzip: 0.91 kB
11
+ ℹ dist/track.js 1.91 kB │ gzip: 0.80 kB
12
+ ℹ dist/docs/studio-onboarding.docblock.js 1.47 kB │ gzip: 0.76 kB
13
+ ℹ dist/index.js 1.14 kB │ gzip: 0.36 kB
14
+ ℹ dist/learning-journey-studio-onboarding.feature.js 1.04 kB │ gzip: 0.40 kB
15
+ ℹ dist/presentations/index.js 0.80 kB │ gzip: 0.37 kB
16
+ ℹ dist/example.js 0.60 kB │ gzip: 0.37 kB
17
+ ℹ dist/handlers/demo.handlers.js 0.44 kB │ gzip: 0.28 kB
18
+ ℹ dist/docs/index.js 0.04 kB │ gzip: 0.06 kB
19
+ ℹ dist/contracts/index.d.ts 8.14 kB │ gzip: 0.89 kB
20
+ ℹ dist/index.d.ts 1.07 kB │ gzip: 0.30 kB
21
+ ℹ dist/example.d.ts 1.04 kB │ gzip: 0.44 kB
22
+ ℹ dist/handlers/demo.handlers.d.ts 0.92 kB │ gzip: 0.41 kB
23
+ ℹ dist/presentations/index.d.ts 0.45 kB │ gzip: 0.19 kB
24
+ ℹ dist/learning-journey-studio-onboarding.feature.d.ts 0.40 kB │ gzip: 0.24 kB
25
+ ℹ dist/track.d.ts 0.31 kB │ gzip: 0.18 kB
26
+ ℹ dist/docs/index.d.ts 0.01 kB │ gzip: 0.03 kB
27
+ ℹ dist/docs/studio-onboarding.docblock.d.ts 0.01 kB │ gzip: 0.03 kB
28
+ ℹ 18 files, total: 22.69 kB
29
+ ✔ Build complete in 8045ms
package/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @lssm/example.learning-journey-studio-onboarding
2
2
 
3
- ## 0.0.0-canary-20251217054315
3
+ ## 0.0.0-canary-20251217060433
4
4
 
5
5
  ### Minor Changes
6
6
 
@@ -9,32 +9,6 @@
9
9
  ### Patch Changes
10
10
 
11
11
  - Updated dependencies [66a5dfd]
12
- - @lssm/lib.contracts@0.0.0-canary-20251217054315
13
- - @lssm/lib.schema@0.0.0-canary-20251217054315
14
- - @lssm/module.learning-journey@0.0.0-canary-20251217054315
15
-
16
- ## 1.42.0
17
-
18
- ### Minor Changes
19
-
20
- - 66a5dfd: initial release
21
-
22
- ### Patch Changes
23
-
24
- - Updated dependencies [66a5dfd]
25
- - @lssm/lib.contracts@1.42.0
26
- - @lssm/lib.schema@1.42.0
27
- - @lssm/module.learning-journey@1.42.0
28
-
29
- ## 0.0.0-canary-20251217053014
30
-
31
- ### Minor Changes
32
-
33
- - 66a5dfd: initial release
34
-
35
- ### Patch Changes
36
-
37
- - Updated dependencies [66a5dfd]
38
- - @lssm/lib.contracts@0.0.0-canary-20251217053014
39
- - @lssm/lib.schema@0.0.0-canary-20251217053014
40
- - @lssm/module.learning-journey@0.0.0-canary-20251217053014
12
+ - @lssm/lib.contracts@0.0.0-canary-20251217060433
13
+ - @lssm/lib.schema@0.0.0-canary-20251217060433
14
+ - @lssm/module.learning-journey@0.0.0-canary-20251217060433
@@ -0,0 +1,270 @@
1
+ import * as _lssm_lib_schema0 from "@lssm/lib.schema";
2
+ import * as _lssm_lib_contracts0 from "@lssm/lib.contracts";
3
+ import * as _lssm_module_learning_journey_track_spec0 from "@lssm/module.learning-journey/track-spec";
4
+
5
+ //#region src/contracts/index.d.ts
6
+ declare const StudioOnboardingTrackModel: _lssm_lib_schema0.SchemaModel<{
7
+ id: {
8
+ type: _lssm_lib_schema0.FieldType<string, string>;
9
+ isOptional: false;
10
+ };
11
+ name: {
12
+ type: _lssm_lib_schema0.FieldType<string, string>;
13
+ isOptional: false;
14
+ };
15
+ description: {
16
+ type: _lssm_lib_schema0.FieldType<string, string>;
17
+ isOptional: true;
18
+ };
19
+ totalXp: {
20
+ type: _lssm_lib_schema0.FieldType<number, number>;
21
+ isOptional: true;
22
+ };
23
+ completionXpBonus: {
24
+ type: _lssm_lib_schema0.FieldType<number, number>;
25
+ isOptional: true;
26
+ };
27
+ completionBadgeKey: {
28
+ type: _lssm_lib_schema0.FieldType<string, string>;
29
+ isOptional: true;
30
+ };
31
+ streakHoursWindow: {
32
+ type: _lssm_lib_schema0.FieldType<number, number>;
33
+ isOptional: true;
34
+ };
35
+ streakBonusXp: {
36
+ type: _lssm_lib_schema0.FieldType<number, number>;
37
+ isOptional: true;
38
+ };
39
+ steps: {
40
+ type: _lssm_lib_schema0.SchemaModel<{
41
+ id: {
42
+ type: _lssm_lib_schema0.FieldType<string, string>;
43
+ isOptional: false;
44
+ };
45
+ title: {
46
+ type: _lssm_lib_schema0.FieldType<string, string>;
47
+ isOptional: false;
48
+ };
49
+ description: {
50
+ type: _lssm_lib_schema0.FieldType<string, string>;
51
+ isOptional: true;
52
+ };
53
+ completionEvent: {
54
+ type: _lssm_lib_schema0.FieldType<string, string>;
55
+ isOptional: false;
56
+ };
57
+ sourceModule: {
58
+ type: _lssm_lib_schema0.FieldType<string, string>;
59
+ isOptional: true;
60
+ };
61
+ xpReward: {
62
+ type: _lssm_lib_schema0.FieldType<number, number>;
63
+ isOptional: true;
64
+ };
65
+ order: {
66
+ type: _lssm_lib_schema0.FieldType<number, number>;
67
+ isOptional: true;
68
+ };
69
+ }>;
70
+ isArray: true;
71
+ isOptional: false;
72
+ };
73
+ }>;
74
+ declare const GetStudioOnboardingTrack: _lssm_lib_contracts0.ContractSpec<_lssm_lib_schema0.SchemaModel<{}>, _lssm_lib_schema0.SchemaModel<{
75
+ track: {
76
+ type: _lssm_lib_schema0.SchemaModel<{
77
+ id: {
78
+ type: _lssm_lib_schema0.FieldType<string, string>;
79
+ isOptional: false;
80
+ };
81
+ name: {
82
+ type: _lssm_lib_schema0.FieldType<string, string>;
83
+ isOptional: false;
84
+ };
85
+ description: {
86
+ type: _lssm_lib_schema0.FieldType<string, string>;
87
+ isOptional: true;
88
+ };
89
+ totalXp: {
90
+ type: _lssm_lib_schema0.FieldType<number, number>;
91
+ isOptional: true;
92
+ };
93
+ completionXpBonus: {
94
+ type: _lssm_lib_schema0.FieldType<number, number>;
95
+ isOptional: true;
96
+ };
97
+ completionBadgeKey: {
98
+ type: _lssm_lib_schema0.FieldType<string, string>;
99
+ isOptional: true;
100
+ };
101
+ streakHoursWindow: {
102
+ type: _lssm_lib_schema0.FieldType<number, number>;
103
+ isOptional: true;
104
+ };
105
+ streakBonusXp: {
106
+ type: _lssm_lib_schema0.FieldType<number, number>;
107
+ isOptional: true;
108
+ };
109
+ steps: {
110
+ type: _lssm_lib_schema0.SchemaModel<{
111
+ id: {
112
+ type: _lssm_lib_schema0.FieldType<string, string>;
113
+ isOptional: false;
114
+ };
115
+ title: {
116
+ type: _lssm_lib_schema0.FieldType<string, string>;
117
+ isOptional: false;
118
+ };
119
+ description: {
120
+ type: _lssm_lib_schema0.FieldType<string, string>;
121
+ isOptional: true;
122
+ };
123
+ completionEvent: {
124
+ type: _lssm_lib_schema0.FieldType<string, string>;
125
+ isOptional: false;
126
+ };
127
+ sourceModule: {
128
+ type: _lssm_lib_schema0.FieldType<string, string>;
129
+ isOptional: true;
130
+ };
131
+ xpReward: {
132
+ type: _lssm_lib_schema0.FieldType<number, number>;
133
+ isOptional: true;
134
+ };
135
+ order: {
136
+ type: _lssm_lib_schema0.FieldType<number, number>;
137
+ isOptional: true;
138
+ };
139
+ }>;
140
+ isArray: true;
141
+ isOptional: false;
142
+ };
143
+ }>;
144
+ isOptional: false;
145
+ };
146
+ }>, undefined>;
147
+ declare const RecordStudioOnboardingEvent: _lssm_lib_contracts0.ContractSpec<_lssm_lib_schema0.SchemaModel<{
148
+ learnerId: {
149
+ type: _lssm_lib_schema0.FieldType<string, string>;
150
+ isOptional: false;
151
+ };
152
+ eventName: {
153
+ type: _lssm_lib_schema0.FieldType<string, string>;
154
+ isOptional: false;
155
+ };
156
+ payload: {
157
+ type: _lssm_lib_schema0.FieldType<unknown, unknown>;
158
+ isOptional: true;
159
+ };
160
+ occurredAt: {
161
+ type: _lssm_lib_schema0.FieldType<Date, string>;
162
+ isOptional: true;
163
+ };
164
+ }>, _lssm_lib_schema0.SchemaModel<{
165
+ success: {
166
+ type: _lssm_lib_schema0.FieldType<boolean, boolean>;
167
+ isOptional: false;
168
+ };
169
+ }>, undefined>;
170
+ declare const studioOnboardingContracts: {
171
+ GetStudioOnboardingTrack: _lssm_lib_contracts0.ContractSpec<_lssm_lib_schema0.SchemaModel<{}>, _lssm_lib_schema0.SchemaModel<{
172
+ track: {
173
+ type: _lssm_lib_schema0.SchemaModel<{
174
+ id: {
175
+ type: _lssm_lib_schema0.FieldType<string, string>;
176
+ isOptional: false;
177
+ };
178
+ name: {
179
+ type: _lssm_lib_schema0.FieldType<string, string>;
180
+ isOptional: false;
181
+ };
182
+ description: {
183
+ type: _lssm_lib_schema0.FieldType<string, string>;
184
+ isOptional: true;
185
+ };
186
+ totalXp: {
187
+ type: _lssm_lib_schema0.FieldType<number, number>;
188
+ isOptional: true;
189
+ };
190
+ completionXpBonus: {
191
+ type: _lssm_lib_schema0.FieldType<number, number>;
192
+ isOptional: true;
193
+ };
194
+ completionBadgeKey: {
195
+ type: _lssm_lib_schema0.FieldType<string, string>;
196
+ isOptional: true;
197
+ };
198
+ streakHoursWindow: {
199
+ type: _lssm_lib_schema0.FieldType<number, number>;
200
+ isOptional: true;
201
+ };
202
+ streakBonusXp: {
203
+ type: _lssm_lib_schema0.FieldType<number, number>;
204
+ isOptional: true;
205
+ };
206
+ steps: {
207
+ type: _lssm_lib_schema0.SchemaModel<{
208
+ id: {
209
+ type: _lssm_lib_schema0.FieldType<string, string>;
210
+ isOptional: false;
211
+ };
212
+ title: {
213
+ type: _lssm_lib_schema0.FieldType<string, string>;
214
+ isOptional: false;
215
+ };
216
+ description: {
217
+ type: _lssm_lib_schema0.FieldType<string, string>;
218
+ isOptional: true;
219
+ };
220
+ completionEvent: {
221
+ type: _lssm_lib_schema0.FieldType<string, string>;
222
+ isOptional: false;
223
+ };
224
+ sourceModule: {
225
+ type: _lssm_lib_schema0.FieldType<string, string>;
226
+ isOptional: true;
227
+ };
228
+ xpReward: {
229
+ type: _lssm_lib_schema0.FieldType<number, number>;
230
+ isOptional: true;
231
+ };
232
+ order: {
233
+ type: _lssm_lib_schema0.FieldType<number, number>;
234
+ isOptional: true;
235
+ };
236
+ }>;
237
+ isArray: true;
238
+ isOptional: false;
239
+ };
240
+ }>;
241
+ isOptional: false;
242
+ };
243
+ }>, undefined>;
244
+ RecordStudioOnboardingEvent: _lssm_lib_contracts0.ContractSpec<_lssm_lib_schema0.SchemaModel<{
245
+ learnerId: {
246
+ type: _lssm_lib_schema0.FieldType<string, string>;
247
+ isOptional: false;
248
+ };
249
+ eventName: {
250
+ type: _lssm_lib_schema0.FieldType<string, string>;
251
+ isOptional: false;
252
+ };
253
+ payload: {
254
+ type: _lssm_lib_schema0.FieldType<unknown, unknown>;
255
+ isOptional: true;
256
+ };
257
+ occurredAt: {
258
+ type: _lssm_lib_schema0.FieldType<Date, string>;
259
+ isOptional: true;
260
+ };
261
+ }>, _lssm_lib_schema0.SchemaModel<{
262
+ success: {
263
+ type: _lssm_lib_schema0.FieldType<boolean, boolean>;
264
+ isOptional: false;
265
+ };
266
+ }>, undefined>;
267
+ track: _lssm_module_learning_journey_track_spec0.LearningJourneyTrackSpec;
268
+ };
269
+ //#endregion
270
+ export { GetStudioOnboardingTrack, RecordStudioOnboardingEvent, StudioOnboardingTrackModel, studioOnboardingContracts };
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1,32 @@
1
+ //#region src/example.d.ts
2
+ declare const example: {
3
+ readonly id: "learning-journey-studio-onboarding";
4
+ readonly title: "Learning Journey — Studio Getting Started";
5
+ readonly summary: "Onboarding track guiding a new Studio user through template spawn, spec edit, regeneration, playground, and evolution.";
6
+ readonly tags: readonly ["learning", "onboarding", "studio"];
7
+ readonly kind: "template";
8
+ readonly visibility: "public";
9
+ readonly docs: {
10
+ readonly rootDocId: "docs.learning-journey.studio-onboarding";
11
+ };
12
+ readonly entrypoints: {
13
+ readonly packageName: "@lssm/example.learning-journey-studio-onboarding";
14
+ readonly docs: "./docs";
15
+ };
16
+ readonly surfaces: {
17
+ readonly templates: true;
18
+ readonly sandbox: {
19
+ readonly enabled: true;
20
+ readonly modes: readonly ["playground", "markdown"];
21
+ };
22
+ readonly studio: {
23
+ readonly enabled: true;
24
+ readonly installable: true;
25
+ };
26
+ readonly mcp: {
27
+ readonly enabled: true;
28
+ };
29
+ };
30
+ };
31
+ //#endregion
32
+ export { example as default };
@@ -0,0 +1,22 @@
1
+ //#region src/handlers/demo.handlers.d.ts
2
+ interface EmitParams {
3
+ learnerId: string;
4
+ occurredAt?: Date;
5
+ }
6
+ interface LearningJourneyEvent {
7
+ learnerId: string;
8
+ name: string;
9
+ occurredAt: Date;
10
+ trackId: string;
11
+ payload?: Record<string, unknown>;
12
+ }
13
+ type RecordEvent = (event: LearningJourneyEvent) => unknown;
14
+ declare const studioOnboardingEvents: readonly ["studio.template.instantiated", "spec.changed", "regeneration.completed", "playground.session.started", "studio.evolution.applied"];
15
+ type StudioEvent = (typeof studioOnboardingEvents)[number];
16
+ declare const emitStudioOnboardingEvent: (eventName: StudioEvent, {
17
+ learnerId,
18
+ occurredAt
19
+ }: EmitParams, record?: RecordEvent) => unknown;
20
+ declare const emitAllStudioOnboardingEvents: (params: EmitParams, record?: RecordEvent) => unknown[];
21
+ //#endregion
22
+ export { StudioEvent, emitAllStudioOnboardingEvents, emitStudioOnboardingEvent, studioOnboardingEvents };
@@ -0,0 +1,7 @@
1
+ import { GetStudioOnboardingTrack, RecordStudioOnboardingEvent, StudioOnboardingTrackModel, studioOnboardingContracts } from "./contracts/index.js";
2
+ import example from "./example.js";
3
+ import { StudioEvent, emitAllStudioOnboardingEvents, emitStudioOnboardingEvent, studioOnboardingEvents } from "./handlers/demo.handlers.js";
4
+ import { studioGettingStartedTrack, studioLearningTracks } from "./track.js";
5
+ import { StudioOnboardingTrackPresentation, StudioOnboardingWidgetPresentation, studioOnboardingPresentations } from "./presentations/index.js";
6
+ import { LearningJourneyStudioOnboardingFeature } from "./learning-journey-studio-onboarding.feature.js";
7
+ export { GetStudioOnboardingTrack, LearningJourneyStudioOnboardingFeature, RecordStudioOnboardingEvent, StudioEvent, StudioOnboardingTrackModel, StudioOnboardingTrackPresentation, StudioOnboardingWidgetPresentation, emitAllStudioOnboardingEvents, emitStudioOnboardingEvent, example, studioGettingStartedTrack, studioLearningTracks, studioOnboardingContracts, studioOnboardingEvents, studioOnboardingPresentations };
@@ -0,0 +1,11 @@
1
+ import { FeatureModuleSpec } from "@lssm/lib.contracts";
2
+
3
+ //#region src/learning-journey-studio-onboarding.feature.d.ts
4
+
5
+ /**
6
+ * Learning Journey Studio Onboarding feature module that bundles
7
+ * Studio-specific onboarding track operations and presentations.
8
+ */
9
+ declare const LearningJourneyStudioOnboardingFeature: FeatureModuleSpec;
10
+ //#endregion
11
+ export { LearningJourneyStudioOnboardingFeature };
@@ -0,0 +1,8 @@
1
+ import { PresentationDescriptorV2 } from "@lssm/lib.contracts";
2
+
3
+ //#region src/presentations/index.d.ts
4
+ declare const StudioOnboardingTrackPresentation: PresentationDescriptorV2;
5
+ declare const StudioOnboardingWidgetPresentation: PresentationDescriptorV2;
6
+ declare const studioOnboardingPresentations: PresentationDescriptorV2[];
7
+ //#endregion
8
+ export { StudioOnboardingTrackPresentation, StudioOnboardingWidgetPresentation, studioOnboardingPresentations };
@@ -0,0 +1,7 @@
1
+ import { LearningJourneyTrackSpec } from "@lssm/module.learning-journey/track-spec";
2
+
3
+ //#region src/track.d.ts
4
+ declare const studioGettingStartedTrack: LearningJourneyTrackSpec;
5
+ declare const studioLearningTracks: LearningJourneyTrackSpec[];
6
+ //#endregion
7
+ export { studioGettingStartedTrack, studioLearningTracks };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lssm/example.learning-journey-studio-onboarding",
3
- "version": "0.0.0-canary-20251217054315",
3
+ "version": "0.0.0-canary-20251217060433",
4
4
  "description": "Learning journey track for first 30 minutes in ContractSpec Studio.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -30,13 +30,13 @@
30
30
  "lint:check": "eslint src"
31
31
  },
32
32
  "dependencies": {
33
- "@lssm/lib.contracts": "0.0.0-canary-20251217054315",
34
- "@lssm/lib.schema": "0.0.0-canary-20251217054315",
35
- "@lssm/module.learning-journey": "0.0.0-canary-20251217054315"
33
+ "@lssm/lib.contracts": "0.0.0-canary-20251217060433",
34
+ "@lssm/lib.schema": "0.0.0-canary-20251217060433",
35
+ "@lssm/module.learning-journey": "0.0.0-canary-20251217060433"
36
36
  },
37
37
  "devDependencies": {
38
- "@lssm/tool.tsdown": "0.0.0-canary-20251217054315",
39
- "@lssm/tool.typescript": "0.0.0-canary-20251217054315",
38
+ "@lssm/tool.tsdown": "0.0.0-canary-20251217060433",
39
+ "@lssm/tool.typescript": "0.0.0-canary-20251217060433",
40
40
  "tsdown": "^0.17.4",
41
41
  "typescript": "^5.9.3"
42
42
  },