@lssm/example.learning-journey-crm-onboarding 0.0.0-canary-20251217062139 → 0.0.0-canary-20251217072406

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 (135) hide show
  1. package/.turbo/turbo-build$colon$bundle.log +219 -185
  2. package/.turbo/turbo-build.log +220 -22
  3. package/CHANGELOG.md +5 -5
  4. package/dist/contracts/index.js +178 -1
  5. package/dist/docs/crm-onboarding.docblock.js +42 -1
  6. package/dist/docs/index.js +1 -1
  7. package/dist/example.js +34 -1
  8. package/dist/handlers/demo.handlers.js +25 -1
  9. package/dist/index.js +9 -1
  10. package/dist/learning-journey-crm-onboarding.feature.js +66 -1
  11. package/dist/libs/contracts/dist/capabilities/openbanking.js +88 -1
  12. package/dist/libs/contracts/dist/client/index.js +5 -1
  13. package/dist/libs/contracts/dist/client/react/feature-render.js +2 -1
  14. package/dist/libs/contracts/dist/client/react/form-render.js +4 -1
  15. package/dist/libs/contracts/dist/client/react/index.js +4 -1
  16. package/dist/libs/contracts/dist/contract-registry/index.js +1 -1
  17. package/dist/libs/contracts/dist/contract-registry/schemas.js +60 -1
  18. package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +16 -76
  19. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +16 -350
  20. package/dist/libs/contracts/dist/docs/index.js +29 -1
  21. package/dist/libs/contracts/dist/docs/presentations.js +71 -1
  22. package/dist/libs/contracts/dist/docs/registry.js +44 -1
  23. package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +16 -383
  24. package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +16 -68
  25. package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +16 -140
  26. package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +16 -86
  27. package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +16 -1
  28. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +24 -2
  29. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +21 -2
  30. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +16 -213
  31. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +73 -5
  32. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +37 -1
  33. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +16 -1
  34. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +20 -262
  35. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +48 -1
  36. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +24 -2
  37. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +23 -2
  38. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +25 -16
  39. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +67 -1
  40. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +22 -2
  41. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +40 -36
  42. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +47 -1
  43. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +23 -2
  44. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +36 -3
  45. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +20 -1
  46. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +36 -3
  47. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +20 -1
  48. package/dist/libs/contracts/dist/events.js +1 -1
  49. package/dist/libs/contracts/dist/experiments/evaluator.js +1 -1
  50. package/dist/libs/contracts/dist/index.js +71 -1
  51. package/dist/libs/contracts/dist/install.js +2 -1
  52. package/dist/libs/contracts/dist/integrations/contracts.js +377 -1
  53. package/dist/libs/contracts/dist/integrations/index.js +18 -1
  54. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +228 -1
  55. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +159 -1
  56. package/dist/libs/contracts/dist/integrations/openbanking/contracts/index.js +3 -1
  57. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +210 -1
  58. package/dist/libs/contracts/dist/integrations/openbanking/models.js +242 -1
  59. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +13 -1
  60. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +52 -1
  61. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +75 -1
  62. package/dist/libs/contracts/dist/integrations/providers/gmail.js +87 -1
  63. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +66 -1
  64. package/dist/libs/contracts/dist/integrations/providers/index.js +11 -1
  65. package/dist/libs/contracts/dist/integrations/providers/mistral.js +68 -1
  66. package/dist/libs/contracts/dist/integrations/providers/postmark.js +68 -1
  67. package/dist/libs/contracts/dist/integrations/providers/powens.js +116 -1
  68. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +73 -1
  69. package/dist/libs/contracts/dist/integrations/providers/registry.js +10 -1
  70. package/dist/libs/contracts/dist/integrations/providers/stripe.js +83 -1
  71. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +61 -1
  72. package/dist/libs/contracts/dist/jsonschema.js +1 -1
  73. package/dist/libs/contracts/dist/knowledge/contracts.js +306 -1
  74. package/dist/libs/contracts/dist/knowledge/index.js +7 -1
  75. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +34 -1
  76. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +34 -1
  77. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +38 -1
  78. package/dist/libs/contracts/dist/knowledge/spaces/index.js +6 -1
  79. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +34 -1
  80. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +37 -1
  81. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +34 -1
  82. package/dist/libs/contracts/dist/llm/exporters.js +19 -1
  83. package/dist/libs/contracts/dist/llm/index.js +2 -1
  84. package/dist/libs/contracts/dist/llm/prompts.js +1 -1
  85. package/dist/libs/contracts/dist/onboarding-base.js +196 -1
  86. package/dist/libs/contracts/dist/openapi.js +1 -1
  87. package/dist/libs/contracts/dist/ownership.js +21 -1
  88. package/dist/libs/contracts/dist/presentations.js +1 -1
  89. package/dist/libs/contracts/dist/presentations.v2.js +11 -1
  90. package/dist/libs/contracts/dist/prompt.js +1 -1
  91. package/dist/libs/contracts/dist/promptRegistry.js +1 -1
  92. package/dist/libs/contracts/dist/regenerator/index.js +1 -1
  93. package/dist/libs/contracts/dist/regenerator/service.js +6 -1
  94. package/dist/libs/contracts/dist/registry.js +2 -1
  95. package/dist/libs/contracts/dist/resources.js +1 -1
  96. package/dist/libs/contracts/dist/schema/dist/EnumType.js +2 -1
  97. package/dist/libs/contracts/dist/schema/dist/FieldType.js +49 -1
  98. package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +236 -1
  99. package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +34 -1
  100. package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +1 -1
  101. package/dist/libs/contracts/dist/schema/dist/entity/index.js +2 -1
  102. package/dist/libs/contracts/dist/schema/dist/entity/types.js +1 -1
  103. package/dist/libs/contracts/dist/schema/dist/index.js +6 -1
  104. package/dist/libs/contracts/dist/server/graphql-pothos.js +6 -1
  105. package/dist/libs/contracts/dist/server/index.js +8 -1
  106. package/dist/libs/contracts/dist/server/mcp/createMcpServer.js +4 -1
  107. package/dist/libs/contracts/dist/server/mcp/registerPresentations.js +2 -1
  108. package/dist/libs/contracts/dist/server/mcp/registerPrompts.js +1 -1
  109. package/dist/libs/contracts/dist/server/mcp/registerResources.js +2 -1
  110. package/dist/libs/contracts/dist/server/mcp/registerTools.js +1 -1
  111. package/dist/libs/contracts/dist/server/provider-mcp.js +1 -1
  112. package/dist/libs/contracts/dist/server/rest-elysia.js +1 -1
  113. package/dist/libs/contracts/dist/server/rest-express.js +1 -1
  114. package/dist/libs/contracts/dist/server/rest-generic.js +1 -1
  115. package/dist/libs/contracts/dist/server/rest-next-app.js +1 -1
  116. package/dist/libs/contracts/dist/server/rest-next-pages.js +1 -1
  117. package/dist/libs/contracts/dist/spec.js +34 -1
  118. package/dist/libs/contracts/dist/telemetry/index.js +1 -1
  119. package/dist/libs/contracts/dist/telemetry/tracker.js +1 -1
  120. package/dist/libs/contracts/dist/tests/index.js +1 -1
  121. package/dist/libs/contracts/dist/tests/runner.js +2 -1
  122. package/dist/libs/contracts/dist/workflow/index.js +1 -1
  123. package/dist/libs/contracts/dist/workflow/runner.js +1 -1
  124. package/dist/libs/schema/dist/EnumType.js +2 -1
  125. package/dist/libs/schema/dist/FieldType.js +49 -1
  126. package/dist/libs/schema/dist/ScalarTypeEnum.js +236 -1
  127. package/dist/libs/schema/dist/SchemaModel.js +39 -1
  128. package/dist/libs/schema/dist/entity/defineEntity.js +1 -1
  129. package/dist/libs/schema/dist/entity/index.js +2 -1
  130. package/dist/libs/schema/dist/entity/types.js +1 -1
  131. package/dist/libs/schema/dist/index.js +6 -1
  132. package/dist/presentations/index.js +49 -1
  133. package/dist/track.js +98 -1
  134. package/package.json +7 -7
  135. package/tsconfig.tsbuildinfo +1 -1
