@downcity/city 0.2.80 → 0.2.92

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 (229) hide show
  1. package/README.md +10 -10
  2. package/bin/client/city.d.ts +90 -0
  3. package/bin/client/city.d.ts.map +1 -0
  4. package/bin/{city → client}/city.js +32 -22
  5. package/bin/client/city.js.map +1 -0
  6. package/bin/client/types.d.ts +77 -0
  7. package/bin/client/types.d.ts.map +1 -0
  8. package/bin/client/types.js +8 -0
  9. package/bin/{core → client}/types.js.map +1 -1
  10. package/bin/{core → federation}/auth/authenticator.d.ts +7 -7
  11. package/bin/federation/auth/authenticator.d.ts.map +1 -0
  12. package/bin/{core → federation}/auth/authenticator.js +15 -15
  13. package/bin/federation/auth/authenticator.js.map +1 -0
  14. package/bin/federation/auth/token-signer.d.ts.map +1 -0
  15. package/bin/{core → federation}/auth/token-signer.js +4 -4
  16. package/bin/federation/auth/token-signer.js.map +1 -0
  17. package/bin/{core → federation}/auth/types.d.ts +6 -6
  18. package/bin/federation/auth/types.d.ts.map +1 -0
  19. package/bin/federation/auth/types.js.map +1 -0
  20. package/bin/federation/federation-env-catalog.d.ts +13 -0
  21. package/bin/federation/federation-env-catalog.d.ts.map +1 -0
  22. package/bin/{core/base/base-env-catalog.js → federation/federation-env-catalog.js} +5 -5
  23. package/bin/federation/federation-env-catalog.js.map +1 -0
  24. package/bin/{core/base/base-init.d.ts → federation/federation-init.d.ts} +17 -17
  25. package/bin/federation/federation-init.d.ts.map +1 -0
  26. package/bin/{core/base/base-init.js → federation/federation-init.js} +27 -27
  27. package/bin/federation/federation-init.js.map +1 -0
  28. package/bin/federation/federation-instruction.d.ts +11 -0
  29. package/bin/federation/federation-instruction.d.ts.map +1 -0
  30. package/bin/{core/base/base-instruction.js → federation/federation-instruction.js} +4 -4
  31. package/bin/federation/federation-instruction.js.map +1 -0
  32. package/bin/{core/base/base-router.d.ts → federation/federation-router.d.ts} +11 -11
  33. package/bin/federation/federation-router.d.ts.map +1 -0
  34. package/bin/{core/base/base-router.js → federation/federation-router.js} +27 -27
  35. package/bin/federation/federation-router.js.map +1 -0
  36. package/bin/{core/base/base-runtime.d.ts → federation/federation-runtime.d.ts} +6 -6
  37. package/bin/federation/federation-runtime.d.ts.map +1 -0
  38. package/bin/{core/base/base-runtime.js → federation/federation-runtime.js} +10 -10
  39. package/bin/federation/federation-runtime.js.map +1 -0
  40. package/bin/{core/base/base.d.ts → federation/federation.d.ts} +15 -15
  41. package/bin/federation/federation.d.ts.map +1 -0
  42. package/bin/{core/base/base.js → federation/federation.js} +22 -22
  43. package/bin/federation/federation.js.map +1 -0
  44. package/bin/{core → federation}/runtime.d.ts +9 -9
  45. package/bin/federation/runtime.d.ts.map +1 -0
  46. package/bin/federation/runtime.js +13 -0
  47. package/bin/federation/runtime.js.map +1 -0
  48. package/bin/{core → federation}/types.d.ts +6 -6
  49. package/bin/federation/types.d.ts.map +1 -0
  50. package/bin/{city/user → federation}/types.js.map +1 -1
  51. package/bin/index.d.ts +23 -26
  52. package/bin/index.d.ts.map +1 -1
  53. package/bin/index.js +13 -15
  54. package/bin/index.js.map +1 -1
  55. package/bin/{city → pact}/admin/index.d.ts +23 -7
  56. package/bin/pact/admin/index.d.ts.map +1 -0
  57. package/bin/{city → pact}/admin/index.js +21 -8
  58. package/bin/pact/admin/index.js.map +1 -0
  59. package/bin/{city → pact}/admin/types.d.ts +7 -1
  60. package/bin/pact/admin/types.d.ts.map +1 -0
  61. package/bin/pact/admin/types.js.map +1 -0
  62. package/bin/{city → pact}/http.d.ts.map +1 -1
  63. package/bin/{city → pact}/http.js.map +1 -1
  64. package/bin/{city → pact}/invoker/ai/index.d.ts +1 -1
  65. package/bin/{city → pact}/invoker/ai/index.d.ts.map +1 -1
  66. package/bin/{city → pact}/invoker/ai/index.js +1 -1
  67. package/bin/{city → pact}/invoker/ai/index.js.map +1 -1
  68. package/bin/{city → pact}/invoker/ai/stream.d.ts +1 -1
  69. package/bin/{city → pact}/invoker/ai/stream.d.ts.map +1 -1
  70. package/bin/{city → pact}/invoker/ai/stream.js +1 -1
  71. package/bin/{city → pact}/invoker/ai/stream.js.map +1 -1
  72. package/bin/{city → pact}/invoker/ai/types.d.ts +2 -2
  73. package/bin/{city → pact}/invoker/ai/types.d.ts.map +1 -1
  74. package/bin/pact/invoker/ai/types.js +9 -0
  75. package/bin/pact/invoker/ai/types.js.map +1 -0
  76. package/bin/{city → pact}/invoker/balance/index.d.ts.map +1 -1
  77. package/bin/{city → pact}/invoker/balance/index.js.map +1 -1
  78. package/bin/{city → pact}/invoker/balance/types.d.ts.map +1 -1
  79. package/bin/pact/invoker/balance/types.js.map +1 -0
  80. package/bin/pact/invoker/cities/index.d.ts +46 -0
  81. package/bin/pact/invoker/cities/index.d.ts.map +1 -0
  82. package/bin/{city/invoker/towns → pact/invoker/cities}/index.js +16 -16
  83. package/bin/pact/invoker/cities/index.js.map +1 -0
  84. package/bin/pact/invoker/cities/types.d.ts +46 -0
  85. package/bin/pact/invoker/cities/types.d.ts.map +1 -0
  86. package/bin/pact/invoker/cities/types.js +5 -0
  87. package/bin/pact/invoker/cities/types.js.map +1 -0
  88. package/bin/{city → pact}/invoker/env/index.d.ts +2 -2
  89. package/bin/{city → pact}/invoker/env/index.d.ts.map +1 -1
  90. package/bin/{city → pact}/invoker/env/index.js +2 -2
  91. package/bin/{city → pact}/invoker/env/index.js.map +1 -1
  92. package/bin/{city → pact}/invoker/env/types.d.ts +2 -2
  93. package/bin/{city → pact}/invoker/env/types.d.ts.map +1 -1
  94. package/bin/pact/invoker/env/types.js +5 -0
  95. package/bin/pact/invoker/env/types.js.map +1 -0
  96. package/bin/{city → pact}/invoker/invoker.d.ts +9 -9
  97. package/bin/{city → pact}/invoker/invoker.d.ts.map +1 -1
  98. package/bin/{city → pact}/invoker/invoker.js +11 -11
  99. package/bin/{city → pact}/invoker/invoker.js.map +1 -1
  100. package/bin/{city → pact}/invoker/payment/index.d.ts +1 -1
  101. package/bin/{city → pact}/invoker/payment/index.d.ts.map +1 -1
  102. package/bin/{city → pact}/invoker/payment/index.js +1 -1
  103. package/bin/{city → pact}/invoker/payment/index.js.map +1 -1
  104. package/bin/{city → pact}/invoker/payment/types.d.ts +1 -1
  105. package/bin/{city → pact}/invoker/payment/types.d.ts.map +1 -1
  106. package/bin/pact/invoker/payment/types.js.map +1 -0
  107. package/bin/{city → pact}/user/index.d.ts +5 -5
  108. package/bin/{city → pact}/user/index.d.ts.map +1 -1
  109. package/bin/{city → pact}/user/index.js +9 -9
  110. package/bin/{city → pact}/user/index.js.map +1 -1
  111. package/bin/{city → pact}/user/types.d.ts +3 -3
  112. package/bin/{city → pact}/user/types.d.ts.map +1 -1
  113. package/bin/pact/user/types.js.map +1 -0
  114. package/bin/service/ai/ai-service.js +3 -3
  115. package/bin/service/ai/helpers.js +2 -2
  116. package/bin/service/ai/job-types.d.ts +8 -8
  117. package/bin/service/ai/job-types.d.ts.map +1 -1
  118. package/bin/service/ai/schema.d.ts +4 -4
  119. package/bin/service/ai/schema.js +6 -6
  120. package/bin/service/ai/schema.js.map +1 -1
  121. package/bin/service/cities/cities-service.d.ts +15 -0
  122. package/bin/service/cities/cities-service.d.ts.map +1 -0
  123. package/bin/service/{towns/towns-service.js → cities/cities-service.js} +17 -17
  124. package/bin/service/cities/cities-service.js.map +1 -0
  125. package/bin/service/cities/city-store.d.ts +17 -0
  126. package/bin/service/cities/city-store.d.ts.map +1 -0
  127. package/bin/service/{towns/town-store.js → cities/city-store.js} +17 -17
  128. package/bin/service/cities/city-store.js.map +1 -0
  129. package/bin/service/{towns → cities}/schema.d.ts +23 -23
  130. package/bin/service/cities/schema.d.ts.map +1 -0
  131. package/bin/service/cities/schema.js +60 -0
  132. package/bin/service/cities/schema.js.map +1 -0
  133. package/bin/service/cities/types.d.ts +51 -0
  134. package/bin/service/cities/types.d.ts.map +1 -0
  135. package/bin/service/cities/types.js +7 -0
  136. package/bin/service/cities/types.js.map +1 -0
  137. package/bin/service/env/env-service.d.ts +2 -2
  138. package/bin/service/env/env-service.js +3 -3
  139. package/bin/service/env/env-service.js.map +1 -1
  140. package/bin/service/env/types.d.ts +2 -2
  141. package/bin/service/env/types.js +1 -1
  142. package/bin/service/installable-service.d.ts +4 -4
  143. package/bin/service/installable-service.d.ts.map +1 -1
  144. package/bin/service/installable-service.js +1 -1
  145. package/bin/service/instruction.d.ts +2 -2
  146. package/bin/service/instruction.js +5 -5
  147. package/bin/service/instruction.js.map +1 -1
  148. package/bin/service/service.d.ts +9 -9
  149. package/bin/service/service.d.ts.map +1 -1
  150. package/bin/service/service.js +2 -2
  151. package/bin/service/service.js.map +1 -1
  152. package/package.json +3 -3
  153. package/bin/city/admin/index.d.ts.map +0 -1
  154. package/bin/city/admin/index.js.map +0 -1
  155. package/bin/city/admin/types.d.ts.map +0 -1
  156. package/bin/city/admin/types.js.map +0 -1
  157. package/bin/city/city.d.ts +0 -73
  158. package/bin/city/city.d.ts.map +0 -1
  159. package/bin/city/city.js.map +0 -1
  160. package/bin/city/index.d.ts +0 -20
  161. package/bin/city/index.d.ts.map +0 -1
  162. package/bin/city/index.js +0 -14
  163. package/bin/city/index.js.map +0 -1
  164. package/bin/city/invoker/ai/types.js +0 -9
  165. package/bin/city/invoker/ai/types.js.map +0 -1
  166. package/bin/city/invoker/balance/types.js.map +0 -1
  167. package/bin/city/invoker/env/types.js +0 -5
  168. package/bin/city/invoker/env/types.js.map +0 -1
  169. package/bin/city/invoker/payment/types.js.map +0 -1
  170. package/bin/city/invoker/towns/index.d.ts +0 -46
  171. package/bin/city/invoker/towns/index.d.ts.map +0 -1
  172. package/bin/city/invoker/towns/index.js.map +0 -1
  173. package/bin/city/invoker/towns/types.d.ts +0 -46
  174. package/bin/city/invoker/towns/types.d.ts.map +0 -1
  175. package/bin/city/invoker/towns/types.js +0 -5
  176. package/bin/city/invoker/towns/types.js.map +0 -1
  177. package/bin/city/types/city.d.ts +0 -71
  178. package/bin/city/types/city.d.ts.map +0 -1
  179. package/bin/city/types/city.js +0 -8
  180. package/bin/city/types/city.js.map +0 -1
  181. package/bin/core/auth/authenticator.d.ts.map +0 -1
  182. package/bin/core/auth/authenticator.js.map +0 -1
  183. package/bin/core/auth/token-signer.d.ts.map +0 -1
  184. package/bin/core/auth/token-signer.js.map +0 -1
  185. package/bin/core/auth/types.d.ts.map +0 -1
  186. package/bin/core/auth/types.js.map +0 -1
  187. package/bin/core/base/base-env-catalog.d.ts +0 -13
  188. package/bin/core/base/base-env-catalog.d.ts.map +0 -1
  189. package/bin/core/base/base-env-catalog.js.map +0 -1
  190. package/bin/core/base/base-init.d.ts.map +0 -1
  191. package/bin/core/base/base-init.js.map +0 -1
  192. package/bin/core/base/base-instruction.d.ts +0 -11
  193. package/bin/core/base/base-instruction.d.ts.map +0 -1
  194. package/bin/core/base/base-instruction.js.map +0 -1
  195. package/bin/core/base/base-router.d.ts.map +0 -1
  196. package/bin/core/base/base-router.js.map +0 -1
  197. package/bin/core/base/base-runtime.d.ts.map +0 -1
  198. package/bin/core/base/base-runtime.js.map +0 -1
  199. package/bin/core/base/base.d.ts.map +0 -1
  200. package/bin/core/base/base.js.map +0 -1
  201. package/bin/core/runtime.d.ts.map +0 -1
  202. package/bin/core/runtime.js +0 -13
  203. package/bin/core/runtime.js.map +0 -1
  204. package/bin/core/types.d.ts.map +0 -1
  205. package/bin/service/towns/schema.d.ts.map +0 -1
  206. package/bin/service/towns/schema.js +0 -60
  207. package/bin/service/towns/schema.js.map +0 -1
  208. package/bin/service/towns/town-store.d.ts +0 -17
  209. package/bin/service/towns/town-store.d.ts.map +0 -1
  210. package/bin/service/towns/town-store.js.map +0 -1
  211. package/bin/service/towns/towns-service.d.ts +0 -15
  212. package/bin/service/towns/towns-service.d.ts.map +0 -1
  213. package/bin/service/towns/towns-service.js.map +0 -1
  214. package/bin/service/towns/types.d.ts +0 -51
  215. package/bin/service/towns/types.d.ts.map +0 -1
  216. package/bin/service/towns/types.js +0 -7
  217. package/bin/service/towns/types.js.map +0 -1
  218. /package/bin/{core → federation}/auth/token-signer.d.ts +0 -0
  219. /package/bin/{core → federation}/auth/types.js +0 -0
  220. /package/bin/{core → federation}/types.js +0 -0
  221. /package/bin/{city → pact}/admin/types.js +0 -0
  222. /package/bin/{city → pact}/http.d.ts +0 -0
  223. /package/bin/{city → pact}/http.js +0 -0
  224. /package/bin/{city → pact}/invoker/balance/index.d.ts +0 -0
  225. /package/bin/{city → pact}/invoker/balance/index.js +0 -0
  226. /package/bin/{city → pact}/invoker/balance/types.d.ts +0 -0
  227. /package/bin/{city → pact}/invoker/balance/types.js +0 -0
  228. /package/bin/{city → pact}/invoker/payment/types.js +0 -0
  229. /package/bin/{city → pact}/user/types.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"federation.d.ts","sourceRoot":"","sources":["../../src/federation/federation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,IAAI,EAA4C,MAAM,MAAM,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAwB,KAAK,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAOjG,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAC5G,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAI1D,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IAEvD,OAAO,CAAC,QAAQ,CAAC,CAAW;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAwB;IACvC,OAAO,CAAC,SAAS,CAAC,CAA4B;IAC9C,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,IAAI,CAAC,CAAO;IACpB,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,UAAU,CAAC,CAAY;gBAEnB,OAAO,EAAE,iBAAiB;IAMtC;;OAEG;IACH,GAAG,CAAC,aAAa,EAAE,OAAO,GAAG,iBAAiB,GAAG,IAAI;IAQrD;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAI3C;;OAEG;IACH,WAAW,IAAI,OAAO,EAAE;IAIxB;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAKhD;;OAEG;IACG,KAAK,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxE,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAO9B;;OAEG;IACH,MAAM,IAAI,IAAI;IAKd;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,8BAAmC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAKtG;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAY/C;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAKpC;;OAEG;YACW,UAAU;IAoBxB;;OAEG;YACW,YAAY;IAO1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;YACW,aAAa;CAQ5B"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * CityBase 主模块。
2
+ * Federation 主模块。
3
3
  *
4
- * CityBase 是城市基础设施运行容器,负责协调:
4
+ * Federation 是城市基础设施运行容器,负责协调:
5
5
  * - service 注册
6
6
  * - runtime 初始化
7
7
  * - 鉴权器访问
@@ -9,14 +9,14 @@
9
9
  *
10
10
  * 具体初始化、路由构建、instruction 聚合等实现已拆到独立模块。
11
11
  */
12
- import { asInstallableService } from "../../service/installable-service.js";
13
- import { EnvService } from "../../service/env/env-service.js";
14
- import { TownsService } from "../../service/towns/towns-service.js";
15
- import { build_city_instruction } from "./base-instruction.js";
16
- import { initialize_city } from "./base-init.js";
17
- import { build_city_router } from "./base-router.js";
18
- import { create_runtime_from_db } from "./base-runtime.js";
19
- export class CityBase {
12
+ import { asInstallableService } from "../service/installable-service.js";
13
+ import { EnvService } from "../service/env/env-service.js";
14
+ import { CitiesService } from "../service/cities/cities-service.js";
15
+ import { build_federation_instruction } from "./federation-instruction.js";
16
+ import { initialize_federation } from "./federation-init.js";
17
+ import { build_federation_router } from "./federation-router.js";
18
+ import { create_federation_runtime } from "./federation-runtime.js";
19
+ export class Federation {
20
20
  runtime;
21
21
  services = new Map();
22
22
  database;
@@ -25,11 +25,11 @@ export class CityBase {
25
25
  init_promise;
26
26
  hono;
27
27
  authenticator;
28
- town_store;
28
+ city_store;
29
29
  constructor(options) {
30
- this.runtime = create_runtime_from_db(options);
30
+ this.runtime = create_federation_runtime(options);
31
31
  this.use(new EnvService());
32
- this.use(new TownsService());
32
+ this.use(new CitiesService());
33
33
  }
34
34
  /**
35
35
  * 注册 service。
@@ -103,13 +103,13 @@ export class CityBase {
103
103
  */
104
104
  async instruction() {
105
105
  await this.ensure_ready();
106
- return build_city_instruction(this.getServices());
106
+ return build_federation_instruction(this.getServices());
107
107
  }
108
108
  /**
109
- * 执行 City 初始化。
109
+ * 执行 Federation 初始化。
110
110
  */
111
111
  async initialize() {
112
- const state = await initialize_city({
112
+ const state = await initialize_federation({
113
113
  runtime: this.runtime,
114
114
  services: this.getServices(),
115
115
  require_ready: () => this.require_ready(),
@@ -117,9 +117,9 @@ export class CityBase {
117
117
  this.database = state.database;
118
118
  this.client = state.client;
119
119
  this.table_map = state.table_map;
120
- this.town_store = state.town_store;
120
+ this.city_store = state.city_store;
121
121
  this.authenticator = state.authenticator;
122
- this.hono = build_city_router({
122
+ this.hono = build_federation_router({
123
123
  runtime: this.runtime,
124
124
  services: this.getServices(),
125
125
  authenticator: state.authenticator,
@@ -140,17 +140,17 @@ export class CityBase {
140
140
  */
141
141
  require_ready_sync() {
142
142
  if (!this.hono) {
143
- throw new Error("CityBase init has not completed yet");
143
+ throw new Error("Federation init has not completed yet");
144
144
  }
145
145
  }
146
146
  /**
147
- * 给 Authenticator 延迟访问 town store。
147
+ * 给 Authenticator 延迟访问 city store。
148
148
  */
149
149
  async require_ready() {
150
150
  await this.ensure_ready();
151
151
  return {
152
- town: this.town_store ?? { get: () => Promise.resolve(undefined) },
152
+ city: this.city_store ?? { get: () => Promise.resolve(undefined) },
153
153
  };
154
154
  }
155
155
  }
156
- //# sourceMappingURL=base.js.map
156
+ //# sourceMappingURL=federation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"federation.js","sourceRoot":"","sources":["../../src/federation/federation.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * Runtime 能力接口模块。
3
3
  *
4
- * 定义 City 内部依赖的能力集合。用户侧只需要传入 Drizzle db,
4
+ * 定义 Federation 内部依赖的能力集合。用户侧只需要传入 Drizzle db,
5
5
  * City 会从 db 组装这些能力。
6
6
  *
7
7
  * 使用示例:
8
8
  * ```ts
9
- * const base = new CityBase({ db });
9
+ * const base = new Federation({ db });
10
10
  * ```
11
11
  */
12
12
  import type { Database, DbClient } from "../store/db.js";
@@ -61,27 +61,27 @@ export interface EnvProvider {
61
61
  /**
62
62
  * 关联数据库存储。
63
63
  *
64
- * City 初始化内置 env 表后调用。
65
- * 默认 env provider 会把 City env 表作为唯一业务 env 来源。
64
+ * Federation 初始化内置 env 表后调用。
65
+ * 默认 env provider 会把 Federation env 表作为唯一业务 env 来源。
66
66
  */
67
67
  attachStore(store: EnvStore): Promise<void>;
68
68
  }
69
69
  /**
70
- * City 内置表定义。
70
+ * Federation 内置表定义。
71
71
  *
72
- * 包含 towns 和 env 两个内置表。
72
+ * 包含 cities 和 env 两个内置表。
73
73
  * 适配器根据数据库类型(SQLite / Postgres)提供对应的表定义。
74
74
  */
75
75
  export interface BuiltinTables {
76
76
  /** 产品表 */
77
- towns: TableDef;
77
+ cities: TableDef;
78
78
  /** 环境变量表 */
79
79
  env: TableDef;
80
80
  }
81
81
  /**
82
82
  * 运行时能力接口。
83
83
  *
84
- * 这是 City 内部从 Drizzle db 组装出来的结构,不作为用户主要入口。
84
+ * 这是 Federation 内部从 Drizzle db 组装出来的结构,不作为用户主要入口。
85
85
  */
86
86
  export interface Runtime {
87
87
  /**
@@ -101,7 +101,7 @@ export interface Runtime {
101
101
  */
102
102
  env: EnvProvider;
103
103
  /**
104
- * City 内置表定义(towns + env)。
104
+ * Federation 内置表定义(cities + env)。
105
105
  *
106
106
  * 适配器根据数据库类型提供正确的 Drizzle 表定义。
107
107
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/federation/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,+BAA+B;AAC/B,MAAM,MAAM,QAAQ,GAAG,cAAc,GAAG,UAAU,CAAC;AAMnD;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAErC;;;;;;OAMG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,IAAI,IAAI,QAAQ,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEzC;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEjD;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE1C;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAMD;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU;IACV,MAAM,EAAE,QAAQ,CAAC;IACjB,YAAY;IACZ,GAAG,EAAE,QAAQ,CAAC;CACf;AAMD;;;;GAIG;AACH,MAAM,WAAW,OAAO;IACtB;;;;OAIG;IACH,QAAQ,EAAE,QAAQ,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC;IAEjB;;;;OAIG;IACH,GAAG,EAAE,WAAW,CAAC;IAEjB;;;;OAIG;IACH,aAAa,EAAE,aAAa,CAAC;IAE7B;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Runtime 能力接口模块。
3
+ *
4
+ * 定义 Federation 内部依赖的能力集合。用户侧只需要传入 Drizzle db,
5
+ * City 会从 db 组装这些能力。
6
+ *
7
+ * 使用示例:
8
+ * ```ts
9
+ * const base = new Federation({ db });
10
+ * ```
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/federation/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
@@ -7,7 +7,7 @@ import type { Database } from "../store/db.js";
7
7
  /**
8
8
  * 单次请求的运行时执行上下文。
9
9
  */
10
- export interface CityRequestExecutionContext {
10
+ export interface FederationRequestExecutionContext {
11
11
  /**
12
12
  * 延长后台任务生命周期。
13
13
  *
@@ -16,16 +16,16 @@ export interface CityRequestExecutionContext {
16
16
  waitUntil(promise: Promise<unknown>): void;
17
17
  }
18
18
  /**
19
- * CityBase.handleRequest 的可选参数。
19
+ * Federation.handleRequest 的可选参数。
20
20
  */
21
- export interface CityHandleRequestOptions {
21
+ export interface FederationHandleRequestOptions {
22
22
  /** 单次请求的运行时执行上下文。 */
23
- execution?: CityRequestExecutionContext;
23
+ execution?: FederationRequestExecutionContext;
24
24
  }
25
25
  /**
26
26
  * City 健康检查结果。
27
27
  */
28
- export interface CityBaseHealthStatus {
28
+ export interface FederationHealthStatus {
29
29
  /** 当前 Runtime 是否已经完成初始化并可处理请求 */
30
30
  ok: boolean;
31
31
  /** 服务名称,用于外部探测确认命中的服务类型 */
@@ -47,7 +47,7 @@ export interface CityBaseHealthStatus {
47
47
  * - 只接收一个 Drizzle db 对象,City 自己从中推断方言和底层 client。
48
48
  * - 不再需要传 `dialect`、`raw`、`runtime` 等冗余选项。
49
49
  */
50
- export interface CityBaseOptions {
50
+ export interface FederationOptions {
51
51
  /**
52
52
  * Drizzle database 对象。
53
53
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/federation/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAChD;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,qBAAqB;IACrB,SAAS,CAAC,EAAE,iCAAiC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,iCAAiC;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,eAAe;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,yBAAyB;IACzB,YAAY,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC9C;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;OAMG;IACH,EAAE,EAAE,QAAQ,GAAG;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACzD"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/city/user/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/federation/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
package/bin/index.d.ts CHANGED
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * @downcity/city 公共入口。
3
3
  *
4
- * City 包同时提供服务端 CityBase 与客户端 City:
5
- * - `CityBase` 用来创建和部署城市服务端
4
+ * City 包同时提供服务端 Federation 与客户端 City:
5
+ * - `Federation` 用来创建和部署城市服务端
6
6
  * - `City` 用来以 user 或 admin 角色访问城市
7
7
  */
8
- export { CityBase } from "./core/base/base.js";
9
- export type { CityBaseOptions, CityBaseHealthStatus } from "./core/types.js";
10
- export type { CityHandleRequestOptions, CityRequestExecutionContext } from "./core/types.js";
11
- export type { Runtime, EnvProvider, BuiltinTables, TableDef } from "./core/runtime.js";
8
+ export { Federation } from "./federation/federation.js";
9
+ export type { FederationOptions, FederationHealthStatus } from "./federation/types.js";
10
+ export type { FederationHandleRequestOptions, FederationRequestExecutionContext } from "./federation/types.js";
11
+ export type { Runtime, EnvProvider, BuiltinTables, TableDef } from "./federation/runtime.js";
12
12
  export { Service } from "./service/service.js";
13
13
  export { InstallableService } from "./service/installable-service.js";
14
14
  export { Action } from "./service/action.js";
@@ -23,35 +23,32 @@ export type { AIServiceOptions, ModelConfig, ModelActions, OpenAICompatibleClien
23
23
  export { buildAssistantMessage, buildImageMessage, buildToolSet, isRecord, normalizeAIUsage, normalizeOpenAICompatibleBody, readErrorMessage, readImageJobStepContext, readJsonResponse, readOpenAICompatibleSseUsage, readRequiredEnv, readString, resolveUpstreamModel, stripUndefined, toRecord, trimTrailingSlash, } from "./service/ai/helpers.js";
24
24
  export type { BuildAssistantMessageResult, ExtractedImage, ToolCallShape, } from "./service/ai/helpers.js";
25
25
  export type { AIBalanceBridge, AIBalanceChargeInput, AIProviderBillFn, AIProviderChargedOutput, AIProviderChargedResponse, AIProviderChargeLine, } from "./service/ai/charge.js";
26
- export { TokenSigner } from "./core/auth/token-signer.js";
27
- export type { RuntimeUser, CreateUserTokenInput, UserTokenPayload, UserTokenIssueResult, } from "./core/auth/types.js";
26
+ export { TokenSigner } from "./federation/auth/token-signer.js";
27
+ export type { RuntimeUser, CreateUserTokenInput, UserTokenPayload, UserTokenIssueResult, } from "./federation/auth/types.js";
28
28
  export { EnvService } from "./service/env/env-service.js";
29
29
  export type { EnvEntry, EnvRefreshResult, EnvUpsertInput, EnvRequirementStatus, EnvCatalogScope, } from "./service/env/types.js";
30
30
  export { EnvStore } from "./service/env/env-store.js";
31
- export { TownsService } from "./service/towns/towns-service.js";
32
- export type { Town, TownCreateInput, TownStatus } from "./service/towns/types.js";
33
31
  export type { Database, DbClient } from "./store/db.js";
34
32
  export { executeDDL } from "./store/db.js";
35
33
  export type { CityTableApi } from "./store/table-api.js";
36
34
  export type { CityUserSchemaInput } from "./store/types.js";
37
- export type { FetchLike, FetchResponseLike, RawStreamBody, RequestInitLike, } from "./city/http.js";
35
+ export type { FetchLike, FetchResponseLike, RawStreamBody, RequestInitLike, } from "./pact/http.js";
38
36
  export type { CityModel, CityModelDescriptor, CityModelEnvRequirement, } from "@downcity/type";
39
- export { City } from "./city/city.js";
40
- export type { AdminCityOptions, CityClientBaseOptions, CityOptions, CityOptionsForRole, CityRole, UserCityOptions, } from "./city/types/city.js";
41
- export { AIInvoker, ModelCatalog, ModelHandle } from "./city/invoker/ai/index.js";
42
- export { PaymentInvoker, PaymentMethodHandle } from "./city/invoker/payment/index.js";
43
- export { ServiceClient, ActionClient } from "./city/invoker/invoker.js";
44
- export type { UserPaymentMethod, UserPaymentMethodReason, UserPaymentMethodType, UserImageContent, UserImageFileContent, UserImageInput, UserImageJobCreateResult, UserImageJobResult, UserImageJobResultInput, UserImageJobStatus, UserImageMessage, UserImageResult, UserImageTextContent, UserServiceInput, UserServiceSummary, UserStreamChunk, UserStreamResult, UserTextResult, UserVideoResult, } from "./city/user/types.js";
37
+ export { City } from "./client/city.js";
38
+ export type { AdminCityOptions, CityBaseOptions, CityOptions, CityOptionsForRole, CityRole, UserCityOptions, } from "./client/types.js";
39
+ export { AIInvoker, ModelCatalog, ModelHandle } from "./pact/invoker/ai/index.js";
40
+ export { PaymentInvoker, PaymentMethodHandle } from "./pact/invoker/payment/index.js";
41
+ export { ServiceClient, ActionClient } from "./pact/invoker/invoker.js";
42
+ export type { UserPaymentMethod, UserPaymentMethodReason, UserPaymentMethodType, UserImageContent, UserImageFileContent, UserImageInput, UserImageJobCreateResult, UserImageJobResult, UserImageJobResultInput, UserImageJobStatus, UserImageMessage, UserImageResult, UserImageTextContent, UserServiceInput, UserServiceSummary, UserStreamChunk, UserStreamResult, UserTextResult, UserVideoResult, } from "./pact/user/types.js";
45
43
  export type { AIImageJobStepContext, AIImageJobStepResult, AIImageJobStepState, } from "./service/ai/job-types.js";
46
- export type { UserPaymentMethod as PaymentMethod, UserPaymentMethodReason as PaymentMethodReason, UserPaymentMethodType as PaymentMethodType, } from "./city/invoker/payment/types.js";
47
- export type { UserModelRef, UserModelInput, } from "./city/invoker/ai/types.js";
48
- export { BalanceInvoker, BalanceRedeemCodeInvoker } from "./city/invoker/balance/index.js";
49
- export { EnvInvoker } from "./city/invoker/env/index.js";
50
- export { TownsInvoker } from "./city/invoker/towns/index.js";
51
- export type { AdminInstructionResult, AdminModelRecord, AdminServiceSummary, } from "./city/admin/types.js";
52
- export type { BalanceAccountRecord, BalanceHistoryListInput, BalanceLedgerRecord, BalanceMutationInput, BalanceRedeemCodeCreateInput, BalanceRedeemCodeDisableInput, BalanceRedeemCodeIssueResult, BalanceRedeemCodeListInput, BalanceRedeemCodeRecord, BalanceTopupListInput, BalanceTopupRecord, BalanceTopupUpdateInput, } from "./city/invoker/balance/types.js";
53
- export type { TokenApplyInput, TokenApplyResult, } from "./city/invoker/towns/types.js";
54
- export { sqliteTowns, pgTowns } from "./service/towns/schema.js";
44
+ export type { UserPaymentMethod as PaymentMethod, UserPaymentMethodReason as PaymentMethodReason, UserPaymentMethodType as PaymentMethodType, } from "./pact/invoker/payment/types.js";
45
+ export type { UserModelRef, UserModelInput, } from "./pact/invoker/ai/types.js";
46
+ export { BalanceInvoker, BalanceRedeemCodeInvoker } from "./pact/invoker/balance/index.js";
47
+ export { CitiesInvoker } from "./pact/invoker/cities/index.js";
48
+ export { EnvInvoker } from "./pact/invoker/env/index.js";
49
+ export type { AdminInstructionResult, AdminModelRecord, AdminServiceSummary, } from "./pact/admin/types.js";
50
+ export type { BalanceAccountRecord, BalanceHistoryListInput, BalanceLedgerRecord, BalanceMutationInput, BalanceRedeemCodeCreateInput, BalanceRedeemCodeDisableInput, BalanceRedeemCodeIssueResult, BalanceRedeemCodeListInput, BalanceRedeemCodeRecord, BalanceTopupListInput, BalanceTopupRecord, BalanceTopupUpdateInput, } from "./pact/invoker/balance/types.js";
51
+ export type { CityCreateInput, CityRecord, TokenApplyInput, TokenApplyResult, } from "./pact/invoker/cities/types.js";
55
52
  export { sqliteEnv, pgEnv } from "./service/env/schema.js";
56
53
  export { randomSecret, base64UrlEncode, base64UrlDecode, base64UrlEncodeBytes, base64UrlDecodeBytes, timingSafeEqualBytes, httpError, normalizeEnvKey, bearerToken, parseDotenvEntries, } from "./utils/helpers.js";
57
54
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/bin/index.js CHANGED
@@ -1,14 +1,14 @@
1
1
  /**
2
2
  * @downcity/city 公共入口。
3
3
  *
4
- * City 包同时提供服务端 CityBase 与客户端 City:
5
- * - `CityBase` 用来创建和部署城市服务端
4
+ * City 包同时提供服务端 Federation 与客户端 City:
5
+ * - `Federation` 用来创建和部署城市服务端
6
6
  * - `City` 用来以 user 或 admin 角色访问城市
7
7
  */
8
8
  // ===========================================================================
9
- // 场景 1:创建 CityBase 实例
9
+ // 场景 1:创建 Federation 实例
10
10
  // ===========================================================================
11
- export { CityBase } from "./core/base/base.js";
11
+ export { Federation } from "./federation/federation.js";
12
12
  // ===========================================================================
13
13
  // 场景 2:注册 Service / InstallableService / AI 模型
14
14
  // ===========================================================================
@@ -21,25 +21,23 @@ export { buildAssistantMessage, buildImageMessage, buildToolSet, isRecord, norma
21
21
  // ===========================================================================
22
22
  // 场景 3:用户鉴权与 Token
23
23
  // ===========================================================================
24
- export { TokenSigner } from "./core/auth/token-signer.js";
24
+ export { TokenSigner } from "./federation/auth/token-signer.js";
25
25
  // ===========================================================================
26
- // 场景 4:管理 Town 与环境变量(内置 Service)
26
+ // 场景 4:管理环境变量(内置 Service)
27
27
  // ===========================================================================
28
28
  export { EnvService } from "./service/env/env-service.js";
29
29
  export { EnvStore } from "./service/env/env-store.js";
30
- export { TownsService } from "./service/towns/towns-service.js";
31
30
  export { executeDDL } from "./store/db.js";
32
- export { City } from "./city/city.js";
33
- export { AIInvoker, ModelCatalog, ModelHandle } from "./city/invoker/ai/index.js";
34
- export { PaymentInvoker, PaymentMethodHandle } from "./city/invoker/payment/index.js";
35
- export { ServiceClient, ActionClient } from "./city/invoker/invoker.js";
36
- export { BalanceInvoker, BalanceRedeemCodeInvoker } from "./city/invoker/balance/index.js";
37
- export { EnvInvoker } from "./city/invoker/env/index.js";
38
- export { TownsInvoker } from "./city/invoker/towns/index.js";
31
+ export { City } from "./client/city.js";
32
+ export { AIInvoker, ModelCatalog, ModelHandle } from "./pact/invoker/ai/index.js";
33
+ export { PaymentInvoker, PaymentMethodHandle } from "./pact/invoker/payment/index.js";
34
+ export { ServiceClient, ActionClient } from "./pact/invoker/invoker.js";
35
+ export { BalanceInvoker, BalanceRedeemCodeInvoker } from "./pact/invoker/balance/index.js";
36
+ export { CitiesInvoker } from "./pact/invoker/cities/index.js";
37
+ export { EnvInvoker } from "./pact/invoker/env/index.js";
39
38
  // ===========================================================================
40
39
  // 场景 7:内置表 Schema
41
40
  // ===========================================================================
42
- export { sqliteTowns, pgTowns } from "./service/towns/schema.js";
43
41
  export { sqliteEnv, pgEnv } from "./service/env/schema.js";
44
42
  // ===========================================================================
45
43
  // 场景 8:工具函数
package/bin/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAK/C,8EAA8E;AAC9E,+CAA+C;AAC/C,8EAA8E;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AA8B7C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAYpD,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,6BAA6B,EAC7B,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,4BAA4B,EAC5B,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,cAAc,EACd,QAAQ,EACR,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAiBjC,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAS1D,8EAA8E;AAC9E,iCAAiC;AACjC,8EAA8E;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAQ1D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAQhE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAqB3C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAUtC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAyCxE,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AA4B7D,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAE3D,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,OAAO,EACL,YAAY,EACZ,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,eAAe,EACf,WAAW,EACX,kBAAkB,GACnB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAKxD,8EAA8E;AAC9E,+CAA+C;AAC/C,8EAA8E;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AA8B7C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAYpD,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,6BAA6B,EAC7B,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,4BAA4B,EAC5B,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,cAAc,EACd,QAAQ,EACR,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAiBjC,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAShE,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAQ1D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAOtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAqB3C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAUxC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAyCxE,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AA8BzD,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAE3D,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,OAAO,EACL,YAAY,EACZ,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,SAAS,EACT,eAAe,EACf,WAAW,EACX,kBAAkB,GACnB,MAAM,oBAAoB,CAAC"}
@@ -4,26 +4,42 @@
4
4
  import { ServiceClient } from "../invoker/invoker.js";
5
5
  import { BalanceInvoker } from "../invoker/balance/index.js";
6
6
  import { EnvInvoker } from "../invoker/env/index.js";
7
- import { TownsInvoker } from "../invoker/towns/index.js";
8
- import type { AdminCityAccessOptions, AdminModelRecord, AdminServiceSummary } from "./types.js";
9
- export declare class AdminCityAccess {
7
+ import { CitiesInvoker } from "../invoker/cities/index.js";
8
+ import type { AdminPactAccessOptions, AdminModelRecord, AdminServiceSummary } from "./types.js";
9
+ export declare class AdminPactAccess {
10
10
  readonly balance: BalanceInvoker;
11
+ readonly cities: CitiesInvoker;
11
12
  readonly env: EnvInvoker;
12
- readonly towns: TownsInvoker;
13
13
  private readonly base_url;
14
+ readonly city_id: string;
14
15
  private readonly secret;
15
16
  private readonly fetchImpl;
16
- constructor(options: AdminCityAccessOptions);
17
+ constructor(options: AdminPactAccessOptions);
17
18
  /** 获取 Service 调用器(与 User City 共用同一路由) */
18
19
  service(name: string): ServiceClient;
19
- /** 列出当前 City 暴露的 service 摘要。 */
20
+ /** 列出当前 Federation 暴露的 service 摘要。 */
20
21
  listServices(): Promise<AdminServiceSummary[]>;
21
- /** 列出当前 City 注册的模型目录(admin 身份可见额外状态字段)。 */
22
+ /** 列出当前 Federation 注册的模型目录(admin 身份可见额外状态字段)。 */
22
23
  listModels(): Promise<AdminModelRecord[]>;
23
24
  /** 读取 City 聚合后的说明文档。 */
24
25
  instruction(): Promise<string>;
25
26
  private json;
26
27
  private text;
28
+ /**
29
+ * 为当前 City 签发 user token。
30
+ *
31
+ * 不需要传 city_id,构造时传入的 city_id 会自动注入。
32
+ */
33
+ applyToken(input: {
34
+ user_id: string;
35
+ metadata?: Record<string, unknown>;
36
+ ttl?: string | number;
37
+ }): Promise<{
38
+ user_token: string;
39
+ city_id: string;
40
+ user_id: string;
41
+ expires_at?: string;
42
+ }>;
27
43
  /**
28
44
  * 为管理端请求统一补齐鉴权头。
29
45
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pact/admin/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAU3D,OAAO,KAAK,EACV,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,qBAAa,eAAe;IAC1B,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IAEzB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;gBAE1B,OAAO,EAAE,sBAAsB;IAmB3C,yCAAyC;IACzC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;IAUpC,sCAAsC;IAChC,YAAY,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAOpD,iDAAiD;IAC3C,UAAU,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAO/C,wBAAwB;IAClB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAIpC,OAAO,CAAC,IAAI;IAQZ,OAAO,CAAC,IAAI;IASZ;;;;OAIG;IACG,UAAU,CAAC,KAAK,EAAE;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAO1F;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;CAUjB"}
@@ -4,13 +4,14 @@
4
4
  import { ServiceClient } from "../invoker/invoker.js";
5
5
  import { BalanceInvoker } from "../invoker/balance/index.js";
6
6
  import { EnvInvoker } from "../invoker/env/index.js";
7
- import { TownsInvoker } from "../invoker/towns/index.js";
7
+ import { CitiesInvoker } from "../invoker/cities/index.js";
8
8
  import { defaultFetch, normalizeBaseURL, requestJSON, requestText, requiredString, } from "../http.js";
9
- export class AdminCityAccess {
9
+ export class AdminPactAccess {
10
10
  balance;
11
+ cities;
11
12
  env;
12
- towns;
13
13
  base_url;
14
+ city_id;
14
15
  secret;
15
16
  fetchImpl;
16
17
  constructor(options) {
@@ -18,12 +19,13 @@ export class AdminCityAccess {
18
19
  throw new TypeError("Admin City options are required");
19
20
  }
20
21
  this.base_url = normalizeBaseURL(options.base_url, "base_url");
21
- this.secret = requiredString(options.admin_secret_key ?? process.env.DOWNCITY_CITY_ADMIN_SECRET_KEY, "admin_secret_key");
22
+ this.city_id = requiredString(options.city_id, "city_id");
23
+ this.secret = requiredString(options.admin_secret_key ?? process.env.DOWNCITY_FEDERATION_ADMIN_SECRET_KEY, "admin_secret_key");
22
24
  this.fetchImpl = options.fetch ?? defaultFetch();
23
25
  const req = (path, init) => this.json(path, init);
24
26
  this.balance = new BalanceInvoker({ requestJSON: req });
27
+ this.cities = new CitiesInvoker({ requestJSON: req });
25
28
  this.env = new EnvInvoker({ requestJSON: req });
26
- this.towns = new TownsInvoker({ requestJSON: req });
27
29
  }
28
30
  /** 获取 Service 调用器(与 User City 共用同一路由) */
29
31
  service(name) {
@@ -32,14 +34,14 @@ export class AdminCityAccess {
32
34
  throw new TypeError("service name is required");
33
35
  return new ServiceClient((path, init) => this.json(path, init), "/v1", id);
34
36
  }
35
- /** 列出当前 City 暴露的 service 摘要。 */
37
+ /** 列出当前 Federation 暴露的 service 摘要。 */
36
38
  async listServices() {
37
39
  const body = await this.json("/v1/services", {
38
40
  method: "GET",
39
41
  });
40
42
  return body.items;
41
43
  }
42
- /** 列出当前 City 注册的模型目录(admin 身份可见额外状态字段)。 */
44
+ /** 列出当前 Federation 注册的模型目录(admin 身份可见额外状态字段)。 */
43
45
  async listModels() {
44
46
  const body = await this.json("/v1/ai/models", {
45
47
  method: "GET",
@@ -48,7 +50,7 @@ export class AdminCityAccess {
48
50
  }
49
51
  /** 读取 City 聚合后的说明文档。 */
50
52
  async instruction() {
51
- return this.text("/v1/city/instruction", { method: "GET" });
53
+ return this.text("/v1/federation/instruction", { method: "GET" });
52
54
  }
53
55
  json(path, init) {
54
56
  return requestJSON({
@@ -64,6 +66,17 @@ export class AdminCityAccess {
64
66
  init: this.withAuth(init),
65
67
  });
66
68
  }
69
+ /**
70
+ * 为当前 City 签发 user token。
71
+ *
72
+ * 不需要传 city_id,构造时传入的 city_id 会自动注入。
73
+ */
74
+ async applyToken(input) {
75
+ return this.json('/v1/cities/tokens/apply', {
76
+ method: 'POST',
77
+ body: JSON.stringify({ ...input, city_id: this.city_id }),
78
+ });
79
+ }
67
80
  /**
68
81
  * 为管理端请求统一补齐鉴权头。
69
82
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pact/admin/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,cAAc,GAGf,MAAM,YAAY,CAAC;AAOpB,MAAM,OAAO,eAAe;IACjB,OAAO,CAAiB;IACxB,MAAM,CAAgB;IACtB,GAAG,CAAa;IAER,QAAQ,CAAS;IACzB,OAAO,CAAS;IACR,MAAM,CAAS;IACf,SAAS,CAAY;IAEtC,YAAY,OAA+B;QACzC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,cAAc,CAC1B,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAC5E,kBAAkB,CACnB,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,EAAE,CAAC;QAEjD,MAAM,GAAG,GAAG,CAAI,IAAY,EAAE,IAAqB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAI,IAAI,EAAE,IAAI,CAAC,CAAC;QACjF,IAAI,CAAC,OAAO,GAAG,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,yCAAyC;IACzC,OAAO,CAAC,IAAY;QAClB,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,SAAS,CAAC,0BAA0B,CAAC,CAAC;QACzD,OAAO,IAAI,aAAa,CACtB,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EACrC,KAAK,EACL,EAAE,CACH,CAAC;IACJ,CAAC;IAED,sCAAsC;IACtC,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAmC,cAAc,EAAE;YAC7E,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,iDAAiD;IACjD,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAgC,eAAe,EAAE;YAC3E,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,wBAAwB;IACxB,KAAK,CAAC,WAAW;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACpE,CAAC;IAEO,IAAI,CAAI,IAAY,EAAE,IAAqB;QACjD,OAAO,WAAW,CAAI;YACpB,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE;YAC9B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;SAC1B,CAAC,CAAC;IACL,CAAC;IAEO,IAAI,CAAC,IAAY,EAAE,IAAqB;QAC9C,OAAO,WAAW,CAAC;YACjB,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE;YAC9B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;SAC1B,CAAC,CAAC;IACL,CAAC;IAGD;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,KAIhB;QACC,OAAO,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE;YAC1C,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;SAC1D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACK,QAAQ,CAAC,IAAqB;QACpC,OAAO;YACL,GAAG,IAAI;YACP,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;gBACtC,GAAG,IAAI,CAAC,OAAO;aAChB;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -5,9 +5,15 @@ import type { FetchLike } from "../http.js";
5
5
  import type { CityModelDescriptor } from "@downcity/type";
6
6
  import type { UserServiceSummary } from "../user/types.js";
7
7
  /** Admin City 内部访问层构造参数 */
8
- export interface AdminCityAccessOptions {
8
+ export interface AdminPactAccessOptions {
9
9
  /** City 管理端 server URL */
10
10
  base_url: string;
11
+ /**
12
+ * 当前管理的 City ID。
13
+ *
14
+ * 传入后 token 签发等服务会自动使用该 ID,调用方无需再传 city_id。
15
+ */
16
+ city_id: string;
11
17
  /** 管理密钥 */
12
18
  admin_secret_key?: string;
13
19
  /** 自定义 fetch 实现 */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/pact/admin/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,2BAA2B;AAC3B,MAAM,WAAW,sBAAsB;IACrC,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB,WAAW;IACX,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB;IACnB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/pact/admin/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/city/http.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,2BAA2B;AAC3B,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;AAE9D,2BAA2B;AAC3B,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,sBAAsB;AACtB,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB;AAED,yBAAyB;AACzB,MAAM,WAAW,SAAS;IACxB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAClE;AAMD,2BAA2B;AAC3B,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGtE;AAED,cAAc;AACd,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAKpE;AAMD,iBAAiB;AACjB,wBAAgB,YAAY,IAAI,SAAS,CAKxC;AAED,sBAAsB;AACtB,wBAAsB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE;IAC3C,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,GAAG,OAAO,CAAC,CAAC,CAAC,CAIb;AAED,kBAAkB;AAClB,wBAAsB,UAAU,CAAC,MAAM,EAAE;IACvC,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAI7B;AAED,kBAAkB;AAClB,wBAAsB,WAAW,CAAC,MAAM,EAAE;IACxC,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,GAAG,OAAO,CAAC,MAAM,CAAC,CAIlB;AAMD,eAAe;AACf,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIxD;AAED,eAAe;AACf,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGnF"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/pact/http.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,2BAA2B;AAC3B,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;AAE9D,2BAA2B;AAC3B,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,sBAAsB;AACtB,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB;AAED,yBAAyB;AACzB,MAAM,WAAW,SAAS;IACxB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAClE;AAMD,2BAA2B;AAC3B,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGtE;AAED,cAAc;AACd,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAKpE;AAMD,iBAAiB;AACjB,wBAAgB,YAAY,IAAI,SAAS,CAKxC;AAED,sBAAsB;AACtB,wBAAsB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE;IAC3C,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,GAAG,OAAO,CAAC,CAAC,CAAC,CAIb;AAED,kBAAkB;AAClB,wBAAsB,UAAU,CAAC,MAAM,EAAE;IACvC,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAI7B;AAED,kBAAkB;AAClB,wBAAsB,WAAW,CAAC,MAAM,EAAE;IACxC,KAAK,EAAE,SAAS,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,eAAe,CAAC;CACvB,GAAG,OAAO,CAAC,MAAM,CAAC,CAIlB;AAMD,eAAe;AACf,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIxD;AAED,eAAe;AACf,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAGnF"}
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/city/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/pact/http.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA8BH,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,2BAA2B;AAC3B,MAAM,UAAU,gBAAgB,CAAC,KAAc,EAAE,KAAa;IAC5D,MAAM,GAAG,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACzC,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,cAAc;AACd,MAAM,UAAU,cAAc,CAAC,KAAc,EAAE,KAAa;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,SAAS,CAAC,GAAG,KAAK,6BAA6B,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,iBAAiB;AACjB,MAAM,UAAU,YAAY;IAC1B,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,IAAmB,CAA+B,CAAC;AACvG,CAAC;AAED,sBAAsB;AACtB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAI,MAIpC;IACC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,QAAQ,CAAC,IAAI,EAAgB,CAAC;AACvC,CAAC;AAED,kBAAkB;AAClB,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAIhC;IACC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,kBAAkB;AAClB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAIjC;IACC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,8EAA8E;AAC9E,SAAS;AACT,8EAA8E;AAE9E,eAAe;AACf,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAC;IAC/D,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,eAAe;AACf,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,SAAiB,EAAE,IAAY;IACzE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjF,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,SAAS,EAAE,CAAC;AAChF,CAAC;AAED,8EAA8E;AAC9E,KAAK;AACL,8EAA8E;AAE9E,KAAK,UAAU,SAAS,CAAC,QAA2B;IAClD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,gCAAgC,QAAQ,CAAC,MAAM,KAAK,IAAI,EAAE,CAGjF,CAAC;IACF,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC/B,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * AI Service 调用器(对应 core service/ai/ai-service.ts AIService)。
2
+ * AI Service 调用器(对应 service/ai/ai-service.ts AIService)。
3
3
  *
4
4
  * 路由:/v1/ai/{modality} 和 /v1/ai/models。
5
5
  */