1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938 |
- 'use strict';
- Object.defineProperty(exports, '__esModule', { value: true });
- var I = require('infestines');
- var LENGTH = 'length';
- var addU = function addU(x, y) {
- return x + y;
- };
- var multiplyU = function multiplyU(x, y) {
- return x * y;
- };
- var add = /*#__PURE__*/I.curry(addU);
- var multiply = /*#__PURE__*/I.curry(multiplyU);
- var divideBy = /*#__PURE__*/I.curry(function (d, n) {
- return n / d;
- });
- var negate = function negate(x) {
- return -x;
- };
- var ltU = function ltU(x, y) {
- return x < y;
- };
- var gtU = function gtU(x, y) {
- return x > y;
- };
- var isInstanceOf = /*#__PURE__*/I.curry(I.isInstanceOfU);
- var protoless = function protoless(o) {
- return I.assign(I.create(null), o);
- };
- var protoless0 = /*#__PURE__*/I.freeze( /*#__PURE__*/protoless(I.object0));
- var replace = /*#__PURE__*/I.curry(function (p, r, s) {
- return s.replace(p, r);
- });
- function isPrimitiveData(x) {
- switch (typeof x) {
- case 'boolean':
- case 'number':
- case 'string':
- return true;
- default:
- return false;
- }
- }
- var iterator = Symbol.iterator;
- var dep = function dep(xs2xsyC) {
- return function (xsy) {
- return I.arityN(xsy[LENGTH], I.defineNameU(function () {
- return xs2xsyC.apply(undefined, arguments)(xsy).apply(undefined, arguments);
- }, xsy.name));
- };
- };
- var fn = function fn(xsC, yC) {
- return function (xsy) {
- return I.arityN(xsy[LENGTH], I.defineNameU(function () {
- for (var _len = arguments.length, xs = Array(_len), _key = 0; _key < _len; _key++) {
- xs[_key] = arguments[_key];
- }
- return yC(xsy.apply(null, xsC(xs)));
- }, xsy.name));
- };
- };
- var res = function res(yC) {
- return fn(I.id, yC);
- };
- var args = function args(xsC) {
- return fn(xsC, I.id);
- };
- var nth = function nth(i, xC) {
- return function (xs) {
- var ys = xs.slice(0);
- ys[i] = xC(ys[i]);
- return ys;
- };
- };
- var par = function par(i, xC) {
- return args(nth(i, xC));
- };
- var and = function and() {
- for (var _len2 = arguments.length, xCs = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
- xCs[_key2] = arguments[_key2];
- }
- return function (x) {
- for (var i = 0, n = xCs[LENGTH]; i < n; ++i) {
- x = xCs[i](x);
- }return x;
- };
- };
- var or = function or() {
- for (var _len3 = arguments.length, xCs = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
- xCs[_key3] = arguments[_key3];
- }
- return function (x) {
- var es = null;
- for (var i = 0, n = xCs[LENGTH]; i < n; ++i) {
- try {
- return xCs[i](x);
- } catch (e) {
- es = e;
- }
- }
- throw es;
- };
- };
- var ef = function ef(xE) {
- return I.defineNameU(function (x) {
- xE(x);
- return x;
- }, xE.name);
- };
- var tup = function tup() {
- for (var _len4 = arguments.length, xCs = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
- xCs[_key4] = arguments[_key4];
- }
- return function (xs) {
- if (xs[LENGTH] !== xCs[LENGTH]) throw Error('Expected array of ' + xCs[LENGTH] + ' elements, but got ' + xs[LENGTH]);
- return and.apply(null, xCs.map(function (xC, i) {
- return nth(i, xC);
- }))(xs);
- };
- };
- var arr = function arr(xC) {
- return function (xs) {
- return xs.map(xC);
- };
- };
- //
- var id = function id(x) {
- return x;
- };
- var setName = process.env.NODE_ENV === 'production' ? function (x) {
- return x;
- } : I.defineNameU;
- var copyName = process.env.NODE_ENV === 'production' ? function (x) {
- return x;
- } : function (to, from) {
- return I.defineNameU(to, from.name);
- };
- var toRegExpU = function toRegExpU(str, flags) {
- return I.isString(str) ? new RegExp(replace(/[|\\{}()[\]^$+*?.]/g, '\\$&', str), flags) : str;
- };
- //
- var isPair = function isPair(x) {
- return I.isArray(x) && x[LENGTH] === 2;
- };
- //
- var inserterOp = /*#__PURE__*/I.curry(function (inserter, value) {
- return [inserter, setOp(value)];
- });
- //
- var toGetter = function toGetter(getter) {
- if (typeof getter === 'function' && getter[LENGTH] < 4) return getter;
- getter = toFunction(getter);
- return function (x, i) {
- return getter(x, i, Select, id);
- };
- };
- //
- var tryCatch = function tryCatch(fn$$1) {
- return copyName(function (x) {
- try {
- return fn$$1(x);
- } catch (e) {
- return e;
- }
- }, fn$$1);
- };
- //
- var toStringPartial = function toStringPartial(x) {
- return void 0 !== x ? String(x) : '';
- };
- var sliceIndex = function sliceIndex(m, l, d, i) {
- return void 0 !== i ? Math.min(Math.max(m, i < 0 ? l + i : i), l) : d;
- };
- var cpair = function cpair(xs) {
- return function (x) {
- return [x, xs];
- };
- };
- var pairPartial = function pairPartial(k) {
- return function (v) {
- return void 0 !== k && void 0 !== v ? [k, v] : void 0;
- };
- };
- var unto = function unto(c) {
- return function (x) {
- return void 0 !== x ? x : c;
- };
- };
- var unto0 = /*#__PURE__*/unto(0);
- var toTrue = /*#__PURE__*/I.always(true);
- var notPartial = function complement(x) {
- return void 0 !== x ? !x : x;
- };
- var expect = function expect(p, f) {
- return copyName(function (x) {
- return p(x) ? f(x) : void 0;
- }, f);
- };
- var freezeInDev = process.env.NODE_ENV === 'production' ? id : I.freeze;
- var freezeResultInDev = process.env.NODE_ENV === 'production' ? id : /*#__PURE__*/res(I.freeze);
- var deepFreezeInDev = process.env.NODE_ENV === 'production' ? id : function deepFreezeInDev(x) {
- if (I.isArray(x)) {
- x.forEach(deepFreezeInDev);
- I.freeze(x);
- } else if (I.isObject(x)) {
- for (var k in x) {
- deepFreezeInDev(x[k]);
- }I.freeze(x);
- }
- return x;
- };
- function freezeObjectOfObjects(xs) {
- if (xs) for (var k in xs) {
- I.freeze(xs[k]);
- }return I.freeze(xs);
- }
- var isArrayOrPrimitive = function isArrayOrPrimitive(x) {
- return !(x instanceof Object) || I.isArray(x);
- };
- var rev = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(I.freeze))(function reverse(xs) {
- if (seemsArrayLike(xs)) {
- var n = xs[LENGTH];
- var ys = Array(n);
- var i = 0;
- while (n) {
- ys[i++] = xs[--n];
- }return ys;
- }
- });
- //
- var mapPartialIndexU = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function (xi2y, xs, skip) {
- var ys = fn$$1(xi2y, xs, skip);
- if (xs !== ys) I.freeze(ys);
- return ys;
- };
- })(function (xi2y, xs, skip) {
- var n = xs[LENGTH];
- var ys = Array(n);
- var j = 0;
- var same = true;
- for (var i = 0; i < n; ++i) {
- var x = xs[i];
- var y = xi2y(x, i);
- if (skip !== y) {
- ys[j++] = y;
- if (same) same = x === y && (x !== 0 || 1 / x === 1 / y) || x !== x && y !== y;
- }
- }
- if (j !== n) {
- ys[LENGTH] = j;
- return ys;
- } else if (same) {
- return xs;
- } else {
- return ys;
- }
- });
- var mapIfArrayLike = function mapIfArrayLike(xi2y, xs) {
- return seemsArrayLike(xs) ? mapPartialIndexU(xi2y, xs, void 0) : void 0;
- };
- var mapsIfArray = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(I.freeze))(function (x2y, xs) {
- if (I.isArray(xs)) {
- var n = xs[LENGTH];
- var ys = Array();
- for (var i = 0; i < n; ++i) {
- if (void 0 === (ys[i] = x2y(xs[i]))) {
- return void 0;
- }
- }
- return ys;
- }
- });
- var copyToFrom = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function (ys, k, xs, i, j) {
- return ys[LENGTH] === k + j - i ? I.freeze(fn$$1(ys, k, xs, i, j)) : fn$$1(ys, k, xs, i, j);
- };
- })(function (ys, k, xs, i, j) {
- while (i < j) {
- ys[k++] = xs[i++];
- }return ys;
- });
- //
- function selectInArrayLike(xi2v, xs) {
- for (var i = 0, n = xs[LENGTH]; i < n; ++i) {
- var v = xi2v(xs[i], i);
- if (void 0 !== v) return v;
- }
- }
- //
- var ConstantWith = function ConstantWith(ap, empty) {
- return I.Applicative(I.sndU, I.always(empty), ap);
- };
- var ConstantOf = function ConstantOf(_ref) {
- var concat = _ref.concat,
- empty = _ref.empty;
- return ConstantWith(concat, empty());
- };
- var Sum = /*#__PURE__*/ConstantWith(addU, 0);
- var mumBy = function mumBy(ord) {
- return I.curry(function mumBy(xi2y, t, s) {
- xi2y = toGetter(xi2y);
- var minX = void 0;
- var minY = void 0;
- getAsU(function (x, i) {
- var y = xi2y(x, i);
- if (void 0 !== y && (void 0 === minY || ord(y, minY))) {
- minX = x;
- minY = y;
- }
- }, t, s);
- return minX;
- });
- };
- //
- var traverseU = function traverse(C, xi2yC, t, s) {
- return toFunction(t)(s, void 0, C, xi2yC);
- };
- //
- var expectedOptic = 'Expecting an optic';
- var opticIsEither = 'An optic can be either\n- a string,\n- a non-negative integer,\n- a quaternary optic function,\n- an ordinary unary or binary function, or\n- an array of optics.\nSee documentation of `toFunction` and `compose` for details.';
- var header = 'partial.lenses: ';
- function warn(f, m) {
- if (!f.warned) {
- f.warned = 1;
- console.warn(header + m);
- }
- }
- function errorGiven(m, o, e) {
- m = header + m + '.';
- e = e ? '\n' + e : '';
- console.error(m, 'Given:', o, e);
- throw Error(m + e);
- }
- var reqIndex = function index(x) {
- if (!Number.isInteger(x) || x < 0) errorGiven('`index` expects a non-negative integer', x);
- };
- function reqFunction(o) {
- if (!(I.isFunction(o) && (o[LENGTH] === 4 || o[LENGTH] <= 2))) errorGiven(expectedOptic, o, opticIsEither);
- }
- function reqFn(x) {
- if (!I.isFunction(x)) errorGiven('Expected a function', x);
- }
- function reqArray(o) {
- if (!I.isArray(o)) errorGiven(expectedOptic, o, opticIsEither);
- }
- function reqOptic(o) {
- switch (typeof o) {
- case 'string':
- break;
- case 'number':
- reqIndex(o);
- break;
- case 'object':
- reqArray(o);
- for (var i = 0, n = o[LENGTH]; i < n; ++i) {
- reqOptic(o[i]);
- }break;
- default:
- reqFunction(o);
- break;
- }
- }
- //
- var reqString = function reqString(msg) {
- return function (x) {
- if (!I.isString(x)) errorGiven(msg, x);
- };
- };
- var reqMaybeArray = function reqMaybeArray(msg) {
- return function (zs) {
- if (!(void 0 === zs || seemsArrayLike(zs))) errorGiven(msg, zs);
- };
- };
- //
- var reqMonad = function reqMonad(name) {
- return function (C) {
- if (!C.chain) errorGiven('`' + name + '` requires a monad', C, 'Note that you can only `modify`, `remove`, `set`, and `traverse` a transform.');
- };
- };
- //
- var mkTraverse = function mkTraverse(after, toC) {
- return I.curryN(4, copyName(function (xi2yC, m) {
- return m = toC(m), function (t, s) {
- return after(traverseU(m, xi2yC, t, s));
- };
- }, toC));
- };
- //
- var consExcept = function consExcept(skip) {
- return function (t) {
- return function (h) {
- return skip !== h ? [h, t] : t;
- };
- };
- };
- var pushTo = function pushTo(n, xs) {
- while (consExcept !== n) {
- xs.push(n[0]);
- n = n[1];
- }
- return xs;
- };
- var consTo = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(I.freeze))(function (n) {
- return pushTo(n, []).reverse();
- });
- function traversePartialIndex(A, xi2yA, xs, skip) {
- var map = A.map,
- ap = A.ap;
- var xsA = A.of(consExcept);
- var n = xs[LENGTH];
- if (map === I.sndU) {
- for (var i = 0; i < n; ++i) {
- xsA = ap(xsA, xi2yA(xs[i], i));
- }return xsA;
- } else {
- var cons = consExcept(skip);
- for (var _i2 = 0; _i2 < n; ++_i2) {
- xsA = ap(map(cons, xsA), xi2yA(xs[_i2], _i2));
- }return map(consTo, xsA);
- }
- }
- //
- var SelectLog = /*#__PURE__*/I.Applicative(function (f, _ref2) {
- var p = _ref2.p,
- x = _ref2.x,
- c = _ref2.c;
- x = f(x);
- if (!I.isFunction(x)) p = [x, p];
- return { p: p, x: x, c: c };
- }, function (x) {
- return { p: [], x: x, c: undefined };
- }, function (l, r) {
- var v = undefined !== l.c ? l : r;
- return { p: v.p, x: l.x(r.x), c: v.c };
- });
- //
- var lensFrom = function lensFrom(get, set) {
- return function (i) {
- return function (x, _i, F, xi2yF) {
- return F.map(function (v) {
- return set(i, v, x);
- }, xi2yF(get(i, x), i));
- };
- };
- };
- //
- var getProp = function getProp(k, o) {
- return o instanceof Object ? o[k] : void 0;
- };
- var setProp = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(I.freeze))(function (k, v, o) {
- return void 0 !== v ? I.assocPartialU(k, v, o) : I.dissocPartialU(k, o) || I.object0;
- });
- var funProp = /*#__PURE__*/lensFrom(getProp, setProp);
- //
- var getIndex = function getIndex(i, xs) {
- return seemsArrayLike(xs) ? xs[i] : void 0;
- };
- var setIndex = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : fn(nth(0, ef(reqIndex)), I.freeze))(function (i, x, xs) {
- if (!seemsArrayLike(xs)) xs = '';
- var n = xs[LENGTH];
- if (void 0 !== x) {
- var m = Math.max(i + 1, n);
- var ys = Array(m);
- for (var j = 0; j < m; ++j) {
- ys[j] = xs[j];
- }ys[i] = x;
- return ys;
- } else {
- if (n <= i) return copyToFrom(Array(n), 0, xs, 0, n);
- var _ys = Array(n - 1);
- for (var _j = 0; _j < i; ++_j) {
- _ys[_j] = xs[_j];
- }for (var _j2 = i + 1; _j2 < n; ++_j2) {
- _ys[_j2 - 1] = xs[_j2];
- }return _ys;
- }
- });
- var funIndex = /*#__PURE__*/lensFrom(getIndex, setIndex);
- //
- var composedMiddle = function composedMiddle(o, r) {
- return function (F, xi2yF) {
- return xi2yF = r(F, xi2yF), function (x, i) {
- return o(x, i, F, xi2yF);
- };
- };
- };
- function composed(oi0, os) {
- var n = os[LENGTH] - oi0;
- if (n < 2) {
- return n ? toFunction(os[oi0]) : identity;
- } else {
- var _last = toFunction(os[oi0 + --n]);
- var r = function r(F, xi2yF) {
- return function (x, i) {
- return _last(x, i, F, xi2yF);
- };
- };
- while (--n) {
- r = composedMiddle(toFunction(os[oi0 + n]), r);
- }var _first = toFunction(os[oi0]);
- return function (x, i, F, xi2yF) {
- return _first(x, i, F, r(F, xi2yF));
- };
- }
- }
- var disperseU = function disperse(traversal, values, data) {
- if (!seemsArrayLike(values)) values = '';
- var i = 0;
- return modifyU(traversal, function () {
- return values[i++];
- }, data);
- };
- var setU = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(0, ef(reqOptic)))(function set(o, x, s) {
- switch (typeof o) {
- case 'string':
- return setProp(o, x, s);
- case 'number':
- return setIndex(o, x, s);
- case 'object':
- return modifyComposed(o, 0, s, x);
- default:
- return o[LENGTH] === 4 ? o(s, void 0, I.Identity, I.always(x)) : s;
- }
- });
- var getInverseU = function getInverse(o, x) {
- return setU(o, x, void 0);
- };
- var modifyU = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(0, ef(reqOptic)))(function modify(o, xi2x, s) {
- switch (typeof o) {
- case 'string':
- return setProp(o, xi2x(getProp(o, s), o), s);
- case 'number':
- return setIndex(o, xi2x(getIndex(o, s), o), s);
- case 'object':
- return modifyComposed(o, xi2x, s);
- default:
- return o[LENGTH] === 4 ? o(s, void 0, I.Identity, xi2x) : (xi2x(o(s, void 0), void 0), s);
- }
- });
- var modifyAsyncU = function modifyAsyncU(o, f, s) {
- return I.resolve(toFunction(o)(s, void 0, I.IdentityAsync, f));
- };
- var getAsU = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(1, ef(reqOptic)))(function getAs(xi2y, l, s) {
- switch (typeof l) {
- case 'string':
- return xi2y(getProp(l, s), l);
- case 'number':
- return xi2y(getIndex(l, s), l);
- case 'object':
- {
- var n = l[LENGTH];
- for (var i = 0, o; i < n; ++i) {
- switch (typeof (o = l[i])) {
- case 'string':
- s = getProp(o, s);
- break;
- case 'number':
- s = getIndex(o, s);
- break;
- default:
- return composed(i, l)(s, l[i - 1], Select, xi2y);
- }
- }return xi2y(s, l[n - 1]);
- }
- default:
- return xi2y !== id && l[LENGTH] !== 4 ? xi2y(l(s, void 0), void 0) : l(s, void 0, Select, xi2y);
- }
- });
- var getU = function getU(l, s) {
- return getAsU(id, l, s);
- };
- function modifyComposed(os, xi2y, x, y) {
- var n = os[LENGTH];
- var xs = Array(n);
- for (var i = 0, o; i < n; ++i) {
- xs[i] = x;
- switch (typeof (o = os[i])) {
- case 'string':
- x = getProp(o, x);
- break;
- case 'number':
- x = getIndex(o, x);
- break;
- default:
- x = composed(i, os)(x, os[i - 1], I.Identity, xi2y || I.always(y));
- n = i;
- break;
- }
- }
- if (n === os[LENGTH]) x = xi2y ? xi2y(x, os[n - 1]) : y;
- for (var _o; 0 <= --n;) {
- x = I.isString(_o = os[n]) ? setProp(_o, x, xs[n]) : setIndex(_o, x, xs[n]);
- }return x;
- }
- //
- var lensU = function lens(get, set) {
- return copyName(function (x, i, F, xi2yF) {
- return F.map(function (y) {
- return set(y, x, i);
- }, xi2yF(get(x, i), i));
- }, get);
- };
- var isoU = function iso(bwd, fwd) {
- return copyName(function (x, i, F, xi2yF) {
- return F.map(fwd, xi2yF(bwd(x), i));
- }, bwd);
- };
- var stringIsoU = function stringIsoU(bwd, fwd) {
- return isoU(expect(I.isString, bwd), expect(I.isString, fwd));
- };
- var numberIsoU = function numberIsoU(bwd, fwd) {
- return isoU(expect(I.isNumber, bwd), expect(I.isNumber, fwd));
- };
- //
- var getPick = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(I.freeze))(function (template, x) {
- var r = void 0;
- for (var k in template) {
- var t = template[k];
- var v = I.isObject(t) ? getPick(t, x) : getAsU(id, t, x);
- if (void 0 !== v) {
- if (!r) r = {};
- r[k] = v;
- }
- }
- return r;
- });
- var reqTemplate = function reqTemplate(name) {
- return function (template) {
- if (!I.isObject(template)) errorGiven('`' + name + '` expects a plain Object template', template);
- };
- };
- var reqObject = function reqObject(msg) {
- return function (value) {
- if (!(void 0 === value || value instanceof Object)) errorGiven(msg, value);
- };
- };
- var setPick = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(1, ef(reqObject('`pick` must be set with undefined or an object'))))(function (template, value, x) {
- for (var k in template) {
- var v = value && value[k];
- var t = template[k];
- x = I.isObject(t) ? setPick(t, v, x) : setU(t, v, x);
- }
- return x;
- });
- //
- var toObject = function toObject(x) {
- return I.constructorOf(x) !== Object ? I.toObject(x) : x;
- };
- //
- var identity = function identity(x, i, _F, xi2yF) {
- return xi2yF(x, i);
- };
- //
- var branchAssemble = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(res(I.freeze)))(function (ks) {
- return function (xs) {
- var r = {};
- var i = ks[LENGTH];
- while (i--) {
- var v = xs[0];
- if (void 0 !== v) {
- r[ks[i]] = v;
- }
- xs = xs[1];
- }
- return r;
- };
- });
- var branchOr1LevelIdentity = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function (otherwise, k2o, xO, x, A, xi2yA) {
- var y = fn$$1(otherwise, k2o, xO, x, A, xi2yA);
- if (x !== y) I.freeze(y);
- return y;
- };
- })(function (otherwise, k2o, xO, x, A, xi2yA) {
- var written = void 0;
- var same = true;
- var r = {};
- for (var k in k2o) {
- written = 1;
- var _x2 = xO[k];
- var y = k2o[k](_x2, k, A, xi2yA);
- if (void 0 !== y) {
- r[k] = y;
- if (same) same = _x2 === y && (_x2 !== 0 || 1 / _x2 === 1 / y) || _x2 !== _x2 && y !== y;
- } else {
- same = false;
- }
- }
- var t = written;
- for (var _k in xO) {
- if (void 0 === (t && k2o[_k])) {
- written = 1;
- var _x3 = xO[_k];
- var _y = otherwise(_x3, _k, A, xi2yA);
- if (void 0 !== _y) {
- r[_k] = _y;
- if (same) same = _x3 === _y && (_x3 !== 0 || 1 / _x3 === 1 / _y) || _x3 !== _x3 && _y !== _y;
- } else {
- same = false;
- }
- }
- }
- return written ? same && xO === x ? x : r : x;
- });
- var branchOr1Level = function branchOr1Level(otherwise, k2o) {
- return function (x, _i, A, xi2yA) {
- var xO = x instanceof Object ? toObject(x) : I.object0;
- if (I.Identity === A) {
- return branchOr1LevelIdentity(otherwise, k2o, xO, x, A, xi2yA);
- } else if (Select === A) {
- for (var k in k2o) {
- var y = k2o[k](xO[k], k, A, xi2yA);
- if (void 0 !== y) return y;
- }
- for (var _k2 in xO) {
- if (void 0 === k2o[_k2]) {
- var _y2 = otherwise(xO[_k2], _k2, A, xi2yA);
- if (void 0 !== _y2) return _y2;
- }
- }
- } else {
- var map = A.map,
- ap = A.ap,
- of = A.of;
- var xsA = of(cpair);
- var ks = [];
- for (var _k3 in k2o) {
- ks.push(_k3);
- xsA = ap(map(cpair, xsA), k2o[_k3](xO[_k3], _k3, A, xi2yA));
- }
- var t = ks[LENGTH] ? true : void 0;
- for (var _k4 in xO) {
- if (void 0 === (t && k2o[_k4])) {
- ks.push(_k4);
- xsA = ap(map(cpair, xsA), otherwise(xO[_k4], _k4, A, xi2yA));
- }
- }
- return ks[LENGTH] ? map(branchAssemble(ks), xsA) : of(x);
- }
- };
- };
- function branchOrU(otherwise, template) {
- var k2o = I.create(null);
- for (var k in template) {
- var v = template[k];
- k2o[k] = I.isObject(v) ? branchOrU(otherwise, v) : toFunction(v);
- }
- return branchOr1Level(otherwise, k2o);
- }
- var replaced = function replaced(inn, out, x) {
- return I.acyclicEqualsU(x, inn) ? out : x;
- };
- function findIndexHint(hint, xi2b, xs) {
- var u = hint.hint;
- var n = xs[LENGTH];
- if (n <= u) u = n - 1;
- if (u < 0) u = 0;
- var d = u - 1;
- for (; 0 <= d && u < n; ++u, --d) {
- if (xi2b(xs[u], u, hint)) return u;
- if (xi2b(xs[d], d, hint)) return d;
- }
- for (; u < n; ++u) {
- if (xi2b(xs[u], u, hint)) return u;
- }for (; 0 <= d; --d) {
- if (xi2b(xs[d], d, hint)) return d;
- }return n;
- }
- var partitionIntoIndex = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : dep(function (_xi2b, _xs, ts, fs) {
- return res(ef(function () {
- I.freeze(ts);
- I.freeze(fs);
- }));
- }))(function (xi2b, xs, ts, fs) {
- for (var i = 0, n = xs[LENGTH], x; i < n; ++i) {
- (xi2b(x = xs[i], i) ? ts : fs).push(x);
- }
- });
- var fromReader = function fromReader(wi2x) {
- return copyName(function (w, i, F, xi2yF) {
- return F.map(I.always(w), xi2yF(wi2x(w, i), i));
- }, wi2x);
- };
- //
- var LAST_INDEX = 'lastIndex';
- var INDEX = 'index';
- var RE_VALUE = 0;
- var reLastIndex = function reLastIndex(m) {
- return m[INDEX] + m[0][LENGTH];
- };
- var reNext = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function (m, re) {
- var res$$1 = fn$$1(m, re);
- if ('' === res$$1) warn(reNext, '`matches(' + re + ')` traversal terminated due to empty match. `matches` traversal shouldn\'t be used with regular expressions that can produce empty matches.');
- return res$$1;
- };
- })(function (m, re) {
- var lastIndex = re[LAST_INDEX];
- re[LAST_INDEX] = reLastIndex(m);
- var n = re.exec(m.input);
- re[LAST_INDEX] = lastIndex;
- return n && n[0] && n;
- });
- //
- var iterCollect = function iterCollect(s) {
- return function (xs) {
- return function (x) {
- return [s, x, xs];
- };
- };
- };
- var iterToArray = function iterToArray(xs) {
- var ys = [];
- while (iterCollect !== xs) {
- ys.push(xs[0], xs[1]);
- xs = xs[2];
- }
- return ys;
- };
- function iterSelect(xi2y, t, s) {
- while (s = reNext(s, t)) {
- var y = xi2y(s[RE_VALUE], s[INDEX]);
- if (void 0 !== y) return y;
- }
- }
- function iterEager(map, ap, of, xi2yA, t, s) {
- var r = of(iterCollect);
- while (s = reNext(s, t)) {
- r = ap(ap(map(iterCollect, of(s)), r), xi2yA(s[RE_VALUE], s[INDEX]));
- }return r;
- }
- //
- var keyed = /*#__PURE__*/isoU( /*#__PURE__*/expect( /*#__PURE__*/isInstanceOf(Object), /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(freezeObjectOfObjects))(function keyed(x) {
- x = toObject(x);
- var es = [];
- for (var key in x) {
- es.push([key, x[key]]);
- }return es;
- })), /*#__PURE__*/expect(I.isArray, /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(I.freeze))(function (es) {
- var o = {};
- for (var i = 0, n = es[LENGTH]; i < n; ++i) {
- var entry = es[i];
- if (entry[LENGTH] === 2) o[entry[0]] = entry[1];
- }
- return o;
- })));
- //
- var matchesJoin = function matchesJoin(input) {
- return function (matchesIn) {
- var result = '';
- var lastIndex = 0;
- var matches = iterToArray(matchesIn);
- var n = matches[LENGTH];
- for (var j = n - 2; j !== -2; j += -2) {
- var m = matches[j];
- result += input.slice(lastIndex, m[INDEX]);
- var s = matches[j + 1];
- if (void 0 !== s) result += s;
- lastIndex = reLastIndex(m);
- }
- result += input.slice(lastIndex);
- return result;
- };
- };
- //
- var disjointBwd = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(freezeObjectOfObjects))(function (groupOf, x) {
- if (x instanceof Object) {
- var y = {};
- x = toObject(x);
- for (var key in x) {
- var group = groupOf(key);
- var g = y[group];
- if (undefined === g) y[group] = g = {};
- g[key] = x[key];
- }
- return y;
- }
- });
- var disjointFwd = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(res(I.freeze)))(function (groupOf) {
- return function (y) {
- if (y instanceof Object) {
- var x = {};
- y = toObject(y);
- for (var group in y) {
- var g = y[group];
- if (g instanceof Object) {
- g = toObject(g);
- for (var key in g) {
- if (groupOf(key) === group) {
- x[key] = g[key];
- }
- }
- }
- }
- return x;
- }
- };
- });
- //
- var subseqU = function subseq(begin, end, t) {
- t = toFunction(t);
- return copyName(function (x, i, F, xi2yF) {
- var n = -1;
- return t(x, i, F, function (x, i) {
- return begin <= ++n && !(end <= n) ? xi2yF(x, i) : F.of(x);
- });
- }, t);
- };
- //
- var attemptU = function attemptU(fn$$1, x) {
- if (void 0 !== x) {
- var y = fn$$1(x);
- if (void 0 !== y) return y;
- }
- return x;
- };
- var rewriteAttempt = function rewriteAttempt(fn$$1) {
- return function (x, i, F, xi2yF) {
- return F.map(function (x) {
- return attemptU(fn$$1, x);
- }, xi2yF(x, i));
- };
- };
- var rereadAttempt = function rereadAttempt(fn$$1) {
- return function (x, i, F, xi2yF) {
- return xi2yF(attemptU(fn$$1, x), i);
- };
- };
- //
- var transformEvery = function transformEvery(optic) {
- return transform(lazy(function (rec) {
- return [optic, children, rec];
- }));
- };
- var transformSome = function transformSome(fn$$1) {
- return transform(lazy(function (rec) {
- return choices(getter(fn$$1), [children, rec]);
- }));
- };
- //
- var isDefinedAtU = function isDefinedAtU(o, x, i) {
- return void 0 !== o(x, i, Select, id);
- };
- var isDefinedAt = function isDefinedAt(o) {
- return function (x, i) {
- return isDefinedAtU(o, x, i);
- };
- };
- var eitherU = function eitherU(t, e) {
- return function either(c) {
- return function either(x, i, C, xi2yC) {
- return (c(x, i) ? t : e)(x, i, C, xi2yC);
- };
- };
- };
- var orElseU = function orElse(back, prim) {
- prim = toFunction(prim);
- back = toFunction(back);
- return function orElse(x, i, C, xi2yC) {
- return (isDefinedAtU(prim, x, i) ? prim : back)(x, i, C, xi2yC);
- };
- };
- var orAlternativelyU = function orAlternatively(back, prim) {
- prim = toFunction(prim);
- back = toFunction(back);
- var fwd = function fwd(y) {
- y = I.always(y);
- var yP = prim(void 0, void 0, I.Identity, y);
- return void 0 === yP ? back(void 0, void 0, I.Identity, y) : yP;
- };
- return function orAlternatively(x, i, F, xi2yF) {
- var xP = prim(x, i, Select, id);
- return F.map(fwd, xi2yF(void 0 === xP ? back(x, i, Select, id) : xP, i));
- };
- };
- var makeSemi = function makeSemi(op) {
- return copyName(function (_) {
- var n = arguments[LENGTH];
- var r = arguments[--n];
- while (n) {
- r = op(r, arguments[--n]);
- }
- return r;
- }, op);
- };
- var zero = function zero(x, _i, C, _xi2yC) {
- return C.of(x);
- };
- //
- var elemsI = function elemsI(xs, _i, A, xi2yA) {
- return A === I.Identity ? mapPartialIndexU(xi2yA, xs, void 0) : A === Select ? selectInArrayLike(xi2yA, xs) : traversePartialIndex(A, xi2yA, xs, void 0);
- };
- //
- var seq2U = function seq2U(l, r) {
- return function (x, i, M, xi2yM) {
- return M.chain(function (x) {
- return r(x, i, M, xi2yM);
- }, l(x, i, M, xi2yM));
- };
- };
- //
- var pickInAux = function pickInAux(t, k) {
- return [k, pickIn(t)];
- };
- //
- var iteratePartial = function iteratePartial(aa) {
- return function iterate(a) {
- var r = a;
- while (a !== undefined) {
- r = a;
- a = aa(a);
- }
- return r;
- };
- };
- //
- var crossPartial = function crossPartial(op, ls, or$$1) {
- return function (xs, ss) {
- var n = ls[LENGTH];
- if (!seemsArrayLike(xs)) return;
- if (!seemsArrayLike(ss)) ss = '';
- var m = Math.max(n, xs[LENGTH], ss[LENGTH]);
- var ys = Array(m);
- for (var i = 0; i < m; ++i) {
- if (void 0 === (ys[i] = op(i < n ? ls[i] : or$$1, xs[i], ss[i]))) return;
- }return ys;
- };
- };
- var crossOr = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? I.curry : function (fn$$1) {
- return I.curry(function crossOr(or$$1, ls) {
- return toFunction([isoU(id, I.freeze), fn$$1(or$$1, ls), isoU(I.freeze, id)]);
- });
- })(function crossOr(or$$1, ls) {
- return lensU(crossPartial(getU, ls, or$$1), crossPartial(setU, ls, or$$1));
- });
- var subsetPartial = function subsetPartial(p) {
- return function subset(x) {
- return void 0 !== x && p(x) ? x : void 0;
- };
- };
- //
- var unfoldPartial = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(res(function (r) {
- I.freeze(r);
- I.freeze(r[1]);
- return r;
- })))(function (s2sa) {
- return function unfold(s) {
- var xs = [];
- for (;;) {
- var sa = s2sa(s);
- if (!isPair(sa)) return [s, xs];
- s = sa[0];
- xs.push(sa[1]);
- }
- };
- });
- var foldPartial = function foldPartial(sa2s) {
- return function (sxs) {
- if (isPair(sxs)) {
- var xs = sxs[1];
- if (I.isArray(xs)) {
- var s = sxs[0];
- var n = xs[LENGTH];
- while (n--) {
- s = sa2s(freezeInDev([s, xs[n]]));
- }return s;
- }
- }
- };
- };
- //
- var PAYLOAD = '珳襱댎纚䤤鬖罺좴';
- var isPayload = function isPayload(k) {
- return I.isString(k) && k.indexOf(PAYLOAD) === 0;
- };
- function Spread(i) {
- this[PAYLOAD] = i;
- I.freeze(this);
- }
- var isSpread = /*#__PURE__*/isInstanceOf(Spread);
- var Variable = /*#__PURE__*/I.inherit(function Variable(i) {
- this[PAYLOAD + i] = this[PAYLOAD] = I.freeze([new Spread(i)]);
- I.freeze(this);
- }, Object, /*#__PURE__*/I.assocPartialU(iterator, function () {
- return this[PAYLOAD][iterator]();
- }));
- var isVariable = /*#__PURE__*/isInstanceOf(Variable);
- var vars = [];
- function nVars(n) {
- while (vars[LENGTH] < n) {
- vars.push(new Variable(vars[LENGTH]));
- }return vars;
- }
- var isPrimitive = function isPrimitive(x) {
- return x == null || typeof x !== 'object';
- };
- function match1(kinds, i, e, x) {
- if (void 0 !== x) {
- if (i in e) return I.acyclicEqualsU(e[i], x);
- e[i] = x;
- var k = kinds[i];
- return !k || k(x);
- }
- }
- function checkKind(kinds, i, kind) {
- if (0 <= i) {
- if (kinds[i]) {
- if (kinds[i] !== kind) throw Error('Spread patterns must be used consistently either as arrays or as objects.');
- } else {
- kinds[i] = kind;
- }
- }
- }
- var arrayKind = function arrayKind(x) {
- return void 0 === x || I.isArray(x);
- };
- var objectKind = function objectKind(x) {
- return void 0 === x || isInstanceOf(Object);
- };
- function checkPattern(kinds, p) {
- if (isSpread(p)) {
- throw Error('Spread patterns must be inside objects or arrays.');
- } else if (I.isArray(p)) {
- var nSpread = 0;
- for (var i = 0, n = p[LENGTH]; i < n; ++i) {
- var pi = p[i];
- if (isSpread(pi)) {
- if (nSpread++) throw Error('At most one spread is allowed in an array or object.');
- checkKind(kinds, pi[PAYLOAD], arrayKind);
- } else {
- checkPattern(kinds, pi);
- }
- }
- } else if (I.isObject(p)) {
- var spread = p[PAYLOAD];
- if (spread) {
- spread = spread[0][PAYLOAD];
- checkKind(kinds, spread, objectKind);
- }
- var _n = 0;
- for (var k in p) {
- if (isPayload(k)) {
- if (2 < ++_n) throw Error('At most one spread is allowed in an array or object.');
- } else {
- checkPattern(kinds, p[k]);
- }
- }
- } else if (!isPrimitive(p) && !isVariable(p)) {
- throw Error('Only plain arrays and objects are allowed in patterns.');
- }
- }
- var checkPatternInDev = process.env.NODE_ENV === 'production' ? id : function (p) {
- var kinds = [];
- checkPattern(kinds, p);
- return deepFreezeInDev(p);
- };
- var checkPatternPairInDev = process.env.NODE_ENV === 'production' ? id : function (ps) {
- var kinds = [];
- checkPattern(kinds, ps[0]);
- checkPattern(kinds, ps[1]);
- return deepFreezeInDev(ps);
- };
- var setDefined = function setDefined(o, k, x) {
- if (void 0 !== x) o[k] = x;
- };
- var pushDefined = function pushDefined(xs, x) {
- if (void 0 !== x) xs.push(x);
- };
- function toMatch(kinds, p) {
- if (void 0 === p || all1(isPrimitive, leafs, p)) {
- return function (e, x) {
- return I.acyclicEqualsU(p, x);
- };
- } else if (isVariable(p)) {
- var i = p[PAYLOAD][0][PAYLOAD];
- return i < 0 ? id : function (e, x) {
- return match1(kinds, i, e, x);
- };
- } else if (I.isArray(p)) {
- var init = [];
- var rest = [];
- var spread = void 0;
- var n = p[LENGTH];
- for (var _i3 = 0; _i3 < n; ++_i3) {
- var x = p[_i3];
- if (isSpread(x)) {
- spread = x[PAYLOAD];
- kinds[spread] = arrayKind;
- } else {
- var side = void 0 !== spread ? rest : init;
- side.push(toMatch(kinds, x));
- }
- }
- return function (e, x) {
- if (!seemsArrayLike(x)) return;
- var l = x[LENGTH];
- if (void 0 !== spread ? l < n - 1 : l !== n) return;
- var j = init[LENGTH];
- for (var _i4 = 0; _i4 < j; ++_i4) {
- if (!init[_i4](e, x[_i4])) return;
- }var k = rest[LENGTH];
- l -= k;
- for (var _i5 = 0; _i5 < k; ++_i5) {
- if (!rest[_i5](e, x[l + _i5])) return;
- }return !(0 <= spread) || match1(kinds, spread, e, copyToFrom(Array(l - j), 0, x, j, l));
- };
- } else {
- var _spread = p[PAYLOAD];
- if (_spread) {
- _spread = _spread[0][PAYLOAD];
- kinds[_spread] = objectKind;
- }
- p = modify(values, function (p, k) {
- return isPayload(k) ? void 0 : toMatch(kinds, p);
- }, p);
- var _n2 = count(values, p);
- return function (e, x) {
- if (isPrimitive(x) || I.isArray(x)) return;
- x = toObject(x);
- var rest = 0 <= _spread && {};
- var i = 0;
- for (var k in x) {
- var m = p[k];
- if (m) {
- if (!m(e, x[k])) return;
- i++;
- } else if (void 0 !== _spread) {
- if (rest) rest[k] = x[k];
- } else {
- return;
- }
- }
- return i === _n2 && (!rest || match1(kinds, _spread, e, freezeInDev(rest)));
- };
- }
- }
- function toSubst(p, k) {
- if (isPayload(k)) {
- return void 0;
- } else if (void 0 === p || all1(isPrimitive, leafs, p)) {
- return I.always(p);
- } else if (isVariable(p)) {
- var i = p[PAYLOAD][0][PAYLOAD];
- return function (e) {
- return e[i];
- };
- } else if (I.isArray(p)) {
- var init = [];
- var rest = [];
- var spread = void 0;
- var n = p[LENGTH];
- for (var _i6 = 0; _i6 < n; ++_i6) {
- var x = p[_i6];
- if (isSpread(x)) {
- spread = x[PAYLOAD];
- } else {
- var side = void 0 !== spread ? rest : init;
- side.push(toSubst(x));
- }
- }
- return freezeResultInDev(function (e) {
- var r = [];
- for (var _i7 = 0, _n3 = init[LENGTH]; _i7 < _n3; ++_i7) {
- pushDefined(r, init[_i7](e));
- }if (0 <= spread) {
- var xs = e[spread];
- if (xs) for (var _i8 = 0, _n4 = xs[LENGTH]; _i8 < _n4; ++_i8) {
- pushDefined(r, xs[_i8]);
- }
- }
- for (var _i9 = 0, _n5 = rest[LENGTH]; _i9 < _n5; ++_i9) {
- pushDefined(r, rest[_i9](e));
- }return r;
- });
- } else {
- var _spread2 = p[PAYLOAD];
- if (_spread2) _spread2 = _spread2[0][PAYLOAD];
- p = modify(values, toSubst, p);
- return freezeResultInDev(function (e) {
- var r = {};
- for (var _k5 in p) {
- setDefined(r, _k5, p[_k5](e));
- }if (0 <= _spread2) {
- var _x4 = e[_spread2];
- if (_x4) for (var _k6 in _x4) {
- setDefined(r, _k6, _x4[_k6]);
- }
- }
- return r;
- });
- }
- }
- var oneway = function oneway(n, m, s) {
- return function (x) {
- var e = Array(n);
- if (m(e, x)) return s(e);
- };
- };
- //
- var ungroupByFn = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(res(I.freeze)))(function (keyOf) {
- return function ungroupBy(xxs) {
- if (I.isArray(xxs)) {
- var ys = [];
- for (var i = 0, n = xxs.length; i < n; ++i) {
- var xs = xxs[i];
- if (!I.isArray(xs)) return;
- var m = xs.length;
- if (!m) return;
- var k = keyOf(xs[0]);
- if (void 0 === k) return;
- for (var j = 0, _m = xs.length; j < _m; ++j) {
- var x = xs[j];
- if (!I.identicalU(k, keyOf(x))) return;
- ys.push(x);
- }
- }
- return ys;
- }
- };
- });
- var groupByFn = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(res(freezeObjectOfObjects)))(function (keyOf) {
- return function groupBy(ys) {
- if (I.isArray(ys)) {
- var groups = new Map();
- for (var i = 0, n = ys.length; i < n; ++i) {
- var y = ys[i];
- var k = keyOf(y);
- if (void 0 === k) return;
- var xs = groups.get(k);
- if (void 0 !== xs) {
- xs.push(y);
- } else {
- groups.set(k, [y]);
- }
- }
- var xxs = [];
- groups.forEach(function (xs) {
- return xxs.push(xs);
- });
- return xxs;
- }
- };
- });
- //
- var zW1Fn = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(res(I.freeze)))(function (fn$$1) {
- return function zipWith1(xys) {
- if (isPair(xys)) {
- var ys = xys[1];
- var n = ys[LENGTH];
- if (n) {
- var x = xys[0];
- var zs = Array(n);
- for (var i = 0; i < n; ++i) {
- if (void 0 === (zs[i] = fn$$1([x, ys[i]]))) return;
- }return zs;
- }
- }
- };
- });
- var unzW1Fn = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(res(freezeObjectOfObjects)))(function (fn$$1) {
- return function unzipWith1(zs) {
- if (I.isArray(zs)) {
- var n = zs[LENGTH];
- if (n) {
- var xy0 = fn$$1(zs[0]);
- if (isPair(xy0)) {
- var ys = Array(n);
- var x = xy0[0];
- ys[0] = xy0[1];
- for (var i = 1; i < n; ++i) {
- var xy = fn$$1(zs[i]);
- if (!isPair(xy) || !I.acyclicEqualsU(x, xy[0])) return;
- ys[i] = xy[1];
- }
- return [x, ys];
- }
- }
- }
- };
- });
- // Auxiliary
- var seemsArrayLike = function seemsArrayLike(x) {
- return x instanceof Object && (x = x[LENGTH], x === x >> 0 && 0 <= x) || I.isString(x);
- };
- var Select = /*#__PURE__*/ConstantWith(function (l, r) {
- return void 0 !== l ? l : r;
- });
- var toFunction = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(0, ef(reqOptic)))(function toFunction(o) {
- switch (typeof o) {
- case 'string':
- return funProp(o);
- case 'number':
- return funIndex(o);
- case 'object':
- return composed(0, o);
- default:
- return o[LENGTH] === 4 ? o : fromReader(o);
- }
- });
- // Operations on optics
- var assign = /*#__PURE__*/I.curry(function assign(o, x, s) {
- return setU([o, assignTo], x, s);
- });
- var disperse = /*#__PURE__*/I.curry(disperseU);
- var modify = /*#__PURE__*/I.curry(modifyU);
- var modifyAsync = /*#__PURE__*/I.curry(modifyAsyncU);
- var remove = /*#__PURE__*/I.curry(function remove(o, s) {
- return setU(o, void 0, s);
- });
- var set = /*#__PURE__*/I.curry(setU);
- var traverse = /*#__PURE__*/I.curry(traverseU);
- // Nesting
- function compose() {
- var n = arguments[LENGTH];
- if (n < 2) {
- return n ? arguments[0] : identity;
- } else {
- var os = Array(n);
- while (n--) {
- os[n] = arguments[n];
- }return os;
- }
- }
- function flat() {
- var r = [flatten];
- for (var i = 0, n = arguments[LENGTH]; i < n; ++i) {
- r.push(arguments[i], flatten);
- }return r;
- }
- // Recursing
- function lazy(o2o) {
- var _memo = function memo(x, i, C, xi2yC) {
- return (_memo = toFunction(o2o(rec)))(x, i, C, xi2yC);
- };
- function rec(x, i, C, xi2yC) {
- return _memo(x, i, C, xi2yC);
- }
- return rec;
- }
- // Adapting
- var choices = /*#__PURE__*/makeSemi(orElseU);
- var choose = function choose(xiM2o) {
- return copyName(function (x, i, C, xi2yC) {
- return toFunction(xiM2o(x, i))(x, i, C, xi2yC);
- }, xiM2o);
- };
- var cond = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function cond() {
- var pair = tup(ef(reqFn), ef(reqOptic));
- for (var _len = arguments.length, cs = Array(_len), _key = 0; _key < _len; _key++) {
- cs[_key] = arguments[_key];
- }
- arr(pair)(cs.slice(0, -1));
- arr(or(tup(ef(reqOptic)), pair))(cs.slice(-1));
- return fn$$1.apply(undefined, cs);
- };
- })(function cond() {
- var n = arguments[LENGTH];
- var r = zero;
- while (n--) {
- var c = arguments[n];
- r = c[LENGTH] < 2 ? toFunction(c[0]) : eitherU(toFunction(c[1]), r)(c[0]);
- }
- return r;
- });
- var condOf = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function condOf(of) {
- var pair = tup(ef(reqFn), ef(reqOptic));
- for (var _len2 = arguments.length, cs = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
- cs[_key2 - 1] = arguments[_key2];
- }
- arr(pair)(cs.slice(0, -1));
- arr(or(tup(ef(reqOptic)), pair))(cs.slice(-1));
- return fn$$1.apply(undefined, [of].concat(cs));
- };
- })(function condOf(of) {
- of = toFunction(of);
- var n = arguments[LENGTH] - 1;
- if (!n) return zero;
- var def = arguments[n];
- if (def[LENGTH] === 1) {
- --n;
- def = toFunction(def[0]);
- } else {
- def = zero;
- }
- var ps = Array(n);
- var os = Array(n + 1);
- for (var i = 0; i < n; ++i) {
- var c = arguments[i + 1];
- ps[i] = c[0];
- os[i] = toFunction(c[1]);
- }
- os[n] = def;
- return function condOf(x, i, F, xi2yF) {
- var min = n;
- of(x, i, Select, function (y, j) {
- for (var _i10 = 0; _i10 < min; ++_i10) {
- if (ps[_i10](y, j)) {
- min = _i10;
- if (_i10 === 0) return 0;else break;
- }
- }
- });
- return os[min](x, i, F, xi2yF);
- };
- });
- var ifElse = /*#__PURE__*/I.curry(function ifElse(c, t, e) {
- return eitherU(toFunction(t), toFunction(e))(c);
- });
- var orElse = /*#__PURE__*/I.curry(orElseU);
- // Querying
- var chain = /*#__PURE__*/I.curry(function chain(xi2yO, xO) {
- return [xO, choose(function (xM, i) {
- return void 0 !== xM ? xi2yO(xM, i) : zero;
- })];
- });
- var choice = function choice() {
- for (var _len3 = arguments.length, os = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
- os[_key3] = arguments[_key3];
- }
- return os.reduceRight(orElseU, zero);
- };
- var unless = /*#__PURE__*/eitherU(zero, identity);
- var when = /*#__PURE__*/eitherU(identity, zero);
- var optional = /*#__PURE__*/when(I.isDefined);
- // Indices
- var mapIx = function mapIx(ix2j) {
- return function mapIx(x, i, F, xj2yF) {
- return xj2yF(x, ix2j(i, x));
- };
- };
- var setIx = function setIx(j) {
- return function setIx(x, _i, _F, xj2yF) {
- return xj2yF(x, j);
- };
- };
- var tieIx = /*#__PURE__*/I.curry(function tieIx(ij2k, o) {
- o = toFunction(o);
- return copyName(function (x, i, F, yk2zF) {
- return o(x, i, F, function (y, j) {
- return yk2zF(y, ij2k(j, i));
- });
- }, o);
- });
- var joinIx = /*#__PURE__*/setName( /*#__PURE__*/tieIx(function (j, i) {
- return void 0 !== i ? void 0 !== j ? [i, j] : i : j;
- }), 'joinIx');
- var reIx = function reIx(o) {
- o = toFunction(o);
- return copyName(function (x, i, F, xi2yF) {
- var j = 0;
- return o(x, i, F, function (x) {
- return xi2yF(x, j++);
- });
- }, o);
- };
- var skipIx = /*#__PURE__*/setName( /*#__PURE__*/tieIx(I.sndU), 'skipIx');
- // Debugging
- function getLog(l, s) {
- var _traverseU = traverseU(SelectLog, function (x) {
- return { p: [x, consExcept], x: x, c: x };
- }, l, s),
- p = _traverseU.p,
- c = _traverseU.c;
- p = pushTo(p, ['%O']);
- for (var i = 2; i < p[LENGTH]; ++i) {
- p[0] += ' <= %O';
- }console.log.apply(console, p);
- return c;
- }
- function log() {
- var show = I.curry(function log(dir, x) {
- console.log.apply(console, copyToFrom([], 0, arguments, 0, arguments[LENGTH]).concat([dir, x]));
- return x;
- });
- return isoU(show('get'), show('set'));
- }
- // Operations on transforms
- var transform = /*#__PURE__*/I.curry(function transform(o, s) {
- return modifyU(o, id, s);
- });
- var transformAsync = /*#__PURE__*/I.curry(function transformAsync(o, s) {
- return modifyAsyncU(o, id, s);
- });
- // Sequencing
- var seq = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function seq() {
- return par(2, ef(reqMonad('seq')))(fn$$1.apply(undefined, arguments));
- };
- })(function seq() {
- var n = arguments[LENGTH];
- var r = zero;
- if (n) {
- r = toFunction(arguments[--n]);
- while (n) {
- r = seq2U(toFunction(arguments[--n]), r);
- }
- }
- return r;
- });
- // Creating new traversals
- var branchOr = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(1, ef(reqTemplate('branchOr'))))( /*#__PURE__*/I.curryN(2, function branchOr(otherwise) {
- otherwise = toFunction(otherwise);
- return function branchOr(template) {
- return branchOrU(otherwise, template);
- };
- }));
- var branch = /*#__PURE__*/branchOr(zero);
- function branches() {
- var n = arguments[LENGTH];
- var template = {};
- for (var i = 0; i < n; ++i) {
- template[arguments[i]] = identity;
- }return branch(template);
- }
- // Traversals and combinators
- function elems(xs, i, A, xi2yA) {
- return seemsArrayLike(xs) ? elemsI(xs, i, A, xi2yA) : A.of(xs);
- }
- var elemsTotal = function elemsTotal(xs, i, A, xi2yA) {
- return seemsArrayLike(xs) ? A === I.Identity ? mapPartialIndexU(xi2yA, xs, mapPartialIndexU) : A === Select ? selectInArrayLike(xi2yA, xs) : traversePartialIndex(A, xi2yA, xs, traversePartialIndex) : A.of(xs);
- };
- var entries = /*#__PURE__*/setName( /*#__PURE__*/toFunction([keyed, elems]), 'entries');
- var keys = /*#__PURE__*/setName( /*#__PURE__*/toFunction([keyed, elems, 0]), 'keys');
- var keysEverywhere = function keysEverywhere(x, i, A, xi2yA) {
- var recEntry = function recEntry(kv, i) {
- return A.ap(A.map(pairPartial, xi2yA(kv[0], i)), recAny(kv[1], i));
- };
- var recAny = function recAny(x, i) {
- return I.isArray(x) ? elemsI(x, i, A, recAny) : I.isObject(x) ? entries(x, i, A, recEntry) : A.of(x);
- };
- return recAny(x, i);
- };
- var subseq = /*#__PURE__*/I.curry(subseqU);
- var limit = /*#__PURE__*/subseq(0);
- var offset = /*#__PURE__*/I.curry(function offset(begin, t) {
- return subseqU(begin, void 0, t);
- });
- function matches(re) {
- return function matches(x, _i, C, xi2yC) {
- if (I.isString(x)) {
- var map = C.map;
- if (re.global) {
- var m0 = [''];
- m0.input = x;
- m0[INDEX] = 0;
- if (Select === C) {
- return iterSelect(xi2yC, re, m0);
- } else {
- var ap = C.ap,
- of = C.of;
- return map(matchesJoin(x), iterEager(map, ap, of, xi2yC, re, m0));
- }
- } else {
- var m = x.match(re);
- if (m) return map(function (y) {
- return x.replace(re, void 0 !== y ? y : '');
- }, xi2yC(m[0], m[INDEX]));
- }
- }
- return C.of(x);
- };
- }
- var values = /*#__PURE__*/setName( /*#__PURE__*/branchOr1Level(identity, protoless0), 'values');
- function children(x, i, C, xi2yC) {
- return I.isArray(x) ? elemsI(x, i, C, xi2yC) : I.isObject(x) ? values(x, i, C, xi2yC) : C.of(x);
- }
- function flatten(x, i, C, xi2yC) {
- var rec = function rec(x, i) {
- return I.isArray(x) ? elemsI(x, i, C, rec) : void 0 !== x ? xi2yC(x, i) : C.of(x);
- };
- return rec(x, i);
- }
- function query() {
- var r = [];
- for (var i = 0, n = arguments[LENGTH]; i < n; ++i) {
- var o = toFunction(arguments[i]);
- r.push(satisfying(isDefinedAt(o)), o);
- }
- return r;
- }
- var satisfying = function satisfying(p) {
- return function satisfying(x, i, C, xi2yC) {
- var rec = function rec(x, i) {
- return p(x, i) ? xi2yC(x, i) : children(x, i, C, rec);
- };
- return rec(x, i);
- };
- };
- var leafs = /*#__PURE__*/satisfying(function (x) {
- return void 0 !== x && !I.isArray(x) && !I.isObject(x);
- });
- var whereEq = function whereEq(template) {
- return satisfying(and$1(branch(modify(leafs, is, template))));
- };
- // Folds over traversals
- var all = /*#__PURE__*/I.curry(function all(xi2b, t, s) {
- return !getAsU(function (x, i) {
- if (!xi2b(x, i)) return true;
- }, t, s);
- });
- var and$1 = /*#__PURE__*/all(id);
- var all1 = /*#__PURE__*/I.curry(function all1(xi2b, t, s) {
- var result = false;
- getAsU(function (x, i) {
- if (xi2b(x, i)) result = true;else return result = false;
- }, t, s);
- return result;
- });
- var and1 = /*#__PURE__*/all1(id);
- var any = /*#__PURE__*/I.curry(function any(xi2b, t, s) {
- return !!getAsU(function (x, i) {
- if (xi2b(x, i)) return true;
- }, t, s);
- });
- var collectAs = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? I.curry : res(I.freeze))(function collectAs(xi2y, t, s) {
- var results = [];
- getAsU(function (x, i) {
- var y = xi2y(x, i);
- if (void 0 !== y) results.push(y);
- }, t, s);
- return results;
- });
- var collect = /*#__PURE__*/collectAs(id);
- var collectTotalAs = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? I.curry : res(I.freeze))(function collectTotalAs(xi2y, t, s) {
- var results = [];
- getAsU(function (x, i) {
- results.push(xi2y(x, i));
- }, t, s);
- return results;
- });
- var collectTotal = /*#__PURE__*/collectTotalAs(id);
- var concatAs = /*#__PURE__*/mkTraverse(id, ConstantOf);
- var concat = /*#__PURE__*/concatAs(id);
- var countIf = /*#__PURE__*/I.curry(function countIf(p, t, s) {
- return traverseU(Sum, function (x, i) {
- return p(x, i) ? 1 : 0;
- }, t, s);
- });
- var count = /*#__PURE__*/countIf(I.isDefined);
- var countsAs = /*#__PURE__*/I.curry(function countsAs(xi2k, t, s) {
- var counts = new Map();
- getAsU(function (x, i) {
- var k = xi2k(x, i);
- var n = counts.get(k);
- counts.set(k, void 0 !== n ? n + 1 : 1);
- }, t, s);
- return counts;
- });
- var counts = /*#__PURE__*/countsAs(id);
- var foldl = /*#__PURE__*/I.curry(function foldl(f, r, t, s) {
- getAsU(function (x, i) {
- r = f(r, x, i);
- }, t, s);
- return r;
- });
- var foldr = /*#__PURE__*/I.curry(function foldr(f, r, t, s) {
- var is = [];
- var xs = [];
- getAsU(function (x, i) {
- xs.push(x);
- is.push(i);
- }, t, s);
- for (var i = xs[LENGTH] - 1; 0 <= i; --i) {
- r = f(r, xs[i], is[i]);
- }return r;
- });
- var forEach = /*#__PURE__*/I.curry(function forEach(f, t, s) {
- return getAsU(function (x, i) {
- f(x, i);
- }, t, s);
- });
- var forEachWith = /*#__PURE__*/I.curry(function forEachWith(newC, ef$$1, t, s) {
- var c = newC();
- getAsU(function (x, i) {
- ef$$1(c, x, i);
- }, t, s);
- return c;
- });
- function get(l, s) {
- return 1 < arguments[LENGTH] ? getAsU(id, l, s) : function (s) {
- return getAsU(id, l, s);
- };
- }
- var getAs = /*#__PURE__*/I.curry(getAsU);
- var isDefined = /*#__PURE__*/I.curry(function isDefined(t, s) {
- return void 0 !== getAsU(id, t, s);
- });
- var isEmpty = /*#__PURE__*/I.curry(function isEmpty(t, s) {
- return !getAsU(toTrue, t, s);
- });
- var joinAs = /*#__PURE__*/mkTraverse(toStringPartial, /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(0, ef(reqString('`join` and `joinAs` expect a string delimiter'))))(function joinAs(d) {
- return ConstantWith(function (x, y) {
- return void 0 !== x ? void 0 !== y ? x + d + y : x : y;
- });
- }));
- var join = /*#__PURE__*/joinAs(id);
- var maximumBy = /*#__PURE__*/mumBy(gtU);
- var maximum = /*#__PURE__*/maximumBy(id);
- var meanAs = /*#__PURE__*/I.curry(function meanAs(xi2y, t, s) {
- var sum = 0;
- var num = 0;
- getAsU(function (x, i) {
- var y = xi2y(x, i);
- if (void 0 !== y) {
- num += 1;
- sum += y;
- }
- }, t, s);
- return sum / num;
- });
- var mean = /*#__PURE__*/meanAs(id);
- var minimumBy = /*#__PURE__*/mumBy(ltU);
- var minimum = /*#__PURE__*/minimumBy(id);
- var none = /*#__PURE__*/I.curry(function none(xi2b, t, s) {
- return !getAsU(function (x, i) {
- if (xi2b(x, i)) return true;
- }, t, s);
- });
- var or$1 = /*#__PURE__*/any(id);
- var productAs = /*#__PURE__*/traverse( /*#__PURE__*/ConstantWith(multiplyU, 1));
- var product = /*#__PURE__*/productAs( /*#__PURE__*/unto(1));
- var select = process.env.NODE_ENV === 'production' ? get : /*#__PURE__*/I.curry(function select(l, s) {
- warn(select, '`select` has been obsoleted. Just use `get`. See CHANGELOG for details.');
- return get(l, s);
- });
- var selectAs = process.env.NODE_ENV === 'production' ? getAs : /*#__PURE__*/I.curry(function selectAs(f, l, s) {
- warn(selectAs, '`selectAs` has been obsoleted. Just use `getAs`. See CHANGELOG for details.');
- return getAs(f, l, s);
- });
- var sumAs = /*#__PURE__*/traverse(Sum);
- var sum = /*#__PURE__*/sumAs(unto0);
- // Creating new lenses
- var foldTraversalLens = /*#__PURE__*/I.curry(function foldTraversalLens(fold, traversal) {
- return lensU(fold(traversal), set(traversal));
- });
- var getter = function getter(get) {
- return function (x, i, F, xi2yF) {
- return xi2yF(get(x, i), i);
- };
- };
- var lens = /*#__PURE__*/I.curry(lensU);
- function partsOf(t) {
- if (arguments[LENGTH] !== 1) t = toFunction(compose.apply(null, arguments));
- return function partsOf(x, i, F, xi2yF) {
- return F.map(function (y) {
- return disperseU(t, y, x);
- }, xi2yF(collectTotal(t, x), i));
- };
- }
- var setter = /*#__PURE__*/lens(id);
- // Enforcing invariants
- function defaults(out) {
- function o2u(x) {
- return replaced(out, void 0, x);
- }
- return function defaults(x, i, F, xi2yF) {
- return F.map(o2u, xi2yF(void 0 !== x ? x : out, i));
- };
- }
- function define(v) {
- var untoV = unto(v);
- return function define(x, i, F, xi2yF) {
- return F.map(untoV, xi2yF(void 0 !== x ? x : v, i));
- };
- }
- var normalize = function normalize(xi2x) {
- return [reread(xi2x), rewrite(xi2x)];
- };
- function required(inn) {
- return replace$1(inn, void 0);
- }
- var reread = function reread(xi2x) {
- return function (x, i, _F, xi2yF) {
- return xi2yF(void 0 !== x ? xi2x(x, i) : x, i);
- };
- };
- var rewrite = function rewrite(yi2y) {
- return function (x, i, F, xi2yF) {
- return F.map(function (y) {
- return void 0 !== y ? yi2y(y, i) : y;
- }, xi2yF(x, i));
- };
- };
- // Lensing arrays
- var filter = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(function (lens) {
- return toFunction([lens, isoU(id, ef(reqMaybeArray('`filter` must be set with undefined or an array-like object')))]);
- }))(function filter(xi2b) {
- return function filter(xs, i, F, xi2yF) {
- var ts = void 0;
- var fs = I.array0;
- if (seemsArrayLike(xs)) partitionIntoIndex(xi2b, xs, ts = [], fs = []);
- return F.map(function (ts) {
- var tsN = ts ? ts[LENGTH] : 0;
- var fsN = fs[LENGTH];
- var n = tsN + fsN;
- return n === fsN ? fs : copyToFrom(copyToFrom(Array(n), 0, ts, 0, tsN), tsN, fs, 0, fsN);
- }, xi2yF(ts, i));
- };
- });
- function find(xih2b) {
- var hint = arguments[LENGTH] > 1 ? arguments[1] : { hint: 0 };
- return function find(xs, _i, F, xi2yF) {
- var ys = seemsArrayLike(xs) ? xs : '';
- var i = hint.hint = findIndexHint(hint, xih2b, ys);
- return F.map(function (v) {
- return setIndex(i, v, ys);
- }, xi2yF(ys[i], i));
- };
- }
- function findWith(o) {
- var oo = toFunction(o);
- var p = isDefinedAt(oo);
- return [arguments[LENGTH] > 1 ? find(p, arguments[1]) : find(p), oo];
- }
- var first = 0;
- var index = process.env.NODE_ENV !== 'production' ? /*#__PURE__*/ef(reqIndex) : id;
- var last = /*#__PURE__*/choose(function last(maybeArray) {
- return seemsArrayLike(maybeArray) && maybeArray[LENGTH] ? maybeArray[LENGTH] - 1 : 0;
- });
- var prefix = function prefix(n) {
- return slice(0, n);
- };
- var slice = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? I.curry : res(function (lens) {
- return toFunction([lens, isoU(id, ef(reqMaybeArray('`slice` must be set with undefined or an array-like object')))]);
- }))(function slice(begin, end) {
- return function slice(xs, i, F, xsi2yF) {
- var seems = seemsArrayLike(xs);
- var xsN = seems && xs[LENGTH];
- var b = sliceIndex(0, xsN, 0, begin);
- var e = sliceIndex(b, xsN, xsN, end);
- return F.map(function (zs) {
- var zsN = zs ? zs[LENGTH] : 0;
- var bPzsN = b + zsN;
- var n = xsN - e + bPzsN;
- return copyToFrom(copyToFrom(copyToFrom(Array(n), 0, xs, 0, b), b, zs, 0, zsN), bPzsN, xs, e, xsN);
- }, xsi2yF(seems ? copyToFrom(Array(Math.max(0, e - b)), 0, xs, b, e) : void 0, i));
- };
- });
- var suffix = function suffix(n) {
- return slice(0 === n ? Infinity : !n ? 0 : -n, void 0);
- };
- // Lensing objects
- var pickIn = function pickIn(t) {
- return I.isObject(t) ? pick(modify(values, pickInAux, t)) : t;
- };
- var prop = process.env.NODE_ENV === 'production' ? id : function (x) {
- if (!I.isString(x)) errorGiven('`prop` expects a string', x);
- return x;
- };
- function props() {
- var n = arguments[LENGTH];
- var template = {};
- for (var i = 0, k; i < n; ++i) {
- template[k = arguments[i]] = k;
- }return pick(template);
- }
- function propsExcept() {
- var setish = I.create(null);
- for (var i = 0, n = arguments[LENGTH]; i < n; ++i) {
- setish[arguments[i]] = 'd';
- }return [disjoint(function (k) {
- return setish[k] || 't';
- }), 't'];
- }
- var propsOf = function propsOf(o) {
- warn(propsOf, '`propsOf` has been deprecated and there is no replacement. See CHANGELOG for details.');
- return props.apply(null, I.keys(o));
- };
- function removable() {
- for (var _len4 = arguments.length, ps = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
- ps[_key4] = arguments[_key4];
- }
- function drop(y) {
- if (!(y instanceof Object)) return y;
- for (var i = 0, n = ps[LENGTH]; i < n; ++i) {
- if (I.hasU(ps[i], y)) return y;
- }
- }
- return function (x, i, F, xi2yF) {
- return F.map(drop, xi2yF(x, i));
- };
- }
- // Providing defaults
- var valueOr = function valueOr(v) {
- return function (x, i, _F, xi2yF) {
- return xi2yF(x != null ? x : v, i);
- };
- };
- // Transforming data
- var pick = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : par(0, ef(reqTemplate('pick'))))(function pick(template) {
- return function (x, i, F, xi2yF) {
- return F.map(function (v) {
- return setPick(template, v, x);
- }, xi2yF(getPick(template, x), i));
- };
- });
- var replace$1 = /*#__PURE__*/I.curry(function replace$$1(inn, out) {
- function o2i(x) {
- return replaced(out, inn, x);
- }
- return function replace$$1(x, i, F, xi2yF) {
- return F.map(o2i, xi2yF(replaced(inn, out, x), i));
- };
- });
- // Inserters
- function appendTo(xs, _, F, xi2yF) {
- var i = seemsArrayLike(xs) ? xs[LENGTH] : 0;
- return F.map(function (x) {
- return setIndex(i, x, xs);
- }, xi2yF(void 0, i));
- }
- var append = process.env.NODE_ENV === 'production' ? appendTo : function append(x, i, F, xi2yF) {
- warn(append, '`append` has been renamed to `appendTo`. See CHANGELOG for details.');
- return appendTo(x, i, F, xi2yF);
- };
- var assignTo = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (iso) {
- return copyName(toFunction([isoU(id, I.freeze), iso]), iso);
- })(function assignTo(x, i, F, xi2yF) {
- return F.map(function (y) {
- return I.assign({}, x instanceof Object ? x : null, y);
- }, xi2yF(void 0, i));
- });
- var prependTo = /*#__PURE__*/setName( /*#__PURE__*/toFunction([/*#__PURE__*/prefix(0), 0]), 'prependTo');
- // Transforming
- var appendOp = /*#__PURE__*/setName( /*#__PURE__*/inserterOp(appendTo), 'appendOp');
- var assignOp = /*#__PURE__*/setName( /*#__PURE__*/inserterOp(assignTo), 'assignOp');
- var modifyOp = function modifyOp(xi2y) {
- return function modifyOp(x, i, C, _xi2yC) {
- return C.of(xi2y(x, i));
- };
- };
- var prependOp = /*#__PURE__*/setName( /*#__PURE__*/inserterOp(prependTo), 'prependOp');
- var setOp = function setOp(y) {
- return function setOp(_x, _i, C, _xi2yC) {
- return C.of(y);
- };
- };
- var removeOp = /*#__PURE__*/setOp();
- var cross = /*#__PURE__*/setName( /*#__PURE__*/crossOr(removeOp), 'cross');
- // Operations on isomorphisms
- function getInverse(o, s) {
- return 1 < arguments[LENGTH] ? getInverseU(o, s) : function (s) {
- return getInverseU(o, s);
- };
- }
- // Creating new isomorphisms
- var iso = /*#__PURE__*/I.curry(isoU);
- var _ = /*#__PURE__*/new Variable(-1);
- function mapping(ps) {
- var n = 0;
- if (I.isFunction(ps)) ps = ps.apply(null, nVars(n = ps[LENGTH]));
- checkPatternPairInDev(ps);
- var kinds = Array(n);
- var ms = ps.map(function (p) {
- return toMatch(kinds, p);
- });
- var ss = ps.map(toSubst);
- return isoU(oneway(n, ms[0], ss[1]), oneway(n, ms[1], ss[0]));
- }
- function mappings(ps) {
- if (I.isFunction(ps)) ps = ps.apply(null, nVars(ps[LENGTH]));
- return alternatives.apply(null, ps.map(mapping));
- }
- function pattern(p) {
- var n = 0;
- if (I.isFunction(p)) p = p.apply(null, nVars(n = p[LENGTH]));
- checkPatternInDev(p);
- var kinds = Array(n);
- var m = toMatch(kinds, p);
- return subset(function (x) {
- return m(Array(n), x);
- });
- }
- function patterns(ps) {
- if (I.isFunction(ps)) ps = ps.apply(null, nVars(ps[LENGTH]));
- return alternatives.apply(null, ps.map(pattern));
- }
- // Isomorphism combinators
- var alternatives = /*#__PURE__*/makeSemi(orAlternativelyU);
- var applyAt = /*#__PURE__*/I.curry(function applyAt(elements, transform) {
- return isoU(modify(elements, get(transform)), modify(elements, getInverse(transform)));
- });
- var attemptEveryDown = function attemptEveryDown(iso) {
- return isoU(transformEvery(rereadAttempt(get(iso))), transformEvery(rewriteAttempt(getInverse(iso))));
- };
- var attemptEveryUp = function attemptEveryUp(iso) {
- return isoU(transformEvery(rewriteAttempt(get(iso))), transformEvery(rereadAttempt(getInverse(iso))));
- };
- var attemptSomeDown = function attemptSomeDown(iso) {
- return isoU(transformSome(get(iso)), transformSome(getInverse(iso)));
- };
- var conjugate = /*#__PURE__*/I.curry(function conjugate(outer, inner) {
- return [outer, inner, inverse(outer)];
- });
- var inverse = function inverse(iso) {
- return function (x, i, F, xi2yF) {
- return F.map(function (x) {
- return getAsU(id, iso, x);
- }, xi2yF(setU(iso, x, void 0), i));
- };
- };
- var iterate = function iterate(aIa) {
- return isoU(iteratePartial(get(aIa)), iteratePartial(getInverse(aIa)));
- };
- var orAlternatively = /*#__PURE__*/I.curry(orAlternativelyU);
- var fold = function fold(saIs) {
- return isoU(foldPartial(get(saIs)), unfoldPartial(getInverse(saIs)));
- };
- var unfold = function unfold(sIsa) {
- return isoU(unfoldPartial(get(sIsa)), foldPartial(getInverse(sIsa)));
- };
- // Basic isomorphisms
- var complement = /*#__PURE__*/isoU(notPartial, notPartial);
- var is = function is(v) {
- return isoU(function is(x) {
- return I.acyclicEqualsU(v, x);
- }, function (b) {
- return true === b ? v : void 0;
- });
- };
- function subset(predicate) {
- var subsetFn = subsetPartial(predicate);
- return isoU(subsetFn, subsetFn);
- }
- // Array isomorphisms
- var array = function array(elem) {
- var fwd = getInverse(elem);
- var bwd = get(elem);
- var mapFwd = function mapFwd(x) {
- return mapIfArrayLike(fwd, x);
- };
- return function (x, i, F, xi2yF) {
- return F.map(mapFwd, xi2yF(mapIfArrayLike(bwd, x), i));
- };
- };
- var arrays = function arrays(elem) {
- var fwd = getInverse(elem);
- var bwd = get(elem);
- var mapFwd = function mapFwd(x) {
- return mapsIfArray(fwd, x);
- };
- return function (x, i, F, xi2yF) {
- return F.map(mapFwd, xi2yF(mapsIfArray(bwd, x), i));
- };
- };
- var indexed = /*#__PURE__*/isoU( /*#__PURE__*/expect(seemsArrayLike, /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(freezeObjectOfObjects))(function indexed(xs) {
- var n = xs[LENGTH];
- var xis = Array(n);
- for (var i = 0; i < n; ++i) {
- xis[i] = [i, xs[i]];
- }return xis;
- })), /*#__PURE__*/expect(I.isArray, /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(I.freeze))(function (xis) {
- var n = xis[LENGTH];
- var xs = Array(n);
- for (var i = 0; i < n; ++i) {
- var xi = xis[i];
- if (xi[LENGTH] === 2) xs[xi[0]] = xi[1];
- }
- n = xs[LENGTH];
- var j = 0;
- for (var _i11 = 0; _i11 < n; ++_i11) {
- var x = xs[_i11];
- if (void 0 !== x) {
- if (_i11 !== j) xs[j] = x;
- ++j;
- }
- }
- xs[LENGTH] = j;
- return xs;
- })));
- var reverse = /*#__PURE__*/isoU(rev, rev);
- var singleton = /*#__PURE__*/setName( /*#__PURE__*/mapping(function (x) {
- return [[x], x];
- }), 'singleton');
- var groupBy = function groupBy(keyOf) {
- keyOf = toGetter(keyOf);
- return isoU(groupByFn(keyOf), ungroupByFn(keyOf));
- };
- var ungroupBy = function ungroupBy(keyOf) {
- keyOf = toGetter(keyOf);
- return isoU(ungroupByFn(keyOf), groupByFn(keyOf));
- };
- var zipWith1 = function zipWith1(iso) {
- return isoU(zW1Fn(get(iso)), unzW1Fn(getInverse(iso)));
- };
- var unzipWith1 = function unzipWith1(iso) {
- return isoU(unzW1Fn(get(iso)), zW1Fn(getInverse(iso)));
- };
- // Object isomorphisms
- var disjoint = function disjoint(groupOf) {
- return function disjoint(x, i, F, xi2yF) {
- var fwd = disjointFwd(groupOf);
- return F.map(fwd, xi2yF(disjointBwd(groupOf, x), i));
- };
- };
- var multikeyed = /*#__PURE__*/isoU( /*#__PURE__*/expect( /*#__PURE__*/isInstanceOf(Object), /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(freezeObjectOfObjects))(function multikeyed(o) {
- o = toObject(o);
- var ps = [];
- for (var k in o) {
- var v = o[k];
- if (I.isArray(v)) for (var i = 0, n = v[LENGTH]; i < n; ++i) {
- ps.push([k, v[i]]);
- } else ps.push([k, v]);
- }
- return ps;
- })), /*#__PURE__*/expect(I.isArray, /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(freezeObjectOfObjects))(function (ps) {
- var o = I.create(null);
- for (var i = 0, n = ps[LENGTH]; i < n; ++i) {
- var entry = ps[i];
- if (entry[LENGTH] === 2) {
- var k = entry[0];
- var v = entry[1];
- var was = o[k];
- if (was === void 0) o[k] = v;else if (I.isArray(was)) was.push(v);else o[k] = [was, v];
- }
- }
- return I.assign({}, o);
- })));
- // Standard isomorphisms
- var json = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : res(function (iso) {
- return toFunction([iso, isoU(deepFreezeInDev, id)]);
- }))(function json(options) {
- var _ref3 = options || I.object0,
- reviver = _ref3.reviver,
- replacer = _ref3.replacer,
- space = _ref3.space;
- return isoU(expect(I.isString, tryCatch(function json(text) {
- return JSON.parse(text, reviver);
- })), expect(I.isDefined, function (value) {
- return JSON.stringify(value, replacer, space);
- }));
- });
- var uri = /*#__PURE__*/stringIsoU( /*#__PURE__*/tryCatch(decodeURI), encodeURI);
- var uriComponent = /*#__PURE__*/isoU( /*#__PURE__*/expect(I.isString, /*#__PURE__*/tryCatch(decodeURIComponent)), /*#__PURE__*/expect(isPrimitiveData, encodeURIComponent));
- // String isomorphisms
- var dropPrefix = function dropPrefix(pfx) {
- return stringIsoU(function dropPrefix(x) {
- return x.startsWith(pfx) ? x.slice(pfx[LENGTH]) : undefined;
- }, function (x) {
- return pfx + x;
- });
- };
- var dropSuffix = function dropSuffix(sfx) {
- return stringIsoU(function dropSuffix(x) {
- return x.endsWith(sfx) ? x.slice(0, x[LENGTH] - sfx[LENGTH]) : undefined;
- }, function (x) {
- return x + sfx;
- });
- };
- var replaces = /*#__PURE__*/I.curry(function replaces(i, o) {
- return stringIsoU(replace(toRegExpU(i, 'g'), o), replace(toRegExpU(o, 'g'), i));
- });
- var split = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function split(_sep) {
- return toFunction([fn$$1.apply(null, arguments), isoU(I.freeze, id)]);
- };
- })(function split(sep) {
- var re = arguments[LENGTH] > 1 ? arguments[1] : sep;
- return isoU(expect(I.isString, function (x) {
- return x.split(re);
- }), expect(I.isArray, function (xs) {
- return xs.join(sep);
- }));
- });
- var uncouple = /*#__PURE__*/(process.env.NODE_ENV === 'production' ? id : function (fn$$1) {
- return function uncouple(_sep) {
- return toFunction([fn$$1.apply(null, arguments), isoU(I.freeze, id)]);
- };
- })(function uncouple(sep) {
- var re = toRegExpU(arguments[LENGTH] > 1 ? arguments[1] : sep, '');
- return isoU(expect(I.isString, function (x) {
- var m = re.exec(x);
- return m ? [x.slice(0, m[INDEX]), x.slice(reLastIndex(m))] : [x, ''];
- }), function (kv) {
- if (isPair(kv)) {
- var k = kv[0];
- var v = kv[1];
- return v ? k + sep + v : k;
- }
- });
- });
- // Standardish isomorphisms
- var querystring = /*#__PURE__*/setName( /*#__PURE__*/toFunction([/*#__PURE__*/reread(function (s) {
- return I.isString(s) ? s.replace(/\+/g, '%20') : s;
- }), /*#__PURE__*/split('&'), /*#__PURE__*/array([/*#__PURE__*/uncouple('='), /*#__PURE__*/array(uriComponent)]), /*#__PURE__*/inverse(multikeyed)]), 'querystring');
- // Arithmetic isomorphisms
- var add$1 = function add$$1(c) {
- return numberIsoU(add(c), add(-c));
- };
- var divide = function divide(c) {
- return numberIsoU(divideBy(c), multiply(c));
- };
- var multiply$1 = function multiply$$1(c) {
- return numberIsoU(multiply(c), divideBy(c));
- };
- var negate$1 = /*#__PURE__*/numberIsoU(negate, negate);
- var subtract = function subtract(c) {
- return numberIsoU(add(-c), add(c));
- };
- var pointer = function pointer(s) {
- if (s[0] === '#') s = decodeURIComponent(s);
- var ts = s.split('/');
- var n = ts[LENGTH];
- for (var i = 1; i < n; ++i) {
- var t = ts[i];
- ts[i - 1] = /^(0|[1-9]\d*)$/.test(t) ? ifElse(isArrayOrPrimitive, Number(t), t) : '-' === t ? ifElse(isArrayOrPrimitive, append, t) : t.replace('~1', '/').replace('~0', '~');
- }
- ts[LENGTH] = n - 1;
- return ts;
- };
- exports.Identity = I.Identity;
- exports.IdentityAsync = I.IdentityAsync;
- exports.FantasyFunctor = I.FantasyFunctor;
- exports.fromFantasy = I.fromFantasy;
- exports.fromFantasyApplicative = I.fromFantasyApplicative;
- exports.fromFantasyMonad = I.fromFantasyMonad;
- exports.seemsArrayLike = seemsArrayLike;
- exports.Select = Select;
- exports.toFunction = toFunction;
- exports.assign = assign;
- exports.disperse = disperse;
- exports.modify = modify;
- exports.modifyAsync = modifyAsync;
- exports.remove = remove;
- exports.set = set;
- exports.traverse = traverse;
- exports.compose = compose;
- exports.flat = flat;
- exports.lazy = lazy;
- exports.choices = choices;
- exports.choose = choose;
- exports.cond = cond;
- exports.condOf = condOf;
- exports.ifElse = ifElse;
- exports.orElse = orElse;
- exports.chain = chain;
- exports.choice = choice;
- exports.unless = unless;
- exports.when = when;
- exports.optional = optional;
- exports.zero = zero;
- exports.mapIx = mapIx;
- exports.setIx = setIx;
- exports.tieIx = tieIx;
- exports.joinIx = joinIx;
- exports.reIx = reIx;
- exports.skipIx = skipIx;
- exports.getLog = getLog;
- exports.log = log;
- exports.transform = transform;
- exports.transformAsync = transformAsync;
- exports.seq = seq;
- exports.branchOr = branchOr;
- exports.branch = branch;
- exports.branches = branches;
- exports.elems = elems;
- exports.elemsTotal = elemsTotal;
- exports.entries = entries;
- exports.keys = keys;
- exports.keysEverywhere = keysEverywhere;
- exports.subseq = subseq;
- exports.limit = limit;
- exports.offset = offset;
- exports.matches = matches;
- exports.values = values;
- exports.children = children;
- exports.flatten = flatten;
- exports.query = query;
- exports.satisfying = satisfying;
- exports.leafs = leafs;
- exports.whereEq = whereEq;
- exports.all = all;
- exports.and = and$1;
- exports.all1 = all1;
- exports.and1 = and1;
- exports.any = any;
- exports.collectAs = collectAs;
- exports.collect = collect;
- exports.collectTotalAs = collectTotalAs;
- exports.collectTotal = collectTotal;
- exports.concatAs = concatAs;
- exports.concat = concat;
- exports.countIf = countIf;
- exports.count = count;
- exports.countsAs = countsAs;
- exports.counts = counts;
- exports.foldl = foldl;
- exports.foldr = foldr;
- exports.forEach = forEach;
- exports.forEachWith = forEachWith;
- exports.get = get;
- exports.getAs = getAs;
- exports.isDefined = isDefined;
- exports.isEmpty = isEmpty;
- exports.joinAs = joinAs;
- exports.join = join;
- exports.maximumBy = maximumBy;
- exports.maximum = maximum;
- exports.meanAs = meanAs;
- exports.mean = mean;
- exports.minimumBy = minimumBy;
- exports.minimum = minimum;
- exports.none = none;
- exports.or = or$1;
- exports.productAs = productAs;
- exports.product = product;
- exports.select = select;
- exports.selectAs = selectAs;
- exports.sumAs = sumAs;
- exports.sum = sum;
- exports.foldTraversalLens = foldTraversalLens;
- exports.getter = getter;
- exports.lens = lens;
- exports.partsOf = partsOf;
- exports.setter = setter;
- exports.defaults = defaults;
- exports.define = define;
- exports.normalize = normalize;
- exports.required = required;
- exports.reread = reread;
- exports.rewrite = rewrite;
- exports.filter = filter;
- exports.find = find;
- exports.findWith = findWith;
- exports.first = first;
- exports.index = index;
- exports.last = last;
- exports.prefix = prefix;
- exports.slice = slice;
- exports.suffix = suffix;
- exports.pickIn = pickIn;
- exports.prop = prop;
- exports.props = props;
- exports.propsExcept = propsExcept;
- exports.propsOf = propsOf;
- exports.removable = removable;
- exports.valueOr = valueOr;
- exports.pick = pick;
- exports.replace = replace$1;
- exports.appendTo = appendTo;
- exports.append = append;
- exports.assignTo = assignTo;
- exports.prependTo = prependTo;
- exports.appendOp = appendOp;
- exports.assignOp = assignOp;
- exports.modifyOp = modifyOp;
- exports.prependOp = prependOp;
- exports.setOp = setOp;
- exports.removeOp = removeOp;
- exports.cross = cross;
- exports.getInverse = getInverse;
- exports.iso = iso;
- exports._ = _;
- exports.mapping = mapping;
- exports.mappings = mappings;
- exports.pattern = pattern;
- exports.patterns = patterns;
- exports.alternatives = alternatives;
- exports.applyAt = applyAt;
- exports.attemptEveryDown = attemptEveryDown;
- exports.attemptEveryUp = attemptEveryUp;
- exports.attemptSomeDown = attemptSomeDown;
- exports.conjugate = conjugate;
- exports.inverse = inverse;
- exports.iterate = iterate;
- exports.orAlternatively = orAlternatively;
- exports.fold = fold;
- exports.unfold = unfold;
- exports.complement = complement;
- exports.identity = identity;
- exports.is = is;
- exports.subset = subset;
- exports.array = array;
- exports.arrays = arrays;
- exports.indexed = indexed;
- exports.reverse = reverse;
- exports.singleton = singleton;
- exports.groupBy = groupBy;
- exports.ungroupBy = ungroupBy;
- exports.zipWith1 = zipWith1;
- exports.unzipWith1 = unzipWith1;
- exports.disjoint = disjoint;
- exports.keyed = keyed;
- exports.multikeyed = multikeyed;
- exports.json = json;
- exports.uri = uri;
- exports.uriComponent = uriComponent;
- exports.dropPrefix = dropPrefix;
- exports.dropSuffix = dropSuffix;
- exports.replaces = replaces;
- exports.split = split;
- exports.uncouple = uncouple;
- exports.querystring = querystring;
- exports.add = add$1;
- exports.divide = divide;
- exports.multiply = multiply$1;
- exports.negate = negate$1;
- exports.subtract = subtract;
- exports.pointer = pointer;
|