@voidhash/mimic 0.0.2 → 0.0.4

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 (273) hide show
  1. package/.turbo/turbo-build.log +257 -42
  2. package/dist/Document.cjs +152 -0
  3. package/dist/Document.d.cts +67 -0
  4. package/dist/Document.d.cts.map +1 -0
  5. package/dist/Document.d.mts +68 -0
  6. package/dist/Document.d.mts.map +1 -0
  7. package/dist/Document.mjs +147 -0
  8. package/dist/Document.mjs.map +1 -0
  9. package/dist/EffectSchema.cjs +180 -0
  10. package/dist/EffectSchema.d.cts +84 -0
  11. package/dist/EffectSchema.d.cts.map +1 -0
  12. package/dist/EffectSchema.d.mts +84 -0
  13. package/dist/EffectSchema.d.mts.map +1 -0
  14. package/dist/EffectSchema.mjs +176 -0
  15. package/dist/EffectSchema.mjs.map +1 -0
  16. package/dist/FractionalIndex.cjs +365 -0
  17. package/dist/FractionalIndex.mjs +364 -0
  18. package/dist/FractionalIndex.mjs.map +1 -0
  19. package/dist/Operation.cjs +53 -0
  20. package/dist/Operation.d.cts +39 -0
  21. package/dist/Operation.d.cts.map +1 -0
  22. package/dist/Operation.d.mts +39 -0
  23. package/dist/Operation.d.mts.map +1 -0
  24. package/dist/Operation.mjs +46 -0
  25. package/dist/Operation.mjs.map +1 -0
  26. package/dist/OperationDefinition.cjs +13 -0
  27. package/dist/OperationDefinition.d.cts +12 -0
  28. package/dist/OperationDefinition.d.cts.map +1 -0
  29. package/dist/OperationDefinition.d.mts +12 -0
  30. package/dist/OperationDefinition.d.mts.map +1 -0
  31. package/dist/OperationDefinition.mjs +13 -0
  32. package/dist/OperationDefinition.mjs.map +1 -0
  33. package/dist/OperationPath.cjs +148 -0
  34. package/dist/OperationPath.d.cts +60 -0
  35. package/dist/OperationPath.d.cts.map +1 -0
  36. package/dist/OperationPath.d.mts +60 -0
  37. package/dist/OperationPath.d.mts.map +1 -0
  38. package/dist/OperationPath.mjs +138 -0
  39. package/dist/OperationPath.mjs.map +1 -0
  40. package/dist/{Presence-gWrmGBeu.cjs → Presence.cjs} +4 -39
  41. package/dist/{Presence-N8u7Eppr.d.mts → Presence.d.cts} +2 -2
  42. package/dist/Presence.d.cts.map +1 -0
  43. package/dist/{Presence-DKKP4v5X.d.cts → Presence.d.mts} +2 -2
  44. package/dist/Presence.d.mts.map +1 -0
  45. package/dist/{Presence-DdMVKcOv.mjs → Presence.mjs} +3 -28
  46. package/dist/Presence.mjs.map +1 -0
  47. package/dist/Primitive.cjs +52 -0
  48. package/dist/Primitive.d.cts +20 -0
  49. package/dist/Primitive.d.cts.map +1 -0
  50. package/dist/Primitive.d.mts +20 -0
  51. package/dist/Primitive.d.mts.map +1 -0
  52. package/dist/Primitive.mjs +48 -0
  53. package/dist/Primitive.mjs.map +1 -0
  54. package/dist/ProxyEnvironment.cjs +34 -0
  55. package/dist/ProxyEnvironment.d.cts +31 -0
  56. package/dist/ProxyEnvironment.d.cts.map +1 -0
  57. package/dist/ProxyEnvironment.d.mts +31 -0
  58. package/dist/ProxyEnvironment.d.mts.map +1 -0
  59. package/dist/ProxyEnvironment.mjs +29 -0
  60. package/dist/ProxyEnvironment.mjs.map +1 -0
  61. package/dist/Transaction.cjs +66 -0
  62. package/dist/Transaction.d.cts +56 -0
  63. package/dist/Transaction.d.cts.map +1 -0
  64. package/dist/Transaction.d.mts +56 -0
  65. package/dist/Transaction.d.mts.map +1 -0
  66. package/dist/Transaction.mjs +58 -0
  67. package/dist/Transaction.mjs.map +1 -0
  68. package/dist/Transform.cjs +11 -0
  69. package/dist/Transform.d.cts +21 -0
  70. package/dist/Transform.d.cts.map +1 -0
  71. package/dist/Transform.d.mts +21 -0
  72. package/dist/Transform.d.mts.map +1 -0
  73. package/dist/Transform.mjs +6 -0
  74. package/dist/Transform.mjs.map +1 -0
  75. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/defineProperty.cjs +14 -0
  76. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/defineProperty.mjs +14 -0
  77. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/objectSpread2.cjs +27 -0
  78. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/objectSpread2.mjs +27 -0
  79. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPrimitive.cjs +16 -0
  80. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPrimitive.mjs +16 -0
  81. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPropertyKey.cjs +11 -0
  82. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/toPropertyKey.mjs +11 -0
  83. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/typeof.cjs +18 -0
  84. package/dist/_virtual/_@oxc-project_runtime@0.103.0/helpers/typeof.mjs +12 -0
  85. package/dist/_virtual/rolldown_runtime.cjs +43 -0
  86. package/dist/{chunk-CLMFDpHK.mjs → _virtual/rolldown_runtime.mjs} +1 -1
  87. package/dist/client/ClientDocument.cjs +590 -0
  88. package/dist/client/ClientDocument.d.cts +161 -0
  89. package/dist/client/ClientDocument.d.cts.map +1 -0
  90. package/dist/client/ClientDocument.d.mts +162 -0
  91. package/dist/client/ClientDocument.d.mts.map +1 -0
  92. package/dist/client/ClientDocument.mjs +586 -0
  93. package/dist/client/ClientDocument.mjs.map +1 -0
  94. package/dist/client/Rebase.cjs +204 -0
  95. package/dist/client/Rebase.d.cts +87 -0
  96. package/dist/client/Rebase.d.cts.map +1 -0
  97. package/dist/client/Rebase.d.mts +88 -0
  98. package/dist/client/Rebase.d.mts.map +1 -0
  99. package/dist/client/Rebase.mjs +198 -0
  100. package/dist/client/Rebase.mjs.map +1 -0
  101. package/dist/client/StateMonitor.cjs +133 -0
  102. package/dist/client/StateMonitor.d.cts +122 -0
  103. package/dist/client/StateMonitor.d.cts.map +1 -0
  104. package/dist/client/StateMonitor.d.mts +122 -0
  105. package/dist/client/StateMonitor.d.mts.map +1 -0
  106. package/dist/client/StateMonitor.mjs +129 -0
  107. package/dist/client/StateMonitor.mjs.map +1 -0
  108. package/dist/client/Transport.cjs +11 -0
  109. package/dist/client/Transport.d.cts +237 -0
  110. package/dist/client/Transport.d.cts.map +1 -0
  111. package/dist/client/Transport.d.mts +237 -0
  112. package/dist/client/Transport.d.mts.map +1 -0
  113. package/dist/client/Transport.mjs +6 -0
  114. package/dist/client/Transport.mjs.map +1 -0
  115. package/dist/client/WebSocketTransport.cjs +396 -0
  116. package/dist/client/WebSocketTransport.d.cts +29 -0
  117. package/dist/client/WebSocketTransport.d.cts.map +1 -0
  118. package/dist/client/WebSocketTransport.d.mts +29 -0
  119. package/dist/client/WebSocketTransport.d.mts.map +1 -0
  120. package/dist/client/WebSocketTransport.mjs +392 -0
  121. package/dist/client/WebSocketTransport.mjs.map +1 -0
  122. package/dist/client/errors.cjs +135 -0
  123. package/dist/client/errors.d.cts +87 -0
  124. package/dist/client/errors.d.cts.map +1 -0
  125. package/dist/client/errors.d.mts +87 -0
  126. package/dist/client/errors.d.mts.map +1 -0
  127. package/dist/client/errors.mjs +127 -0
  128. package/dist/client/errors.mjs.map +1 -0
  129. package/dist/client/index.cjs +22 -1424
  130. package/dist/client/index.d.cts +8 -692
  131. package/dist/client/index.d.mts +8 -692
  132. package/dist/client/index.mjs +9 -1413
  133. package/dist/index.cjs +20 -2973
  134. package/dist/index.d.cts +12 -419
  135. package/dist/index.d.mts +12 -419
  136. package/dist/index.mjs +13 -2968
  137. package/dist/primitives/Array.cjs +302 -0
  138. package/dist/primitives/Array.d.cts +95 -0
  139. package/dist/primitives/Array.d.cts.map +1 -0
  140. package/dist/primitives/Array.d.mts +95 -0
  141. package/dist/primitives/Array.d.mts.map +1 -0
  142. package/dist/primitives/Array.mjs +301 -0
  143. package/dist/primitives/Array.mjs.map +1 -0
  144. package/dist/primitives/Boolean.cjs +95 -0
  145. package/dist/primitives/Boolean.d.cts +44 -0
  146. package/dist/primitives/Boolean.d.cts.map +1 -0
  147. package/dist/primitives/Boolean.d.mts +44 -0
  148. package/dist/primitives/Boolean.d.mts.map +1 -0
  149. package/dist/primitives/Boolean.mjs +94 -0
  150. package/dist/primitives/Boolean.mjs.map +1 -0
  151. package/dist/primitives/Either.cjs +200 -0
  152. package/dist/primitives/Either.d.cts +113 -0
  153. package/dist/primitives/Either.d.cts.map +1 -0
  154. package/dist/primitives/Either.d.mts +113 -0
  155. package/dist/primitives/Either.d.mts.map +1 -0
  156. package/dist/primitives/Either.mjs +199 -0
  157. package/dist/primitives/Either.mjs.map +1 -0
  158. package/dist/primitives/Lazy.cjs +46 -0
  159. package/dist/primitives/Lazy.d.cts +46 -0
  160. package/dist/primitives/Lazy.d.cts.map +1 -0
  161. package/dist/primitives/Lazy.d.mts +46 -0
  162. package/dist/primitives/Lazy.d.mts.map +1 -0
  163. package/dist/primitives/Lazy.mjs +46 -0
  164. package/dist/primitives/Lazy.mjs.map +1 -0
  165. package/dist/primitives/Literal.cjs +91 -0
  166. package/dist/primitives/Literal.d.cts +46 -0
  167. package/dist/primitives/Literal.d.cts.map +1 -0
  168. package/dist/primitives/Literal.d.mts +46 -0
  169. package/dist/primitives/Literal.d.mts.map +1 -0
  170. package/dist/primitives/Literal.mjs +90 -0
  171. package/dist/primitives/Literal.mjs.map +1 -0
  172. package/dist/primitives/Number.cjs +115 -0
  173. package/dist/primitives/Number.d.cts +54 -0
  174. package/dist/primitives/Number.d.cts.map +1 -0
  175. package/dist/primitives/Number.d.mts +54 -0
  176. package/dist/primitives/Number.d.mts.map +1 -0
  177. package/dist/primitives/Number.mjs +114 -0
  178. package/dist/primitives/Number.mjs.map +1 -0
  179. package/dist/primitives/String.cjs +127 -0
  180. package/dist/primitives/String.d.cts +56 -0
  181. package/dist/primitives/String.d.cts.map +1 -0
  182. package/dist/primitives/String.d.mts +56 -0
  183. package/dist/primitives/String.d.mts.map +1 -0
  184. package/dist/primitives/String.mjs +126 -0
  185. package/dist/primitives/String.mjs.map +1 -0
  186. package/dist/primitives/Struct.cjs +207 -0
  187. package/dist/primitives/Struct.d.cts +96 -0
  188. package/dist/primitives/Struct.d.cts.map +1 -0
  189. package/dist/primitives/Struct.d.mts +97 -0
  190. package/dist/primitives/Struct.d.mts.map +1 -0
  191. package/dist/primitives/Struct.mjs +206 -0
  192. package/dist/primitives/Struct.mjs.map +1 -0
  193. package/dist/primitives/Tree.cjs +575 -0
  194. package/dist/primitives/Tree.d.cts +185 -0
  195. package/dist/primitives/Tree.d.cts.map +1 -0
  196. package/dist/primitives/Tree.d.mts +185 -0
  197. package/dist/primitives/Tree.d.mts.map +1 -0
  198. package/dist/primitives/Tree.mjs +574 -0
  199. package/dist/primitives/Tree.mjs.map +1 -0
  200. package/dist/primitives/TreeNode.cjs +73 -0
  201. package/dist/primitives/TreeNode.d.cts +92 -0
  202. package/dist/primitives/TreeNode.d.cts.map +1 -0
  203. package/dist/primitives/TreeNode.d.mts +93 -0
  204. package/dist/primitives/TreeNode.d.mts.map +1 -0
  205. package/dist/primitives/TreeNode.mjs +72 -0
  206. package/dist/primitives/TreeNode.mjs.map +1 -0
  207. package/dist/primitives/Union.cjs +170 -0
  208. package/dist/primitives/Union.d.cts +81 -0
  209. package/dist/primitives/Union.d.cts.map +1 -0
  210. package/dist/primitives/Union.d.mts +81 -0
  211. package/dist/primitives/Union.d.mts.map +1 -0
  212. package/dist/primitives/Union.mjs +169 -0
  213. package/dist/primitives/Union.mjs.map +1 -0
  214. package/dist/primitives/shared.cjs +60 -0
  215. package/dist/primitives/shared.d.cts +147 -0
  216. package/dist/primitives/shared.d.cts.map +1 -0
  217. package/dist/primitives/shared.d.mts +147 -0
  218. package/dist/primitives/shared.d.mts.map +1 -0
  219. package/dist/primitives/shared.mjs +58 -0
  220. package/dist/primitives/shared.mjs.map +1 -0
  221. package/dist/server/ServerDocument.cjs +110 -0
  222. package/dist/server/ServerDocument.d.cts +98 -0
  223. package/dist/server/ServerDocument.d.cts.map +1 -0
  224. package/dist/server/ServerDocument.d.mts +99 -0
  225. package/dist/server/ServerDocument.d.mts.map +1 -0
  226. package/dist/server/ServerDocument.mjs +106 -0
  227. package/dist/server/ServerDocument.mjs.map +1 -0
  228. package/dist/server/errors.cjs +85 -0
  229. package/dist/server/errors.d.cts +53 -0
  230. package/dist/server/errors.d.cts.map +1 -0
  231. package/dist/server/errors.d.mts +53 -0
  232. package/dist/server/errors.d.mts.map +1 -0
  233. package/dist/server/errors.mjs +81 -0
  234. package/dist/server/errors.mjs.map +1 -0
  235. package/dist/server/index.cjs +9 -185
  236. package/dist/server/index.d.cts +3 -148
  237. package/dist/server/index.d.mts +3 -148
  238. package/dist/server/index.mjs +3 -181
  239. package/dist/types/index.cjs +16 -0
  240. package/dist/types/index.d.cts +16 -0
  241. package/dist/types/index.d.cts.map +1 -0
  242. package/dist/types/index.d.mts +16 -0
  243. package/dist/types/index.d.mts.map +1 -0
  244. package/dist/types/index.mjs +12 -0
  245. package/dist/types/index.mjs.map +1 -0
  246. package/dist/utils/tree-helpers.cjs +443 -0
  247. package/dist/utils/tree-helpers.d.cts +280 -0
  248. package/dist/utils/tree-helpers.d.cts.map +1 -0
  249. package/dist/utils/tree-helpers.d.mts +280 -0
  250. package/dist/utils/tree-helpers.d.mts.map +1 -0
  251. package/dist/utils/tree-helpers.mjs +439 -0
  252. package/dist/utils/tree-helpers.mjs.map +1 -0
  253. package/package.json +2 -2
  254. package/tsdown.config.ts +1 -1
  255. package/dist/Document-ChuFrTk1.cjs +0 -571
  256. package/dist/Document-CwiAFTIq.mjs +0 -438
  257. package/dist/Document-CwiAFTIq.mjs.map +0 -1
  258. package/dist/Presence-DKKP4v5X.d.cts.map +0 -1
  259. package/dist/Presence-DdMVKcOv.mjs.map +0 -1
  260. package/dist/Presence-N8u7Eppr.d.mts.map +0 -1
  261. package/dist/Primitive-DqQFc3Gu.d.mts +0 -1180
  262. package/dist/Primitive-DqQFc3Gu.d.mts.map +0 -1
  263. package/dist/Primitive-awpEjnKL.d.cts +0 -1180
  264. package/dist/Primitive-awpEjnKL.d.cts.map +0 -1
  265. package/dist/client/index.d.cts.map +0 -1
  266. package/dist/client/index.d.mts.map +0 -1
  267. package/dist/client/index.mjs.map +0 -1
  268. package/dist/index.d.cts.map +0 -1
  269. package/dist/index.d.mts.map +0 -1
  270. package/dist/index.mjs.map +0 -1
  271. package/dist/server/index.d.cts.map +0 -1
  272. package/dist/server/index.d.mts.map +0 -1
  273. package/dist/server/index.mjs.map +0 -1
