@simcups/chance-utils 1.0.51 → 1.0.53

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.
package/dist/chance.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { convertClampedRange, convertRange } from "./linear-scale";
1
+ import { convertClampedRange, convertRange } from "./linear-scale.js";
2
2
  export declare function randomInteger(min: number, max: number): number;
3
- export declare function randomFloat(min: number, max: number): number;
3
+ export declare function randomFloat(min: number, max: number, precision?: number): number;
4
4
  export declare function chance(likelihood?: number, max?: number): boolean;
5
5
  export declare function weightedBool(trueLikelihood: number, falseLikelihood: number): boolean;
6
6
  export declare function sample<T>(array: T[]): T;
@@ -1 +1 @@
1
- {"version":3,"file":"chance.d.ts","sourceRoot":"","sources":["../src/chance.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,mBAAmB,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAEjE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAErD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAG5D;AAED,wBAAgB,MAAM,CAAC,UAAU,GAAE,MAAW,EAAE,GAAG,GAAE,MAAU,GAAG,OAAO,CAExE;AAED,wBAAgB,YAAY,CAC1B,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,GACtB,OAAO,CAET;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAUvC;AAED,wBAAgB,SAAS,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,WAEjE;AAED,wBAAgB,cAAc,CAC1B,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,WAGlD"}
1
+ {"version":3,"file":"chance.d.ts","sourceRoot":"","sources":["../src/chance.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,mBAAmB,EAAE,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAEpE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAErD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,GAAE,MAAU,GAAG,MAAM,CAInF;AAED,wBAAgB,MAAM,CAAC,UAAU,GAAE,MAAW,EAAE,GAAG,GAAE,MAAU,GAAG,OAAO,CAExE;AAED,wBAAgB,YAAY,CAC1B,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,GACtB,OAAO,CAET;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAUvC;AAED,wBAAgB,SAAS,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,WAEjE;AAED,wBAAgB,cAAc,CAC1B,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,WAGlD"}
package/dist/chance.js CHANGED
@@ -1,12 +1,13 @@
1
1
  import { clampLikelihood } from "./clamp.js";
2
2
  import { weightedSample } from "./weighted-sample.js";
3
- import { convertClampedRange, convertRange } from "./linear-scale";
3
+ import { convertClampedRange, convertRange } from "./linear-scale.js";
4
4
  export function randomInteger(min, max) {
5
5
  return Math.floor(Math.random() * (max - min + 1)) + min;
6
6
  }
7
- export function randomFloat(min, max) {
7
+ export function randomFloat(min, max, precision = 2) {
8
8
  const randomNum = Math.random() * (max - min) + min;
9
- return Math.round(randomNum * 100) / 100; // Round to two decimal places
9
+ const factor = Math.pow(10, precision);
10
+ return Math.round(randomNum * factor) / factor;
10
11
  }
11
12
  export function chance(likelihood = 50, max = 0) {
12
13
  return randomInteger(1, 100) <= clampLikelihood(Math.max(likelihood, max));
@@ -1 +1 @@
1
- {"version":3,"file":"chance.js","sourceRoot":"","sources":["../src/chance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAC,mBAAmB,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAEjE,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAW;IACpD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,GAAW;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACpD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,8BAA8B;AAC1E,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,aAAqB,EAAE,EAAE,MAAc,CAAC;IAC7D,OAAO,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,cAAsB,EACtB,eAAuB;IAEvB,OAAO,cAAc,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC,CAAE,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,MAAM,CAAI,KAAU;IAClC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAE1B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,kEAAkE;QAClE,OAAO,KAAK,CAAC,CAAC,CAAE,CAAC;IACnB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAG,IAAqC;IAChE,OAAO,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,cAAc,CAC1B,GAAG,IAA4C;IAEjD,OAAO,MAAM,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"chance.js","sourceRoot":"","sources":["../src/chance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAC,mBAAmB,EAAE,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAEpE,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,GAAW;IACpD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,GAAW,EAAE,YAAoB,CAAC;IACzE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,aAAqB,EAAE,EAAE,MAAc,CAAC;IAC7D,OAAO,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,cAAsB,EACtB,eAAuB;IAEvB,OAAO,cAAc,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC,CAAE,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,MAAM,CAAI,KAAU;IAClC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IAE1B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,kEAAkE;QAClE,OAAO,KAAK,CAAC,CAAC,CAAE,CAAC;IACnB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAG,IAAqC;IAChE,OAAO,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,cAAc,CAC1B,GAAG,IAA4C;IAEjD,OAAO,MAAM,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AAC9C,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export * from './weighted-sample';
2
- export * from './chance';
3
- export * from "./clamp";
4
- export * from "./linear-scale";
1
+ export * from './weighted-sample.js';
2
+ export * from './chance.js';
3
+ export * from './clamp.js';
4
+ export * from './linear-scale.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export * from './weighted-sample';
2
- export * from './chance';
3
- export * from "./clamp";
4
- export * from "./linear-scale";
1
+ export * from './weighted-sample.js';
2
+ export * from './chance.js';
3
+ export * from './clamp.js';
4
+ export * from './linear-scale.js';
5
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simcups/chance-utils",
3
- "version": "1.0.51",
3
+ "version": "1.0.53",
4
4
  "description": "Slim utility for weighted sampling, chance logic, and math clamping.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",