pdetail-diff
v0.1.1
Published
Concise way to express which card combos found in a set are also set in another
Readme
pdetail-diff 
Concise way to express which card combos found in a set are also set in another
const { createDiff, applyDiff } = require('pdetail-diff')
const diff = createDiff(availableSet, includedSet, blockers)
const res = applyDiff(availableSet, diff, blockers)
// => res now has exact same combos as the original includedSetInstallation
npm install pdetail-diffAPI
createDiff
Creates a diff between the detailed combo sets that were available and the ones of those that were included.
It assumes that we can only include available combos and omits any checks to verify in order to not hurt performance.
If all details of a combo that were available were also included it adds
the combo specifier, i.e. 'AA' or 'AKs' to the complete set.
If some details were missing it instead adds the included combos to the
incomplete set, i.e. AsKs, AhKh, AcKc.
Note round tripping createDiff and applyDiff, results in the original included set.
Parameters
availableSet<string> detail set of combos that were available to be includedincludedSet<string> detail set of the available combos that were includedblockersSet<string> cards that may be part ofavailablecombos but are blocked for theincludedset i.e.'Ah', 'Ks'
Returns Object result { complete, incomplete } complete being a set of combo notations for detail sets that
were fully included and incomplete a set of detail notations of combos that were partially included
applyDiff
Applies a diff derived via createDiff to the available set.
Parameters
availableSet<string> detail set of combos that were available to be includedblockersSet<string> cards that weren't available to be included when diff was created, i.e.'Ah', 'Ks'should be the same as the ones passed tocreateDiffto arrive at the sameincludedset
Returns Set included combos for which the diff from the available ones was created
License
MIT
