@api-client/core 0.18.19 → 0.18.21

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 (40) hide show
  1. package/build/src/modeling/helpers/Intelisense.d.ts.map +1 -1
  2. package/build/src/modeling/helpers/Intelisense.js +1 -0
  3. package/build/src/modeling/helpers/Intelisense.js.map +1 -1
  4. package/build/src/modeling/templates/blog-domain.d.ts +2 -2
  5. package/build/src/modeling/templates/blog-domain.d.ts.map +1 -1
  6. package/build/src/modeling/templates/blog-domain.js +12 -12
  7. package/build/src/modeling/templates/blog-domain.js.map +1 -1
  8. package/build/src/modeling/templates/ecommerce-domain.d.ts +2 -2
  9. package/build/src/modeling/templates/ecommerce-domain.d.ts.map +1 -1
  10. package/build/src/modeling/templates/ecommerce-domain.js +12 -13
  11. package/build/src/modeling/templates/ecommerce-domain.js.map +1 -1
  12. package/build/src/modeling/templates/index.d.ts +20 -0
  13. package/build/src/modeling/templates/index.d.ts.map +1 -0
  14. package/build/src/modeling/templates/index.js +174 -0
  15. package/build/src/modeling/templates/index.js.map +1 -0
  16. package/build/src/modeling/templates/meta/blog-publishing-platform.json +1 -0
  17. package/build/src/modeling/templates/meta/ecommerce-platform.json +1 -0
  18. package/build/src/modeling/templates/meta/index.d.ts +56 -0
  19. package/build/src/modeling/templates/meta/index.d.ts.map +1 -0
  20. package/build/src/modeling/templates/meta/index.js +90 -0
  21. package/build/src/modeling/templates/meta/index.js.map +1 -0
  22. package/build/src/modeling/templates/template-registry.d.ts +41 -0
  23. package/build/src/modeling/templates/template-registry.d.ts.map +1 -0
  24. package/build/src/modeling/templates/template-registry.js +48 -0
  25. package/build/src/modeling/templates/template-registry.js.map +1 -0
  26. package/build/src/modeling/templates/types.d.ts +167 -0
  27. package/build/src/modeling/templates/types.d.ts.map +1 -0
  28. package/build/src/modeling/templates/types.js +2 -0
  29. package/build/src/modeling/templates/types.js.map +1 -0
  30. package/build/tsconfig.tsbuildinfo +1 -1
  31. package/package.json +1 -1
  32. package/src/modeling/helpers/Intelisense.ts +1 -0
  33. package/src/modeling/templates/blog-domain.ts +15 -14
  34. package/src/modeling/templates/ecommerce-domain.ts +15 -15
  35. package/src/modeling/templates/meta/blog-publishing-platform.json +1 -0
  36. package/src/modeling/templates/meta/ecommerce-platform.json +1 -0
  37. package/src/modeling/templates/readme.md +246 -0
  38. package/src/modeling/templates/template-registry.ts +67 -0
  39. package/src/modeling/templates/types.ts +175 -0
  40. package/tests/unit/modeling/helpers/intellisense.spec.ts +971 -0
