effect-app 4.0.0-beta.99 → 4.0.1

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 (391) hide show
  1. package/CHANGELOG.md +2042 -0
  2. package/dist/Array.d.ts +1 -17
  3. package/dist/Array.d.ts.map +1 -1
  4. package/dist/Array.js +3 -27
  5. package/dist/Chunk.d.ts +3 -27
  6. package/dist/Chunk.d.ts.map +1 -1
  7. package/dist/Chunk.js +4 -39
  8. package/dist/Config/SecretURL.d.ts +3 -1
  9. package/dist/Config/SecretURL.d.ts.map +1 -1
  10. package/dist/Config/SecretURL.js +3 -6
  11. package/dist/Config/internal/configSecretURL.d.ts.map +1 -1
  12. package/dist/Config/internal/configSecretURL.js +2 -2
  13. package/dist/Config.d.ts +0 -5
  14. package/dist/Config.d.ts.map +1 -1
  15. package/dist/Config.js +7 -5
  16. package/dist/ConfigProvider.d.ts +0 -37
  17. package/dist/ConfigProvider.d.ts.map +1 -1
  18. package/dist/ConfigProvider.js +5 -41
  19. package/dist/Context.d.ts +6 -4
  20. package/dist/Context.d.ts.map +1 -1
  21. package/dist/Context.js +4 -3
  22. package/dist/DataDependencies.d.ts +136 -0
  23. package/dist/DataDependencies.d.ts.map +1 -0
  24. package/dist/DataDependencies.js +112 -0
  25. package/dist/DateTime.d.ts +33 -0
  26. package/dist/DateTime.d.ts.map +1 -0
  27. package/dist/DateTime.js +18 -0
  28. package/dist/Effect.d.ts +3 -14
  29. package/dist/Effect.d.ts.map +1 -1
  30. package/dist/Effect.js +8 -26
  31. package/dist/Emailer.d.ts +51 -0
  32. package/dist/Emailer.d.ts.map +1 -0
  33. package/dist/Emailer.js +7 -0
  34. package/dist/Function.d.ts +0 -4
  35. package/dist/Function.d.ts.map +1 -1
  36. package/dist/Function.js +1 -7
  37. package/dist/Layer.d.ts +6 -3
  38. package/dist/Layer.d.ts.map +1 -1
  39. package/dist/Layer.js +3 -2
  40. package/dist/Model/Repository/Registry.d.ts +22 -0
  41. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  42. package/dist/Model/Repository/Registry.js +18 -0
  43. package/dist/Model/Repository/dependency.d.ts +6 -0
  44. package/dist/Model/Repository/dependency.d.ts.map +1 -0
  45. package/dist/Model/Repository/dependency.js +29 -0
  46. package/dist/Model/Repository/ext.d.ts +60 -0
  47. package/dist/Model/Repository/ext.d.ts.map +1 -0
  48. package/dist/Model/Repository/ext.js +124 -0
  49. package/dist/Model/Repository/internal/internal.d.ts +68 -0
  50. package/dist/Model/Repository/internal/internal.d.ts.map +1 -0
  51. package/dist/Model/Repository/internal/internal.js +610 -0
  52. package/dist/Model/Repository/legacy.d.ts +21 -0
  53. package/dist/Model/Repository/legacy.d.ts.map +1 -0
  54. package/dist/Model/Repository/legacy.js +2 -0
  55. package/dist/Model/Repository/makeRepo.d.ts +71 -0
  56. package/dist/Model/Repository/makeRepo.d.ts.map +1 -0
  57. package/dist/Model/Repository/makeRepo.js +30 -0
  58. package/dist/Model/Repository/service.d.ts +121 -0
  59. package/dist/Model/Repository/service.d.ts.map +1 -0
  60. package/dist/Model/Repository/service.js +2 -0
  61. package/dist/Model/Repository/validation.d.ts +72 -0
  62. package/dist/Model/Repository/validation.d.ts.map +1 -0
  63. package/dist/Model/Repository/validation.js +39 -0
  64. package/dist/Model/Repository.d.ts +8 -0
  65. package/dist/Model/Repository.d.ts.map +1 -0
  66. package/dist/Model/Repository.js +8 -0
  67. package/dist/Model/dsl.d.ts +34 -0
  68. package/dist/Model/dsl.d.ts.map +1 -0
  69. package/dist/Model/dsl.js +45 -0
  70. package/dist/Model/filter/filterApi.d.ts +30 -0
  71. package/dist/Model/filter/filterApi.d.ts.map +1 -0
  72. package/dist/Model/filter/filterApi.js +2 -0
  73. package/dist/Model/filter/types/errors.d.ts +29 -0
  74. package/dist/Model/filter/types/errors.d.ts.map +1 -0
  75. package/dist/Model/filter/types/errors.js +2 -0
  76. package/dist/Model/filter/types/fields.d.ts +15 -0
  77. package/dist/Model/filter/types/fields.d.ts.map +1 -0
  78. package/dist/Model/filter/types/fields.js +2 -0
  79. package/dist/Model/filter/types/path/common.d.ts +316 -0
  80. package/dist/Model/filter/types/path/common.d.ts.map +1 -0
  81. package/dist/Model/filter/types/path/common.js +2 -0
  82. package/dist/Model/filter/types/path/eager.d.ts +94 -0
  83. package/dist/Model/filter/types/path/eager.d.ts.map +1 -0
  84. package/dist/Model/filter/types/path/eager.js +36 -0
  85. package/dist/Model/filter/types/path/index.d.ts +4 -0
  86. package/dist/Model/filter/types/path/index.d.ts.map +1 -0
  87. package/dist/Model/filter/types/path/index.js +3 -0
  88. package/dist/Model/filter/types/utils.d.ts +79 -0
  89. package/dist/Model/filter/types/utils.d.ts.map +1 -0
  90. package/dist/Model/filter/types/utils.js +2 -0
  91. package/dist/Model/filter/types/validator.d.ts +30 -0
  92. package/dist/Model/filter/types/validator.d.ts.map +1 -0
  93. package/dist/Model/filter/types/validator.js +2 -0
  94. package/dist/Model/filter/types.d.ts +5 -0
  95. package/dist/Model/filter/types.d.ts.map +1 -0
  96. package/dist/Model/filter/types.js +7 -0
  97. package/dist/Model/query/dsl.d.ts +630 -0
  98. package/dist/Model/query/dsl.d.ts.map +1 -0
  99. package/dist/Model/query/dsl.js +376 -0
  100. package/dist/Model/query/new-kid-interpreter.d.ts +132 -0
  101. package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -0
  102. package/dist/Model/query/new-kid-interpreter.js +369 -0
  103. package/dist/Model/query.d.ts +15 -0
  104. package/dist/Model/query.d.ts.map +1 -0
  105. package/dist/Model/query.js +3 -0
  106. package/dist/Model.d.ts +6 -0
  107. package/dist/Model.d.ts.map +1 -0
  108. package/dist/Model.js +6 -0
  109. package/dist/NonEmptySet.d.ts +3 -1
  110. package/dist/NonEmptySet.d.ts.map +1 -1
  111. package/dist/NonEmptySet.js +2 -2
  112. package/dist/Option.d.ts +1 -2
  113. package/dist/Option.d.ts.map +1 -1
  114. package/dist/Option.js +3 -7
  115. package/dist/Pure.d.ts +9 -7
  116. package/dist/Pure.d.ts.map +1 -1
  117. package/dist/Pure.js +20 -17
  118. package/dist/QueueMaker.d.ts +11 -0
  119. package/dist/QueueMaker.d.ts.map +1 -0
  120. package/dist/QueueMaker.js +11 -0
  121. package/dist/RequestContext.d.ts +87 -0
  122. package/dist/RequestContext.d.ts.map +1 -0
  123. package/dist/RequestContext.js +45 -0
  124. package/dist/RequestScopedDependencies.d.ts +21 -0
  125. package/dist/RequestScopedDependencies.d.ts.map +1 -0
  126. package/dist/RequestScopedDependencies.js +16 -0
  127. package/dist/Schema/Class.d.ts +163 -16
  128. package/dist/Schema/Class.d.ts.map +1 -1
  129. package/dist/Schema/Class.js +193 -21
  130. package/dist/Schema/FastCheck.d.ts.map +1 -1
  131. package/dist/Schema/SchemaParser.d.ts +5 -0
  132. package/dist/Schema/SchemaParser.d.ts.map +1 -0
  133. package/dist/Schema/SchemaParser.js +6 -0
  134. package/dist/Schema/SpecialJsonSchema.d.ts +15 -2
  135. package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -1
  136. package/dist/Schema/SpecialJsonSchema.js +70 -12
  137. package/dist/Schema/SpecialOpenApi.d.ts +1 -1
  138. package/dist/Schema/SpecialOpenApi.js +3 -3
  139. package/dist/Schema/brand.d.ts +5 -5
  140. package/dist/Schema/brand.d.ts.map +1 -1
  141. package/dist/Schema/brand.js +6 -4
  142. package/dist/Schema/email.d.ts.map +1 -1
  143. package/dist/Schema/email.js +8 -5
  144. package/dist/Schema/ext.d.ts +279 -75
  145. package/dist/Schema/ext.d.ts.map +1 -1
  146. package/dist/Schema/ext.js +330 -72
  147. package/dist/Schema/moreStrings.d.ts +82 -48
  148. package/dist/Schema/moreStrings.d.ts.map +1 -1
  149. package/dist/Schema/moreStrings.js +85 -51
  150. package/dist/Schema/numbers.d.ts +33 -21
  151. package/dist/Schema/numbers.d.ts.map +1 -1
  152. package/dist/Schema/numbers.js +64 -12
  153. package/dist/Schema/phoneNumber.d.ts.map +1 -1
  154. package/dist/Schema/phoneNumber.js +6 -6
  155. package/dist/Schema/schema.d.ts +1 -1
  156. package/dist/Schema/schema.d.ts.map +1 -1
  157. package/dist/Schema/schema.js +2 -2
  158. package/dist/Schema/strings.d.ts +18 -4
  159. package/dist/Schema/strings.d.ts.map +1 -1
  160. package/dist/Schema/strings.js +1 -5
  161. package/dist/Schema.d.ts +224 -7
  162. package/dist/Schema.d.ts.map +1 -1
  163. package/dist/Schema.js +190 -24
  164. package/dist/SchemaAST.d.ts +2 -0
  165. package/dist/SchemaAST.d.ts.map +1 -0
  166. package/dist/SchemaAST.js +2 -0
  167. package/dist/Set.d.ts +4 -1
  168. package/dist/Set.d.ts.map +1 -1
  169. package/dist/Set.js +8 -6
  170. package/dist/Store.d.ts +215 -0
  171. package/dist/Store.d.ts.map +1 -0
  172. package/dist/Store.js +113 -0
  173. package/dist/_ext/Array.d.ts +1 -1
  174. package/dist/_ext/Array.d.ts.map +1 -1
  175. package/dist/_ext/Array.js +4 -2
  176. package/dist/_ext/ord.ext.d.ts +2 -1
  177. package/dist/_ext/ord.ext.d.ts.map +1 -1
  178. package/dist/_ext/ord.ext.js +2 -2
  179. package/dist/builtin.d.ts +2 -14
  180. package/dist/builtin.d.ts.map +1 -1
  181. package/dist/builtin.js +1 -1
  182. package/dist/client/InvalidationKeys.d.ts +30 -0
  183. package/dist/client/InvalidationKeys.d.ts.map +1 -0
  184. package/dist/client/InvalidationKeys.js +37 -0
  185. package/dist/client/apiClientFactory.d.ts +13 -8
  186. package/dist/client/apiClientFactory.d.ts.map +1 -1
  187. package/dist/client/apiClientFactory.js +154 -34
  188. package/dist/client/clientFor.d.ts +48 -13
  189. package/dist/client/clientFor.d.ts.map +1 -1
  190. package/dist/client/clientFor.js +9 -1
  191. package/dist/client/errors.d.ts +74 -28
  192. package/dist/client/errors.d.ts.map +1 -1
  193. package/dist/client/errors.js +41 -10
  194. package/dist/client/makeClient.d.ts +487 -32
  195. package/dist/client/makeClient.d.ts.map +1 -1
  196. package/dist/client/makeClient.js +47 -21
  197. package/dist/client.d.ts +2 -0
  198. package/dist/client.d.ts.map +1 -1
  199. package/dist/client.js +3 -1
  200. package/dist/faker.d.ts.map +1 -1
  201. package/dist/http/Request.d.ts +2 -2
  202. package/dist/http/Request.d.ts.map +1 -1
  203. package/dist/http/Request.js +2 -2
  204. package/dist/http/internal/lib.d.ts +12 -12
  205. package/dist/http/internal/lib.d.ts.map +1 -1
  206. package/dist/http/internal/lib.js +13 -13
  207. package/dist/ids.d.ts +32 -14
  208. package/dist/ids.d.ts.map +1 -1
  209. package/dist/ids.js +38 -7
  210. package/dist/index.d.ts +3 -0
  211. package/dist/index.d.ts.map +1 -1
  212. package/dist/index.js +5 -1
  213. package/dist/middleware.d.ts +12 -6
  214. package/dist/middleware.d.ts.map +1 -1
  215. package/dist/middleware.js +13 -7
  216. package/dist/migration/nativeEffect.d.ts +21 -0
  217. package/dist/migration/nativeEffect.d.ts.map +1 -0
  218. package/dist/migration/nativeEffect.js +598 -0
  219. package/dist/rpc/Invalidation.d.ts +1124 -0
  220. package/dist/rpc/Invalidation.d.ts.map +1 -0
  221. package/dist/rpc/Invalidation.js +178 -0
  222. package/dist/rpc/MiddlewareMaker.d.ts +10 -7
  223. package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
  224. package/dist/rpc/MiddlewareMaker.js +57 -37
  225. package/dist/rpc/RpcContextMap.d.ts +2 -2
  226. package/dist/rpc/RpcContextMap.d.ts.map +1 -1
  227. package/dist/rpc/RpcMiddleware.d.ts +13 -10
  228. package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
  229. package/dist/rpc/RpcMiddleware.js +2 -2
  230. package/dist/rpc.d.ts +1 -1
  231. package/dist/rpc.d.ts.map +1 -1
  232. package/dist/rpc.js +2 -2
  233. package/dist/runtime.d.ts +19 -0
  234. package/dist/runtime.d.ts.map +1 -0
  235. package/dist/runtime.js +40 -0
  236. package/dist/setupRequest.d.ts +20 -0
  237. package/dist/setupRequest.d.ts.map +1 -0
  238. package/dist/setupRequest.js +72 -0
  239. package/dist/toast.d.ts +51 -0
  240. package/dist/toast.d.ts.map +1 -0
  241. package/dist/toast.js +34 -0
  242. package/dist/transform.d.ts +1 -1
  243. package/dist/transform.d.ts.map +1 -1
  244. package/dist/transform.js +4 -5
  245. package/dist/utils/effectify.d.ts +1 -1
  246. package/dist/utils/effectify.d.ts.map +1 -1
  247. package/dist/utils/effectify.js +2 -2
  248. package/dist/utils/extend.d.ts +6 -1
  249. package/dist/utils/extend.d.ts.map +1 -1
  250. package/dist/utils/extend.js +24 -6
  251. package/dist/utils/gen.d.ts +4 -4
  252. package/dist/utils/gen.d.ts.map +1 -1
  253. package/dist/utils/logLevel.d.ts +2 -2
  254. package/dist/utils/logLevel.d.ts.map +1 -1
  255. package/dist/utils/logger.d.ts +2 -1
  256. package/dist/utils/logger.d.ts.map +1 -1
  257. package/dist/utils/logger.js +2 -2
  258. package/dist/utils.d.ts +34 -45
  259. package/dist/utils.d.ts.map +1 -1
  260. package/dist/utils.js +33 -49
  261. package/dist/validation/validators.d.ts.map +1 -1
  262. package/dist/validation.d.ts.map +1 -1
  263. package/dist/withToast.d.ts +30 -0
  264. package/dist/withToast.d.ts.map +1 -0
  265. package/dist/withToast.js +64 -0
  266. package/package.json +25 -266
  267. package/src/Array.ts +7 -39
  268. package/src/Chunk.ts +6 -55
  269. package/src/Config/SecretURL.ts +6 -3
  270. package/src/Config/internal/configSecretURL.ts +2 -2
  271. package/src/Config.ts +6 -13
  272. package/src/ConfigProvider.ts +4 -47
  273. package/src/Context.ts +9 -8
  274. package/src/DataDependencies.ts +171 -0
  275. package/src/DateTime.ts +473 -0
  276. package/src/Effect.ts +10 -32
  277. package/src/Emailer.ts +51 -0
  278. package/src/Function.ts +0 -7
  279. package/src/Inputify.type.ts +1 -1
  280. package/src/Layer.ts +8 -5
  281. package/src/Model/Repository/Registry.ts +35 -0
  282. package/src/Model/Repository/dependency.ts +32 -0
  283. package/src/Model/Repository/ext.ts +374 -0
  284. package/src/Model/Repository/internal/internal.ts +987 -0
  285. package/src/Model/Repository/legacy.ts +29 -0
  286. package/src/Model/Repository/makeRepo.ts +168 -0
  287. package/src/Model/Repository/service.ts +676 -0
  288. package/src/Model/Repository/validation.ts +38 -0
  289. package/src/Model/Repository.ts +7 -0
  290. package/src/Model/dsl.ts +130 -0
  291. package/src/Model/filter/filterApi.ts +78 -0
  292. package/src/Model/filter/types/errors.ts +47 -0
  293. package/src/Model/filter/types/fields.ts +50 -0
  294. package/src/Model/filter/types/path/common.ts +404 -0
  295. package/src/Model/filter/types/path/eager.ts +329 -0
  296. package/src/Model/filter/types/path/index.ts +4 -0
  297. package/src/Model/filter/types/utils.ts +128 -0
  298. package/src/Model/filter/types/validator.ts +46 -0
  299. package/src/Model/filter/types.ts +6 -0
  300. package/src/Model/query/dsl.ts +3092 -0
  301. package/src/Model/query/new-kid-interpreter.ts +531 -0
  302. package/src/Model/query.ts +13 -0
  303. package/src/Model.ts +5 -0
  304. package/src/NonEmptySet.ts +6 -4
  305. package/src/Option.ts +3 -8
  306. package/src/Pure.ts +20 -17
  307. package/src/QueueMaker.ts +11 -0
  308. package/src/RequestContext.ts +48 -0
  309. package/src/RequestScopedDependencies.ts +45 -0
  310. package/src/Schema/Class.ts +550 -56
  311. package/src/Schema/SchemaParser.ts +12 -0
  312. package/src/Schema/SpecialJsonSchema.ts +75 -7
  313. package/src/Schema/SpecialOpenApi.ts +5 -5
  314. package/src/Schema/brand.ts +27 -12
  315. package/src/Schema/email.ts +9 -7
  316. package/src/Schema/ext.ts +405 -95
  317. package/src/Schema/moreStrings.ts +213 -88
  318. package/src/Schema/numbers.ts +107 -29
  319. package/src/Schema/phoneNumber.ts +8 -9
  320. package/src/Schema/schema.ts +1 -1
  321. package/src/Schema/strings.ts +23 -14
  322. package/src/Schema.ts +403 -46
  323. package/src/SchemaAST.ts +1 -0
  324. package/src/Set.ts +10 -5
  325. package/src/Store.ts +325 -0
  326. package/src/_ext/Array.ts +4 -2
  327. package/src/_ext/ord.ext.ts +2 -1
  328. package/src/builtin-json.d.ts +24 -0
  329. package/src/builtin.ts +16 -21
  330. package/src/client/InvalidationKeys.ts +55 -0
  331. package/src/client/apiClientFactory.ts +295 -129
  332. package/src/client/clientFor.ts +101 -33
  333. package/src/client/errors.ts +66 -20
  334. package/src/client/makeClient.ts +519 -60
  335. package/src/client.ts +6 -4
  336. package/src/http/Request.ts +4 -4
  337. package/src/http/internal/lib.ts +12 -12
  338. package/src/http.ts +1 -1
  339. package/src/ids.ts +45 -8
  340. package/src/index.ts +20 -16
  341. package/src/middleware.ts +12 -8
  342. package/src/migration/nativeEffect.ts +645 -0
  343. package/src/rpc/Invalidation.ts +278 -0
  344. package/src/rpc/MiddlewareMaker.ts +86 -79
  345. package/src/rpc/README.md +2 -2
  346. package/src/rpc/RpcContextMap.ts +4 -4
  347. package/src/rpc/RpcMiddleware.ts +18 -13
  348. package/src/rpc.ts +4 -4
  349. package/src/runtime.ts +57 -0
  350. package/src/setupRequest.ts +138 -0
  351. package/src/toast.ts +54 -0
  352. package/src/transform.ts +4 -4
  353. package/src/utils/effectify.ts +1 -1
  354. package/src/utils/extend.ts +24 -5
  355. package/src/utils/gen.ts +7 -7
  356. package/src/utils/logLevel.ts +1 -1
  357. package/src/utils/logger.ts +3 -2
  358. package/src/utils.ts +85 -175
  359. package/src/validation.ts +2 -2
  360. package/src/withToast.ts +133 -0
  361. package/test/dateTimeLocal.test.ts +55 -0
  362. package/test/dist/dateTimeLocal.test.d.ts.map +1 -0
  363. package/test/dist/nativeEffectMigration.test.d.ts.map +1 -0
  364. package/test/dist/rpc.test.d.ts.map +1 -1
  365. package/test/dist/rpcMiddlewareContext.test.d.ts.map +1 -0
  366. package/test/moreStrings.test.ts +55 -10
  367. package/test/nativeEffectMigration.test.ts +77 -0
  368. package/test/rpc.test.ts +28 -11
  369. package/test/rpcMiddlewareContext.test.ts +63 -0
  370. package/test/schema.test.ts +318 -55
  371. package/test/secretURL.test.ts +4 -1
  372. package/test/special.test.ts +663 -131
  373. package/test/utils.test.ts +5 -5
  374. package/tsconfig.base.json +6 -4
  375. package/tsconfig.json +9 -1
  376. package/tsconfig.src.json +29 -29
  377. package/tsconfig.test.json +2 -2
  378. package/dist/Operations.d.ts +0 -124
  379. package/dist/Operations.d.ts.map +0 -1
  380. package/dist/Operations.js +0 -29
  381. package/dist/_ext/date.d.ts +0 -15
  382. package/dist/_ext/date.d.ts.map +0 -1
  383. package/dist/_ext/date.js +0 -16
  384. package/dist/_ext/misc.d.ts +0 -14
  385. package/dist/_ext/misc.d.ts.map +0 -1
  386. package/dist/_ext/misc.js +0 -17
  387. package/eslint.config.mjs +0 -26
  388. package/src/Operations.ts +0 -55
  389. package/src/_ext/date.ts +0 -27
  390. package/src/_ext/misc.ts +0 -46
  391. package/tsconfig.json.bak +0 -12
