@bbn/bbn 1.0.59 → 1.0.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_.js +1 -1
- package/dist/bundle.d.ts +3804 -242
- package/dist/bundle.js +4062 -501
- package/dist/db.js +3 -3
- package/dist/fn/ajax/_addLoader.d.ts +16 -0
- package/dist/fn/ajax/_addLoader.js +51 -0
- package/dist/fn/ajax/_deleteLoader.d.ts +16 -0
- package/dist/fn/ajax/_deleteLoader.js +39 -0
- package/dist/fn/ajax/abort.d.ts +24 -0
- package/dist/fn/ajax/abort.js +36 -0
- package/dist/fn/ajax/abortURL.d.ts +22 -0
- package/dist/fn/ajax/abortURL.js +33 -0
- package/dist/fn/ajax/ajax.d.ts +58 -0
- package/dist/fn/ajax/ajax.js +170 -0
- package/dist/fn/ajax/callback.d.ts +37 -0
- package/dist/fn/ajax/callback.js +117 -0
- package/dist/fn/ajax/download.d.ts +30 -0
- package/dist/fn/ajax/download.js +64 -0
- package/dist/fn/ajax/downloadContent.d.ts +28 -0
- package/dist/fn/ajax/downloadContent.js +74 -0
- package/dist/fn/ajax/getLoader.d.ts +37 -0
- package/dist/fn/ajax/getLoader.js +44 -0
- package/dist/fn/ajax/getRequestId.d.ts +50 -0
- package/dist/fn/ajax/getRequestId.js +62 -0
- package/dist/fn/ajax/link.d.ts +26 -0
- package/dist/fn/ajax/link.js +129 -0
- package/dist/fn/ajax/post.d.ts +35 -0
- package/dist/fn/ajax/post.js +45 -0
- package/dist/fn/ajax/postOut.d.ts +21 -0
- package/dist/fn/ajax/postOut.js +49 -0
- package/dist/fn/ajax/setNavigationVars.d.ts +25 -0
- package/dist/fn/ajax/setNavigationVars.js +80 -0
- package/dist/fn/ajax/treatAjaxArguments.d.ts +53 -0
- package/dist/fn/ajax/treatAjaxArguments.js +127 -0
- package/dist/fn/ajax/upload.d.ts +18 -0
- package/dist/fn/ajax/upload.js +52 -0
- package/dist/fn/browser/copy.d.ts +15 -0
- package/dist/fn/browser/copy.js +50 -0
- package/dist/fn/browser/eraseCookie.d.ts +15 -0
- package/dist/fn/browser/eraseCookie.js +17 -0
- package/dist/fn/browser/error.d.ts +14 -0
- package/dist/fn/browser/error.js +29 -0
- package/dist/fn/browser/getBrowserName.d.ts +9 -0
- package/dist/fn/browser/getBrowserName.js +28 -0
- package/dist/fn/browser/getBrowserVersion.d.ts +9 -0
- package/dist/fn/browser/getBrowserVersion.js +29 -0
- package/dist/fn/browser/getCookie.d.ts +16 -0
- package/dist/fn/browser/getCookie.js +32 -0
- package/dist/fn/browser/getDeviceType.d.ts +14 -0
- package/dist/fn/browser/getDeviceType.js +23 -0
- package/dist/fn/browser/getEventData.d.ts +16 -0
- package/dist/fn/browser/getEventData.js +116 -0
- package/dist/fn/browser/happy.d.ts +14 -0
- package/dist/fn/browser/happy.js +22 -0
- package/dist/fn/browser/history.d.ts +2 -0
- package/dist/fn/browser/history.js +4 -0
- package/dist/fn/browser/info.d.ts +10 -0
- package/dist/fn/browser/info.js +19 -0
- package/dist/fn/browser/isActiveInterface.d.ts +14 -0
- package/dist/fn/browser/isActiveInterface.js +20 -0
- package/dist/fn/browser/isDesktopDevice.d.ts +14 -0
- package/dist/fn/browser/isDesktopDevice.js +17 -0
- package/dist/fn/browser/isFocused.d.ts +21 -0
- package/dist/fn/browser/isFocused.js +23 -0
- package/dist/fn/browser/isMobile.d.ts +14 -0
- package/dist/fn/browser/isMobile.js +18 -0
- package/dist/fn/browser/isMobileDevice.d.ts +2 -0
- package/dist/fn/browser/isMobileDevice.js +5 -0
- package/dist/fn/browser/isTabletDevice.d.ts +14 -0
- package/dist/fn/browser/isTabletDevice.js +17 -0
- package/dist/fn/browser/log.d.ts +15 -0
- package/dist/fn/browser/log.js +46 -0
- package/dist/fn/browser/replaceSelection.d.ts +2 -0
- package/dist/fn/browser/replaceSelection.js +42 -0
- package/dist/fn/browser/selectElementText.d.ts +21 -0
- package/dist/fn/browser/selectElementText.js +42 -0
- package/dist/fn/browser/setCookie.d.ts +16 -0
- package/dist/fn/browser/setCookie.js +25 -0
- package/dist/fn/browser/toggleFullScreen.d.ts +2 -0
- package/dist/fn/browser/toggleFullScreen.js +39 -0
- package/dist/fn/browser/warning.d.ts +14 -0
- package/dist/fn/browser/warning.js +24 -0
- package/dist/fn/convert/arrayBuffer2String.d.ts +2 -0
- package/dist/fn/convert/arrayBuffer2String.js +4 -0
- package/dist/fn/convert/canvasToImage.d.ts +16 -0
- package/dist/fn/convert/canvasToImage.js +20 -0
- package/dist/fn/convert/colorToHex.d.ts +20 -0
- package/dist/fn/convert/colorToHex.js +24 -0
- package/dist/fn/convert/fromXml.d.ts +12 -0
- package/dist/fn/convert/fromXml.js +54 -0
- package/dist/fn/convert/hex2rgb.d.ts +24 -0
- package/dist/fn/convert/hex2rgb.js +29 -0
- package/dist/fn/convert/imageToCanvas.d.ts +15 -0
- package/dist/fn/convert/imageToCanvas.js +21 -0
- package/dist/fn/convert/imgToBase64.d.ts +2 -0
- package/dist/fn/convert/imgToBase64.js +7 -0
- package/dist/fn/convert/rgb2hex.d.ts +20 -0
- package/dist/fn/convert/rgb2hex.js +28 -0
- package/dist/fn/convert/string2ArrayBuffer.d.ts +2 -0
- package/dist/fn/convert/string2ArrayBuffer.js +9 -0
- package/dist/fn/convert/toCSV.d.ts +26 -0
- package/dist/fn/convert/toCSV.js +64 -0
- package/dist/fn/datetime/calendar.d.ts +2 -0
- package/dist/fn/datetime/calendar.js +23 -0
- package/dist/fn/datetime/chrono.d.ts +25 -0
- package/dist/fn/datetime/chrono.js +45 -0
- package/dist/fn/datetime/date.d.ts +18 -0
- package/dist/fn/datetime/date.js +44 -0
- package/dist/fn/datetime/dateSQL.d.ts +20 -0
- package/dist/fn/datetime/dateSQL.js +26 -0
- package/dist/fn/datetime/daysInMonth.d.ts +17 -0
- package/dist/fn/datetime/daysInMonth.js +24 -0
- package/dist/fn/datetime/fdate.d.ts +11 -0
- package/dist/fn/datetime/fdate.js +28 -0
- package/dist/fn/datetime/fdatetime.d.ts +9 -0
- package/dist/fn/datetime/fdatetime.js +30 -0
- package/dist/fn/datetime/formatDate.d.ts +2 -0
- package/dist/fn/datetime/formatDate.js +4 -0
- package/dist/fn/datetime/ftime.d.ts +9 -0
- package/dist/fn/datetime/ftime.js +21 -0
- package/dist/fn/datetime/getDay.d.ts +11 -0
- package/dist/fn/datetime/getDay.js +26 -0
- package/dist/fn/datetime/timestamp.d.ts +15 -0
- package/dist/fn/datetime/timestamp.js +18 -0
- package/dist/fn/default/defaultAjaxAbortFunction.d.ts +2 -0
- package/dist/fn/default/defaultAjaxAbortFunction.js +5 -0
- package/dist/fn/default/defaultAjaxErrorFunction.d.ts +2 -0
- package/dist/fn/default/defaultAjaxErrorFunction.js +4 -0
- package/dist/fn/default/defaultAlertFunction.d.ts +2 -0
- package/dist/fn/default/defaultAlertFunction.js +5 -0
- package/dist/fn/default/defaultConfirmFunction.d.ts +2 -0
- package/dist/fn/default/defaultConfirmFunction.js +14 -0
- package/dist/fn/default/defaultEndLoadingFunction.d.ts +2 -0
- package/dist/fn/default/defaultEndLoadingFunction.js +4 -0
- package/dist/fn/default/defaultErrorFunction.d.ts +2 -0
- package/dist/fn/default/defaultErrorFunction.js +5 -0
- package/dist/fn/default/defaultHistoryFunction.d.ts +2 -0
- package/dist/fn/default/defaultHistoryFunction.js +4 -0
- package/dist/fn/default/defaultLinkFunction.d.ts +2 -0
- package/dist/fn/default/defaultLinkFunction.js +4 -0
- package/dist/fn/default/defaultPostLinkFunction.d.ts +2 -0
- package/dist/fn/default/defaultPostLinkFunction.js +4 -0
- package/dist/fn/default/defaultPreLinkFunction.d.ts +2 -0
- package/dist/fn/default/defaultPreLinkFunction.js +4 -0
- package/dist/fn/default/defaultResizeFunction.d.ts +2 -0
- package/dist/fn/default/defaultResizeFunction.js +4 -0
- package/dist/fn/default/defaultStartLoadingFunction.d.ts +2 -0
- package/dist/fn/default/defaultStartLoadingFunction.js +4 -0
- package/dist/fn/form/addInputs.d.ts +43 -0
- package/dist/fn/form/addInputs.js +81 -0
- package/dist/fn/form/fieldValue.d.ts +12 -0
- package/dist/fn/form/fieldValue.js +34 -0
- package/dist/fn/form/formdata.d.ts +45 -0
- package/dist/fn/form/formdata.js +95 -0
- package/dist/fn/form/objectToFormData.d.ts +12 -0
- package/dist/fn/form/objectToFormData.js +45 -0
- package/dist/fn/form/submit.d.ts +20 -0
- package/dist/fn/form/submit.js +51 -0
- package/dist/fn/html/adjustHeight.d.ts +2 -0
- package/dist/fn/html/adjustHeight.js +10 -0
- package/dist/fn/html/adjustSize.d.ts +2 -0
- package/dist/fn/html/adjustSize.js +21 -0
- package/dist/fn/html/adjustWidth.d.ts +2 -0
- package/dist/fn/html/adjustWidth.js +10 -0
- package/dist/fn/html/getAllTags.d.ts +6 -0
- package/dist/fn/html/getAllTags.js +9 -0
- package/dist/fn/html/getAncestors.d.ts +2 -0
- package/dist/fn/html/getAncestors.js +25 -0
- package/dist/fn/html/getAttributes.d.ts +6 -0
- package/dist/fn/html/getAttributes.js +16 -0
- package/dist/fn/html/getHTMLOfSelection.d.ts +2 -0
- package/dist/fn/html/getHTMLOfSelection.js +18 -0
- package/dist/fn/html/getHtml.d.ts +2 -0
- package/dist/fn/html/getHtml.js +9 -0
- package/dist/fn/html/getPath.d.ts +10 -0
- package/dist/fn/html/getPath.js +50 -0
- package/dist/fn/html/getText.d.ts +2 -0
- package/dist/fn/html/getText.js +4 -0
- package/dist/fn/html/html2text.d.ts +17 -0
- package/dist/fn/html/html2text.js +22 -0
- package/dist/fn/html/isInside.d.ts +2 -0
- package/dist/fn/html/isInside.js +23 -0
- package/dist/fn/html/makeReactive.d.ts +2 -0
- package/dist/fn/html/makeReactive.js +185 -0
- package/dist/fn/html/selector.d.ts +10 -0
- package/dist/fn/html/selector.js +12 -0
- package/dist/fn/init.d.ts +13 -0
- package/dist/fn/init.js +25 -12
- package/dist/fn/loop/each.d.ts +33 -0
- package/dist/fn/loop/each.js +54 -0
- package/dist/fn/loop/fori.d.ts +36 -0
- package/dist/fn/loop/fori.js +53 -0
- package/dist/fn/loop/forir.d.ts +36 -0
- package/dist/fn/loop/forir.js +53 -0
- package/dist/fn/loop/iterate.d.ts +22 -0
- package/dist/fn/loop/iterate.js +36 -0
- package/dist/fn/loop/riterate.d.ts +21 -0
- package/dist/fn/loop/riterate.js +24 -0
- package/dist/fn/misc/analyzeFunction.d.ts +11 -0
- package/dist/fn/misc/analyzeFunction.js +141 -0
- package/dist/fn/misc/getTimeoff.d.ts +14 -0
- package/dist/fn/misc/getTimeoff.js +19 -0
- package/dist/fn/misc/money.d.ts +23 -0
- package/dist/fn/misc/money.js +122 -0
- package/dist/fn/misc/percent.d.ts +23 -0
- package/dist/fn/misc/percent.js +25 -0
- package/dist/fn/misc/randomInt.d.ts +22 -0
- package/dist/fn/misc/randomInt.js +24 -0
- package/dist/fn/misc/roundDecimal.d.ts +11 -0
- package/dist/fn/misc/roundDecimal.js +13 -0
- package/dist/fn/misc/translate.d.ts +2 -0
- package/dist/fn/misc/translate.js +8 -0
- package/dist/fn/object/_compareValues.d.ts +40 -0
- package/dist/fn/object/_compareValues.js +78 -0
- package/dist/fn/object/arrayFromProp.d.ts +33 -0
- package/dist/fn/object/arrayFromProp.js +41 -0
- package/dist/fn/object/autoExtend.d.ts +33 -0
- package/dist/fn/object/autoExtend.js +44 -0
- package/dist/fn/object/checkProps.d.ts +2 -0
- package/dist/fn/object/checkProps.js +5 -0
- package/dist/fn/object/checkPropsDetails.d.ts +2 -0
- package/dist/fn/object/checkPropsDetails.js +53 -0
- package/dist/fn/object/checkPropsOrDie.d.ts +2 -0
- package/dist/fn/object/checkPropsOrDie.js +9 -0
- package/dist/fn/object/circularReplacer.d.ts +7 -0
- package/dist/fn/object/circularReplacer.js +39 -0
- package/dist/fn/object/clone.d.ts +19 -0
- package/dist/fn/object/clone.js +33 -0
- package/dist/fn/object/compare.d.ts +53 -0
- package/dist/fn/object/compare.js +150 -0
- package/dist/fn/object/compareConditions.d.ts +46 -0
- package/dist/fn/object/compareConditions.js +86 -0
- package/dist/fn/object/count.d.ts +56 -0
- package/dist/fn/object/count.js +59 -0
- package/dist/fn/object/createObject.d.ts +2 -0
- package/dist/fn/object/createObject.js +9 -0
- package/dist/fn/object/deepPath.d.ts +57 -0
- package/dist/fn/object/deepPath.js +78 -0
- package/dist/fn/object/deleteProp.d.ts +8 -0
- package/dist/fn/object/deleteProp.js +13 -0
- package/dist/fn/object/diffObj.d.ts +79 -0
- package/dist/fn/object/diffObj.js +168 -0
- package/dist/fn/object/extend.d.ts +87 -0
- package/dist/fn/object/extend.js +158 -0
- package/dist/fn/object/extendOut.d.ts +18 -0
- package/dist/fn/object/extendOut.js +40 -0
- package/dist/fn/object/filter.d.ts +50 -0
- package/dist/fn/object/filter.js +94 -0
- package/dist/fn/object/filterToConditions.d.ts +48 -0
- package/dist/fn/object/filterToConditions.js +68 -0
- package/dist/fn/object/findAll.d.ts +57 -0
- package/dist/fn/object/findAll.js +73 -0
- package/dist/fn/object/getField.d.ts +30 -0
- package/dist/fn/object/getField.js +37 -0
- package/dist/fn/object/getFieldValues.d.ts +30 -0
- package/dist/fn/object/getFieldValues.js +41 -0
- package/dist/fn/object/getProp.d.ts +8 -0
- package/dist/fn/object/getProp.js +13 -0
- package/dist/fn/object/getProperty.d.ts +30 -0
- package/dist/fn/object/getProperty.js +39 -0
- package/dist/fn/object/getRow.d.ts +42 -0
- package/dist/fn/object/getRow.js +49 -0
- package/dist/fn/object/map.d.ts +74 -0
- package/dist/fn/object/map.js +83 -0
- package/dist/fn/object/move.d.ts +34 -0
- package/dist/fn/object/move.js +43 -0
- package/dist/fn/object/multiorder.d.ts +40 -0
- package/dist/fn/object/multiorder.js +60 -0
- package/dist/fn/object/numProperties.d.ts +31 -0
- package/dist/fn/object/numProperties.js +36 -0
- package/dist/fn/object/order.d.ts +28 -0
- package/dist/fn/object/order.js +36 -0
- package/dist/fn/object/pickValue.d.ts +2 -0
- package/dist/fn/object/pickValue.js +6 -0
- package/dist/fn/object/removeEmpty.d.ts +18 -0
- package/dist/fn/object/removeEmpty.js +47 -0
- package/dist/fn/object/removePrivateProp.d.ts +24 -0
- package/dist/fn/object/removePrivateProp.js +41 -0
- package/dist/fn/object/search.d.ts +101 -0
- package/dist/fn/object/search.js +177 -0
- package/dist/fn/object/setProp.d.ts +11 -0
- package/dist/fn/object/setProp.js +17 -0
- package/dist/fn/object/setProperty.d.ts +30 -0
- package/dist/fn/object/setProperty.js +50 -0
- package/dist/fn/object/shortenObj.d.ts +25 -0
- package/dist/fn/object/shortenObj.js +40 -0
- package/dist/fn/object/shuffle.d.ts +2 -0
- package/dist/fn/object/shuffle.js +13 -0
- package/dist/fn/object/stat.d.ts +2 -0
- package/dist/fn/object/stat.js +49 -0
- package/dist/fn/object/sum.d.ts +46 -0
- package/dist/fn/object/sum.js +57 -0
- package/dist/fn/object/unique.d.ts +18 -0
- package/dist/fn/object/unique.js +22 -0
- package/dist/fn/string/baseName.d.ts +24 -0
- package/dist/fn/string/baseName.js +39 -0
- package/dist/fn/string/br2nl.d.ts +19 -0
- package/dist/fn/string/br2nl.js +22 -0
- package/dist/fn/string/camelToCss.d.ts +18 -0
- package/dist/fn/string/camelToCss.js +26 -0
- package/dist/fn/string/camelize.d.ts +20 -0
- package/dist/fn/string/camelize.js +27 -0
- package/dist/fn/string/correctCase.d.ts +18 -0
- package/dist/fn/string/correctCase.js +20 -0
- package/dist/fn/string/crc32.d.ts +2 -0
- package/dist/fn/string/crc32.js +20 -0
- package/dist/fn/string/dirName.d.ts +17 -0
- package/dist/fn/string/dirName.js +33 -0
- package/dist/fn/string/escapeDquotes.d.ts +2 -0
- package/dist/fn/string/escapeDquotes.js +8 -0
- package/dist/fn/string/escapeRegExp.d.ts +19 -0
- package/dist/fn/string/escapeRegExp.js +21 -0
- package/dist/fn/string/escapeSquotes.d.ts +2 -0
- package/dist/fn/string/escapeSquotes.js +8 -0
- package/dist/fn/string/escapeTicks.d.ts +2 -0
- package/dist/fn/string/escapeTicks.js +8 -0
- package/dist/fn/string/escapeUrl.d.ts +9 -0
- package/dist/fn/string/escapeUrl.js +47 -0
- package/dist/fn/string/fileExt.d.ts +38 -0
- package/dist/fn/string/fileExt.js +47 -0
- package/dist/fn/string/format.d.ts +2 -0
- package/dist/fn/string/format.js +14 -0
- package/dist/fn/string/formatBytes.d.ts +14 -0
- package/dist/fn/string/formatBytes.js +20 -0
- package/dist/fn/string/formatSize.d.ts +2 -0
- package/dist/fn/string/formatSize.js +12 -0
- package/dist/fn/string/hash.d.ts +7 -0
- package/dist/fn/string/hash.js +42 -0
- package/dist/fn/string/md5.d.ts +22 -0
- package/dist/fn/string/md5.js +142 -0
- package/dist/fn/string/nl2br.d.ts +17 -0
- package/dist/fn/string/nl2br.js +20 -0
- package/dist/fn/string/printf.d.ts +10 -0
- package/dist/fn/string/printf.js +15 -0
- package/dist/fn/string/quotes2html.d.ts +30 -0
- package/dist/fn/string/quotes2html.js +39 -0
- package/dist/fn/string/randomString.d.ts +28 -0
- package/dist/fn/string/randomString.js +72 -0
- package/dist/fn/string/removeAccents.d.ts +17 -0
- package/dist/fn/string/removeAccents.js +30 -0
- package/dist/fn/string/removeExtraSpaces.d.ts +7 -0
- package/dist/fn/string/removeExtraSpaces.js +9 -0
- package/dist/fn/string/removeHtmlComments.d.ts +2 -0
- package/dist/fn/string/removeHtmlComments.js +8 -0
- package/dist/fn/string/removeTrailingChars.d.ts +11 -0
- package/dist/fn/string/removeTrailingChars.js +25 -0
- package/dist/fn/string/repeat.d.ts +16 -0
- package/dist/fn/string/repeat.js +18 -0
- package/dist/fn/string/replaceAll.d.ts +23 -0
- package/dist/fn/string/replaceAll.js +29 -0
- package/dist/fn/string/sanitize.d.ts +17 -0
- package/dist/fn/string/sanitize.js +34 -0
- package/dist/fn/string/shorten.d.ts +27 -0
- package/dist/fn/string/shorten.js +42 -0
- package/dist/fn/string/simpleHash.d.ts +2 -0
- package/dist/fn/string/simpleHash.js +8 -0
- package/dist/fn/string/simpleHash1.d.ts +2 -0
- package/dist/fn/string/simpleHash1.js +10 -0
- package/dist/fn/string/simpleHash2.d.ts +2 -0
- package/dist/fn/string/simpleHash2.js +10 -0
- package/dist/fn/string/substr.d.ts +23 -0
- package/dist/fn/string/substr.js +38 -0
- package/dist/fn/string/trim.d.ts +2 -0
- package/dist/fn/string/trim.js +20 -0
- package/dist/fn/string/uniqString.d.ts +18 -0
- package/dist/fn/string/uniqString.js +49 -0
- package/dist/fn/style/addColors.d.ts +17 -0
- package/dist/fn/style/addColors.js +76 -0
- package/dist/fn/style/addStyle.d.ts +12 -0
- package/dist/fn/style/addStyle.js +20 -0
- package/dist/fn/style/animateCss.d.ts +13 -0
- package/dist/fn/style/animateCss.js +31 -0
- package/dist/fn/style/center.d.ts +16 -0
- package/dist/fn/style/center.js +40 -0
- package/dist/fn/style/cssExists.d.ts +12 -0
- package/dist/fn/style/cssExists.js +40 -0
- package/dist/fn/style/getCssVar.d.ts +7 -0
- package/dist/fn/style/getCssVar.js +12 -0
- package/dist/fn/style/getScrollBarSize.d.ts +2 -0
- package/dist/fn/style/getScrollBarSize.js +25 -0
- package/dist/fn/style/lightenDarkenHex.d.ts +20 -0
- package/dist/fn/style/lightenDarkenHex.js +45 -0
- package/dist/fn/style/outerHeight.d.ts +11 -0
- package/dist/fn/style/outerHeight.js +19 -0
- package/dist/fn/style/outerWidth.d.ts +10 -0
- package/dist/fn/style/outerWidth.js +16 -0
- package/dist/fn/style/resize.d.ts +2 -0
- package/dist/fn/style/resize.js +39 -0
- package/dist/fn/style/setCssVar.d.ts +8 -0
- package/dist/fn/style/setCssVar.js +14 -0
- package/dist/fn/type/checkType.d.ts +2 -0
- package/dist/fn/type/checkType.js +59 -0
- package/dist/fn/type/isArray.d.ts +14 -0
- package/dist/fn/type/isArray.js +23 -0
- package/dist/fn/type/isBlob.d.ts +9 -0
- package/dist/fn/type/isBlob.js +18 -0
- package/dist/fn/type/isBoolean.d.ts +16 -0
- package/dist/fn/type/isBoolean.js +25 -0
- package/dist/fn/type/isCanvas.d.ts +16 -0
- package/dist/fn/type/isCanvas.js +25 -0
- package/dist/fn/type/isColor.d.ts +31 -0
- package/dist/fn/type/isColor.js +45 -0
- package/dist/fn/type/isComment.d.ts +14 -0
- package/dist/fn/type/isComment.js +23 -0
- package/dist/fn/type/isCp.d.ts +2 -0
- package/dist/fn/type/isCp.js +17 -0
- package/dist/fn/type/isDate.d.ts +20 -0
- package/dist/fn/type/isDate.js +29 -0
- package/dist/fn/type/isDimension.d.ts +11 -0
- package/dist/fn/type/isDimension.js +24 -0
- package/dist/fn/type/isDom.d.ts +14 -0
- package/dist/fn/type/isDom.js +23 -0
- package/dist/fn/type/isEmail.d.ts +23 -0
- package/dist/fn/type/isEmail.js +37 -0
- package/dist/fn/type/isEmpty.d.ts +41 -0
- package/dist/fn/type/isEmpty.js +57 -0
- package/dist/fn/type/isEvent.d.ts +9 -0
- package/dist/fn/type/isEvent.js +18 -0
- package/dist/fn/type/isFunction.d.ts +16 -0
- package/dist/fn/type/isFunction.js +25 -0
- package/dist/fn/type/isHostname.d.ts +2 -0
- package/dist/fn/type/isHostname.js +16 -0
- package/dist/fn/type/isIP.d.ts +2 -0
- package/dist/fn/type/isIP.js +12 -0
- package/dist/fn/type/isInt.d.ts +18 -0
- package/dist/fn/type/isInt.js +27 -0
- package/dist/fn/type/isIterable.d.ts +27 -0
- package/dist/fn/type/isIterable.js +39 -0
- package/dist/fn/type/isNull.d.ts +14 -0
- package/dist/fn/type/isNull.js +23 -0
- package/dist/fn/type/isNumber.d.ts +19 -0
- package/dist/fn/type/isNumber.js +30 -0
- package/dist/fn/type/isObject.d.ts +19 -0
- package/dist/fn/type/isObject.js +28 -0
- package/dist/fn/type/isPercent.d.ts +14 -0
- package/dist/fn/type/isPercent.js +23 -0
- package/dist/fn/type/isPrimitive.d.ts +18 -0
- package/dist/fn/type/isPrimitive.js +27 -0
- package/dist/fn/type/isPromise.d.ts +18 -0
- package/dist/fn/type/isPromise.js +27 -0
- package/dist/fn/type/isPropSize.d.ts +2 -0
- package/dist/fn/type/isPropSize.js +12 -0
- package/dist/fn/type/isSQLDate.d.ts +10 -0
- package/dist/fn/type/isSQLDate.js +20 -0
- package/dist/fn/type/isSame.d.ts +41 -0
- package/dist/fn/type/isSame.js +72 -0
- package/dist/fn/type/isString.d.ts +14 -0
- package/dist/fn/type/isString.js +23 -0
- package/dist/fn/type/isSymbol.d.ts +15 -0
- package/dist/fn/type/isSymbol.js +24 -0
- package/dist/fn/type/isURL.d.ts +2 -0
- package/dist/fn/type/isURL.js +11 -0
- package/dist/fn/type/isValidDimension.d.ts +11 -0
- package/dist/fn/type/isValidDimension.js +24 -0
- package/dist/fn/type/isValidName.d.ts +27 -0
- package/dist/fn/type/isValidName.js +38 -0
- package/dist/fn/type/isValue.d.ts +26 -0
- package/dist/fn/type/isValue.js +36 -0
- package/dist/fn/type/isVue.d.ts +16 -0
- package/dist/fn/type/isVue.js +42 -0
- package/dist/fn.d.ts +4 -5
- package/dist/fn.js +226 -228
- package/package.json +1 -1
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { log } from '../browser/log';
|
|
2
|
+
import { createObject } from '../object/createObject';
|
|
3
|
+
import { isSymbol } from '../type/isSymbol';
|
|
4
|
+
import { isNumber } from '../type/isNumber';
|
|
5
|
+
import { isArray } from '../type/isArray';
|
|
6
|
+
import { warning } from '../browser/warning';
|
|
7
|
+
import { isFunction } from '../type/isFunction';
|
|
8
|
+
import { isSame } from '../type/isSame';
|
|
9
|
+
const makeReactive = function (obj, onSet, parent, parentProp) {
|
|
10
|
+
const parentString = parent?.$cid || '';
|
|
11
|
+
const prefix = '__bbn_' + (parentString ? parentString + '_' : '');
|
|
12
|
+
if (obj && typeof obj === 'object' && [undefined, Object, Array].includes(obj.constructor)) {
|
|
13
|
+
if (obj.__bbnIsProxy && obj.__bbnParent === parent) {
|
|
14
|
+
return obj;
|
|
15
|
+
}
|
|
16
|
+
if (parent && parent.$options && parent.$options.name === 'bbn-loadbar') {
|
|
17
|
+
log(['MAKING bbn-loadbar', obj]);
|
|
18
|
+
}
|
|
19
|
+
if (!obj.__bbnWatchers) {
|
|
20
|
+
Reflect.defineProperty(obj, '__bbnWatchers', {
|
|
21
|
+
value: createObject(),
|
|
22
|
+
writable: true,
|
|
23
|
+
configurable: true,
|
|
24
|
+
enumerable: false,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
const handler = {
|
|
28
|
+
get(target, key) {
|
|
29
|
+
const realValue = Reflect.get(target, key);
|
|
30
|
+
const realTarget = target.__bbnRoot || target;
|
|
31
|
+
if (isSymbol(key)) {
|
|
32
|
+
return Reflect.get(realTarget, key);
|
|
33
|
+
}
|
|
34
|
+
const propName = parentProp ? parentProp + '.' + key : key;
|
|
35
|
+
const hiddenKey = prefix + (isNumber(key) ? key.toString() : key);
|
|
36
|
+
if (['fill', 'pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'].includes(key) &&
|
|
37
|
+
isArray(target)) {
|
|
38
|
+
return function (...args) {
|
|
39
|
+
let res = realTarget[key](...args);
|
|
40
|
+
warning('DOING ARRAY STUFF');
|
|
41
|
+
log(target.__bbnParent);
|
|
42
|
+
onSet(target, 'length', parent);
|
|
43
|
+
return res;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
if (isFunction(realValue)) {
|
|
47
|
+
return realValue;
|
|
48
|
+
}
|
|
49
|
+
if (key === '__bbnRoot') {
|
|
50
|
+
let root = obj;
|
|
51
|
+
while (root && root?.__bbnTarget) {
|
|
52
|
+
root = root.__bbnTarget;
|
|
53
|
+
}
|
|
54
|
+
return root;
|
|
55
|
+
}
|
|
56
|
+
if (key === '__bbnIsProxy') {
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
if (key === '__bbnTarget') {
|
|
60
|
+
return target;
|
|
61
|
+
}
|
|
62
|
+
if (key === '__bbnParent') {
|
|
63
|
+
return parent;
|
|
64
|
+
}
|
|
65
|
+
if (key === '__bbnWatchers') {
|
|
66
|
+
return target.__bbnWatchers;
|
|
67
|
+
}
|
|
68
|
+
if (key.indexOf('__bbn_') === 0) {
|
|
69
|
+
return Reflect.get(target, key);
|
|
70
|
+
}
|
|
71
|
+
if (key === 'length' && isArray(target.__bbnRoot || target)) {
|
|
72
|
+
return realTarget.length;
|
|
73
|
+
}
|
|
74
|
+
if (!(key in target)) {
|
|
75
|
+
return realValue;
|
|
76
|
+
}
|
|
77
|
+
if (realValue &&
|
|
78
|
+
typeof realValue === 'object' &&
|
|
79
|
+
[undefined, Object, Array].includes(realValue.constructor)) {
|
|
80
|
+
if (realValue.__bbnIsProxy && realValue.__bbnParent === parent) {
|
|
81
|
+
return realTarget[hiddenKey];
|
|
82
|
+
}
|
|
83
|
+
if (!(hiddenKey in realTarget)) {
|
|
84
|
+
Reflect.defineProperty(realTarget, hiddenKey, {
|
|
85
|
+
value: makeReactive(realValue, onSet, parent, propName),
|
|
86
|
+
writable: true,
|
|
87
|
+
configurable: true,
|
|
88
|
+
enumerable: false,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
if (realTarget[hiddenKey].__bbnIsProxy && !realTarget.__bbnWatchers[parentString]) {
|
|
92
|
+
realTarget.__bbnWatchers[parentString] = propName;
|
|
93
|
+
}
|
|
94
|
+
return realTarget[hiddenKey];
|
|
95
|
+
}
|
|
96
|
+
return realValue;
|
|
97
|
+
},
|
|
98
|
+
set(target, key, value) {
|
|
99
|
+
if (isSymbol(key)) {
|
|
100
|
+
return Reflect.get(target, key, value);
|
|
101
|
+
}
|
|
102
|
+
const realTarget = target.__bbnRoot || target;
|
|
103
|
+
const propName = parentProp ? parentProp + '.' + key : key;
|
|
104
|
+
if (isSymbol(key)) {
|
|
105
|
+
return Reflect.get(target, key);
|
|
106
|
+
}
|
|
107
|
+
if (parent && parent.$options && parent.$options.name === 'bbn-loadbar') {
|
|
108
|
+
log(['Setting proxy prop in ' + parent.$options.name, target, key, value]);
|
|
109
|
+
}
|
|
110
|
+
if (!isSame(realTarget[key], value)) {
|
|
111
|
+
if (key.indexOf('__bbn_') === 0) {
|
|
112
|
+
Reflect.defineProperty(realTarget, key, {
|
|
113
|
+
value: makeReactive(value, onSet, parent, propName),
|
|
114
|
+
writable: true,
|
|
115
|
+
configurable: true,
|
|
116
|
+
enumerable: false,
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
if (value &&
|
|
121
|
+
typeof value === 'object' &&
|
|
122
|
+
[undefined, Object, Array].includes(value.constructor)) {
|
|
123
|
+
const hiddenKey = prefix + (isNumber(key) ? key.toString() : key);
|
|
124
|
+
Reflect.defineProperty(realTarget, hiddenKey, {
|
|
125
|
+
value: makeReactive(value, onSet, parent, propName),
|
|
126
|
+
writable: true,
|
|
127
|
+
configurable: true,
|
|
128
|
+
enumerable: false,
|
|
129
|
+
});
|
|
130
|
+
if (realTarget[hiddenKey].__bbnIsProxy && !realTarget.__bbnWatchers[parentString]) {
|
|
131
|
+
realTarget.__bbnWatchers[parentString] = propName;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
if (parent && parent.$options && parent.$options.name === 'bbn-loadbar') {
|
|
136
|
+
log([
|
|
137
|
+
'Setting proxy prop in ' +
|
|
138
|
+
parent.$options.name +
|
|
139
|
+
' ' +
|
|
140
|
+
(isNumber(key) ? key.toString() : key),
|
|
141
|
+
value,
|
|
142
|
+
target,
|
|
143
|
+
]);
|
|
144
|
+
}
|
|
145
|
+
Reflect.set(realTarget, key, value);
|
|
146
|
+
onSet(target, key, parent);
|
|
147
|
+
}
|
|
148
|
+
return true;
|
|
149
|
+
},
|
|
150
|
+
defineProperty(target, key, description) {
|
|
151
|
+
const realTarget = target;
|
|
152
|
+
const propName = parentProp ? parentProp + '.' + key : key;
|
|
153
|
+
if (key === '__bbnWatchers' || isSymbol(key) || key.indexOf('__bbn_') === 0) {
|
|
154
|
+
Reflect.defineProperty(realTarget, key, description);
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
const hiddenKey = prefix + (isNumber(key) ? key.toString() : key);
|
|
158
|
+
Reflect.defineProperty(realTarget, hiddenKey, {
|
|
159
|
+
value: makeReactive(description.value, onSet, parent, propName),
|
|
160
|
+
writable: true,
|
|
161
|
+
configurable: true,
|
|
162
|
+
enumerable: false,
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
onSet(target, key, parent);
|
|
166
|
+
return true;
|
|
167
|
+
},
|
|
168
|
+
deleteProperty(target, key) {
|
|
169
|
+
const realTarget = target;
|
|
170
|
+
if (key.indexOf('__bbn_') === 0) {
|
|
171
|
+
Reflect.deleteProperty(realTarget, key);
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
const hiddenKey = prefix + (isNumber(key) ? key.toString() : key);
|
|
175
|
+
Reflect.deleteProperty(realTarget, hiddenKey);
|
|
176
|
+
Reflect.deleteProperty(target, key);
|
|
177
|
+
}
|
|
178
|
+
return true;
|
|
179
|
+
},
|
|
180
|
+
};
|
|
181
|
+
return new Proxy(obj, handler);
|
|
182
|
+
}
|
|
183
|
+
return obj;
|
|
184
|
+
};
|
|
185
|
+
export { makeReactive };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @ignore
|
|
3
|
+
* @method selector
|
|
4
|
+
* @todo Add method description for selector
|
|
5
|
+
* @global
|
|
6
|
+
* @memberof bbn.fn
|
|
7
|
+
* @returns {*}
|
|
8
|
+
*/
|
|
9
|
+
const selector = function (ele) {
|
|
10
|
+
return typeof ele === "string" ? document.querySelector(ele) : ele;
|
|
11
|
+
};
|
|
12
|
+
export { selector };
|
package/dist/fn/init.d.ts
CHANGED
|
@@ -1,2 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Initializes the library bbn basing on the given configuration object.
|
|
3
|
+
* - Gives to the environment the dimension of the window.innerWidth and window.innerHeight
|
|
4
|
+
* - Defines the server's path (difference between the host and the current dir)
|
|
5
|
+
* - Adds the colors contained in bbn.var.colors to define the css classes for background and colors.
|
|
6
|
+
* - Adds the event listener to the document
|
|
7
|
+
* - Activates the history
|
|
8
|
+
* @method init
|
|
9
|
+
* @global
|
|
10
|
+
* @memberof bbn.fn
|
|
11
|
+
* @param {Object} cfg
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
1
14
|
declare const init: (cfg: any, force: any) => void;
|
|
2
15
|
export { init };
|
package/dist/fn/init.js
CHANGED
|
@@ -1,15 +1,28 @@
|
|
|
1
|
-
import { substr } from './substr';
|
|
2
|
-
import { each } from './each';
|
|
3
|
-
import { extend } from './extend';
|
|
4
|
-
import { addColors } from './addColors';
|
|
5
|
-
import { link } from './link';
|
|
6
|
-
import { submit } from './submit';
|
|
7
|
-
import { resize } from './resize';
|
|
8
|
-
import { isMobile } from './isMobile';
|
|
9
|
-
import { isTabletDevice } from './isTabletDevice';
|
|
10
|
-
import { defaultHistoryFunction } from './defaultHistoryFunction';
|
|
11
|
-
import { isFunction } from './isFunction';
|
|
12
|
-
import { log } from './log';
|
|
1
|
+
import { substr } from './string/substr';
|
|
2
|
+
import { each } from './loop/each';
|
|
3
|
+
import { extend } from './object/extend';
|
|
4
|
+
import { addColors } from './style/addColors';
|
|
5
|
+
import { link } from './ajax/link';
|
|
6
|
+
import { submit } from './form/submit';
|
|
7
|
+
import { resize } from './style/resize';
|
|
8
|
+
import { isMobile } from './browser/isMobile';
|
|
9
|
+
import { isTabletDevice } from './browser/isTabletDevice';
|
|
10
|
+
import { defaultHistoryFunction } from './default/defaultHistoryFunction';
|
|
11
|
+
import { isFunction } from './type/isFunction';
|
|
12
|
+
import { log } from './browser/log';
|
|
13
|
+
/**
|
|
14
|
+
* Initializes the library bbn basing on the given configuration object.
|
|
15
|
+
* - Gives to the environment the dimension of the window.innerWidth and window.innerHeight
|
|
16
|
+
* - Defines the server's path (difference between the host and the current dir)
|
|
17
|
+
* - Adds the colors contained in bbn.var.colors to define the css classes for background and colors.
|
|
18
|
+
* - Adds the event listener to the document
|
|
19
|
+
* - Activates the history
|
|
20
|
+
* @method init
|
|
21
|
+
* @global
|
|
22
|
+
* @memberof bbn.fn
|
|
23
|
+
* @param {Object} cfg
|
|
24
|
+
* @returns
|
|
25
|
+
*/
|
|
13
26
|
const init = function (cfg, force) {
|
|
14
27
|
let parts;
|
|
15
28
|
if (!bbn.env.isInit || force) {
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executes the provided function on each element of the given array.
|
|
3
|
+
*
|
|
4
|
+
* Returning false will stop the loop.
|
|
5
|
+
*
|
|
6
|
+
* @method each
|
|
7
|
+
* @global
|
|
8
|
+
* @example
|
|
9
|
+
* ```javascript
|
|
10
|
+
* let res = 0;
|
|
11
|
+
* bbn.fn.each([4, 5, 5, 10, 1, 2], d => {
|
|
12
|
+
* res += d;
|
|
13
|
+
* });
|
|
14
|
+
* // res = 27
|
|
15
|
+
* ```
|
|
16
|
+
* @example
|
|
17
|
+
* ```javascript
|
|
18
|
+
* let res = 0;
|
|
19
|
+
* bbn.fn.each([4, 5, 5, 10, 1, 2], d => {
|
|
20
|
+
* if (res >= 20) {
|
|
21
|
+
* return false;
|
|
22
|
+
* }
|
|
23
|
+
* res += d;
|
|
24
|
+
* });
|
|
25
|
+
* // res = 24
|
|
26
|
+
* ```
|
|
27
|
+
* @memberof bbn.fn
|
|
28
|
+
* @param {*} arr The array to loop on
|
|
29
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
30
|
+
* @returns {[Array, Object, void]}
|
|
31
|
+
*/
|
|
32
|
+
declare const each: (arr: any, fn: any) => any;
|
|
33
|
+
export { each };
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { isNumber } from "../type/isNumber";
|
|
2
|
+
import { isIterable } from "../type/isIterable";
|
|
3
|
+
import { iterate } from "./iterate";
|
|
4
|
+
/**
|
|
5
|
+
* Executes the provided function on each element of the given array.
|
|
6
|
+
*
|
|
7
|
+
* Returning false will stop the loop.
|
|
8
|
+
*
|
|
9
|
+
* @method each
|
|
10
|
+
* @global
|
|
11
|
+
* @example
|
|
12
|
+
* ```javascript
|
|
13
|
+
* let res = 0;
|
|
14
|
+
* bbn.fn.each([4, 5, 5, 10, 1, 2], d => {
|
|
15
|
+
* res += d;
|
|
16
|
+
* });
|
|
17
|
+
* // res = 27
|
|
18
|
+
* ```
|
|
19
|
+
* @example
|
|
20
|
+
* ```javascript
|
|
21
|
+
* let res = 0;
|
|
22
|
+
* bbn.fn.each([4, 5, 5, 10, 1, 2], d => {
|
|
23
|
+
* if (res >= 20) {
|
|
24
|
+
* return false;
|
|
25
|
+
* }
|
|
26
|
+
* res += d;
|
|
27
|
+
* });
|
|
28
|
+
* // res = 24
|
|
29
|
+
* ```
|
|
30
|
+
* @memberof bbn.fn
|
|
31
|
+
* @param {*} arr The array to loop on
|
|
32
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
33
|
+
* @returns {[Array, Object, void]}
|
|
34
|
+
*/
|
|
35
|
+
const each = function (arr, fn) {
|
|
36
|
+
if (isNumber(arr) && arr > 0) {
|
|
37
|
+
for (let i = 0; i < arr; i++) {
|
|
38
|
+
if (fn(i, i) === false) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (isIterable(arr)) {
|
|
45
|
+
for (let i = 0; i < arr.length; i++) {
|
|
46
|
+
if (fn(arr[i], i) === false) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return arr;
|
|
51
|
+
}
|
|
52
|
+
return iterate(arr, fn);
|
|
53
|
+
};
|
|
54
|
+
export { each };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executes the provided function on each element of the given array.
|
|
3
|
+
*
|
|
4
|
+
* A minimum and a maximum value can be provided, within the boundaries of the
|
|
5
|
+
* array's indexes. Returning false will stop the loop.
|
|
6
|
+
*
|
|
7
|
+
* @method fori
|
|
8
|
+
* @global
|
|
9
|
+
* @example
|
|
10
|
+
* ```javascript
|
|
11
|
+
* let res = 0;
|
|
12
|
+
* bbn.fn.fori([4, 5, 5, 10, 1, 2], d => {
|
|
13
|
+
* res += d;
|
|
14
|
+
* }, 3);
|
|
15
|
+
* // res = 24
|
|
16
|
+
* ```
|
|
17
|
+
* @example
|
|
18
|
+
* ```javascript
|
|
19
|
+
* let res = 0;
|
|
20
|
+
* bbn.fn.fori([4, 5, 5, 10, 1, 2], d => {
|
|
21
|
+
* if (res >= 20) {
|
|
22
|
+
* return false;
|
|
23
|
+
* }
|
|
24
|
+
* res += d;
|
|
25
|
+
* }, 4, 1);
|
|
26
|
+
* // res = 20
|
|
27
|
+
* ```
|
|
28
|
+
* @memberof bbn.fn
|
|
29
|
+
* @param {Array} arr The array to loop on
|
|
30
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
31
|
+
* @param {Number} max The index to which the loop will stop
|
|
32
|
+
* @param {Number} min The index at which the loop will start
|
|
33
|
+
* @returns {undefined}
|
|
34
|
+
*/
|
|
35
|
+
declare const fori: (arr: any[], fn: (a: any, i: number) => any, max?: number, min?: number) => void;
|
|
36
|
+
export { fori };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { isArray } from "../type/isArray";
|
|
2
|
+
import { isNumber } from "../type/isNumber";
|
|
3
|
+
/**
|
|
4
|
+
* Executes the provided function on each element of the given array.
|
|
5
|
+
*
|
|
6
|
+
* A minimum and a maximum value can be provided, within the boundaries of the
|
|
7
|
+
* array's indexes. Returning false will stop the loop.
|
|
8
|
+
*
|
|
9
|
+
* @method fori
|
|
10
|
+
* @global
|
|
11
|
+
* @example
|
|
12
|
+
* ```javascript
|
|
13
|
+
* let res = 0;
|
|
14
|
+
* bbn.fn.fori([4, 5, 5, 10, 1, 2], d => {
|
|
15
|
+
* res += d;
|
|
16
|
+
* }, 3);
|
|
17
|
+
* // res = 24
|
|
18
|
+
* ```
|
|
19
|
+
* @example
|
|
20
|
+
* ```javascript
|
|
21
|
+
* let res = 0;
|
|
22
|
+
* bbn.fn.fori([4, 5, 5, 10, 1, 2], d => {
|
|
23
|
+
* if (res >= 20) {
|
|
24
|
+
* return false;
|
|
25
|
+
* }
|
|
26
|
+
* res += d;
|
|
27
|
+
* }, 4, 1);
|
|
28
|
+
* // res = 20
|
|
29
|
+
* ```
|
|
30
|
+
* @memberof bbn.fn
|
|
31
|
+
* @param {Array} arr The array to loop on
|
|
32
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
33
|
+
* @param {Number} max The index to which the loop will stop
|
|
34
|
+
* @param {Number} min The index at which the loop will start
|
|
35
|
+
* @returns {undefined}
|
|
36
|
+
*/
|
|
37
|
+
const fori = function (arr, fn, max = arr.length - 1, min = 0) {
|
|
38
|
+
if (isArray(arr)) {
|
|
39
|
+
let realMax = arr.length - 1;
|
|
40
|
+
if (!isNumber(max) || !(0 < max && max <= realMax)) {
|
|
41
|
+
max = realMax;
|
|
42
|
+
}
|
|
43
|
+
if (!isNumber(min) || !(0 <= min && min < realMax) || min > max) {
|
|
44
|
+
min = 0;
|
|
45
|
+
}
|
|
46
|
+
for (let i = min; i <= max; i++) {
|
|
47
|
+
if (fn(arr[i], i) === false) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
export { fori };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executes the provided function on each element of the given array, going backward.
|
|
3
|
+
*
|
|
4
|
+
* A maximum and a minimum value can be provided, within the boundaries of the
|
|
5
|
+
* array's indexes. Returning false will stop the loop.
|
|
6
|
+
*
|
|
7
|
+
* @method forir
|
|
8
|
+
* @global
|
|
9
|
+
* @example
|
|
10
|
+
* ```javascript
|
|
11
|
+
* let res = 0;
|
|
12
|
+
* bbn.fn.forir([4, 5, 5, 10, 1, 2], d => {
|
|
13
|
+
* res += d;
|
|
14
|
+
* }, 4, 2);
|
|
15
|
+
* // res = 16
|
|
16
|
+
* ```
|
|
17
|
+
* @example
|
|
18
|
+
* ```javascript
|
|
19
|
+
* let res = 0;
|
|
20
|
+
* bbn.fn.forir([4, 5, 5, 10, 1, 2], d => {
|
|
21
|
+
* if (res >= 20) {
|
|
22
|
+
* return false;
|
|
23
|
+
* }
|
|
24
|
+
* res += d;
|
|
25
|
+
* });
|
|
26
|
+
* // res = 23
|
|
27
|
+
* ```
|
|
28
|
+
* @memberof bbn.fn
|
|
29
|
+
* @param {Array} arr The array to loop on
|
|
30
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
31
|
+
* @param {Number} max The index to which the loop will stop
|
|
32
|
+
* @param {Number} min The index at which the loop will start
|
|
33
|
+
* @returns {undefined}
|
|
34
|
+
*/
|
|
35
|
+
declare const forir: (arr: any[], fn: (a: any, b: number) => any, max?: number, min?: number) => void;
|
|
36
|
+
export { forir };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { isArray } from "../type/isArray";
|
|
2
|
+
import { isNumber } from "../type/isNumber";
|
|
3
|
+
/**
|
|
4
|
+
* Executes the provided function on each element of the given array, going backward.
|
|
5
|
+
*
|
|
6
|
+
* A maximum and a minimum value can be provided, within the boundaries of the
|
|
7
|
+
* array's indexes. Returning false will stop the loop.
|
|
8
|
+
*
|
|
9
|
+
* @method forir
|
|
10
|
+
* @global
|
|
11
|
+
* @example
|
|
12
|
+
* ```javascript
|
|
13
|
+
* let res = 0;
|
|
14
|
+
* bbn.fn.forir([4, 5, 5, 10, 1, 2], d => {
|
|
15
|
+
* res += d;
|
|
16
|
+
* }, 4, 2);
|
|
17
|
+
* // res = 16
|
|
18
|
+
* ```
|
|
19
|
+
* @example
|
|
20
|
+
* ```javascript
|
|
21
|
+
* let res = 0;
|
|
22
|
+
* bbn.fn.forir([4, 5, 5, 10, 1, 2], d => {
|
|
23
|
+
* if (res >= 20) {
|
|
24
|
+
* return false;
|
|
25
|
+
* }
|
|
26
|
+
* res += d;
|
|
27
|
+
* });
|
|
28
|
+
* // res = 23
|
|
29
|
+
* ```
|
|
30
|
+
* @memberof bbn.fn
|
|
31
|
+
* @param {Array} arr The array to loop on
|
|
32
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
33
|
+
* @param {Number} max The index to which the loop will stop
|
|
34
|
+
* @param {Number} min The index at which the loop will start
|
|
35
|
+
* @returns {undefined}
|
|
36
|
+
*/
|
|
37
|
+
const forir = function (arr, fn, max = arr.length - 1, min = 0) {
|
|
38
|
+
if (isArray(arr)) {
|
|
39
|
+
let realMax = arr.length - 1;
|
|
40
|
+
if (!isNumber(max) || !(0 < max && max <= realMax)) {
|
|
41
|
+
max = realMax;
|
|
42
|
+
}
|
|
43
|
+
if (!isNumber(min) || !(0 <= min && min < realMax) || min > max) {
|
|
44
|
+
min = 0;
|
|
45
|
+
}
|
|
46
|
+
for (let i = max; i >= min; i--) {
|
|
47
|
+
if (fn(arr[i], i) === false) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
export { forir };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executes the provided function on each property of the given object.
|
|
3
|
+
*
|
|
4
|
+
* @method iterate
|
|
5
|
+
* @global
|
|
6
|
+
* @example
|
|
7
|
+
* ```javascript
|
|
8
|
+
* //["value1", 2]
|
|
9
|
+
* let arr = [];
|
|
10
|
+
* bbn.fn.iterate({field1: "value1", field2: 2}, (val, idx) => {
|
|
11
|
+
* arr.push(value);
|
|
12
|
+
* });
|
|
13
|
+
* ```
|
|
14
|
+
* @memberof bbn.fn
|
|
15
|
+
* @param {(Object|Number)} obj The object to loop on
|
|
16
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
17
|
+
* @param {Boolean} noPrivate If set to true the _private_ properties won't be included
|
|
18
|
+
* @param {Boolean} reverse If set to true the order of the keys will be reversed
|
|
19
|
+
* @returns {Object}
|
|
20
|
+
*/
|
|
21
|
+
declare const iterate: (obj: object, fn: (a: any, b: string) => any, noPrivate?: boolean, reverse?: boolean) => object;
|
|
22
|
+
export { iterate };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { removePrivateProp } from "../object/removePrivateProp";
|
|
2
|
+
/**
|
|
3
|
+
* Executes the provided function on each property of the given object.
|
|
4
|
+
*
|
|
5
|
+
* @method iterate
|
|
6
|
+
* @global
|
|
7
|
+
* @example
|
|
8
|
+
* ```javascript
|
|
9
|
+
* //["value1", 2]
|
|
10
|
+
* let arr = [];
|
|
11
|
+
* bbn.fn.iterate({field1: "value1", field2: 2}, (val, idx) => {
|
|
12
|
+
* arr.push(value);
|
|
13
|
+
* });
|
|
14
|
+
* ```
|
|
15
|
+
* @memberof bbn.fn
|
|
16
|
+
* @param {(Object|Number)} obj The object to loop on
|
|
17
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
18
|
+
* @param {Boolean} noPrivate If set to true the _private_ properties won't be included
|
|
19
|
+
* @param {Boolean} reverse If set to true the order of the keys will be reversed
|
|
20
|
+
* @returns {Object}
|
|
21
|
+
*/
|
|
22
|
+
const iterate = function (obj, fn, noPrivate = false, reverse = false) {
|
|
23
|
+
if (obj !== null && typeof obj === "object") {
|
|
24
|
+
let iter = Object.keys(noPrivate ? removePrivateProp(obj) : obj);
|
|
25
|
+
if (reverse) {
|
|
26
|
+
iter.reverse();
|
|
27
|
+
}
|
|
28
|
+
for (let prop of iter) {
|
|
29
|
+
if (fn(obj[prop], prop) === false) {
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return obj;
|
|
35
|
+
};
|
|
36
|
+
export { iterate };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Executes the provided function on each property of the given object.
|
|
3
|
+
*
|
|
4
|
+
* @method riterate
|
|
5
|
+
* @global
|
|
6
|
+
* @example
|
|
7
|
+
* ```javascript
|
|
8
|
+
* //["value1", 2]
|
|
9
|
+
* let arr = [];
|
|
10
|
+
* bbn.fn.iterate({field1: "value1", field2: 2}, (val, idx) => {
|
|
11
|
+
* arr.push(value);
|
|
12
|
+
* });
|
|
13
|
+
* ```
|
|
14
|
+
* @memberof bbn.fn
|
|
15
|
+
* @param {(Object|Number)} obj The object to loop on
|
|
16
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
17
|
+
* @param {Boolean} noPrivate If set to true the _private_ properties won't be included
|
|
18
|
+
* @returns {Object}
|
|
19
|
+
*/
|
|
20
|
+
declare const riterate: (obj: object, fn: (a: any, b: string) => any, noPrivate?: boolean) => object;
|
|
21
|
+
export { riterate };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { iterate } from "./iterate";
|
|
2
|
+
/**
|
|
3
|
+
* Executes the provided function on each property of the given object.
|
|
4
|
+
*
|
|
5
|
+
* @method riterate
|
|
6
|
+
* @global
|
|
7
|
+
* @example
|
|
8
|
+
* ```javascript
|
|
9
|
+
* //["value1", 2]
|
|
10
|
+
* let arr = [];
|
|
11
|
+
* bbn.fn.iterate({field1: "value1", field2: 2}, (val, idx) => {
|
|
12
|
+
* arr.push(value);
|
|
13
|
+
* });
|
|
14
|
+
* ```
|
|
15
|
+
* @memberof bbn.fn
|
|
16
|
+
* @param {(Object|Number)} obj The object to loop on
|
|
17
|
+
* @param {Function} fn The function, gets the array's element and the index as arguments
|
|
18
|
+
* @param {Boolean} noPrivate If set to true the _private_ properties won't be included
|
|
19
|
+
* @returns {Object}
|
|
20
|
+
*/
|
|
21
|
+
const riterate = function (obj, fn, noPrivate) {
|
|
22
|
+
return iterate(obj, fn, noPrivate, true);
|
|
23
|
+
};
|
|
24
|
+
export { riterate };
|