@@ -0,0 +1,115 @@
1
+ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
+ const require_defineProperty = require('../_virtual/_@oxc-project_runtime@0.103.0/helpers/defineProperty.cjs');
3
+ const require_objectSpread2 = require('../_virtual/_@oxc-project_runtime@0.103.0/helpers/objectSpread2.cjs');
4
+ const require_shared = require('./shared.cjs');
5
+ const require_OperationDefinition = require('../OperationDefinition.cjs');
6
+ const require_OperationPath = require('../OperationPath.cjs');
7
+ const require_Operation = require('../Operation.cjs');
8
+ let effect = require("effect");
9
+
10
+ //#region src/primitives/Number.ts
11
+ var NumberPrimitive = class NumberPrimitive {
12
+ constructor(schema) {
13
+ require_defineProperty._defineProperty(this, "_tag", "NumberPrimitive");
14
+ require_defineProperty._defineProperty(this, "_State", void 0);
15
+ require_defineProperty._defineProperty(this, "_Proxy", void 0);
16
+ require_defineProperty._defineProperty(this, "_TRequired", void 0);
17
+ require_defineProperty._defineProperty(this, "_THasDefault", void 0);
18
+ require_defineProperty._defineProperty(this, "TUpdateInput", void 0);
19
+ require_defineProperty._defineProperty(this, "TSetInput", void 0);
20
+ require_defineProperty._defineProperty(this, "_schema", void 0);
21
+ require_defineProperty._defineProperty(this, "_opDefinitions", { set: require_OperationDefinition.make({
22
+ kind: "number.set",
23
+ payload: effect.Schema.Number,
24
+ target: effect.Schema.Number,
25
+ apply: (payload) => payload
26
+ }) });
27
+ require_defineProperty._defineProperty(this, "_internal", {
28
+ createProxy: (env, operationPath) => {
29
+ const defaultValue = this._schema.defaultValue;
30
+ return {
31
+ get: () => {
32
+ const state = env.getState(operationPath);
33
+ return state !== null && state !== void 0 ? state : defaultValue;
34
+ },
35
+ set: (value) => {
36
+ env.addOperation(require_Operation.fromDefinition(operationPath, this._opDefinitions.set, value));
37
+ },
38
+ update: (value) => {
39
+ env.addOperation(require_Operation.fromDefinition(operationPath, this._opDefinitions.set, value));
40
+ },
41
+ toSnapshot: () => {
42
+ const state = env.getState(operationPath);
43
+ return state !== null && state !== void 0 ? state : defaultValue;
44
+ }
45
+ };
46
+ },
47
+ applyOperation: (_state, operation) => {
48
+ if (operation.kind !== "number.set") throw new require_shared.ValidationError(`NumberPrimitive cannot apply operation of kind: ${operation.kind}`);
49
+ const payload = operation.payload;
50
+ if (typeof payload !== "number") throw new require_shared.ValidationError(`NumberPrimitive.set requires a number payload, got: ${typeof payload}`);
51
+ require_shared.runValidators(payload, this._schema.validators);
52
+ return payload;
53
+ },
54
+ getInitialState: () => {
55
+ return this._schema.defaultValue;
56
+ },
57
+ transformOperation: (clientOp, serverOp) => {
58
+ if (!require_OperationPath.pathsOverlap(clientOp.path, serverOp.path)) return {
59
+ type: "transformed",
60
+ operation: clientOp
61
+ };
62
+ return {
63
+ type: "transformed",
64
+ operation: clientOp
65
+ };
66
+ }
67
+ });
68
+ this._schema = schema;
69
+ }
70
+ /** Mark this number as required */
71
+ required() {
72
+ return new NumberPrimitive(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, this._schema), {}, { required: true }));
73
+ }
74
+ /** Set a default value for this number */
75
+ default(defaultValue) {
76
+ return new NumberPrimitive(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, this._schema), {}, { defaultValue }));
77
+ }
78
+ /** Add a custom validation rule */
79
+ refine(fn, message) {
80
+ return new NumberPrimitive(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, this._schema), {}, { validators: [...this._schema.validators, {
81
+ validate: fn,
82
+ message
83
+ }] }));
84
+ }
85
+ /** Minimum value (inclusive) */
86
+ min(value) {
87
+ return this.refine((v) => v >= value, `Number must be at least ${value}`);
88
+ }
89
+ /** Maximum value (inclusive) */
90
+ max(value) {
91
+ return this.refine((v) => v <= value, `Number must be at most ${value}`);
92
+ }
93
+ /** Must be positive (> 0) */
94
+ positive() {
95
+ return this.refine((v) => v > 0, "Number must be positive");
96
+ }
97
+ /** Must be negative (< 0) */
98
+ negative() {
99
+ return this.refine((v) => v < 0, "Number must be negative");
100
+ }
101
+ /** Must be an integer */
102
+ int() {
103
+ return this.refine((v) => globalThis.Number.isInteger(v), "Number must be an integer");
104
+ }
105
+ };
106
+ /** Creates a new NumberPrimitive */
107
+ const Number = () => new NumberPrimitive({
108
+ required: false,
109
+ defaultValue: void 0,
110
+ validators: []
111
+ });
112
+
113
+ //#endregion
114
+ exports.Number = Number;
115
+ exports.NumberPrimitive = NumberPrimitive;
@@ -0,0 +1,54 @@
1
+ import { MaybeUndefined, NeedsValue, Primitive, PrimitiveInternal, Validator } from "./shared.cjs";
2
+
3
+ //#region src/primitives/Number.d.ts
4
+ type InferSetInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<number, TRequired, THasDefault>;
5
+ type InferUpdateInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<number, TRequired, THasDefault>;
6
+ interface NumberProxy<TRequired extends boolean = false, THasDefault extends boolean = false> {
7
+ /** Gets the current number value */
8
+ get(): MaybeUndefined<number, TRequired, THasDefault>;
9
+ /** Sets the number value, generating a number.set operation */
10
+ set(value: InferSetInput<TRequired, THasDefault>): void;
11
+ /** This is the same as set. Updates the number value, generating a number.set operation */
12
+ update(value: InferUpdateInput<TRequired, THasDefault>): void;
13
+ /** Returns a readonly snapshot of the number value for rendering */
14
+ toSnapshot(): MaybeUndefined<number, TRequired, THasDefault>;
15
+ }
16
+ interface NumberPrimitiveSchema {
17
+ readonly required: boolean;
18
+ readonly defaultValue: number | undefined;
19
+ readonly validators: readonly Validator<number>[];
20
+ }
21
+ declare class NumberPrimitive<TRequired extends boolean = false, THasDefault extends boolean = false> implements Primitive<number, NumberProxy<TRequired, THasDefault>, TRequired, THasDefault, InferSetInput<TRequired, THasDefault>, InferUpdateInput<TRequired, THasDefault>> {
22
+ readonly _tag: "NumberPrimitive";
23
+ readonly _State: number;
24
+ readonly _Proxy: NumberProxy<TRequired, THasDefault>;
25
+ readonly _TRequired: TRequired;
26
+ readonly _THasDefault: THasDefault;
27
+ readonly TUpdateInput: InferUpdateInput<TRequired, THasDefault>;
28
+ readonly TSetInput: InferSetInput<TRequired, THasDefault>;
29
+ private readonly _schema;
30
+ private readonly _opDefinitions;
31
+ constructor(schema: NumberPrimitiveSchema);
32
+ /** Mark this number as required */
33
+ required(): NumberPrimitive<true, THasDefault>;
34
+ /** Set a default value for this number */
35
+ default(defaultValue: number): NumberPrimitive<TRequired, true>;
36
+ /** Add a custom validation rule */
37
+ refine(fn: (value: number) => boolean, message: string): NumberPrimitive<TRequired, THasDefault>;
38
+ /** Minimum value (inclusive) */
39
+ min(value: number): NumberPrimitive<TRequired, THasDefault>;
40
+ /** Maximum value (inclusive) */
41
+ max(value: number): NumberPrimitive<TRequired, THasDefault>;
42
+ /** Must be positive (> 0) */
43
+ positive(): NumberPrimitive<TRequired, THasDefault>;
44
+ /** Must be negative (< 0) */
45
+ negative(): NumberPrimitive<TRequired, THasDefault>;
46
+ /** Must be an integer */
47
+ int(): NumberPrimitive<TRequired, THasDefault>;
48
+ readonly _internal: PrimitiveInternal<number, NumberProxy<TRequired, THasDefault>>;
49
+ }
50
+ /** Creates a new NumberPrimitive */
51
+ declare const Number: () => NumberPrimitive<false, false>;
52
+ //#endregion
53
+ export { Number, NumberPrimitive, NumberProxy };
54
+ //# sourceMappingURL=Number.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Number.d.cts","names":[],"sources":["../../src/primitives/Number.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import { MaybeUndefined, NeedsValue, Primitive, PrimitiveInternal, Validator } from "./shared.mjs";
2
+
3
+ //#region src/primitives/Number.d.ts
4
+ type InferSetInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<number, TRequired, THasDefault>;
5
+ type InferUpdateInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<number, TRequired, THasDefault>;
6
+ interface NumberProxy<TRequired extends boolean = false, THasDefault extends boolean = false> {
7
+ /** Gets the current number value */
8
+ get(): MaybeUndefined<number, TRequired, THasDefault>;
9
+ /** Sets the number value, generating a number.set operation */
10
+ set(value: InferSetInput<TRequired, THasDefault>): void;
11
+ /** This is the same as set. Updates the number value, generating a number.set operation */
12
+ update(value: InferUpdateInput<TRequired, THasDefault>): void;
13
+ /** Returns a readonly snapshot of the number value for rendering */
14
+ toSnapshot(): MaybeUndefined<number, TRequired, THasDefault>;
15
+ }
16
+ interface NumberPrimitiveSchema {
17
+ readonly required: boolean;
18
+ readonly defaultValue: number | undefined;
19
+ readonly validators: readonly Validator<number>[];
20
+ }
21
+ declare class NumberPrimitive<TRequired extends boolean = false, THasDefault extends boolean = false> implements Primitive<number, NumberProxy<TRequired, THasDefault>, TRequired, THasDefault, InferSetInput<TRequired, THasDefault>, InferUpdateInput<TRequired, THasDefault>> {
22
+ readonly _tag: "NumberPrimitive";
23
+ readonly _State: number;
24
+ readonly _Proxy: NumberProxy<TRequired, THasDefault>;
25
+ readonly _TRequired: TRequired;
26
+ readonly _THasDefault: THasDefault;
27
+ readonly TUpdateInput: InferUpdateInput<TRequired, THasDefault>;
28
+ readonly TSetInput: InferSetInput<TRequired, THasDefault>;
29
+ private readonly _schema;
30
+ private readonly _opDefinitions;
31
+ constructor(schema: NumberPrimitiveSchema);
32
+ /** Mark this number as required */
33
+ required(): NumberPrimitive<true, THasDefault>;
34
+ /** Set a default value for this number */
35
+ default(defaultValue: number): NumberPrimitive<TRequired, true>;
36
+ /** Add a custom validation rule */
37
+ refine(fn: (value: number) => boolean, message: string): NumberPrimitive<TRequired, THasDefault>;
38
+ /** Minimum value (inclusive) */
39
+ min(value: number): NumberPrimitive<TRequired, THasDefault>;
40
+ /** Maximum value (inclusive) */
41
+ max(value: number): NumberPrimitive<TRequired, THasDefault>;
42
+ /** Must be positive (> 0) */
43
+ positive(): NumberPrimitive<TRequired, THasDefault>;
44
+ /** Must be negative (< 0) */
45
+ negative(): NumberPrimitive<TRequired, THasDefault>;
46
+ /** Must be an integer */
47
+ int(): NumberPrimitive<TRequired, THasDefault>;
48
+ readonly _internal: PrimitiveInternal<number, NumberProxy<TRequired, THasDefault>>;
49
+ }
50
+ /** Creates a new NumberPrimitive */
51
+ declare const Number: () => NumberPrimitive<false, false>;
52
+ //#endregion
53
+ export { Number, NumberPrimitive, NumberProxy };
54
+ //# sourceMappingURL=Number.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Number.d.mts","names":[],"sources":["../../src/primitives/Number.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ import { _defineProperty } from "../_virtual/_@oxc-project_runtime@0.103.0/helpers/defineProperty.mjs";
2
+ import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.103.0/helpers/objectSpread2.mjs";
3
+ import { ValidationError, runValidators } from "./shared.mjs";
4
+ import { make } from "../OperationDefinition.mjs";
5
+ import { pathsOverlap } from "../OperationPath.mjs";
6
+ import { fromDefinition } from "../Operation.mjs";
7
+ import { Schema } from "effect";
8
+
9
+ //#region src/primitives/Number.ts
10
+ var NumberPrimitive = class NumberPrimitive {
11
+ constructor(schema) {
12
+ _defineProperty(this, "_tag", "NumberPrimitive");
13
+ _defineProperty(this, "_State", void 0);
14
+ _defineProperty(this, "_Proxy", void 0);
15
+ _defineProperty(this, "_TRequired", void 0);
16
+ _defineProperty(this, "_THasDefault", void 0);
17
+ _defineProperty(this, "TUpdateInput", void 0);
18
+ _defineProperty(this, "TSetInput", void 0);
19
+ _defineProperty(this, "_schema", void 0);
20
+ _defineProperty(this, "_opDefinitions", { set: make({
21
+ kind: "number.set",
22
+ payload: Schema.Number,
23
+ target: Schema.Number,
24
+ apply: (payload) => payload
25
+ }) });
26
+ _defineProperty(this, "_internal", {
27
+ createProxy: (env, operationPath) => {
28
+ const defaultValue = this._schema.defaultValue;
29
+ return {
30
+ get: () => {
31
+ const state = env.getState(operationPath);
32
+ return state !== null && state !== void 0 ? state : defaultValue;
33
+ },
34
+ set: (value) => {
35
+ env.addOperation(fromDefinition(operationPath, this._opDefinitions.set, value));
36
+ },
37
+ update: (value) => {
38
+ env.addOperation(fromDefinition(operationPath, this._opDefinitions.set, value));
39
+ },
40
+ toSnapshot: () => {
41
+ const state = env.getState(operationPath);
42
+ return state !== null && state !== void 0 ? state : defaultValue;
43
+ }
44
+ };
45
+ },
46
+ applyOperation: (_state, operation) => {
47
+ if (operation.kind !== "number.set") throw new ValidationError(`NumberPrimitive cannot apply operation of kind: ${operation.kind}`);
48
+ const payload = operation.payload;
49
+ if (typeof payload !== "number") throw new ValidationError(`NumberPrimitive.set requires a number payload, got: ${typeof payload}`);
50
+ runValidators(payload, this._schema.validators);
51
+ return payload;
52
+ },
53
+ getInitialState: () => {
54
+ return this._schema.defaultValue;
55
+ },
56
+ transformOperation: (clientOp, serverOp) => {
57
+ if (!pathsOverlap(clientOp.path, serverOp.path)) return {
58
+ type: "transformed",
59
+ operation: clientOp
60
+ };
61
+ return {
62
+ type: "transformed",
63
+ operation: clientOp
64
+ };
65
+ }
66
+ });
67
+ this._schema = schema;
68
+ }
69
+ /** Mark this number as required */
70
+ required() {
71
+ return new NumberPrimitive(_objectSpread2(_objectSpread2({}, this._schema), {}, { required: true }));
72
+ }
73
+ /** Set a default value for this number */
74
+ default(defaultValue) {
75
+ return new NumberPrimitive(_objectSpread2(_objectSpread2({}, this._schema), {}, { defaultValue }));
76
+ }
77
+ /** Add a custom validation rule */
78
+ refine(fn, message) {
79
+ return new NumberPrimitive(_objectSpread2(_objectSpread2({}, this._schema), {}, { validators: [...this._schema.validators, {
80
+ validate: fn,
81
+ message
82
+ }] }));
83
+ }
84
+ /** Minimum value (inclusive) */
85
+ min(value) {
86
+ return this.refine((v) => v >= value, `Number must be at least ${value}`);
87
+ }
88
+ /** Maximum value (inclusive) */
89
+ max(value) {
90
+ return this.refine((v) => v <= value, `Number must be at most ${value}`);
91
+ }
92
+ /** Must be positive (> 0) */
93
+ positive() {
94
+ return this.refine((v) => v > 0, "Number must be positive");
95
+ }
96
+ /** Must be negative (< 0) */
97
+ negative() {
98
+ return this.refine((v) => v < 0, "Number must be negative");
99
+ }
100
+ /** Must be an integer */
101
+ int() {
102
+ return this.refine((v) => globalThis.Number.isInteger(v), "Number must be an integer");
103
+ }
104
+ };
105
+ /** Creates a new NumberPrimitive */
106
+ const Number = () => new NumberPrimitive({
107
+ required: false,
108
+ defaultValue: void 0,
109
+ validators: []
110
+ });
111
+
112
+ //#endregion
113
+ export { Number, NumberPrimitive };
114
+ //# sourceMappingURL=Number.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Number.mjs","names":["OperationDefinition.make","Operation.fromDefinition","OperationPath.pathsOverlap"],"sources":["../../src/primitives/Number.ts"],"sourcesContent":["import { Schema } from \"effect\";\nimport * as OperationDefinition from \"../OperationDefinition\";\nimport * as Operation from \"../Operation\";\nimport * as OperationPath from \"../OperationPath\";\nimport * as ProxyEnvironment from \"../ProxyEnvironment\";\nimport * as Transform from \"../Transform\";\nimport type { Primitive, PrimitiveInternal, MaybeUndefined, AnyPrimitive, Validator, NeedsValue } from \"./shared\";\nimport { ValidationError, runValidators, isCompatibleOperation } from \"./shared\";\n\n\ntype InferSetInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<number, TRequired, THasDefault>\ntype InferUpdateInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<number, TRequired, THasDefault>\n\nexport interface NumberProxy<TRequired extends boolean = false, THasDefault extends boolean = false> {\n /** Gets the current number value */\n get(): MaybeUndefined<number, TRequired, THasDefault>;\n /** Sets the number value, generating a number.set operation */\n set(value: InferSetInput<TRequired, THasDefault>): void;\n /** This is the same as set. Updates the number value, generating a number.set operation */\n update(value: InferUpdateInput<TRequired, THasDefault>): void;\n /** Returns a readonly snapshot of the number value for rendering */\n toSnapshot(): MaybeUndefined<number, TRequired, THasDefault>;\n}\n\ninterface NumberPrimitiveSchema {\n readonly required: boolean;\n readonly defaultValue: number | undefined;\n readonly validators: readonly Validator<number>[];\n}\n\nexport class NumberPrimitive<TRequired extends boolean = false, THasDefault extends boolean = false> implements Primitive<number, NumberProxy<TRequired, THasDefault>, TRequired, THasDefault, InferSetInput<TRequired, THasDefault>, InferUpdateInput<TRequired, THasDefault>> {\n readonly _tag = \"NumberPrimitive\" as const;\n readonly _State!: number;\n readonly _Proxy!: NumberProxy<TRequired, THasDefault>;\n readonly _TRequired!: TRequired;\n readonly _THasDefault!: THasDefault;\n readonly TUpdateInput!: InferUpdateInput<TRequired, THasDefault>;\n readonly TSetInput!: InferSetInput<TRequired, THasDefault>;\n\n private readonly _schema: NumberPrimitiveSchema;\n\n private readonly _opDefinitions = {\n set: OperationDefinition.make({\n kind: \"number.set\" as const,\n payload: Schema.Number,\n target: Schema.Number,\n apply: (payload) => payload,\n }),\n };\n\n constructor(schema: NumberPrimitiveSchema) {\n this._schema = schema;\n }\n\n /** Mark this number as required */\n required(): NumberPrimitive<true, THasDefault> {\n return new NumberPrimitive({\n ...this._schema,\n required: true,\n });\n }\n\n /** Set a default value for this number */\n default(defaultValue: number): NumberPrimitive<TRequired, true> {\n return new NumberPrimitive({\n ...this._schema,\n defaultValue,\n });\n }\n\n /** Add a custom validation rule */\n refine(fn: (value: number) => boolean, message: string): NumberPrimitive<TRequired, THasDefault> {\n return new NumberPrimitive({\n ...this._schema,\n validators: [...this._schema.validators, { validate: fn, message }],\n });\n }\n\n /** Minimum value (inclusive) */\n min(value: number): NumberPrimitive<TRequired, THasDefault> {\n return this.refine(\n (v) => v >= value,\n `Number must be at least ${value}`\n );\n }\n\n /** Maximum value (inclusive) */\n max(value: number): NumberPrimitive<TRequired, THasDefault> {\n return this.refine(\n (v) => v <= value,\n `Number must be at most ${value}`\n );\n }\n\n /** Must be positive (> 0) */\n positive(): NumberPrimitive<TRequired, THasDefault> {\n return this.refine(\n (v) => v > 0,\n \"Number must be positive\"\n );\n }\n\n /** Must be negative (< 0) */\n negative(): NumberPrimitive<TRequired, THasDefault> {\n return this.refine(\n (v) => v < 0,\n \"Number must be negative\"\n );\n }\n\n /** Must be an integer */\n int(): NumberPrimitive<TRequired, THasDefault> {\n return this.refine(\n (v) => globalThis.Number.isInteger(v),\n \"Number must be an integer\"\n );\n }\n\n readonly _internal: PrimitiveInternal<number, NumberProxy<TRequired, THasDefault>> = {\n createProxy: (env: ProxyEnvironment.ProxyEnvironment, operationPath: OperationPath.OperationPath): NumberProxy<TRequired, THasDefault> => {\n const defaultValue = this._schema.defaultValue;\n return {\n get: (): MaybeUndefined<number, TRequired, THasDefault> => {\n const state = env.getState(operationPath) as number | undefined;\n return (state ?? defaultValue) as MaybeUndefined<number, TRequired, THasDefault>;\n },\n set: (value: InferSetInput<TRequired, THasDefault>) => {\n env.addOperation(\n Operation.fromDefinition(operationPath, this._opDefinitions.set, value)\n );\n },\n update: (value: InferUpdateInput<TRequired, THasDefault>) => {\n env.addOperation(\n Operation.fromDefinition(operationPath, this._opDefinitions.set, value)\n );\n },\n toSnapshot: (): MaybeUndefined<number, TRequired, THasDefault> => {\n const state = env.getState(operationPath) as number | undefined;\n return (state ?? defaultValue) as MaybeUndefined<number, TRequired, THasDefault>;\n },\n };\n },\n\n applyOperation: (_state: number | undefined, operation: Operation.Operation<any, any, any>): number => {\n if (operation.kind !== \"number.set\") {\n throw new ValidationError(`NumberPrimitive cannot apply operation of kind: ${operation.kind}`);\n }\n\n const payload = operation.payload;\n if (typeof payload !== \"number\") {\n throw new ValidationError(`NumberPrimitive.set requires a number payload, got: ${typeof payload}`);\n }\n\n // Run validators\n runValidators(payload, this._schema.validators);\n\n return payload;\n },\n\n getInitialState: (): number | undefined => {\n return this._schema.defaultValue;\n },\n\n transformOperation: (\n clientOp: Operation.Operation<any, any, any>,\n serverOp: Operation.Operation<any, any, any>\n ): Transform.TransformResult => {\n // If paths don't overlap, no transformation needed\n if (!OperationPath.pathsOverlap(clientOp.path, serverOp.path)) {\n return { type: \"transformed\", operation: clientOp };\n }\n\n // For same path, client wins (last-write-wins)\n return { type: \"transformed\", operation: clientOp };\n },\n };\n}\n\n/** Creates a new NumberPrimitive */\nexport const Number = (): NumberPrimitive<false, false> =>\n new NumberPrimitive({ required: false, defaultValue: undefined, validators: [] });\n\n"],"mappings":";;;;;;;;;AA8BA,IAAa,kBAAb,MAAa,gBAAmQ;CAoB9Q,YAAY,QAA+B;wBAnBlC,QAAO;wBACP;wBACA;wBACA;wBACA;wBACA;wBACA;wBAEQ;wBAEA,kBAAiB,EAChC,KAAKA,KAAyB;GAC5B,MAAM;GACN,SAAS,OAAO;GAChB,QAAQ,OAAO;GACf,QAAQ,YAAY;GACrB,CAAC,EACH;wBAsEQ,aAA4E;GACnF,cAAc,KAAwC,kBAAoF;IACxI,MAAM,eAAe,KAAK,QAAQ;AAClC,WAAO;KACL,WAA2D;MACzD,MAAM,QAAQ,IAAI,SAAS,cAAc;AACzC,aAAQ,6CAAS;;KAEnB,MAAM,UAAiD;AACrD,UAAI,aACFC,eAAyB,eAAe,KAAK,eAAe,KAAK,MAAM,CACxE;;KAEH,SAAS,UAAoD;AAC3D,UAAI,aACFA,eAAyB,eAAe,KAAK,eAAe,KAAK,MAAM,CACxE;;KAEH,kBAAkE;MAChE,MAAM,QAAQ,IAAI,SAAS,cAAc;AACzC,aAAQ,6CAAS;;KAEpB;;GAGH,iBAAiB,QAA4B,cAA0D;AACrG,QAAI,UAAU,SAAS,aACrB,OAAM,IAAI,gBAAgB,mDAAmD,UAAU,OAAO;IAGhG,MAAM,UAAU,UAAU;AAC1B,QAAI,OAAO,YAAY,SACrB,OAAM,IAAI,gBAAgB,uDAAuD,OAAO,UAAU;AAIpG,kBAAc,SAAS,KAAK,QAAQ,WAAW;AAE/C,WAAO;;GAGT,uBAA2C;AACzC,WAAO,KAAK,QAAQ;;GAGtB,qBACE,UACA,aAC8B;AAE9B,QAAI,CAACC,aAA2B,SAAS,MAAM,SAAS,KAAK,CAC3D,QAAO;KAAE,MAAM;KAAe,WAAW;KAAU;AAIrD,WAAO;KAAE,MAAM;KAAe,WAAW;KAAU;;GAEtD;AA5HC,OAAK,UAAU;;;CAIjB,WAA+C;AAC7C,SAAO,IAAI,kDACN,KAAK,gBACR,UAAU,QACV;;;CAIJ,QAAQ,cAAwD;AAC9D,SAAO,IAAI,kDACN,KAAK,gBACR,gBACA;;;CAIJ,OAAO,IAAgC,SAA0D;AAC/F,SAAO,IAAI,kDACN,KAAK,gBACR,YAAY,CAAC,GAAG,KAAK,QAAQ,YAAY;GAAE,UAAU;GAAI;GAAS,CAAC,IACnE;;;CAIJ,IAAI,OAAwD;AAC1D,SAAO,KAAK,QACT,MAAM,KAAK,OACZ,2BAA2B,QAC5B;;;CAIH,IAAI,OAAwD;AAC1D,SAAO,KAAK,QACT,MAAM,KAAK,OACZ,0BAA0B,QAC3B;;;CAIH,WAAoD;AAClD,SAAO,KAAK,QACT,MAAM,IAAI,GACX,0BACD;;;CAIH,WAAoD;AAClD,SAAO,KAAK,QACT,MAAM,IAAI,GACX,0BACD;;;CAIH,MAA+C;AAC7C,SAAO,KAAK,QACT,MAAM,WAAW,OAAO,UAAU,EAAE,EACrC,4BACD;;;;AAgEL,MAAa,eACX,IAAI,gBAAgB;CAAE,UAAU;CAAO,cAAc;CAAW,YAAY,EAAE;CAAE,CAAC"}
@@ -0,0 +1,127 @@
1
+ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
+ const require_defineProperty = require('../_virtual/_@oxc-project_runtime@0.103.0/helpers/defineProperty.cjs');
3
+ const require_objectSpread2 = require('../_virtual/_@oxc-project_runtime@0.103.0/helpers/objectSpread2.cjs');
4
+ const require_shared = require('./shared.cjs');
5
+ const require_OperationDefinition = require('../OperationDefinition.cjs');
6
+ const require_OperationPath = require('../OperationPath.cjs');
7
+ const require_Operation = require('../Operation.cjs');
8
+ let effect = require("effect");
9
+
10
+ //#region src/primitives/String.ts
11
+ var StringPrimitive = class StringPrimitive {
12
+ constructor(schema) {
13
+ require_defineProperty._defineProperty(this, "_tag", "StringPrimitive");
14
+ require_defineProperty._defineProperty(this, "_State", void 0);
15
+ require_defineProperty._defineProperty(this, "_Proxy", void 0);
16
+ require_defineProperty._defineProperty(this, "_TRequired", void 0);
17
+ require_defineProperty._defineProperty(this, "_THasDefault", void 0);
18
+ require_defineProperty._defineProperty(this, "TUpdateInput", void 0);
19
+ require_defineProperty._defineProperty(this, "TSetInput", void 0);
20
+ require_defineProperty._defineProperty(this, "_schema", void 0);
21
+ require_defineProperty._defineProperty(this, "_opDefinitions", { set: require_OperationDefinition.make({
22
+ kind: "string.set",
23
+ payload: effect.Schema.String,
24
+ target: effect.Schema.String,
25
+ apply: (payload) => payload
26
+ }) });
27
+ require_defineProperty._defineProperty(this, "_internal", {
28
+ createProxy: (env, operationPath) => {
29
+ const defaultValue = this._schema.defaultValue;
30
+ return {
31
+ get: () => {
32
+ const state = env.getState(operationPath);
33
+ return state !== null && state !== void 0 ? state : defaultValue;
34
+ },
35
+ set: (value) => {
36
+ env.addOperation(require_Operation.fromDefinition(operationPath, this._opDefinitions.set, value));
37
+ },
38
+ update: (value) => {
39
+ env.addOperation(require_Operation.fromDefinition(operationPath, this._opDefinitions.set, value));
40
+ },
41
+ toSnapshot: () => {
42
+ const state = env.getState(operationPath);
43
+ return state !== null && state !== void 0 ? state : defaultValue;
44
+ }
45
+ };
46
+ },
47
+ applyOperation: (_state, operation) => {
48
+ if (!require_shared.isCompatibleOperation(operation, this._opDefinitions)) throw new require_shared.ValidationError(`StringPrimitive cannot apply operation of kind: ${operation.kind}`);
49
+ const payload = operation.payload;
50
+ if (typeof payload !== "string") throw new require_shared.ValidationError(`StringPrimitive.set requires a string payload, got: ${typeof payload}`);
51
+ require_shared.runValidators(payload, this._schema.validators);
52
+ return payload;
53
+ },
54
+ getInitialState: () => {
55
+ return this._schema.defaultValue;
56
+ },
57
+ transformOperation: (clientOp, serverOp) => {
58
+ if (!require_OperationPath.pathsOverlap(clientOp.path, serverOp.path)) return {
59
+ type: "transformed",
60
+ operation: clientOp
61
+ };
62
+ return {
63
+ type: "transformed",
64
+ operation: clientOp
65
+ };
66
+ }
67
+ });
68
+ this._schema = schema;
69
+ }
70
+ /** Mark this string as required */
71
+ required() {
72
+ return new StringPrimitive(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, this._schema), {}, { required: true }));
73
+ }
74
+ /** Set a default value for this string */
75
+ default(defaultValue) {
76
+ return new StringPrimitive(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, this._schema), {}, { defaultValue }));
77
+ }
78
+ /** Add a custom validation rule */
79
+ refine(fn, message) {
80
+ return new StringPrimitive(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, this._schema), {}, { validators: [...this._schema.validators, {
81
+ validate: fn,
82
+ message
83
+ }] }));
84
+ }
85
+ /** Minimum string length */
86
+ min(length) {
87
+ return this.refine((v) => v.length >= length, `String must be at least ${length} characters`);
88
+ }
89
+ /** Maximum string length */
90
+ max(length) {
91
+ return this.refine((v) => v.length <= length, `String must be at most ${length} characters`);
92
+ }
93
+ /** Exact string length */
94
+ length(exact) {
95
+ return this.refine((v) => v.length === exact, `String must be exactly ${exact} characters`);
96
+ }
97
+ /** Match a regex pattern */
98
+ regex(pattern, message) {
99
+ return this.refine((v) => pattern.test(v), message !== null && message !== void 0 ? message : `String must match pattern ${pattern}`);
100
+ }
101
+ /** Validate as email format */
102
+ email() {
103
+ const emailPattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
104
+ return this.refine((v) => emailPattern.test(v), "Invalid email format");
105
+ }
106
+ /** Validate as URL format */
107
+ url() {
108
+ return this.refine((v) => {
109
+ try {
110
+ new URL(v);
111
+ return true;
112
+ } catch (_unused) {
113
+ return false;
114
+ }
115
+ }, "Invalid URL format");
116
+ }
117
+ };
118
+ /** Creates a new StringPrimitive */
119
+ const String = () => new StringPrimitive({
120
+ required: false,
121
+ defaultValue: void 0,
122
+ validators: []
123
+ });
124
+
125
+ //#endregion
126
+ exports.String = String;
127
+ exports.StringPrimitive = StringPrimitive;
@@ -0,0 +1,56 @@
1
+ import { MaybeUndefined, NeedsValue, Primitive, PrimitiveInternal, Validator } from "./shared.cjs";
2
+
3
+ //#region src/primitives/String.d.ts
4
+ type InferSetInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<string, TRequired, THasDefault>;
5
+ type InferUpdateInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<string, TRequired, THasDefault>;
6
+ interface StringProxy<TRequired extends boolean = false, THasDefault extends boolean = false> {
7
+ /** Gets the current string value */
8
+ get(): MaybeUndefined<string, TRequired, THasDefault>;
9
+ /** Sets the string value, generating a string.set operation */
10
+ set(value: InferSetInput<TRequired, THasDefault>): void;
11
+ /** This is the same as set. Updates the string value, generating a string.set operation */
12
+ update(value: InferUpdateInput<TRequired, THasDefault>): void;
13
+ /** Returns a readonly snapshot of the string value for rendering */
14
+ toSnapshot(): MaybeUndefined<string, TRequired, THasDefault>;
15
+ }
16
+ interface StringPrimitiveSchema {
17
+ readonly required: boolean;
18
+ readonly defaultValue: string | undefined;
19
+ readonly validators: readonly Validator<string>[];
20
+ }
21
+ declare class StringPrimitive<TRequired extends boolean = false, THasDefault extends boolean = false> implements Primitive<string, StringProxy<TRequired, THasDefault>, TRequired, THasDefault, InferSetInput<TRequired, THasDefault>, InferUpdateInput<TRequired, THasDefault>> {
22
+ readonly _tag: "StringPrimitive";
23
+ readonly _State: string;
24
+ readonly _Proxy: StringProxy<TRequired, THasDefault>;
25
+ readonly _TRequired: TRequired;
26
+ readonly _THasDefault: THasDefault;
27
+ readonly TUpdateInput: InferUpdateInput<TRequired, THasDefault>;
28
+ readonly TSetInput: InferSetInput<TRequired, THasDefault>;
29
+ private readonly _schema;
30
+ private readonly _opDefinitions;
31
+ constructor(schema: StringPrimitiveSchema);
32
+ /** Mark this string as required */
33
+ required(): StringPrimitive<true, THasDefault>;
34
+ /** Set a default value for this string */
35
+ default(defaultValue: string): StringPrimitive<TRequired, true>;
36
+ /** Add a custom validation rule */
37
+ refine(fn: (value: string) => boolean, message: string): StringPrimitive<TRequired, THasDefault>;
38
+ /** Minimum string length */
39
+ min(length: number): StringPrimitive<TRequired, THasDefault>;
40
+ /** Maximum string length */
41
+ max(length: number): StringPrimitive<TRequired, THasDefault>;
42
+ /** Exact string length */
43
+ length(exact: number): StringPrimitive<TRequired, THasDefault>;
44
+ /** Match a regex pattern */
45
+ regex(pattern: RegExp, message?: string): StringPrimitive<TRequired, THasDefault>;
46
+ /** Validate as email format */
47
+ email(): StringPrimitive<TRequired, THasDefault>;
48
+ /** Validate as URL format */
49
+ url(): StringPrimitive<TRequired, THasDefault>;
50
+ readonly _internal: PrimitiveInternal<string, StringProxy<TRequired, THasDefault>>;
51
+ }
52
+ /** Creates a new StringPrimitive */
53
+ declare const String: () => StringPrimitive<false, false>;
54
+ //#endregion
55
+ export { String, StringPrimitive, StringProxy };
56
+ //# sourceMappingURL=String.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"String.d.cts","names":[],"sources":["../../src/primitives/String.ts"],"sourcesContent":[],"mappings":";;;KAUK,wFAAwF,mBAAmB,WAAW;KACtH,2FAA2F,mBAAmB,WAAW;AADzH,UAOY,WAPC,CAAA,kBAAA,OAAA,GAAA,KAAA,EAAA,oBAAA,OAAA,GAAA,KAAA,CAAA,CAAA;EAA8F;EAAW,GAAA,EAAA,EASlH,cATkH,CAAA,MAAA,EAS3F,SAT2F,EAShF,WATgF,CAAA;EAA9B;EAAU,GAAA,CAAA,KAAA,EAW1F,aAX0F,CAW5E,SAX4E,EAWjE,WAXiE,CAAA,CAAA,EAAA,IAAA;EAClG;EAA8G,MAAA,CAAA,KAAA,EAYnG,gBAZmG,CAYlF,SAZkF,EAYvE,WAZuE,CAAA,CAAA,EAAA,IAAA;EAAW;EAA9B,UAAA,EAAA,EAchF,cAdgF,CAAA,MAAA,EAczD,SAdyD,EAc9C,WAd8C,CAAA;;AAMhG,UAWU,qBAAA,CAXkB;EAEI,SAAA,QAAA,EAAA,OAAA;EAAW,SAAA,YAAA,EAAA,MAAA,GAAA,SAAA;EAAlC,SAAA,UAAA,EAAA,SAYuB,SAZvB,CAAA,MAAA,CAAA,EAAA;;AAE6B,cAazB,eAbyB,CAAA,kBAAA,OAAA,GAAA,KAAA,EAAA,oBAAA,OAAA,GAAA,KAAA,CAAA,YAa0E,SAb1E,CAAA,MAAA,EAa4F,WAb5F,CAawG,SAbxG,EAamH,WAbnH,CAAA,EAaiI,SAbjI,EAa4I,WAb5I,EAayJ,aAbzJ,CAauK,SAbvK,EAakL,WAblL,CAAA,EAagM,gBAbhM,CAaiN,SAbjN,EAa4N,WAb5N,CAAA,CAAA,CAAA;EAAzB,SAAA,IAAA,EAAA,iBAAA;EAEoB,SAAA,MAAA,EAAA,MAAA;EAAW,SAAA,MAAA,EAcxB,WAdwB,CAcZ,SAdY,EAcD,WAdC,CAAA;EAA5B,SAAA,UAAA,EAeQ,SAfR;EAEuB,SAAA,YAAA,EAcb,WAda;EAAW,SAAA,YAAA,EAexB,gBAfwB,CAeP,SAfO,EAeI,WAfJ,CAAA;EAAlC,SAAA,SAAA,EAgBO,aAhBP,CAgBqB,SAhBrB,EAgBgC,WAhBhC,CAAA;EAAc,iBAAA,OAAA;EAGpB,iBAAA,cAAqB;EAMlB,WAAA,CAAA,MAAe,EAoBN,qBApBM;EAAkH;EAAW,QAAA,CAAA,CAAA,EAyB3I,eAzB2I,CAAA,IAAA,EAyBrH,WAzBqH,CAAA;EAAvB;EAAqC,OAAA,CAAA,YAAA,EAAA,MAAA,CAAA,EAiCtI,eAjCsI,CAiCtH,SAjCsH,EAAA,IAAA,CAAA;EAAW;EAA2B,MAAA,CAAA,EAAA,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,OAAA,EAAA,OAAA,EAAA,MAAA,CAAA,EAyClJ,eAzCkJ,CAyClI,SAzCkI,EAyCvH,WAzCuH,CAAA;EAAW;EAAzB,GAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAiDxK,eAjDwK,CAiDxJ,SAjDwJ,EAiD7I,WAjD6I,CAAA;EAAwD;EAAW,GAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAyD3O,eAzD2O,CAyD3N,SAzD2N,EAyDhN,WAzDgN,CAAA;EAA5B;EAGtM,MAAA,CAAA,KAAA,EAAA,MAAA,CAAA,EA8DP,eA9DO,CA8DS,SA9DT,EA8DoB,WA9DpB,CAAA;EAAW;EAAvB,KAAA,CAAA,OAAA,EAsEH,MAtEG,EAAA,OAAA,CAAA,EAAA,MAAA,CAAA,EAsEwB,eAtExB,CAsEwC,SAtExC,EAsEmD,WAtEnD,CAAA;EACI;EACE,KAAA,CAAA,CAAA,EA4Ef,eA5Ee,CA4EC,SA5ED,EA4EY,WA5EZ,CAAA;EACiB;EAAW,GAAA,CAAA,CAAA,EAqF7C,eArF6C,CAqF7B,SArF6B,EAqFlB,WArFkB,CAAA;EAA5B,SAAA,SAAA,EAmGJ,iBAnGI,CAAA,MAAA,EAmGsB,WAnGtB,CAmGkC,SAnGlC,EAmG6C,WAnG7C,CAAA,CAAA;;;AACH,cAgKV,MAhKU,EAAA,GAAA,GAgKG,eAhKH,CAAA,KAAA,EAAA,KAAA,CAAA"}
@@ -0,0 +1,56 @@
1
+ import { MaybeUndefined, NeedsValue, Primitive, PrimitiveInternal, Validator } from "./shared.mjs";
2
+
3
+ //#region src/primitives/String.d.ts
4
+ type InferSetInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<string, TRequired, THasDefault>;
5
+ type InferUpdateInput<TRequired extends boolean = false, THasDefault extends boolean = false> = NeedsValue<string, TRequired, THasDefault>;
6
+ interface StringProxy<TRequired extends boolean = false, THasDefault extends boolean = false> {
7
+ /** Gets the current string value */
8
+ get(): MaybeUndefined<string, TRequired, THasDefault>;
9
+ /** Sets the string value, generating a string.set operation */
10
+ set(value: InferSetInput<TRequired, THasDefault>): void;
11
+ /** This is the same as set. Updates the string value, generating a string.set operation */
12
+ update(value: InferUpdateInput<TRequired, THasDefault>): void;
13
+ /** Returns a readonly snapshot of the string value for rendering */
14
+ toSnapshot(): MaybeUndefined<string, TRequired, THasDefault>;
15
+ }
16
+ interface StringPrimitiveSchema {
17
+ readonly required: boolean;
18
+ readonly defaultValue: string | undefined;
19
+ readonly validators: readonly Validator<string>[];
20
+ }
21
+ declare class StringPrimitive<TRequired extends boolean = false, THasDefault extends boolean = false> implements Primitive<string, StringProxy<TRequired, THasDefault>, TRequired, THasDefault, InferSetInput<TRequired, THasDefault>, InferUpdateInput<TRequired, THasDefault>> {
22
+ readonly _tag: "StringPrimitive";
23
+ readonly _State: string;
24
+ readonly _Proxy: StringProxy<TRequired, THasDefault>;
25
+ readonly _TRequired: TRequired;
26
+ readonly _THasDefault: THasDefault;
27
+ readonly TUpdateInput: InferUpdateInput<TRequired, THasDefault>;
28
+ readonly TSetInput: InferSetInput<TRequired, THasDefault>;
29
+ private readonly _schema;
30
+ private readonly _opDefinitions;
31
+ constructor(schema: StringPrimitiveSchema);
32
+ /** Mark this string as required */
33
+ required(): StringPrimitive<true, THasDefault>;
34
+ /** Set a default value for this string */
35
+ default(defaultValue: string): StringPrimitive<TRequired, true>;
36
+ /** Add a custom validation rule */
37
+ refine(fn: (value: string) => boolean, message: string): StringPrimitive<TRequired, THasDefault>;
38
+ /** Minimum string length */
39
+ min(length: number): StringPrimitive<TRequired, THasDefault>;
40
+ /** Maximum string length */
41
+ max(length: number): StringPrimitive<TRequired, THasDefault>;
42
+ /** Exact string length */
43
+ length(exact: number): StringPrimitive<TRequired, THasDefault>;
44
+ /** Match a regex pattern */
45
+ regex(pattern: RegExp, message?: string): StringPrimitive<TRequired, THasDefault>;
46
+ /** Validate as email format */
47
+ email(): StringPrimitive<TRequired, THasDefault>;
48
+ /** Validate as URL format */
49
+ url(): StringPrimitive<TRequired, THasDefault>;
50
+ readonly _internal: PrimitiveInternal<string, StringProxy<TRequired, THasDefault>>;
51
+ }
52
+ /** Creates a new StringPrimitive */
53
+ declare const String: () => StringPrimitive<false, false>;
54
+ //#endregion
55
+ export { String, StringPrimitive, StringProxy };
56
+ //# sourceMappingURL=String.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"String.d.mts","names":[],"sources":["../../src/primitives/String.ts"],"sourcesContent":[],"mappings":"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"}