{"version":3,"sources":["https://lively-kernel.org/lively4/BP2019RH1/src/internal/individuals-as-points/common/utils.js"],"names":["cloneDeep","getRandomInteger","min","max","Math","floor","random","deepCopy","obj","equalArrays","arrayA","arrayB","result","length","forEach","element","includes","generateUUID","dt","Date","getTime","uuid","replace","c","r","toString","fnmap","collapse","context","selector","cmd","targets","Array","from","getAllSubmorphs","target","classList"],"mappings":";;;;;;AAASA,e,8BAAAA,S;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF,eAASC,gBAAT,CAA0BC,GAA1B,EAA+BC,GAA/B,EAAoC;AACzC,eAAOC,KAAKC,KAAL,CAAWD,KAAKE,MAAL,MAAiBH,MAAMD,GAAvB,CAAX,IAA0CA,GAAjD;AACD;;;;AAEM,eAASK,QAAT,CAAkBC,GAAlB,EAAuB;AAC5B,eAAOR,UAAUQ,GAAV,CAAP;AACD;;;;AAEM,eAASC,WAAT,CAAqBC,MAArB,EAA6BC,MAA7B,EAAqC;AAC1C,YAAIC,SAAS,IAAb;;AAEA,YAAIF,OAAOG,MAAP,IAAiBF,OAAOE,MAA5B,EAAoC;AAClCD,mBAAS,KAAT;AACD;;AAEDF,eAAOI,OAAP,CAAeC,WAAW;AACxB,cAAI,CAACJ,OAAOK,QAAP,CAAgBD,OAAhB,CAAL,EAA+B;AAC7BH,qBAAS,KAAT;AACD;AACF,SAJD;;AAMAD,eAAOG,OAAP,CAAeC,WAAW;AACxB,cAAG,CAACL,OAAOM,QAAP,CAAgBD,OAAhB,CAAJ,EAA8B;AAC5BH,qBAAS,KAAT;AACD;AACF,SAJD;;AAMA,eAAOA,MAAP;AACD;;;;AAEM,eAASK,YAAT,GAAuB;AAC1B,YAAIC,KAAK,IAAIC,IAAJ,GAAWC,OAAX,EAAT;AACA,YAAIC,OAAO,uCAAuCC,OAAvC,CAA+C,OAA/C,EAAwD,UAASC,CAAT,EAAY;AAC3E,cAAIC,IAAI,CAACN,KAAKd,KAAKE,MAAL,KAAc,EAApB,IAAwB,EAAxB,GAA6B,CAArC;AACAY,eAAKd,KAAKC,KAAL,CAAWa,KAAG,EAAd,CAAL;AACA,iBAAO,CAACK,KAAG,GAAH,GAASC,CAAT,GAAaA,IAAE,GAAF,GAAM,GAApB,EAA0BC,QAA1B,CAAmC,EAAnC,CAAP;AACH,SAJU,CAAX;AAKA,eAAOJ,IAAP;AACH;;;;AAED,YAAMK,QAAQ;AACZ,kBAAU,QADE;AAEV,gBAAQ,KAFE;AAGV,gBAAQ;AAHE,OAAd;;;;;;;;;;;;;;;AAMO,UAAIC,WAAW,CAACC,OAAD,EAAUC,QAAV,EAAoBC,GAApB,KAA4B;AAChD,cAAMC,UAAUC,MAAMC,IAAN,CAAWL,QAAQM,eAAR,CAAwBL,QAAxB,CAAX,CAAhB;AACAE,gBAAQjB,OAAR,CAAgBqB,UAAU;AACxBA,iBAAOC,SAAP,CAAiBV,MAAMI,GAAN,CAAjB,EAA6B,MAA7B;AACD,SAFD;AAGD,OALM","file":"utils.js","sourcesContent":["import { cloneDeep } from \"src/external/lodash/lodash.js\"\n\nexport function getRandomInteger(min, max) {\n  return Math.floor(Math.random() * (max - min)) + min\n}\n\nexport function deepCopy(obj) {\n  return cloneDeep(obj)\n}\n\nexport function equalArrays(arrayA, arrayB) {\n  let result = true\n  \n  if (arrayA.length != arrayB.length) {\n    result = false\n  }\n\n  arrayA.forEach(element => {\n    if (!arrayB.includes(element)) {\n      result = false\n    }\n  })\n\n  arrayB.forEach(element => {\n    if(!arrayA.includes(element)) {\n      result = false\n    }\n  })\n  \n  return result\n}\n\nexport function generateUUID(){\n    var dt = new Date().getTime();\n    var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\n        var r = (dt + Math.random()*16)%16 | 0;\n        dt = Math.floor(dt/16);\n        return (c=='x' ? r :(r&0x3|0x8)).toString(16);\n    });\n    return uuid;\n}\n\nconst fnmap = {\n  'toggle': 'toggle',\n    'show': 'add',\n    'hide': 'remove'\n};\n\nexport var collapse = (context, selector, cmd) => {\n  const targets = Array.from(context.getAllSubmorphs(selector));\n  targets.forEach(target => {\n    target.classList[fnmap[cmd]]('show');\n  });\n}"]}