@startlibs/utils 1.1.0 → 1.1.2
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/lib/ActionUtils.mjs +4 -4
- package/lib/ActionUtils.mjs.map +1 -1
- package/lib/FetchUtils.mjs.map +1 -1
- package/lib/createPressEvent.mjs +1 -1
- package/lib/createPressEvent.mjs.map +1 -1
- package/lib/fixMediaQuery.mjs.map +1 -1
- package/lib/formatDate.mjs +1 -1
- package/lib/formatDate.mjs.map +1 -1
- package/lib/formatUtils.mjs +2 -2
- package/lib/formatUtils.mjs.map +1 -1
- package/lib/getClosestOffsetScroll.mjs.map +1 -1
- package/lib/hooks/useEventListener.mjs.map +1 -1
- package/lib/index.cjs +107 -107
- package/lib/index.cjs.map +1 -1
- package/lib/index.mjs +2 -2
- package/lib/lodashUtils.mjs +6 -6
- package/lib/lodashUtils.mjs.map +1 -1
- package/lib/promiseUtils.mjs.map +1 -1
- package/lib/reactUtils.mjs +1 -1
- package/lib/reactUtils.mjs.map +1 -1
- package/lib/reduceUtils.mjs.map +1 -1
- package/lib/smoothScroll.mjs.map +1 -1
- package/lib/styled.mjs +5 -5
- package/lib/styled.mjs.map +1 -1
- package/lib/timeUtils.mjs +1 -1
- package/lib/timeUtils.mjs.map +1 -1
- package/lib/timerUtils.mjs +1 -1
- package/lib/timerUtils.mjs.map +1 -1
- package/lib/utils.mjs +1 -1
- package/lib/utils.mjs.map +1 -1
- package/lib/wrapLazy.mjs +2 -2
- package/lib/wrapLazy.mjs.map +1 -1
- package/package.json +4 -3
- package/src/formatDate.js +1 -1
package/lib/ActionUtils.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
-
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
3
|
-
import _set from 'lodash/fp/set';
|
|
4
|
-
import _last from 'lodash/fp/last';
|
|
5
1
|
import { useMemo } from 'react';
|
|
2
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
3
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
6
4
|
import { callIfFunction } from './utils.mjs';
|
|
5
|
+
import _set from 'lodash/fp/set';
|
|
7
6
|
import { _s } from './lodashUtils.mjs';
|
|
7
|
+
import _last from 'lodash/fp/last';
|
|
8
8
|
|
|
9
9
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
10
10
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
package/lib/ActionUtils.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionUtils.mjs","sources":["../src/ActionUtils.js"],"sourcesContent":["import {useMemo} from 'react'\nimport {callIfFunction} from './utils'\nimport {_s} from './lodashUtils'\nimport _ from 'lodash/fp'\n\nconst isNotSelector = (v) => (typeof v !== 'function' || v.length === 0)\n\nconst toSelector = (v) => isNotSelector(v) ? (s) => _s.get(callIfFunction(v),s) : v\n\nconst mergeSelectors = (prev, next) => (v) => next(prev(v))\nexport const concatSelectors = (...paths) => paths.reduce(([selector, isSelector], path) =>\n isNotSelector(path) && !isSelector\n ? [selector.concat(path), false]\n : [mergeSelectors(toSelector(selector), path), true],\n [[], false]\n)\n\nexport const COMPLETE_ACTION = {}\nexport const REDUCE = {}\nexport const FETCH = {}\nexport const SKIP_FETCH = {}\nexport const SKIP_DISPATCH = {}\nexport const SKIPPED_ACTION = {}\n\nconst ACTION_TYPES = [COMPLETE_ACTION,REDUCE,FETCH,SKIP_FETCH,SKIP_DISPATCH]\n\nexport const selectPath = (useState, ...paths) => {\n const [selector] = useMemo(() => concatSelectors(...paths), paths)\n const [value] = useState(selector)\n return value\n}\n\nexport const Action = (fnOrArray, prevArgs = []) => {\n const isArray = Array.isArray(fnOrArray)\n if (isArray) {\n // excessive paramaeters called on the action, used for options.\n const actionType = _.last(prevArgs)\n const [fetcher, reducer, rollbacker] = fnOrArray\n if (actionType === REDUCE) {\n return reducer(null,prevArgs)\n } else if (actionType === FETCH) {\n return fetcher()\n } else {\n return _.set('extra',fnOrArray.extra,[\n actionType === SKIP_FETCH ? () => Promise.resolve() : fetcher,\n actionType === SKIP_DISPATCH ? undefined : reducer,\n ].concat(rollbacker || []))\n }\n } else {\n return prevArgs.length < fnOrArray.length ? (...moreArgs) => Action(fnOrArray,[...prevArgs,...moreArgs]) : Action(fnOrArray(...prevArgs),prevArgs)\n }\n}\n\nconst mapAction = (get, dispatcher, firstRun) => (action) => {\n if (Array.isArray(action)) {\n if (firstRun) {\n return () => mapAction(get,dispatcher)(action)\n }\n const [fetcher, reducer, rollbacker] = action\n const {skip} = action.extra || {}\n if (skip && skip(get())) {\n return Promise.resolve(SKIPPED_ACTION)\n }\n const fetched = fetcher()\n if (rollbacker) {\n dispatcher(prevState => {\n const nextState = reducer(null)(prevState)\n fetched.catch((response)=> {\n dispatcher(rollbacker(prevState,nextState,response))\n })\n return nextState\n })\n }\n if (reducer !== undefined) {\n fetched.then((response) => dispatcher(reducer(response)))\n }\n return fetched\n } else {\n return (...moreMetas) => mapAction(get,dispatcher)(action(...moreMetas))\n }\n}\n\nexport const activateActions = (get, dispatcher, ...actions) => {\n return actions.map(mapAction(get, dispatcher,true))\n}\n\nexport const SkipAction = (skip,action) => {\n action.extra = {...action.extra,skip}\n return action\n}"],"names":["isNotSelector","v","length","toSelector","s","_s","get","callIfFunction","mergeSelectors","prev","next","concatSelectors","_len","arguments","paths","Array","_key","reduce","_ref","path","_ref2","_slicedToArray","selector","isSelector","concat","COMPLETE_ACTION","REDUCE","FETCH","SKIP_FETCH","SKIP_DISPATCH","SKIPPED_ACTION","selectPath","useState","_len2","_key2","_useMemo","useMemo","_useMemo2","_useState","_useState2","value","Action","fnOrArray","prevArgs","undefined","isArray","actionType","_last","_fnOrArray","fetcher","reducer","rollbacker","_set","extra","Promise","resolve","_len3","moreArgs","_key3","mapAction","dispatcher","firstRun","action","_action","_ref3","skip","fetched","prevState","nextState","catch","response","then","activateActions","_len4","actions","_key4","map","SkipAction","_objectSpread"],"mappings":";;;;;;;;;;AAKA,MAAMA,aAAa,GAAIC,CAAC,IAAM,OAAOA,CAAC,KAAK,UAAU,IAAIA,CAAC,CAACC,MAAM,KAAK,CAAE
|
|
1
|
+
{"version":3,"file":"ActionUtils.mjs","sources":["../src/ActionUtils.js"],"sourcesContent":["import {useMemo} from 'react'\nimport {callIfFunction} from './utils'\nimport {_s} from './lodashUtils'\nimport _ from 'lodash/fp'\n\nconst isNotSelector = (v) => (typeof v !== 'function' || v.length === 0)\n\nconst toSelector = (v) => isNotSelector(v) ? (s) => _s.get(callIfFunction(v),s) : v\n\nconst mergeSelectors = (prev, next) => (v) => next(prev(v))\nexport const concatSelectors = (...paths) => paths.reduce(([selector, isSelector], path) =>\n isNotSelector(path) && !isSelector\n ? [selector.concat(path), false]\n : [mergeSelectors(toSelector(selector), path), true],\n [[], false]\n)\n\nexport const COMPLETE_ACTION = {}\nexport const REDUCE = {}\nexport const FETCH = {}\nexport const SKIP_FETCH = {}\nexport const SKIP_DISPATCH = {}\nexport const SKIPPED_ACTION = {}\n\nconst ACTION_TYPES = [COMPLETE_ACTION,REDUCE,FETCH,SKIP_FETCH,SKIP_DISPATCH]\n\nexport const selectPath = (useState, ...paths) => {\n const [selector] = useMemo(() => concatSelectors(...paths), paths)\n const [value] = useState(selector)\n return value\n}\n\nexport const Action = (fnOrArray, prevArgs = []) => {\n const isArray = Array.isArray(fnOrArray)\n if (isArray) {\n // excessive paramaeters called on the action, used for options.\n const actionType = _.last(prevArgs)\n const [fetcher, reducer, rollbacker] = fnOrArray\n if (actionType === REDUCE) {\n return reducer(null,prevArgs)\n } else if (actionType === FETCH) {\n return fetcher()\n } else {\n return _.set('extra',fnOrArray.extra,[\n actionType === SKIP_FETCH ? () => Promise.resolve() : fetcher,\n actionType === SKIP_DISPATCH ? undefined : reducer,\n ].concat(rollbacker || []))\n }\n } else {\n return prevArgs.length < fnOrArray.length ? (...moreArgs) => Action(fnOrArray,[...prevArgs,...moreArgs]) : Action(fnOrArray(...prevArgs),prevArgs)\n }\n}\n\nconst mapAction = (get, dispatcher, firstRun) => (action) => {\n if (Array.isArray(action)) {\n if (firstRun) {\n return () => mapAction(get,dispatcher)(action)\n }\n const [fetcher, reducer, rollbacker] = action\n const {skip} = action.extra || {}\n if (skip && skip(get())) {\n return Promise.resolve(SKIPPED_ACTION)\n }\n const fetched = fetcher()\n if (rollbacker) {\n dispatcher(prevState => {\n const nextState = reducer(null)(prevState)\n fetched.catch((response)=> {\n dispatcher(rollbacker(prevState,nextState,response))\n })\n return nextState\n })\n }\n if (reducer !== undefined) {\n fetched.then((response) => dispatcher(reducer(response)))\n }\n return fetched\n } else {\n return (...moreMetas) => mapAction(get,dispatcher)(action(...moreMetas))\n }\n}\n\nexport const activateActions = (get, dispatcher, ...actions) => {\n return actions.map(mapAction(get, dispatcher,true))\n}\n\nexport const SkipAction = (skip,action) => {\n action.extra = {...action.extra,skip}\n return action\n}"],"names":["isNotSelector","v","length","toSelector","s","_s","get","callIfFunction","mergeSelectors","prev","next","concatSelectors","_len","arguments","paths","Array","_key","reduce","_ref","path","_ref2","_slicedToArray","selector","isSelector","concat","COMPLETE_ACTION","REDUCE","FETCH","SKIP_FETCH","SKIP_DISPATCH","SKIPPED_ACTION","selectPath","useState","_len2","_key2","_useMemo","useMemo","_useMemo2","_useState","_useState2","value","Action","fnOrArray","prevArgs","undefined","isArray","actionType","_last","_fnOrArray","fetcher","reducer","rollbacker","_set","extra","Promise","resolve","_len3","moreArgs","_key3","mapAction","dispatcher","firstRun","action","_action","_ref3","skip","fetched","prevState","nextState","catch","response","then","activateActions","_len4","actions","_key4","map","SkipAction","_objectSpread"],"mappings":"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"}
|
package/lib/FetchUtils.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchUtils.mjs","sources":["../src/FetchUtils.js"],"sourcesContent":["import {callIfFunction} from './utils'\nimport _ from 'lodash/fp'\n\nconst resolveFetch = async (url, fetchOptions) => {\n try {\n const response = await fetch(url, {\n credentials: 'same-origin',\n ...fetchOptions\n })\n const text = await response.text()\n try {\n const json = JSON.parse(text)\n return [json, response]\n } catch (eror) {\n return [text, response]\n }\n } catch (error) {\n return [error, false]\n }\n}\n\nconst innerFetcher = async (url, fetchOptions) => {\n const [data, response] = await resolveFetch(url, fetchOptions)\n if (!response || response.status >= 400) {\n throw [data, response]\n } else {\n return [data, response]\n }\n}\nexport const queryStringToObj = (str = window.location.search) => Object.fromEntries(new URLSearchParams(str).entries())\n\nexport const addQueryString = (existingUrl = '',obj) => {\n const [onlyUrl, otherQueryString] = existingUrl.split('?')\n const params = new URLSearchParams(otherQueryString)\n for (let key in obj) {\n const value = obj[key]\n if (value === null) {\n params.delete(key)\n } else {\n params.set(key, obj[key])\n }\n }\n const paramsStr = params.toString()\n if (!paramsStr) {\n return onlyUrl\n }\n return onlyUrl + '?' + paramsStr\n}\n\nconst cleanNulls = (str) => str.replace(/\\0/g, '')\n\n// Cross-origin o X-Requested-With só custa: dispara preflight e impede o reuso do\n// <link rel=preload as=fetch>, cujo request vai sem ele. Quem lê o header é servidor nosso.\nconst isSameOrigin = (url) => new URL(url, window.location.href).origin === window.location.origin\n\nexport let postFetcherWithResponse = async (url, jsonOrForm, fetchOptions = {}) => innerFetcher(url, {\n method: 'POST',\n body: typeof jsonOrForm === 'string'\n ? jsonOrForm\n : !jsonOrForm || jsonOrForm.constructor === window.FormData || jsonOrForm.constructor === window.File\n ? jsonOrForm\n : cleanNulls(JSON.stringify(jsonOrForm)),\n ...fetchOptions,\n headers:\n (_.isPlainObject(fetchOptions.headers) || !fetchOptions.headers)\n ? {\n ...(jsonOrForm && (typeof jsonOrForm === 'string' || jsonOrForm.constructor === window.FormData) ? {} : {'Content-Type': 'application/json; charset=UTF-8'}),\n ...(isSameOrigin(url) ? {'X-Requested-With': 'XMLHttpRequest'} : {}),\n ...fetchOptions.headers\n }\n : fetchOptions.headers\n})\n\nexport let getFetcherWithResponse = async (url, jsonParams, fetchOptions) => innerFetcher(addQueryString(url, jsonParams), {\n method: 'GET',\n ...fetchOptions,\n headers: {\n ...(isSameOrigin(url) ? {'X-Requested-With': 'XMLHttpRequest'} : {}),\n ...fetchOptions?.headers\n }\n})\n\nexport let postFetcher = async (url, json, options) => postFetcherWithResponse(url, json, options).then(([json]) => json)\nexport let getFetcher = async (url, json, options) => getFetcherWithResponse(url, json, options).then(([json]) => json)\n\nexport const formFetchWithResponse = (url, options) => (values, meta) => postFetcherWithResponse(callIfFunction(url, meta, values), values, callIfFunction(options, meta, values))\nexport const formFetch = (url, options) => (values, meta) => postFetcher(callIfFunction(url, meta, values), values, callIfFunction(options, meta, values))\n"],"names":["resolveFetch","url","fetchOptions","response","fetch","_objectSpread","credentials","text","json","JSON","parse","eror","error","innerFetcher","_await$resolveFetch","_await$resolveFetch2","_slicedToArray","data","status","queryStringToObj","str","arguments","length","undefined","window","location","search","Object","fromEntries","URLSearchParams","entries","addQueryString","existingUrl","obj","_existingUrl$split","split","_existingUrl$split2","onlyUrl","otherQueryString","params","key","value","delete","set","paramsStr","toString","cleanNulls","replace","isSameOrigin","URL","href","origin","postFetcherWithResponse","jsonOrForm","method","body","constructor","FormData","File","stringify","headers","_isPlainObject","getFetcherWithResponse","jsonParams","postFetcher","options","then","_ref","_ref2","getFetcher","_ref3","_ref4","formFetchWithResponse","values","meta","callIfFunction","formFetch"],"mappings":";;;;;;;AAGA,MAAMA,YAAY,GAAG,OAAOC,GAAG,EAAEC,YAAY,KAAK;EAChD,IAAI;
|
|
1
|
+
{"version":3,"file":"FetchUtils.mjs","sources":["../src/FetchUtils.js"],"sourcesContent":["import {callIfFunction} from './utils'\nimport _ from 'lodash/fp'\n\nconst resolveFetch = async (url, fetchOptions) => {\n try {\n const response = await fetch(url, {\n credentials: 'same-origin',\n ...fetchOptions\n })\n const text = await response.text()\n try {\n const json = JSON.parse(text)\n return [json, response]\n } catch (eror) {\n return [text, response]\n }\n } catch (error) {\n return [error, false]\n }\n}\n\nconst innerFetcher = async (url, fetchOptions) => {\n const [data, response] = await resolveFetch(url, fetchOptions)\n if (!response || response.status >= 400) {\n throw [data, response]\n } else {\n return [data, response]\n }\n}\nexport const queryStringToObj = (str = window.location.search) => Object.fromEntries(new URLSearchParams(str).entries())\n\nexport const addQueryString = (existingUrl = '',obj) => {\n const [onlyUrl, otherQueryString] = existingUrl.split('?')\n const params = new URLSearchParams(otherQueryString)\n for (let key in obj) {\n const value = obj[key]\n if (value === null) {\n params.delete(key)\n } else {\n params.set(key, obj[key])\n }\n }\n const paramsStr = params.toString()\n if (!paramsStr) {\n return onlyUrl\n }\n return onlyUrl + '?' + paramsStr\n}\n\nconst cleanNulls = (str) => str.replace(/\\0/g, '')\n\n// Cross-origin o X-Requested-With só custa: dispara preflight e impede o reuso do\n// <link rel=preload as=fetch>, cujo request vai sem ele. Quem lê o header é servidor nosso.\nconst isSameOrigin = (url) => new URL(url, window.location.href).origin === window.location.origin\n\nexport let postFetcherWithResponse = async (url, jsonOrForm, fetchOptions = {}) => innerFetcher(url, {\n method: 'POST',\n body: typeof jsonOrForm === 'string'\n ? jsonOrForm\n : !jsonOrForm || jsonOrForm.constructor === window.FormData || jsonOrForm.constructor === window.File\n ? jsonOrForm\n : cleanNulls(JSON.stringify(jsonOrForm)),\n ...fetchOptions,\n headers:\n (_.isPlainObject(fetchOptions.headers) || !fetchOptions.headers)\n ? {\n ...(jsonOrForm && (typeof jsonOrForm === 'string' || jsonOrForm.constructor === window.FormData) ? {} : {'Content-Type': 'application/json; charset=UTF-8'}),\n ...(isSameOrigin(url) ? {'X-Requested-With': 'XMLHttpRequest'} : {}),\n ...fetchOptions.headers\n }\n : fetchOptions.headers\n})\n\nexport let getFetcherWithResponse = async (url, jsonParams, fetchOptions) => innerFetcher(addQueryString(url, jsonParams), {\n method: 'GET',\n ...fetchOptions,\n headers: {\n ...(isSameOrigin(url) ? {'X-Requested-With': 'XMLHttpRequest'} : {}),\n ...fetchOptions?.headers\n }\n})\n\nexport let postFetcher = async (url, json, options) => postFetcherWithResponse(url, json, options).then(([json]) => json)\nexport let getFetcher = async (url, json, options) => getFetcherWithResponse(url, json, options).then(([json]) => json)\n\nexport const formFetchWithResponse = (url, options) => (values, meta) => postFetcherWithResponse(callIfFunction(url, meta, values), values, callIfFunction(options, meta, values))\nexport const formFetch = (url, options) => (values, meta) => postFetcher(callIfFunction(url, meta, values), values, callIfFunction(options, meta, values))\n"],"names":["resolveFetch","url","fetchOptions","response","fetch","_objectSpread","credentials","text","json","JSON","parse","eror","error","innerFetcher","_await$resolveFetch","_await$resolveFetch2","_slicedToArray","data","status","queryStringToObj","str","arguments","length","undefined","window","location","search","Object","fromEntries","URLSearchParams","entries","addQueryString","existingUrl","obj","_existingUrl$split","split","_existingUrl$split2","onlyUrl","otherQueryString","params","key","value","delete","set","paramsStr","toString","cleanNulls","replace","isSameOrigin","URL","href","origin","postFetcherWithResponse","jsonOrForm","method","body","constructor","FormData","File","stringify","headers","_isPlainObject","getFetcherWithResponse","jsonParams","postFetcher","options","then","_ref","_ref2","getFetcher","_ref3","_ref4","formFetchWithResponse","values","meta","callIfFunction","formFetch"],"mappings":"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"}
|
package/lib/createPressEvent.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPressEvent.mjs","sources":["../src/createPressEvent.jsx"],"sourcesContent":["import React from 'react'\nimport {callIfFunction, normalizePress} from './utils'\n\n\nconst disableSelect = (e) => {\n e.preventDefault();\n}\n\nexport const createPressEvent = (onStart) => normalizePress((startEvent, info) => {\n const onEnd = onStart(startEvent,info)\n\n const finish = normalizePress((e,info) => {\n callIfFunction(onEnd,e,info)\n window.removeEventListener('selectstart', disableSelect)\n window.removeEventListener('touchend',finish)\n window.removeEventListener('mouseup',finish)\n })\n\n\n window.addEventListener('selectstart', disableSelect);\n if (startEvent.touches) {\n window.addEventListener('touchend', finish)\n } else {\n window.addEventListener(\"mouseup\", finish);\n }\n\n})\n\nexport const createPressAndHoldEvent = (onStart,interval) => createPressEvent((startEvent,info) => {\n\n const [onInterval,onEnd] = [].concat(onStart(startEvent,info))\n\n let i = 0;\n if (interval) {\n const intervalId = setInterval(() => {\n onInterval(i++)\n }, interval)\n\n return normalizePress((e, info) => {\n callIfFunction(onEnd, e, info)\n clearInterval(intervalId)\n })\n } else {\n let running = true\n const run = () => window.requestAnimationFrame(() => {\n if (running) {\n onInterval(i++)\n run()\n }\n })\n run()\n return normalizePress((e,info) => {\n callIfFunction(onEnd, e, info)\n running = false\n })\n }\n})\n\n\nexport const createPressAndMoveEvent = (onStart) => createPressEvent((startEvent, info) => {\n\n const [onMove,onEnd] = [].concat(onStart(startEvent,info))\n\n const finish = normalizePress((e,info) => {\n callIfFunction(onEnd,e,info)\n window.removeEventListener('touchmove',move)\n window.removeEventListener('mousemove',move)\n })\n const move = normalizePress(onMove,finish)\n\n if (startEvent.touches) {\n window.addEventListener('touchmove', move, {passive: false})\n } else {\n window.addEventListener(\"mousemove\", move);\n }\n\n return finish\n})\n\n"],"names":["disableSelect","e","preventDefault","createPressEvent","onStart","normalizePress","startEvent","info","onEnd","finish","callIfFunction","window","removeEventListener","addEventListener","touches","createPressAndHoldEvent","interval","_concat","concat","_concat2","_slicedToArray","onInterval","i","intervalId","setInterval","clearInterval","running","run","requestAnimationFrame","createPressAndMoveEvent","_concat3","_concat4","onMove","move","passive"],"mappings":";;;;AAIA,MAAMA,aAAa,GAAIC,CAAC,IAAK;EAC3BA,CAAC,CAACC,cAAc,EAAE
|
|
1
|
+
{"version":3,"file":"createPressEvent.mjs","sources":["../src/createPressEvent.jsx"],"sourcesContent":["import React from 'react'\nimport {callIfFunction, normalizePress} from './utils'\n\n\nconst disableSelect = (e) => {\n e.preventDefault();\n}\n\nexport const createPressEvent = (onStart) => normalizePress((startEvent, info) => {\n const onEnd = onStart(startEvent,info)\n\n const finish = normalizePress((e,info) => {\n callIfFunction(onEnd,e,info)\n window.removeEventListener('selectstart', disableSelect)\n window.removeEventListener('touchend',finish)\n window.removeEventListener('mouseup',finish)\n })\n\n\n window.addEventListener('selectstart', disableSelect);\n if (startEvent.touches) {\n window.addEventListener('touchend', finish)\n } else {\n window.addEventListener(\"mouseup\", finish);\n }\n\n})\n\nexport const createPressAndHoldEvent = (onStart,interval) => createPressEvent((startEvent,info) => {\n\n const [onInterval,onEnd] = [].concat(onStart(startEvent,info))\n\n let i = 0;\n if (interval) {\n const intervalId = setInterval(() => {\n onInterval(i++)\n }, interval)\n\n return normalizePress((e, info) => {\n callIfFunction(onEnd, e, info)\n clearInterval(intervalId)\n })\n } else {\n let running = true\n const run = () => window.requestAnimationFrame(() => {\n if (running) {\n onInterval(i++)\n run()\n }\n })\n run()\n return normalizePress((e,info) => {\n callIfFunction(onEnd, e, info)\n running = false\n })\n }\n})\n\n\nexport const createPressAndMoveEvent = (onStart) => createPressEvent((startEvent, info) => {\n\n const [onMove,onEnd] = [].concat(onStart(startEvent,info))\n\n const finish = normalizePress((e,info) => {\n callIfFunction(onEnd,e,info)\n window.removeEventListener('touchmove',move)\n window.removeEventListener('mousemove',move)\n })\n const move = normalizePress(onMove,finish)\n\n if (startEvent.touches) {\n window.addEventListener('touchmove', move, {passive: false})\n } else {\n window.addEventListener(\"mousemove\", move);\n }\n\n return finish\n})\n\n"],"names":["disableSelect","e","preventDefault","createPressEvent","onStart","normalizePress","startEvent","info","onEnd","finish","callIfFunction","window","removeEventListener","addEventListener","touches","createPressAndHoldEvent","interval","_concat","concat","_concat2","_slicedToArray","onInterval","i","intervalId","setInterval","clearInterval","running","run","requestAnimationFrame","createPressAndMoveEvent","_concat3","_concat4","onMove","move","passive"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixMediaQuery.mjs","sources":["../src/fixMediaQuery.js"],"sourcesContent":["let fixed = false\nexport const scrollWidth = (function() {\n if (!window.document) return 0\n const html = document.documentElement\n const oldOverflow = html.style.overflowY\n html.style.overflowY = 'scroll'\n const width = window.innerWidth - html.clientWidth\n html.style.overflowY = oldOverflow\n return width\n})()\n\nconst fixMediaQueryFn = function() {\n\n const fontSize = parseFloat(window.getComputedStyle(document.body).getPropertyValue('font-size'))\n\n if (scrollWidth > 0) {\n\n [].slice.call(document.styleSheets).filter(styleSheet => isValidExternal(styleSheet) || isInline(styleSheet)).forEach(stylesheet => {\n try {\n [].slice.call(stylesheet.cssRules || stylesheet.media).filter(rule => rule.constructor === window.CSSMediaRule).forEach(rule => {\n rule.media.mediaText = rule.media.mediaText.replace(/m(in|ax)-width:\\s*(\\d|\\.)+(px|em)/gi, function(strA) {\n if (strA.match('px')) {\n return strA.replace(/\\d+px/gi, function(strB) {\n return parseInt(strB, 10) + scrollWidth + 'px'\n })\n }\n else {\n return strA.replace(/\\d.+?em/gi, function(strB) {\n return ((parseFloat(strB) * fontSize) + scrollWidth) / fontSize + 'em'\n })\n }\n })\n })\n } catch (e) {}\n })\n }\n\n fixed = true\n\n function sameOrigin(url) {\n const loc = window.location,\n a = document.createElement('a')\n a.href = url\n return (a.hostname === loc.hostname && a.protocol === loc.protocol)\n }\n\n function isInline(stylesheet) {\n try {\n return stylesheet.ownerNode.constructor === HTMLStyleElement && stylesheet.ownerNode.getAttribute(\"data-styled\") === null\n } catch (e) {\n return stylesheet.ownerNode.constructor === HTMLStyleElement\n }\n }\n\n function isValidExternal(stylesheet) {\n return stylesheet.href && (sameOrigin(stylesheet.href) || stylesheet.ownerNode?.crossOrigin === \"anonymous\")\n }\n\n}\n\n\nexport function fixMediaQuery() {\n if (fixed || !document || !document.readyState)\n return\n if (process.env.NODE_ENV === 'test') { return }\n if (document.readyState !== 'loading') {\n fixMediaQueryFn()\n } else {\n document.addEventListener('DOMContentLoaded', fixMediaQueryFn)\n }\n}"],"names":["fixed","scrollWidth","window","document","html","documentElement","oldOverflow","style","overflowY","width","innerWidth","clientWidth","fixMediaQueryFn","fontSize","parseFloat","getComputedStyle","body","getPropertyValue","slice","call","styleSheets","filter","styleSheet","isValidExternal","isInline","forEach","stylesheet","cssRules","media","rule","constructor","CSSMediaRule","mediaText","replace","strA","match","strB","parseInt","e","sameOrigin","url","loc","location","a","createElement","href","hostname","protocol","ownerNode","HTMLStyleElement","getAttribute","_stylesheet$ownerNode","crossOrigin","fixMediaQuery","readyState","process","env","NODE_ENV","addEventListener"],"mappings":"AAAA,IAAIA,KAAK,GAAG,KAAK
|
|
1
|
+
{"version":3,"file":"fixMediaQuery.mjs","sources":["../src/fixMediaQuery.js"],"sourcesContent":["let fixed = false\nexport const scrollWidth = (function() {\n if (!window.document) return 0\n const html = document.documentElement\n const oldOverflow = html.style.overflowY\n html.style.overflowY = 'scroll'\n const width = window.innerWidth - html.clientWidth\n html.style.overflowY = oldOverflow\n return width\n})()\n\nconst fixMediaQueryFn = function() {\n\n const fontSize = parseFloat(window.getComputedStyle(document.body).getPropertyValue('font-size'))\n\n if (scrollWidth > 0) {\n\n [].slice.call(document.styleSheets).filter(styleSheet => isValidExternal(styleSheet) || isInline(styleSheet)).forEach(stylesheet => {\n try {\n [].slice.call(stylesheet.cssRules || stylesheet.media).filter(rule => rule.constructor === window.CSSMediaRule).forEach(rule => {\n rule.media.mediaText = rule.media.mediaText.replace(/m(in|ax)-width:\\s*(\\d|\\.)+(px|em)/gi, function(strA) {\n if (strA.match('px')) {\n return strA.replace(/\\d+px/gi, function(strB) {\n return parseInt(strB, 10) + scrollWidth + 'px'\n })\n }\n else {\n return strA.replace(/\\d.+?em/gi, function(strB) {\n return ((parseFloat(strB) * fontSize) + scrollWidth) / fontSize + 'em'\n })\n }\n })\n })\n } catch (e) {}\n })\n }\n\n fixed = true\n\n function sameOrigin(url) {\n const loc = window.location,\n a = document.createElement('a')\n a.href = url\n return (a.hostname === loc.hostname && a.protocol === loc.protocol)\n }\n\n function isInline(stylesheet) {\n try {\n return stylesheet.ownerNode.constructor === HTMLStyleElement && stylesheet.ownerNode.getAttribute(\"data-styled\") === null\n } catch (e) {\n return stylesheet.ownerNode.constructor === HTMLStyleElement\n }\n }\n\n function isValidExternal(stylesheet) {\n return stylesheet.href && (sameOrigin(stylesheet.href) || stylesheet.ownerNode?.crossOrigin === \"anonymous\")\n }\n\n}\n\n\nexport function fixMediaQuery() {\n if (fixed || !document || !document.readyState)\n return\n if (process.env.NODE_ENV === 'test') { return }\n if (document.readyState !== 'loading') {\n fixMediaQueryFn()\n } else {\n document.addEventListener('DOMContentLoaded', fixMediaQueryFn)\n }\n}"],"names":["fixed","scrollWidth","window","document","html","documentElement","oldOverflow","style","overflowY","width","innerWidth","clientWidth","fixMediaQueryFn","fontSize","parseFloat","getComputedStyle","body","getPropertyValue","slice","call","styleSheets","filter","styleSheet","isValidExternal","isInline","forEach","stylesheet","cssRules","media","rule","constructor","CSSMediaRule","mediaText","replace","strA","match","strB","parseInt","e","sameOrigin","url","loc","location","a","createElement","href","hostname","protocol","ownerNode","HTMLStyleElement","getAttribute","_stylesheet$ownerNode","crossOrigin","fixMediaQuery","readyState","process","env","NODE_ENV","addEventListener"],"mappings":"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"}
|
package/lib/formatDate.mjs
CHANGED
|
@@ -71,7 +71,7 @@ function formatDateToPattern(format) {
|
|
|
71
71
|
return format.replace(escapedValidParts, (_, _1, _2) => _1 + (_2 === 'yy' ? '##' : _2 === 'yyyy' ? '####' : '0#'));
|
|
72
72
|
}
|
|
73
73
|
function formatDate(date, format, messages, noUTC) {
|
|
74
|
-
if (!date) return '';
|
|
74
|
+
if (!date && date !== 0) return '';
|
|
75
75
|
const separators = format.replace(escapedValidParts, '\0').split('\0');
|
|
76
76
|
const parts = format.match(escapedValidParts);
|
|
77
77
|
const formattedDate = parts.reduce((acc, part) => acc.concat(separators.length ? [separators.shift()] : [], part.replace(validParts, ''), val[part.match(validParts)[0]][0](date, messages, noUTC)), []);
|
package/lib/formatDate.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatDate.mjs","sources":["../src/formatDate.js"],"sourcesContent":["\nconst escapedValidParts = /(^|[^\\\\])(dd?|DD?|mm?|LL?|hh?|MM?|ss|SSS|yy(?:yy)?)/g\nconst validParts = /(dd?|DD?|mm?|LL?|hh?|MM?|yy(?:yy)|yy|ss|SSS)$/\nexport const addZero = (v) => (v < 10 ? '0' : '') + v\n\nconst getSet = (index, ttype, plus = 0, format = (v) => v, parse = (v, defaultDate) => (v === '0' ? '' : v)) => ([\n (date,_,noUTC) => format((typeof date === 'number' ? new Date(date) : date)['get'+(noUTC?'':'UTC') + ttype]() + plus),\n (unformatedStr, date, _, failOnFormat, noUTC) => {\n const str = parse(unformatedStr, date, failOnFormat)\n if (str === '' || isNaN(date.getTime()))\n return date\n if (str=== '\\0')\n return date.setTime(NaN)\n const utcSTR = noUTC ? '' : 'UTC'\n const v = parseInt(str, 10) - plus\n const prevDay = date['get'+utcSTR+'Date']()\n if (ttype !== 'Date') {\n date['set'+utcSTR+'Date'](1)\n }\n date['set'+ utcSTR + ttype](v)\n if (date['get' + utcSTR + ttype]() !== v) {\n date['set' + utcSTR + ttype](NaN)\n return date\n }\n if (ttype !== 'Date') {\n date['set'+utcSTR+'Date'](prevDay)\n if (date['get' + utcSTR + ttype]() !== v) {\n date['set'+utcSTR+'Date'](0)\n return date\n }\n }\n return date\n },\n index\n])\n\nconst getText = (type, total, slice = 99) => [\n (date, messages,noUTC) => messages(type.toLowerCase(),date['get'+(noUTC? '': 'UTC') + type]()).slice(0, slice)\n]\n\nconst yearParse = (y, date, failOnFormat) => {\n const formattedY = y.length === 2 && y !== '20' ? '20' + y : y.length === 4 ? y : ''\n if (formattedY === '') {\n if (failOnFormat) {\n const found = date.getUTCFullYear().toString().indexOf(y)\n return found === 0 || found === 2 ? date.getUTCFullYear() : '\\0'\n } else {\n return date.getUTCFullYear()\n }\n } else {\n return formattedY\n }\n}\n\nconst val = {\n yyyy: getSet(0,'FullYear', 0, (v) => v, yearParse),\n yy: getSet(0,'FullYear', 0, (v) => (v+\"\").slice(2,4), yearParse),\n M: getSet(1,'Month', 1),\n MM: getSet(1,'Month', 1, addZero),\n L: getText('Month',12,3),\n LL: getText('Month',12),\n d: getSet(2,'Date'),\n dd: getSet(2,'Date', 0, addZero),\n D: getText('Day', 7, 3),\n DD: getText('Day', 7),\n m: getSet(4,'Minutes'),\n mm: getSet(4,'Minutes', 0, addZero),\n h: getSet(5,'Hours'),\n hh: getSet(5,'Hours', 0, addZero),\n ss: getSet(6,'Seconds', 0, addZero),\n SSS: getSet(7,'Milliseconds', 0, addZero),\n\n}\n\nexport function formatDateToPattern(format) {\n return format.replace(escapedValidParts, (_, _1, _2) => _1 + (_2 === 'yy' ? '##' : _2 === 'yyyy' ? '####' : '0#'))\n}\n\nexport function formatDate(date, format, messages,noUTC) {\n if (!date)\n return ''\n const separators = format.replace(escapedValidParts, '\\0').split('\\0')\n const parts = format.match(escapedValidParts)\n const formattedDate = parts.reduce((acc, part) =>\n acc.concat(\n separators.length ? [separators.shift()] : [],\n part.replace(validParts, ''),\n val[part.match(validParts)[0]][0](date, messages,noUTC)\n ),\n []\n )\n return formattedDate.join('').replace(/\\\\([dDmLhMy])/g, '$1')\n}\n\nconst now = () => new Date()\n\nexport function parseDate(str, possibleDate, format, messages, failOnFormat, noUTC) {\n if (!str)\n return possibleDate\n const separators = format.replace(escapedValidParts, '\\0').split('\\0')\n const parts = format.match(escapedValidParts)\n const mutations = []\n parts.reduce((rest, part, i) => {\n const separator = (separators.length ? separators.shift() : '') + part.replace(validParts, '')\n const current = rest.slice(separator.length)\n if (current && separator === rest.slice(0, separator.length)) {\n const setType = part.match(validParts)[0]\n const nextSeparator = separators[0]\n const nextStrIndex = current.indexOf(nextSeparator + (parts[i + 1] || '').replace(validParts, ''))\n mutations[val[setType][2]] = [val[setType][1],nextStrIndex ? current.slice(0,nextStrIndex) : current]\n return current.slice(nextStrIndex)\n } else {\n return ''\n }\n },\n str\n )\n const date = possibleDate && possibleDate.getTime()!==-1 ? new Date(possibleDate) : now()\n mutations.forEach(([setter,text])=> setter(text,date,messages,failOnFormat,noUTC))\n return date\n}"],"names":["escapedValidParts","validParts","addZero","v","getSet","index","ttype","plus","arguments","length","undefined","format","parse","defaultDate","date","_","noUTC","Date","unformatedStr","failOnFormat","str","isNaN","getTime","setTime","NaN","utcSTR","parseInt","prevDay","getText","type","total","slice","messages","toLowerCase","yearParse","y","formattedY","found","getUTCFullYear","toString","indexOf","val","yyyy","yy","M","MM","L","LL","d","dd","D","DD","m","mm","h","hh","ss","SSS","formatDateToPattern","replace","_1","_2","formatDate","separators","split","parts","match","formattedDate","reduce","acc","part","concat","shift","join","now","parseDate","possibleDate","mutations","rest","i","separator","current","setType","nextSeparator","nextStrIndex","forEach","_ref","_ref2","_slicedToArray","setter","text"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"formatDate.mjs","sources":["../src/formatDate.js"],"sourcesContent":["\nconst escapedValidParts = /(^|[^\\\\])(dd?|DD?|mm?|LL?|hh?|MM?|ss|SSS|yy(?:yy)?)/g\nconst validParts = /(dd?|DD?|mm?|LL?|hh?|MM?|yy(?:yy)|yy|ss|SSS)$/\nexport const addZero = (v) => (v < 10 ? '0' : '') + v\n\nconst getSet = (index, ttype, plus = 0, format = (v) => v, parse = (v, defaultDate) => (v === '0' ? '' : v)) => ([\n (date,_,noUTC) => format((typeof date === 'number' ? new Date(date) : date)['get'+(noUTC?'':'UTC') + ttype]() + plus),\n (unformatedStr, date, _, failOnFormat, noUTC) => {\n const str = parse(unformatedStr, date, failOnFormat)\n if (str === '' || isNaN(date.getTime()))\n return date\n if (str=== '\\0')\n return date.setTime(NaN)\n const utcSTR = noUTC ? '' : 'UTC'\n const v = parseInt(str, 10) - plus\n const prevDay = date['get'+utcSTR+'Date']()\n if (ttype !== 'Date') {\n date['set'+utcSTR+'Date'](1)\n }\n date['set'+ utcSTR + ttype](v)\n if (date['get' + utcSTR + ttype]() !== v) {\n date['set' + utcSTR + ttype](NaN)\n return date\n }\n if (ttype !== 'Date') {\n date['set'+utcSTR+'Date'](prevDay)\n if (date['get' + utcSTR + ttype]() !== v) {\n date['set'+utcSTR+'Date'](0)\n return date\n }\n }\n return date\n },\n index\n])\n\nconst getText = (type, total, slice = 99) => [\n (date, messages,noUTC) => messages(type.toLowerCase(),date['get'+(noUTC? '': 'UTC') + type]()).slice(0, slice)\n]\n\nconst yearParse = (y, date, failOnFormat) => {\n const formattedY = y.length === 2 && y !== '20' ? '20' + y : y.length === 4 ? y : ''\n if (formattedY === '') {\n if (failOnFormat) {\n const found = date.getUTCFullYear().toString().indexOf(y)\n return found === 0 || found === 2 ? date.getUTCFullYear() : '\\0'\n } else {\n return date.getUTCFullYear()\n }\n } else {\n return formattedY\n }\n}\n\nconst val = {\n yyyy: getSet(0,'FullYear', 0, (v) => v, yearParse),\n yy: getSet(0,'FullYear', 0, (v) => (v+\"\").slice(2,4), yearParse),\n M: getSet(1,'Month', 1),\n MM: getSet(1,'Month', 1, addZero),\n L: getText('Month',12,3),\n LL: getText('Month',12),\n d: getSet(2,'Date'),\n dd: getSet(2,'Date', 0, addZero),\n D: getText('Day', 7, 3),\n DD: getText('Day', 7),\n m: getSet(4,'Minutes'),\n mm: getSet(4,'Minutes', 0, addZero),\n h: getSet(5,'Hours'),\n hh: getSet(5,'Hours', 0, addZero),\n ss: getSet(6,'Seconds', 0, addZero),\n SSS: getSet(7,'Milliseconds', 0, addZero),\n\n}\n\nexport function formatDateToPattern(format) {\n return format.replace(escapedValidParts, (_, _1, _2) => _1 + (_2 === 'yy' ? '##' : _2 === 'yyyy' ? '####' : '0#'))\n}\n\nexport function formatDate(date, format, messages,noUTC) {\n if (!date && date !== 0)\n return ''\n const separators = format.replace(escapedValidParts, '\\0').split('\\0')\n const parts = format.match(escapedValidParts)\n const formattedDate = parts.reduce((acc, part) =>\n acc.concat(\n separators.length ? [separators.shift()] : [],\n part.replace(validParts, ''),\n val[part.match(validParts)[0]][0](date, messages,noUTC)\n ),\n []\n )\n return formattedDate.join('').replace(/\\\\([dDmLhMy])/g, '$1')\n}\n\nconst now = () => new Date()\n\nexport function parseDate(str, possibleDate, format, messages, failOnFormat, noUTC) {\n if (!str)\n return possibleDate\n const separators = format.replace(escapedValidParts, '\\0').split('\\0')\n const parts = format.match(escapedValidParts)\n const mutations = []\n parts.reduce((rest, part, i) => {\n const separator = (separators.length ? separators.shift() : '') + part.replace(validParts, '')\n const current = rest.slice(separator.length)\n if (current && separator === rest.slice(0, separator.length)) {\n const setType = part.match(validParts)[0]\n const nextSeparator = separators[0]\n const nextStrIndex = current.indexOf(nextSeparator + (parts[i + 1] || '').replace(validParts, ''))\n mutations[val[setType][2]] = [val[setType][1],nextStrIndex ? current.slice(0,nextStrIndex) : current]\n return current.slice(nextStrIndex)\n } else {\n return ''\n }\n },\n str\n )\n const date = possibleDate && possibleDate.getTime()!==-1 ? new Date(possibleDate) : now()\n mutations.forEach(([setter,text])=> setter(text,date,messages,failOnFormat,noUTC))\n return date\n}"],"names":["escapedValidParts","validParts","addZero","v","getSet","index","ttype","plus","arguments","length","undefined","format","parse","defaultDate","date","_","noUTC","Date","unformatedStr","failOnFormat","str","isNaN","getTime","setTime","NaN","utcSTR","parseInt","prevDay","getText","type","total","slice","messages","toLowerCase","yearParse","y","formattedY","found","getUTCFullYear","toString","indexOf","val","yyyy","yy","M","MM","L","LL","d","dd","D","DD","m","mm","h","hh","ss","SSS","formatDateToPattern","replace","_1","_2","formatDate","separators","split","parts","match","formattedDate","reduce","acc","part","concat","shift","join","now","parseDate","possibleDate","mutations","rest","i","separator","current","setType","nextSeparator","nextStrIndex","forEach","_ref","_ref2","_slicedToArray","setter","text"],"mappings":"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"}
|
package/lib/formatUtils.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import 'react';
|
|
2
2
|
import _flow from 'lodash/fp/flow';
|
|
3
|
+
import _isString from 'lodash/fp/isString';
|
|
3
4
|
import _isNumber from 'lodash/fp/isNumber';
|
|
4
5
|
import _padCharsEnd from 'lodash/fp/padCharsEnd';
|
|
5
|
-
import 'react';
|
|
6
6
|
|
|
7
7
|
const formatJoin = function (arr) {
|
|
8
8
|
let separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ', ';
|
package/lib/formatUtils.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatUtils.mjs","sources":["../src/formatUtils.jsx"],"sourcesContent":["import React from 'react'\nimport _ from 'lodash/fp'\n\nexport const formatJoin = (arr,separator = ', ', lastSeparator = ' e ') => [arr.slice(0,-1).join(separator),arr.slice(-1)].join(lastSeparator)\n\nexport const formatJoinArr = (arr,separator,lastSeparator) =>\n arr.flatMap((v,i) => i < arr.length - 2 ? [v,separator] : (i < arr.length - 1 ? [v,lastSeparator] : [v]))\n\nexport const removeAccents = (str) => (str||\"\").normalize('NFD').replace(/\\p{Diacritic}/gu, \"\")\nexport const asciify = (str) => removeAccents(str||\"\").replace(/[^\\x00-\\x7F]/g, \"\")\nexport const normalizeText = (str) => removeAccents(str).toLowerCase()\nexport const normalizeTextUrl = (str) => removeAccents(str).replace(/[\\s.\\u0022&/]/g, '-').replace(/-{2,}/g,'-').toLowerCase()\n\n\nexport const willFormatDecimal = (digits = 2,{max,min,padTo,zeroless,clean} = {}) => {\n const splitRegex = new RegExp(`(\\\\d+)(\\\\d{${digits}})`)\n const singleRegex = new RegExp(`/^([^,]*,\\\\d{0,${digits}).*/`)\n const pad = (str) =>\n padTo\n ? (str.indexOf(\",\") >= 0\n ? _.padCharsEnd(\"0\", str.indexOf(\",\") + padTo + 1,str)\n : _.padCharsEnd(\"0\", str.length + 1 + padTo, str + \",\")\n )\n : str\n const constrain = (val) => {\n if (_.isNumber(max) && parseFloat(val.replace(\",\",\".\")) > max) return max.toString()\n if (_.isNumber(min) && parseFloat(val.replace(\",\",\".\")) < min) return min.toString()\n return val\n }\n const cleaned = (val) =>\n clean\n ? (val.replace(/,$/,'').replace(/^0*,/,'0,') || \"0\")\n : val\n\n return (v) => {\n const skipZero = (finalV) => v!=='0' && zeroless && finalV === '0' ? '' : finalV.replace(/^0+([^,])/,'$1')\n const formatted = _.flow(constrain,pad,skipZero,cleaned)\n if (_.isNumber(v)) {\n return formatted(v.toString().replace(\".\",\",\"))\n }\n const fixComma = (v) => v.replace(/,/g, '').replace(splitRegex, \"$1,$2\")\n\n const format = () => {\n const allowedChars = (v||\"\").replace(/[^\\d,]/g, \"\")\n const commaIndex = allowedChars.indexOf(',')\n if (commaIndex >= 0 && commaIndex < allowedChars.length - 1 - digits) {\n const alteredComma = fixComma(allowedChars)\n if (_.isNumber(max) && parseFloat(alteredComma.replace(\",\",\".\")) > max) {\n return fixComma(allowedChars.slice(0, commaIndex + 1 + digits))\n }\n return alteredComma\n }\n const simpleNumber = allowedChars.replace(singleRegex, \"$1\")\n if (_.isNumber(max) && parseInt(simpleNumber) > max) {\n return simpleNumber.slice(0, -1)\n }\n return simpleNumber\n }\n const result = format()\n return formatted(result)\n }\n}\nexport const parseDecimalToNumber = (v) => _.isString(v) ? Number(v.replace(/\\./g,'').replace(',', \".\")) : (v || 0)"],"names":["formatJoin","arr","separator","arguments","length","undefined","lastSeparator","slice","join","formatJoinArr","flatMap","v","i","removeAccents","str","normalize","replace","asciify","normalizeText","toLowerCase","normalizeTextUrl","willFormatDecimal","digits","_ref","max","min","padTo","zeroless","clean","splitRegex","RegExp","concat","singleRegex","pad","indexOf","_padCharsEnd","constrain","val","_isNumber","parseFloat","toString","cleaned","skipZero","finalV","formatted","_flow","fixComma","format","allowedChars","commaIndex","alteredComma","simpleNumber","parseInt","result","parseDecimalToNumber","_isString","Number"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"formatUtils.mjs","sources":["../src/formatUtils.jsx"],"sourcesContent":["import React from 'react'\nimport _ from 'lodash/fp'\n\nexport const formatJoin = (arr,separator = ', ', lastSeparator = ' e ') => [arr.slice(0,-1).join(separator),arr.slice(-1)].join(lastSeparator)\n\nexport const formatJoinArr = (arr,separator,lastSeparator) =>\n arr.flatMap((v,i) => i < arr.length - 2 ? [v,separator] : (i < arr.length - 1 ? [v,lastSeparator] : [v]))\n\nexport const removeAccents = (str) => (str||\"\").normalize('NFD').replace(/\\p{Diacritic}/gu, \"\")\nexport const asciify = (str) => removeAccents(str||\"\").replace(/[^\\x00-\\x7F]/g, \"\")\nexport const normalizeText = (str) => removeAccents(str).toLowerCase()\nexport const normalizeTextUrl = (str) => removeAccents(str).replace(/[\\s.\\u0022&/]/g, '-').replace(/-{2,}/g,'-').toLowerCase()\n\n\nexport const willFormatDecimal = (digits = 2,{max,min,padTo,zeroless,clean} = {}) => {\n const splitRegex = new RegExp(`(\\\\d+)(\\\\d{${digits}})`)\n const singleRegex = new RegExp(`/^([^,]*,\\\\d{0,${digits}).*/`)\n const pad = (str) =>\n padTo\n ? (str.indexOf(\",\") >= 0\n ? _.padCharsEnd(\"0\", str.indexOf(\",\") + padTo + 1,str)\n : _.padCharsEnd(\"0\", str.length + 1 + padTo, str + \",\")\n )\n : str\n const constrain = (val) => {\n if (_.isNumber(max) && parseFloat(val.replace(\",\",\".\")) > max) return max.toString()\n if (_.isNumber(min) && parseFloat(val.replace(\",\",\".\")) < min) return min.toString()\n return val\n }\n const cleaned = (val) =>\n clean\n ? (val.replace(/,$/,'').replace(/^0*,/,'0,') || \"0\")\n : val\n\n return (v) => {\n const skipZero = (finalV) => v!=='0' && zeroless && finalV === '0' ? '' : finalV.replace(/^0+([^,])/,'$1')\n const formatted = _.flow(constrain,pad,skipZero,cleaned)\n if (_.isNumber(v)) {\n return formatted(v.toString().replace(\".\",\",\"))\n }\n const fixComma = (v) => v.replace(/,/g, '').replace(splitRegex, \"$1,$2\")\n\n const format = () => {\n const allowedChars = (v||\"\").replace(/[^\\d,]/g, \"\")\n const commaIndex = allowedChars.indexOf(',')\n if (commaIndex >= 0 && commaIndex < allowedChars.length - 1 - digits) {\n const alteredComma = fixComma(allowedChars)\n if (_.isNumber(max) && parseFloat(alteredComma.replace(\",\",\".\")) > max) {\n return fixComma(allowedChars.slice(0, commaIndex + 1 + digits))\n }\n return alteredComma\n }\n const simpleNumber = allowedChars.replace(singleRegex, \"$1\")\n if (_.isNumber(max) && parseInt(simpleNumber) > max) {\n return simpleNumber.slice(0, -1)\n }\n return simpleNumber\n }\n const result = format()\n return formatted(result)\n }\n}\nexport const parseDecimalToNumber = (v) => _.isString(v) ? Number(v.replace(/\\./g,'').replace(',', \".\")) : (v || 0)"],"names":["formatJoin","arr","separator","arguments","length","undefined","lastSeparator","slice","join","formatJoinArr","flatMap","v","i","removeAccents","str","normalize","replace","asciify","normalizeText","toLowerCase","normalizeTextUrl","willFormatDecimal","digits","_ref","max","min","padTo","zeroless","clean","splitRegex","RegExp","concat","singleRegex","pad","indexOf","_padCharsEnd","constrain","val","_isNumber","parseFloat","toString","cleaned","skipZero","finalV","formatted","_flow","fixComma","format","allowedChars","commaIndex","alteredComma","simpleNumber","parseInt","result","parseDecimalToNumber","_isString","Number"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getClosestOffsetScroll.mjs","sources":["../src/getClosestOffsetScroll.js"],"sourcesContent":["export const getClosestOffsetScroll = (node) => {\n if (!node) {\n return ((document.body))\n }\n const overflowY = window.getComputedStyle(node).overflowY\n const isScrollable = overflowY !== 'visible' && overflowY !== 'hidden';\n if (isScrollable && node.scrollHeight > node.clientHeight) {\n return node;\n } else {\n return getClosestOffsetScroll((node.offsetParent));\n }\n}\n"],"names":["getClosestOffsetScroll","node","document","body","overflowY","window","getComputedStyle","isScrollable","scrollHeight","clientHeight","offsetParent"],"mappings":"
|
|
1
|
+
{"version":3,"file":"getClosestOffsetScroll.mjs","sources":["../src/getClosestOffsetScroll.js"],"sourcesContent":["export const getClosestOffsetScroll = (node) => {\n if (!node) {\n return ((document.body))\n }\n const overflowY = window.getComputedStyle(node).overflowY\n const isScrollable = overflowY !== 'visible' && overflowY !== 'hidden';\n if (isScrollable && node.scrollHeight > node.clientHeight) {\n return node;\n } else {\n return getClosestOffsetScroll((node.offsetParent));\n }\n}\n"],"names":["getClosestOffsetScroll","node","document","body","overflowY","window","getComputedStyle","isScrollable","scrollHeight","clientHeight","offsetParent"],"mappings":"MAAaA,sBAAsB,GAAIC,IAAI,IAAK;EAC9C,IAAI,CAACA,IAAI,EAAE;IACT,OAASC,QAAQ,CAACC,IAAI;;EAExB,MAAMC,SAAS,GAAGC,MAAM,CAACC,gBAAgB,CAACL,IAAI,CAAC,CAACG,SAAS;EACzD,MAAMG,YAAY,GAAGH,SAAS,KAAK,SAAS,IAAIA,SAAS,KAAK,QAAQ;EACtE,IAAIG,YAAY,IAAIN,IAAI,CAACO,YAAY,GAAGP,IAAI,CAACQ,YAAY,EAAE;IACzD,OAAOR,IAAI;GACZ,MAAM;IACL,OAAOD,sBAAsB,CAAEC,IAAI,CAACS,YAAa,CAAC;;AAEtD;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEventListener.mjs","sources":["../../src/hooks/useEventListener.js"],"sourcesContent":["import {useEffect} from 'react'\n\nexport const useEventListener = (eventName,callback,deps = []) => {\n useEffect(() => {\n window.addEventListener(eventName,callback)\n return () => window.removeEventListener(eventName,callback)\n },deps)\n\n}\n\nexport const useEventListenerIf = (check,eventName,callback,deps = []) => {\n useEffect(() => {\n if (!check()) return\n window.addEventListener(eventName,callback)\n return () => window.removeEventListener(eventName,callback)\n },deps)\n\n}\n\nexport const useEventListenerFor = (element,eventName,callback,deps = []) => {\n useEffect(() => {\n element.addEventListener(eventName,callback)\n return () => element.removeEventListener(eventName,callback)\n },deps.concat(element))\n\n}"],"names":["useEventListener","eventName","callback","deps","arguments","length","undefined","useEffect","window","addEventListener","removeEventListener","useEventListenerIf","check","useEventListenerFor","element","concat"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"useEventListener.mjs","sources":["../../src/hooks/useEventListener.js"],"sourcesContent":["import {useEffect} from 'react'\n\nexport const useEventListener = (eventName,callback,deps = []) => {\n useEffect(() => {\n window.addEventListener(eventName,callback)\n return () => window.removeEventListener(eventName,callback)\n },deps)\n\n}\n\nexport const useEventListenerIf = (check,eventName,callback,deps = []) => {\n useEffect(() => {\n if (!check()) return\n window.addEventListener(eventName,callback)\n return () => window.removeEventListener(eventName,callback)\n },deps)\n\n}\n\nexport const useEventListenerFor = (element,eventName,callback,deps = []) => {\n useEffect(() => {\n element.addEventListener(eventName,callback)\n return () => element.removeEventListener(eventName,callback)\n },deps.concat(element))\n\n}"],"names":["useEventListener","eventName","callback","deps","arguments","length","undefined","useEffect","window","addEventListener","removeEventListener","useEventListenerIf","check","useEventListenerFor","element","concat"],"mappings":";;MAEaA,gBAAgB,GAAG,UAACC,SAAS,EAACC,QAAQ,EAAe;EAAA,IAAdC,IAAI,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAC3DG,SAAS,CAAC,MAAM;IACdC,MAAM,CAACC,gBAAgB,CAACR,SAAS,EAACC,QAAQ,CAAC;IAC3C,OAAO,MAAMM,MAAM,CAACE,mBAAmB,CAACT,SAAS,EAACC,QAAQ,CAAC;GAC5D,EAACC,IAAI,CAAC;AAET;MAEaQ,kBAAkB,GAAG,UAACC,KAAK,EAACX,SAAS,EAACC,QAAQ,EAAe;EAAA,IAAdC,IAAI,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EACnEG,SAAS,CAAC,MAAM;IACd,IAAI,CAACK,KAAK,EAAE,EAAE;IACdJ,MAAM,CAACC,gBAAgB,CAACR,SAAS,EAACC,QAAQ,CAAC;IAC3C,OAAO,MAAMM,MAAM,CAACE,mBAAmB,CAACT,SAAS,EAACC,QAAQ,CAAC;GAC5D,EAACC,IAAI,CAAC;AAET;MAEaU,mBAAmB,GAAG,UAACC,OAAO,EAACb,SAAS,EAACC,QAAQ,EAAe;EAAA,IAAdC,IAAI,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EACtEG,SAAS,CAAC,MAAM;IACdO,OAAO,CAACL,gBAAgB,CAACR,SAAS,EAACC,QAAQ,CAAC;IAC5C,OAAO,MAAMY,OAAO,CAACJ,mBAAmB,CAACT,SAAS,EAACC,QAAQ,CAAC;GAC7D,EAACC,IAAI,CAACY,MAAM,CAACD,OAAO,CAAC,CAAC;AAEzB;;;;"}
|