@@ -0,0 +1,175 @@
1
+ import type { DataDomain } from '../DataDomain.js'
2
+
3
+ export interface CreateTemplateOptions {
4
+ /**
5
+ * The DataDomain instance to use for the template.
6
+ * If not provided, a new DataDomain instance will be created.
7
+ */
8
+ domain?: DataDomain
9
+ }
10
+
11
+ /**
12
+ * Template metadata for UI presentation
13
+ */
14
+ export interface DomainTemplate {
15
+ /** Unique identifier for the template */
16
+ id: string
17
+ /** Display name of the template */
18
+ name: string
19
+ /** Short description of what the template does (plain text, no HTML/markdown) */
20
+ description: string
21
+ /** When the template was created (ISO string) */
22
+ createdAt: string
23
+ /** When the template was last updated (ISO string) */
24
+ updatedAt: string
25
+ /** Template version */
26
+ version: string
27
+ /** Author information */
28
+ author: string
29
+ /** Template categorization tags */
30
+ tags: string[]
31
+ /** Detailed domain structure for UI presentation */
32
+ structure: DomainTemplateStructure
33
+ }
34
+
35
+ /**
36
+ * Detailed domain structure information for UI presentation
37
+ */
38
+ export interface DomainTemplateStructure {
39
+ /** Domain information */
40
+ domain: DomainInfo
41
+ /** List of namespaces in the domain */
42
+ namespaces: NamespaceInfo[]
43
+ }
44
+
45
+ /**
46
+ * Domain-level information
47
+ */
48
+ export interface DomainInfo {
49
+ /** Domain name */
50
+ name: string
51
+ /** Domain description */
52
+ description?: string
53
+ /** Total number of entities across all namespaces */
54
+ totalEntities: number
55
+ /** Total number of properties across all entities */
56
+ totalProperties: number
57
+ /** Total number of associations across all entities */
58
+ totalAssociations: number
59
+ }
60
+
61
+ /**
62
+ * Namespace-level information
63
+ */
64
+ export interface NamespaceInfo {
65
+ /** Namespace name */
66
+ name: string
67
+ /** Namespace display name */
68
+ displayName?: string
69
+ /** Namespace description */
70
+ description?: string
71
+ /** Number of models in this namespace */
72
+ modelCount: number
73
+ /** Number of entities in this namespace */
74
+ entityCount: number
75
+ /** List of models in this namespace */
76
+ models: ModelInfo[]
77
+ }
78
+
79
+ /**
80
+ * Model-level information
81
+ */
82
+ export interface ModelInfo {
83
+ /** Model name */
84
+ name: string
85
+ /** Model display name */
86
+ displayName?: string
87
+ /** Model description */
88
+ description?: string
89
+ /** Number of entities in this model */
90
+ entityCount: number
91
+ /** List of entities in this model */
92
+ entities: EntityInfo[]
93
+ }
94
+
95
+ /**
96
+ * Entity-level information for UI presentation
97
+ */
98
+ export interface EntityInfo {
99
+ /** Entity name */
100
+ name: string
101
+ /** Entity display name */
102
+ displayName?: string
103
+ /** Entity description */
104
+ description?: string
105
+ /** Number of properties */
106
+ propertyCount: number
107
+ /** Number of associations */
108
+ associationCount: number
109
+ /** Whether this entity is deprecated */
110
+ deprecated?: boolean
111
+ /** List of properties for this entity */
112
+ properties: PropertyInfo[]
113
+ /** List of associations for this entity */
114
+ associations: AssociationInfo[]
115
+ /** Applied semantic types */
116
+ semantics: string[]
117
+ }
118
+
119
+ /**
120
+ * Property-level information for UI presentation
121
+ */
122
+ export interface PropertyInfo {
123
+ /** Property name */
124
+ name: string
125
+ /** Property display name */
126
+ displayName?: string
127
+ /** Property description */
128
+ description?: string
129
+ /** Data type (string, number, boolean, etc.) */
130
+ type: string
131
+ /** Whether this property is required */
132
+ required?: boolean
133
+ /** Whether this property allows multiple values */
134
+ multiple?: boolean
135
+ /** Whether this property is a primary key */
136
+ primary?: boolean
137
+ /** Whether this property is unique */
138
+ unique?: boolean
139
+ /** Whether this property is read-only */
140
+ readOnly?: boolean
141
+ /** Whether this property is write-only */
142
+ writeOnly?: boolean
143
+ /** Whether this property is deprecated */
144
+ deprecated?: boolean
145
+ /** Applied semantic types */
146
+ semantics: string[]
147
+ /** Enum values if applicable */
148
+ enumValues?: string[]
149
+ /** Default value if specified */
150
+ defaultValue?: string
151
+ }
152
+
153
+ /**
154
+ * Association-level information for UI presentation
155
+ */
156
+ export interface AssociationInfo {
157
+ /** Association name */
158
+ name: string
159
+ /** Association display name */
160
+ displayName?: string
161
+ /** Association description */
162
+ description?: string
163
+ /** Whether this association is required */
164
+ required?: boolean
165
+ /** Whether this association allows multiple targets */
166
+ multiple?: boolean
167
+ /** Whether this association is read-only */
168
+ readOnly?: boolean
169
+ /** Target entity names this association points to */
170
+ targetEntities: string[]
171
+ /** Applied semantic types */
172
+ semantics: string[]
173
+ /** Relationship cardinality description (e.g., "One-to-Many", "Many-to-Many") */
174
+ cardinality: string
175
+ }