@@ -1,4 +1,4 @@
1
- import { S } from "effect-app"
1
+ import * as S from "effect-app/Schema"
2
2
  import { test } from "vitest"
3
3
  import { copyOrigin } from "../src/utils.js"
4
4
 
@@ -77,14 +77,14 @@ test("works with class", () => {
77
77
 
78
78
  expect(Object.getPrototypeOf(res3)).toEqual(Banana.prototype)
79
79
 
80
- // @ts-expect-error extraProp is not a valid property of Banana
81
80
  copyBanana(
82
81
  original,
82
+ // @ts-expect-error extraProp is not a valid property of Banana
83
83
  { name: "string", extraProp: "whatever" }
84
84
  )
85
85
 
86
- // @ts-expect-error extraProp is not a valid property of Banana
87
86
  copyBanana(
87
+ // @ts-expect-error extraProp is not a valid property of Banana
88
88
  original,
89
89
  { extraProp: "whatever" }
90
90
  )
@@ -179,14 +179,14 @@ test("works with schema class", () => {
179
179
 
180
180
  expect(Object.getPrototypeOf(res3)).toEqual(Banana.prototype)
181
181
 
182
- // @ts-expect-error extraProp is not a valid property of Banana
183
182
  copyBanana(
184
183
  original,
184
+ // @ts-expect-error extraProp is not a valid property of Banana
185
185
  { name: "string", extraProp: "whatever" }
186
186
  )
187
187
 
188
- // @ts-expect-error extraProp is not a valid property of Banana
189
188
  copyBanana(
189
+ // @ts-expect-error extraProp is not a valid property of Banana
190
190
  original,
191
191
  { extraProp: "whatever" }
192
192
  )
@@ -7,7 +7,7 @@
7
7
  ],
8
8
  "target": "ES2022",
9
9
  // inline source maps stay better in sync with the source, which should aid with watchers.
10
- //"sourceMap": true,
10
+ // "sourceMap": true,
11
11
  "inlineSourceMap": true,
12
12
  "incremental": true,
13
13
  "composite": true,
@@ -22,7 +22,9 @@
22
22
  "resolveJsonModule": true,
23
23
  "moduleResolution": "Node16",
24
24
  "noErrorTruncation": true,
25
- "forceConsistentCasingInFileNames": true
25
+ "forceConsistentCasingInFileNames": true,
26
+ "rewriteRelativeImportExtensions": true,
27
+ "allowImportingTsExtensions": true
26
28
  },
27
29
  "watchOptions": {
28
30
  // Use native file system events for files and directories
@@ -40,7 +42,7 @@
40
42
  "**/.git",
41
43
  "**/.data",
42
44
  "**/.logs",
43
- "**/.*",
45
+ "**/.*"
44
46
  ],
45
47
  "excludeFiles": [
46
48
  "**/*.tmp",
@@ -56,4 +58,4 @@
56
58
  "**/dist",
57
59
  "**/.*"
58
60
  ]
59
- }
61
+ }
package/tsconfig.json CHANGED
@@ -14,7 +14,12 @@
14
14
  "isolatedModules": true,
