@contractspec/lib.example-shared-ui 6.0.6 → 6.0.10

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 (82) hide show
  1. package/.turbo/turbo-build.log +90 -84
  2. package/AGENTS.md +43 -25
  3. package/CHANGELOG.md +24 -0
  4. package/README.md +63 -35
  5. package/dist/EvolutionDashboard.js +9 -9
  6. package/dist/EvolutionSidebar.js +15 -15
  7. package/dist/LocalDataIndicator.js +3 -3
  8. package/dist/MarkdownView.d.ts +0 -7
  9. package/dist/MarkdownView.js +76 -172
  10. package/dist/PersonalizationInsights.js +12 -12
  11. package/dist/SaveToStudioButton.js +2 -2
  12. package/dist/SpecDrivenTemplateShell.d.ts +1 -1
  13. package/dist/SpecDrivenTemplateShell.js +10 -10
  14. package/dist/SpecEditorPanel.js +3 -3
  15. package/dist/TemplateShell.js +10 -10
  16. package/dist/browser/EvolutionDashboard.js +9 -9
  17. package/dist/browser/EvolutionSidebar.js +15 -15
  18. package/dist/browser/LocalDataIndicator.js +3 -3
  19. package/dist/browser/MarkdownView.js +76 -172
  20. package/dist/browser/PersonalizationInsights.js +12 -12
  21. package/dist/browser/SaveToStudioButton.js +2 -2
  22. package/dist/browser/SpecDrivenTemplateShell.js +10 -10
  23. package/dist/browser/SpecEditorPanel.js +3 -3
  24. package/dist/browser/TemplateShell.js +10 -10
  25. package/dist/browser/hooks/index.js +29 -29
  26. package/dist/browser/index.js +193 -286
  27. package/dist/browser/lib/component-registry.js +1 -1
  28. package/dist/browser/markdown/formatPresentationName.js +9 -0
  29. package/dist/browser/markdown/useMarkdownPresentation.js +65 -0
  30. package/dist/hooks/index.d.ts +3 -3
  31. package/dist/hooks/index.js +29 -29
  32. package/dist/index.d.ts +12 -11
  33. package/dist/index.js +193 -286
  34. package/dist/lib/component-registry.js +1 -1
  35. package/dist/markdown/formatPresentationName.d.ts +1 -0
  36. package/dist/markdown/formatPresentationName.js +10 -0
  37. package/dist/markdown/useMarkdownPresentation.d.ts +21 -0
  38. package/dist/markdown/useMarkdownPresentation.js +66 -0
  39. package/dist/node/EvolutionDashboard.js +9 -9
  40. package/dist/node/EvolutionSidebar.js +15 -15
  41. package/dist/node/LocalDataIndicator.js +3 -3
  42. package/dist/node/MarkdownView.js +76 -172
  43. package/dist/node/PersonalizationInsights.js +12 -12
  44. package/dist/node/SaveToStudioButton.js +2 -2
  45. package/dist/node/SpecDrivenTemplateShell.js +10 -10
  46. package/dist/node/SpecEditorPanel.js +3 -3
  47. package/dist/node/TemplateShell.js +10 -10
  48. package/dist/node/hooks/index.js +29 -29
  49. package/dist/node/index.js +193 -286
  50. package/dist/node/lib/component-registry.js +1 -1
  51. package/dist/node/markdown/formatPresentationName.js +9 -0
  52. package/dist/node/markdown/useMarkdownPresentation.js +65 -0
  53. package/dist/utils/index.d.ts +1 -1
  54. package/package.json +40 -13
  55. package/src/EvolutionDashboard.tsx +415 -415
  56. package/src/EvolutionSidebar.tsx +245 -245
  57. package/src/LocalDataIndicator.tsx +28 -28
  58. package/src/MarkdownView.tsx +119 -372
  59. package/src/OverlayContextProvider.tsx +272 -272
  60. package/src/PersonalizationInsights.tsx +232 -232
  61. package/src/SaveToStudioButton.tsx +51 -51
  62. package/src/SpecDrivenTemplateShell.tsx +59 -59
  63. package/src/SpecEditorPanel.tsx +138 -138
  64. package/src/TemplateShell.tsx +50 -50
  65. package/src/bundles/ExampleTemplateBundle.ts +78 -78
  66. package/src/hooks/index.ts +3 -3
  67. package/src/hooks/useBehaviorTracking.ts +252 -252
  68. package/src/hooks/useEvolution.ts +437 -437
  69. package/src/hooks/useRegistryTemplates.ts +42 -42
  70. package/src/hooks/useSpecContent.ts +214 -214
  71. package/src/hooks/useWorkflowComposer.ts +567 -567
  72. package/src/index.ts +12 -11
  73. package/src/lib/component-registry.tsx +40 -40
  74. package/src/lib/runtime-context.tsx +31 -31
  75. package/src/lib/types.ts +57 -57
  76. package/src/markdown/formatPresentationName.ts +9 -0
  77. package/src/markdown/useMarkdownPresentation.ts +107 -0
  78. package/src/overlay-types.ts +15 -15
  79. package/src/utils/fetchPresentationData.ts +13 -13
  80. package/src/utils/generateSpecFromTemplate.ts +29 -29
  81. package/src/utils/index.ts +1 -1
  82. package/tsconfig.json +8 -8
@@ -5,38 +5,38 @@ import type { TemplateDefinition, TemplateId } from '../lib/types';
5
5
  * Converts FeatureModuleSpec contracts to TypeScript spec code.
6
6
  */
