equilibria-mcp-server 1.0.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.
Files changed (164) hide show
  1. package/CHANGELOG.md +142 -0
  2. package/LICENSE +21 -0
  3. package/README.md +240 -0
  4. package/dist/builders/YAMLBuilder.d.ts +77 -0
  5. package/dist/builders/YAMLBuilder.d.ts.map +1 -0
  6. package/dist/builders/YAMLBuilder.js +251 -0
  7. package/dist/builders/YAMLBuilder.js.map +1 -0
  8. package/dist/economics/constants.d.ts +39 -0
  9. package/dist/economics/constants.d.ts.map +1 -0
  10. package/dist/economics/constants.js +46 -0
  11. package/dist/economics/constants.js.map +1 -0
  12. package/dist/economics/formulas.d.ts +19 -0
  13. package/dist/economics/formulas.d.ts.map +1 -0
  14. package/dist/economics/formulas.js +260 -0
  15. package/dist/economics/formulas.js.map +1 -0
  16. package/dist/economics/index.d.ts +9 -0
  17. package/dist/economics/index.d.ts.map +1 -0
  18. package/dist/economics/index.js +9 -0
  19. package/dist/economics/index.js.map +1 -0
  20. package/dist/economics/validators.d.ts +18 -0
  21. package/dist/economics/validators.d.ts.map +1 -0
  22. package/dist/economics/validators.js +111 -0
  23. package/dist/economics/validators.js.map +1 -0
  24. package/dist/errors/index.d.ts +172 -0
  25. package/dist/errors/index.d.ts.map +1 -0
  26. package/dist/errors/index.js +313 -0
  27. package/dist/errors/index.js.map +1 -0
  28. package/dist/formatters/index.d.ts +8 -0
  29. package/dist/formatters/index.d.ts.map +1 -0
  30. package/dist/formatters/index.js +8 -0
  31. package/dist/formatters/index.js.map +1 -0
  32. package/dist/formatters/redux.d.ts +15 -0
  33. package/dist/formatters/redux.d.ts.map +1 -0
  34. package/dist/formatters/redux.js +35 -0
  35. package/dist/formatters/redux.js.map +1 -0
  36. package/dist/formatters/yaml.d.ts +18 -0
  37. package/dist/formatters/yaml.d.ts.map +1 -0
  38. package/dist/formatters/yaml.js +40 -0
  39. package/dist/formatters/yaml.js.map +1 -0
  40. package/dist/index.d.ts +11 -0
  41. package/dist/index.d.ts.map +1 -0
  42. package/dist/index.js +19 -0
  43. package/dist/index.js.map +1 -0
  44. package/dist/server.d.ts +14 -0
  45. package/dist/server.d.ts.map +1 -0
  46. package/dist/server.js +86 -0
  47. package/dist/server.js.map +1 -0
  48. package/dist/templates/advancedMicro.d.ts +8 -0
  49. package/dist/templates/advancedMicro.d.ts.map +1 -0
  50. package/dist/templates/advancedMicro.js +834 -0
  51. package/dist/templates/advancedMicro.js.map +1 -0
  52. package/dist/templates/consumer.d.ts +12 -0
  53. package/dist/templates/consumer.d.ts.map +1 -0
  54. package/dist/templates/consumer.js +1978 -0
  55. package/dist/templates/consumer.js.map +1 -0
  56. package/dist/templates/elasticity.d.ts +8 -0
  57. package/dist/templates/elasticity.d.ts.map +1 -0
  58. package/dist/templates/elasticity.js +500 -0
  59. package/dist/templates/elasticity.js.map +1 -0
  60. package/dist/templates/externalities.d.ts +11 -0
  61. package/dist/templates/externalities.d.ts.map +1 -0
  62. package/dist/templates/externalities.js +997 -0
  63. package/dist/templates/externalities.js.map +1 -0
  64. package/dist/templates/financeBehavioral.d.ts +8 -0
  65. package/dist/templates/financeBehavioral.d.ts.map +1 -0
  66. package/dist/templates/financeBehavioral.js +860 -0
  67. package/dist/templates/financeBehavioral.js.map +1 -0
  68. package/dist/templates/growth.d.ts +8 -0
  69. package/dist/templates/growth.d.ts.map +1 -0
  70. package/dist/templates/growth.js +740 -0
  71. package/dist/templates/growth.js.map +1 -0
  72. package/dist/templates/index.d.ts +31 -0
  73. package/dist/templates/index.d.ts.map +1 -0
  74. package/dist/templates/index.js +91 -0
  75. package/dist/templates/index.js.map +1 -0
  76. package/dist/templates/inequality.d.ts +8 -0
  77. package/dist/templates/inequality.d.ts.map +1 -0
  78. package/dist/templates/inequality.js +562 -0
  79. package/dist/templates/inequality.js.map +1 -0
  80. package/dist/templates/intertemporalMacro.d.ts +8 -0
  81. package/dist/templates/intertemporalMacro.d.ts.map +1 -0
  82. package/dist/templates/intertemporalMacro.js +550 -0
  83. package/dist/templates/intertemporalMacro.js.map +1 -0
  84. package/dist/templates/isLM.d.ts +8 -0
  85. package/dist/templates/isLM.d.ts.map +1 -0
  86. package/dist/templates/isLM.js +747 -0
  87. package/dist/templates/isLM.js.map +1 -0
  88. package/dist/templates/macro.d.ts +8 -0
  89. package/dist/templates/macro.d.ts.map +1 -0
  90. package/dist/templates/macro.js +600 -0
  91. package/dist/templates/macro.js.map +1 -0
  92. package/dist/templates/marketStructures.d.ts +11 -0
  93. package/dist/templates/marketStructures.d.ts.map +1 -0
  94. package/dist/templates/marketStructures.js +1135 -0
  95. package/dist/templates/marketStructures.js.map +1 -0
  96. package/dist/templates/newKeynesian.d.ts +8 -0
  97. package/dist/templates/newKeynesian.d.ts.map +1 -0
  98. package/dist/templates/newKeynesian.js +633 -0
  99. package/dist/templates/newKeynesian.js.map +1 -0
  100. package/dist/templates/oligopoly.d.ts +11 -0
  101. package/dist/templates/oligopoly.d.ts.map +1 -0
  102. package/dist/templates/oligopoly.js +1113 -0
  103. package/dist/templates/oligopoly.js.map +1 -0
  104. package/dist/templates/ppf.d.ts +8 -0
  105. package/dist/templates/ppf.d.ts.map +1 -0
  106. package/dist/templates/ppf.js +439 -0
  107. package/dist/templates/ppf.js.map +1 -0
  108. package/dist/templates/producer.d.ts +11 -0
  109. package/dist/templates/producer.d.ts.map +1 -0
  110. package/dist/templates/producer.js +979 -0
  111. package/dist/templates/producer.js.map +1 -0
  112. package/dist/templates/production.d.ts +8 -0
  113. package/dist/templates/production.d.ts.map +1 -0
  114. package/dist/templates/production.js +574 -0
  115. package/dist/templates/production.js.map +1 -0
  116. package/dist/templates/supplyDemand.d.ts +8 -0
  117. package/dist/templates/supplyDemand.d.ts.map +1 -0
  118. package/dist/templates/supplyDemand.js +1282 -0
  119. package/dist/templates/supplyDemand.js.map +1 -0
  120. package/dist/templates/tradeGrowth.d.ts +8 -0
  121. package/dist/templates/tradeGrowth.d.ts.map +1 -0
  122. package/dist/templates/tradeGrowth.js +637 -0
  123. package/dist/templates/tradeGrowth.js.map +1 -0
  124. package/dist/tools/index.d.ts +25 -0
  125. package/dist/tools/index.d.ts.map +1 -0
  126. package/dist/tools/index.js +54 -0
  127. package/dist/tools/index.js.map +1 -0
  128. package/dist/tools/models.d.ts +8 -0
  129. package/dist/tools/models.d.ts.map +1 -0
  130. package/dist/tools/models.js +828 -0
  131. package/dist/tools/models.js.map +1 -0
  132. package/dist/tools/output.d.ts +8 -0
  133. package/dist/tools/output.d.ts.map +1 -0
  134. package/dist/tools/output.js +236 -0
  135. package/dist/tools/output.js.map +1 -0
  136. package/dist/tools/templates.d.ts +8 -0
  137. package/dist/tools/templates.d.ts.map +1 -0
  138. package/dist/tools/templates.js +247 -0
  139. package/dist/tools/templates.js.map +1 -0
  140. package/dist/tools/validation.d.ts +8 -0
  141. package/dist/tools/validation.d.ts.map +1 -0
  142. package/dist/tools/validation.js +181 -0
  143. package/dist/tools/validation.js.map +1 -0
  144. package/dist/types/index.d.ts +187 -0
  145. package/dist/types/index.d.ts.map +1 -0
  146. package/dist/types/index.js +7 -0
  147. package/dist/types/index.js.map +1 -0
  148. package/dist/utils/cache.d.ts +99 -0
  149. package/dist/utils/cache.d.ts.map +1 -0
  150. package/dist/utils/cache.js +192 -0
  151. package/dist/utils/cache.js.map +1 -0
  152. package/dist/utils/index.d.ts +8 -0
  153. package/dist/utils/index.d.ts.map +1 -0
  154. package/dist/utils/index.js +8 -0
  155. package/dist/utils/index.js.map +1 -0
  156. package/dist/utils/logger.d.ts +128 -0
  157. package/dist/utils/logger.d.ts.map +1 -0
  158. package/dist/utils/logger.js +251 -0
  159. package/dist/utils/logger.js.map +1 -0
  160. package/dist/validation/index.d.ts +42 -0
  161. package/dist/validation/index.d.ts.map +1 -0
  162. package/dist/validation/index.js +282 -0
  163. package/dist/validation/index.js.map +1 -0
  164. package/package.json +73 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../src/templates/consumer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Elasticity Templates