15
15
  "esModuleInterop": true,
16
16
  "skipLibCheck": true,
17
- "plugins": [],
17
+ "plugins": [
18
+ {
19
+ "name": "@effect/language-service",
20
+ "diagnostics": false
21
+ }
22
+ ],
18
23
  "module": "Node16",
19
24
  "lib": [
20
25
  "ES2023"
@@ -34,6 +39,9 @@
34
39
  "moduleResolution": "Node16",
35
40
  "noErrorTruncation": true,
36
41
  "forceConsistentCasingInFileNames": true,
42
+ "erasableSyntaxOnly": true,
43
+ "rewriteRelativeImportExtensions": true,
44
+ "allowImportingTsExtensions": true,
37
45
  "types": [
38
46
  "node"
39
47
  ]
package/tsconfig.src.json CHANGED
@@ -1,31 +1,31 @@
1
1
  {
2
- "extends": "../../tsconfig.base.json",
3
- "compilerOptions": {
4
- "lib": [
5
- "esnext"
6
- ],
7
- "tsBuildInfoFile": "./dist/.tsbuildinfo",
8
- "esModuleInterop": true,
9
- "rootDir": "./src",
10
- // keep in here, cause madge can't detect it from extended tsconfig
11
- "moduleResolution": "Node16",
12
- "outDir": "./dist"
13
- },
14
- "include": [
15
- "./src/**/*.ts"
2
+ "extends": "../../tsconfig.base.json",
3
+ "compilerOptions": {
4
+ "lib": [
5
+ "esnext"
16
6
  ],
17
- "exclude": [
18
- "./dist",
19
- "*.test.ts",
20
- "node_modules",
21
- "build",
22
- "lib",
23
- "dist",
24
- "**/*.d.ts.map",
25
- ".git",
26
- ".data",
27
- "**/.*",
28
- "**/*.tmp"
29
- ],
30
- "references": []
31
- }
7
+ "tsBuildInfoFile": "./dist/.tsbuildinfo",
8
+ "esModuleInterop": true,
9
+ "rootDir": "./src",
10
+ // keep in here, cause madge can't detect it from extended tsconfig
11
+ "moduleResolution": "Node16",
12
+ "outDir": "./dist"
13
+ },
14
+ "include": [
15
+ "./src/**/*.ts"
16
+ ],
17
+ "exclude": [
18
+ "./dist",
19
+ "*.test.ts",
20
+ "node_modules",
21
+ "build",
22
+ "lib",
23
+ "dist",
24
+ "**/*.d.ts.map",
25
+ ".git",
26
+ ".data",
27
+ "**/.*",
28
+ "**/*.tmp"
29
+ ],
30
+ "references": []
31
+ }
@@ -28,6 +28,6 @@
28
28
  "references": [
29
29
  {
30
30
  "path": "./tsconfig.src.json"
31
- },
31
+ }
32
32
  ]
