@contractspec/example.learning-journey-platform-tour 1.44.1 → 1.45.0
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.
- package/.turbo/turbo-build$colon$bundle.log +12 -12
- package/.turbo/turbo-build.log +12 -12
- package/CHANGELOG.md +27 -0
- package/dist/example.d.ts +3 -31
- package/dist/example.d.ts.map +1 -1
- package/dist/example.js +15 -10
- package/dist/example.js.map +1 -1
- package/dist/handlers/demo.handlers.d.ts.map +1 -1
- package/dist/learning-journey-platform-tour.feature.js +10 -10
- package/dist/learning-journey-platform-tour.feature.js.map +1 -1
- package/dist/operations/index.js +2 -2
- package/dist/operations/index.js.map +1 -1
- package/dist/presentations/index.js +2 -2
- package/dist/presentations/index.js.map +1 -1
- package/package.json +6 -6
- package/src/example.ts +16 -9
- package/src/learning-journey-platform-tour.feature.ts +10 -10
- package/src/operations/index.ts +2 -2
- package/src/presentations/index.ts +2 -2
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -6,36 +6,36 @@ $ tsdown
|
|
|
6
6
|
[34mℹ[39m tsconfig: [34mtsconfig.json[39m
|
|
7
7
|
[34mℹ[39m Build start
|
|
8
8
|
[34mℹ[39m Cleaning 35 files
|
|
9
|
-
[34mℹ[39m [2mdist/[22m[1moperations/index.js[22m [2m4.
|
|
9
|
+
[34mℹ[39m [2mdist/[22m[1moperations/index.js[22m [2m4.26 kB[22m [2m│ gzip: 1.08 kB[22m
|
|
10
10
|
[34mℹ[39m [2mdist/[22m[1mtrack.js[22m [2m2.85 kB[22m [2m│ gzip: 0.91 kB[22m
|
|
11
|
+
[34mℹ[39m [2mdist/[22m[1mlearning-journey-platform-tour.feature.js[22m [2m1.59 kB[22m [2m│ gzip: 0.56 kB[22m
|
|
11
12
|
[34mℹ[39m [2mdist/[22m[1mdocs/platform-tour.docblock.js[22m [2m1.57 kB[22m [2m│ gzip: 0.81 kB[22m
|
|
12
|
-
[34mℹ[39m [2mdist/[22m[
|
|
13
|
-
[34mℹ[39m [2mdist/[22m[1mpresentations/index.js[22m [2m1.42 kB[22m [2m│ gzip: 0.56 kB[22m
|
|
13
|
+
[34mℹ[39m [2mdist/[22m[1mpresentations/index.js[22m [2m1.43 kB[22m [2m│ gzip: 0.56 kB[22m
|
|
14
14
|
[34mℹ[39m [2mdist/[22m[1mindex.js[22m [2m1.01 kB[22m [2m│ gzip: 0.31 kB[22m
|
|
15
|
-
[34mℹ[39m [2mdist/[22m[1mexample.js[22m [2m0.
|
|
15
|
+
[34mℹ[39m [2mdist/[22m[1mexample.js[22m [2m0.99 kB[22m [2m│ gzip: 0.49 kB[22m
|
|
16
16
|
[34mℹ[39m [2mdist/[22m[1mhandlers/demo.handlers.js[22m [2m0.83 kB[22m [2m│ gzip: 0.42 kB[22m
|
|
17
17
|
[34mℹ[39m [2mdist/[22m[1mdocs/index.js[22m [2m0.04 kB[22m [2m│ gzip: 0.06 kB[22m
|
|
18
|
-
[34mℹ[39m [2mdist/[22moperations/index.js.map [2m6.
|
|
18
|
+
[34mℹ[39m [2mdist/[22moperations/index.js.map [2m6.35 kB[22m [2m│ gzip: 1.59 kB[22m
|
|
19
19
|
[34mℹ[39m [2mdist/[22mtrack.js.map [2m4.58 kB[22m [2m│ gzip: 1.25 kB[22m
|
|
20
|
-
[34mℹ[39m [2mdist/[22mlearning-journey-platform-tour.feature.js.map [2m2.
|
|
21
|
-
[34mℹ[39m [2mdist/[22mpresentations/index.js.map [2m2.
|
|
20
|
+
[34mℹ[39m [2mdist/[22mlearning-journey-platform-tour.feature.js.map [2m2.91 kB[22m [2m│ gzip: 1.03 kB[22m
|
|
21
|
+
[34mℹ[39m [2mdist/[22mpresentations/index.js.map [2m2.42 kB[22m [2m│ gzip: 0.87 kB[22m
|
|
22
22
|
[34mℹ[39m [2mdist/[22mdocs/platform-tour.docblock.js.map [2m2.01 kB[22m [2m│ gzip: 0.97 kB[22m
|
|
23
23
|
[34mℹ[39m [2mdist/[22mhandlers/demo.handlers.js.map [2m1.68 kB[22m [2m│ gzip: 0.73 kB[22m
|
|
24
|
-
[34mℹ[39m [2mdist/[22mexample.js.map [2m1.
|
|
24
|
+
[34mℹ[39m [2mdist/[22mexample.js.map [2m1.54 kB[22m [2m│ gzip: 0.71 kB[22m
|
|
25
25
|
[34mℹ[39m [2mdist/[22moperations/index.d.ts.map [2m0.84 kB[22m [2m│ gzip: 0.32 kB[22m
|
|
26
26
|
[34mℹ[39m [2mdist/[22mhandlers/demo.handlers.d.ts.map [2m0.68 kB[22m [2m│ gzip: 0.35 kB[22m
|
|
27
27
|
[34mℹ[39m [2mdist/[22mpresentations/index.d.ts.map [2m0.19 kB[22m [2m│ gzip: 0.16 kB[22m
|
|
28
28
|
[34mℹ[39m [2mdist/[22mlearning-journey-platform-tour.feature.d.ts.map [2m0.19 kB[22m [2m│ gzip: 0.14 kB[22m
|
|
29
|
-
[34mℹ[39m [2mdist/[22mexample.d.ts.map [2m0.14 kB[22m [2m│ gzip: 0.13 kB[22m
|
|
30
29
|
[34mℹ[39m [2mdist/[22mtrack.d.ts.map [2m0.14 kB[22m [2m│ gzip: 0.13 kB[22m
|
|
30
|
+
[34mℹ[39m [2mdist/[22mexample.d.ts.map [2m0.12 kB[22m [2m│ gzip: 0.12 kB[22m
|
|
31
31
|
[34mℹ[39m [2mdist/[22m[32m[1moperations/index.d.ts[22m[39m [2m8.79 kB[22m [2m│ gzip: 0.93 kB[22m
|
|
32
|
-
[34mℹ[39m [2mdist/[22m[32m[1mexample.d.ts[22m[39m [2m1.14 kB[22m [2m│ gzip: 0.44 kB[22m
|
|
33
32
|
[34mℹ[39m [2mdist/[22m[32m[1mhandlers/demo.handlers.d.ts[22m[39m [2m1.00 kB[22m [2m│ gzip: 0.43 kB[22m
|
|
34
33
|
[34mℹ[39m [2mdist/[22m[32m[1mindex.d.ts[22m[39m [2m0.99 kB[22m [2m│ gzip: 0.29 kB[22m
|
|
35
34
|
[34mℹ[39m [2mdist/[22m[32m[1mlearning-journey-platform-tour.feature.d.ts[22m[39m [2m0.45 kB[22m [2m│ gzip: 0.25 kB[22m
|
|
36
35
|
[34mℹ[39m [2mdist/[22m[32m[1mpresentations/index.d.ts[22m[39m [2m0.44 kB[22m [2m│ gzip: 0.20 kB[22m
|
|
37
36
|
[34mℹ[39m [2mdist/[22m[32m[1mtrack.d.ts[22m[39m [2m0.37 kB[22m [2m│ gzip: 0.20 kB[22m
|
|
37
|
+
[34mℹ[39m [2mdist/[22m[32m[1mexample.d.ts[22m[39m [2m0.20 kB[22m [2m│ gzip: 0.16 kB[22m
|
|
38
38
|
[34mℹ[39m [2mdist/[22m[32m[1mdocs/index.d.ts[22m[39m [2m0.01 kB[22m [2m│ gzip: 0.03 kB[22m
|
|
39
39
|
[34mℹ[39m [2mdist/[22m[32m[1mdocs/platform-tour.docblock.d.ts[22m[39m [2m0.01 kB[22m [2m│ gzip: 0.03 kB[22m
|
|
40
|
-
[34mℹ[39m 31 files, total: 50.
|
|
41
|
-
[32m✔[39m Build complete in [
|
|
40
|
+
[34mℹ[39m 31 files, total: 50.49 kB
|
|
41
|
+
[32m✔[39m Build complete in [32m21323ms[39m
|
package/.turbo/turbo-build.log
CHANGED
|
@@ -7,36 +7,36 @@ $ tsdown
|
|
|
7
7
|
[34mℹ[39m target: [34mesnext[39m
|
|
8
8
|
[34mℹ[39m tsconfig: [34mtsconfig.json[39m
|
|
9
9
|
[34mℹ[39m Build start
|
|
10
|
-
[34mℹ[39m [2mdist/[22m[1moperations/index.js[22m [2m4.
|
|
10
|
+
[34mℹ[39m [2mdist/[22m[1moperations/index.js[22m [2m4.26 kB[22m [2m│ gzip: 1.08 kB[22m
|
|
11
11
|
[34mℹ[39m [2mdist/[22m[1mtrack.js[22m [2m2.85 kB[22m [2m│ gzip: 0.91 kB[22m
|
|
12
|
+
[34mℹ[39m [2mdist/[22m[1mlearning-journey-platform-tour.feature.js[22m [2m1.59 kB[22m [2m│ gzip: 0.56 kB[22m
|
|
12
13
|
[34mℹ[39m [2mdist/[22m[1mdocs/platform-tour.docblock.js[22m [2m1.57 kB[22m [2m│ gzip: 0.81 kB[22m
|
|
13
|
-
[34mℹ[39m [2mdist/[22m[
|
|
14
|
-
[34mℹ[39m [2mdist/[22m[1mpresentations/index.js[22m [2m1.42 kB[22m [2m│ gzip: 0.56 kB[22m
|
|
14
|
+
[34mℹ[39m [2mdist/[22m[1mpresentations/index.js[22m [2m1.43 kB[22m [2m│ gzip: 0.56 kB[22m
|
|
15
15
|
[34mℹ[39m [2mdist/[22m[1mindex.js[22m [2m1.01 kB[22m [2m│ gzip: 0.31 kB[22m
|
|
16
|
-
[34mℹ[39m [2mdist/[22m[1mexample.js[22m [2m0.
|
|
16
|
+
[34mℹ[39m [2mdist/[22m[1mexample.js[22m [2m0.99 kB[22m [2m│ gzip: 0.49 kB[22m
|
|
17
17
|
[34mℹ[39m [2mdist/[22m[1mhandlers/demo.handlers.js[22m [2m0.83 kB[22m [2m│ gzip: 0.42 kB[22m
|
|
18
18
|
[34mℹ[39m [2mdist/[22m[1mdocs/index.js[22m [2m0.04 kB[22m [2m│ gzip: 0.06 kB[22m
|
|
19
|
-
[34mℹ[39m [2mdist/[22moperations/index.js.map [2m6.
|
|
19
|
+
[34mℹ[39m [2mdist/[22moperations/index.js.map [2m6.35 kB[22m [2m│ gzip: 1.59 kB[22m
|
|
20
20
|
[34mℹ[39m [2mdist/[22mtrack.js.map [2m4.58 kB[22m [2m│ gzip: 1.25 kB[22m
|
|
21
|
-
[34mℹ[39m [2mdist/[22mlearning-journey-platform-tour.feature.js.map [2m2.
|
|
22
|
-
[34mℹ[39m [2mdist/[22mpresentations/index.js.map [2m2.
|
|
21
|
+
[34mℹ[39m [2mdist/[22mlearning-journey-platform-tour.feature.js.map [2m2.91 kB[22m [2m│ gzip: 1.03 kB[22m
|
|
22
|
+
[34mℹ[39m [2mdist/[22mpresentations/index.js.map [2m2.42 kB[22m [2m│ gzip: 0.87 kB[22m
|
|
23
23
|
[34mℹ[39m [2mdist/[22mdocs/platform-tour.docblock.js.map [2m2.01 kB[22m [2m│ gzip: 0.97 kB[22m
|
|
24
24
|
[34mℹ[39m [2mdist/[22mhandlers/demo.handlers.js.map [2m1.68 kB[22m [2m│ gzip: 0.73 kB[22m
|
|
25
|
-
[34mℹ[39m [2mdist/[22mexample.js.map [2m1.
|
|
25
|
+
[34mℹ[39m [2mdist/[22mexample.js.map [2m1.54 kB[22m [2m│ gzip: 0.71 kB[22m
|
|
26
26
|
[34mℹ[39m [2mdist/[22moperations/index.d.ts.map [2m0.84 kB[22m [2m│ gzip: 0.32 kB[22m
|
|
27
27
|
[34mℹ[39m [2mdist/[22mhandlers/demo.handlers.d.ts.map [2m0.68 kB[22m [2m│ gzip: 0.35 kB[22m
|
|
28
28
|
[34mℹ[39m [2mdist/[22mpresentations/index.d.ts.map [2m0.19 kB[22m [2m│ gzip: 0.16 kB[22m
|
|
29
29
|
[34mℹ[39m [2mdist/[22mlearning-journey-platform-tour.feature.d.ts.map [2m0.19 kB[22m [2m│ gzip: 0.14 kB[22m
|
|
30
|
-
[34mℹ[39m [2mdist/[22mexample.d.ts.map [2m0.14 kB[22m [2m│ gzip: 0.13 kB[22m
|
|
31
30
|
[34mℹ[39m [2mdist/[22mtrack.d.ts.map [2m0.14 kB[22m [2m│ gzip: 0.13 kB[22m
|
|
31
|
+
[34mℹ[39m [2mdist/[22mexample.d.ts.map [2m0.12 kB[22m [2m│ gzip: 0.12 kB[22m
|
|
32
32
|
[34mℹ[39m [2mdist/[22m[32m[1moperations/index.d.ts[22m[39m [2m8.79 kB[22m [2m│ gzip: 0.93 kB[22m
|
|
33
|
-
[34mℹ[39m [2mdist/[22m[32m[1mexample.d.ts[22m[39m [2m1.14 kB[22m [2m│ gzip: 0.44 kB[22m
|
|
34
33
|
[34mℹ[39m [2mdist/[22m[32m[1mhandlers/demo.handlers.d.ts[22m[39m [2m1.00 kB[22m [2m│ gzip: 0.43 kB[22m
|
|
35
34
|
[34mℹ[39m [2mdist/[22m[32m[1mindex.d.ts[22m[39m [2m0.99 kB[22m [2m│ gzip: 0.29 kB[22m
|
|
36
35
|
[34mℹ[39m [2mdist/[22m[32m[1mlearning-journey-platform-tour.feature.d.ts[22m[39m [2m0.45 kB[22m [2m│ gzip: 0.25 kB[22m
|
|
37
36
|
[34mℹ[39m [2mdist/[22m[32m[1mpresentations/index.d.ts[22m[39m [2m0.44 kB[22m [2m│ gzip: 0.20 kB[22m
|
|
38
37
|
[34mℹ[39m [2mdist/[22m[32m[1mtrack.d.ts[22m[39m [2m0.37 kB[22m [2m│ gzip: 0.20 kB[22m
|
|
38
|
+
[34mℹ[39m [2mdist/[22m[32m[1mexample.d.ts[22m[39m [2m0.20 kB[22m [2m│ gzip: 0.16 kB[22m
|
|
39
39
|
[34mℹ[39m [2mdist/[22m[32m[1mdocs/index.d.ts[22m[39m [2m0.01 kB[22m [2m│ gzip: 0.03 kB[22m
|
|
40
40
|
[34mℹ[39m [2mdist/[22m[32m[1mdocs/platform-tour.docblock.d.ts[22m[39m [2m0.01 kB[22m [2m│ gzip: 0.03 kB[22m
|
|
41
|
-
[34mℹ[39m 31 files, total: 50.
|
|
42
|
-
[32m✔[39m Build complete in [
|
|
41
|
+
[34mℹ[39m 31 files, total: 50.49 kB
|
|
42
|
+
[32m✔[39m Build complete in [32m22326ms[39m
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# @contractspec/example.learning-journey-platform-tour
|
|
2
2
|
|
|
3
|
+
## 1.45.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- e73ca1d: feat: improve app config and examples contracts
|
|
8
|
+
feat: Contract layers support (features, examples, app-configs)
|
|
9
|
+
|
|
10
|
+
### New CLI Commands
|
|
11
|
+
- `contractspec list layers` - List all contract layers with filtering
|
|
12
|
+
|
|
13
|
+
### Enhanced Commands
|
|
14
|
+
- `contractspec ci` - New `layers` check category validates features/examples/config
|
|
15
|
+
- `contractspec doctor` - New `layers` health checks
|
|
16
|
+
- `contractspec integrity` - Now shows layer statistics
|
|
17
|
+
|
|
18
|
+
### New APIs
|
|
19
|
+
- `discoverLayers()` - Scan workspace for all layer files
|
|
20
|
+
- `scanExampleSource()` - Parse ExampleSpec from source code
|
|
21
|
+
- `isExampleFile()` - Check if file is an example spec
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- Updated dependencies [e73ca1d]
|
|
26
|
+
- @contractspec/module.learning-journey@1.45.0
|
|
27
|
+
- @contractspec/lib.contracts@1.45.0
|
|
28
|
+
- @contractspec/lib.schema@1.45.0
|
|
29
|
+
|
|
3
30
|
## 1.44.1
|
|
4
31
|
|
|
5
32
|
### Patch Changes
|
package/dist/example.d.ts
CHANGED
|
@@ -1,35 +1,7 @@
|
|
|
1
|
+
import { ExampleSpec } from "@contractspec/lib.contracts";
|
|
2
|
+
|
|
1
3
|
//#region src/example.d.ts
|
|
2
|
-
declare const example:
|
|
3
|
-
readonly id: "learning-journey-platform-tour";
|
|
4
|
-
readonly title: "Learning Journey — Platform Tour";
|
|
5
|
-
readonly summary: "Learning journey track + contracts + presentations for a platform tour.";
|
|
6
|
-
readonly tags: readonly ["learning", "journey", "platform-tour"];
|
|
7
|
-
readonly kind: "template";
|
|
8
|
-
readonly visibility: "public";
|
|
9
|
-
readonly docs: {
|
|
10
|
-
readonly rootDocId: "docs.examples.platform-tour";
|
|
11
|
-
readonly goalDocId: "docs.examples.platform-tour.goal";
|
|
12
|
-
readonly usageDocId: "docs.examples.platform-tour.usage";
|
|
13
|
-
};
|
|
14
|
-
readonly entrypoints: {
|
|
15
|
-
readonly packageName: "@contractspec/example.learning-journey-platform-tour";
|
|
16
|
-
readonly docs: "./docs";
|
|
17
|
-
};
|
|
18
|
-
readonly surfaces: {
|
|
19
|
-
readonly templates: true;
|
|
20
|
-
readonly sandbox: {
|
|
21
|
-
readonly enabled: true;
|
|
22
|
-
readonly modes: readonly ["markdown", "playground"];
|
|
23
|
-
};
|
|
24
|
-
readonly studio: {
|
|
25
|
-
readonly enabled: true;
|
|
26
|
-
readonly installable: true;
|
|
27
|
-
};
|
|
28
|
-
readonly mcp: {
|
|
29
|
-
readonly enabled: true;
|
|
30
|
-
};
|
|
31
|
-
};
|
|
32
|
-
};
|
|
4
|
+
declare const example: ExampleSpec;
|
|
33
5
|
//#endregion
|
|
34
6
|
export { example as default };
|
|
35
7
|
//# sourceMappingURL=example.d.ts.map
|
package/dist/example.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example.d.ts","names":[],"sources":["../src/example.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"example.d.ts","names":[],"sources":["../src/example.ts"],"sourcesContent":[],"mappings":";;;cAEM,SAAS"}
|
package/dist/example.js
CHANGED
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
//#region src/example.ts
|
|
2
2
|
const example = {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
3
|
+
meta: {
|
|
4
|
+
key: "learning-journey-platform-tour",
|
|
5
|
+
version: "1.0.0",
|
|
6
|
+
title: "Learning Journey — Platform Tour",
|
|
7
|
+
description: "Learning journey track + contracts + presentations for a platform tour.",
|
|
8
|
+
kind: "template",
|
|
9
|
+
visibility: "public",
|
|
10
|
+
stability: "experimental",
|
|
11
|
+
owners: ["@platform.core"],
|
|
12
|
+
tags: [
|
|
13
|
+
"learning",
|
|
14
|
+
"journey",
|
|
15
|
+
"platform-tour"
|
|
16
|
+
]
|
|
17
|
+
},
|
|
13
18
|
docs: {
|
|
14
19
|
rootDocId: "docs.examples.platform-tour",
|
|
15
20
|
goalDocId: "docs.examples.platform-tour.goal",
|
package/dist/example.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"example.js","names":[],"sources":["../src/example.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"example.js","names":["example: ExampleSpec"],"sources":["../src/example.ts"],"sourcesContent":["import type { ExampleSpec } from '@contractspec/lib.contracts';\n\nconst example: ExampleSpec = {\n meta: {\n key: 'learning-journey-platform-tour',\n version: '1.0.0',\n title: 'Learning Journey — Platform Tour',\n description:\n 'Learning journey track + contracts + presentations for a platform tour.',\n kind: 'template',\n visibility: 'public',\n stability: 'experimental',\n owners: ['@platform.core'],\n tags: ['learning', 'journey', 'platform-tour'],\n },\n docs: {\n rootDocId: 'docs.examples.platform-tour',\n goalDocId: 'docs.examples.platform-tour.goal',\n usageDocId: 'docs.examples.platform-tour.usage',\n },\n entrypoints: {\n packageName: '@contractspec/example.learning-journey-platform-tour',\n docs: './docs',\n },\n surfaces: {\n templates: true,\n sandbox: { enabled: true, modes: ['markdown', 'playground'] },\n studio: { enabled: true, installable: true },\n mcp: { enabled: true },\n },\n};\n\nexport default example;\n"],"mappings":";AAEA,MAAMA,UAAuB;CAC3B,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,aACE;EACF,MAAM;EACN,YAAY;EACZ,WAAW;EACX,QAAQ,CAAC,iBAAiB;EAC1B,MAAM;GAAC;GAAY;GAAW;GAAgB;EAC/C;CACD,MAAM;EACJ,WAAW;EACX,WAAW;EACX,YAAY;EACb;CACD,aAAa;EACX,aAAa;EACb,MAAM;EACP;CACD,UAAU;EACR,WAAW;EACX,SAAS;GAAE,SAAS;GAAM,OAAO,CAAC,YAAY,aAAa;GAAE;EAC7D,QAAQ;GAAE,SAAS;GAAM,aAAa;GAAM;EAC5C,KAAK,EAAE,SAAS,MAAM;EACvB;CACF;AAED,sBAAe"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"demo.handlers.d.ts","names":[],"sources":["../../src/handlers/demo.handlers.ts"],"sourcesContent":[],"mappings":";UAEU,UAAA;EAAA,SAAA,EAAA,MAAU;EAMV,UAAA,CAAA,EAJK,IAIL;EAQL,OAAA,CAAA,EAXO,MAWI,CAAA,MAAA,EAAW,OAAA,CAAA;AAE3B;AAUA,UApBU,oBAAA,
|
|
1
|
+
{"version":3,"file":"demo.handlers.d.ts","names":[],"sources":["../../src/handlers/demo.handlers.ts"],"sourcesContent":[],"mappings":";UAEU,UAAA;EAAA,SAAA,EAAA,MAAU;EAMV,UAAA,CAAA,EAJK,IAIL;EAQL,OAAA,CAAA,EAXO,MAWI,CAAA,MAAA,EAAW,OAAA,CAAA;AAE3B;AAUA,UApBU,oBAAA,CAoBe;EAEZ,SAAA,EAAA,MAAA;EACA,IAAA,EAAA,MAAA;EACX,UAAA,EArBY,IAqBZ;EAAA,OAAA,EAAA,MAAA;EAAA,OAAA,CAAA,EAnBU,MAmBV,CAAA,MAAA,EAAA,OAAA,CAAA;;KAhBG,WAAA,GAiBM,CAAA,KAAA,EAjBgB,oBAiBhB,EAAA,GAAA,OAAA;AAAW,cAfT,kBAeS,EAAA,SAAA,CAAA,kBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,gBAAA,CAAA;AAYT,KAjBD,aAAA,GAiBC,CAAA,OAjBuB,kBAkB1B,CAAA,CACC,MAAA,CAAA;cAjBE,mCACA;;;;GACsC,qBACxC;cAYE,oCACH,qBACC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
const LearningJourneyPlatformTourFeature = {
|
|
7
7
|
meta: {
|
|
8
8
|
key: "learning-journey-platform-tour",
|
|
9
|
-
version: 1,
|
|
9
|
+
version: "1.0.0",
|
|
10
10
|
title: "Learning Journey: Platform Tour",
|
|
11
11
|
description: "Platform primitives tour journey for exploring ContractSpec core features",
|
|
12
12
|
domain: "learning-journey",
|
|
@@ -21,32 +21,32 @@ const LearningJourneyPlatformTourFeature = {
|
|
|
21
21
|
},
|
|
22
22
|
operations: [{
|
|
23
23
|
key: "learningJourney.platformTour.recordEvent",
|
|
24
|
-
version: 1
|
|
24
|
+
version: "1.0.0"
|
|
25
25
|
}, {
|
|
26
26
|
key: "learningJourney.platformTour.getTrack",
|
|
27
|
-
version: 1
|
|
27
|
+
version: "1.0.0"
|
|
28
28
|
}],
|
|
29
29
|
events: [],
|
|
30
30
|
presentations: [{
|
|
31
31
|
key: "learning.journey.platform.track",
|
|
32
|
-
version: 1
|
|
32
|
+
version: "1.0.0"
|
|
33
33
|
}, {
|
|
34
34
|
key: "learning.journey.platform.widget",
|
|
35
|
-
version: 1
|
|
35
|
+
version: "1.0.0"
|
|
36
36
|
}],
|
|
37
37
|
opToPresentation: [{
|
|
38
38
|
op: {
|
|
39
39
|
key: "learningJourney.platformTour.getTrack",
|
|
40
|
-
version: 1
|
|
40
|
+
version: "1.0.0"
|
|
41
41
|
},
|
|
42
42
|
pres: {
|
|
43
43
|
key: "learning.journey.platform.track",
|
|
44
|
-
version: 1
|
|
44
|
+
version: "1.0.0"
|
|
45
45
|
}
|
|
46
46
|
}],
|
|
47
47
|
presentationsTargets: [{
|
|
48
48
|
key: "learning.journey.platform.track",
|
|
49
|
-
version: 1,
|
|
49
|
+
version: "1.0.0",
|
|
50
50
|
targets: [
|
|
51
51
|
"react",
|
|
52
52
|
"markdown",
|
|
@@ -54,12 +54,12 @@ const LearningJourneyPlatformTourFeature = {
|
|
|
54
54
|
]
|
|
55
55
|
}, {
|
|
56
56
|
key: "learning.journey.platform.widget",
|
|
57
|
-
version: 1,
|
|
57
|
+
version: "1.0.0",
|
|
58
58
|
targets: ["react"]
|
|
59
59
|
}],
|
|
60
60
|
capabilities: { requires: [{
|
|
61
61
|
key: "identity",
|
|
62
|
-
version: 1
|
|
62
|
+
version: "1.0.0"
|
|
63
63
|
}] }
|
|
64
64
|
};
|
|
65
65
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"learning-journey-platform-tour.feature.js","names":["LearningJourneyPlatformTourFeature: FeatureModuleSpec"],"sources":["../src/learning-journey-platform-tour.feature.ts"],"sourcesContent":["/**\n * Learning Journey Platform Tour Feature Module Specification\n *\n * Defines the feature module for platform primitives tour journey.\n */\nimport type { FeatureModuleSpec } from '@contractspec/lib.contracts';\n\n/**\n * Learning Journey Platform Tour feature module that bundles\n * platform-specific tour track operations and presentations.\n */\nexport const LearningJourneyPlatformTourFeature: FeatureModuleSpec = {\n meta: {\n key: 'learning-journey-platform-tour',\n version: 1,\n title: 'Learning Journey: Platform Tour',\n description:\n 'Platform primitives tour journey for exploring ContractSpec core features',\n domain: 'learning-journey',\n owners: ['@examples.learning-journey.platform-tour'],\n tags: ['learning', 'platform', 'tour', 'journey'],\n stability: 'experimental',\n },\n\n // All contract operations included in this feature\n operations: [\n { key: 'learningJourney.platformTour.recordEvent', version: 1 },\n { key: 'learningJourney.platformTour.getTrack', version: 1 },\n ],\n\n // Events emitted by this feature\n events: [],\n\n // Presentations associated with this feature\n presentations: [\n { key: 'learning.journey.platform.track', version: 1 },\n { key: 'learning.journey.platform.widget', version: 1 },\n ],\n\n // Link operations to their primary presentations\n opToPresentation: [\n {\n op: { key: 'learningJourney.platformTour.getTrack', version: 1 },\n pres: { key: 'learning.journey.platform.track', version: 1 },\n },\n ],\n\n // Target requirements for multi-surface rendering\n presentationsTargets: [\n {\n key: 'learning.journey.platform.track',\n version: 1,\n targets: ['react', 'markdown', 'application/json'],\n },\n {\n key: 'learning.journey.platform.widget',\n version: 1,\n targets: ['react'],\n },\n ],\n\n // Capability requirements\n capabilities: {\n requires: [{ key: 'identity', version: 1 }],\n },\n};\n"],"mappings":";;;;;AAWA,MAAaA,qCAAwD;CACnE,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,aACE;EACF,QAAQ;EACR,QAAQ,CAAC,2CAA2C;EACpD,MAAM;GAAC;GAAY;GAAY;GAAQ;GAAU;EACjD,WAAW;EACZ;CAGD,YAAY,CACV;EAAE,KAAK;EAA4C,SAAS;
|
|
1
|
+
{"version":3,"file":"learning-journey-platform-tour.feature.js","names":["LearningJourneyPlatformTourFeature: FeatureModuleSpec"],"sources":["../src/learning-journey-platform-tour.feature.ts"],"sourcesContent":["/**\n * Learning Journey Platform Tour Feature Module Specification\n *\n * Defines the feature module for platform primitives tour journey.\n */\nimport type { FeatureModuleSpec } from '@contractspec/lib.contracts';\n\n/**\n * Learning Journey Platform Tour feature module that bundles\n * platform-specific tour track operations and presentations.\n */\nexport const LearningJourneyPlatformTourFeature: FeatureModuleSpec = {\n meta: {\n key: 'learning-journey-platform-tour',\n version: '1.0.0',\n title: 'Learning Journey: Platform Tour',\n description:\n 'Platform primitives tour journey for exploring ContractSpec core features',\n domain: 'learning-journey',\n owners: ['@examples.learning-journey.platform-tour'],\n tags: ['learning', 'platform', 'tour', 'journey'],\n stability: 'experimental',\n },\n\n // All contract operations included in this feature\n operations: [\n { key: 'learningJourney.platformTour.recordEvent', version: '1.0.0' },\n { key: 'learningJourney.platformTour.getTrack', version: '1.0.0' },\n ],\n\n // Events emitted by this feature\n events: [],\n\n // Presentations associated with this feature\n presentations: [\n { key: 'learning.journey.platform.track', version: '1.0.0' },\n { key: 'learning.journey.platform.widget', version: '1.0.0' },\n ],\n\n // Link operations to their primary presentations\n opToPresentation: [\n {\n op: { key: 'learningJourney.platformTour.getTrack', version: '1.0.0' },\n pres: { key: 'learning.journey.platform.track', version: '1.0.0' },\n },\n ],\n\n // Target requirements for multi-surface rendering\n presentationsTargets: [\n {\n key: 'learning.journey.platform.track',\n version: '1.0.0',\n targets: ['react', 'markdown', 'application/json'],\n },\n {\n key: 'learning.journey.platform.widget',\n version: '1.0.0',\n targets: ['react'],\n },\n ],\n\n // Capability requirements\n capabilities: {\n requires: [{ key: 'identity', version: '1.0.0' }],\n },\n};\n"],"mappings":";;;;;AAWA,MAAaA,qCAAwD;CACnE,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,aACE;EACF,QAAQ;EACR,QAAQ,CAAC,2CAA2C;EACpD,MAAM;GAAC;GAAY;GAAY;GAAQ;GAAU;EACjD,WAAW;EACZ;CAGD,YAAY,CACV;EAAE,KAAK;EAA4C,SAAS;EAAS,EACrE;EAAE,KAAK;EAAyC,SAAS;EAAS,CACnE;CAGD,QAAQ,EAAE;CAGV,eAAe,CACb;EAAE,KAAK;EAAmC,SAAS;EAAS,EAC5D;EAAE,KAAK;EAAoC,SAAS;EAAS,CAC9D;CAGD,kBAAkB,CAChB;EACE,IAAI;GAAE,KAAK;GAAyC,SAAS;GAAS;EACtE,MAAM;GAAE,KAAK;GAAmC,SAAS;GAAS;EACnE,CACF;CAGD,sBAAsB,CACpB;EACE,KAAK;EACL,SAAS;EACT,SAAS;GAAC;GAAS;GAAY;GAAmB;EACnD,EACD;EACE,KAAK;EACL,SAAS;EACT,SAAS,CAAC,QAAQ;EACnB,CACF;CAGD,cAAc,EACZ,UAAU,CAAC;EAAE,KAAK;EAAY,SAAS;EAAS,CAAC,EAClD;CACF"}
|
package/dist/operations/index.js
CHANGED
|
@@ -122,7 +122,7 @@ const SuccessModel = defineSchemaModel({
|
|
|
122
122
|
const GetPlatformTourTrack = defineQuery({
|
|
123
123
|
meta: {
|
|
124
124
|
key: "learningJourney.platformTour.getTrack",
|
|
125
|
-
version: 1,
|
|
125
|
+
version: "1.0.0",
|
|
126
126
|
stability: "experimental",
|
|
127
127
|
owners: [...OWNERS],
|
|
128
128
|
tags: [
|
|
@@ -147,7 +147,7 @@ const GetPlatformTourTrack = defineQuery({
|
|
|
147
147
|
const RecordPlatformTourEvent = defineCommand({
|
|
148
148
|
meta: {
|
|
149
149
|
key: "learningJourney.platformTour.recordEvent",
|
|
150
|
-
version: 1,
|
|
150
|
+
version: "1.0.0",
|
|
151
151
|
stability: "experimental",
|
|
152
152
|
owners: [...OWNERS],
|
|
153
153
|
tags: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/operations/index.ts"],"sourcesContent":["import { ScalarTypeEnum, defineSchemaModel } from '@contractspec/lib.schema';\nimport { defineCommand, defineQuery } from '@contractspec/lib.contracts';\n\nimport { platformPrimitivesTourTrack } from '../track';\n\nconst OWNERS = ['examples.learning-journey.platform-tour'] as const;\n\nconst StepModel = defineSchemaModel({\n name: 'PlatformTourStep',\n description: 'Step metadata for platform primitives tour',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n title: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n completionEvent: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n sourceModule: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n xpReward: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n order: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n },\n});\n\nexport const PlatformTourTrackModel = defineSchemaModel({\n name: 'PlatformTourTrack',\n description: 'Platform primitives tour track definition',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n totalXp: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n completionXpBonus: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n completionBadgeKey: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n streakHoursWindow: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n streakBonusXp: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n steps: { type: StepModel, isArray: true, isOptional: false },\n },\n});\n\nconst TrackResponseModel = defineSchemaModel({\n name: 'PlatformTourTrackResponse',\n description: 'Response wrapper for platform tour track',\n fields: {\n track: { type: PlatformTourTrackModel, isOptional: false },\n },\n});\n\nconst RecordDemoEventInput = defineSchemaModel({\n name: 'PlatformTourRecordEventInput',\n description: 'Emit a demo event to advance platform tour steps',\n fields: {\n learnerId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n eventName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n payload: { type: ScalarTypeEnum.JSON(), isOptional: true },\n occurredAt: { type: ScalarTypeEnum.DateTime(), isOptional: true },\n },\n});\n\nconst SuccessModel = defineSchemaModel({\n name: 'PlatformTourSuccess',\n description: 'Generic success response',\n fields: {\n success: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n },\n});\n\nexport const GetPlatformTourTrack = defineQuery({\n meta: {\n key: 'learningJourney.platformTour.getTrack',\n version: 1,\n stability: 'experimental',\n owners: [...OWNERS],\n tags: ['learning', 'platform', 'tour'],\n description: 'Fetch platform primitives tour track definition.',\n goal: 'Expose track metadata to UIs and templates.',\n context: 'Called by Studio/Playground to render journey steps.',\n },\n io: {\n input: defineSchemaModel({\n name: 'PlatformTourTrackInput',\n description: 'Track input',\n fields: {},\n }),\n output: TrackResponseModel,\n },\n policy: { auth: 'user' },\n});\n\nexport const RecordPlatformTourEvent = defineCommand({\n meta: {\n key: 'learningJourney.platformTour.recordEvent',\n version: 1,\n stability: 'experimental',\n owners: [...OWNERS],\n tags: ['learning', 'platform', 'tour'],\n description: 'Record an event to advance platform tour progress.',\n goal: 'Advance steps via domain events in demo/sandbox contexts.',\n context:\n 'Called by handlers or demo scripts to emit step completion events.',\n },\n io: {\n input: RecordDemoEventInput,\n output: SuccessModel,\n },\n policy: { auth: 'user' },\n});\n\nexport const platformTourContracts = {\n GetPlatformTourTrack,\n RecordPlatformTourEvent,\n track: platformPrimitivesTourTrack,\n};\n"],"mappings":";;;;;AAKA,MAAM,SAAS,CAAC,0CAA0C;AAE1D,MAAM,YAAY,kBAAkB;CAClC,MAAM;CACN,aAAa;CACb,QAAQ;EACN,IAAI;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACjE,OAAO;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACpE,aAAa;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAM;EACzE,iBAAiB;GACf,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACb;EACD,cAAc;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAM;EAC1E,UAAU;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EACnE,OAAO;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EACjE;CACF,CAAC;AAEF,MAAa,yBAAyB,kBAAkB;CACtD,MAAM;CACN,aAAa;CACb,QAAQ;EACN,IAAI;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACjE,MAAM;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACnE,aAAa;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAM;EACzE,SAAS;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EAClE,mBAAmB;GACjB,MAAM,eAAe,cAAc;GACnC,YAAY;GACb;EACD,oBAAoB;GAClB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACb;EACD,mBAAmB;GACjB,MAAM,eAAe,cAAc;GACnC,YAAY;GACb;EACD,eAAe;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EACxE,OAAO;GAAE,MAAM;GAAW,SAAS;GAAM,YAAY;GAAO;EAC7D;CACF,CAAC;AAEF,MAAM,qBAAqB,kBAAkB;CAC3C,MAAM;CACN,aAAa;CACb,QAAQ,EACN,OAAO;EAAE,MAAM;EAAwB,YAAY;EAAO,EAC3D;CACF,CAAC;AAEF,MAAM,uBAAuB,kBAAkB;CAC7C,MAAM;CACN,aAAa;CACb,QAAQ;EACN,WAAW;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACxE,WAAW;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACxE,SAAS;GAAE,MAAM,eAAe,MAAM;GAAE,YAAY;GAAM;EAC1D,YAAY;GAAE,MAAM,eAAe,UAAU;GAAE,YAAY;GAAM;EAClE;CACF,CAAC;AAEF,MAAM,eAAe,kBAAkB;CACrC,MAAM;CACN,aAAa;CACb,QAAQ,EACN,SAAS;EAAE,MAAM,eAAe,SAAS;EAAE,YAAY;EAAO,EAC/D;CACF,CAAC;AAEF,MAAa,uBAAuB,YAAY;CAC9C,MAAM;EACJ,KAAK;EACL,SAAS;EACT,WAAW;EACX,QAAQ,CAAC,GAAG,OAAO;EACnB,MAAM;GAAC;GAAY;GAAY;GAAO;EACtC,aAAa;EACb,MAAM;EACN,SAAS;EACV;CACD,IAAI;EACF,OAAO,kBAAkB;GACvB,MAAM;GACN,aAAa;GACb,QAAQ,EAAE;GACX,CAAC;EACF,QAAQ;EACT;CACD,QAAQ,EAAE,MAAM,QAAQ;CACzB,CAAC;AAEF,MAAa,0BAA0B,cAAc;CACnD,MAAM;EACJ,KAAK;EACL,SAAS;EACT,WAAW;EACX,QAAQ,CAAC,GAAG,OAAO;EACnB,MAAM;GAAC;GAAY;GAAY;GAAO;EACtC,aAAa;EACb,MAAM;EACN,SACE;EACH;CACD,IAAI;EACF,OAAO;EACP,QAAQ;EACT;CACD,QAAQ,EAAE,MAAM,QAAQ;CACzB,CAAC;AAEF,MAAa,wBAAwB;CACnC;CACA;CACA,OAAO;CACR"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/operations/index.ts"],"sourcesContent":["import { ScalarTypeEnum, defineSchemaModel } from '@contractspec/lib.schema';\nimport { defineCommand, defineQuery } from '@contractspec/lib.contracts';\n\nimport { platformPrimitivesTourTrack } from '../track';\n\nconst OWNERS = ['examples.learning-journey.platform-tour'] as const;\n\nconst StepModel = defineSchemaModel({\n name: 'PlatformTourStep',\n description: 'Step metadata for platform primitives tour',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n title: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n completionEvent: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n sourceModule: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n xpReward: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n order: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n },\n});\n\nexport const PlatformTourTrackModel = defineSchemaModel({\n name: 'PlatformTourTrack',\n description: 'Platform primitives tour track definition',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n totalXp: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n completionXpBonus: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n completionBadgeKey: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n streakHoursWindow: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n streakBonusXp: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n steps: { type: StepModel, isArray: true, isOptional: false },\n },\n});\n\nconst TrackResponseModel = defineSchemaModel({\n name: 'PlatformTourTrackResponse',\n description: 'Response wrapper for platform tour track',\n fields: {\n track: { type: PlatformTourTrackModel, isOptional: false },\n },\n});\n\nconst RecordDemoEventInput = defineSchemaModel({\n name: 'PlatformTourRecordEventInput',\n description: 'Emit a demo event to advance platform tour steps',\n fields: {\n learnerId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n eventName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n payload: { type: ScalarTypeEnum.JSON(), isOptional: true },\n occurredAt: { type: ScalarTypeEnum.DateTime(), isOptional: true },\n },\n});\n\nconst SuccessModel = defineSchemaModel({\n name: 'PlatformTourSuccess',\n description: 'Generic success response',\n fields: {\n success: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n },\n});\n\nexport const GetPlatformTourTrack = defineQuery({\n meta: {\n key: 'learningJourney.platformTour.getTrack',\n version: '1.0.0',\n stability: 'experimental',\n owners: [...OWNERS],\n tags: ['learning', 'platform', 'tour'],\n description: 'Fetch platform primitives tour track definition.',\n goal: 'Expose track metadata to UIs and templates.',\n context: 'Called by Studio/Playground to render journey steps.',\n },\n io: {\n input: defineSchemaModel({\n name: 'PlatformTourTrackInput',\n description: 'Track input',\n fields: {},\n }),\n output: TrackResponseModel,\n },\n policy: { auth: 'user' },\n});\n\nexport const RecordPlatformTourEvent = defineCommand({\n meta: {\n key: 'learningJourney.platformTour.recordEvent',\n version: '1.0.0',\n stability: 'experimental',\n owners: [...OWNERS],\n tags: ['learning', 'platform', 'tour'],\n description: 'Record an event to advance platform tour progress.',\n goal: 'Advance steps via domain events in demo/sandbox contexts.',\n context:\n 'Called by handlers or demo scripts to emit step completion events.',\n },\n io: {\n input: RecordDemoEventInput,\n output: SuccessModel,\n },\n policy: { auth: 'user' },\n});\n\nexport const platformTourContracts = {\n GetPlatformTourTrack,\n RecordPlatformTourEvent,\n track: platformPrimitivesTourTrack,\n};\n"],"mappings":";;;;;AAKA,MAAM,SAAS,CAAC,0CAA0C;AAE1D,MAAM,YAAY,kBAAkB;CAClC,MAAM;CACN,aAAa;CACb,QAAQ;EACN,IAAI;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACjE,OAAO;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACpE,aAAa;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAM;EACzE,iBAAiB;GACf,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACb;EACD,cAAc;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAM;EAC1E,UAAU;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EACnE,OAAO;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EACjE;CACF,CAAC;AAEF,MAAa,yBAAyB,kBAAkB;CACtD,MAAM;CACN,aAAa;CACb,QAAQ;EACN,IAAI;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACjE,MAAM;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACnE,aAAa;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAM;EACzE,SAAS;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EAClE,mBAAmB;GACjB,MAAM,eAAe,cAAc;GACnC,YAAY;GACb;EACD,oBAAoB;GAClB,MAAM,eAAe,iBAAiB;GACtC,YAAY;GACb;EACD,mBAAmB;GACjB,MAAM,eAAe,cAAc;GACnC,YAAY;GACb;EACD,eAAe;GAAE,MAAM,eAAe,cAAc;GAAE,YAAY;GAAM;EACxE,OAAO;GAAE,MAAM;GAAW,SAAS;GAAM,YAAY;GAAO;EAC7D;CACF,CAAC;AAEF,MAAM,qBAAqB,kBAAkB;CAC3C,MAAM;CACN,aAAa;CACb,QAAQ,EACN,OAAO;EAAE,MAAM;EAAwB,YAAY;EAAO,EAC3D;CACF,CAAC;AAEF,MAAM,uBAAuB,kBAAkB;CAC7C,MAAM;CACN,aAAa;CACb,QAAQ;EACN,WAAW;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACxE,WAAW;GAAE,MAAM,eAAe,iBAAiB;GAAE,YAAY;GAAO;EACxE,SAAS;GAAE,MAAM,eAAe,MAAM;GAAE,YAAY;GAAM;EAC1D,YAAY;GAAE,MAAM,eAAe,UAAU;GAAE,YAAY;GAAM;EAClE;CACF,CAAC;AAEF,MAAM,eAAe,kBAAkB;CACrC,MAAM;CACN,aAAa;CACb,QAAQ,EACN,SAAS;EAAE,MAAM,eAAe,SAAS;EAAE,YAAY;EAAO,EAC/D;CACF,CAAC;AAEF,MAAa,uBAAuB,YAAY;CAC9C,MAAM;EACJ,KAAK;EACL,SAAS;EACT,WAAW;EACX,QAAQ,CAAC,GAAG,OAAO;EACnB,MAAM;GAAC;GAAY;GAAY;GAAO;EACtC,aAAa;EACb,MAAM;EACN,SAAS;EACV;CACD,IAAI;EACF,OAAO,kBAAkB;GACvB,MAAM;GACN,aAAa;GACb,QAAQ,EAAE;GACX,CAAC;EACF,QAAQ;EACT;CACD,QAAQ,EAAE,MAAM,QAAQ;CACzB,CAAC;AAEF,MAAa,0BAA0B,cAAc;CACnD,MAAM;EACJ,KAAK;EACL,SAAS;EACT,WAAW;EACX,QAAQ,CAAC,GAAG,OAAO;EACnB,MAAM;GAAC;GAAY;GAAY;GAAO;EACtC,aAAa;EACb,MAAM;EACN,SACE;EACH;CACD,IAAI;EACF,OAAO;EACP,QAAQ;EACT;CACD,QAAQ,EAAE,MAAM,QAAQ;CACzB,CAAC;AAEF,MAAa,wBAAwB;CACnC;CACA;CACA,OAAO;CACR"}
|
|
@@ -18,7 +18,7 @@ const baseMeta = {
|
|
|
18
18
|
const PlatformTourTrackPresentation = {
|
|
19
19
|
meta: {
|
|
20
20
|
key: "learning.journey.platform.track",
|
|
21
|
-
version: 1,
|
|
21
|
+
version: "1.0.0",
|
|
22
22
|
description: "Platform primitives tour track detail",
|
|
23
23
|
...baseMeta
|
|
24
24
|
},
|
|
@@ -37,7 +37,7 @@ const PlatformTourTrackPresentation = {
|
|
|
37
37
|
const PlatformTourWidgetPresentation = {
|
|
38
38
|
meta: {
|
|
39
39
|
key: "learning.journey.platform.widget",
|
|
40
|
-
version: 1,
|
|
40
|
+
version: "1.0.0",
|
|
41
41
|
description: "Compact widget for platform tour progress",
|
|
42
42
|
...baseMeta
|
|
43
43
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["baseMeta: Pick<\n PresentationSpecMeta,\n 'domain' | 'owners' | 'tags' | 'title' | 'stability' | 'goal' | 'context'\n>","PlatformTourTrackPresentation: PresentationSpec","PlatformTourWidgetPresentation: PresentationSpec"],"sources":["../../src/presentations/index.ts"],"sourcesContent":["import type {\n PresentationSpecMeta,\n PresentationSpec,\n} from '@contractspec/lib.contracts';\nimport { StabilityEnum } from '@contractspec/lib.contracts';\nimport { PlatformTourTrackModel } from '../operations';\n\nconst baseMeta: Pick<\n PresentationSpecMeta,\n 'domain' | 'owners' | 'tags' | 'title' | 'stability' | 'goal' | 'context'\n> = {\n domain: 'learning-journey',\n title: 'Platform Tour',\n owners: ['@examples.learning-journey.platform-tour'],\n tags: ['learning', 'platform', 'tour'],\n stability: StabilityEnum.Experimental,\n goal: 'Visualize platform tour progress',\n context: 'Used in platform tour dashboard and widgets',\n};\n\nexport const PlatformTourTrackPresentation: PresentationSpec = {\n meta: {\n key: 'learning.journey.platform.track',\n version: 1,\n description: 'Platform primitives tour track detail',\n ...baseMeta,\n },\n source: {\n type: 'component',\n framework: 'react',\n componentKey: 'LearningTrackDetail',\n props: PlatformTourTrackModel,\n },\n targets: ['react', 'markdown', 'application/json'],\n};\n\nexport const PlatformTourWidgetPresentation: PresentationSpec = {\n meta: {\n key: 'learning.journey.platform.widget',\n version: 1,\n description: 'Compact widget for platform tour progress',\n ...baseMeta,\n },\n source: {\n type: 'component',\n framework: 'react',\n componentKey: 'LearningTrackProgressWidget',\n },\n targets: ['react'],\n};\n\nexport const platformTourPresentations = [\n PlatformTourTrackPresentation,\n PlatformTourWidgetPresentation,\n];\n"],"mappings":";;;;AAOA,MAAMA,WAGF;CACF,QAAQ;CACR,OAAO;CACP,QAAQ,CAAC,2CAA2C;CACpD,MAAM;EAAC;EAAY;EAAY;EAAO;CACtC,WAAW,cAAc;CACzB,MAAM;CACN,SAAS;CACV;AAED,MAAaC,gCAAkD;CAC7D,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,GAAG;EACJ;CACD,QAAQ;EACN,MAAM;EACN,WAAW;EACX,cAAc;EACd,OAAO;EACR;CACD,SAAS;EAAC;EAAS;EAAY;EAAmB;CACnD;AAED,MAAaC,iCAAmD;CAC9D,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,GAAG;EACJ;CACD,QAAQ;EACN,MAAM;EACN,WAAW;EACX,cAAc;EACf;CACD,SAAS,CAAC,QAAQ;CACnB;AAED,MAAa,4BAA4B,CACvC,+BACA,+BACD"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["baseMeta: Pick<\n PresentationSpecMeta,\n 'domain' | 'owners' | 'tags' | 'title' | 'stability' | 'goal' | 'context'\n>","PlatformTourTrackPresentation: PresentationSpec","PlatformTourWidgetPresentation: PresentationSpec"],"sources":["../../src/presentations/index.ts"],"sourcesContent":["import type {\n PresentationSpecMeta,\n PresentationSpec,\n} from '@contractspec/lib.contracts';\nimport { StabilityEnum } from '@contractspec/lib.contracts';\nimport { PlatformTourTrackModel } from '../operations';\n\nconst baseMeta: Pick<\n PresentationSpecMeta,\n 'domain' | 'owners' | 'tags' | 'title' | 'stability' | 'goal' | 'context'\n> = {\n domain: 'learning-journey',\n title: 'Platform Tour',\n owners: ['@examples.learning-journey.platform-tour'],\n tags: ['learning', 'platform', 'tour'],\n stability: StabilityEnum.Experimental,\n goal: 'Visualize platform tour progress',\n context: 'Used in platform tour dashboard and widgets',\n};\n\nexport const PlatformTourTrackPresentation: PresentationSpec = {\n meta: {\n key: 'learning.journey.platform.track',\n version: '1.0.0',\n description: 'Platform primitives tour track detail',\n ...baseMeta,\n },\n source: {\n type: 'component',\n framework: 'react',\n componentKey: 'LearningTrackDetail',\n props: PlatformTourTrackModel,\n },\n targets: ['react', 'markdown', 'application/json'],\n};\n\nexport const PlatformTourWidgetPresentation: PresentationSpec = {\n meta: {\n key: 'learning.journey.platform.widget',\n version: '1.0.0',\n description: 'Compact widget for platform tour progress',\n ...baseMeta,\n },\n source: {\n type: 'component',\n framework: 'react',\n componentKey: 'LearningTrackProgressWidget',\n },\n targets: ['react'],\n};\n\nexport const platformTourPresentations = [\n PlatformTourTrackPresentation,\n PlatformTourWidgetPresentation,\n];\n"],"mappings":";;;;AAOA,MAAMA,WAGF;CACF,QAAQ;CACR,OAAO;CACP,QAAQ,CAAC,2CAA2C;CACpD,MAAM;EAAC;EAAY;EAAY;EAAO;CACtC,WAAW,cAAc;CACzB,MAAM;CACN,SAAS;CACV;AAED,MAAaC,gCAAkD;CAC7D,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,GAAG;EACJ;CACD,QAAQ;EACN,MAAM;EACN,WAAW;EACX,cAAc;EACd,OAAO;EACR;CACD,SAAS;EAAC;EAAS;EAAY;EAAmB;CACnD;AAED,MAAaC,iCAAmD;CAC9D,MAAM;EACJ,KAAK;EACL,SAAS;EACT,aAAa;EACb,GAAG;EACJ;CACD,QAAQ;EACN,MAAM;EACN,WAAW;EACX,cAAc;EACf;CACD,SAAS,CAAC,QAAQ;CACnB;AAED,MAAa,4BAA4B,CACvC,+BACA,+BACD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contractspec/example.learning-journey-platform-tour",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.45.0",
|
|
4
4
|
"description": "Learning journey track covering ContractSpec platform primitives.",
|
|
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
|
-
"@contractspec/lib.contracts": "1.
|
|
34
|
-
"@contractspec/lib.schema": "1.
|
|
35
|
-
"@contractspec/module.learning-journey": "1.
|
|
33
|
+
"@contractspec/lib.contracts": "1.45.0",
|
|
34
|
+
"@contractspec/lib.schema": "1.45.0",
|
|
35
|
+
"@contractspec/module.learning-journey": "1.45.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@contractspec/tool.tsdown": "1.
|
|
39
|
-
"@contractspec/tool.typescript": "1.
|
|
38
|
+
"@contractspec/tool.tsdown": "1.45.0",
|
|
39
|
+
"@contractspec/tool.typescript": "1.45.0",
|
|
40
40
|
"tsdown": "^0.18.3",
|
|
41
41
|
"typescript": "^5.9.3"
|
|
42
42
|
},
|
package/src/example.ts
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
'
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import type { ExampleSpec } from '@contractspec/lib.contracts';
|
|
2
|
+
|
|
3
|
+
const example: ExampleSpec = {
|
|
4
|
+
meta: {
|
|
5
|
+
key: 'learning-journey-platform-tour',
|
|
6
|
+
version: '1.0.0',
|
|
7
|
+
title: 'Learning Journey — Platform Tour',
|
|
8
|
+
description:
|
|
9
|
+
'Learning journey track + contracts + presentations for a platform tour.',
|
|
10
|
+
kind: 'template',
|
|
11
|
+
visibility: 'public',
|
|
12
|
+
stability: 'experimental',
|
|
13
|
+
owners: ['@platform.core'],
|
|
14
|
+
tags: ['learning', 'journey', 'platform-tour'],
|
|
15
|
+
},
|
|
9
16
|
docs: {
|
|
10
17
|
rootDocId: 'docs.examples.platform-tour',
|
|
11
18
|
goalDocId: 'docs.examples.platform-tour.goal',
|
|
@@ -21,6 +28,6 @@ const example = {
|
|
|
21
28
|
studio: { enabled: true, installable: true },
|
|
22
29
|
mcp: { enabled: true },
|
|
23
30
|
},
|
|
24
|
-
}
|
|
31
|
+
};
|
|
25
32
|
|
|
26
33
|
export default example;
|
|
@@ -12,7 +12,7 @@ import type { FeatureModuleSpec } from '@contractspec/lib.contracts';
|
|
|
12
12
|
export const LearningJourneyPlatformTourFeature: FeatureModuleSpec = {
|
|
13
13
|
meta: {
|
|
14
14
|
key: 'learning-journey-platform-tour',
|
|
15
|
-
version: 1,
|
|
15
|
+
version: '1.0.0',
|
|
16
16
|
title: 'Learning Journey: Platform Tour',
|
|
17
17
|
description:
|
|
18
18
|
'Platform primitives tour journey for exploring ContractSpec core features',
|
|
@@ -24,8 +24,8 @@ export const LearningJourneyPlatformTourFeature: FeatureModuleSpec = {
|
|
|
24
24
|
|
|
25
25
|
// All contract operations included in this feature
|
|
26
26
|
operations: [
|
|
27
|
-
{ key: 'learningJourney.platformTour.recordEvent', version: 1 },
|
|
28
|
-
{ key: 'learningJourney.platformTour.getTrack', version: 1 },
|
|
27
|
+
{ key: 'learningJourney.platformTour.recordEvent', version: '1.0.0' },
|
|
28
|
+
{ key: 'learningJourney.platformTour.getTrack', version: '1.0.0' },
|
|
29
29
|
],
|
|
30
30
|
|
|
31
31
|
// Events emitted by this feature
|
|
@@ -33,15 +33,15 @@ export const LearningJourneyPlatformTourFeature: FeatureModuleSpec = {
|
|
|
33
33
|
|
|
34
34
|
// Presentations associated with this feature
|
|
35
35
|
presentations: [
|
|
36
|
-
{ key: 'learning.journey.platform.track', version: 1 },
|
|
37
|
-
{ key: 'learning.journey.platform.widget', version: 1 },
|
|
36
|
+
{ key: 'learning.journey.platform.track', version: '1.0.0' },
|
|
37
|
+
{ key: 'learning.journey.platform.widget', version: '1.0.0' },
|
|
38
38
|
],
|
|
39
39
|
|
|
40
40
|
// Link operations to their primary presentations
|
|
41
41
|
opToPresentation: [
|
|
42
42
|
{
|
|
43
|
-
op: { key: 'learningJourney.platformTour.getTrack', version: 1 },
|
|
44
|
-
pres: { key: 'learning.journey.platform.track', version: 1 },
|
|
43
|
+
op: { key: 'learningJourney.platformTour.getTrack', version: '1.0.0' },
|
|
44
|
+
pres: { key: 'learning.journey.platform.track', version: '1.0.0' },
|
|
45
45
|
},
|
|
46
46
|
],
|
|
47
47
|
|
|
@@ -49,18 +49,18 @@ export const LearningJourneyPlatformTourFeature: FeatureModuleSpec = {
|
|
|
49
49
|
presentationsTargets: [
|
|
50
50
|
{
|
|
51
51
|
key: 'learning.journey.platform.track',
|
|
52
|
-
version: 1,
|
|
52
|
+
version: '1.0.0',
|
|
53
53
|
targets: ['react', 'markdown', 'application/json'],
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
56
|
key: 'learning.journey.platform.widget',
|
|
57
|
-
version: 1,
|
|
57
|
+
version: '1.0.0',
|
|
58
58
|
targets: ['react'],
|
|
59
59
|
},
|
|
60
60
|
],
|
|
61
61
|
|
|
62
62
|
// Capability requirements
|
|
63
63
|
capabilities: {
|
|
64
|
-
requires: [{ key: 'identity', version: 1 }],
|
|
64
|
+
requires: [{ key: 'identity', version: '1.0.0' }],
|
|
65
65
|
},
|
|
66
66
|
};
|
package/src/operations/index.ts
CHANGED
|
@@ -77,7 +77,7 @@ const SuccessModel = defineSchemaModel({
|
|
|
77
77
|
export const GetPlatformTourTrack = defineQuery({
|
|
78
78
|
meta: {
|
|
79
79
|
key: 'learningJourney.platformTour.getTrack',
|
|
80
|
-
version: 1,
|
|
80
|
+
version: '1.0.0',
|
|
81
81
|
stability: 'experimental',
|
|
82
82
|
owners: [...OWNERS],
|
|
83
83
|
tags: ['learning', 'platform', 'tour'],
|
|
@@ -99,7 +99,7 @@ export const GetPlatformTourTrack = defineQuery({
|
|
|
99
99
|
export const RecordPlatformTourEvent = defineCommand({
|
|
100
100
|
meta: {
|
|
101
101
|
key: 'learningJourney.platformTour.recordEvent',
|
|
102
|
-
version: 1,
|
|
102
|
+
version: '1.0.0',
|
|
103
103
|
stability: 'experimental',
|
|
104
104
|
owners: [...OWNERS],
|
|
105
105
|
tags: ['learning', 'platform', 'tour'],
|
|
@@ -21,7 +21,7 @@ const baseMeta: Pick<
|
|
|
21
21
|
export const PlatformTourTrackPresentation: PresentationSpec = {
|
|
22
22
|
meta: {
|
|
23
23
|
key: 'learning.journey.platform.track',
|
|
24
|
-
version: 1,
|
|
24
|
+
version: '1.0.0',
|
|
25
25
|
description: 'Platform primitives tour track detail',
|
|
26
26
|
...baseMeta,
|
|
27
27
|
},
|
|
@@ -37,7 +37,7 @@ export const PlatformTourTrackPresentation: PresentationSpec = {
|
|
|
37
37
|
export const PlatformTourWidgetPresentation: PresentationSpec = {
|
|
38
38
|
meta: {
|
|
39
39
|
key: 'learning.journey.platform.widget',
|
|
40
|
-
version: 1,
|
|
40
|
+
version: '1.0.0',
|
|
41
41
|
description: 'Compact widget for platform tour progress',
|
|
42
42
|
...baseMeta,
|
|
43
43
|
},
|