3
+ *
4
+ * Templates for price elasticity of demand/supply and related concepts.
5
+ */
6
+ import type { ModelTemplate } from '../types/index.js';
7
+ export declare const elasticityTemplates: ModelTemplate[];
8
+ //# sourceMappingURL=elasticity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elasticity.d.ts","sourceRoot":"","sources":["../../src/templates/elasticity.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAufvD,eAAO,MAAM,mBAAmB,EAAE,aAAa,EAK9C,CAAC"}
@@ -0,0 +1,500 @@
1
+ /**
2
+ * Elasticity Templates
3
+ *
4
+ * Templates for price elasticity of demand/supply and related concepts.
5
+ */
6
+ /**
7
+ * Price Elasticity of Demand
8
+ */
9
+ const elasticityDemand = {
10
+ id: 'elasticity_demand',
11
+ name: 'Price Elasticity of Demand',
12
+ description: 'Visualizes price elasticity of demand along a linear demand curve, showing elastic and inelastic regions.',
13
+ category: 'supply_demand',
14
+ level: 'high_school',
15
+ tags: ['elasticity', 'demand', 'price sensitivity', 'elastic', 'inelastic'],
16
+ parameters: {
17
+ demandIntercept: {
18
+ type: 'number',
19
+ default: 100,
20
+ description: 'Y-intercept of demand curve (choke price)',
21
+ },
22
+ demandSlope: {
23
+ type: 'number',
24
+ default: 1,
25
+ description: 'Slope of demand curve',
26
+ },
27
+ pricePoint: {
28
+ type: 'number',
29
+ default: 50,
30
+ description: 'Price at which to calculate elasticity',
31
+ },
32
+ },
33
+ generate: (params) => {
34
+ const intercept = params.demandIntercept ?? 100;
35
+ const slope = params.demandSlope ?? 1;
36
+ const price = params.pricePoint ?? 50;
37
+ return {
38
+ metadata: {
39
+ specVersion: '1.3',
40
+ title: 'Price Elasticity of Demand',
41
+ description: 'Point elasticity along a linear demand curve',
42
+ },
43
+ parameters: {
44
+ a: { value: intercept, label: 'Demand Intercept' },
45
+ b: { value: slope, label: 'Demand Slope', step: 0.1 },
46
+ P: { value: price, label: 'Price', min: 1, max: 'a - 1' },
47
+ Q: { expression: '(a - P) / b', label: 'Quantity', readonly: true },
48
+ Ed: {
49
+ expression: '-1 * (1 / b) * (P / Q)',
50
+ label: 'Elasticity (Ed)',
51
+ readonly: true,
52
+ },
53
+ midpointP: { expression: 'a / 2', hidden: true },
54
+ midpointQ: { expression: 'a / (2 * b)', hidden: true },
55
+ isElastic: { expression: 'abs(Ed) > 1', hidden: true },
56
+ isUnitElastic: { expression: 'abs(abs(Ed) - 1) < 0.1', hidden: true },
57
+ },
58
+ charts: [
59
+ {
60
+ id: 'main',
61
+ title: 'Elasticity Along Demand Curve',
62
+ xAxis: { label: 'Quantity (Q)', min: 0, max: 'a / b * 1.1' },
63
+ yAxis: { label: 'Price (P)', min: 0, max: 'a * 1.1' },
64
+ elements: [
65
+ // Elastic region
66
+ {
67
+ id: 'elastic-region',
68
+ type: 'area',
69
+ topBoundary: 'a',
70
+ bottomBoundary: 'demand',
71
+ leftBoundary: '0',
72
+ rightBoundary: 'midpointQ',
73
+ color: '#3B82F6',
74
+ opacity: 0.2,
75
+ label: 'Elastic (|Ed| > 1)',
76
+ },
77
+ // Inelastic region
78
+ {
79
+ id: 'inelastic-region',
80
+ type: 'area',
81
+ topBoundary: 'demand',
82
+ bottomBoundary: '0',
83
+ leftBoundary: 'midpointQ',
84
+ rightBoundary: 'a / b',
85
+ color: '#EF4444',
86
+ opacity: 0.2,
87
+ label: 'Inelastic (|Ed| < 1)',
88
+ },
89
+ {
90
+ id: 'demand',
91
+ type: 'line',
92
+ equation: 'a - b * x',
93
+ color: '#2563EB',
94
+ strokeWidth: 3,
95
+ label: 'Demand',
96
+ },
97
+ {
98
+ id: 'midpoint',
99
+ type: 'point',
100
+ x: 'midpointQ',
101
+ y: 'midpointP',
102
+ color: '#7C3AED',
103
+ label: 'Unit Elastic',
104
+ },
105
+ {
106
+ id: 'current-point',
107
+ type: 'point',
108
+ x: 'Q',
109
+ y: 'P',
110
+ color: '#16A34A',
111
+ label: 'Current',
112
+ droplines: { x: true, y: true },
113
+ draggable: true,
114
+ dragConfig: {
115
+ mode: 'expression',
116
+ parameters: { expressions: { P: 'y' } },
117
+ constraints: { bounds: { minY: 1, maxY: 'a - 1' } },
118
+ },
119
+ },
120
+ ],
121
+ annotations: [
122
+ {
123
+ id: 'elasticity-value',
124
+ text: 'Ed = ${Ed:.2f}',
125
+ x: 'Q + 5',
126
+ y: 'P + 5',
127
+ color: '#16A34A',
128
+ },
129
+ {
130
+ id: 'elastic-label',
131
+ text: 'Elastic',
132
+ x: 'midpointQ / 2',
133
+ y: 'a * 0.85',
134
+ color: '#2563EB',
135
+ },
136
+ {
137
+ id: 'inelastic-label',
138
+ text: 'Inelastic',
139
+ x: 'midpointQ * 1.5',
140
+ y: 'a * 0.2',
141
+ color: '#DC2626',
142
+ },
143
+ ],
144
+ },
145
+ ],
146
+ };
147
+ },
148
+ };
149
+ /**
150
+ * Total Revenue Test
151
+ */
152
+ const totalRevenueTest = {
153
+ id: 'total_revenue_test',
154
+ name: 'Total Revenue Test',
155
+ description: 'Shows how total revenue changes with price based on elasticity. Revenue maximized at unit elasticity.',
156
+ category: 'supply_demand',
157
+ level: 'high_school',
158
+ tags: ['elasticity', 'total revenue', 'demand', 'revenue maximization'],
159
+ parameters: {
160
+ demandIntercept: {
161
+ type: 'number',
162
+ default: 100,
163
+ description: 'Demand intercept',
164
+ },
165
+ demandSlope: {
166
+ type: 'number',
167
+ default: 1,
168
+ description: 'Demand slope',
169
+ },
170
+ price: {
171
+ type: 'number',
172
+ default: 50,
173
+ description: 'Current price',
174
+ },
175
+ },
176
+ generate: (params) => {
177
+ const a = params.demandIntercept ?? 100;
178
+ const b = params.demandSlope ?? 1;
179
+ const p = params.price ?? 50;
180
+ return {
181
+ metadata: {
182
+ specVersion: '1.3',
183
+ title: 'Total Revenue Test',
184
+ description: 'Relationship between price, elasticity, and total revenue',
185
+ },
186
+ parameters: {
187
+ a: { value: a, label: 'Demand Intercept' },
188
+ b: { value: b, label: 'Demand Slope' },
189
+ P: { value: p, label: 'Price', min: 0, max: 'a' },
190
+ Q: { expression: 'max(0, (a - P) / b)', hidden: true },
191
+ TR: { expression: 'P * Q', label: 'Total Revenue', readonly: true },
192
+ maxTR_P: { expression: 'a / 2', hidden: true },
193
+ maxTR_Q: { expression: 'a / (2 * b)', hidden: true },
194
+ maxTR: { expression: 'maxTR_P * maxTR_Q', label: 'Max Revenue', readonly: true },
195
+ },
196
+ charts: [
197
+ {
198
+ id: 'demand-chart',
199
+ title: 'Demand and Revenue Rectangle',
200
+ xAxis: { label: 'Quantity (Q)', min: 0, max: 'a / b * 1.1' },
201
+ yAxis: { label: 'Price (P)', min: 0, max: 'a * 1.1' },
202
+ elements: [
203
+ {
204
+ id: 'revenue-area',
205
+ type: 'rectangle',
206
+ x1: 0,
207
+ y1: 0,
208
+ x2: 'Q',
209
+ y2: 'P',
210
+ fill: '#22C55E',
211
+ opacity: 0.3,
212
+ label: 'Total Revenue',
213
+ },
214
+ {
215
+ id: 'demand',
216
+ type: 'line',
217
+ equation: 'a - b * x',
218
+ color: '#2563EB',
219
+ strokeWidth: 2,
220
+ label: 'Demand',
221
+ },
222
+ {
223
+ id: 'current',
224
+ type: 'point',
225
+ x: 'Q',
226
+ y: 'P',
227
+ color: '#16A34A',
228
+ label: 'Current',
229
+ droplines: { x: true, y: true },
230
+ },
231
+ ],
232
+ annotations: [
233
+ {
234
+ id: 'tr-label',
235
+ text: 'TR = ${TR:.0f}',
236
+ x: 'Q / 2',
237
+ y: 'P / 2',
238
+ color: '#166534',
239
+ },
240
+ ],
241
+ },
242
+ {
243
+ id: 'revenue-chart',
244
+ title: 'Total Revenue Curve',
245
+ xAxis: { label: 'Quantity (Q)', min: 0, max: 'a / b * 1.1' },
246
+ yAxis: { label: 'Total Revenue (TR)', min: 0, max: 'maxTR * 1.2' },
247
+ elements: [
248
+ {
249
+ id: 'tr-curve',
250
+ type: 'line',
251
+ equation: 'x * (a - b * x)',
252
+ color: '#22C55E',
253
+ strokeWidth: 3,
254
+ label: 'TR = P × Q',
255
+ domain: { min: 0, max: 'a / b' },
256
+ },
257
+ {
258
+ id: 'max-tr-point',
259
+ type: 'point',
260
+ x: 'maxTR_Q',
261
+ y: 'maxTR',
262
+ color: '#7C3AED',
263
+ label: 'Max TR',
264
+ },
265
+ {
266
+ id: 'current-tr',
267
+ type: 'point',
268
+ x: 'Q',
269
+ y: 'TR',
270
+ color: '#16A34A',
271
+ label: 'Current TR',
272
+ droplines: { x: true, y: true },
273
+ },
274
+ ],
275
+ },
276
+ ],
277
+ };
278
+ },
279
+ };
280
+ /**
281
+ * Comparing Elasticities
282
+ */
283
+ const elasticityComparison = {
284
+ id: 'elasticity_comparison',
285
+ name: 'Elasticity Comparison',
286
+ description: 'Compares demand curves with different elasticities: perfectly elastic, elastic, unit elastic, inelastic, and perfectly inelastic.',
287
+ category: 'supply_demand',
288
+ level: 'high_school',
289
+ tags: ['elasticity', 'comparison', 'demand curves'],
290
+ parameters: {
291
+ basePrice: {
292
+ type: 'number',
293
+ default: 50,
294
+ description: 'Reference price level',
295
+ },
296
+ baseQuantity: {
297
+ type: 'number',
298
+ default: 50,
299
+ description: 'Reference quantity level',
300
+ },
301
+ },
302
+ generate: (params) => {
303
+ const p = params.basePrice ?? 50;
304
+ const q = params.baseQuantity ?? 50;
305
+ return {
306
+ metadata: {
307
+ specVersion: '1.3',
308
+ title: 'Elasticity Comparison',
309
+ description: 'Different demand curve elasticities',
310
+ },
311
+ parameters: {
312
+ P0: { value: p, label: 'Reference Price' },
313
+ Q0: { value: q, label: 'Reference Quantity' },
314
+ },
315
+ charts: [
316
+ {
317
+ id: 'main',
318
+ title: 'Demand Curves with Different Elasticities',
319
+ xAxis: { label: 'Quantity', min: 0, max: 'Q0 * 2.5' },
320
+ yAxis: { label: 'Price', min: 0, max: 'P0 * 2.5' },
321
+ elements: [
322
+ // Perfectly elastic (horizontal)
323
+ {
324
+ id: 'perfectly-elastic',
325
+ type: 'horizontalLine',
326
+ y: 'P0',
327
+ color: '#2563EB',
328
+ label: 'Perfectly Elastic (Ed = ∞)',
329
+ },
330
+ // Perfectly inelastic (vertical)
331
+ {
332
+ id: 'perfectly-inelastic',
333
+ type: 'verticalLine',
334
+ x: 'Q0',
335
+ color: '#DC2626',
336
+ label: 'Perfectly Inelastic (Ed = 0)',
337
+ },
338
+ // Unit elastic (rectangular hyperbola passing through point)
339
+ {
340
+ id: 'unit-elastic',
341
+ type: 'line',
342
+ equation: 'P0 * Q0 / x',
343
+ color: '#7C3AED',
344
+ label: 'Unit Elastic (Ed = -1)',
345
+ domain: { min: 'Q0 * 0.3', max: 'Q0 * 2.2' },
346
+ },
347
+ // Relatively elastic
348
+ {
349
+ id: 'elastic',
350
+ type: 'line',
351
+ equation: 'P0 * 2 - (P0 / Q0) * 0.5 * x',
352
+ color: '#3B82F6',
353
+ lineStyle: 'dashed',
354
+ label: 'Elastic',
355
+ },
356
+ // Relatively inelastic
357
+ {
358
+ id: 'inelastic',
359
+ type: 'line',
360
+ equation: 'P0 * 2 - (P0 / Q0) * 2 * x',
361
+ color: '#EF4444',
362
+ lineStyle: 'dashed',
363
+ label: 'Inelastic',
364
+ },
365
+ {
366
+ id: 'reference',
367
+ type: 'point',
368
+ x: 'Q0',
369
+ y: 'P0',
370
+ color: '#16A34A',
371
+ label: 'Reference Point',
372
+ },
373
+ ],
374
+ },
375
+ ],
376
+ };
377
+ },
378
+ };
379
+ /**
380
+ * Cross-Price Elasticity
381
+ */
382
+ const crossElasticity = {
383
+ id: 'cross_elasticity',
384
+ name: 'Cross-Price Elasticity',
385
+ description: 'Demonstrates cross-price elasticity for substitutes (positive) and complements (negative).',
386
+ category: 'supply_demand',
387
+ level: 'undergraduate',
388
+ tags: ['elasticity', 'cross-price', 'substitutes', 'complements'],
389
+ parameters: {
390
+ priceChange: {
391
+ type: 'number',
392
+ default: 10,
393
+ description: 'Percent change in price of Good Y',
394
+ },
395
+ substituteSensitivity: {
396
+ type: 'number',
397
+ default: 1.5,
398
+ description: 'Cross elasticity for substitute goods',
399
+ },
400
+ complementSensitivity: {
401
+ type: 'number',
402
+ default: -0.8,
403
+ description: 'Cross elasticity for complement goods',
404
+ },
405
+ },
406
+ generate: (params) => {
407
+ const priceChange = params.priceChange ?? 10;
408
+ const subSens = params.substituteSensitivity ?? 1.5;
409
+ const compSens = params.complementSensitivity ?? -0.8;
410
+ return {
411
+ metadata: {
412
+ specVersion: '1.3',
413
+ title: 'Cross-Price Elasticity',
414
+ description: 'Effect of price changes on demand for related goods',
415
+ },
416
+ parameters: {
417
+ dPy: { value: priceChange, label: '% Change in Py', min: -20, max: 20 },
418
+ Exy_sub: { value: subSens, label: 'Cross-E (Substitutes)' },
419
+ Exy_comp: { value: compSens, label: 'Cross-E (Complements)' },
420
+ baseQ: { value: 100, label: 'Base Quantity' },
421
+ dQx_sub: {
422
+ expression: 'baseQ * Exy_sub * dPy / 100',
423
+ label: 'Substitute Δ Quantity',
424
+ readonly: true,
425
+ },
426
+ dQx_comp: {
427
+ expression: 'baseQ * Exy_comp * dPy / 100',
428
+ label: 'Complement Δ Quantity',
429
+ readonly: true,
430
+ },
431
+ Qx_sub: {
432
+ expression: 'baseQ + dQx_sub',
433
+ label: 'Substitute New Q',
434
+ readonly: true,
435
+ },
436
+ Qx_comp: {
437
+ expression: 'baseQ + dQx_comp',
438
+ label: 'Complement New Q',
439
+ readonly: true,
440
+ },
441
+ },
442
+ charts: [
443
+ {
444
+ id: 'main',
445
+ title: 'Cross-Price Elasticity Effects',
446
+ xAxis: { label: '% Change in Price of Y', min: -25, max: 25 },
447
+ yAxis: { label: 'Quantity of X', min: 0, max: 200 },
448
+ elements: [
449
+ {
450
+ id: 'substitutes',
451
+ type: 'line',
452
+ equation: 'baseQ + baseQ * Exy_sub * x / 100',
453
+ color: '#22C55E',
454
+ strokeWidth: 2,
455
+ label: 'Substitutes (Exy > 0)',
456
+ },
457
+ {
458
+ id: 'complements',
459
+ type: 'line',
460
+ equation: 'baseQ + baseQ * Exy_comp * x / 100',
461
+ color: '#EF4444',
462
+ strokeWidth: 2,
463
+ label: 'Complements (Exy < 0)',
464
+ },
465
+ {
466
+ id: 'current-sub',
467
+ type: 'point',
468
+ x: 'dPy',
469
+ y: 'Qx_sub',
470
+ color: '#16A34A',
471
+ label: 'Sub',
472
+ },
473
+ {
474
+ id: 'current-comp',
475
+ type: 'point',
476
+ x: 'dPy',
477
+ y: 'Qx_comp',
478
+ color: '#DC2626',
479
+ label: 'Comp',
480
+ },
481
+ {
482
+ id: 'baseline',
483
+ type: 'horizontalLine',
484
+ y: 'baseQ',
485
+ color: '#6B7280',
486
+ strokeDasharray: '5,5',
487
+ },
488
+ ],
489
+ },
490
+ ],
491
+ };
492
+ },
493
+ };
494
+ export const elasticityTemplates = [
495
+ elasticityDemand,
496
+ totalRevenueTest,
497
+ elasticityComparison,
498
+ crossElasticity,
499
+ ];
500
+ //# sourceMappingURL=elasticity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elasticity.js","sourceRoot":"","sources":["../../src/templates/elasticity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Externalities and Public Goods Templates
3
+ *
4
+ * Templates for market failures including negative and positive externalities,
5
+ * Pigouvian taxes/subsidies, Coase theorem, and public goods.
6
+ *
7
+ * Phase 3.6: Externalities & Public Goods
8
+ */
9
+ import type { ModelTemplate } from '../types/index.js';
10
+ export declare const externalitiesTemplates: ModelTemplate[];
11
+ //# sourceMappingURL=externalities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"externalities.d.ts","sourceRoot":"","sources":["../../src/templates/externalities.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAy+BvD,eAAO,MAAM,sBAAsB,EAAE,aAAa,EAMjD,CAAC"}