@rickosborne/rebound 2025.2.16

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 (194) hide show
  1. package/README.md +1469 -0
  2. package/assert-bounded.cjs +44 -0
  3. package/assert-bounded.cjs.map +6 -0
  4. package/assert-bounded.d.ts +11 -0
  5. package/assert-bounded.d.ts.map +1 -0
  6. package/assert-bounded.mjs +25 -0
  7. package/assert-bounded.mjs.map +6 -0
  8. package/bound.cjs +132 -0
  9. package/bound.cjs.map +6 -0
  10. package/bound.d.ts +35 -0
  11. package/bound.d.ts.map +1 -0
  12. package/bound.mjs +113 -0
  13. package/bound.mjs.map +6 -0
  14. package/effective-range.cjs +30 -0
  15. package/effective-range.cjs.map +6 -0
  16. package/effective-range.d.ts +7 -0
  17. package/effective-range.d.ts.map +1 -0
  18. package/effective-range.mjs +11 -0
  19. package/effective-range.mjs.map +6 -0
  20. package/empty-range.cjs +45 -0
  21. package/empty-range.cjs.map +6 -0
  22. package/empty-range.d.ts +11 -0
  23. package/empty-range.d.ts.map +1 -0
  24. package/empty-range.mjs +26 -0
  25. package/empty-range.mjs.map +6 -0
  26. package/from-number-bounded.cjs +49 -0
  27. package/from-number-bounded.cjs.map +6 -0
  28. package/from-number-bounded.d.ts +12 -0
  29. package/from-number-bounded.d.ts.map +1 -0
  30. package/from-number-bounded.mjs +30 -0
  31. package/from-number-bounded.mjs.map +6 -0
  32. package/guard-bounded.cjs +38 -0
  33. package/guard-bounded.cjs.map +6 -0
  34. package/guard-bounded.d.ts +15 -0
  35. package/guard-bounded.d.ts.map +1 -0
  36. package/guard-bounded.mjs +19 -0
  37. package/guard-bounded.mjs.map +6 -0
  38. package/index.cjs +49 -0
  39. package/index.cjs.map +6 -0
  40. package/index.d.ts +32 -0
  41. package/index.d.ts.map +1 -0
  42. package/index.mjs +32 -0
  43. package/index.mjs.map +6 -0
  44. package/int255-from-01.cjs +34 -0
  45. package/int255-from-01.cjs.map +6 -0
  46. package/int255-from-01.d.ts +8 -0
  47. package/int255-from-01.d.ts.map +1 -0
  48. package/int255-from-01.mjs +15 -0
  49. package/int255-from-01.mjs.map +6 -0
  50. package/int255.cjs +34 -0
  51. package/int255.cjs.map +6 -0
  52. package/int255.d.ts +9 -0
  53. package/int255.d.ts.map +1 -0
  54. package/int255.mjs +14 -0
  55. package/int255.mjs.map +6 -0
  56. package/int360.cjs +34 -0
  57. package/int360.cjs.map +6 -0
  58. package/int360.d.ts +9 -0
  59. package/int360.d.ts.map +1 -0
  60. package/int360.mjs +14 -0
  61. package/int360.mjs.map +6 -0
  62. package/integer-from.cjs +54 -0
  63. package/integer-from.cjs.map +6 -0
  64. package/integer-from.d.ts +19 -0
  65. package/integer-from.d.ts.map +1 -0
  66. package/integer-from.mjs +35 -0
  67. package/integer-from.mjs.map +6 -0
  68. package/integer-generator.cjs +54 -0
  69. package/integer-generator.cjs.map +6 -0
  70. package/integer-generator.d.ts +9 -0
  71. package/integer-generator.d.ts.map +1 -0
  72. package/integer-generator.mjs +35 -0
  73. package/integer-generator.mjs.map +6 -0
  74. package/integer-range.cjs +50 -0
  75. package/integer-range.cjs.map +6 -0
  76. package/integer-range.d.ts +9 -0
  77. package/integer-range.d.ts.map +1 -0
  78. package/integer-range.mjs +31 -0
  79. package/integer-range.mjs.map +6 -0
  80. package/number-range.cjs +97 -0
  81. package/number-range.cjs.map +6 -0
  82. package/number-range.d.ts +20 -0
  83. package/number-range.d.ts.map +1 -0
  84. package/number-range.mjs +78 -0
  85. package/number-range.mjs.map +6 -0
  86. package/package.json +248 -0
  87. package/random-bounded.cjs +52 -0
  88. package/random-bounded.cjs.map +6 -0
  89. package/random-bounded.d.ts +9 -0
  90. package/random-bounded.d.ts.map +1 -0
  91. package/random-bounded.mjs +33 -0
  92. package/random-bounded.mjs.map +6 -0
  93. package/range-base.cjs +127 -0
  94. package/range-base.cjs.map +6 -0
  95. package/range-base.d.ts +29 -0
  96. package/range-base.d.ts.map +1 -0
  97. package/range-base.mjs +108 -0
  98. package/range-base.mjs.map +6 -0
  99. package/range-like.cjs +25 -0
  100. package/range-like.cjs.map +6 -0
  101. package/range-like.d.ts +20 -0
  102. package/range-like.d.ts.map +1 -0
  103. package/range-like.mjs +5 -0
  104. package/range-like.mjs.map +6 -0
  105. package/range.cjs +41 -0
  106. package/range.cjs.map +6 -0
  107. package/range.d.ts +4 -0
  108. package/range.d.ts.map +1 -0
  109. package/range.mjs +22 -0
  110. package/range.mjs.map +6 -0
  111. package/real-range.cjs +53 -0
  112. package/real-range.cjs.map +6 -0
  113. package/real-range.d.ts +8 -0
  114. package/real-range.d.ts.map +1 -0
  115. package/real-range.mjs +34 -0
  116. package/real-range.mjs.map +6 -0
  117. package/real01-from-255.cjs +37 -0
  118. package/real01-from-255.cjs.map +6 -0
  119. package/real01-from-255.d.ts +10 -0
  120. package/real01-from-255.d.ts.map +1 -0
  121. package/real01-from-255.mjs +18 -0
  122. package/real01-from-255.mjs.map +6 -0
  123. package/real01.cjs +34 -0
  124. package/real01.cjs.map +6 -0
  125. package/real01.d.ts +9 -0
  126. package/real01.d.ts.map +1 -0
  127. package/real01.mjs +14 -0
  128. package/real01.mjs.map +6 -0
  129. package/real255-from-01.cjs +28 -0
  130. package/real255-from-01.cjs.map +6 -0
  131. package/real255-from-01.d.ts +7 -0
  132. package/real255-from-01.d.ts.map +1 -0
  133. package/real255-from-01.mjs +9 -0
  134. package/real255-from-01.mjs.map +6 -0
  135. package/real255.cjs +34 -0
  136. package/real255.cjs.map +6 -0
  137. package/real255.d.ts +9 -0
  138. package/real255.d.ts.map +1 -0
  139. package/real255.mjs +14 -0
  140. package/real255.mjs.map +6 -0
  141. package/real360.cjs +34 -0
  142. package/real360.cjs.map +6 -0
  143. package/real360.d.ts +9 -0
  144. package/real360.d.ts.map +1 -0
  145. package/real360.mjs +14 -0
  146. package/real360.mjs.map +6 -0
  147. package/rebound-builder.cjs +148 -0
  148. package/rebound-builder.cjs.map +6 -0
  149. package/rebound-builder.d.ts +46 -0
  150. package/rebound-builder.d.ts.map +1 -0
  151. package/rebound-builder.mjs +129 -0
  152. package/rebound-builder.mjs.map +6 -0
  153. package/rebound.cjs +156 -0
  154. package/rebound.cjs.map +6 -0
  155. package/rebound.d.ts +70 -0
  156. package/rebound.d.ts.map +1 -0
  157. package/rebound.mjs +137 -0
  158. package/rebound.mjs.map +6 -0
  159. package/same-bounds.cjs +46 -0
  160. package/same-bounds.cjs.map +6 -0
  161. package/same-bounds.d.ts +4 -0
  162. package/same-bounds.d.ts.map +1 -0
  163. package/same-bounds.mjs +27 -0
  164. package/same-bounds.mjs.map +6 -0
  165. package/scale-bounded.cjs +59 -0
  166. package/scale-bounded.cjs.map +6 -0
  167. package/scale-bounded.d.ts +12 -0
  168. package/scale-bounded.d.ts.map +1 -0
  169. package/scale-bounded.mjs +40 -0
  170. package/scale-bounded.mjs.map +6 -0
  171. package/spec.cjs +41 -0
  172. package/spec.cjs.map +6 -0
  173. package/spec.d.ts +204 -0
  174. package/spec.d.ts.map +1 -0
  175. package/spec.mjs +21 -0
  176. package/spec.mjs.map +6 -0
  177. package/string-range.cjs +40 -0
  178. package/string-range.cjs.map +6 -0
  179. package/string-range.d.ts +8 -0
  180. package/string-range.d.ts.map +1 -0
  181. package/string-range.mjs +21 -0
  182. package/string-range.mjs.map +6 -0
  183. package/typed-function.cjs +42 -0
  184. package/typed-function.cjs.map +6 -0
  185. package/typed-function.d.ts +3 -0
  186. package/typed-function.d.ts.map +1 -0
  187. package/typed-function.mjs +23 -0
  188. package/typed-function.mjs.map +6 -0
  189. package/util.cjs +28 -0
  190. package/util.cjs.map +6 -0
  191. package/util.d.ts +3 -0
  192. package/util.d.ts.map +1 -0
  193. package/util.mjs +9 -0
  194. package/util.mjs.map +6 -0