@@ -1,22 +1,220 @@
1
-
2
- $ bun build:bundle && bun build:types
3
- $ tsdown
4
- ℹ tsdown v0.17.4 powered by rolldown v1.0.0-beta.53
5
- ℹ config file: /Users/tboutron/Documents/clients/lssm/monorepo-lssm/packages/contractspec/packages/examples/learning-journey-crm-onboarding/tsdown.config.js (unrun)
6
- ℹ entry: src/example.ts, src/index.ts, src/learning-journey-crm-onboarding.feature.ts, src/track.ts, src/docs/crm-onboarding.docblock.ts, src/docs/index.ts, src/handlers/demo.handlers.ts, src/presentations/index.ts, src/contracts/index.ts
7
- ℹ target: esnext
8
- ℹ tsconfig: tsconfig.json
9
- ℹ Build start
10
- ℹ Cleaning 13 files
11
- ℹ dist/contracts/index.js 2.79 kB │ gzip: 0.92 kB
12
- ℹ dist/track.js 1.94 kB │ gzip: 0.69 kB
13
- ℹ dist/docs/crm-onboarding.docblock.js 1.27 kB │ gzip: 0.67 kB
14
- ℹ dist/index.js 1.05 kB │ gzip: 0.35 kB
15
- ℹ dist/learning-journey-crm-onboarding.feature.js 1.01 kB │ gzip: 0.41 kB
16
- ℹ dist/presentations/index.js 0.77 kB │ gzip: 0.37 kB
17
- ℹ dist/example.js 0.55 kB │ gzip: 0.35 kB
18
- ℹ dist/handlers/demo.handlers.js 0.41 kB │ gzip: 0.26 kB
19
- ℹ dist/docs/index.js 0.04 kB │ gzip: 0.06 kB
20
- ℹ 9 files, total: 9.82 kB
21
- ✔ Build complete in 114ms
22
- $ tsc --noEmit
1
+ $ bun build:bundle && bun build:types
2
+ $ tsdown
3
+ ℹ tsdown v0.17.4 powered by rolldown v1.0.0-beta.53
4
+ ℹ config file: /home/runner/work/contractspec/contractspec/packages/examples/learning-journey-crm-onboarding/tsdown.config.js
5
+ ℹ entry: src/example.ts, src/index.ts, src/learning-journey-crm-onboarding.feature.ts, src/track.ts, src/contracts/index.ts, src/docs/crm-onboarding.docblock.ts, src/docs/index.ts, src/handlers/demo.handlers.ts, src/presentations/index.ts
6
+ ℹ target: esnext
7
+ ℹ tsconfig: tsconfig.json
8
+ ℹ Build start
9
+ ℹ dist/contracts/index.js  4.34 kB │ gzip: 1.07 kB
10
+ ℹ dist/track.js  2.46 kB │ gzip: 0.78 kB
11
+ ℹ dist/docs/crm-onboarding.docblock.js  1.46 kB │ gzip: 0.74 kB
12
+ ℹ dist/learning-journey-crm-onboarding.feature.js  1.45 kB │ gzip: 0.54 kB
13
+ ℹ dist/presentations/index.js  1.15 kB │ gzip: 0.44 kB
14
+ ℹ dist/index.js  1.00 kB │ gzip: 0.30 kB
15
+ ℹ dist/example.js  0.76 kB │ gzip: 0.43 kB
16
+ ℹ dist/handlers/demo.handlers.js  0.73 kB │ gzip: 0.37 kB
17
+ ℹ dist/docs/index.js  0.04 kB │ gzip: 0.06 kB
18
+ ℹ dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js 16.91 kB │ gzip: 7.23 kB
19
+ ℹ dist/libs/contracts/dist/docs/tech/schema/README.docblock.js 11.21 kB │ gzip: 4.33 kB
20
+ ℹ dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js  9.96 kB │ gzip: 3.83 kB
21
+ ℹ dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js  9.53 kB │ gzip: 3.50 kB
22
+ ℹ dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js  9.22 kB │ gzip: 2.77 kB
23
+ ℹ dist/libs/contracts/dist/integrations/contracts.js  9.12 kB │ gzip: 1.39 kB
24
+ ℹ dist/libs/contracts/dist/knowledge/contracts.js  7.22 kB │ gzip: 1.33 kB
25
+ ℹ dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js  6.50 kB │ gzip: 1.33 kB
26
+ ℹ dist/libs/schema/dist/ScalarTypeEnum.js  6.48 kB │ gzip: 1.32 kB
27
+ ℹ dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js  6.16 kB │ gzip: 2.65 kB
28
+ ℹ dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js  6.04 kB │ gzip: 1.50 kB
29
+ ℹ dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js  5.85 kB │ gzip: 2.66 kB
30
+ ℹ dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js  5.66 kB │ gzip: 2.34 kB
31
+ ℹ dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js  5.46 kB │ gzip: 1.35 kB
32
+ ℹ dist/libs/contracts/dist/onboarding-base.js  5.32 kB │ gzip: 1.27 kB
33
+ ℹ dist/libs/contracts/dist/integrations/openbanking/models.js  5.19 kB │ gzip: 0.77 kB
34
+ ℹ dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js  4.62 kB │ gzip: 2.13 kB
35
+ ℹ dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js  4.35 kB │ gzip: 1.21 kB
36
+ ℹ dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js  4.16 kB │ gzip: 1.78 kB
37
+ ℹ dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js  3.85 kB │ gzip: 1.47 kB
38
+ ℹ dist/libs/contracts/dist/docs/PUBLISHING.docblock.js  3.62 kB │ gzip: 1.65 kB
39
+ ℹ dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js  3.60 kB │ gzip: 1.53 kB
40
+ ℹ dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js  3.33 kB │ gzip: 1.47 kB
41
+ ℹ dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js  3.30 kB │ gzip: 1.42 kB
42
+ ℹ dist/libs/contracts/dist/index.js  3.25 kB │ gzip: 0.84 kB
43
+ ℹ dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js  3.25 kB │ gzip: 1.59 kB
44
+ ℹ dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js  3.13 kB │ gzip: 1.47 kB
45
+ ℹ dist/libs/contracts/dist/integrations/providers/powens.js  3.03 kB │ gzip: 1.16 kB
46
+ ℹ dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js  2.97 kB │ gzip: 1.38 kB
47
+ ℹ dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js  2.75 kB │ gzip: 1.22 kB
48
+ ℹ dist/libs/contracts/dist/capabilities/openbanking.js  2.66 kB │ gzip: 0.77 kB
49
+ ℹ dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js  2.40 kB │ gzip: 1.13 kB
50
+ ℹ dist/libs/contracts/dist/integrations/providers/gmail.js  2.18 kB │ gzip: 0.92 kB
51
+ ℹ dist/libs/contracts/dist/docs/presentations.js  2.18 kB │ gzip: 0.77 kB
52
+ ℹ dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js  2.13 kB │ gzip: 1.02 kB
53
+ ℹ dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js  2.04 kB │ gzip: 0.97 kB
54
+ ℹ dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js  1.96 kB │ gzip: 0.97 kB
55
+ ℹ dist/libs/contracts/dist/integrations/providers/gcs-storage.js  1.90 kB │ gzip: 0.85 kB
56
+ ℹ dist/libs/contracts/dist/integrations/providers/stripe.js  1.88 kB │ gzip: 0.84 kB
57
+ ℹ dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js  1.85 kB │ gzip: 0.87 kB
58
+ ℹ dist/libs/contracts/dist/integrations/providers/qdrant.js  1.83 kB │ gzip: 0.85 kB
59
+ ℹ dist/libs/contracts/dist/contract-registry/schemas.js  1.80 kB │ gzip: 0.58 kB
60
+ ℹ dist/libs/contracts/dist/integrations/providers/google-calendar.js  1.74 kB │ gzip: 0.78 kB
61
+ ℹ dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js  1.73 kB │ gzip: 0.82 kB
62
+ ℹ dist/libs/contracts/dist/integrations/providers/postmark.js  1.70 kB │ gzip: 0.77 kB
63
+ ℹ dist/libs/contracts/dist/integrations/providers/mistral.js  1.63 kB │ gzip: 0.74 kB
64
+ ℹ dist/libs/contracts/dist/docs/index.js  1.58 kB │ gzip: 0.51 kB
65
+ ℹ dist/libs/contracts/dist/integrations/providers/twilio-sms.js  1.52 kB │ gzip: 0.71 kB
66
+ ℹ dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js  1.46 kB │ gzip: 0.77 kB
67
+ ℹ dist/libs/contracts/dist/integrations/providers/elevenlabs.js  1.44 kB │ gzip: 0.70 kB
68
+ ℹ dist/libs/contracts/dist/schema/dist/FieldType.js  1.34 kB │ gzip: 0.62 kB
69
+ ℹ dist/libs/schema/dist/FieldType.js  1.32 kB │ gzip: 0.61 kB
70
+ ℹ dist/libs/contracts/dist/docs/registry.js  1.25 kB │ gzip: 0.56 kB
71
+ ℹ dist/libs/schema/dist/SchemaModel.js  1.17 kB │ gzip: 0.61 kB
72
+ ℹ dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js  1.14 kB │ gzip: 0.65 kB
73
+ ℹ dist/libs/contracts/dist/knowledge/spaces/financial-overview.js  1.10 kB │ gzip: 0.61 kB
74
+ ℹ dist/libs/contracts/dist/schema/dist/SchemaModel.js  0.97 kB │ gzip: 0.53 kB
75
+ ℹ dist/libs/contracts/dist/knowledge/spaces/email-threads.js  0.96 kB │ gzip: 0.52 kB
76
+ ℹ dist/libs/contracts/dist/knowledge/spaces/financial-docs.js  0.95 kB │ gzip: 0.52 kB
77
+ ℹ dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js  0.95 kB │ gzip: 0.53 kB
78
+ ℹ dist/libs/contracts/dist/knowledge/spaces/support-faq.js  0.94 kB │ gzip: 0.52 kB
79
+ ℹ dist/libs/contracts/dist/knowledge/spaces/product-canon.js  0.94 kB │ gzip: 0.52 kB
80
+ ℹ dist/libs/contracts/dist/integrations/index.js  0.78 kB │ gzip: 0.27 kB
81
+ ℹ dist/libs/contracts/dist/spec.js  0.65 kB │ gzip: 0.31 kB
82
+ ℹ dist/libs/contracts/dist/integrations/openbanking/telemetry.js  0.57 kB │ gzip: 0.26 kB
83
+ ℹ dist/libs/contracts/dist/ownership.js  0.56 kB │ gzip: 0.30 kB
84
+ ℹ dist/libs/contracts/dist/llm/exporters.js  0.42 kB │ gzip: 0.24 kB
85
+ ℹ dist/libs/contracts/dist/presentations.v2.js  0.32 kB │ gzip: 0.24 kB
86
+ ℹ dist/libs/contracts/dist/integrations/providers/index.js  0.27 kB │ gzip: 0.13 kB
87
+ ℹ dist/libs/schema/dist/index.js  0.25 kB │ gzip: 0.13 kB
88
+ ℹ dist/libs/contracts/dist/knowledge/index.js  0.25 kB │ gzip: 0.12 kB
89
+ ℹ dist/libs/contracts/dist/integrations/providers/registry.js  0.24 kB │ gzip: 0.12 kB
90
+ ℹ dist/libs/contracts/dist/server/index.js  0.24 kB │ gzip: 0.13 kB
91
+ ℹ dist/libs/contracts/dist/server/graphql-pothos.js  0.20 kB │ gzip: 0.11 kB
92
+ ℹ dist/libs/contracts/dist/knowledge/spaces/index.js  0.18 kB │ gzip: 0.11 kB
93
+ ℹ dist/libs/contracts/dist/schema/dist/index.js  0.17 kB │ gzip: 0.10 kB
94
+ ℹ dist/libs/contracts/dist/regenerator/service.js  0.14 kB │ gzip: 0.14 kB
95
+ ℹ dist/libs/contracts/dist/server/mcp/createMcpServer.js  0.13 kB │ gzip: 0.08 kB
96
+ ℹ dist/libs/contracts/dist/contract-registry/index.js  0.12 kB │ gzip: 0.09 kB
97
+ ℹ dist/libs/contracts/dist/client/index.js  0.11 kB │ gzip: 0.08 kB
98
+ ℹ dist/libs/contracts/dist/client/react/form-render.js  0.10 kB │ gzip: 0.09 kB
99
+ ℹ dist/libs/contracts/dist/registry.js  0.10 kB │ gzip: 0.10 kB
100
+ ℹ dist/libs/contracts/dist/integrations/openbanking/contracts/index.js  0.08 kB │ gzip: 0.07 kB
101
+ ℹ dist/libs/contracts/dist/client/react/index.js  0.07 kB │ gzip: 0.07 kB
102
+ ℹ dist/libs/contracts/dist/server/mcp/registerResources.js  0.07 kB │ gzip: 0.09 kB
103
+ ℹ dist/libs/contracts/dist/server/mcp/registerPresentations.js  0.07 kB │ gzip: 0.06 kB
104
+ ℹ dist/libs/contracts/dist/client/react/feature-render.js  0.05 kB │ gzip: 0.07 kB
105
+ ℹ dist/libs/contracts/dist/schema/dist/entity/index.js  0.05 kB │ gzip: 0.06 kB
106
+ ℹ dist/libs/schema/dist/entity/index.js  0.05 kB │ gzip: 0.06 kB
107
+ ℹ dist/libs/contracts/dist/llm/index.js  0.05 kB │ gzip: 0.05 kB
108
+ ℹ dist/libs/contracts/dist/tests/runner.js  0.04 kB │ gzip: 0.06 kB
109
+ ℹ dist/libs/contracts/dist/install.js  0.04 kB │ gzip: 0.05 kB
110
+ ℹ dist/libs/contracts/dist/server/provider-mcp.js  0.04 kB │ gzip: 0.06 kB
111
+ ℹ dist/libs/contracts/dist/events.js  0.03 kB │ gzip: 0.05 kB
112
+ ℹ dist/libs/contracts/dist/schema/dist/EnumType.js  0.03 kB │ gzip: 0.05 kB
113
+ ℹ dist/libs/schema/dist/EnumType.js  0.03 kB │ gzip: 0.05 kB
114
+ ℹ dist/libs/contracts/dist/server/mcp/registerTools.js  0.03 kB │ gzip: 0.05 kB
115
+ ℹ dist/libs/contracts/dist/server/rest-elysia.js  0.03 kB │ gzip: 0.05 kB
116
+ ℹ dist/libs/contracts/dist/server/rest-express.js  0.03 kB │ gzip: 0.05 kB
117
+ ℹ dist/libs/contracts/dist/server/rest-next-app.js  0.03 kB │ gzip: 0.05 kB
118
+ ℹ dist/libs/contracts/dist/server/rest-next-pages.js  0.03 kB │ gzip: 0.05 kB
119
+ ℹ dist/libs/contracts/dist/server/rest-generic.js  0.03 kB │ gzip: 0.05 kB
120
+ ℹ dist/libs/contracts/dist/openapi.js  0.03 kB │ gzip: 0.05 kB
121
+ ℹ dist/libs/contracts/dist/llm/prompts.js  0.03 kB │ gzip: 0.04 kB
122
+ ℹ dist/libs/contracts/dist/regenerator/index.js  0.02 kB │ gzip: 0.04 kB
123
+ ℹ dist/libs/contracts/dist/telemetry/index.js  0.02 kB │ gzip: 0.04 kB
124
+ ℹ dist/libs/contracts/dist/experiments/evaluator.js  0.02 kB │ gzip: 0.04 kB
125
+ ℹ dist/libs/contracts/dist/tests/index.js  0.02 kB │ gzip: 0.04 kB
126
+ ℹ dist/libs/contracts/dist/workflow/index.js  0.02 kB │ gzip: 0.04 kB
127
+ ℹ dist/libs/contracts/dist/workflow/runner.js  0.02 kB │ gzip: 0.04 kB
128
+ ℹ dist/libs/contracts/dist/jsonschema.js  0.02 kB │ gzip: 0.04 kB
129
+ ℹ dist/libs/contracts/dist/presentations.js  0.02 kB │ gzip: 0.04 kB
130
+ ℹ dist/libs/contracts/dist/server/mcp/registerPrompts.js  0.02 kB │ gzip: 0.04 kB
131
+ ℹ dist/libs/contracts/dist/telemetry/tracker.js  0.02 kB │ gzip: 0.04 kB
132
+ ℹ dist/libs/contracts/dist/prompt.js  0.01 kB │ gzip: 0.03 kB
133
+ ℹ dist/libs/contracts/dist/promptRegistry.js  0.01 kB │ gzip: 0.03 kB
134
+ ℹ dist/libs/contracts/dist/resources.js  0.01 kB │ gzip: 0.03 kB
135
+ ℹ dist/libs/contracts/dist/schema/dist/entity/defineEntity.js  0.01 kB │ gzip: 0.03 kB
136
+ ℹ dist/libs/contracts/dist/schema/dist/entity/types.js  0.01 kB │ gzip: 0.03 kB
137
+ ℹ dist/libs/schema/dist/entity/defineEntity.js  0.01 kB │ gzip: 0.03 kB
138
+ ℹ dist/libs/schema/dist/entity/types.js  0.01 kB │ gzip: 0.03 kB
139
+ ℹ dist/contracts/index.d.ts  8.12 kB │ gzip: 0.89 kB
140
+ ℹ dist/example.d.ts  0.99 kB │ gzip: 0.42 kB
141
+ ℹ dist/index.d.ts  0.97 kB │ gzip: 0.29 kB
142
+ ℹ dist/handlers/demo.handlers.d.ts  0.91 kB │ gzip: 0.38 kB
143
+ ℹ dist/presentations/index.d.ts  0.43 kB │ gzip: 0.19 kB
144
+ ℹ dist/learning-journey-crm-onboarding.feature.d.ts  0.38 kB │ gzip: 0.24 kB
145
+ ℹ dist/track.d.ts  0.29 kB │ gzip: 0.17 kB
146
+ ℹ dist/docs/crm-onboarding.docblock.d.ts  0.01 kB │ gzip: 0.03 kB
147
+ ℹ dist/docs/index.d.ts  0.01 kB │ gzip: 0.03 kB
148
+ ℹ 139 files, total: 258.22 kB
149
+ [UNRESOLVED_IMPORT] Warning: Could not resolve 'turndown' in ../../libs/contracts/dist/presentations.v2.js
150
+ ╭─[ ../../libs/contracts/dist/presentations.v2.js:3:29 ]
151
+ │
152
+ 3 │ import TurndownService from "turndown";
153
+  │ ─────┬────
154
+  │ ╰────── Module not found, treating it as an external dependency
155
+  │
156
+  │ Help: The "main" field here was ignored. Main fields must be configured explicitly when using the "neutral" platform.
157
+ ───╯
158
+
159
+ [UNRESOLVED_IMPORT] Warning: Could not resolve 'node:assert' in ../../libs/contracts/dist/tests/runner.js
160
+ ╭─[ ../../libs/contracts/dist/tests/runner.js:2:33 ]
161
+ │
162
+ 2 │ import { deepStrictEqual } from "node:assert";
163
+  │ ──────┬──────
164
+  │ ╰──────── Module not found, treating it as an external dependency
165
+  │
166
+  │ Help: The "main" field here was ignored. Main fields must be configured explicitly when using the "neutral" platform.
167
+ ───╯
168
+
169
+ [UNRESOLVED_IMPORT] Warning: Could not resolve 'node:timers/promises' in ../../libs/contracts/dist/regenerator/service.js
170
+ ╭─[ ../../libs/contracts/dist/regenerator/service.js:2:28 ]
171
+ │
172
+ 2 │ import { setTimeout } from "node:timers/promises";
173
+  │ ───────────┬──────────
174
+  │ ╰──────────── Module not found, treating it as an external dependency
175
+  │
176
+  │ Help: The "main" field here was ignored. Main fields must be configured explicitly when using the "neutral" platform.
177
+ ───╯
178
+
179
+ [UNRESOLVED_IMPORT] Warning: Could not resolve 'node:crypto' in ../../libs/contracts/dist/experiments/evaluator.js
180
+ ╭─[ ../../libs/contracts/dist/experiments/evaluator.js:1:28 ]
181
+ │
182
+ 1 │ import { createHash } from "node:crypto";
183
+  │ ──────┬──────
184
+  │ ╰──────── Module not found, treating it as an external dependency
185
+  │
186
+  │ Help: The "main" field here was ignored. Main fields must be configured explicitly when using the "neutral" platform.
187
+ ───╯
188
+
189
+ [UNRESOLVED_IMPORT] Warning: Could not resolve 'node:crypto' in ../../libs/contracts/dist/workflow/runner.js
190
+ ╭─[ ../../libs/contracts/dist/workflow/runner.js:2:28 ]
191
+ │
192
+ 2 │ import { randomUUID } from "node:crypto";
193
+  │ ──────┬──────
194
+  │ ╰──────── Module not found, treating it as an external dependency
195
+  │
196
+  │ Help: The "main" field here was ignored. Main fields must be configured explicitly when using the "neutral" platform.
197
+ ───╯
198
+
199
+ [UNRESOLVED_IMPORT] Warning: Could not resolve 'crypto' in ../../libs/contracts/dist/telemetry/tracker.js
200
+ ╭─[ ../../libs/contracts/dist/telemetry/tracker.js:1:28 ]
201
+ │
202
+ 1 │ import { randomUUID } from "crypto";
203
+  │ ────┬───
204
+  │ ╰───── Module not found, treating it as an external dependency
205
+  │
206
+  │ Help: The "main" field here was ignored. Main fields must be configured explicitly when using the "neutral" platform.
207
+ ───╯
208
+
209
+ [UNRESOLVED_IMPORT] Warning: Could not resolve 'node:buffer' in ../../libs/contracts/dist/server/mcp/registerResources.js
210
+ ╭─[ ../../libs/contracts/dist/server/mcp/registerResources.js:2:24 ]
211
+ │
212
+ 2 │ import { Buffer } from "node:buffer";
213
+  │ ──────┬──────
214
+  │ ╰──────── Module not found, treating it as an external dependency
215
+  │
216
+  │ Help: The "main" field here was ignored. Main fields must be configured explicitly when using the "neutral" platform.
217
+ ───╯
218
+
219
+ ✔ Build complete in 35012ms
220
+ $ tsc --noEmit
package/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @lssm/example.learning-journey-crm-onboarding
2
2
 
