From 37c7c03cdc84ee505c3f5027dbb656e847596ebc Mon Sep 17 00:00:00 2001 From: kames Date: Mon, 24 Jan 2022 09:19:16 -0700 Subject: [PATCH 1/3] update(winningPicks): jsdocs --- src/winningPicks.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/winningPicks.ts b/src/winningPicks.ts index 890c0da..16961b6 100644 --- a/src/winningPicks.ts +++ b/src/winningPicks.ts @@ -2,6 +2,13 @@ import computeWinningPicks from './compute/computeWinningPicks'; import encodeWinningPicks from './encodeWinningPicks'; import { Claim, Draw, PrizeDistribution, User } from './types'; +/** + * @description Computes a User's winning picks for multiple Draws and returns an encoded transaction. + * @param user + * @param draws + * @param prizeDistributions + * @returns Claim + */ function winningPicks( user: User, draws: Draw[], From e8b45cfbc9d7a5ee6e54d6b3c35ae47c4132983a Mon Sep 17 00:00:00 2001 From: kames Date: Mon, 24 Jan 2022 09:31:13 -0700 Subject: [PATCH 2/3] update(winningPicks): better descriptions --- docs/md/index.md | 26 ++-- docs/md/modules.md | 192 +++++++++++++++++++++++++++++ docs/md/{ => modules}/calculate.md | 42 +++---- docs/md/{ => modules}/compute.md | 18 +-- docs/md/{ => modules}/utils.md | 28 ++--- src/winningPicks.ts | 9 +- 6 files changed, 256 insertions(+), 59 deletions(-) create mode 100644 docs/md/modules.md rename docs/md/{ => modules}/calculate.md (74%) rename docs/md/{ => modules}/compute.md (90%) rename docs/md/{ => modules}/utils.md (86%) diff --git a/docs/md/index.md b/docs/md/index.md index a0bc412..52a80c8 100644 --- a/docs/md/index.md +++ b/docs/md/index.md @@ -15,7 +15,7 @@ Helping with both **low-level calculations** and **higher-order computations**, [![Discord](https://badgen.net/badge/icon/discord?icon=discord&label)](https://discord.gg/JFBPMxv5tr) -Calculate +**Calculate** - [calculateCardinality](calculate#calculatecardinality) - [calculateFractionOfPrize](calculate#calculatefractionofprize) - [calculateNormalizedBalancePicksFromTotalPicks](calculate#calculatenormalizedbalancepicksfromtotalpicks) @@ -27,7 +27,7 @@ Calculate - [calculatePrizeForTierPercentage](calculate#calculateprizefortierpercentage) - [calculateTierIndexFromMatches](calculate#calculatetierindexfrommatches) -### Compute +**Compute** - [computeDrawResults](compute#computedrawresults) - [computePickPrize](compute#computepickprize) - [computePicksPrizes](compute#computepicksprizes) @@ -37,7 +37,7 @@ Calculate - [computeUserWinningPicksForRandomNumber](compute#computeuserwinningpicksforrandomnumber) - [computeWinningPicks](compute#computewinningpicks) -### Utilities +**Utilities** - [createDrawResultsObject](utils#createdrawresultsobject) - [filterResultsByValue](utils#filterresultsbyvalue) - [findBitMatchesAtIndex](utils#findbitmatchesatindex) @@ -52,7 +52,7 @@ Calculate - [sumTwoBigNumbers](utils#sumtwobignumbers) - [updateDrawResultsWithWinningPicks](utils#updatedrawresultswithwinningpicks) -## Installation +## 💾  Installation This project is available as an NPM package: @@ -70,9 +70,9 @@ The repo can be cloned from Github for contributions. git clone https://github.com/pooltogether/v4-utils-js ``` -## Quickstart 🏎️ +## 🏎️  Quickstart -Draw and PrizeDistrubtion structs should be fetched using the [v4-js-client](https://github.com/pooltogether/v4-js-client) node module. +Draw and PrizeDistribution structs should be fetched using the [@pooltogether/v4-js-client](/protocol/libraries/v4-js-client/) node module. ### Winnings Picks ```ts @@ -89,7 +89,7 @@ const transaction = encodeWinningPicks(wallet.address, computedWinningPicks); wallet.send(transaction.encodedWinningPickIndices) ``` -## Low-Level Calculations & Computations +## 🧮  Examples The utility library simulates smart contract rules/operations and also encapsulates higher-level abstractions common to PoolTogether V4 required transactions. @@ -97,21 +97,25 @@ For example, in the `DrawCalculator` smart contract an account `address` is used In other words, the library exposes low-level functions like `hashUserAddress` and `calculateNumberOfMatches` so it's easier to build the high-level abstractions, like `winningPicks` which simply takes a user address, plus historical Draw/PrizeDistribution structs and generates/encode all potential winning picks for a user into a single transaction. -### Compute User Picks ([calculateNumberOfMatches](protocol/libraries/v4-utils-js/calculate#calculatenumberofmatches)) +### Compute User Picks ([computeUserPicks](/protocol/libraries/v4-utils-js/compute#computeuserpicks)) Calculates a depositor potential picks using the totalNumberOfPicks relative to the normalizedBalance. ```ts import { parseEther } from '@ethersproject/units'; import { computeUserPicks } from '@pooltogether/v4-utils-js'; +const totalPicks = parseUnits('1000', 18); +const address = '0x000.000'; +const normalizedBalance = parseUnits('0.1', 18) + const userPicksByIndexAndHash = computeUserPicks( + totalPicks, address, - parseUnits('1000', 18) - parseUnits('0.1', 18) + normalizedBalance ); ``` -### Calculate Number of Matches +### Calculate Number of Matches ([calculateNumberOfMatches](/protocol/libraries/v4-utils-js/calculate#calculatenumberofmatches)) A user's pick number and the Draw random generated number are compared to compute winning picks. diff --git a/docs/md/modules.md b/docs/md/modules.md new file mode 100644 index 0000000..23a20d1 --- /dev/null +++ b/docs/md/modules.md @@ -0,0 +1,192 @@ +# @pooltogether/v4-utils-js + +## Table of contents + +### References + +- [calculateCardinality](modules.md#calculatecardinality) +- [calculateFractionOfPrize](modules.md#calculatefractionofprize) +- [calculateNormalizedBalancePicksFromTotalPicks](modules.md#calculatenormalizedbalancepicksfromtotalpicks) +- [calculateNumberOfMatches](modules.md#calculatenumberofmatches) +- [calculateNumberOfPrizesForTierIndex](modules.md#calculatenumberofprizesfortierindex) +- [calculatePick](modules.md#calculatepick) +- [calculatePicks](modules.md#calculatepicks) +- [calculatePicksFromAverageTotalSuppliesBetween](modules.md#calculatepicksfromaveragetotalsuppliesbetween) +- [calculatePrizeForTierPercentage](modules.md#calculateprizefortierpercentage) +- [calculateTierIndexFromMatches](modules.md#calculatetierindexfrommatches) +- [computeDrawResults](modules.md#computedrawresults) +- [computePickPrize](modules.md#computepickprize) +- [computePicksPrizes](modules.md#computepicksprizes) +- [computePrizeAmount](modules.md#computeprizeamount) +- [computePrizeDistributionFromTicketAverageTotalSupplies](modules.md#computeprizedistributionfromticketaveragetotalsupplies) +- [computeUserPicks](modules.md#computeuserpicks) +- [computeUserWinningPicksForRandomNumber](modules.md#computeuserwinningpicksforrandomnumber) +- [computeWinningPicks](modules.md#computewinningpicks) + +### Namespaces + +- [calculate](modules/calculate.md) +- [compute](modules/compute.md) +- [utils](modules/utils.md) + +### Functions + +- [encodeWinningPicks](modules.md#encodewinningpicks) +- [winningPicks](modules.md#winningpicks) + +## References + +### calculateCardinality + +Re-exports [calculateCardinality](modules/calculate.md#calculatecardinality) + +___ + +### calculateFractionOfPrize + +Re-exports [calculateFractionOfPrize](modules/calculate.md#calculatefractionofprize) + +___ + +### calculateNormalizedBalancePicksFromTotalPicks + +Re-exports [calculateNormalizedBalancePicksFromTotalPicks](modules/calculate.md#calculatenormalizedbalancepicksfromtotalpicks) + +___ + +### calculateNumberOfMatches + +Re-exports [calculateNumberOfMatches](modules/calculate.md#calculatenumberofmatches) + +___ + +### calculateNumberOfPrizesForTierIndex + +Re-exports [calculateNumberOfPrizesForTierIndex](modules/calculate.md#calculatenumberofprizesfortierindex) + +___ + +### calculatePick + +Re-exports [calculatePick](modules/calculate.md#calculatepick) + +___ + +### calculatePicks + +Re-exports [calculatePicks](modules/calculate.md#calculatepicks) + +___ + +### calculatePicksFromAverageTotalSuppliesBetween + +Re-exports [calculatePicksFromAverageTotalSuppliesBetween](modules/calculate.md#calculatepicksfromaveragetotalsuppliesbetween) + +___ + +### calculatePrizeForTierPercentage + +Re-exports [calculatePrizeForTierPercentage](modules/calculate.md#calculateprizefortierpercentage) + +___ + +### calculateTierIndexFromMatches + +Re-exports [calculateTierIndexFromMatches](modules/calculate.md#calculatetierindexfrommatches) + +___ + +### computeDrawResults + +Re-exports [computeDrawResults](modules/compute.md#computedrawresults) + +___ + +### computePickPrize + +Re-exports [computePickPrize](modules/compute.md#computepickprize) + +___ + +### computePicksPrizes + +Re-exports [computePicksPrizes](modules/compute.md#computepicksprizes) + +___ + +### computePrizeAmount + +Re-exports [computePrizeAmount](modules/compute.md#computeprizeamount) + +___ + +### computePrizeDistributionFromTicketAverageTotalSupplies + +Re-exports [computePrizeDistributionFromTicketAverageTotalSupplies](modules/compute.md#computeprizedistributionfromticketaveragetotalsupplies) + +___ + +### computeUserPicks + +Re-exports [computeUserPicks](modules/compute.md#computeuserpicks) + +___ + +### computeUserWinningPicksForRandomNumber + +Re-exports [computeUserWinningPicksForRandomNumber](modules/compute.md#computeuserwinningpicksforrandomnumber) + +___ + +### computeWinningPicks + +Re-exports [computeWinningPicks](modules/compute.md#computewinningpicks) + +## Functions + +### encodeWinningPicks + +▸ **encodeWinningPicks**(`user`, `drawResults`): `Claim` + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `user` | `User` | +| `drawResults` | `DrawResults`[] | + +#### Returns + +`Claim` + +#### Defined in + +[encodeWinningPicks.ts:7](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/encodeWinningPicks.ts#L7) + +___ + +### winningPicks + +▸ **winningPicks**(`user`, `draws`, `prizeDistributions`): `Claim` + +**`description`** Computes a User's winning picks for multiple Draws and returns an encoded transaction. + +**`dev`** Before computation/encoding of winning picks the historical blockchain state must be first fetched. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `user` | `User` | Includes an account address and a list of normalized balances. | +| `draws` | `Draw`[] | Draw(s) should be fetched from DrawHistory contract | +| `prizeDistributions` | `PrizeDistribution`[] | PrizeDistribution(s) should be fetched from PrizeTierHistory contract | + +#### Returns + +`Claim` + +Computed winning picks and encoded transaction ready for broadcast to an EVM blockchain. + +#### Defined in + +[winningPicks.ts:13](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/winningPicks.ts#L13) diff --git a/docs/md/calculate.md b/docs/md/modules/calculate.md similarity index 74% rename from docs/md/calculate.md rename to docs/md/modules/calculate.md index 43996e9..8dffe2a 100644 --- a/docs/md/calculate.md +++ b/docs/md/modules/calculate.md @@ -1,19 +1,19 @@ -# calculate +# Namespace: calculate ## Table of contents ### Functions -- [calculateCardinality](#calculatecardinality) -- [calculateFractionOfPrize](#calculatefractionofprize) -- [calculateNormalizedBalancePicksFromTotalPicks](#calculatenormalizedbalancepicksfromtotalpicks) -- [calculateNumberOfMatches](#calculatenumberofmatches) -- [calculateNumberOfPrizesForTierIndex](#calculatenumberofprizesfortierindex) -- [calculatePick](#calculatepick) -- [calculatePicks](#calculatepicks) -- [calculatePicksFromAverageTotalSuppliesBetween](#calculatepicksfromaveragetotalsuppliesbetween) -- [calculatePrizeForTierPercentage](#calculateprizefortierpercentage) -- [calculateTierIndexFromMatches](#calculatetierindexfrommatches) +- [calculateCardinality](calculate.md#calculatecardinality) +- [calculateFractionOfPrize](calculate.md#calculatefractionofprize) +- [calculateNormalizedBalancePicksFromTotalPicks](calculate.md#calculatenormalizedbalancepicksfromtotalpicks) +- [calculateNumberOfMatches](calculate.md#calculatenumberofmatches) +- [calculateNumberOfPrizesForTierIndex](calculate.md#calculatenumberofprizesfortierindex) +- [calculatePick](calculate.md#calculatepick) +- [calculatePicks](calculate.md#calculatepicks) +- [calculatePicksFromAverageTotalSuppliesBetween](calculate.md#calculatepicksfromaveragetotalsuppliesbetween) +- [calculatePrizeForTierPercentage](calculate.md#calculateprizefortierpercentage) +- [calculateTierIndexFromMatches](calculate.md#calculatetierindexfrommatches) ## Functions @@ -35,7 +35,7 @@ #### Defined in -[calculate/calculateCardinality.ts:6](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculateCardinality.ts#L6) +[calculate/calculateCardinality.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateCardinality.ts#L6) ___ @@ -56,7 +56,7 @@ ___ #### Defined in -[calculate/calculateFractionOfPrize.ts:4](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculateFractionOfPrize.ts#L4) +[calculate/calculateFractionOfPrize.ts:4](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateFractionOfPrize.ts#L4) ___ @@ -77,7 +77,7 @@ ___ #### Defined in -[calculate/calculateNormalizedBalancePicksFromTotalPicks.ts:3](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculateNormalizedBalancePicksFromTotalPicks.ts#L3) +[calculate/calculateNormalizedBalancePicksFromTotalPicks.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateNormalizedBalancePicksFromTotalPicks.ts#L3) ___ @@ -100,7 +100,7 @@ ___ #### Defined in -[calculate/calculateNumberOfMatches.ts:5](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculateNumberOfMatches.ts#L5) +[calculate/calculateNumberOfMatches.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateNumberOfMatches.ts#L5) ___ @@ -121,7 +121,7 @@ ___ #### Defined in -[calculate/calculateNumberOfPrizesForTierIndex.ts:1](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculateNumberOfPrizesForTierIndex.ts#L1) +[calculate/calculateNumberOfPrizesForTierIndex.ts:1](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateNumberOfPrizesForTierIndex.ts#L1) ___ @@ -142,7 +142,7 @@ ___ #### Defined in -[calculate/calculatePick.ts:6](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculatePick.ts#L6) +[calculate/calculatePick.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePick.ts#L6) ___ @@ -163,7 +163,7 @@ ___ #### Defined in -[calculate/calculatePicks.ts:6](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculatePicks.ts#L6) +[calculate/calculatePicks.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePicks.ts#L6) ___ @@ -185,7 +185,7 @@ ___ #### Defined in -[calculate/calculatePicksFromAverageTotalSuppliesBetween.ts:7](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculatePicksFromAverageTotalSuppliesBetween.ts#L7) +[calculate/calculatePicksFromAverageTotalSuppliesBetween.ts:7](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePicksFromAverageTotalSuppliesBetween.ts#L7) ___ @@ -208,7 +208,7 @@ ___ #### Defined in -[calculate/calculatePrizeForTierPercentage.ts:6](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculatePrizeForTierPercentage.ts#L6) +[calculate/calculatePrizeForTierPercentage.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePrizeForTierPercentage.ts#L6) ___ @@ -229,4 +229,4 @@ ___ #### Defined in -[calculate/calculateTierIndexFromMatches.ts:1](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/calculate/calculateTierIndexFromMatches.ts#L1) +[calculate/calculateTierIndexFromMatches.ts:1](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateTierIndexFromMatches.ts#L1) diff --git a/docs/md/compute.md b/docs/md/modules/compute.md similarity index 90% rename from docs/md/compute.md rename to docs/md/modules/compute.md index c0f270a..5259e91 100644 --- a/docs/md/compute.md +++ b/docs/md/modules/compute.md @@ -1,4 +1,4 @@ -# compute +# Namespace: compute ## Table of contents @@ -36,7 +36,7 @@ #### Defined in -[compute/computeDrawResults.ts:10](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computeDrawResults.ts#L10) +[compute/computeDrawResults.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeDrawResults.ts#L10) ___ @@ -61,7 +61,7 @@ ___ #### Defined in -[compute/computePickPrize.ts:8](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computePickPrize.ts#L8) +[compute/computePickPrize.ts:8](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePickPrize.ts#L8) ___ @@ -86,7 +86,7 @@ ___ #### Defined in -[compute/computePicksPrizes.ts:6](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computePicksPrizes.ts#L6) +[compute/computePicksPrizes.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePicksPrizes.ts#L6) ___ @@ -109,7 +109,7 @@ ___ #### Defined in -[compute/computePrizeAmount.ts:8](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computePrizeAmount.ts#L8) +[compute/computePrizeAmount.ts:8](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePrizeAmount.ts#L8) ___ @@ -133,7 +133,7 @@ ___ #### Defined in -[compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts:12](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts#L12) +[compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts:12](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts#L12) ___ @@ -155,7 +155,7 @@ ___ #### Defined in -[compute/computeUserPicks.ts:10](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computeUserPicks.ts#L10) +[compute/computeUserPicks.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeUserPicks.ts#L10) ___ @@ -182,7 +182,7 @@ ___ #### Defined in -[compute/computeUserWinningPicksForRandomNumber.ts:11](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computeUserWinningPicksForRandomNumber.ts#L11) +[compute/computeUserWinningPicksForRandomNumber.ts:11](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeUserWinningPicksForRandomNumber.ts#L11) ___ @@ -204,4 +204,4 @@ ___ #### Defined in -[compute/computeWinningPicks.ts:4](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/compute/computeWinningPicks.ts#L4) +[compute/computeWinningPicks.ts:4](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeWinningPicks.ts#L4) diff --git a/docs/md/utils.md b/docs/md/modules/utils.md similarity index 86% rename from docs/md/utils.md rename to docs/md/modules/utils.md index fd74ddf..655339c 100644 --- a/docs/md/utils.md +++ b/docs/md/modules/utils.md @@ -1,4 +1,4 @@ -# utils +# Namespace: utils ## Table of contents @@ -36,7 +36,7 @@ #### Defined in -[utils/createDrawResultsObject.ts:5](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/createDrawResultsObject.ts#L5) +[utils/createDrawResultsObject.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/createDrawResultsObject.ts#L5) ___ @@ -57,7 +57,7 @@ ___ #### Defined in -[utils/filterResultsByValue.ts:7](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/filterResultsByValue.ts#L7) +[utils/filterResultsByValue.ts:7](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/filterResultsByValue.ts#L7) ___ @@ -80,7 +80,7 @@ ___ #### Defined in -[utils/findBitMatchesAtIndex.ts:6](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/findBitMatchesAtIndex.ts#L6) +[utils/findBitMatchesAtIndex.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/findBitMatchesAtIndex.ts#L6) ___ @@ -100,7 +100,7 @@ ___ #### Defined in -[utils/formatTierPercentage.ts:4](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/formatTierPercentage.ts#L4) +[utils/formatTierPercentage.ts:4](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/formatTierPercentage.ts#L4) ___ @@ -120,7 +120,7 @@ ___ #### Defined in -[utils/hashUserAddress.ts:3](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/hashUserAddress.ts#L3) +[utils/hashUserAddress.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/hashUserAddress.ts#L3) ___ @@ -141,7 +141,7 @@ ___ #### Defined in -[utils/isBitRangeSizeValid.ts:1](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/isBitRangeSizeValid.ts#L1) +[utils/isBitRangeSizeValid.ts:1](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/isBitRangeSizeValid.ts#L1) ___ @@ -161,7 +161,7 @@ ___ #### Defined in -[utils/isTiersValid.ts:5](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/isTiersValid.ts#L5) +[utils/isTiersValid.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/isTiersValid.ts#L5) ___ @@ -181,7 +181,7 @@ ___ #### Defined in -[utils/sanityCheckPrizeDistribution.ts:5](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/sanityCheckPrizeDistribution.ts#L5) +[utils/sanityCheckPrizeDistribution.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sanityCheckPrizeDistribution.ts#L5) ___ @@ -202,7 +202,7 @@ ___ #### Defined in -[utils/sortByBigNumber.ts:3](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/sortByBigNumber.ts#L3) +[utils/sortByBigNumber.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sortByBigNumber.ts#L3) ___ @@ -223,7 +223,7 @@ ___ #### Defined in -[utils/sortByBigNumber.ts:10](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/sortByBigNumber.ts#L10) +[utils/sortByBigNumber.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sortByBigNumber.ts#L10) ___ @@ -243,7 +243,7 @@ ___ #### Defined in -[utils/sumBigNumbers.ts:10](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/sumBigNumbers.ts#L10) +[utils/sumBigNumbers.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sumBigNumbers.ts#L10) ___ @@ -264,7 +264,7 @@ ___ #### Defined in -[utils/sumBigNumbers.ts:3](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/sumBigNumbers.ts#L3) +[utils/sumBigNumbers.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sumBigNumbers.ts#L3) ___ @@ -286,4 +286,4 @@ ___ #### Defined in -[utils/updateDrawResultsWithWinningPicks.ts:5](https://github.com/pooltogether/v4-utils-js/blob/4a945a2/src/utils/updateDrawResultsWithWinningPicks.ts#L5) +[utils/updateDrawResultsWithWinningPicks.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/updateDrawResultsWithWinningPicks.ts#L5) diff --git a/src/winningPicks.ts b/src/winningPicks.ts index 16961b6..cd2b28d 100644 --- a/src/winningPicks.ts +++ b/src/winningPicks.ts @@ -4,10 +4,11 @@ import { Claim, Draw, PrizeDistribution, User } from './types'; /** * @description Computes a User's winning picks for multiple Draws and returns an encoded transaction. - * @param user - * @param draws - * @param prizeDistributions - * @returns Claim + * @dev Historical blockchain state must be first fetched to run computations. + * @param user Includes an account address and a list of normalized balances. + * @param draws Draw(s) should be fetched from DrawHistory contract + * @param prizeDistributions PrizeDistribution(s) should be fetched from PrizeTierHistory contract + * @returns Computed winning picks and encoded transaction ready for broadcast to an EVM blockchain. */ function winningPicks( user: User, From 7bb5d79a6c96eb821b6bae4e4f16a5c4cc0706b6 Mon Sep 17 00:00:00 2001 From: kames Date: Mon, 24 Jan 2022 09:57:31 -0700 Subject: [PATCH 3/3] update(docs): update formatting to match namespace --- DOCUMENTATION.md | 11 ++ docs/md/{modules => }/calculate.md | 23 ++-- docs/md/{modules => }/compute.md | 36 ++--- docs/md/core.md | 60 +++++++++ docs/md/index.md | 11 ++ docs/md/modules.md | 192 --------------------------- docs/md/{modules => }/utils.md | 55 ++++---- package.json | 3 +- scripts/docsCleanup.js | 1 + scripts/docsFindAndReplace.js | 37 +++--- src/{ => core}/encodeWinningPicks.ts | 4 +- src/core/index.ts | 2 + src/{ => core}/winningPicks.ts | 4 +- src/index.ts | 6 +- yarn.lock | 5 + 15 files changed, 178 insertions(+), 272 deletions(-) rename docs/md/{modules => }/calculate.md (88%) rename docs/md/{modules => }/compute.md (81%) create mode 100644 docs/md/core.md delete mode 100644 docs/md/modules.md rename docs/md/{modules => }/utils.md (73%) rename src/{ => core}/encodeWinningPicks.ts (92%) create mode 100644 src/core/index.ts rename src/{ => core}/winningPicks.ts (86%) diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 52a80c8..53fdcef 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -15,6 +15,17 @@ Helping with both **low-level calculations** and **higher-order computations**, [![Discord](https://badgen.net/badge/icon/discord?icon=discord&label)](https://discord.gg/JFBPMxv5tr) +### Namespaces + +- [calculate](calculate) +- [compute](compute) +- [core](core) +- [utils](utils) + +**Core** +- [encodeWinningPicks](core#encodeWinningPicks) +- [winningPicks](core#winningPicks) + **Calculate** - [calculateCardinality](calculate#calculatecardinality) - [calculateFractionOfPrize](calculate#calculatefractionofprize) diff --git a/docs/md/modules/calculate.md b/docs/md/calculate.md similarity index 88% rename from docs/md/modules/calculate.md rename to docs/md/calculate.md index 8dffe2a..a5599ac 100644 --- a/docs/md/modules/calculate.md +++ b/docs/md/calculate.md @@ -1,4 +1,4 @@ -# Namespace: calculate +# calculate ## Table of contents @@ -35,7 +35,7 @@ #### Defined in -[calculate/calculateCardinality.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateCardinality.ts#L6) +[calculate/calculateCardinality.ts:6](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculateCardinality.ts#L6) ___ @@ -56,7 +56,7 @@ ___ #### Defined in -[calculate/calculateFractionOfPrize.ts:4](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateFractionOfPrize.ts#L4) +[calculate/calculateFractionOfPrize.ts:4](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculateFractionOfPrize.ts#L4) ___ @@ -77,7 +77,7 @@ ___ #### Defined in -[calculate/calculateNormalizedBalancePicksFromTotalPicks.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateNormalizedBalancePicksFromTotalPicks.ts#L3) +[calculate/calculateNormalizedBalancePicksFromTotalPicks.ts:3](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculateNormalizedBalancePicksFromTotalPicks.ts#L3) ___ @@ -100,7 +100,7 @@ ___ #### Defined in -[calculate/calculateNumberOfMatches.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateNumberOfMatches.ts#L5) +[calculate/calculateNumberOfMatches.ts:5](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculateNumberOfMatches.ts#L5) ___ @@ -121,7 +121,7 @@ ___ #### Defined in -[calculate/calculateNumberOfPrizesForTierIndex.ts:1](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateNumberOfPrizesForTierIndex.ts#L1) +[calculate/calculateNumberOfPrizesForTierIndex.ts:1](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculateNumberOfPrizesForTierIndex.ts#L1) ___ @@ -142,7 +142,7 @@ ___ #### Defined in -[calculate/calculatePick.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePick.ts#L6) +[calculate/calculatePick.ts:6](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculatePick.ts#L6) ___ @@ -163,7 +163,7 @@ ___ #### Defined in -[calculate/calculatePicks.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePicks.ts#L6) +[calculate/calculatePicks.ts:6](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculatePicks.ts#L6) ___ @@ -185,7 +185,7 @@ ___ #### Defined in -[calculate/calculatePicksFromAverageTotalSuppliesBetween.ts:7](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePicksFromAverageTotalSuppliesBetween.ts#L7) +[calculate/calculatePicksFromAverageTotalSuppliesBetween.ts:7](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculatePicksFromAverageTotalSuppliesBetween.ts#L7) ___ @@ -208,7 +208,7 @@ ___ #### Defined in -[calculate/calculatePrizeForTierPercentage.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculatePrizeForTierPercentage.ts#L6) +[calculate/calculatePrizeForTierPercentage.ts:6](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculatePrizeForTierPercentage.ts#L6) ___ @@ -229,4 +229,5 @@ ___ #### Defined in -[calculate/calculateTierIndexFromMatches.ts:1](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/calculate/calculateTierIndexFromMatches.ts#L1) +[calculate/calculateTierIndexFromMatches.ts:1](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/calculate/calculateTierIndexFromMatches.ts#L1) +es.ts#L1) diff --git a/docs/md/modules/compute.md b/docs/md/compute.md similarity index 81% rename from docs/md/modules/compute.md rename to docs/md/compute.md index 5259e91..0b13fa2 100644 --- a/docs/md/modules/compute.md +++ b/docs/md/compute.md @@ -1,17 +1,17 @@ -# Namespace: compute +# compute ## Table of contents ### Functions -- [computeDrawResults](compute.md#computedrawresults) -- [computePickPrize](compute.md#computepickprize) -- [computePicksPrizes](compute.md#computepicksprizes) -- [computePrizeAmount](compute.md#computeprizeamount) -- [computePrizeDistributionFromTicketAverageTotalSupplies](compute.md#computeprizedistributionfromticketaveragetotalsupplies) -- [computeUserPicks](compute.md#computeuserpicks) -- [computeUserWinningPicksForRandomNumber](compute.md#computeuserwinningpicksforrandomnumber) -- [computeWinningPicks](compute.md#computewinningpicks) +- [computeDrawResults](compute#computedrawresults) +- [computePickPrize](compute#computepickprize) +- [computePicksPrizes](compute#computepicksprizes) +- [computePrizeAmount](compute#computeprizeamount) +- [computePrizeDistributionFromTicketAverageTotalSupplies](compute#computeprizedistributionfromticketaveragetotalsupplies) +- [computeUserPicks](compute#computeuserpicks) +- [computeUserWinningPicksForRandomNumber](compute#computeuserwinningpicksforrandomnumber) +- [computeWinningPicks](compute#computewinningpicks) ## Functions @@ -36,7 +36,7 @@ #### Defined in -[compute/computeDrawResults.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeDrawResults.ts#L10) +[compute/computeDrawResults.ts:10](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computeDrawResults.ts#L10) ___ @@ -61,7 +61,7 @@ ___ #### Defined in -[compute/computePickPrize.ts:8](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePickPrize.ts#L8) +[compute/computePickPrize.ts:8](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computePickPrize.ts#L8) ___ @@ -86,7 +86,7 @@ ___ #### Defined in -[compute/computePicksPrizes.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePicksPrizes.ts#L6) +[compute/computePicksPrizes.ts:6](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computePicksPrizes.ts#L6) ___ @@ -109,7 +109,7 @@ ___ #### Defined in -[compute/computePrizeAmount.ts:8](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePrizeAmount.ts#L8) +[compute/computePrizeAmount.ts:8](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computePrizeAmount.ts#L8) ___ @@ -133,7 +133,7 @@ ___ #### Defined in -[compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts:12](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts#L12) +[compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts:12](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computePrizeDistributionFromTicketAverageTotalSupplies.ts#L12) ___ @@ -155,7 +155,7 @@ ___ #### Defined in -[compute/computeUserPicks.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeUserPicks.ts#L10) +[compute/computeUserPicks.ts:10](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computeUserPicks.ts#L10) ___ @@ -182,7 +182,7 @@ ___ #### Defined in -[compute/computeUserWinningPicksForRandomNumber.ts:11](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeUserWinningPicksForRandomNumber.ts#L11) +[compute/computeUserWinningPicksForRandomNumber.ts:11](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computeUserWinningPicksForRandomNumber.ts#L11) ___ @@ -204,4 +204,6 @@ ___ #### Defined in -[compute/computeWinningPicks.ts:4](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/compute/computeWinningPicks.ts#L4) +[compute/computeWinningPicks.ts:4](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/compute/computeWinningPicks.ts#L4) +puteWinningPicks.ts#L4) +ks.ts#L4) diff --git a/docs/md/core.md b/docs/md/core.md new file mode 100644 index 0000000..4806f52 --- /dev/null +++ b/docs/md/core.md @@ -0,0 +1,60 @@ +# core + +## Table of contents + +### Functions + +- [encodeWinningPicks](core#encodewinningpicks) +- [winningPicks](core#winningpicks) + +## Functions + +### encodeWinningPicks + +▸ **encodeWinningPicks**(`user`, `drawResults`): `Claim` + +#### Parameters + +| Name | Type | +| :------ | :------ | +| `user` | `User` | +| `drawResults` | `DrawResults`[] | + +#### Returns + +`Claim` + +#### Defined in + +core/encodeWinningPicks.ts:7 + +___ + +### winningPicks + +▸ **winningPicks**(`user`, `draws`, `prizeDistributions`): `Claim` + +**`description`** Computes a User's winning picks for multiple Draws and returns an encoded transaction. + +**`dev`** Historical blockchain state must be first fetched to run computations. + +#### Parameters + +| Name | Type | Description | +| :------ | :------ | :------ | +| `user` | `User` | Includes an account address and a list of normalized balances. | +| `draws` | `Draw`[] | Draw(s) should be fetched from DrawHistory contract | +| `prizeDistributions` | `PrizeDistribution`[] | PrizeDistribution(s) should be fetched from PrizeTierHistory contract | + +#### Returns + +`Claim` + +Computed winning picks and encoded transaction ready for broadcast to an EVM blockchain. + +#### Defined in + +core/winningPicks.ts:13 +ts:13 +:13 +ts:13 diff --git a/docs/md/index.md b/docs/md/index.md index 52a80c8..53fdcef 100644 --- a/docs/md/index.md +++ b/docs/md/index.md @@ -15,6 +15,17 @@ Helping with both **low-level calculations** and **higher-order computations**, [![Discord](https://badgen.net/badge/icon/discord?icon=discord&label)](https://discord.gg/JFBPMxv5tr) +### Namespaces + +- [calculate](calculate) +- [compute](compute) +- [core](core) +- [utils](utils) + +**Core** +- [encodeWinningPicks](core#encodeWinningPicks) +- [winningPicks](core#winningPicks) + **Calculate** - [calculateCardinality](calculate#calculatecardinality) - [calculateFractionOfPrize](calculate#calculatefractionofprize) diff --git a/docs/md/modules.md b/docs/md/modules.md deleted file mode 100644 index 23a20d1..0000000 --- a/docs/md/modules.md +++ /dev/null @@ -1,192 +0,0 @@ -# @pooltogether/v4-utils-js - -## Table of contents - -### References - -- [calculateCardinality](modules.md#calculatecardinality) -- [calculateFractionOfPrize](modules.md#calculatefractionofprize) -- [calculateNormalizedBalancePicksFromTotalPicks](modules.md#calculatenormalizedbalancepicksfromtotalpicks) -- [calculateNumberOfMatches](modules.md#calculatenumberofmatches) -- [calculateNumberOfPrizesForTierIndex](modules.md#calculatenumberofprizesfortierindex) -- [calculatePick](modules.md#calculatepick) -- [calculatePicks](modules.md#calculatepicks) -- [calculatePicksFromAverageTotalSuppliesBetween](modules.md#calculatepicksfromaveragetotalsuppliesbetween) -- [calculatePrizeForTierPercentage](modules.md#calculateprizefortierpercentage) -- [calculateTierIndexFromMatches](modules.md#calculatetierindexfrommatches) -- [computeDrawResults](modules.md#computedrawresults) -- [computePickPrize](modules.md#computepickprize) -- [computePicksPrizes](modules.md#computepicksprizes) -- [computePrizeAmount](modules.md#computeprizeamount) -- [computePrizeDistributionFromTicketAverageTotalSupplies](modules.md#computeprizedistributionfromticketaveragetotalsupplies) -- [computeUserPicks](modules.md#computeuserpicks) -- [computeUserWinningPicksForRandomNumber](modules.md#computeuserwinningpicksforrandomnumber) -- [computeWinningPicks](modules.md#computewinningpicks) - -### Namespaces - -- [calculate](modules/calculate.md) -- [compute](modules/compute.md) -- [utils](modules/utils.md) - -### Functions - -- [encodeWinningPicks](modules.md#encodewinningpicks) -- [winningPicks](modules.md#winningpicks) - -## References - -### calculateCardinality - -Re-exports [calculateCardinality](modules/calculate.md#calculatecardinality) - -___ - -### calculateFractionOfPrize - -Re-exports [calculateFractionOfPrize](modules/calculate.md#calculatefractionofprize) - -___ - -### calculateNormalizedBalancePicksFromTotalPicks - -Re-exports [calculateNormalizedBalancePicksFromTotalPicks](modules/calculate.md#calculatenormalizedbalancepicksfromtotalpicks) - -___ - -### calculateNumberOfMatches - -Re-exports [calculateNumberOfMatches](modules/calculate.md#calculatenumberofmatches) - -___ - -### calculateNumberOfPrizesForTierIndex - -Re-exports [calculateNumberOfPrizesForTierIndex](modules/calculate.md#calculatenumberofprizesfortierindex) - -___ - -### calculatePick - -Re-exports [calculatePick](modules/calculate.md#calculatepick) - -___ - -### calculatePicks - -Re-exports [calculatePicks](modules/calculate.md#calculatepicks) - -___ - -### calculatePicksFromAverageTotalSuppliesBetween - -Re-exports [calculatePicksFromAverageTotalSuppliesBetween](modules/calculate.md#calculatepicksfromaveragetotalsuppliesbetween) - -___ - -### calculatePrizeForTierPercentage - -Re-exports [calculatePrizeForTierPercentage](modules/calculate.md#calculateprizefortierpercentage) - -___ - -### calculateTierIndexFromMatches - -Re-exports [calculateTierIndexFromMatches](modules/calculate.md#calculatetierindexfrommatches) - -___ - -### computeDrawResults - -Re-exports [computeDrawResults](modules/compute.md#computedrawresults) - -___ - -### computePickPrize - -Re-exports [computePickPrize](modules/compute.md#computepickprize) - -___ - -### computePicksPrizes - -Re-exports [computePicksPrizes](modules/compute.md#computepicksprizes) - -___ - -### computePrizeAmount - -Re-exports [computePrizeAmount](modules/compute.md#computeprizeamount) - -___ - -### computePrizeDistributionFromTicketAverageTotalSupplies - -Re-exports [computePrizeDistributionFromTicketAverageTotalSupplies](modules/compute.md#computeprizedistributionfromticketaveragetotalsupplies) - -___ - -### computeUserPicks - -Re-exports [computeUserPicks](modules/compute.md#computeuserpicks) - -___ - -### computeUserWinningPicksForRandomNumber - -Re-exports [computeUserWinningPicksForRandomNumber](modules/compute.md#computeuserwinningpicksforrandomnumber) - -___ - -### computeWinningPicks - -Re-exports [computeWinningPicks](modules/compute.md#computewinningpicks) - -## Functions - -### encodeWinningPicks - -▸ **encodeWinningPicks**(`user`, `drawResults`): `Claim` - -#### Parameters - -| Name | Type | -| :------ | :------ | -| `user` | `User` | -| `drawResults` | `DrawResults`[] | - -#### Returns - -`Claim` - -#### Defined in - -[encodeWinningPicks.ts:7](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/encodeWinningPicks.ts#L7) - -___ - -### winningPicks - -▸ **winningPicks**(`user`, `draws`, `prizeDistributions`): `Claim` - -**`description`** Computes a User's winning picks for multiple Draws and returns an encoded transaction. - -**`dev`** Before computation/encoding of winning picks the historical blockchain state must be first fetched. - -#### Parameters - -| Name | Type | Description | -| :------ | :------ | :------ | -| `user` | `User` | Includes an account address and a list of normalized balances. | -| `draws` | `Draw`[] | Draw(s) should be fetched from DrawHistory contract | -| `prizeDistributions` | `PrizeDistribution`[] | PrizeDistribution(s) should be fetched from PrizeTierHistory contract | - -#### Returns - -`Claim` - -Computed winning picks and encoded transaction ready for broadcast to an EVM blockchain. - -#### Defined in - -[winningPicks.ts:13](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/winningPicks.ts#L13) diff --git a/docs/md/modules/utils.md b/docs/md/utils.md similarity index 73% rename from docs/md/modules/utils.md rename to docs/md/utils.md index 655339c..70b6d1d 100644 --- a/docs/md/modules/utils.md +++ b/docs/md/utils.md @@ -1,22 +1,22 @@ -# Namespace: utils +# utils ## Table of contents ### Functions -- [createDrawResultsObject](utils.md#createdrawresultsobject) -- [filterResultsByValue](utils.md#filterresultsbyvalue) -- [findBitMatchesAtIndex](utils.md#findbitmatchesatindex) -- [formatTierPercentage](utils.md#formattierpercentage) -- [hashUserAddress](utils.md#hashuseraddress) -- [isBitRangeSizeValid](utils.md#isbitrangesizevalid) -- [isTiersValid](utils.md#istiersvalid) -- [sanityCheckPrizeDistribution](utils.md#sanitycheckprizedistribution) -- [sortByBigNumberAsc](utils.md#sortbybignumberasc) -- [sortByBigNumberDesc](utils.md#sortbybignumberdesc) -- [sumBigNumbers](utils.md#sumbignumbers) -- [sumTwoBigNumbers](utils.md#sumtwobignumbers) -- [updateDrawResultsWithWinningPicks](utils.md#updatedrawresultswithwinningpicks) +- [createDrawResultsObject](utils#createdrawresultsobject) +- [filterResultsByValue](utils#filterresultsbyvalue) +- [findBitMatchesAtIndex](utils#findbitmatchesatindex) +- [formatTierPercentage](utils#formattierpercentage) +- [hashUserAddress](utils#hashuseraddress) +- [isBitRangeSizeValid](utils#isbitrangesizevalid) +- [isTiersValid](utils#istiersvalid) +- [sanityCheckPrizeDistribution](utils#sanitycheckprizedistribution) +- [sortByBigNumberAsc](utils#sortbybignumberasc) +- [sortByBigNumberDesc](utils#sortbybignumberdesc) +- [sumBigNumbers](utils#sumbignumbers) +- [sumTwoBigNumbers](utils#sumtwobignumbers) +- [updateDrawResultsWithWinningPicks](utils#updatedrawresultswithwinningpicks) ## Functions @@ -36,7 +36,7 @@ #### Defined in -[utils/createDrawResultsObject.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/createDrawResultsObject.ts#L5) +[utils/createDrawResultsObject.ts:5](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/createDrawResultsObject.ts#L5) ___ @@ -57,7 +57,7 @@ ___ #### Defined in -[utils/filterResultsByValue.ts:7](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/filterResultsByValue.ts#L7) +[utils/filterResultsByValue.ts:7](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/filterResultsByValue.ts#L7) ___ @@ -80,7 +80,7 @@ ___ #### Defined in -[utils/findBitMatchesAtIndex.ts:6](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/findBitMatchesAtIndex.ts#L6) +[utils/findBitMatchesAtIndex.ts:6](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/findBitMatchesAtIndex.ts#L6) ___ @@ -100,7 +100,7 @@ ___ #### Defined in -[utils/formatTierPercentage.ts:4](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/formatTierPercentage.ts#L4) +[utils/formatTierPercentage.ts:4](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/formatTierPercentage.ts#L4) ___ @@ -120,7 +120,7 @@ ___ #### Defined in -[utils/hashUserAddress.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/hashUserAddress.ts#L3) +[utils/hashUserAddress.ts:3](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/hashUserAddress.ts#L3) ___ @@ -141,7 +141,7 @@ ___ #### Defined in -[utils/isBitRangeSizeValid.ts:1](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/isBitRangeSizeValid.ts#L1) +[utils/isBitRangeSizeValid.ts:1](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/isBitRangeSizeValid.ts#L1) ___ @@ -161,7 +161,7 @@ ___ #### Defined in -[utils/isTiersValid.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/isTiersValid.ts#L5) +[utils/isTiersValid.ts:5](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/isTiersValid.ts#L5) ___ @@ -181,7 +181,7 @@ ___ #### Defined in -[utils/sanityCheckPrizeDistribution.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sanityCheckPrizeDistribution.ts#L5) +[utils/sanityCheckPrizeDistribution.ts:5](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/sanityCheckPrizeDistribution.ts#L5) ___ @@ -202,7 +202,7 @@ ___ #### Defined in -[utils/sortByBigNumber.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sortByBigNumber.ts#L3) +[utils/sortByBigNumber.ts:3](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/sortByBigNumber.ts#L3) ___ @@ -223,7 +223,7 @@ ___ #### Defined in -[utils/sortByBigNumber.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sortByBigNumber.ts#L10) +[utils/sortByBigNumber.ts:10](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/sortByBigNumber.ts#L10) ___ @@ -243,7 +243,7 @@ ___ #### Defined in -[utils/sumBigNumbers.ts:10](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sumBigNumbers.ts#L10) +[utils/sumBigNumbers.ts:10](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/sumBigNumbers.ts#L10) ___ @@ -264,7 +264,7 @@ ___ #### Defined in -[utils/sumBigNumbers.ts:3](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/sumBigNumbers.ts#L3) +[utils/sumBigNumbers.ts:3](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/sumBigNumbers.ts#L3) ___ @@ -286,4 +286,5 @@ ___ #### Defined in -[utils/updateDrawResultsWithWinningPicks.ts:5](https://github.com/pooltogether/v4-utils-js/blob/37c7c03/src/utils/updateDrawResultsWithWinningPicks.ts#L5) +[utils/updateDrawResultsWithWinningPicks.ts:5](https://github.com/pooltogether/v4-utils-js/blob/e8b45cf/src/utils/updateDrawResultsWithWinningPicks.ts#L5) +dateDrawResultsWithWinningPicks.ts#L5) diff --git a/package.json b/package.json index c4b82e7..b644ae8 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "clean": "jest --clearCache", "watch": "tsdx watch", "docs": "yarn docs:md ; yarn docs:clean", - "docs:md": "yarn typedoc --plugin typedoc-plugin-markdown --entryDocument index.md --hideBreadcrumbs true --namedAnchors false --out docs/md", + "docs:md": "yarn typedoc --plugin typedoc-plugin-markdown --plugin typedoc-plugin-remove-references --entryDocument index.md --hideBreadcrumbs true --namedAnchors false --out docs/md", "docs:html": "yarn typedoc --plugin none --out docs/app src/index.ts ", "docs:clean": "node ./scripts/docsFindAndReplace.js ; node ./scripts/docsCleanup.js", "prepublishOnly": "npm run build" @@ -70,6 +70,7 @@ "tslib": "^2.3.1", "typedoc": "^0.22.10", "typedoc-plugin-markdown": "^3.11.8", + "typedoc-plugin-remove-references": "^0.0.6", "typescript": "^4.4.4" }, "husky": { diff --git a/scripts/docsCleanup.js b/scripts/docsCleanup.js index f101ae7..b21c174 100644 --- a/scripts/docsCleanup.js +++ b/scripts/docsCleanup.js @@ -12,6 +12,7 @@ const paths = [ ['./docs/md/modules/calculate.md', './docs/md/calculate.md'], ['./docs/md/modules/compute.md', './docs/md/compute.md'], ['./docs/md/modules/utils.md', './docs/md/utils.md'], + ['./docs/md/modules/core.md', './docs/md/core.md'], ]; try { for (let index = 0; index < paths.length; index++) { diff --git a/scripts/docsFindAndReplace.js b/scripts/docsFindAndReplace.js index 6e688f9..dffcc7d 100644 --- a/scripts/docsFindAndReplace.js +++ b/scripts/docsFindAndReplace.js @@ -3,26 +3,29 @@ const replaceInFiles = require('replace-in-files'); const replaces = [ [/modules.md/g, 'modules'], - [/calculate.md/g, ''], + [/calculate.md/g, 'calculate'], + [/compute.md/g, 'compute'], + [/core.md/g, 'core'], + [/utils.md/g, 'utils'], [/Namespace:/g, ''], ] const createOptions= (from, to) => { -const options = { - files: 'docs/md/**/*.md', - from: from, // string or regex - to: to, // string or fn (fn: carrying last argument - path to replaced file) - optionsForFiles: { - ignore: ['**/node_modules/**'], - }, - saveOldFile: false, - encoding: 'utf8', - shouldSkipBinaryFiles: true, - onlyFindPathsWithoutReplace: false, - returnPaths: true, - returnCountOfMatchesByPaths: true, -}; -return options + const options = { + files: 'docs/md/**/*.md', + from: from, // string or regex + to: to, // string or fn (fn: carrying last argument - path to replaced file) + optionsForFiles: { + ignore: ['**/node_modules/**'], + }, + saveOldFile: false, + encoding: 'utf8', + shouldSkipBinaryFiles: true, + onlyFindPathsWithoutReplace: false, + returnPaths: true, + returnCountOfMatchesByPaths: true, + }; + return options } for (let index = 0; index < replaces.length; index++) { @@ -31,7 +34,7 @@ for (let index = 0; index < replaces.length; index++) { .then(({ changedFiles, countOfMatchesByPaths }) => { console.log('Modified files:', changedFiles); console.log('Count of matches by paths:', countOfMatchesByPaths); - console.log('was called with:', options); + // console.log('was called with:', options); }) .catch(error => { console.error('Error occurred:', error); diff --git a/src/encodeWinningPicks.ts b/src/core/encodeWinningPicks.ts similarity index 92% rename from src/encodeWinningPicks.ts rename to src/core/encodeWinningPicks.ts index 4200792..5f0bcc1 100644 --- a/src/encodeWinningPicks.ts +++ b/src/core/encodeWinningPicks.ts @@ -1,8 +1,8 @@ import { defaultAbiCoder } from '@ethersproject/abi'; import { BigNumber } from '@ethersproject/bignumber'; -import { User, DrawResults, Claim } from './types'; -import { sortByBigNumberAsc } from './utils'; +import { User, DrawResults, Claim } from '../types'; +import { sortByBigNumberAsc } from '../utils'; function encodeWinningPicks(user: User, drawResults: DrawResults[]): Claim { let claim: Claim = { diff --git a/src/core/index.ts b/src/core/index.ts new file mode 100644 index 0000000..05ff841 --- /dev/null +++ b/src/core/index.ts @@ -0,0 +1,2 @@ +export { default as encodeWinningPicks } from './encodeWinningPicks'; +export { default as winningPicks } from './winningPicks'; \ No newline at end of file diff --git a/src/winningPicks.ts b/src/core/winningPicks.ts similarity index 86% rename from src/winningPicks.ts rename to src/core/winningPicks.ts index cd2b28d..3b3430b 100644 --- a/src/winningPicks.ts +++ b/src/core/winningPicks.ts @@ -1,6 +1,6 @@ -import computeWinningPicks from './compute/computeWinningPicks'; +import computeWinningPicks from '../compute/computeWinningPicks'; import encodeWinningPicks from './encodeWinningPicks'; -import { Claim, Draw, PrizeDistribution, User } from './types'; +import { Claim, Draw, PrizeDistribution, User } from '../types'; /** * @description Computes a User's winning picks for multiple Draws and returns an encoded transaction. diff --git a/src/index.ts b/src/index.ts index afc5e27..e495000 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,8 +1,8 @@ import * as calculate from './calculate'; import * as compute from './compute'; +import * as core from './core'; import * as utils from './utils'; export * from './calculate'; export * from './compute'; -export { default as encodeWinningPicks } from './encodeWinningPicks'; -export { default as winningPicks } from './winningPicks'; -export { calculate, compute, utils }; +export * from './core'; +export { calculate, compute, utils, core }; diff --git a/yarn.lock b/yarn.lock index 112e939..7319e4a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6556,6 +6556,11 @@ typedoc-plugin-markdown@^3.11.8: dependencies: handlebars "^4.7.7" +typedoc-plugin-remove-references@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedoc-plugin-remove-references/-/typedoc-plugin-remove-references-0.0.6.tgz#6568615e5857531a497676b5536bc1ff41117443" + integrity sha512-QoyHpopznnJbWW/9JT2NHSK+eTmyShkPYebwe5ZnO8aohPLc5okk4puWUDXnNh2Tn7cJU8U3t1tEMO6ghbwE8Q== + typedoc@^0.22.10: version "0.22.10" resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.22.10.tgz#221e1a2b17bcb71817ef027dc4c4969d572e7620"