7
7
  export function generateSpecFromTemplate(
8
- template: TemplateDefinition | null
8
+ template: TemplateDefinition | null
9
9
  ): string {
10
- const templateId = template?.id ?? 'unknown';
10
+ const templateId = template?.id ?? 'unknown';
11
11
 
12
- if (!template) {
13
- return generateDefaultSpec(templateId);
14
- }
12
+ if (!template) {
13
+ return generateDefaultSpec(templateId);
14
+ }
15
15
 
16
- // Generate spec based on template type
17
- switch (templateId) {
18
- case 'crm-pipeline':
19
- return generateCrmPipelineSpec(template.schema.contracts);
20
- case 'saas-boilerplate':
21
- return generateSaasBoilerplateSpec(template.schema.contracts);
22
- case 'agent-console':
23
- return generateAgentConsoleSpec(template.schema.contracts);
24
- case 'todos-app':
25
- return generateTodosSpec(template.schema.contracts);
26
- case 'messaging-app':
27
- return generateMessagingSpec(template.schema.contracts);
28
- case 'recipe-app-i18n':
29
- return generateRecipeSpec(template.schema.contracts);
30
- default:
31
- return generateDefaultSpec(templateId);
32
- }
16
+ // Generate spec based on template type
17
+ switch (templateId) {
18
+ case 'crm-pipeline':
19
+ return generateCrmPipelineSpec(template.schema.contracts);
20
+ case 'saas-boilerplate':
21
+ return generateSaasBoilerplateSpec(template.schema.contracts);
22
+ case 'agent-console':
23
+ return generateAgentConsoleSpec(template.schema.contracts);
24
+ case 'todos-app':
25
+ return generateTodosSpec(template.schema.contracts);
26
+ case 'messaging-app':
27
+ return generateMessagingSpec(template.schema.contracts);
28
+ case 'recipe-app-i18n':
29
+ return generateRecipeSpec(template.schema.contracts);
30
+ default:
31
+ return generateDefaultSpec(templateId);
32
+ }
33
33
  }
34
34
 
35
35
  /**
36
36
  * CRM Pipeline spec
37
37
  */
38
38
  function generateCrmPipelineSpec(contracts: string[]): string {
39
- return `// CRM Pipeline Specs
39
+ return `// CRM Pipeline Specs
40
40
  // Contracts: ${contracts.join(', ')}
41
41
 
42
42
  contractSpec("crm.deal.updateStage.v1", {
@@ -113,7 +113,7 @@ contractSpec("crm.contact.list.v1", {
113
113
  * SaaS Boilerplate spec
114
114
  */
115
115
  function generateSaasBoilerplateSpec(contracts: string[]): string {
116
- return `// SaaS Boilerplate Specs
116
+ return `// SaaS Boilerplate Specs
117
117
  // Contracts: ${contracts.join(', ')}
118
118
 
119
119
  contractSpec("saas.project.create.v1", {
@@ -184,7 +184,7 @@ contractSpec("saas.settings.update.v1", {
184
184
  * Agent Console spec
185
185
  */
186
186
  function generateAgentConsoleSpec(contracts: string[]): string {
187
- return `// Agent Console Specs
187
+ return `// Agent Console Specs
188
188
  // Contracts: ${contracts.join(', ')}
189
189
 
190
190
  contractSpec("agent.run.execute.v1", {
@@ -258,7 +258,7 @@ contractSpec("agent.agent.create.v1", {
258
258
  * Todos App spec
259
259
  */
260
260
  function generateTodosSpec(contracts: string[]): string {
261
- return `// To-dos App Specs
261
+ return `// To-dos App Specs
262
262
  // Contracts: ${contracts.join(', ')}
263
263
 
264
264
  contractSpec("tasks.board.v1", {
@@ -325,7 +325,7 @@ contractSpec("tasks.complete.v1", {
325
325
  * Messaging App spec
326
326
  */
327
327
  function generateMessagingSpec(contracts: string[]): string {
328
- return `// Messaging App Specs
328
+ return `// Messaging App Specs
329
329
  // Contracts: ${contracts.join(', ')}
330
330
 
331
331
  contractSpec("messaging.send.v1", {
@@ -386,7 +386,7 @@ contractSpec("messaging.read.v1", {
386
386
  * Recipe App spec
387
387
  */
388
388
  function generateRecipeSpec(contracts: string[]): string {
389
- return `// Recipe App (i18n) Specs
389
+ return `// Recipe App (i18n) Specs
390
390
  // Contracts: ${contracts.join(', ')}
391
391
 
392
392
  contractSpec("recipes.lookup.v1", {
@@ -441,7 +441,7 @@ contractSpec("recipes.favorite.toggle.v1", {
441
441
  * Default spec for unknown templates
442
442
  */
443
443
  function generateDefaultSpec(templateId: TemplateId): string {
444
- return `// ${templateId} Specs
444
+ return `// ${templateId} Specs
445
445
 
446
446
  contractSpec("${templateId}.main.v1", {
447
447
  goal: "Main operation for ${templateId}",
@@ -1,2 +1,2 @@
1
- export * from './generateSpecFromTemplate';
2
1
  export * from './fetchPresentationData';
2
+ export * from './generateSpecFromTemplate';
package/tsconfig.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
- "extends": "@contractspec/tool.typescript/react-library.json",
3
- "compilerOptions": {
4
- "module": "ESNext",
5
- "moduleResolution": "bundler",
6
- "jsx": "react-jsx",
7
- "outDir": "dist"
8
- },
9
- "include": ["src/**/*"]
2
+ "extends": "@contractspec/tool.typescript/react-library.json",
3
+ "compilerOptions": {
4
+ "module": "ESNext",
5
+ "moduleResolution": "bundler",
6
+ "jsx": "react-jsx",
7
+ "outDir": "dist"
8
+ },
9
+ "include": ["src/**/*"]
10
10
  }