33
- }
33
+ }
@@ -1,124 +0,0 @@
1
- import * as S from "./Schema.js";
2
- export type OperationId = S.StringId;
3
- export declare const OperationId: S.WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
4
- make: () => S.StringId;
5
- withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
6
- }> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
7
- make: () => S.StringId;
8
- withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
9
- };
10
- declare const OperationProgress_base: S.EnhancedClass<OperationProgress, S.Struct<{
11
- completed: S.WithDefaults<S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber">> & S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber"> & {
12
- withDefault: S.withConstructorDefault<S.WithDefaults<S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber">> & S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber">>;
13
- };
14
- total: S.WithDefaults<S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber">> & S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber"> & {
15
- withDefault: S.withConstructorDefault<S.WithDefaults<S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber">> & S.brand<import("effect/Schema").Int, "NonNegativeInt" | "Int" | "NonNegativeNumber">>;
16
- };
17
- }>, {}>;
18
- export declare class OperationProgress extends OperationProgress_base {
19
- }
20
- declare const OperationSuccess_base: S.EnhancedTaggedClass<OperationSuccess, "OperationSuccess", {
21
- readonly _tag: S.tag<"OperationSuccess">;
22
- } & {
23
- message: S.withConstructorDefault<import("effect/Schema").NullOr<S.WithDefaults<S.brand<import("effect/Schema").NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">> & S.brand<import("effect/Schema").NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">>>;
24
- }, OperationSuccess.Encoded>;
25
- export declare class OperationSuccess extends OperationSuccess_base {
26
- }
27
- declare const OperationFailure_base: S.EnhancedTaggedClass<OperationFailure, "OperationFailure", {
28
- readonly _tag: S.tag<"OperationFailure">;
29
- } & {
30
- message: S.withConstructorDefault<import("effect/Schema").NullOr<S.WithDefaults<S.brand<import("effect/Schema").NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">> & S.brand<import("effect/Schema").NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">>>;
31
- }, OperationFailure.Encoded>;
32
- export declare class OperationFailure extends OperationFailure_base {
33
- }
34
- export declare const OperationResult: S.Union<[typeof OperationSuccess, typeof OperationFailure]> & {
35
- readonly cases: {
36
- OperationSuccess: typeof OperationSuccess;
37
- OperationFailure: typeof OperationFailure;
38
- };
39
- readonly isAnyOf: <const Keys>(keys: readonly Keys[]) => (value: OperationSuccess | OperationFailure) => value is Extract<OperationSuccess, {
40
- _tag: Keys;
41
- }> | Extract<OperationFailure, {
42
- _tag: Keys;
43
- }>;
44
- readonly guards: {
45
- OperationSuccess: (u: unknown) => u is OperationSuccess;
46
- OperationFailure: (u: unknown) => u is OperationFailure;
47
- };
48
- readonly match: {
49
- <Cases extends {
50
- OperationSuccess: (value: OperationSuccess) => any;
51
- OperationFailure: (value: OperationFailure) => any;
52
- }>(value: OperationSuccess | OperationFailure, cases: Cases): Cases[keyof Cases] extends (value: any) => infer R ? import("effect/Unify").Unify<R> : never;
53
- <Cases extends {
54
- OperationSuccess: (value: OperationSuccess) => any;
55
- OperationFailure: (value: OperationFailure) => any;
56
- }>(cases: Cases): (value: OperationSuccess | OperationFailure) => Cases[keyof Cases] extends (value: any) => infer R ? import("effect/Unify").Unify<R> : never;
57
- };
58
- } & {
59
- readonly tags: import("effect/Schema").Literals<["OperationSuccess", "OperationFailure"]>;
60
- };
61
- export type OperationResult = S.Schema.Type<typeof OperationResult>;
62
- declare const Operation_base: S.EnhancedClass<Operation, S.Struct<{
63
- id: S.WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
64
- make: () => S.StringId;
65
- withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
66
- }> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId"> & {
67
- make: () => S.StringId;
68
- withDefault: S.withConstructorDefault<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255" | "NonEmptyString50" | "NonEmptyString64" | "NonEmptyString80" | "NonEmptyString100" | "StringId">>;
69
- };
70
- title: S.WithDefaults<S.brand<import("effect/Schema").NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">> & S.brand<import("effect/Schema").NonEmptyString, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">;
71
- progress: S.optional<typeof OperationProgress>;
72
- result: S.optional<S.Union<[typeof OperationSuccess, typeof OperationFailure]> & {
73
- readonly cases: {
74
- OperationSuccess: typeof OperationSuccess;
75
- OperationFailure: typeof OperationFailure;
76
- };
77
- readonly isAnyOf: <const Keys>(keys: readonly Keys[]) => (value: OperationSuccess | OperationFailure) => value is Extract<OperationSuccess, {
78
- _tag: Keys;
79
- }> | Extract<OperationFailure, {
80
- _tag: Keys;
81
- }>;
82
- readonly guards: {
83
- OperationSuccess: (u: unknown) => u is OperationSuccess;
84
- OperationFailure: (u: unknown) => u is OperationFailure;
85
- };
86
- readonly match: {
87
- <Cases extends {
88
- OperationSuccess: (value: OperationSuccess) => any;
89
- OperationFailure: (value: OperationFailure) => any;
90
- }>(value: OperationSuccess | OperationFailure, cases: Cases): Cases[keyof Cases] extends (value: any) => infer R ? import("effect/Unify").Unify<R> : never;
91
- <Cases extends {
92
- OperationSuccess: (value: OperationSuccess) => any;
93
- OperationFailure: (value: OperationFailure) => any;
94
- }>(cases: Cases): (value: OperationSuccess | OperationFailure) => Cases[keyof Cases] extends (value: any) => infer R ? import("effect/Unify").Unify<R> : never;
95
- };
96
- } & {
97
- readonly tags: import("effect/Schema").Literals<["OperationSuccess", "OperationFailure"]>;
98
- }>;
99
- createdAt: S.withConstructorDefault<S.DateFromString>;
100
- updatedAt: S.withConstructorDefault<import("effect/Schema").NullOr<S.DateFromString & {
101
- withDefault: S.withConstructorDefault<S.DateFromString>;
102
- withDecodingDefaultType: S.withDecodingDefaultType<S.DateFromString>;
103
- }>>;
104
- }>, {}>;
105
- export declare class Operation extends Operation_base {
106
- }
107
- export declare namespace OperationProgress {
108
- interface Encoded extends S.Struct.Encoded<typeof OperationProgress["fields"]> {
109
- }
110
- }
111
- export declare namespace OperationSuccess {
112
- interface Encoded extends S.Struct.Encoded<typeof OperationSuccess["fields"]> {
113
- }
114
- }
115
- export declare namespace OperationFailure {
116
- interface Encoded extends S.Struct.Encoded<typeof OperationFailure["fields"]> {
117
- }
118
- }
119
- export declare namespace Operation {
120
- interface Encoded extends S.Struct.Encoded<typeof Operation["fields"]> {
121
- }
122
- }
123
- export {};
124
- //# sourceMappingURL=Operations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Operations.d.ts","sourceRoot":"","sources":["../src/Operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,aAAa,CAAA;AAEhC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,QAAQ,CAAA;AACpC,eAAO,MAAM,WAAW;;;;;;CAAa,CAAA;;;;;;;;;AAErC,qBAAa,iBAAkB,SAAQ,sBAMrC;CAAG;;;;;;AAEL,qBAAa,gBACX,SAAQ,qBAEN;CACF;;;;;;AAEF,qBAAa,gBACX,SAAQ,qBAEN;CACF;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;CAAoD,CAAA;AAChF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEnE,qBAAa,SAAU,SAAQ,cAO7B;CAAG;AAKL,yBAAiB,iBAAiB,CAAC;IACjC,UAAiB,OAAQ,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACzF;AACD,yBAAiB,gBAAgB,CAAC;IAChC,UAAiB,OAAQ,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACxF;AACD,yBAAiB,gBAAgB,CAAC;IAChC,UAAiB,OAAQ,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACxF;AACD,yBAAiB,SAAS,CAAC;IACzB,UAAiB,OAAQ,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;KAAG;CACjF"}
@@ -1,29 +0,0 @@
1
- import * as S from "./Schema.js";
2
- export const OperationId = S.StringId;
3
- export class OperationProgress extends S.ExtendedClass("OperationProgress")({
4
- completed: S.NonNegativeInt,
5
- total: S.NonNegativeInt
6
- }) {
7
- }
8
- export class OperationSuccess extends S.ExtendedTaggedClass()("OperationSuccess", {
9
- message: S.NullOr(S.NonEmptyString2k).withDefault
10
- }) {
11
- }
12
- export class OperationFailure extends S.ExtendedTaggedClass()("OperationFailure", {
13
- message: S.NullOr(S.NonEmptyString2k).withDefault
14
- }) {
15
- }
16
- export const OperationResult = S.TaggedUnion(OperationSuccess, OperationFailure);
17
- export class Operation extends S.ExtendedClass("Operation")({
18
- id: OperationId,
19
- title: S.NonEmptyString2k,
20
- progress: S.optional(OperationProgress),
21
- result: S.optional(OperationResult),
22
- createdAt: S.Date.withDefault,
23
- updatedAt: S.NullOr(S.Date).withDefault
24
- }) {
25
- }
26
- /* eslint-enable */
27
- //
28
- // codegen:end
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9PcGVyYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sYUFBYSxDQUFBO0FBR2hDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFBO0FBRXJDLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxDQUFDLENBQUMsYUFBYSxDQUdwRCxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3JCLFNBQVMsRUFBRSxDQUFDLENBQUMsY0FBYztJQUMzQixLQUFLLEVBQUUsQ0FBQyxDQUFDLGNBQWM7Q0FDeEIsQ0FBQztDQUFHO0FBRUwsTUFBTSxPQUFPLGdCQUNYLFNBQVEsQ0FBQyxDQUFDLG1CQUFtQixFQUE4QyxDQUFDLGtCQUFrQixFQUFFO0lBQzlGLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFdBQVc7Q0FDbEQsQ0FBQztDQUNGO0FBRUYsTUFBTSxPQUFPLGdCQUNYLFNBQVEsQ0FBQyxDQUFDLG1CQUFtQixFQUE4QyxDQUFDLGtCQUFrQixFQUFFO0lBQzlGLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLFdBQVc7Q0FDbEQsQ0FBQztDQUNGO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQTtBQUdoRixNQUFNLE9BQU8sU0FBVSxTQUFRLENBQUMsQ0FBQyxhQUFhLENBQStCLFdBQVcsQ0FBQyxDQUFDO0lBQ3hGLEVBQUUsRUFBRSxXQUFXO0lBQ2YsS0FBSyxFQUFFLENBQUMsQ0FBQyxnQkFBZ0I7SUFDekIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUM7SUFDdkMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDO0lBQ25DLFNBQVMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVc7SUFDN0IsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVc7Q0FDeEMsQ0FBQztDQUFHO0FBaUJMLG1CQUFtQjtBQUNuQixFQUFFO0FBQ0YsY0FBYyJ9
@@ -1,15 +0,0 @@
1
- export declare const DateAddDays: (date: Date, amount: number) => Date;
2
- export declare const DateSubDays: (date: Date, amount: number) => Date;
3
- export declare const DateAddHours: (date: Date, amount: number) => Date;
4
- export declare const DateSubHours: (date: Date, amount: number) => Date;
5
- export declare const DateAddMinutes: (date: Date, amount: number) => Date;
6
- export declare const DateSubMinutes: (date: Date, amount: number) => Date;
7
- export declare const DateAddSeconds: (date: Date, amount: number) => Date;
8
- export declare const DateSubSeconds: (date: Date, amount: number) => Date;
9
- export declare const DateAddYears: (date: Date, amount: number) => Date;
10
- export declare const DateSubYears: (date: Date, amount: number) => Date;
11
- export declare const DateAddMonths: (date: Date, amount: number) => Date;
12
- export declare const DateSubMonths: (date: Date, amount: number) => Date;
13
- export declare const DateAddWeeks: (date: Date, amount: number) => Date;
14
- export declare const DateSubWeeks: (date: Date, amount: number) => Date;
15
- //# sourceMappingURL=date.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../src/_ext/date.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAc,CAAA;AACxE,eAAO,MAAM,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAc,CAAA;AAExE,eAAO,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAe,CAAA;AAC1E,eAAO,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAe,CAAA;AAE1E,eAAO,MAAM,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAiB,CAAA;AAE9E,eAAO,MAAM,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAiB,CAAA;AAE9E,eAAO,MAAM,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAiB,CAAA;AAE9E,eAAO,MAAM,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAiB,CAAA;AAE9E,eAAO,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAe,CAAA;AAE1E,eAAO,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAe,CAAA;AAE1E,eAAO,MAAM,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAgB,CAAA;AAE5E,eAAO,MAAM,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAgB,CAAA;AAE5E,eAAO,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAe,CAAA;AAE1E,eAAO,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,IAAe,CAAA"}
package/dist/_ext/date.js DELETED
@@ -1,16 +0,0 @@
1
- import { addDays, addHours, addMinutes, addMonths, addSeconds, addWeeks, addYears, subDays, subHours, subMinutes, subMonths, subSeconds, subWeeks, subYears } from "date-fns";
2
- export const DateAddDays = addDays;
3
- export const DateSubDays = subDays;
4
- export const DateAddHours = addHours;
5
- export const DateSubHours = subHours;
6
- export const DateAddMinutes = addMinutes;
7
- export const DateSubMinutes = subMinutes;
8
- export const DateAddSeconds = addSeconds;
9
- export const DateSubSeconds = subSeconds;
10
- export const DateAddYears = addYears;
11
- export const DateSubYears = subYears;
12
- export const DateAddMonths = addMonths;
13
- export const DateSubMonths = subMonths;
14
- export const DateAddWeeks = addWeeks;
15
- export const DateSubWeeks = subWeeks;
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fZXh0L2RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFN0ssTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUF5QyxPQUFPLENBQUE7QUFDeEUsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUF5QyxPQUFPLENBQUE7QUFFeEUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUF5QyxRQUFRLENBQUE7QUFDMUUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUF5QyxRQUFRLENBQUE7QUFFMUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUF5QyxVQUFVLENBQUE7QUFFOUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUF5QyxVQUFVLENBQUE7QUFFOUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUF5QyxVQUFVLENBQUE7QUFFOUUsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUF5QyxVQUFVLENBQUE7QUFFOUUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUF5QyxRQUFRLENBQUE7QUFFMUUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUF5QyxRQUFRLENBQUE7QUFFMUUsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUF5QyxTQUFTLENBQUE7QUFFNUUsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUF5QyxTQUFTLENBQUE7QUFFNUUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUF5QyxRQUFRLENBQUE7QUFFMUUsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUF5QyxRQUFRLENBQUEifQ==
@@ -1,14 +0,0 @@
1
- import { Effect, Option, Result, type Scope } from "effect";
2
- import type { LazyArg } from "effect-app/Function";
3
- export type _R<T extends Effect.Effect<any, any, any>> = [T] extends [
4
- Effect.Effect<any, any, infer R>
5
- ] ? R : never;
6
- export type _E<T extends Effect.Effect<any, any, any>> = [T] extends [
7
- Effect.Effect<any, infer E, any>
8
- ] ? E : never;
9
- export declare function encaseMaybeInEffect_<E, A>(o: Option.Option<A>, onError: LazyArg<E>): Effect.Effect<A, E>;
10
- export declare function encaseMaybeEither_<E, A>(o: Option.Option<A>, onError: LazyArg<E>): Result.Result<A, E>;
11
- export declare function toNullable<R, E, A>(self: Effect.Effect<Option.Option<A>, E, R>): Effect.Effect<A | null, E, R>;
12
- export declare function scope<R, E, A, R2, E2, A2>(scopedEffect: Effect.Effect<A, E, R | Scope.Scope>, effect: Effect.Effect<A2, E2, R2>): Effect.Effect<A2, E | E2, Exclude<R | R2, Scope.Scope>>;
13
- export declare function flatMapScoped<R, E, A, R2, E2, A2>(scopedEffect: Effect.Effect<A, E, R | Scope.Scope>, effect: (a: A) => Effect.Effect<A2, E2, R2>): Effect.Effect<A2, E | E2, Exclude<R | R2, Scope.Scope>>;
14
- //# sourceMappingURL=misc.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../src/_ext/misc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,MAAM,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;IACnE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;CACjC,GAAG,CAAC,GACD,KAAK,CAAA;AAET,MAAM,MAAM,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;IACnE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC;CACjC,GAAG,CAAC,GACD,KAAK,CAAA;AAET,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,CAAC,EACvC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACnB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAClB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAErB;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,CAAC,EACrC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACnB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAClB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAErB;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,iCAG5C;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACvC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAClD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAChC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAEzD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAC/C,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAClD,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAC1C,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAEzD"}
package/dist/_ext/misc.js DELETED
@@ -1,17 +0,0 @@
1
- import { Effect, Option, Result } from "effect";
2
- export function encaseMaybeInEffect_(o, onError) {
3
- return Option.match(o, { onNone: () => Effect.fail(onError()), onSome: Effect.succeed });
4
- }
5
- export function encaseMaybeEither_(o, onError) {
6
- return Option.match(o, { onNone: () => Result.fail(onError()), onSome: Result.succeed });
7
- }
8
- export function toNullable(self) {
9
- return Effect.map(self, (_) => Option.getOrNull(_));
10
- }
11
- export function scope(scopedEffect, effect) {
12
- return Effect.andThen(scopedEffect, effect).pipe(Effect.scoped);
13
- }
14
- export function flatMapScoped(scopedEffect, effect) {
15
- return scopedEffect.pipe(Effect.flatMap(effect), Effect.scoped);
16
- }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fZXh0L21pc2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFjLE1BQU0sUUFBUSxDQUFBO0FBYTNELE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsQ0FBbUIsRUFDbkIsT0FBbUI7SUFFbkIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFBO0FBQzFGLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQ2hDLENBQW1CLEVBQ25CLE9BQW1CO0lBRW5CLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQTtBQUMxRixDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FDeEIsSUFBMkM7SUFFM0MsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ3JELENBQUM7QUFFRCxNQUFNLFVBQVUsS0FBSyxDQUNuQixZQUFrRCxFQUNsRCxNQUFpQztJQUVqQyxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7QUFDakUsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQzNCLFlBQWtELEVBQ2xELE1BQTJDO0lBRTNDLE9BQU8sWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtBQUNqRSxDQUFDIn0=
package/eslint.config.mjs DELETED
@@ -1,26 +0,0 @@
1
- import path from "node:path"
2
- import { fileURLToPath } from "node:url"
3
- // Use the shared config package instead of a non-existent local file
4
- import { augmentedConfig } from "@effect-app/eslint-shared-config/eslint.base.config"
5
-
6
- const __filename = fileURLToPath(import.meta.url)
7
- const __dirname = path.dirname(__filename)
8
-
9
- export default [
10
- ...augmentedConfig(__dirname, false),
11
- {
12
- ignores: [
13
- "**/*.js",
14
- "**/*.jsx",
15
- "**/*.d.ts",
16
- "node_modules/",
17
- "src/eslint.*.config.mjs"
18
- ]
19
- },
20
- {
21
- rules: {
22
- "@typescript-eslint/no-empty-interface": "off",
23
- "@typescript-eslint/no-explicit-any": "warn",
24
- }
25
- }
26
- ]
package/src/Operations.ts DELETED
@@ -1,55 +0,0 @@
1
- import * as S from "./Schema.js"
2
-
3
- export type OperationId = S.StringId
4
- export const OperationId = S.StringId
5
-
6
- export class OperationProgress extends S.ExtendedClass<
7
- OperationProgress,
8
- OperationProgress.Encoded
9
- >("OperationProgress")({
10
- completed: S.NonNegativeInt,
11
- total: S.NonNegativeInt
12
- }) {}
13
-
14
- export class OperationSuccess
15
- extends S.ExtendedTaggedClass<OperationSuccess, OperationSuccess.Encoded>()("OperationSuccess", {
16
- message: S.NullOr(S.NonEmptyString2k).withDefault
17
- })
18
- {}
19
-
20
- export class OperationFailure
21
- extends S.ExtendedTaggedClass<OperationFailure, OperationFailure.Encoded>()("OperationFailure", {
22
- message: S.NullOr(S.NonEmptyString2k).withDefault
23
- })
24
- {}
25
-
26
- export const OperationResult = S.TaggedUnion(OperationSuccess, OperationFailure)
27
- export type OperationResult = S.Schema.Type<typeof OperationResult>
28
-
29
- export class Operation extends S.ExtendedClass<Operation, Operation.Encoded>("Operation")({
30
- id: OperationId,
31
- title: S.NonEmptyString2k,
32
- progress: S.optional(OperationProgress),
33
- result: S.optional(OperationResult),
34
- createdAt: S.Date.withDefault,
35
- updatedAt: S.NullOr(S.Date).withDefault
36
- }) {}
37
-
38
- // codegen:start {preset: model}
39
- //
40
- /* eslint-disable */
41
- export namespace OperationProgress {
42
- export interface Encoded extends S.Struct.Encoded<typeof OperationProgress["fields"]> {}
43
- }
44
- export namespace OperationSuccess {
45
- export interface Encoded extends S.Struct.Encoded<typeof OperationSuccess["fields"]> {}
46
- }
47
- export namespace OperationFailure {
48
- export interface Encoded extends S.Struct.Encoded<typeof OperationFailure["fields"]> {}
49
- }
50
- export namespace Operation {
51
- export interface Encoded extends S.Struct.Encoded<typeof Operation["fields"]> {}
52
- }
53
- /* eslint-enable */
54
- //
55
- // codegen:end
package/src/_ext/date.ts DELETED
@@ -1,27 +0,0 @@
1
- import { addDays, addHours, addMinutes, addMonths, addSeconds, addWeeks, addYears, subDays, subHours, subMinutes, subMonths, subSeconds, subWeeks, subYears } from "date-fns"
2
-
3
- export const DateAddDays: (date: Date, amount: number) => Date = addDays
4
- export const DateSubDays: (date: Date, amount: number) => Date = subDays
5
-
6
- export const DateAddHours: (date: Date, amount: number) => Date = addHours
7
- export const DateSubHours: (date: Date, amount: number) => Date = subHours
8
-
9
- export const DateAddMinutes: (date: Date, amount: number) => Date = addMinutes
10
-
11
- export const DateSubMinutes: (date: Date, amount: number) => Date = subMinutes
12
-
13
- export const DateAddSeconds: (date: Date, amount: number) => Date = addSeconds
14
-
15
- export const DateSubSeconds: (date: Date, amount: number) => Date = subSeconds
16
-
17
- export const DateAddYears: (date: Date, amount: number) => Date = addYears
18
-
19
- export const DateSubYears: (date: Date, amount: number) => Date = subYears
20
-
21
- export const DateAddMonths: (date: Date, amount: number) => Date = addMonths
22
-
23
- export const DateSubMonths: (date: Date, amount: number) => Date = subMonths
24
-
25
- export const DateAddWeeks: (date: Date, amount: number) => Date = addWeeks
26
-
27
- export const DateSubWeeks: (date: Date, amount: number) => Date = subWeeks
package/src/_ext/misc.ts DELETED
@@ -1,46 +0,0 @@
1
- import { Effect, Option, Result, type Scope } from "effect"
2
- import type { LazyArg } from "effect-app/Function"
3
-
4
- export type _R<T extends Effect.Effect<any, any, any>> = [T] extends [
5
- Effect.Effect<any, any, infer R>
6
- ] ? R
7
- : never
8
-
9
- export type _E<T extends Effect.Effect<any, any, any>> = [T] extends [
10
- Effect.Effect<any, infer E, any>
11
- ] ? E
12
- : never
13
-
14
- export function encaseMaybeInEffect_<E, A>(
15
- o: Option.Option<A>,
16
- onError: LazyArg<E>
17
- ): Effect.Effect<A, E> {
18
- return Option.match(o, { onNone: () => Effect.fail(onError()), onSome: Effect.succeed })
19
- }
20
-
21
- export function encaseMaybeEither_<E, A>(
22
- o: Option.Option<A>,
23
- onError: LazyArg<E>
24
- ): Result.Result<A, E> {
25
- return Option.match(o, { onNone: () => Result.fail(onError()), onSome: Result.succeed })
26
- }
27
-
28
- export function toNullable<R, E, A>(
29
- self: Effect.Effect<Option.Option<A>, E, R>
30
- ) {
31
- return Effect.map(self, (_) => Option.getOrNull(_))
32
- }
33
-
34
- export function scope<R, E, A, R2, E2, A2>(
35
- scopedEffect: Effect.Effect<A, E, R | Scope.Scope>,
36
- effect: Effect.Effect<A2, E2, R2>
37
- ): Effect.Effect<A2, E | E2, Exclude<R | R2, Scope.Scope>> {
38
- return Effect.andThen(scopedEffect, effect).pipe(Effect.scoped)
39
- }
40
-
41
- export function flatMapScoped<R, E, A, R2, E2, A2>(
42
- scopedEffect: Effect.Effect<A, E, R | Scope.Scope>,
43
- effect: (a: A) => Effect.Effect<A2, E2, R2>
44
- ): Effect.Effect<A2, E | E2, Exclude<R | R2, Scope.Scope>> {
45
- return scopedEffect.pipe(Effect.flatMap(effect), Effect.scoped)
46
- }
package/tsconfig.json.bak DELETED
@@ -1,12 +0,0 @@
1
- {
2
- "compilerOptions": {},
3
- "extends": "../../tsconfig.base.json",
4
- "references": [
5
- {
6
- "path": "./tsconfig.src.json"
7
- },
8
- {
9
- "path": "./tsconfig.test.json"
10
- }
11
- ],
12
- }