3
- ## 0.0.0-canary-20251217062139
3
+ ## 0.0.0-canary-20251217072406
4
4
 
5
5
  ### Minor Changes
6
6
 
@@ -9,7 +9,7 @@
9
9
  ### Patch Changes
10
10
 
11
11
  - Updated dependencies [66a5dfd]
12
- - @lssm/example.crm-pipeline@0.0.0-canary-20251217062139
13
- - @lssm/lib.contracts@0.0.0-canary-20251217062139
14
- - @lssm/lib.schema@0.0.0-canary-20251217062139
15
- - @lssm/module.learning-journey@0.0.0-canary-20251217062139
12
+ - @lssm/example.crm-pipeline@0.0.0-canary-20251217072406
13
+ - @lssm/lib.contracts@0.0.0-canary-20251217072406
14
+ - @lssm/lib.schema@0.0.0-canary-20251217072406
15
+ - @lssm/module.learning-journey@0.0.0-canary-20251217072406
@@ -1 +1,178 @@
1
- import{crmFirstWinTrack as e}from"../track.js";import{l as t}from"../libs/schema/dist/ScalarTypeEnum.js";import{n}from"../libs/schema/dist/SchemaModel.js";import"../libs/schema/dist/index.js";import{n as r,t as i}from"../libs/contracts/dist/spec.js";import"../libs/contracts/dist/index.js";const a=[`examples.learning-journey.crm-onboarding`],o=n({name:`CrmOnboardingStep`,description:`Step metadata for CRM first win journey`,fields:{id:{type:t.String_unsecure(),isOptional:!1},title:{type:t.String_unsecure(),isOptional:!1},description:{type:t.String_unsecure(),isOptional:!0},completionEvent:{type:t.String_unsecure(),isOptional:!1},sourceModule:{type:t.String_unsecure(),isOptional:!0},xpReward:{type:t.Int_unsecure(),isOptional:!0},order:{type:t.Int_unsecure(),isOptional:!0}}}),s=n({name:`CrmOnboardingTrack`,description:`CRM onboarding track definition`,fields:{id:{type:t.String_unsecure(),isOptional:!1},name:{type:t.String_unsecure(),isOptional:!1},description:{type:t.String_unsecure(),isOptional:!0},totalXp:{type:t.Int_unsecure(),isOptional:!0},completionXpBonus:{type:t.Int_unsecure(),isOptional:!0},completionBadgeKey:{type:t.String_unsecure(),isOptional:!0},streakHoursWindow:{type:t.Int_unsecure(),isOptional:!0},streakBonusXp:{type:t.Int_unsecure(),isOptional:!0},steps:{type:o,isArray:!0,isOptional:!1}}}),c=n({name:`CrmOnboardingTrackResponse`,description:`Response wrapper for CRM onboarding track`,fields:{track:{type:s,isOptional:!1}}}),l=n({name:`CrmOnboardingRecordEventInput`,description:`Emit a demo event to advance CRM onboarding steps`,fields:{learnerId:{type:t.String_unsecure(),isOptional:!1},eventName:{type:t.String_unsecure(),isOptional:!1},payload:{type:t.JSON(),isOptional:!0},occurredAt:{type:t.DateTime(),isOptional:!0}}}),u=n({name:`CrmOnboardingSuccess`,description:`Generic success response`,fields:{success:{type:t.Boolean(),isOptional:!1}}}),d=r({meta:{name:`learningJourney.crmOnboarding.getTrack`,version:1,stability:`experimental`,owners:[...a],tags:[`learning`,`crm`,`onboarding`],description:`Fetch CRM first win track definition.`,goal:`Expose track metadata to UIs and templates.`,context:`Called by Studio/Playground to render journey steps.`},io:{input:n({name:`CrmOnboardingTrackInput`,description:`Track input`,fields:{}}),output:c},policy:{auth:`user`}}),f=i({meta:{name:`learningJourney.crmOnboarding.recordEvent`,version:1,stability:`experimental`,owners:[...a],tags:[`learning`,`crm`,`onboarding`],description:`Record an event to advance CRM onboarding progress.`,goal:`Advance steps via domain events in demo/sandbox contexts.`,context:`Called by handlers or demo scripts to emit step completion events.`},io:{input:l,output:u},policy:{auth:`user`}}),p={GetCrmOnboardingTrack:d,RecordCrmOnboardingEvent:f,track:e};export{s as CrmOnboardingTrackModel,d as GetCrmOnboardingTrack,f as RecordCrmOnboardingEvent,p as crmOnboardingContracts};
1
+ import { crmFirstWinTrack } from "../track.js";
2
+ import { ScalarTypeEnum } from "../libs/schema/dist/ScalarTypeEnum.js";
3
+ import { defineSchemaModel } from "../libs/schema/dist/SchemaModel.js";
4
+ import "../libs/schema/dist/index.js";
5
+ import { defineCommand, defineQuery } from "../libs/contracts/dist/spec.js";
6
+ import "../libs/contracts/dist/index.js";
7
+
8
+ //#region src/contracts/index.ts
9
+ const OWNERS = ["examples.learning-journey.crm-onboarding"];
10
+ const StepModel = defineSchemaModel({
11
+ name: "CrmOnboardingStep",
12
+ description: "Step metadata for CRM first win journey",
13
+ fields: {
14
+ id: {
15
+ type: ScalarTypeEnum.String_unsecure(),
16
+ isOptional: false
17
+ },
18
+ title: {
19
+ type: ScalarTypeEnum.String_unsecure(),
20
+ isOptional: false
21
+ },
22
+ description: {
23
+ type: ScalarTypeEnum.String_unsecure(),
24
+ isOptional: true
25
+ },
26
+ completionEvent: {
27
+ type: ScalarTypeEnum.String_unsecure(),
28
+ isOptional: false
29
+ },
30
+ sourceModule: {
31
+ type: ScalarTypeEnum.String_unsecure(),
32
+ isOptional: true
33
+ },
34
+ xpReward: {
35
+ type: ScalarTypeEnum.Int_unsecure(),
36
+ isOptional: true
37
+ },
38
+ order: {
39
+ type: ScalarTypeEnum.Int_unsecure(),
40
+ isOptional: true
41
+ }
42
+ }
43
+ });
44
+ const CrmOnboardingTrackModel = defineSchemaModel({
45
+ name: "CrmOnboardingTrack",
46
+ description: "CRM onboarding track definition",
47
+ fields: {
48
+ id: {
49
+ type: ScalarTypeEnum.String_unsecure(),
50
+ isOptional: false
51
+ },
52
+ name: {
53
+ type: ScalarTypeEnum.String_unsecure(),
54
+ isOptional: false
55
+ },
56
+ description: {
57
+ type: ScalarTypeEnum.String_unsecure(),
58
+ isOptional: true
59
+ },
60
+ totalXp: {
61
+ type: ScalarTypeEnum.Int_unsecure(),
62
+ isOptional: true
63
+ },
64
+ completionXpBonus: {
65
+ type: ScalarTypeEnum.Int_unsecure(),
66
+ isOptional: true
67
+ },
68
+ completionBadgeKey: {
69
+ type: ScalarTypeEnum.String_unsecure(),
70
+ isOptional: true
71
+ },
72
+ streakHoursWindow: {
73
+ type: ScalarTypeEnum.Int_unsecure(),
74
+ isOptional: true
75
+ },
76
+ streakBonusXp: {
77
+ type: ScalarTypeEnum.Int_unsecure(),
78
+ isOptional: true
79
+ },
80
+ steps: {
81
+ type: StepModel,
82
+ isArray: true,
83
+ isOptional: false
84
+ }
85
+ }
86
+ });
87
+ const TrackResponseModel = defineSchemaModel({
88
+ name: "CrmOnboardingTrackResponse",
89
+ description: "Response wrapper for CRM onboarding track",
90
+ fields: { track: {
91
+ type: CrmOnboardingTrackModel,
92
+ isOptional: false
93
+ } }
94
+ });
95
+ const RecordDemoEventInput = defineSchemaModel({
96
+ name: "CrmOnboardingRecordEventInput",
97
+ description: "Emit a demo event to advance CRM onboarding steps",
98
+ fields: {
99
+ learnerId: {
100
+ type: ScalarTypeEnum.String_unsecure(),
101
+ isOptional: false
102
+ },
103
+ eventName: {
104
+ type: ScalarTypeEnum.String_unsecure(),
105
+ isOptional: false
106
+ },
107
+ payload: {
108
+ type: ScalarTypeEnum.JSON(),
109
+ isOptional: true
110
+ },
111
+ occurredAt: {
112
+ type: ScalarTypeEnum.DateTime(),
113
+ isOptional: true
114
+ }
115
+ }
116
+ });
117
+ const SuccessModel = defineSchemaModel({
118
+ name: "CrmOnboardingSuccess",
119
+ description: "Generic success response",
120
+ fields: { success: {
121
+ type: ScalarTypeEnum.Boolean(),
122
+ isOptional: false
123
+ } }
124
+ });
125
+ const GetCrmOnboardingTrack = defineQuery({
126
+ meta: {
127
+ name: "learningJourney.crmOnboarding.getTrack",
128
+ version: 1,
129
+ stability: "experimental",
130
+ owners: [...OWNERS],
131
+ tags: [
132
+ "learning",
133
+ "crm",
134
+ "onboarding"
135
+ ],
136
+ description: "Fetch CRM first win track definition.",
137
+ goal: "Expose track metadata to UIs and templates.",
138
+ context: "Called by Studio/Playground to render journey steps."
139
+ },
140
+ io: {
141
+ input: defineSchemaModel({
142
+ name: "CrmOnboardingTrackInput",
143
+ description: "Track input",
144
+ fields: {}
145
+ }),
146
+ output: TrackResponseModel
147
+ },
148
+ policy: { auth: "user" }
149
+ });
150
+ const RecordCrmOnboardingEvent = defineCommand({
151
+ meta: {
152
+ name: "learningJourney.crmOnboarding.recordEvent",
153
+ version: 1,
154
+ stability: "experimental",
155
+ owners: [...OWNERS],
156
+ tags: [
157
+ "learning",
158
+ "crm",
159
+ "onboarding"
160
+ ],
161
+ description: "Record an event to advance CRM onboarding progress.",
162
+ goal: "Advance steps via domain events in demo/sandbox contexts.",
163
+ context: "Called by handlers or demo scripts to emit step completion events."
164
+ },
165
+ io: {
166
+ input: RecordDemoEventInput,
167
+ output: SuccessModel
168
+ },
169
+ policy: { auth: "user" }
170
+ });
171
+ const crmOnboardingContracts = {
172
+ GetCrmOnboardingTrack,
173
+ RecordCrmOnboardingEvent,
174
+ track: crmFirstWinTrack
175
+ };
176
+
177
+ //#endregion
178
+ export { CrmOnboardingTrackModel, GetCrmOnboardingTrack, RecordCrmOnboardingEvent, crmOnboardingContracts };
@@ -1 +1,42 @@
1
- import{a as e}from"../libs/contracts/dist/docs/registry.js";import"../libs/contracts/dist/docs/index.js";e([{id:`docs.learning-journey.crm-onboarding`,title:`Learning Journey — CRM First Win`,summary:`Onboarding track for the CRM Pipeline example that drives users to first closed-won deal.`,kind:`reference`,visibility:`public`,route:`/docs/learning-journey/crm-onboarding`,tags:[`learning`,`crm`,`onboarding`],body:"## Track\n- **Key**: `crm_first_win`\n- **Persona**: CRM adopter\n- **Goal**: From empty CRM to first closed-won deal with follow-up\n\n## Steps & Events\n1) `create_pipeline` → `pipeline.created`\n2) `create_contact_and_company` → `contact.created`\n3) `create_first_deal` → `deal.created`\n4) `move_deal_in_pipeline` → `deal.moved`\n5) `close_deal_won` → `deal.won`\n6) `setup_follow_up` → `task.completed` (type: follow_up)\n\nXP: 15/20/20/20/30/30 with 25 bonus within 72h. Badge: `crm_first_win`.\n\n## Wiring\n- Depends on `@lssm/example.crm-pipeline` events.\n- Tracks export from `@lssm/example.learning-journey-crm-onboarding/track`.\n- Use onboarding API:\n - `learning.onboarding.listTracks`\n - `learning.onboarding.getProgress`\n - `learning.onboarding.recordEvent` wired from CRM event bus handlers.\n- Surface in CRM dashboard/pipeline UI to guide new users."}]);
1
+ import { registerDocBlocks } from "../libs/contracts/dist/docs/registry.js";
2
+ import "../libs/contracts/dist/docs/index.js";
3
+
4
+ //#region src/docs/crm-onboarding.docblock.ts
5
+ registerDocBlocks([{
6
+ id: "docs.learning-journey.crm-onboarding",
7
+ title: "Learning Journey — CRM First Win",
8
+ summary: "Onboarding track for the CRM Pipeline example that drives users to first closed-won deal.",
9
+ kind: "reference",
10
+ visibility: "public",
11
+ route: "/docs/learning-journey/crm-onboarding",
12
+ tags: [
13
+ "learning",
14
+ "crm",
15
+ "onboarding"
16
+ ],
17
+ body: `## Track
18
+ - **Key**: \`crm_first_win\`
19
+ - **Persona**: CRM adopter
20
+ - **Goal**: From empty CRM to first closed-won deal with follow-up
21
+
22
+ ## Steps & Events
23
+ 1) \`create_pipeline\` → \`pipeline.created\`
24
+ 2) \`create_contact_and_company\` → \`contact.created\`
25
+ 3) \`create_first_deal\` → \`deal.created\`
26
+ 4) \`move_deal_in_pipeline\` → \`deal.moved\`
27
+ 5) \`close_deal_won\` → \`deal.won\`
28
+ 6) \`setup_follow_up\` → \`task.completed\` (type: follow_up)
29
+
30
+ XP: 15/20/20/20/30/30 with 25 bonus within 72h. Badge: \`crm_first_win\`.
31
+
32
+ ## Wiring
33
+ - Depends on \`@lssm/example.crm-pipeline\` events.
34
+ - Tracks export from \`@lssm/example.learning-journey-crm-onboarding/track\`.
35
+ - Use onboarding API:
36
+ - \`learning.onboarding.listTracks\`
37
+ - \`learning.onboarding.getProgress\`
38
+ - \`learning.onboarding.recordEvent\` wired from CRM event bus handlers.
39
+ - Surface in CRM dashboard/pipeline UI to guide new users.`
40
+ }]);
41
+
42
+ //#endregion
@@ -1 +1 @@
1
- import"./crm-onboarding.docblock.js";
1
+ import "./crm-onboarding.docblock.js";
package/dist/example.js CHANGED
@@ -1 +1,34 @@
1
- var e={id:`learning-journey-crm-onboarding`,title:`Learning Journey — CRM First Win`,summary:`Onboarding track for CRM Pipeline driving users from empty CRM to first closed-won deal.`,tags:[`learning`,`crm`,`onboarding`],kind:`template`,visibility:`public`,docs:{rootDocId:`docs.learning-journey.crm-onboarding`},entrypoints:{packageName:`@lssm/example.learning-journey-crm-onboarding`,docs:`./docs`},surfaces:{templates:!0,sandbox:{enabled:!0,modes:[`playground`,`markdown`]},studio:{enabled:!0,installable:!0},mcp:{enabled:!0}}};export{e as default};
1
+ //#region src/example.ts
2
+ const example = {
3
+ id: "learning-journey-crm-onboarding",
4
+ title: "Learning Journey — CRM First Win",
5
+ summary: "Onboarding track for CRM Pipeline driving users from empty CRM to first closed-won deal.",
6
+ tags: [
7
+ "learning",
8
+ "crm",
9
+ "onboarding"
10
+ ],
11
+ kind: "template",
12
+ visibility: "public",
13
+ docs: { rootDocId: "docs.learning-journey.crm-onboarding" },
14
+ entrypoints: {
15
+ packageName: "@lssm/example.learning-journey-crm-onboarding",
16
+ docs: "./docs"
17
+ },
18
+ surfaces: {
19
+ templates: true,
20
+ sandbox: {
21
+ enabled: true,
22
+ modes: ["playground", "markdown"]
23
+ },
24
+ studio: {
25
+ enabled: true,
26
+ installable: true
27
+ },
28
+ mcp: { enabled: true }
29
+ }
30
+ };
31
+ var example_default = example;
32
+
33
+ //#endregion
34
+ export { example_default as default };
@@ -1 +1,25 @@
1
- import{crmFirstWinTrack as e}from"../track.js";const t=[`pipeline.created`,`contact.created`,`deal.created`,`deal.moved`,`deal.won`,`task.completed`],n=(t,{learnerId:n,occurredAt:r=new Date,payload:i},a)=>{let o={learnerId:n,name:t,occurredAt:r,payload:i,trackId:e.id};return a?a(o):o},r=(e,r)=>t.map(t=>n(t,e,r));export{t as crmOnboardingEvents,r as emitAllCrmOnboardingEvents,n as emitCrmOnboardingEvent};
1
+ import { crmFirstWinTrack } from "../track.js";
2
+
3
+ //#region src/handlers/demo.handlers.ts
4
+ const crmOnboardingEvents = [
5
+ "pipeline.created",
6
+ "contact.created",
7
+ "deal.created",
8
+ "deal.moved",
9
+ "deal.won",
10
+ "task.completed"
11
+ ];
12
+ const emitCrmOnboardingEvent = (eventName, { learnerId, occurredAt = /* @__PURE__ */ new Date(), payload }, record) => {
13
+ const event = {
14
+ learnerId,
15
+ name: eventName,
16
+ occurredAt,
17
+ payload,
18
+ trackId: crmFirstWinTrack.id
19
+ };
20
+ return record ? record(event) : event;
21
+ };
22
+ const emitAllCrmOnboardingEvents = (params, record) => crmOnboardingEvents.map((name) => emitCrmOnboardingEvent(name, params, record));
23
+
24
+ //#endregion
25
+ export { crmOnboardingEvents, emitAllCrmOnboardingEvents, emitCrmOnboardingEvent };
package/dist/index.js CHANGED
@@ -1 +1,9 @@
1
- import e from"./example.js";import{crmFirstWinTrack as t,crmLearningTracks as n}from"./track.js";import"./docs/index.js";import{CrmOnboardingTrackModel as r,GetCrmOnboardingTrack as i,RecordCrmOnboardingEvent as a,crmOnboardingContracts as o}from"./contracts/index.js";import{crmOnboardingEvents as s,emitAllCrmOnboardingEvents as c,emitCrmOnboardingEvent as l}from"./handlers/demo.handlers.js";import{CrmOnboardingTrackPresentation as u,CrmOnboardingWidgetPresentation as d,crmOnboardingPresentations as f}from"./presentations/index.js";import{LearningJourneyCrmOnboardingFeature as p}from"./learning-journey-crm-onboarding.feature.js";export{r as CrmOnboardingTrackModel,u as CrmOnboardingTrackPresentation,d as CrmOnboardingWidgetPresentation,i as GetCrmOnboardingTrack,p as LearningJourneyCrmOnboardingFeature,a as RecordCrmOnboardingEvent,t as crmFirstWinTrack,n as crmLearningTracks,o as crmOnboardingContracts,s as crmOnboardingEvents,f as crmOnboardingPresentations,c as emitAllCrmOnboardingEvents,l as emitCrmOnboardingEvent,e as example};
1
+ import example_default from "./example.js";
2
+ import { crmFirstWinTrack, crmLearningTracks } from "./track.js";
3
+ import "./docs/index.js";
4
+ import { CrmOnboardingTrackModel, GetCrmOnboardingTrack, RecordCrmOnboardingEvent, crmOnboardingContracts } from "./contracts/index.js";
5
+ import { crmOnboardingEvents, emitAllCrmOnboardingEvents, emitCrmOnboardingEvent } from "./handlers/demo.handlers.js";
6
+ import { CrmOnboardingTrackPresentation, CrmOnboardingWidgetPresentation, crmOnboardingPresentations } from "./presentations/index.js";
7
+ import { LearningJourneyCrmOnboardingFeature } from "./learning-journey-crm-onboarding.feature.js";
8
+
9
+ export { CrmOnboardingTrackModel, CrmOnboardingTrackPresentation, CrmOnboardingWidgetPresentation, GetCrmOnboardingTrack, LearningJourneyCrmOnboardingFeature, RecordCrmOnboardingEvent, crmFirstWinTrack, crmLearningTracks, crmOnboardingContracts, crmOnboardingEvents, crmOnboardingPresentations, emitAllCrmOnboardingEvents, emitCrmOnboardingEvent, example_default as example };