package/spec.d.ts ADDED
@@ -0,0 +1,204 @@
1
+ export declare const BOUNDS: unique symbol;
2
+ export type NegInfinityLabel = "-∞";
3
+ export type PosInfinityLabel = "+∞";
4
+ export type NegInfinity = number & {
5
+ infinity: NegInfinityLabel;
6
+ };
7
+ export type PosInfinity = number & {
8
+ infinity: PosInfinityLabel;
9
+ };
10
+ export type InfinityBound = number & {
11
+ infinity: string;
12
+ };
13
+ export type LowerInclusive = "[";
14
+ export type LowerExclusive = "(";
15
+ export type UpperInclusive = "]";
16
+ export type UpperExclusive = ")";
17
+ export declare const LOWER_IN: LowerInclusive;
18
+ export declare const LOWER_EX: LowerExclusive;
19
+ export declare const UPPER_IN: UpperInclusive;
20
+ export declare const UPPER_EX: UpperExclusive;
21
+ export interface BoundIsInclusive {
22
+ readonly [LOWER_IN]: true;
23
+ readonly [LOWER_EX]: false;
24
+ readonly [UPPER_IN]: true;
25
+ readonly [UPPER_EX]: false;
26
+ }
27
+ export type UpperInEx = UpperInclusive | UpperExclusive;
28
+ export type LowerInEx = LowerInclusive | LowerExclusive;
29
+ export type LowerInExFrom<B extends boolean> = boolean extends B ? never : true extends B ? LowerInclusive : LowerExclusive;
30
+ export type UpperInExFrom<B extends boolean> = boolean extends B ? never : true extends B ? UpperInclusive : UpperExclusive;
31
+ export type IsInclusive<Inc extends UpperInEx | LowerInEx> = BoundIsInclusive[Inc];
32
+ export type IntegerSet = "int";
33
+ export type RealSet = "real";
34
+ export declare const INT_SET: IntegerSet;
35
+ export declare const REAL_SET: RealSet;
36
+ export type NumberSet = IntegerSet | RealSet;
37
+ export interface NumberSetIsInt {
38
+ [INT_SET]: true;
39
+ [REAL_SET]: false;
40
+ }
41
+ export type NumberSetFrom<B extends boolean> = boolean extends B ? never : true extends B ? IntegerSet : RealSet;
42
+ export type IsIntFrom<Int extends NumberSet> = NumberSetIsInt[Int];
43
+ export interface AnyBoundsConfig {
44
+ int?: NumberSet | undefined;
45
+ lower?: number | undefined;
46
+ lowerInc?: LowerInEx | undefined;
47
+ range?: string | undefined;
48
+ upper?: number | undefined;
49
+ upperInc?: UpperInEx | undefined;
50
+ }
51
+ export interface BoundsConfig<LowerInc extends LowerInEx, Lower extends number, Int extends NumberSet, Upper extends number, UpperInc extends UpperInEx> extends AnyBoundsConfig {
52
+ int: Int;
53
+ lower: Lower;
54
+ lowerInc: LowerInc;
55
+ upper: Upper;
56
+ upperInc: UpperInc;
57
+ }
58
+ export interface DefinedBounds {
59
+ int: NumberSet;
60
+ lower: number;
61
+ lowerInc: LowerInEx;
62
+ upper: number;
63
+ upperInc: UpperInEx;
64
+ }
65
+ export interface CheckedBounds {
66
+ isInt: boolean;
67
+ isLowerInc: boolean;
68
+ isUpperInc: boolean;
69
+ lower: number;
70
+ upper: number;
71
+ }
72
+ export interface DefinedFromChecked<IsLowerInc extends boolean, Lower extends number, IsInt extends boolean, Upper extends number, IsUpperInc extends boolean> extends DefinedBounds {
73
+ int: NumberSetFrom<IsInt>;
74
+ lower: Lower;
75
+ lowerInc: LowerInExFrom<IsLowerInc>;
76
+ upper: Upper;
77
+ upperInc: UpperInExFrom<IsUpperInc>;
78
+ }
79
+ export interface DefinedFromCheckedConfig<Config extends CheckedBounds> extends DefinedFromChecked<Config["isLowerInc"], Config["lower"], Config["isInt"], Config["upper"], Config["isUpperInc"]> {
80
+ }
81
+ export interface CheckedBoundsConfig<IsLowerInc extends boolean, Lower extends number, IsInt extends boolean, Upper extends number, IsUpperInc extends boolean> {
82
+ isInt: IsInt;
83
+ lower: Lower;
84
+ isLowerInc: IsLowerInc;
85
+ upper: Upper;
86
+ isUpperInc: IsUpperInc;
87
+ }
88
+ export interface RangedBounds extends DefinedBounds {
89
+ range: string;
90
+ }
91
+ export interface TypedBounds extends RangedBounds {
92
+ typeName: string;
93
+ }
94
+ export interface TypedCheckedBounds extends CheckedBounds {
95
+ label: string;
96
+ typeName: string;
97
+ }
98
+ export declare const TYPED_BOUNDS_KEYS: (keyof TypedBounds)[];
99
+ export declare const TYPED_CHECKED_BOUNDS_KEYS: (keyof TypedCheckedBounds)[];
100
+ export type BoundsLabel<C extends DefinedBounds> = `${C extends {
101
+ lowerInc: infer LowerInc extends LowerInEx;
102
+ } ? LowerInc : never}${C extends {
103
+ lower: NegInfinity;
104
+ } ? NegInfinityLabel : C extends {
105
+ lower: infer Lower extends number;
106
+ } ? number extends Lower ? never : `${Lower}` : never}${C extends {
107
+ int: infer Int extends NumberSet;
108
+ } ? Int extends IntegerSet ? ".." : "," : never}${C extends {
109
+ upper: PosInfinity;
110
+ } ? PosInfinityLabel : C extends {
111
+ upper: infer Upper extends number;
112
+ } ? number extends Upper ? never : `${Upper}` : never}${C extends {
113
+ upperInc: infer UpperInc extends UpperInEx;
114
+ } ? UpperInc : never}`;
115
+ export interface BoundsWithRange<Range extends BoundsLabel<BoundsConfig<LowerInc, Lower, Int, Upper, UpperInc>>, LowerInc extends LowerInEx, Lower extends number, Int extends NumberSet, Upper extends number, UpperInc extends UpperInEx> extends BoundsConfig<LowerInc, Lower, Int, Upper, UpperInc> {
116
+ range: Range;
117
+ }
118
+ /**
119
+ * Nice, short, human-readable signature which will show up in the IDE.
120
+ */
121
+ export interface Rebounded<Range extends BoundsLabel<BoundsConfig<LowerInc, Lower, Int, Upper, UpperInc>>, LowerInc extends LowerInEx, Lower extends number, Int extends NumberSet, Upper extends number, UpperInc extends UpperInEx> {
122
+ [BOUNDS]: BoundsWithRange<Range, LowerInc, Lower, Int, Upper, UpperInc>;
123
+ }
124
+ export interface ReboundedFromConfig<LowerInc extends LowerInEx, Lower extends number, Int extends NumberSet, Upper extends number, UpperInc extends UpperInEx> extends Rebounded<BoundsLabel<BoundsConfig<LowerInc, Lower, Int, Upper, UpperInc>>, LowerInc, Lower, Int, Upper, UpperInc> {
125
+ }
126
+ export interface ReboundedFromChecked<IsLowerInc extends boolean, Lower extends number, IsInt extends boolean, Upper extends number, IsUpperInc extends boolean> extends Rebounded<BoundsLabel<DefinedFromChecked<IsLowerInc, Lower, IsInt, Upper, IsUpperInc>>, LowerInExFrom<IsLowerInc>, Lower, NumberSetFrom<IsInt>, Upper, UpperInExFrom<IsUpperInc>> {
127
+ }
128
+ /**
129
+ * Brand a number type with a type-generated explanation of its bounds,
130
+ * so that it can only accept other numbers with the exact same bounds.
131
+ */
132
+ export type BoundedNumber<Bounds> = Bounds extends BoundsConfig<infer LowerInc, infer Lower, infer Int, infer Upper, infer UpperInc> ? (number & ReboundedFromConfig<LowerInc, Lower, Int, Upper, UpperInc>) : Bounds extends CheckedBoundsConfig<infer IsLowerInc extends boolean, infer Lower extends number, infer IsInt extends boolean, infer Upper extends number, infer IsUpperInc extends boolean> ? (number & ReboundedFromChecked<IsLowerInc, Lower, IsInt, Upper, IsUpperInc>) : never;
133
+ /**
134
+ * Helper for checking if you're dealing with a {@link BoundedNumber}.
135
+ */
136
+ export type IsBounded<N extends number> = N extends {
137
+ [BOUNDS]: object;
138
+ } ? true : false;
139
+ /**
140
+ * You could also just cast to `number`, but this provides a nice
141
+ * explicit and hard-to-miss visual. It is also helpful in downstream
142
+ * type definitions where you need the bound types to be fungible.
143
+ */
144
+ export type Unbound<N extends number> = IsBounded<N> extends true ? number : N;
145
+ /**
146
+ * Extract the value for the lower bound.
147
+ */
148
+ export type LowerBound<N extends number> = N extends {
149
+ [BOUNDS]: {
150
+ lower: infer Lower extends number;
151
+ };
152
+ } ? Lower : never;
153
+ /**
154
+ * Extract whether the lower bound is inclusive (true) or exclusive (false).
155
+ */
156
+ export type LowerBoundIsInc<N extends number> = N extends {
157
+ [BOUNDS]: {
158
+ lowerInc: infer LowerInc extends LowerInEx;
159
+ };
160
+ } ? LowerInc extends LowerInclusive ? true : false : never;
161
+ /**
162
+ * Extract the value for the upper bound.
163
+ */
164
+ export type UpperBound<N extends number> = N extends {
165
+ [BOUNDS]: {
166
+ upper: infer Upper extends number;
167
+ };
168
+ } ? Upper : never;
169
+ /**
170
+ * Extract whether the lower bound is inclusive (true) or exclusive (false).
171
+ */
172
+ export type UpperBoundIsInc<N extends number> = N extends {
173
+ [BOUNDS]: {
174
+ upperInc: infer UpperInc extends UpperInEx;
175
+ };
176
+ } ? UpperInc extends UpperInclusive ? true : false : never;
177
+ /**
178
+ * Extract whether the number only accepts integers.
179
+ */
180
+ export type IsIntegersOnly<N extends number> = N extends {
181
+ [BOUNDS]: {
182
+ int: IntegerSet;
183
+ };
184
+ } ? true : false;
185
+ /**
186
+ * Whether the number has defined bounds (neither upper nor lower is infinite).
187
+ */
188
+ export type IsFinite<N extends number> = N extends {
189
+ [BOUNDS]: {
190
+ lower: infer Lower extends number;
191
+ upper: infer Upper extends number;
192
+ };
193
+ } ? Lower extends InfinityBound ? false : Upper extends InfinityBound ? false : true : never;
194
+ /**
195
+ * Whether the number has infinite bounds, either upper or lower.
196
+ */
197
+ export type IsInfinite<N extends number> = N extends {
198
+ [BOUNDS]: {
199
+ lower: infer Lower extends number;
200
+ upper: infer Upper extends number;
201
+ };
202
+ } ? Lower extends InfinityBound ? true : Upper extends InfinityBound ? true : false : never;
203
+ export type OutOfBoundsErrorProvider = (value: unknown, name?: string | undefined) => Error;
204
+ //# sourceMappingURL=spec.d.ts.map
package/spec.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec.d.ts","sourceRoot":"","sources":["../../../src/packages/rebound/spec.ts"],"names":[],"mappings":"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"}
package/spec.mjs ADDED
@@ -0,0 +1,21 @@
1
+ const BOUNDS = Symbol.for("bounds");
2
+ const LOWER_IN = "[";
3
+ const LOWER_EX = "(";
4
+ const UPPER_IN = "]";
5
+ const UPPER_EX = ")";
6
+ const INT_SET = "int";
7
+ const REAL_SET = "real";
8
+ const TYPED_BOUNDS_KEYS = ["typeName", "range", "lowerInc", "lower", "int", "upper", "upperInc"];
9
+ const TYPED_CHECKED_BOUNDS_KEYS = ["typeName", "label", "lower", "upper", "isInt", "isLowerInc", "isUpperInc"];
10
+ export {
11
+ BOUNDS,
12
+ INT_SET,
13
+ LOWER_EX,
14
+ LOWER_IN,
15
+ REAL_SET,
16
+ TYPED_BOUNDS_KEYS,
17
+ TYPED_CHECKED_BOUNDS_KEYS,
18
+ UPPER_EX,
19
+ UPPER_IN
20
+ };
21
+ //# sourceMappingURL=spec.mjs.map
package/spec.mjs.map ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/rebound/spec.ts"],
4
+ "mappings": "AAAO,MAAM,SAAS,OAAO,IAAI,QAAQ;AAUlC,MAAM,WAA2B;AACjC,MAAM,WAA2B;AACjC,MAAM,WAA2B;AACjC,MAAM,WAA2B;AAgBjC,MAAM,UAAsB;AAC5B,MAAM,WAAoB;AA2F1B,MAAM,oBAA2C,CAAE,YAAY,SAAS,YAAY,SAAS,OAAO,SAAS,UAAW;AACxH,MAAM,4BAA0D,CAAE,YAAY,SAAS,SAAS,SAAS,SAAS,cAAc,YAAa;",
5
+ "names": []
6
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var string_range_exports = {};
21
+ __export(string_range_exports, {
22
+ StringRange: () => StringRange
23
+ });
24
+ module.exports = __toCommonJS(string_range_exports);
25
+ var import_range_base = require("./range-base.cjs");
26
+ var import_range_like = require("./range-like.cjs");
27
+ const stringComparator = /* @__PURE__ */ __name((a, b) => a.localeCompare(b), "stringComparator");
28
+ const _StringRange = class _StringRange extends import_range_base.RangeBase {
29
+ label;
30
+ constructor(isLowerInc, lower, upper, isUpperInc) {
31
+ super(isLowerInc, lower, upper, isUpperInc, stringComparator);
32
+ this.label = lower === import_range_like.unbounded && upper === import_range_like.unbounded ? "<string>" : `${isLowerInc ? "[" : "("}${lower === import_range_like.unbounded ? "" : lower}${this.upperBound === this.lowerBound ? "" : `..${upper === import_range_like.unbounded ? "" : upper}`}${isUpperInc ? "]" : ")"}`;
33
+ }
34
+ isType(obj) {
35
+ return typeof obj === "string";
36
+ }
37
+ };
38
+ __name(_StringRange, "StringRange");
39
+ let StringRange = _StringRange;
40
+ //# sourceMappingURL=string-range.cjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/rebound/string-range.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAA0B;AAE1B,wBAA0B;AAE1B,MAAM,mBAAuC,wBAAC,GAAG,MAAM,EAAE,cAAc,CAAC,GAA3B;AAEtC,MAAM,eAAN,MAAM,qBAAoB,4BAAkB;AAAA,EAC/B;AAAA,EAEnB,YACC,YACA,OACA,OACA,YACC;AACD,UAAM,YAAY,OAAO,OAAO,YAAY,gBAAgB;AAC5D,SAAK,QAAQ,UAAU,+BAAa,UAAU,8BAAY,aAAa,GAAG,aAAa,MAAM,GAAG,GAAG,UAAU,8BAAY,KAAK,KAAK,GAAG,KAAK,eAAe,KAAK,aAAa,KAAK,KAAK,UAAU,8BAAY,KAAK,KAAM,EAAE,GAAG,aAAa,MAAM,GAAG;AAAA,EACnP;AAAA,EAEO,OAAO,KAA6B;AAC1C,WAAO,OAAO,QAAQ;AAAA,EACvB;AACD;AAhBmD;AAA5C,IAAM,cAAN;",
5
+ "names": []
6
+ }
@@ -0,0 +1,8 @@
1
+ import { RangeBase } from "./range-base.js";
2
+ import type { Unbounded } from "./range-like.js";
3
+ export declare class StringRange extends RangeBase<string> {
4
+ label: string;
5
+ constructor(isLowerInc: boolean, lower: string | Unbounded, upper: string | Unbounded, isUpperInc: boolean);
6
+ isType(obj: unknown): obj is string;
7
+ }
8
+ //# sourceMappingURL=string-range.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string-range.d.ts","sourceRoot":"","sources":["../../../src/packages/rebound/string-range.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAKjD,qBAAa,WAAY,SAAQ,SAAS,CAAC,MAAM,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;gBAGhC,UAAU,EAAE,OAAO,EACnB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,UAAU,EAAE,OAAO;IAMb,MAAM,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,MAAM;CAG1C"}
@@ -0,0 +1,21 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { RangeBase } from "./range-base.mjs";
4
+ import { unbounded } from "./range-like.mjs";
5
+ const stringComparator = /* @__PURE__ */ __name((a, b) => a.localeCompare(b), "stringComparator");
6
+ const _StringRange = class _StringRange extends RangeBase {
7
+ label;
8
+ constructor(isLowerInc, lower, upper, isUpperInc) {
9
+ super(isLowerInc, lower, upper, isUpperInc, stringComparator);
10
+ this.label = lower === unbounded && upper === unbounded ? "<string>" : `${isLowerInc ? "[" : "("}${lower === unbounded ? "" : lower}${this.upperBound === this.lowerBound ? "" : `..${upper === unbounded ? "" : upper}`}${isUpperInc ? "]" : ")"}`;
11
+ }
12
+ isType(obj) {
13
+ return typeof obj === "string";
14
+ }
15
+ };
16
+ __name(_StringRange, "StringRange");
17
+ let StringRange = _StringRange;
18
+ export {
19
+ StringRange
20
+ };
21
+ //# sourceMappingURL=string-range.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/rebound/string-range.ts"],
4
+ "mappings": ";;AACA,SAAS,iBAAiB;AAE1B,SAAS,iBAAiB;AAE1B,MAAM,mBAAuC,wBAAC,GAAG,MAAM,EAAE,cAAc,CAAC,GAA3B;AAEtC,MAAM,eAAN,MAAM,qBAAoB,UAAkB;AAAA,EAC/B;AAAA,EAEnB,YACC,YACA,OACA,OACA,YACC;AACD,UAAM,YAAY,OAAO,OAAO,YAAY,gBAAgB;AAC5D,SAAK,QAAQ,UAAU,aAAa,UAAU,YAAY,aAAa,GAAG,aAAa,MAAM,GAAG,GAAG,UAAU,YAAY,KAAK,KAAK,GAAG,KAAK,eAAe,KAAK,aAAa,KAAK,KAAK,UAAU,YAAY,KAAK,KAAM,EAAE,GAAG,aAAa,MAAM,GAAG;AAAA,EACnP;AAAA,EAEO,OAAO,KAA6B;AAC1C,WAAO,OAAO,QAAQ;AAAA,EACvB;AACD;AAhBmD;AAA5C,IAAM,cAAN;",
5
+ "names": []
6
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var typed_function_exports = {};
21
+ __export(typed_function_exports, {
22
+ addTypedProperties: () => addTypedProperties
23
+ });
24
+ module.exports = __toCommonJS(typed_function_exports);
25
+ var import_foundation = require("@rickosborne/foundation");
26
+ var import_range = require("./range.cjs");
27
+ const addTypedProperties = /* @__PURE__ */ __name((target, bounds, typeName, fnName) => {
28
+ const { isInt, isUpperInc, isLowerInc, label, lower, upper } = bounds;
29
+ const range = "range" in bounds && typeof bounds.range === "string" ? bounds.range : (0, import_range.rangeFromChecked)(bounds);
30
+ return (0, import_foundation.addProperties)(target, {
31
+ isLowerInc: { value: isLowerInc, enumerable: true, configurable: false, writable: false },
32
+ isInt: { value: isInt, enumerable: true, configurable: false, writable: false },
33
+ isUpperInc: { value: isUpperInc, enumerable: true, configurable: false, writable: false },
34
+ label: { value: label, enumerable: true, configurable: false, writable: false },
35
+ lower: { value: lower, enumerable: true, configurable: false, writable: false },
36
+ name: { value: fnName, enumerable: false, configurable: true, writable: false },
37
+ range: { value: range, enumerable: true, configurable: false, writable: false },
38
+ typeName: { value: typeName, enumerable: true, configurable: false, writable: false },
39
+ upper: { value: upper, enumerable: true, configurable: false, writable: false }
40
+ });
41
+ }, "addTypedProperties");
42
+ //# sourceMappingURL=typed-function.cjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/rebound/typed-function.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAA8B;AAC9B,mBAAiC;AAG1B,MAAM,qBAAqB,wBACjC,QACA,QACA,UACA,WAC4B;AAC5B,QAAM,EAAE,OAAO,YAAY,YAAY,OAAO,OAAO,MAAM,IAAI;AAC/D,QAAM,QAAQ,WAAW,UAAU,OAAO,OAAO,UAAU,WAAW,OAAO,YAAQ,+BAAiB,MAAM;AAC5G,aAAO,iCAAc,QAAQ;AAAA,IAC5B,YAAY,EAAE,OAAO,YAAY,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IACxF,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,YAAY,EAAE,OAAO,YAAY,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IACxF,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,MAAM,EAAE,OAAO,QAAQ,YAAY,OAAO,cAAc,MAAM,UAAU,MAAM;AAAA,IAC9E,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,UAAU,EAAE,OAAO,UAAU,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IACpF,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,EAC/E,CAAC;AACF,GAnBkC;",
5
+ "names": []
6
+ }
@@ -0,0 +1,3 @@
1
+ import type { TypedCheckedBounds } from "./spec.js";
2
+ export declare const addTypedProperties: <T extends object, Bounds extends Omit<TypedCheckedBounds, "typeName">>(target: T, bounds: Bounds, typeName: string, fnName: string) => T & TypedCheckedBounds;
3
+ //# sourceMappingURL=typed-function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-function.d.ts","sourceRoot":"","sources":["../../../src/packages/rebound/typed-function.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEpD,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,MAAM,EAAE,MAAM,SAAS,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,UAC/F,CAAC,UACD,MAAM,YACJ,MAAM,UACR,MAAM,KACZ,CAAC,GAAG,kBAcN,CAAC"}
@@ -0,0 +1,23 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { addProperties } from "@rickosborne/foundation";
4
+ import { rangeFromChecked } from "./range.mjs";
5
+ const addTypedProperties = /* @__PURE__ */ __name((target, bounds, typeName, fnName) => {
6
+ const { isInt, isUpperInc, isLowerInc, label, lower, upper } = bounds;
7
+ const range = "range" in bounds && typeof bounds.range === "string" ? bounds.range : rangeFromChecked(bounds);
8
+ return addProperties(target, {
9
+ isLowerInc: { value: isLowerInc, enumerable: true, configurable: false, writable: false },
10
+ isInt: { value: isInt, enumerable: true, configurable: false, writable: false },
11
+ isUpperInc: { value: isUpperInc, enumerable: true, configurable: false, writable: false },
12
+ label: { value: label, enumerable: true, configurable: false, writable: false },
13
+ lower: { value: lower, enumerable: true, configurable: false, writable: false },
14
+ name: { value: fnName, enumerable: false, configurable: true, writable: false },
15
+ range: { value: range, enumerable: true, configurable: false, writable: false },
16
+ typeName: { value: typeName, enumerable: true, configurable: false, writable: false },
17
+ upper: { value: upper, enumerable: true, configurable: false, writable: false }
18
+ });
19
+ }, "addTypedProperties");
20
+ export {
21
+ addTypedProperties
22
+ };
23
+ //# sourceMappingURL=typed-function.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/rebound/typed-function.ts"],
4
+ "mappings": ";;AAAA,SAAS,qBAAqB;AAC9B,SAAS,wBAAwB;AAG1B,MAAM,qBAAqB,wBACjC,QACA,QACA,UACA,WAC4B;AAC5B,QAAM,EAAE,OAAO,YAAY,YAAY,OAAO,OAAO,MAAM,IAAI;AAC/D,QAAM,QAAQ,WAAW,UAAU,OAAO,OAAO,UAAU,WAAW,OAAO,QAAQ,iBAAiB,MAAM;AAC5G,SAAO,cAAc,QAAQ;AAAA,IAC5B,YAAY,EAAE,OAAO,YAAY,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IACxF,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,YAAY,EAAE,OAAO,YAAY,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IACxF,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,MAAM,EAAE,OAAO,QAAQ,YAAY,OAAO,cAAc,MAAM,UAAU,MAAM;AAAA,IAC9E,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IAC9E,UAAU,EAAE,OAAO,UAAU,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,IACpF,OAAO,EAAE,OAAO,OAAO,YAAY,MAAM,cAAc,OAAO,UAAU,MAAM;AAAA,EAC/E,CAAC;AACF,GAnBkC;",
5
+ "names": []
6
+ }
package/util.cjs ADDED
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var util_exports = {};
21
+ __export(util_exports, {
22
+ ifIfPresent: () => ifIfPresent
23
+ });
24
+ module.exports = __toCommonJS(util_exports);
25
+ const ifIfPresent = /* @__PURE__ */ __name((ifPresent, t, u) => {
26
+ return ifPresent ? t : u;
27
+ }, "ifIfPresent");
28
+ //# sourceMappingURL=util.cjs.map
package/util.cjs.map ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/rebound/util.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,cAAc,wBAC1B,WACA,GACA,MACyB;AACzB,SAAQ,YAAY,IAAI;AACzB,GAN2B;",
5
+ "names": []
6
+ }
package/util.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import type { If } from "./guard-bounded.js";
2
+ export declare const ifIfPresent: <IfPresent extends boolean, T, U>(ifPresent: IfPresent, t: T, u: U) => If<IfPresent, T, U>;
3
+ //# sourceMappingURL=util.d.ts.map
package/util.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/packages/rebound/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAE7C,eAAO,MAAM,WAAW,GAAI,SAAS,SAAS,OAAO,EAAE,CAAC,EAAE,CAAC,aAC/C,SAAS,KACjB,CAAC,KACD,CAAC,KACF,EAAE,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAEpB,CAAC"}
package/util.mjs ADDED
@@ -0,0 +1,9 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ const ifIfPresent = /* @__PURE__ */ __name((ifPresent, t, u) => {
4
+ return ifPresent ? t : u;
5
+ }, "ifIfPresent");
6
+ export {
7
+ ifIfPresent
8
+ };
9
+ //# sourceMappingURL=util.mjs.map
package/util.mjs.map ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/packages/rebound/util.ts"],
4
+ "mappings": ";;AAEO,MAAM,cAAc,wBAC1B,WACA,GACA,MACyB;AACzB,SAAQ,YAAY,IAAI;AACzB,GAN2B;",
5
+ "names": []
6
+ }