zeed 0.23.1 → 0.23.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.
Files changed (71) hide show
  1. package/dist/browser/localstorage.spec.cjs +1 -1
  2. package/dist/browser/localstorage.spec.js +1 -1
  3. package/dist/{chunk-ECRWQAAG.js → chunk-H2GCNFWS.js} +1 -1
  4. package/dist/chunk-H2GCNFWS.js.map +1 -0
  5. package/dist/{chunk-NKPETNNZ.cjs → chunk-UB27HMP4.cjs} +1 -1
  6. package/dist/chunk-UB27HMP4.cjs.map +1 -0
  7. package/dist/common/bin/index.spec.cjs +1 -1
  8. package/dist/common/bin/index.spec.js +1 -1
  9. package/dist/common/crypto.spec.cjs +1 -1
  10. package/dist/common/crypto.spec.js +1 -1
  11. package/dist/common/data/array.spec.cjs.map +1 -1
  12. package/dist/common/data/array.spec.js.map +1 -1
  13. package/dist/common/data/camelcase.spec.cjs.map +1 -1
  14. package/dist/common/data/camelcase.spec.js.map +1 -1
  15. package/dist/common/data/day.spec.cjs.map +1 -1
  16. package/dist/common/data/day.spec.js.map +1 -1
  17. package/dist/common/data/rounding.spec.cjs.map +1 -1
  18. package/dist/common/data/rounding.spec.js.map +1 -1
  19. package/dist/common/data/sortable.spec.cjs.map +1 -1
  20. package/dist/common/data/sortable.spec.js.map +1 -1
  21. package/dist/common/data/sorted.spec.cjs +1 -1
  22. package/dist/common/data/sorted.spec.js +1 -1
  23. package/dist/common/data/utils.spec.cjs.map +1 -1
  24. package/dist/common/data/utils.spec.js.map +1 -1
  25. package/dist/common/exec/promise.spec.cjs.map +1 -1
  26. package/dist/common/exec/promise.spec.js.map +1 -1
  27. package/dist/common/index.cjs +2 -2
  28. package/dist/common/index.js +1 -1
  29. package/dist/common/msg/encoder.spec.cjs +1 -1
  30. package/dist/common/msg/encoder.spec.js +1 -1
  31. package/dist/common/network.cjs +2 -2
  32. package/dist/common/network.js +1 -1
  33. package/dist/common/network.spec.cjs +4 -4
  34. package/dist/common/network.spec.js +1 -1
  35. package/dist/common/uuid.spec.cjs.map +1 -1
  36. package/dist/common/uuid.spec.js.map +1 -1
  37. package/dist/index.all.cjs +2 -2
  38. package/dist/index.all.js +1 -1
  39. package/dist/index.browser.cjs +2 -2
  40. package/dist/index.browser.js +1 -1
  41. package/dist/index.node.cjs +2 -2
  42. package/dist/index.node.js +1 -1
  43. package/dist/node/files-async.cjs +1 -1
  44. package/dist/node/files-async.js +1 -1
  45. package/dist/node/files-async.spec.cjs +1 -1
  46. package/dist/node/files-async.spec.js +1 -1
  47. package/dist/node/files.cjs +1 -1
  48. package/dist/node/files.js +1 -1
  49. package/dist/node/files.spec.cjs +1 -1
  50. package/dist/node/files.spec.js +1 -1
  51. package/dist/node/fs.cjs +1 -1
  52. package/dist/node/fs.js +1 -1
  53. package/dist/node/fs.spec.cjs +1 -1
  54. package/dist/node/fs.spec.js +1 -1
  55. package/dist/node/index.cjs +1 -1
  56. package/dist/node/index.js +1 -1
  57. package/dist/node/log/index.cjs +1 -1
  58. package/dist/node/log/index.js +1 -1
  59. package/dist/node/log/log-context-node.cjs +1 -1
  60. package/dist/node/log/log-context-node.js +1 -1
  61. package/dist/node/log/log-node.cjs +1 -1
  62. package/dist/node/log/log-node.js +1 -1
  63. package/dist/node/log/log-node.spec.cjs +1 -1
  64. package/dist/node/log/log-node.spec.js +1 -1
  65. package/dist/node/log/log-util.cjs +1 -1
  66. package/dist/node/log/log-util.js +1 -1
  67. package/dist/node/log/log-util.spec.cjs +1 -1
  68. package/dist/node/log/log-util.spec.js +1 -1
  69. package/package.json +3 -3
  70. package/dist/chunk-ECRWQAAG.js.map +0 -1
  71. package/dist/chunk-NKPETNNZ.cjs.map +0 -1
@@ -9,7 +9,7 @@ require('../chunk-SFUIGVPA.cjs');
9
9
  require('../chunk-X23ZSPZC.cjs');
10
10
  require('../chunk-3TNVJY4F.cjs');
11
11
  require('../chunk-MJ7L4G3V.cjs');
12
- require('../chunk-NKPETNNZ.cjs');
12
+ require('../chunk-UB27HMP4.cjs');
13
13
  require('../chunk-EZIDDVJG.cjs');
14
14
  require('../chunk-WPWV7ZEM.cjs');
15
15
  require('../chunk-H6AB4FMJ.cjs');
@@ -9,7 +9,7 @@ import "../chunk-RNL46FQ3.js";
9
9
  import "../chunk-MWUFUBY5.js";
10
10
  import "../chunk-FLFB2K34.js";
11
11
  import "../chunk-264HKVNG.js";
12
- import "../chunk-ECRWQAAG.js";
12
+ import "../chunk-H2GCNFWS.js";
13
13
  import "../chunk-AJCIHTGI.js";
14
14
  import "../chunk-HST4VI64.js";
15
15
  import "../chunk-A7SUGWC3.js";
@@ -145,4 +145,4 @@ export {
145
145
  fetchOptionsJson,
146
146
  fetchOptionsBasicAuth
147
147
  };
148
- //# sourceMappingURL=chunk-ECRWQAAG.js.map
148
+ //# sourceMappingURL=chunk-H2GCNFWS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/common/network.ts"],"sourcesContent":["import { arrayFlatten, deepMerge, isArray, jsonStringifySafe, toBase64 } from './data'\nimport { encodeQuery } from './data/url'\nimport { DefaultLogger } from './log'\nimport type { Json } from './types'\n\n// TODO: Abort signal https://codedrivendevelopment.com/posts/everything-about-abort-signal-timeout\n\ninterface fetchOptionType {\n /** Returns the cache mode associated with request, which is a string indicating how the request will interact with the browser's cache when fetching. */\n cache?: RequestCache\n /** Returns the credentials mode associated with request, which is a string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. */\n credentials?: RequestCredentials\n /** Returns the kind of resource requested by request, e.g., \"document\" or \"script\". */\n destination?: RequestDestination\n /** Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the \"Host\" header. */\n headers?: Record<string, string>\n /** Returns request's subresource integrity metadata, which is a cryptographic hash of the resource being fetched. Its value consists of multiple hashes separated by whitespace. [SRI] */\n integrity?: string\n /** Returns a boolean indicating whether or not request can outlive the global in which it was created. */\n keepalive?: boolean\n /** Returns request's HTTP method, which is \"GET\" by default. */\n method?: string\n /** Returns the mode associated with request, which is a string indicating whether the request will use CORS, or will be restricted to same-origin URLs. */\n mode?: RequestMode\n /** Returns the redirect mode associated with request, which is a string indicating how redirects for the request will be handled during fetching. A request will follow redirects by default. */\n redirect?: RequestRedirect\n /** Returns the referrer of request. Its value can be a same-origin URL if explicitly set in init, the empty string to indicate no referrer, and \"about:client\" when defaulting to the global's default. This is used during fetching to determine the value of the `Referer` header of the request being made. */\n referrer?: string\n /** Returns the referrer policy associated with request. This is used during fetching to compute the value of the request's referrer. */\n referrerPolicy?: ReferrerPolicy\n /** Returns the signal associated with request, which is an AbortSignal object indicating whether or not request has been aborted, and its abort event handler. */\n signal?: AbortSignal\n /** Returns the URL of request as a string. */\n url?: string\n body?: any\n}\n\ntype fetchOptionsType = fetchOptionType | fetchOptionsType[]\n\nconst defaultOptions: fetchOptionType = {\n cache: 'no-cache',\n redirect: 'follow',\n headers: {},\n}\n\n// Source https://developer.mozilla.org/de/docs/Web/HTTP/Methods\nexport type httpMethod =\n | 'GET'\n | 'POST'\n | 'PUT'\n | 'DELETE'\n | 'HEAD'\n | 'CONNECT'\n | 'OPTIONS'\n | 'TRACE'\n | 'PATCH'\n\nexport function parseBasicAuth(url: string) {\n const m = /:\\/\\/([^@]*)@/.exec(url)\n if (m && m[1]) {\n const [username, password] = m[1].split(':', 2)\n return {\n url: url.replace(`${m[1]}@`, ''),\n username,\n password,\n }\n }\n}\n\n/** Simplified `fetch` that returns `undefined` on non 200 status */\nexport async function fetchBasic(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<Response | undefined> {\n try {\n if (isArray(fetchOptions))\n fetchOptions = deepMerge({}, ...arrayFlatten(fetchOptions))\n\n const auth = parseBasicAuth(String(url))\n if (auth) {\n url = auth.url\n fetchOptions = deepMerge(\n {},\n fetchOptions,\n fetchOptionsBasicAuth(auth.username, auth.password),\n )\n }\n\n if (\n // @ts-expect-error headers\n fetchOptions.headers != null\n // @ts-expect-error headers\n && !(fetchOptions.headers instanceof Headers)\n ) {\n // @ts-expect-error headers\n fetchOptions.headers = new Headers(fetchOptions.headers)\n }\n\n // log(\"fetch\", url, fetchOptions)\n const response = await fetchFn(String(url), fetchOptions as RequestInit)\n\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Status\n if (response.status < 400)\n return response\n\n const log = DefaultLogger('zeed:network')\n\n try {\n log.warn(`Fetch of ${String(url)} returned status=${response.status}. Options:`, fetchOptions)\n log.warn(`Response: ${await response.text()}`)\n }\n catch (err) {\n log.error('Exception:', err)\n }\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchBasic', err)\n }\n}\n\n/** Fetch for JSON */\nexport async function fetchJson<T = Json>(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<T | undefined> {\n try {\n const res = await fetchBasic(\n url,\n [\n {\n method: 'GET',\n headers: {\n Accept: 'application/json',\n },\n },\n fetchOptions,\n ],\n fetchFn,\n )\n if (res)\n return await res.json()\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchJSON error:', err)\n }\n}\n\n/** Fetch for text */\nexport async function fetchText(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<string | undefined> {\n try {\n const res = await fetchBasic(\n url,\n [defaultOptions, { method: 'GET' }, fetchOptions],\n fetchFn,\n )\n if (res)\n return await res.text()\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchHTML error:', err)\n }\n}\n\n///\n\n/** Options for fetchBasic to send data as application/x-www-form-urlencoded */\nexport function fetchOptionsFormURLEncoded(\n data: object,\n method: httpMethod = 'POST',\n): fetchOptionType {\n return {\n method,\n ...defaultOptions,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\n },\n body: encodeQuery(data),\n }\n}\n\n/** Options to send data as JSON */\nexport function fetchOptionsJson(\n data: object,\n method: httpMethod = 'POST',\n): fetchOptionType {\n return {\n method,\n ...defaultOptions,\n headers: {\n 'Content-Type': 'application/json; charset=utf-8',\n // Accept: \"application/json\",\n },\n body: jsonStringifySafe(data),\n }\n}\n\n/** Options to pass basic auth */\nexport function fetchOptionsBasicAuth(\n username: string,\n password: string,\n): fetchOptionType {\n return {\n headers: {\n Authorization: `Basic ${toBase64(`${username}:${password}`)}`,\n },\n }\n}\n"],"mappings":"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","names":[]}
@@ -145,4 +145,4 @@ function fetchOptionsBasicAuth(username, password) {
145
145
 
146
146
 
147
147
  exports.parseBasicAuth = parseBasicAuth; exports.fetchBasic = fetchBasic; exports.fetchJson = fetchJson; exports.fetchText = fetchText; exports.fetchOptionsFormURLEncoded = fetchOptionsFormURLEncoded; exports.fetchOptionsJson = fetchOptionsJson; exports.fetchOptionsBasicAuth = fetchOptionsBasicAuth;
148
- //# sourceMappingURL=chunk-NKPETNNZ.cjs.map
148
+ //# sourceMappingURL=chunk-UB27HMP4.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/chunk-UB27HMP4.cjs","../src/common/network.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACiBA,IAAM,eAAA,EAAkC;AAAA,EACtC,KAAA,EAAO,UAAA;AAAA,EACP,QAAA,EAAU,QAAA;AAAA,EACV,OAAA,EAAS,CAAC;AACZ,CAAA;AAcO,SAAS,cAAA,CAAe,GAAA,EAAa;AAC1C,EAAA,MAAM,EAAA,EAAI,eAAA,CAAgB,IAAA,CAAK,GAAG,CAAA;AAClC,EAAA,GAAA,CAAI,EAAA,GAAK,CAAA,CAAE,CAAC,CAAA,EAAG;AACb,IAAA,MAAM,CAAC,QAAA,EAAU,QAAQ,EAAA,EAAI,CAAA,CAAE,CAAC,CAAA,CAAE,KAAA,CAAM,GAAA,EAAK,CAAC,CAAA;AAC9C,IAAA,OAAO;AAAA,MACL,GAAA,EAAK,GAAA,CAAI,OAAA,CAAQ,CAAA,EAAA;AACjB,MAAA;AACA,MAAA;AACF,IAAA;AACF,EAAA;AACF;AAGsB;AAKhB,EAAA;AACU,IAAA;AACK,MAAA;AAEJ,IAAA;AACH,IAAA;AACG,MAAA;AACI,MAAA;AACZ,QAAA;AACD,QAAA;AACA,QAAA;AACF,MAAA;AACF,IAAA;AAEA,IAAA;AAAA;AAEe,MAAA;AAGb,IAAA;AAEa,MAAA;AACf,IAAA;AAGiB,IAAA;AAGJ,IAAA;AACJ,MAAA;AAEG,IAAA;AAER,IAAA;AACO,MAAA;AACA,MAAA;AAEC,IAAA;AACA,MAAA;AACZ,IAAA;AAEU,EAAA;AACE,IAAA;AACF,IAAA;AACZ,EAAA;AACF;AAGsB;AAKhB,EAAA;AACgB,IAAA;AAChB,MAAA;AACA,MAAA;AACE,QAAA;AACU,UAAA;AACC,UAAA;AACC,YAAA;AACV,UAAA;AACF,QAAA;AACA,QAAA;AACF,MAAA;AACA,MAAA;AACF,IAAA;AACI,IAAA;AACe,MAAA;AAET,EAAA;AACE,IAAA;AACF,IAAA;AACZ,EAAA;AACF;AAGsB;AAKhB,EAAA;AACgB,IAAA;AAChB,MAAA;AACiB,MAAA;AACjB,MAAA;AACF,IAAA;AACI,IAAA;AACe,MAAA;AAET,EAAA;AACE,IAAA;AACF,IAAA;AACZ,EAAA;AACF;AAKgB;AAIP,EAAA;AACL,IAAA;AACG,IAAA;AACM,IAAA;AACS,MAAA;AAClB,IAAA;AACkB,IAAA;AACpB,EAAA;AACF;AAGgB;AAIP,EAAA;AACL,IAAA;AACG,IAAA;AACM,IAAA;AACS,MAAA;AAAA;AAElB,IAAA;AACM,IAAA;AACR,EAAA;AACF;AAGgB;AAIP,EAAA;AACI,IAAA;AACQ,MAAA;AACjB,IAAA;AACF,EAAA;AACF;AD9EwB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/zeed/zeed/dist/chunk-UB27HMP4.cjs","sourcesContent":[null,"import { arrayFlatten, deepMerge, isArray, jsonStringifySafe, toBase64 } from './data'\nimport { encodeQuery } from './data/url'\nimport { DefaultLogger } from './log'\nimport type { Json } from './types'\n\n// TODO: Abort signal https://codedrivendevelopment.com/posts/everything-about-abort-signal-timeout\n\ninterface fetchOptionType {\n /** Returns the cache mode associated with request, which is a string indicating how the request will interact with the browser's cache when fetching. */\n cache?: RequestCache\n /** Returns the credentials mode associated with request, which is a string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. */\n credentials?: RequestCredentials\n /** Returns the kind of resource requested by request, e.g., \"document\" or \"script\". */\n destination?: RequestDestination\n /** Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the \"Host\" header. */\n headers?: Record<string, string>\n /** Returns request's subresource integrity metadata, which is a cryptographic hash of the resource being fetched. Its value consists of multiple hashes separated by whitespace. [SRI] */\n integrity?: string\n /** Returns a boolean indicating whether or not request can outlive the global in which it was created. */\n keepalive?: boolean\n /** Returns request's HTTP method, which is \"GET\" by default. */\n method?: string\n /** Returns the mode associated with request, which is a string indicating whether the request will use CORS, or will be restricted to same-origin URLs. */\n mode?: RequestMode\n /** Returns the redirect mode associated with request, which is a string indicating how redirects for the request will be handled during fetching. A request will follow redirects by default. */\n redirect?: RequestRedirect\n /** Returns the referrer of request. Its value can be a same-origin URL if explicitly set in init, the empty string to indicate no referrer, and \"about:client\" when defaulting to the global's default. This is used during fetching to determine the value of the `Referer` header of the request being made. */\n referrer?: string\n /** Returns the referrer policy associated with request. This is used during fetching to compute the value of the request's referrer. */\n referrerPolicy?: ReferrerPolicy\n /** Returns the signal associated with request, which is an AbortSignal object indicating whether or not request has been aborted, and its abort event handler. */\n signal?: AbortSignal\n /** Returns the URL of request as a string. */\n url?: string\n body?: any\n}\n\ntype fetchOptionsType = fetchOptionType | fetchOptionsType[]\n\nconst defaultOptions: fetchOptionType = {\n cache: 'no-cache',\n redirect: 'follow',\n headers: {},\n}\n\n// Source https://developer.mozilla.org/de/docs/Web/HTTP/Methods\nexport type httpMethod =\n | 'GET'\n | 'POST'\n | 'PUT'\n | 'DELETE'\n | 'HEAD'\n | 'CONNECT'\n | 'OPTIONS'\n | 'TRACE'\n | 'PATCH'\n\nexport function parseBasicAuth(url: string) {\n const m = /:\\/\\/([^@]*)@/.exec(url)\n if (m && m[1]) {\n const [username, password] = m[1].split(':', 2)\n return {\n url: url.replace(`${m[1]}@`, ''),\n username,\n password,\n }\n }\n}\n\n/** Simplified `fetch` that returns `undefined` on non 200 status */\nexport async function fetchBasic(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<Response | undefined> {\n try {\n if (isArray(fetchOptions))\n fetchOptions = deepMerge({}, ...arrayFlatten(fetchOptions))\n\n const auth = parseBasicAuth(String(url))\n if (auth) {\n url = auth.url\n fetchOptions = deepMerge(\n {},\n fetchOptions,\n fetchOptionsBasicAuth(auth.username, auth.password),\n )\n }\n\n if (\n // @ts-expect-error headers\n fetchOptions.headers != null\n // @ts-expect-error headers\n && !(fetchOptions.headers instanceof Headers)\n ) {\n // @ts-expect-error headers\n fetchOptions.headers = new Headers(fetchOptions.headers)\n }\n\n // log(\"fetch\", url, fetchOptions)\n const response = await fetchFn(String(url), fetchOptions as RequestInit)\n\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Status\n if (response.status < 400)\n return response\n\n const log = DefaultLogger('zeed:network')\n\n try {\n log.warn(`Fetch of ${String(url)} returned status=${response.status}. Options:`, fetchOptions)\n log.warn(`Response: ${await response.text()}`)\n }\n catch (err) {\n log.error('Exception:', err)\n }\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchBasic', err)\n }\n}\n\n/** Fetch for JSON */\nexport async function fetchJson<T = Json>(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<T | undefined> {\n try {\n const res = await fetchBasic(\n url,\n [\n {\n method: 'GET',\n headers: {\n Accept: 'application/json',\n },\n },\n fetchOptions,\n ],\n fetchFn,\n )\n if (res)\n return await res.json()\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchJSON error:', err)\n }\n}\n\n/** Fetch for text */\nexport async function fetchText(\n url: string | URL,\n fetchOptions: fetchOptionsType = {},\n fetchFn: (input: RequestInfo, init?: RequestInit) => Promise<Response> = fetch,\n): Promise<string | undefined> {\n try {\n const res = await fetchBasic(\n url,\n [defaultOptions, { method: 'GET' }, fetchOptions],\n fetchFn,\n )\n if (res)\n return await res.text()\n }\n catch (err) {\n const log = DefaultLogger('zeed:network')\n log.error('fetchHTML error:', err)\n }\n}\n\n///\n\n/** Options for fetchBasic to send data as application/x-www-form-urlencoded */\nexport function fetchOptionsFormURLEncoded(\n data: object,\n method: httpMethod = 'POST',\n): fetchOptionType {\n return {\n method,\n ...defaultOptions,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',\n },\n body: encodeQuery(data),\n }\n}\n\n/** Options to send data as JSON */\nexport function fetchOptionsJson(\n data: object,\n method: httpMethod = 'POST',\n): fetchOptionType {\n return {\n method,\n ...defaultOptions,\n headers: {\n 'Content-Type': 'application/json; charset=utf-8',\n // Accept: \"application/json\",\n },\n body: jsonStringifySafe(data),\n }\n}\n\n/** Options to pass basic auth */\nexport function fetchOptionsBasicAuth(\n username: string,\n password: string,\n): fetchOptionType {\n return {\n headers: {\n Authorization: `Basic ${toBase64(`${username}:${password}`)}`,\n },\n }\n}\n"]}
@@ -14,7 +14,7 @@ require('../../chunk-SFUIGVPA.cjs');
14
14
  require('../../chunk-X23ZSPZC.cjs');
15
15
  require('../../chunk-3TNVJY4F.cjs');
16
16
  require('../../chunk-MJ7L4G3V.cjs');
17
- require('../../chunk-NKPETNNZ.cjs');
17
+ require('../../chunk-UB27HMP4.cjs');
18
18
  require('../../chunk-EZIDDVJG.cjs');
19
19
  require('../../chunk-WPWV7ZEM.cjs');
20
20
  require('../../chunk-H6AB4FMJ.cjs');
@@ -14,7 +14,7 @@ import "../../chunk-RNL46FQ3.js";
14
14
  import "../../chunk-MWUFUBY5.js";
15
15
  import "../../chunk-FLFB2K34.js";
16
16
  import "../../chunk-264HKVNG.js";
17
- import "../../chunk-ECRWQAAG.js";
17
+ import "../../chunk-H2GCNFWS.js";
18
18
  import "../../chunk-AJCIHTGI.js";
19
19
  import "../../chunk-HST4VI64.js";
20
20
  import "../../chunk-A7SUGWC3.js";
@@ -9,7 +9,7 @@ require('../chunk-SFUIGVPA.cjs');
9
9
  require('../chunk-X23ZSPZC.cjs');
10
10
  require('../chunk-3TNVJY4F.cjs');
11
11
  require('../chunk-MJ7L4G3V.cjs');
12
- require('../chunk-NKPETNNZ.cjs');
12
+ require('../chunk-UB27HMP4.cjs');
13
13
  require('../chunk-EZIDDVJG.cjs');
14
14
  require('../chunk-WPWV7ZEM.cjs');
15
15
  require('../chunk-H6AB4FMJ.cjs');
@@ -9,7 +9,7 @@ import "../chunk-RNL46FQ3.js";
9
9
  import "../chunk-MWUFUBY5.js";
10
10
  import "../chunk-FLFB2K34.js";
11
11
  import "../chunk-264HKVNG.js";
12
- import "../chunk-ECRWQAAG.js";
12
+ import "../chunk-H2GCNFWS.js";
13
13
  import "../chunk-AJCIHTGI.js";
14
14
  import "../chunk-HST4VI64.js";
15
15
  import "../chunk-A7SUGWC3.js";
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/array.spec.cjs","../../../src/common/data/array.spec.ts"],"names":[],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/array.spec.cjs","sourcesContent":[null,"import {\n arrayAvg,\n arrayBatches,\n arrayFilterInPlace,\n arrayFlatten,\n arrayIntersection,\n arrayIsEqual,\n arrayMax,\n arrayMin,\n arrayMinus,\n arrayRemoveElement,\n arraySetArrayInPlace,\n arrayShuffleForce,\n arraySorted,\n arraySortedNumbers,\n arraySum,\n arraySymmetricDifference,\n arrayToggleInPlace,\n arrayUnion,\n createArray,\n} from './array'\n\ndescribe('array', () => {\n it('should remove items', () => {\n const r = arrayRemoveElement([1, 2, 3, 2, 4], 2)\n expect(r).toEqual([1, 3, 4])\n })\n\n it('should set in place items', () => {\n const r = [1, 2, 3]\n arraySetArrayInPlace(r, [9, 8, 7])\n expect(r).toEqual([9, 8, 7])\n })\n\n it('should intersect', () => {\n expect(arrayIntersection([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([2, 3])\n expect(arraySymmetricDifference([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([\n 1,\n 5,\n 6,\n ])\n expect(arrayUnion([1, 1, 2, 2, 3], [2, 2, 3, 5, 6], [7, 8])).toEqual([\n 1,\n 2,\n 3,\n 5,\n 6,\n 7,\n 8,\n ])\n expect(arrayMinus([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([1])\n })\n\n it('should sort', () => {\n const a: number[] = [9, 2, 1, 11, 8]\n\n expect(arraySorted(a, (l, r) => l - r)).toEqual([1, 2, 8, 9, 11])\n expect(arraySortedNumbers(a)).toEqual([1, 2, 8, 9, 11])\n expect(arraySorted(a)).toEqual([1, 2, 8, 9, 11])\n expect(a).toEqual([9, 2, 1, 11, 8])\n })\n\n it('should filter in place', () => {\n const array = [1, 2, 3, 4, 5, 6, 7, 8, 9]\n arrayFilterInPlace(array, el => el % 2 === 0)\n expect(array).toEqual([2, 4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8, 2])\n arrayFilterInPlace(array, () => false)\n expect(array).toEqual([])\n })\n\n it('should compare arrays', () => {\n expect(arrayIsEqual([1, 2], [2, 1])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2])).toBe(true)\n expect(arrayIsEqual([1, 2], [1, 2, undefined])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2, 3])).toBe(false)\n expect(arrayIsEqual([1, 2, 3], [1, 2])).toBe(false)\n })\n\n it('should shuffle', () => {\n expect(arrayShuffleForce([1, 2, 3])).not.toEqual([1, 2, 3])\n })\n\n it('should min/max', () => {\n expect(arrayMin(1, [2, 3])).toBe(1)\n expect(arrayMax(1, [2, 3])).toBe(3)\n expect(arrayMin('1a', ['2b', '3c'])).toBe('1a')\n expect(arrayMax('1a', ['2b', '3c'])).toBe('3c')\n })\n\n it('should sum/avg', () => {\n expect(arraySum(1, [2, 3])).toBe(6)\n expect(arrayAvg(1, [2, 3])).toBe(2)\n })\n\n it('should flatten', () => {\n expect(arrayFlatten(1, 2, [3, [4, 5]], 6)).toEqual([1, 2, 3, 4, 5, 6])\n })\n\n it('should create array', () => {\n expect(createArray(10, i => i + 2)).toEqual([\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n ])\n expect(createArray(3)).toEqual([undefined, undefined, undefined])\n expect(createArray(3, 'hello')).toEqual(['hello', 'hello', 'hello'])\n expect(createArray()).toEqual([])\n })\n\n it('should create batches', () => {\n expect(arrayBatches([1, 2, 3, 4, 5, 6, 7], 2)).toEqual([\n [1, 2],\n [3, 4],\n [5, 6],\n [7],\n ])\n })\n})\n"]}
1
+ {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/array.spec.cjs","../../../src/common/data/array.spec.ts"],"names":[],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/array.spec.cjs","sourcesContent":[null,"import { arrayAvg, arrayBatches, arrayFilterInPlace, arrayFlatten, arrayIntersection, arrayIsEqual, arrayMax, arrayMin, arrayMinus, arrayRemoveElement, arraySetArrayInPlace, arrayShuffleForce, arraySorted, arraySortedNumbers, arraySum, arraySymmetricDifference, arrayToggleInPlace, arrayUnion, createArray } from './array'\n\ndescribe('array', () => {\n it('should remove items', () => {\n const r = arrayRemoveElement([1, 2, 3, 2, 4], 2)\n expect(r).toEqual([1, 3, 4])\n })\n\n it('should set in place items', () => {\n const r = [1, 2, 3]\n arraySetArrayInPlace(r, [9, 8, 7])\n expect(r).toEqual([9, 8, 7])\n })\n\n it('should intersect', () => {\n expect(arrayIntersection([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([2, 3])\n expect(arraySymmetricDifference([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([\n 1,\n 5,\n 6,\n ])\n expect(arrayUnion([1, 1, 2, 2, 3], [2, 2, 3, 5, 6], [7, 8])).toEqual([\n 1,\n 2,\n 3,\n 5,\n 6,\n 7,\n 8,\n ])\n expect(arrayMinus([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([1])\n })\n\n it('should sort', () => {\n const a: number[] = [9, 2, 1, 11, 8]\n\n expect(arraySorted(a, (l, r) => l - r)).toEqual([1, 2, 8, 9, 11])\n expect(arraySortedNumbers(a)).toEqual([1, 2, 8, 9, 11])\n expect(arraySorted(a)).toEqual([1, 2, 8, 9, 11])\n expect(a).toEqual([9, 2, 1, 11, 8])\n })\n\n it('should filter in place', () => {\n const array = [1, 2, 3, 4, 5, 6, 7, 8, 9]\n arrayFilterInPlace(array, el => el % 2 === 0)\n expect(array).toEqual([2, 4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8, 2])\n arrayFilterInPlace(array, () => false)\n expect(array).toEqual([])\n })\n\n it('should compare arrays', () => {\n expect(arrayIsEqual([1, 2], [2, 1])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2])).toBe(true)\n expect(arrayIsEqual([1, 2], [1, 2, undefined])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2, 3])).toBe(false)\n expect(arrayIsEqual([1, 2, 3], [1, 2])).toBe(false)\n })\n\n it('should shuffle', () => {\n expect(arrayShuffleForce([1, 2, 3])).not.toEqual([1, 2, 3])\n })\n\n it('should min/max', () => {\n expect(arrayMin(1, [2, 3])).toBe(1)\n expect(arrayMax(1, [2, 3])).toBe(3)\n expect(arrayMin('1a', ['2b', '3c'])).toBe('1a')\n expect(arrayMax('1a', ['2b', '3c'])).toBe('3c')\n })\n\n it('should sum/avg', () => {\n expect(arraySum(1, [2, 3])).toBe(6)\n expect(arrayAvg(1, [2, 3])).toBe(2)\n })\n\n it('should flatten', () => {\n expect(arrayFlatten(1, 2, [3, [4, 5]], 6)).toEqual([1, 2, 3, 4, 5, 6])\n })\n\n it('should create array', () => {\n expect(createArray(10, i => i + 2)).toEqual([\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n ])\n expect(createArray(3)).toEqual([undefined, undefined, undefined])\n expect(createArray(3, 'hello')).toEqual(['hello', 'hello', 'hello'])\n expect(createArray()).toEqual([])\n })\n\n it('should create batches', () => {\n expect(arrayBatches([1, 2, 3, 4, 5, 6, 7], 2)).toEqual([\n [1, 2],\n [3, 4],\n [5, 6],\n [7],\n ])\n })\n})\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/common/data/array.spec.ts"],"sourcesContent":["import {\n arrayAvg,\n arrayBatches,\n arrayFilterInPlace,\n arrayFlatten,\n arrayIntersection,\n arrayIsEqual,\n arrayMax,\n arrayMin,\n arrayMinus,\n arrayRemoveElement,\n arraySetArrayInPlace,\n arrayShuffleForce,\n arraySorted,\n arraySortedNumbers,\n arraySum,\n arraySymmetricDifference,\n arrayToggleInPlace,\n arrayUnion,\n createArray,\n} from './array'\n\ndescribe('array', () => {\n it('should remove items', () => {\n const r = arrayRemoveElement([1, 2, 3, 2, 4], 2)\n expect(r).toEqual([1, 3, 4])\n })\n\n it('should set in place items', () => {\n const r = [1, 2, 3]\n arraySetArrayInPlace(r, [9, 8, 7])\n expect(r).toEqual([9, 8, 7])\n })\n\n it('should intersect', () => {\n expect(arrayIntersection([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([2, 3])\n expect(arraySymmetricDifference([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([\n 1,\n 5,\n 6,\n ])\n expect(arrayUnion([1, 1, 2, 2, 3], [2, 2, 3, 5, 6], [7, 8])).toEqual([\n 1,\n 2,\n 3,\n 5,\n 6,\n 7,\n 8,\n ])\n expect(arrayMinus([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([1])\n })\n\n it('should sort', () => {\n const a: number[] = [9, 2, 1, 11, 8]\n\n expect(arraySorted(a, (l, r) => l - r)).toEqual([1, 2, 8, 9, 11])\n expect(arraySortedNumbers(a)).toEqual([1, 2, 8, 9, 11])\n expect(arraySorted(a)).toEqual([1, 2, 8, 9, 11])\n expect(a).toEqual([9, 2, 1, 11, 8])\n })\n\n it('should filter in place', () => {\n const array = [1, 2, 3, 4, 5, 6, 7, 8, 9]\n arrayFilterInPlace(array, el => el % 2 === 0)\n expect(array).toEqual([2, 4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8, 2])\n arrayFilterInPlace(array, () => false)\n expect(array).toEqual([])\n })\n\n it('should compare arrays', () => {\n expect(arrayIsEqual([1, 2], [2, 1])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2])).toBe(true)\n expect(arrayIsEqual([1, 2], [1, 2, undefined])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2, 3])).toBe(false)\n expect(arrayIsEqual([1, 2, 3], [1, 2])).toBe(false)\n })\n\n it('should shuffle', () => {\n expect(arrayShuffleForce([1, 2, 3])).not.toEqual([1, 2, 3])\n })\n\n it('should min/max', () => {\n expect(arrayMin(1, [2, 3])).toBe(1)\n expect(arrayMax(1, [2, 3])).toBe(3)\n expect(arrayMin('1a', ['2b', '3c'])).toBe('1a')\n expect(arrayMax('1a', ['2b', '3c'])).toBe('3c')\n })\n\n it('should sum/avg', () => {\n expect(arraySum(1, [2, 3])).toBe(6)\n expect(arrayAvg(1, [2, 3])).toBe(2)\n })\n\n it('should flatten', () => {\n expect(arrayFlatten(1, 2, [3, [4, 5]], 6)).toEqual([1, 2, 3, 4, 5, 6])\n })\n\n it('should create array', () => {\n expect(createArray(10, i => i + 2)).toEqual([\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n ])\n expect(createArray(3)).toEqual([undefined, undefined, undefined])\n expect(createArray(3, 'hello')).toEqual(['hello', 'hello', 'hello'])\n expect(createArray()).toEqual([])\n })\n\n it('should create batches', () => {\n expect(arrayBatches([1, 2, 3, 4, 5, 6, 7], 2)).toEqual([\n [1, 2],\n [3, 4],\n [5, 6],\n [7],\n ])\n })\n})\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/common/data/array.spec.ts"],"sourcesContent":["import { arrayAvg, arrayBatches, arrayFilterInPlace, arrayFlatten, arrayIntersection, arrayIsEqual, arrayMax, arrayMin, arrayMinus, arrayRemoveElement, arraySetArrayInPlace, arrayShuffleForce, arraySorted, arraySortedNumbers, arraySum, arraySymmetricDifference, arrayToggleInPlace, arrayUnion, createArray } from './array'\n\ndescribe('array', () => {\n it('should remove items', () => {\n const r = arrayRemoveElement([1, 2, 3, 2, 4], 2)\n expect(r).toEqual([1, 3, 4])\n })\n\n it('should set in place items', () => {\n const r = [1, 2, 3]\n arraySetArrayInPlace(r, [9, 8, 7])\n expect(r).toEqual([9, 8, 7])\n })\n\n it('should intersect', () => {\n expect(arrayIntersection([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([2, 3])\n expect(arraySymmetricDifference([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([\n 1,\n 5,\n 6,\n ])\n expect(arrayUnion([1, 1, 2, 2, 3], [2, 2, 3, 5, 6], [7, 8])).toEqual([\n 1,\n 2,\n 3,\n 5,\n 6,\n 7,\n 8,\n ])\n expect(arrayMinus([1, 1, 2, 2, 3], [2, 2, 3, 5, 6])).toEqual([1])\n })\n\n it('should sort', () => {\n const a: number[] = [9, 2, 1, 11, 8]\n\n expect(arraySorted(a, (l, r) => l - r)).toEqual([1, 2, 8, 9, 11])\n expect(arraySortedNumbers(a)).toEqual([1, 2, 8, 9, 11])\n expect(arraySorted(a)).toEqual([1, 2, 8, 9, 11])\n expect(a).toEqual([9, 2, 1, 11, 8])\n })\n\n it('should filter in place', () => {\n const array = [1, 2, 3, 4, 5, 6, 7, 8, 9]\n arrayFilterInPlace(array, el => el % 2 === 0)\n expect(array).toEqual([2, 4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8])\n arrayToggleInPlace(array, 2)\n expect(array).toEqual([4, 6, 8, 2])\n arrayFilterInPlace(array, () => false)\n expect(array).toEqual([])\n })\n\n it('should compare arrays', () => {\n expect(arrayIsEqual([1, 2], [2, 1])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2])).toBe(true)\n expect(arrayIsEqual([1, 2], [1, 2, undefined])).toBe(false)\n expect(arrayIsEqual([1, 2], [1, 2, 3])).toBe(false)\n expect(arrayIsEqual([1, 2, 3], [1, 2])).toBe(false)\n })\n\n it('should shuffle', () => {\n expect(arrayShuffleForce([1, 2, 3])).not.toEqual([1, 2, 3])\n })\n\n it('should min/max', () => {\n expect(arrayMin(1, [2, 3])).toBe(1)\n expect(arrayMax(1, [2, 3])).toBe(3)\n expect(arrayMin('1a', ['2b', '3c'])).toBe('1a')\n expect(arrayMax('1a', ['2b', '3c'])).toBe('3c')\n })\n\n it('should sum/avg', () => {\n expect(arraySum(1, [2, 3])).toBe(6)\n expect(arrayAvg(1, [2, 3])).toBe(2)\n })\n\n it('should flatten', () => {\n expect(arrayFlatten(1, 2, [3, [4, 5]], 6)).toEqual([1, 2, 3, 4, 5, 6])\n })\n\n it('should create array', () => {\n expect(createArray(10, i => i + 2)).toEqual([\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n ])\n expect(createArray(3)).toEqual([undefined, undefined, undefined])\n expect(createArray(3, 'hello')).toEqual(['hello', 'hello', 'hello'])\n expect(createArray()).toEqual([])\n })\n\n it('should create batches', () => {\n expect(arrayBatches([1, 2, 3, 4, 5, 6, 7], 2)).toEqual([\n [1, 2],\n [3, 4],\n [5, 6],\n [7],\n ])\n })\n})\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/camelcase.spec.cjs","../../../src/common/data/camelcase.spec.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACF,4DAAiC;AACjC,oCAAiC;AACjC;AACA;ACDA,QAAA,CAAS,WAAA,EAAa,CAAA,EAAA,GAAM;AAC1B,EAAA,EAAA,CAAG,gBAAA,EAAkB,CAAA,EAAA,GAAM;AACzB,IAAA,MAAA;AAAA,MACE;AAAA,QACE,uBAAA;AAAA,QACA,gBAAA;AAAA,QACA,wBAAA;AAAA,QACA,qBAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,6BAAW;AAAA,IACnB,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,iBAAA;AAAA,MACA,gBAAA;AAAA,MACA,qBAAA;AAAA,MACA,kBAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AAED,EAAA,EAAA,CAAG,mBAAA,EAAqB,CAAA,EAAA,GAAM;AAC5B,IAAA,MAAA;AAAA,MACE;AAAA,QACE,gBAAA;AAAA,QACA,eAAA;AAAA,QACA,SAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,8BAAY;AAAA,IACpB,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,gBAAA;AAAA,MACA,eAAA;AAAA,MACA,SAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AAED,EAAA,EAAA,CAAG,yBAAA,EAA2B,CAAA,EAAA,GAAM;AAClC,IAAA,MAAA;AAAA,MACE;AAAA,QACE,gBAAA;AAAA,QACA,eAAA;AAAA,QACA,SAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,mCAAiB;AAAA,IACzB,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,gBAAA;AAAA,MACA,eAAA;AAAA,MACA,SAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AAED,EAAA,EAAA,CAAG,qBAAA,EAAuB,CAAA,EAAA,GAAM;AAC9B,IAAA,MAAA;AAAA,MACE;AAAA,QACE,iBAAA;AAAA,QACA,gBAAA;AAAA,QACA,qBAAA;AAAA,QACA,kBAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,CAAA,CAAA,EAAA,GAAK,6CAAA,CAAe,CAAC;AAAA,IAC7B,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,kBAAA;AAAA,MACA,mBAAA;AAAA,MACA,uBAAA;AAAA,MACA,oBAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AACH,CAAC,CAAA","file":"/home/runner/work/zeed/zeed/dist/common/data/camelcase.spec.cjs","sourcesContent":[null,"import {\n fromCamelCase,\n toCamelCase,\n toCapitalize,\n toCapitalizeWords,\n} from './camelcase'\n\ndescribe('camelcase', () => {\n it('should convert', () => {\n expect(\n [\n ' spaces somewhere ',\n 'BigOnesAtStart',\n 'camel_case_classic_123',\n '-camel-case-classic',\n 'ONLY_CAPTITAL_LETTERS_123',\n ].map(toCamelCase),\n ).toEqual([\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ])\n })\n\n it('should capitalize', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalize),\n ).toEqual([\n 'This is a test',\n 'Capital first',\n 'All big',\n '5tart with number and endin6',\n ])\n })\n\n it('should capitalize words', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalizeWords),\n ).toEqual([\n 'This Is A Test',\n 'Capital First',\n 'All Big',\n '5tart With Number And Endin6',\n ])\n })\n\n it('should convert back', () => {\n expect(\n [\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ].map(s => fromCamelCase(s)),\n ).toEqual([\n 'spaces-somewhere',\n 'big-ones-at-start',\n 'camel-case-classic123',\n 'camel-case-classic',\n 'only-captital-letters123',\n ])\n })\n})\n"]}
1
+ {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/camelcase.spec.cjs","../../../src/common/data/camelcase.spec.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACF,4DAAiC;AACjC,oCAAiC;AACjC;AACA;ACNA,QAAA,CAAS,WAAA,EAAa,CAAA,EAAA,GAAM;AAC1B,EAAA,EAAA,CAAG,gBAAA,EAAkB,CAAA,EAAA,GAAM;AACzB,IAAA,MAAA;AAAA,MACE;AAAA,QACE,uBAAA;AAAA,QACA,gBAAA;AAAA,QACA,wBAAA;AAAA,QACA,qBAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,6BAAW;AAAA,IACnB,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,iBAAA;AAAA,MACA,gBAAA;AAAA,MACA,qBAAA;AAAA,MACA,kBAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AAED,EAAA,EAAA,CAAG,mBAAA,EAAqB,CAAA,EAAA,GAAM;AAC5B,IAAA,MAAA;AAAA,MACE;AAAA,QACE,gBAAA;AAAA,QACA,eAAA;AAAA,QACA,SAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,8BAAY;AAAA,IACpB,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,gBAAA;AAAA,MACA,eAAA;AAAA,MACA,SAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AAED,EAAA,EAAA,CAAG,yBAAA,EAA2B,CAAA,EAAA,GAAM;AAClC,IAAA,MAAA;AAAA,MACE;AAAA,QACE,gBAAA;AAAA,QACA,eAAA;AAAA,QACA,SAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,mCAAiB;AAAA,IACzB,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,gBAAA;AAAA,MACA,eAAA;AAAA,MACA,SAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AAED,EAAA,EAAA,CAAG,qBAAA,EAAuB,CAAA,EAAA,GAAM;AAC9B,IAAA,MAAA;AAAA,MACE;AAAA,QACE,iBAAA;AAAA,QACA,gBAAA;AAAA,QACA,qBAAA;AAAA,QACA,kBAAA;AAAA,QACA;AAAA,MACF,CAAA,CAAE,GAAA,CAAI,CAAA,CAAA,EAAA,GAAK,6CAAA,CAAe,CAAC;AAAA,IAC7B,CAAA,CAAE,OAAA,CAAQ;AAAA,MACR,kBAAA;AAAA,MACA,mBAAA;AAAA,MACA,uBAAA;AAAA,MACA,oBAAA;AAAA,MACA;AAAA,IACF,CAAC,CAAA;AAAA,EACH,CAAC,CAAA;AACH,CAAC,CAAA","file":"/home/runner/work/zeed/zeed/dist/common/data/camelcase.spec.cjs","sourcesContent":[null,"import { fromCamelCase, toCamelCase, toCapitalize, toCapitalizeWords } from './camelcase'\n\ndescribe('camelcase', () => {\n it('should convert', () => {\n expect(\n [\n ' spaces somewhere ',\n 'BigOnesAtStart',\n 'camel_case_classic_123',\n '-camel-case-classic',\n 'ONLY_CAPTITAL_LETTERS_123',\n ].map(toCamelCase),\n ).toEqual([\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ])\n })\n\n it('should capitalize', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalize),\n ).toEqual([\n 'This is a test',\n 'Capital first',\n 'All big',\n '5tart with number and endin6',\n ])\n })\n\n it('should capitalize words', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalizeWords),\n ).toEqual([\n 'This Is A Test',\n 'Capital First',\n 'All Big',\n '5tart With Number And Endin6',\n ])\n })\n\n it('should convert back', () => {\n expect(\n [\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ].map(s => fromCamelCase(s)),\n ).toEqual([\n 'spaces-somewhere',\n 'big-ones-at-start',\n 'camel-case-classic123',\n 'camel-case-classic',\n 'only-captital-letters123',\n ])\n })\n})\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/common/data/camelcase.spec.ts"],"sourcesContent":["import {\n fromCamelCase,\n toCamelCase,\n toCapitalize,\n toCapitalizeWords,\n} from './camelcase'\n\ndescribe('camelcase', () => {\n it('should convert', () => {\n expect(\n [\n ' spaces somewhere ',\n 'BigOnesAtStart',\n 'camel_case_classic_123',\n '-camel-case-classic',\n 'ONLY_CAPTITAL_LETTERS_123',\n ].map(toCamelCase),\n ).toEqual([\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ])\n })\n\n it('should capitalize', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalize),\n ).toEqual([\n 'This is a test',\n 'Capital first',\n 'All big',\n '5tart with number and endin6',\n ])\n })\n\n it('should capitalize words', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalizeWords),\n ).toEqual([\n 'This Is A Test',\n 'Capital First',\n 'All Big',\n '5tart With Number And Endin6',\n ])\n })\n\n it('should convert back', () => {\n expect(\n [\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ].map(s => fromCamelCase(s)),\n ).toEqual([\n 'spaces-somewhere',\n 'big-ones-at-start',\n 'camel-case-classic123',\n 'camel-case-classic',\n 'only-captital-letters123',\n ])\n })\n})\n"],"mappings":";;;;;;;;;AAOA,SAAS,aAAa,MAAM;AAC1B,KAAG,kBAAkB,MAAM;AACzB;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,WAAW;AAAA,IACnB,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,KAAG,qBAAqB,MAAM;AAC5B;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,YAAY;AAAA,IACpB,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,KAAG,2BAA2B,MAAM;AAClC;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,iBAAiB;AAAA,IACzB,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,KAAG,uBAAuB,MAAM;AAC9B;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,OAAK,cAAc,CAAC,CAAC;AAAA,IAC7B,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACH,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../src/common/data/camelcase.spec.ts"],"sourcesContent":["import { fromCamelCase, toCamelCase, toCapitalize, toCapitalizeWords } from './camelcase'\n\ndescribe('camelcase', () => {\n it('should convert', () => {\n expect(\n [\n ' spaces somewhere ',\n 'BigOnesAtStart',\n 'camel_case_classic_123',\n '-camel-case-classic',\n 'ONLY_CAPTITAL_LETTERS_123',\n ].map(toCamelCase),\n ).toEqual([\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ])\n })\n\n it('should capitalize', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalize),\n ).toEqual([\n 'This is a test',\n 'Capital first',\n 'All big',\n '5tart with number and endin6',\n ])\n })\n\n it('should capitalize words', () => {\n expect(\n [\n 'this is a test',\n 'Capital first',\n 'ALL BIG',\n '5tart with number and endin6',\n ].map(toCapitalizeWords),\n ).toEqual([\n 'This Is A Test',\n 'Capital First',\n 'All Big',\n '5tart With Number And Endin6',\n ])\n })\n\n it('should convert back', () => {\n expect(\n [\n 'spacesSomewhere',\n 'bigOnesAtStart',\n 'camelCaseClassic123',\n 'camelCaseClassic',\n 'onlyCaptitalLetters123',\n ].map(s => fromCamelCase(s)),\n ).toEqual([\n 'spaces-somewhere',\n 'big-ones-at-start',\n 'camel-case-classic123',\n 'camel-case-classic',\n 'only-captital-letters123',\n ])\n })\n})\n"],"mappings":";;;;;;;;;AAEA,SAAS,aAAa,MAAM;AAC1B,KAAG,kBAAkB,MAAM;AACzB;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,WAAW;AAAA,IACnB,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,KAAG,qBAAqB,MAAM;AAC5B;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,YAAY;AAAA,IACpB,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,KAAG,2BAA2B,MAAM;AAClC;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,iBAAiB;AAAA,IACzB,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,KAAG,uBAAuB,MAAM;AAC9B;AAAA,MACE;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,EAAE,IAAI,OAAK,cAAc,CAAC,CAAC;AAAA,IAC7B,EAAE,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACH,CAAC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/day.spec.cjs","../../../src/common/data/day.spec.ts"],"names":[],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/day.spec.cjs","sourcesContent":[null,"import {\n dayDiff,\n dayFromDate,\n dayFromString,\n dayIterator,\n dayMonthStart,\n dayOffset,\n dayRange,\n dayToParts,\n dayToString,\n dayYearStart,\n} from './day'\nimport { Day, dateStringToDays, forEachDay } from './day-legacy'\n\ndescribe('days', () => {\n it('day Simple Approach', () => {\n // https://stackoverflow.com/a/21101949/140927\n const date = new Date('1987-12-31T00:02:03')\n const simpleDateInteger\n = date.getFullYear() * 10000 + (date.getMonth() + 1) * 100 + date.getDate()\n expect(simpleDateInteger).toBe(19871231)\n const fromSimpleDateInteger = new Date(\n simpleDateInteger / 10000, // year\n ((simpleDateInteger / 100) % 100) - 1, // month\n simpleDateInteger % 100, // day\n )\n expect(fromSimpleDateInteger.toDateString()).toEqual(date.toDateString())\n })\n\n it('day Continuous Approach', () => {\n const date = new Date('1987-12-31T00:01:02')\n const DAY_IN_MILLISECONDS = 86400 * 1000\n const timeZoneInMilliSeconds = date.getTimezoneOffset() * 60 * 1000\n const continuousDateInteger = Math.floor(\n (date.getTime() - timeZoneInMilliSeconds) / DAY_IN_MILLISECONDS,\n )\n expect(continuousDateInteger).toBe(6573)\n const fromContinuousDateInteger = new Date(\n continuousDateInteger * DAY_IN_MILLISECONDS + timeZoneInMilliSeconds,\n )\n expect(fromContinuousDateInteger.toDateString()).toEqual(\n date.toDateString(),\n )\n })\n\n it('should iterate days', () => {\n const list: any = []\n void forEachDay(20101230, 20110102, x => list.push(x.toString()))\n expect(list).toEqual([\n '2010-12-30',\n '2010-12-31',\n '2011-01-01',\n '2011-01-02',\n ])\n\n const list2: any = []\n void forEachDay(19991030, 19991102, x => list2.push(x.toString()))\n expect(list2).toEqual([\n '1999-10-30',\n '1999-10-31',\n '1999-11-01',\n '1999-11-02',\n ])\n })\n\n it('should use Day class', () => {\n {\n const day = Day.from(new Date('1987-12-31T00:02:03'))\n expect(day?.days).toEqual(19871231)\n expect(day?.dayOffset(+1).days).toEqual(19880101)\n expect(day?.dayOffset(-1).days).toEqual(19871230)\n expect(day?.toString()).toEqual('1987-12-31')\n expect(day?.toString('')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n expect(day?.toDateUTC()).toEqual(new Date('1987-12-31T00:00:00.000Z'))\n\n expect(Day.fromString('2000-01-01')?.days).toEqual(20000101)\n\n expect(Day.fromString('2000-01-01')?.daysUntil(19871231)).toBe(-4384)\n expect(Day.fromString('2000-01-01')?.daysUntil('2000-01-31')).toBe(30)\n expect(Day.fromString('2021-01-01')?.daysUntil('2021-03-01')).toBe(59)\n expect(Day.fromString('2020-01-01')?.daysUntil('2020-03-01')).toBe(60)\n\n expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n {\n const day = dayFromDate(new Date('1987-12-31T00:02:03'))\n expect(day).toEqual(19871231)\n expect(dayOffset(day, +1)).toEqual(19880101)\n expect(dayOffset(day, -1)).toEqual(19871230)\n expect(dayToString(day)).toEqual('1987-12-31')\n expect(dayToString(day, '')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n // expect(day?.toDateUTC()).toEqual(new Date(\"1987-12-31T00:00:00.000Z\"))\n\n // expect(Day.fromString(\"2000-01-01\")?.days).toEqual(20000101)\n\n expect(dayDiff(20000101, 19871231)).toBe(-4384)\n expect(dayDiff(20000101, 20000131)).toBe(30)\n expect(dayDiff(20210101, 20210301)).toBe(59)\n expect(dayDiff(20200101, 20200301)).toBe(60)\n\n // expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n })\n\n it('should properties', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.days).toEqual(20211231)\n expect(d.day).toEqual(31)\n expect(d.month).toEqual(12)\n expect(d.year).toEqual(2021)\n })\n\n it('should calc months', () => {\n {\n const d = Day.fromString('2021-12-01')!\n expect(d.monthOffset(0)?.days).toBe(20211201)\n expect(d.monthOffset(+1)?.days).toBe(20220101)\n expect(d.monthOffset(+2)?.days).toBe(20220201)\n expect(d.monthOffset(+11)?.days).toBe(20221101)\n expect(d.monthOffset(+24)?.days).toBe(20231201)\n expect(d.monthOffset(-1)?.days).toBe(20211101)\n expect(d.monthOffset(-2)?.days).toBe(20211001)\n expect(d.monthOffset(-11)?.days).toBe(20210101)\n expect(d.monthOffset(-24)?.days).toBe(20191201)\n }\n {\n const d = dayFromString('1999-12-31')!\n expect(d).toMatchInlineSnapshot('19991231')\n expect(dayToParts(d)).toMatchInlineSnapshot(`\n Array [\n 1999,\n 12,\n 31,\n ]\n `)\n expect(dayMonthStart(d)).toMatchInlineSnapshot('19991201')\n expect(dayMonthStart(d, +1)).toMatchInlineSnapshot('20000101')\n expect(dayMonthStart(d, +2)).toMatchInlineSnapshot('20000201')\n expect(dayMonthStart(d, +11)).toMatchInlineSnapshot('20001101')\n expect(dayMonthStart(d, +12)).toMatchInlineSnapshot('20001201')\n expect(dayMonthStart(d, +24)).toMatchInlineSnapshot('20011201')\n expect(dayMonthStart(d, -1)).toMatchInlineSnapshot('19991101')\n expect(dayMonthStart(d, -2)).toMatchInlineSnapshot('19991001')\n expect(dayMonthStart(d, -11)).toMatchInlineSnapshot('19990101')\n expect(dayMonthStart(d, -24)).toMatchInlineSnapshot('19971201')\n\n expect(dayYearStart(d)).toMatchInlineSnapshot('19990101')\n expect(dayYearStart(d, -10)).toMatchInlineSnapshot('19890101')\n expect(dayYearStart(d, +10)).toMatchInlineSnapshot('20090101')\n }\n })\n\n it('should parse date string', () => {\n expect(new Date('2019-08-05T13:14:31.000Z').toISOString()).toEqual(\n '2019-08-05T13:14:31.000Z',\n )\n expect(dateStringToDays('2019-08-05T13:14:31.000Z')).toBe(20190805)\n })\n\n it('should start', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.yearStart().days).toBe(20210101)\n expect(d.monthStart().days).toBe(20211201)\n })\n\n it('should dayFromString', () => {\n expect(dayFromString('20121030')).toEqual(20121030)\n expect(dayFromString('2012-10-30T12:00:00Z')).toEqual(20121030)\n expect(dayFromString('fasfasdf sadf ')).toEqual(undefined)\n })\n\n it('should dayRange', () => {\n expect(dayRange(20121230, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayRange(-6, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayIterator(-6, 20130104).next().value).toEqual(20121230)\n })\n})\n"]}
1
+ {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/day.spec.cjs","../../../src/common/data/day.spec.ts"],"names":[],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/day.spec.cjs","sourcesContent":[null,"import { dayDiff, dayFromDate, dayFromString, dayIterator, dayMonthStart, dayOffset, dayRange, dayToParts, dayToString, dayYearStart } from './day'\nimport { Day, dateStringToDays, forEachDay } from './day-legacy'\n\ndescribe('days', () => {\n it('day Simple Approach', () => {\n // https://stackoverflow.com/a/21101949/140927\n const date = new Date('1987-12-31T00:02:03')\n const simpleDateInteger\n = date.getFullYear() * 10000 + (date.getMonth() + 1) * 100 + date.getDate()\n expect(simpleDateInteger).toBe(19871231)\n const fromSimpleDateInteger = new Date(\n simpleDateInteger / 10000, // year\n ((simpleDateInteger / 100) % 100) - 1, // month\n simpleDateInteger % 100, // day\n )\n expect(fromSimpleDateInteger.toDateString()).toEqual(date.toDateString())\n })\n\n it('day Continuous Approach', () => {\n const date = new Date('1987-12-31T00:01:02')\n const DAY_IN_MILLISECONDS = 86400 * 1000\n const timeZoneInMilliSeconds = date.getTimezoneOffset() * 60 * 1000\n const continuousDateInteger = Math.floor(\n (date.getTime() - timeZoneInMilliSeconds) / DAY_IN_MILLISECONDS,\n )\n expect(continuousDateInteger).toBe(6573)\n const fromContinuousDateInteger = new Date(\n continuousDateInteger * DAY_IN_MILLISECONDS + timeZoneInMilliSeconds,\n )\n expect(fromContinuousDateInteger.toDateString()).toEqual(\n date.toDateString(),\n )\n })\n\n it('should iterate days', () => {\n const list: any = []\n void forEachDay(20101230, 20110102, x => list.push(x.toString()))\n expect(list).toEqual([\n '2010-12-30',\n '2010-12-31',\n '2011-01-01',\n '2011-01-02',\n ])\n\n const list2: any = []\n void forEachDay(19991030, 19991102, x => list2.push(x.toString()))\n expect(list2).toEqual([\n '1999-10-30',\n '1999-10-31',\n '1999-11-01',\n '1999-11-02',\n ])\n })\n\n it('should use Day class', () => {\n {\n const day = Day.from(new Date('1987-12-31T00:02:03'))\n expect(day?.days).toEqual(19871231)\n expect(day?.dayOffset(+1).days).toEqual(19880101)\n expect(day?.dayOffset(-1).days).toEqual(19871230)\n expect(day?.toString()).toEqual('1987-12-31')\n expect(day?.toString('')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n expect(day?.toDateUTC()).toEqual(new Date('1987-12-31T00:00:00.000Z'))\n\n expect(Day.fromString('2000-01-01')?.days).toEqual(20000101)\n\n expect(Day.fromString('2000-01-01')?.daysUntil(19871231)).toBe(-4384)\n expect(Day.fromString('2000-01-01')?.daysUntil('2000-01-31')).toBe(30)\n expect(Day.fromString('2021-01-01')?.daysUntil('2021-03-01')).toBe(59)\n expect(Day.fromString('2020-01-01')?.daysUntil('2020-03-01')).toBe(60)\n\n expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n {\n const day = dayFromDate(new Date('1987-12-31T00:02:03'))\n expect(day).toEqual(19871231)\n expect(dayOffset(day, +1)).toEqual(19880101)\n expect(dayOffset(day, -1)).toEqual(19871230)\n expect(dayToString(day)).toEqual('1987-12-31')\n expect(dayToString(day, '')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n // expect(day?.toDateUTC()).toEqual(new Date(\"1987-12-31T00:00:00.000Z\"))\n\n // expect(Day.fromString(\"2000-01-01\")?.days).toEqual(20000101)\n\n expect(dayDiff(20000101, 19871231)).toBe(-4384)\n expect(dayDiff(20000101, 20000131)).toBe(30)\n expect(dayDiff(20210101, 20210301)).toBe(59)\n expect(dayDiff(20200101, 20200301)).toBe(60)\n\n // expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n })\n\n it('should properties', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.days).toEqual(20211231)\n expect(d.day).toEqual(31)\n expect(d.month).toEqual(12)\n expect(d.year).toEqual(2021)\n })\n\n it('should calc months', () => {\n {\n const d = Day.fromString('2021-12-01')!\n expect(d.monthOffset(0)?.days).toBe(20211201)\n expect(d.monthOffset(+1)?.days).toBe(20220101)\n expect(d.monthOffset(+2)?.days).toBe(20220201)\n expect(d.monthOffset(+11)?.days).toBe(20221101)\n expect(d.monthOffset(+24)?.days).toBe(20231201)\n expect(d.monthOffset(-1)?.days).toBe(20211101)\n expect(d.monthOffset(-2)?.days).toBe(20211001)\n expect(d.monthOffset(-11)?.days).toBe(20210101)\n expect(d.monthOffset(-24)?.days).toBe(20191201)\n }\n {\n const d = dayFromString('1999-12-31')!\n expect(d).toMatchInlineSnapshot('19991231')\n expect(dayToParts(d)).toMatchInlineSnapshot(`\n Array [\n 1999,\n 12,\n 31,\n ]\n `)\n expect(dayMonthStart(d)).toMatchInlineSnapshot('19991201')\n expect(dayMonthStart(d, +1)).toMatchInlineSnapshot('20000101')\n expect(dayMonthStart(d, +2)).toMatchInlineSnapshot('20000201')\n expect(dayMonthStart(d, +11)).toMatchInlineSnapshot('20001101')\n expect(dayMonthStart(d, +12)).toMatchInlineSnapshot('20001201')\n expect(dayMonthStart(d, +24)).toMatchInlineSnapshot('20011201')\n expect(dayMonthStart(d, -1)).toMatchInlineSnapshot('19991101')\n expect(dayMonthStart(d, -2)).toMatchInlineSnapshot('19991001')\n expect(dayMonthStart(d, -11)).toMatchInlineSnapshot('19990101')\n expect(dayMonthStart(d, -24)).toMatchInlineSnapshot('19971201')\n\n expect(dayYearStart(d)).toMatchInlineSnapshot('19990101')\n expect(dayYearStart(d, -10)).toMatchInlineSnapshot('19890101')\n expect(dayYearStart(d, +10)).toMatchInlineSnapshot('20090101')\n }\n })\n\n it('should parse date string', () => {\n expect(new Date('2019-08-05T13:14:31.000Z').toISOString()).toEqual(\n '2019-08-05T13:14:31.000Z',\n )\n expect(dateStringToDays('2019-08-05T13:14:31.000Z')).toBe(20190805)\n })\n\n it('should start', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.yearStart().days).toBe(20210101)\n expect(d.monthStart().days).toBe(20211201)\n })\n\n it('should dayFromString', () => {\n expect(dayFromString('20121030')).toEqual(20121030)\n expect(dayFromString('2012-10-30T12:00:00Z')).toEqual(20121030)\n expect(dayFromString('fasfasdf sadf ')).toEqual(undefined)\n })\n\n it('should dayRange', () => {\n expect(dayRange(20121230, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayRange(-6, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayIterator(-6, 20130104).next().value).toEqual(20121230)\n })\n})\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/common/data/day.spec.ts"],"sourcesContent":["import {\n dayDiff,\n dayFromDate,\n dayFromString,\n dayIterator,\n dayMonthStart,\n dayOffset,\n dayRange,\n dayToParts,\n dayToString,\n dayYearStart,\n} from './day'\nimport { Day, dateStringToDays, forEachDay } from './day-legacy'\n\ndescribe('days', () => {\n it('day Simple Approach', () => {\n // https://stackoverflow.com/a/21101949/140927\n const date = new Date('1987-12-31T00:02:03')\n const simpleDateInteger\n = date.getFullYear() * 10000 + (date.getMonth() + 1) * 100 + date.getDate()\n expect(simpleDateInteger).toBe(19871231)\n const fromSimpleDateInteger = new Date(\n simpleDateInteger / 10000, // year\n ((simpleDateInteger / 100) % 100) - 1, // month\n simpleDateInteger % 100, // day\n )\n expect(fromSimpleDateInteger.toDateString()).toEqual(date.toDateString())\n })\n\n it('day Continuous Approach', () => {\n const date = new Date('1987-12-31T00:01:02')\n const DAY_IN_MILLISECONDS = 86400 * 1000\n const timeZoneInMilliSeconds = date.getTimezoneOffset() * 60 * 1000\n const continuousDateInteger = Math.floor(\n (date.getTime() - timeZoneInMilliSeconds) / DAY_IN_MILLISECONDS,\n )\n expect(continuousDateInteger).toBe(6573)\n const fromContinuousDateInteger = new Date(\n continuousDateInteger * DAY_IN_MILLISECONDS + timeZoneInMilliSeconds,\n )\n expect(fromContinuousDateInteger.toDateString()).toEqual(\n date.toDateString(),\n )\n })\n\n it('should iterate days', () => {\n const list: any = []\n void forEachDay(20101230, 20110102, x => list.push(x.toString()))\n expect(list).toEqual([\n '2010-12-30',\n '2010-12-31',\n '2011-01-01',\n '2011-01-02',\n ])\n\n const list2: any = []\n void forEachDay(19991030, 19991102, x => list2.push(x.toString()))\n expect(list2).toEqual([\n '1999-10-30',\n '1999-10-31',\n '1999-11-01',\n '1999-11-02',\n ])\n })\n\n it('should use Day class', () => {\n {\n const day = Day.from(new Date('1987-12-31T00:02:03'))\n expect(day?.days).toEqual(19871231)\n expect(day?.dayOffset(+1).days).toEqual(19880101)\n expect(day?.dayOffset(-1).days).toEqual(19871230)\n expect(day?.toString()).toEqual('1987-12-31')\n expect(day?.toString('')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n expect(day?.toDateUTC()).toEqual(new Date('1987-12-31T00:00:00.000Z'))\n\n expect(Day.fromString('2000-01-01')?.days).toEqual(20000101)\n\n expect(Day.fromString('2000-01-01')?.daysUntil(19871231)).toBe(-4384)\n expect(Day.fromString('2000-01-01')?.daysUntil('2000-01-31')).toBe(30)\n expect(Day.fromString('2021-01-01')?.daysUntil('2021-03-01')).toBe(59)\n expect(Day.fromString('2020-01-01')?.daysUntil('2020-03-01')).toBe(60)\n\n expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n {\n const day = dayFromDate(new Date('1987-12-31T00:02:03'))\n expect(day).toEqual(19871231)\n expect(dayOffset(day, +1)).toEqual(19880101)\n expect(dayOffset(day, -1)).toEqual(19871230)\n expect(dayToString(day)).toEqual('1987-12-31')\n expect(dayToString(day, '')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n // expect(day?.toDateUTC()).toEqual(new Date(\"1987-12-31T00:00:00.000Z\"))\n\n // expect(Day.fromString(\"2000-01-01\")?.days).toEqual(20000101)\n\n expect(dayDiff(20000101, 19871231)).toBe(-4384)\n expect(dayDiff(20000101, 20000131)).toBe(30)\n expect(dayDiff(20210101, 20210301)).toBe(59)\n expect(dayDiff(20200101, 20200301)).toBe(60)\n\n // expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n })\n\n it('should properties', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.days).toEqual(20211231)\n expect(d.day).toEqual(31)\n expect(d.month).toEqual(12)\n expect(d.year).toEqual(2021)\n })\n\n it('should calc months', () => {\n {\n const d = Day.fromString('2021-12-01')!\n expect(d.monthOffset(0)?.days).toBe(20211201)\n expect(d.monthOffset(+1)?.days).toBe(20220101)\n expect(d.monthOffset(+2)?.days).toBe(20220201)\n expect(d.monthOffset(+11)?.days).toBe(20221101)\n expect(d.monthOffset(+24)?.days).toBe(20231201)\n expect(d.monthOffset(-1)?.days).toBe(20211101)\n expect(d.monthOffset(-2)?.days).toBe(20211001)\n expect(d.monthOffset(-11)?.days).toBe(20210101)\n expect(d.monthOffset(-24)?.days).toBe(20191201)\n }\n {\n const d = dayFromString('1999-12-31')!\n expect(d).toMatchInlineSnapshot('19991231')\n expect(dayToParts(d)).toMatchInlineSnapshot(`\n Array [\n 1999,\n 12,\n 31,\n ]\n `)\n expect(dayMonthStart(d)).toMatchInlineSnapshot('19991201')\n expect(dayMonthStart(d, +1)).toMatchInlineSnapshot('20000101')\n expect(dayMonthStart(d, +2)).toMatchInlineSnapshot('20000201')\n expect(dayMonthStart(d, +11)).toMatchInlineSnapshot('20001101')\n expect(dayMonthStart(d, +12)).toMatchInlineSnapshot('20001201')\n expect(dayMonthStart(d, +24)).toMatchInlineSnapshot('20011201')\n expect(dayMonthStart(d, -1)).toMatchInlineSnapshot('19991101')\n expect(dayMonthStart(d, -2)).toMatchInlineSnapshot('19991001')\n expect(dayMonthStart(d, -11)).toMatchInlineSnapshot('19990101')\n expect(dayMonthStart(d, -24)).toMatchInlineSnapshot('19971201')\n\n expect(dayYearStart(d)).toMatchInlineSnapshot('19990101')\n expect(dayYearStart(d, -10)).toMatchInlineSnapshot('19890101')\n expect(dayYearStart(d, +10)).toMatchInlineSnapshot('20090101')\n }\n })\n\n it('should parse date string', () => {\n expect(new Date('2019-08-05T13:14:31.000Z').toISOString()).toEqual(\n '2019-08-05T13:14:31.000Z',\n )\n expect(dateStringToDays('2019-08-05T13:14:31.000Z')).toBe(20190805)\n })\n\n it('should start', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.yearStart().days).toBe(20210101)\n expect(d.monthStart().days).toBe(20211201)\n })\n\n it('should dayFromString', () => {\n expect(dayFromString('20121030')).toEqual(20121030)\n expect(dayFromString('2012-10-30T12:00:00Z')).toEqual(20121030)\n expect(dayFromString('fasfasdf sadf ')).toEqual(undefined)\n })\n\n it('should dayRange', () => {\n expect(dayRange(20121230, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayRange(-6, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayIterator(-6, 20130104).next().value).toEqual(20121230)\n })\n})\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/common/data/day.spec.ts"],"sourcesContent":["import { dayDiff, dayFromDate, dayFromString, dayIterator, dayMonthStart, dayOffset, dayRange, dayToParts, dayToString, dayYearStart } from './day'\nimport { Day, dateStringToDays, forEachDay } from './day-legacy'\n\ndescribe('days', () => {\n it('day Simple Approach', () => {\n // https://stackoverflow.com/a/21101949/140927\n const date = new Date('1987-12-31T00:02:03')\n const simpleDateInteger\n = date.getFullYear() * 10000 + (date.getMonth() + 1) * 100 + date.getDate()\n expect(simpleDateInteger).toBe(19871231)\n const fromSimpleDateInteger = new Date(\n simpleDateInteger / 10000, // year\n ((simpleDateInteger / 100) % 100) - 1, // month\n simpleDateInteger % 100, // day\n )\n expect(fromSimpleDateInteger.toDateString()).toEqual(date.toDateString())\n })\n\n it('day Continuous Approach', () => {\n const date = new Date('1987-12-31T00:01:02')\n const DAY_IN_MILLISECONDS = 86400 * 1000\n const timeZoneInMilliSeconds = date.getTimezoneOffset() * 60 * 1000\n const continuousDateInteger = Math.floor(\n (date.getTime() - timeZoneInMilliSeconds) / DAY_IN_MILLISECONDS,\n )\n expect(continuousDateInteger).toBe(6573)\n const fromContinuousDateInteger = new Date(\n continuousDateInteger * DAY_IN_MILLISECONDS + timeZoneInMilliSeconds,\n )\n expect(fromContinuousDateInteger.toDateString()).toEqual(\n date.toDateString(),\n )\n })\n\n it('should iterate days', () => {\n const list: any = []\n void forEachDay(20101230, 20110102, x => list.push(x.toString()))\n expect(list).toEqual([\n '2010-12-30',\n '2010-12-31',\n '2011-01-01',\n '2011-01-02',\n ])\n\n const list2: any = []\n void forEachDay(19991030, 19991102, x => list2.push(x.toString()))\n expect(list2).toEqual([\n '1999-10-30',\n '1999-10-31',\n '1999-11-01',\n '1999-11-02',\n ])\n })\n\n it('should use Day class', () => {\n {\n const day = Day.from(new Date('1987-12-31T00:02:03'))\n expect(day?.days).toEqual(19871231)\n expect(day?.dayOffset(+1).days).toEqual(19880101)\n expect(day?.dayOffset(-1).days).toEqual(19871230)\n expect(day?.toString()).toEqual('1987-12-31')\n expect(day?.toString('')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n expect(day?.toDateUTC()).toEqual(new Date('1987-12-31T00:00:00.000Z'))\n\n expect(Day.fromString('2000-01-01')?.days).toEqual(20000101)\n\n expect(Day.fromString('2000-01-01')?.daysUntil(19871231)).toBe(-4384)\n expect(Day.fromString('2000-01-01')?.daysUntil('2000-01-31')).toBe(30)\n expect(Day.fromString('2021-01-01')?.daysUntil('2021-03-01')).toBe(59)\n expect(Day.fromString('2020-01-01')?.daysUntil('2020-03-01')).toBe(60)\n\n expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n {\n const day = dayFromDate(new Date('1987-12-31T00:02:03'))\n expect(day).toEqual(19871231)\n expect(dayOffset(day, +1)).toEqual(19880101)\n expect(dayOffset(day, -1)).toEqual(19871230)\n expect(dayToString(day)).toEqual('1987-12-31')\n expect(dayToString(day, '')).toEqual('19871231')\n\n // This only works locally, but not on Github Actions ;)\n // expect(day?.toDate()).toEqual(`1987-12-30T23:00:00.000Z`)\n\n // expect(day?.toDateUTC()).toEqual(new Date(\"1987-12-31T00:00:00.000Z\"))\n\n // expect(Day.fromString(\"2000-01-01\")?.days).toEqual(20000101)\n\n expect(dayDiff(20000101, 19871231)).toBe(-4384)\n expect(dayDiff(20000101, 20000131)).toBe(30)\n expect(dayDiff(20210101, 20210301)).toBe(59)\n expect(dayDiff(20200101, 20200301)).toBe(60)\n\n // expect(Day.from([2022, 12, 31])?.days).toBe(20221231)\n\n // Following depend on timezone\n // let day2 = Day.fromDateUTC(new Date(\"1987-12-31T00:02:03\"))\n // expect(day2?.days).toEqual(19871230)\n // expect(new Date().toISOString().startsWith(today().toString())).toBe(true)\n }\n })\n\n it('should properties', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.days).toEqual(20211231)\n expect(d.day).toEqual(31)\n expect(d.month).toEqual(12)\n expect(d.year).toEqual(2021)\n })\n\n it('should calc months', () => {\n {\n const d = Day.fromString('2021-12-01')!\n expect(d.monthOffset(0)?.days).toBe(20211201)\n expect(d.monthOffset(+1)?.days).toBe(20220101)\n expect(d.monthOffset(+2)?.days).toBe(20220201)\n expect(d.monthOffset(+11)?.days).toBe(20221101)\n expect(d.monthOffset(+24)?.days).toBe(20231201)\n expect(d.monthOffset(-1)?.days).toBe(20211101)\n expect(d.monthOffset(-2)?.days).toBe(20211001)\n expect(d.monthOffset(-11)?.days).toBe(20210101)\n expect(d.monthOffset(-24)?.days).toBe(20191201)\n }\n {\n const d = dayFromString('1999-12-31')!\n expect(d).toMatchInlineSnapshot('19991231')\n expect(dayToParts(d)).toMatchInlineSnapshot(`\n Array [\n 1999,\n 12,\n 31,\n ]\n `)\n expect(dayMonthStart(d)).toMatchInlineSnapshot('19991201')\n expect(dayMonthStart(d, +1)).toMatchInlineSnapshot('20000101')\n expect(dayMonthStart(d, +2)).toMatchInlineSnapshot('20000201')\n expect(dayMonthStart(d, +11)).toMatchInlineSnapshot('20001101')\n expect(dayMonthStart(d, +12)).toMatchInlineSnapshot('20001201')\n expect(dayMonthStart(d, +24)).toMatchInlineSnapshot('20011201')\n expect(dayMonthStart(d, -1)).toMatchInlineSnapshot('19991101')\n expect(dayMonthStart(d, -2)).toMatchInlineSnapshot('19991001')\n expect(dayMonthStart(d, -11)).toMatchInlineSnapshot('19990101')\n expect(dayMonthStart(d, -24)).toMatchInlineSnapshot('19971201')\n\n expect(dayYearStart(d)).toMatchInlineSnapshot('19990101')\n expect(dayYearStart(d, -10)).toMatchInlineSnapshot('19890101')\n expect(dayYearStart(d, +10)).toMatchInlineSnapshot('20090101')\n }\n })\n\n it('should parse date string', () => {\n expect(new Date('2019-08-05T13:14:31.000Z').toISOString()).toEqual(\n '2019-08-05T13:14:31.000Z',\n )\n expect(dateStringToDays('2019-08-05T13:14:31.000Z')).toBe(20190805)\n })\n\n it('should start', () => {\n const d = Day.fromString('2021-12-31')!\n expect(d.yearStart().days).toBe(20210101)\n expect(d.monthStart().days).toBe(20211201)\n })\n\n it('should dayFromString', () => {\n expect(dayFromString('20121030')).toEqual(20121030)\n expect(dayFromString('2012-10-30T12:00:00Z')).toEqual(20121030)\n expect(dayFromString('fasfasdf sadf ')).toEqual(undefined)\n })\n\n it('should dayRange', () => {\n expect(dayRange(20121230, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayRange(-6, 20130104)).toMatchInlineSnapshot(`\n Array [\n 20121230,\n 20121231,\n 20130101,\n 20130102,\n 20130103,\n 20130104,\n ]\n `)\n\n expect(dayIterator(-6, 20130104).next().value).toEqual(20121230)\n })\n})\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/rounding.spec.cjs","../../../src/common/data/rounding.spec.ts"],"names":[],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/rounding.spec.cjs","sourcesContent":[null,"import { arraySum } from './array'\nimport {\n roundArrayOfNumbersToMatchSum,\n roundArrayOfObjectsToMatchSum,\n roundDown,\n roundHalfAwayFromZero,\n roundHalfDown,\n roundHalfEven,\n roundHalfOdd,\n roundHalfTowardsZero,\n roundHalfUp,\n roundUp,\n} from './rounding'\n\ndescribe('currency', () => {\n describe('down', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundDown(-1.4)).toBe(-2)\n })\n it('rounds down with a positive half float', () => {\n expect(roundDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundDown(-1.5)).toBe(-2)\n })\n it('rounds down with a positive float above half', () => {\n expect(roundDown(1.6)).toBe(1)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfAwayFromZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfAwayFromZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfAwayFromZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer away from zero with a positive half float', () => {\n expect(roundHalfAwayFromZero(1.5)).toBe(2)\n })\n it('rounds to the nearest integer away from zero with a negative half float', () => {\n expect(roundHalfAwayFromZero(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfAwayFromZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfAwayFromZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfDown', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfDown(-1.4)).toBe(-1)\n })\n it('rounds down with a positive half float', () => {\n expect(roundHalfDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundHalfDown(-1.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfDown(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfEven', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfEven(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfEven(-1.4)).toBe(-1)\n })\n it('rounds to nearest even integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfEven(1.5)).toBe(2)\n })\n it('rounds to nearest even integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfEven(2.5)).toBe(2)\n })\n it('rounds to nearest even integer with a negative half float', () => {\n expect(roundHalfEven(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfEven(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfEven(-1.6)).toBe(-2)\n })\n })\n\n it('rounds down with a positive float below half', () => {\n expect(roundHalfOdd(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfOdd(-1.4)).toBe(-1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfOdd(1.5)).toBe(1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfOdd(2.5)).toBe(3)\n })\n it('rounds to nearest odd integer with a negative half float', () => {\n expect(roundHalfOdd(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfOdd(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfOdd(-1.6)).toBe(-2)\n })\n\n describe('halfTowardsZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfTowardsZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfTowardsZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer towards zero with a positive half float', () => {\n expect(roundHalfTowardsZero(1.5)).toBe(1)\n })\n it('rounds to the nearest integer towards zero with a negative half float', () => {\n expect(roundHalfTowardsZero(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfTowardsZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfTowardsZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfUp', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfUp(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundHalfUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundHalfUp(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfUp(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfUp(-1.6)).toBe(-2)\n })\n })\n\n describe('up', () => {\n it('rounds up with a positive float below half', () => {\n expect(roundUp(1.4)).toBe(2)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundUp(-1.5)).toBe(-1)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundUp(1.6)).toBe(2)\n })\n it('rounds up with a negative float above half', () => {\n expect(roundUp(-1.6)).toBe(-1)\n })\n })\n\n it('distribute percentages', () => {\n const values = [13.626332, 47.989636, 9.596008, 28.788024]\n\n const objs = [{\n name: '13',\n percent: 13.626332,\n }, {\n name: '47',\n percent: 47.989636,\n }, {\n name: '9',\n percent: 9.596008,\n }, {\n name: '28',\n percent: 28.788024,\n }]\n\n expect(arraySum(roundArrayOfNumbersToMatchSum(values))).toEqual(100)\n expect(arraySum(roundArrayOfNumbersToMatchSum(values, 95, 2))).toEqual(95)\n\n expect(roundArrayOfNumbersToMatchSum(values)).toMatchInlineSnapshot(`\n Array [\n 14,\n 48,\n 9,\n 29,\n ]\n `)\n\n expect(roundArrayOfNumbersToMatchSum(values, 95, 2)).toMatchInlineSnapshot(`\n Array [\n 12.94,\n 45.59,\n 9.12,\n 27.35,\n ]\n `)\n\n expect(roundArrayOfObjectsToMatchSum(objs, 'percent')).toMatchInlineSnapshot(`\n Array [\n Object {\n \"name\": \"13\",\n \"percent\": 14,\n },\n Object {\n \"name\": \"47\",\n \"percent\": 48,\n },\n Object {\n \"name\": \"9\",\n \"percent\": 9,\n },\n Object {\n \"name\": \"28\",\n \"percent\": 29,\n },\n ]\n `)\n })\n})\n"]}
1
+ {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/rounding.spec.cjs","../../../src/common/data/rounding.spec.ts"],"names":[],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/rounding.spec.cjs","sourcesContent":[null,"import { arraySum } from './array'\nimport { roundArrayOfNumbersToMatchSum, roundArrayOfObjectsToMatchSum, roundDown, roundHalfAwayFromZero, roundHalfDown, roundHalfEven, roundHalfOdd, roundHalfTowardsZero, roundHalfUp, roundUp } from './rounding'\n\ndescribe('currency', () => {\n describe('down', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundDown(-1.4)).toBe(-2)\n })\n it('rounds down with a positive half float', () => {\n expect(roundDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundDown(-1.5)).toBe(-2)\n })\n it('rounds down with a positive float above half', () => {\n expect(roundDown(1.6)).toBe(1)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfAwayFromZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfAwayFromZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfAwayFromZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer away from zero with a positive half float', () => {\n expect(roundHalfAwayFromZero(1.5)).toBe(2)\n })\n it('rounds to the nearest integer away from zero with a negative half float', () => {\n expect(roundHalfAwayFromZero(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfAwayFromZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfAwayFromZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfDown', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfDown(-1.4)).toBe(-1)\n })\n it('rounds down with a positive half float', () => {\n expect(roundHalfDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundHalfDown(-1.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfDown(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfEven', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfEven(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfEven(-1.4)).toBe(-1)\n })\n it('rounds to nearest even integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfEven(1.5)).toBe(2)\n })\n it('rounds to nearest even integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfEven(2.5)).toBe(2)\n })\n it('rounds to nearest even integer with a negative half float', () => {\n expect(roundHalfEven(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfEven(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfEven(-1.6)).toBe(-2)\n })\n })\n\n it('rounds down with a positive float below half', () => {\n expect(roundHalfOdd(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfOdd(-1.4)).toBe(-1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfOdd(1.5)).toBe(1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfOdd(2.5)).toBe(3)\n })\n it('rounds to nearest odd integer with a negative half float', () => {\n expect(roundHalfOdd(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfOdd(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfOdd(-1.6)).toBe(-2)\n })\n\n describe('halfTowardsZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfTowardsZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfTowardsZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer towards zero with a positive half float', () => {\n expect(roundHalfTowardsZero(1.5)).toBe(1)\n })\n it('rounds to the nearest integer towards zero with a negative half float', () => {\n expect(roundHalfTowardsZero(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfTowardsZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfTowardsZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfUp', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfUp(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundHalfUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundHalfUp(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfUp(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfUp(-1.6)).toBe(-2)\n })\n })\n\n describe('up', () => {\n it('rounds up with a positive float below half', () => {\n expect(roundUp(1.4)).toBe(2)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundUp(-1.5)).toBe(-1)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundUp(1.6)).toBe(2)\n })\n it('rounds up with a negative float above half', () => {\n expect(roundUp(-1.6)).toBe(-1)\n })\n })\n\n it('distribute percentages', () => {\n const values = [13.626332, 47.989636, 9.596008, 28.788024]\n\n const objs = [{\n name: '13',\n percent: 13.626332,\n }, {\n name: '47',\n percent: 47.989636,\n }, {\n name: '9',\n percent: 9.596008,\n }, {\n name: '28',\n percent: 28.788024,\n }]\n\n expect(arraySum(roundArrayOfNumbersToMatchSum(values))).toEqual(100)\n expect(arraySum(roundArrayOfNumbersToMatchSum(values, 95, 2))).toEqual(95)\n\n expect(roundArrayOfNumbersToMatchSum(values)).toMatchInlineSnapshot(`\n Array [\n 14,\n 48,\n 9,\n 29,\n ]\n `)\n\n expect(roundArrayOfNumbersToMatchSum(values, 95, 2)).toMatchInlineSnapshot(`\n Array [\n 12.94,\n 45.59,\n 9.12,\n 27.35,\n ]\n `)\n\n expect(roundArrayOfObjectsToMatchSum(objs, 'percent')).toMatchInlineSnapshot(`\n Array [\n Object {\n \"name\": \"13\",\n \"percent\": 14,\n },\n Object {\n \"name\": \"47\",\n \"percent\": 48,\n },\n Object {\n \"name\": \"9\",\n \"percent\": 9,\n },\n Object {\n \"name\": \"28\",\n \"percent\": 29,\n },\n ]\n `)\n })\n})\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/common/data/rounding.spec.ts"],"sourcesContent":["import { arraySum } from './array'\nimport {\n roundArrayOfNumbersToMatchSum,\n roundArrayOfObjectsToMatchSum,\n roundDown,\n roundHalfAwayFromZero,\n roundHalfDown,\n roundHalfEven,\n roundHalfOdd,\n roundHalfTowardsZero,\n roundHalfUp,\n roundUp,\n} from './rounding'\n\ndescribe('currency', () => {\n describe('down', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundDown(-1.4)).toBe(-2)\n })\n it('rounds down with a positive half float', () => {\n expect(roundDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundDown(-1.5)).toBe(-2)\n })\n it('rounds down with a positive float above half', () => {\n expect(roundDown(1.6)).toBe(1)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfAwayFromZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfAwayFromZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfAwayFromZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer away from zero with a positive half float', () => {\n expect(roundHalfAwayFromZero(1.5)).toBe(2)\n })\n it('rounds to the nearest integer away from zero with a negative half float', () => {\n expect(roundHalfAwayFromZero(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfAwayFromZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfAwayFromZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfDown', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfDown(-1.4)).toBe(-1)\n })\n it('rounds down with a positive half float', () => {\n expect(roundHalfDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundHalfDown(-1.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfDown(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfEven', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfEven(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfEven(-1.4)).toBe(-1)\n })\n it('rounds to nearest even integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfEven(1.5)).toBe(2)\n })\n it('rounds to nearest even integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfEven(2.5)).toBe(2)\n })\n it('rounds to nearest even integer with a negative half float', () => {\n expect(roundHalfEven(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfEven(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfEven(-1.6)).toBe(-2)\n })\n })\n\n it('rounds down with a positive float below half', () => {\n expect(roundHalfOdd(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfOdd(-1.4)).toBe(-1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfOdd(1.5)).toBe(1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfOdd(2.5)).toBe(3)\n })\n it('rounds to nearest odd integer with a negative half float', () => {\n expect(roundHalfOdd(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfOdd(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfOdd(-1.6)).toBe(-2)\n })\n\n describe('halfTowardsZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfTowardsZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfTowardsZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer towards zero with a positive half float', () => {\n expect(roundHalfTowardsZero(1.5)).toBe(1)\n })\n it('rounds to the nearest integer towards zero with a negative half float', () => {\n expect(roundHalfTowardsZero(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfTowardsZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfTowardsZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfUp', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfUp(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundHalfUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundHalfUp(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfUp(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfUp(-1.6)).toBe(-2)\n })\n })\n\n describe('up', () => {\n it('rounds up with a positive float below half', () => {\n expect(roundUp(1.4)).toBe(2)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundUp(-1.5)).toBe(-1)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundUp(1.6)).toBe(2)\n })\n it('rounds up with a negative float above half', () => {\n expect(roundUp(-1.6)).toBe(-1)\n })\n })\n\n it('distribute percentages', () => {\n const values = [13.626332, 47.989636, 9.596008, 28.788024]\n\n const objs = [{\n name: '13',\n percent: 13.626332,\n }, {\n name: '47',\n percent: 47.989636,\n }, {\n name: '9',\n percent: 9.596008,\n }, {\n name: '28',\n percent: 28.788024,\n }]\n\n expect(arraySum(roundArrayOfNumbersToMatchSum(values))).toEqual(100)\n expect(arraySum(roundArrayOfNumbersToMatchSum(values, 95, 2))).toEqual(95)\n\n expect(roundArrayOfNumbersToMatchSum(values)).toMatchInlineSnapshot(`\n Array [\n 14,\n 48,\n 9,\n 29,\n ]\n `)\n\n expect(roundArrayOfNumbersToMatchSum(values, 95, 2)).toMatchInlineSnapshot(`\n Array [\n 12.94,\n 45.59,\n 9.12,\n 27.35,\n ]\n `)\n\n expect(roundArrayOfObjectsToMatchSum(objs, 'percent')).toMatchInlineSnapshot(`\n Array [\n Object {\n \"name\": \"13\",\n \"percent\": 14,\n },\n Object {\n \"name\": \"47\",\n \"percent\": 48,\n },\n Object {\n \"name\": \"9\",\n \"percent\": 9,\n },\n Object {\n \"name\": \"28\",\n \"percent\": 29,\n },\n ]\n `)\n })\n})\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/common/data/rounding.spec.ts"],"sourcesContent":["import { arraySum } from './array'\nimport { roundArrayOfNumbersToMatchSum, roundArrayOfObjectsToMatchSum, roundDown, roundHalfAwayFromZero, roundHalfDown, roundHalfEven, roundHalfOdd, roundHalfTowardsZero, roundHalfUp, roundUp } from './rounding'\n\ndescribe('currency', () => {\n describe('down', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundDown(-1.4)).toBe(-2)\n })\n it('rounds down with a positive half float', () => {\n expect(roundDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundDown(-1.5)).toBe(-2)\n })\n it('rounds down with a positive float above half', () => {\n expect(roundDown(1.6)).toBe(1)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfAwayFromZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfAwayFromZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfAwayFromZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer away from zero with a positive half float', () => {\n expect(roundHalfAwayFromZero(1.5)).toBe(2)\n })\n it('rounds to the nearest integer away from zero with a negative half float', () => {\n expect(roundHalfAwayFromZero(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfAwayFromZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfAwayFromZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfDown', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfDown(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfDown(-1.4)).toBe(-1)\n })\n it('rounds down with a positive half float', () => {\n expect(roundHalfDown(1.5)).toBe(1)\n })\n it('rounds down with a negative half float', () => {\n expect(roundHalfDown(-1.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfDown(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfDown(-1.6)).toBe(-2)\n })\n })\n\n describe('halfEven', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfEven(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfEven(-1.4)).toBe(-1)\n })\n it('rounds to nearest even integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfEven(1.5)).toBe(2)\n })\n it('rounds to nearest even integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfEven(2.5)).toBe(2)\n })\n it('rounds to nearest even integer with a negative half float', () => {\n expect(roundHalfEven(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfEven(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfEven(-1.6)).toBe(-2)\n })\n })\n\n it('rounds down with a positive float below half', () => {\n expect(roundHalfOdd(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfOdd(-1.4)).toBe(-1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an even integer', () => {\n expect(roundHalfOdd(1.5)).toBe(1)\n })\n it('rounds to nearest odd integer with a positive half float rounding to an odd integer', () => {\n expect(roundHalfOdd(2.5)).toBe(3)\n })\n it('rounds to nearest odd integer with a negative half float', () => {\n expect(roundHalfOdd(-2.5)).toBe(-3)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfOdd(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfOdd(-1.6)).toBe(-2)\n })\n\n describe('halfTowardsZero', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfTowardsZero(1.4)).toBe(1)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundHalfTowardsZero(-1.4)).toBe(-1)\n })\n it('rounds to the nearest integer towards zero with a positive half float', () => {\n expect(roundHalfTowardsZero(1.5)).toBe(1)\n })\n it('rounds to the nearest integer towards zero with a negative half float', () => {\n expect(roundHalfTowardsZero(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfTowardsZero(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfTowardsZero(-1.6)).toBe(-2)\n })\n })\n\n describe('halfUp', () => {\n it('rounds down with a positive float below half', () => {\n expect(roundHalfUp(1.4)).toBe(1)\n })\n it('rounds down with a negative float below half', () => {\n expect(roundHalfUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundHalfUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundHalfUp(-2.5)).toBe(-2)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundHalfUp(1.6)).toBe(2)\n })\n it('rounds down with a negative float above half', () => {\n expect(roundHalfUp(-1.6)).toBe(-2)\n })\n })\n\n describe('up', () => {\n it('rounds up with a positive float below half', () => {\n expect(roundUp(1.4)).toBe(2)\n })\n it('rounds up with a negative float below half', () => {\n expect(roundUp(-1.4)).toBe(-1)\n })\n it('rounds up with a positive half float', () => {\n expect(roundUp(1.5)).toBe(2)\n })\n it('rounds up with a negative half float', () => {\n expect(roundUp(-1.5)).toBe(-1)\n })\n it('rounds up with a positive float above half', () => {\n expect(roundUp(1.6)).toBe(2)\n })\n it('rounds up with a negative float above half', () => {\n expect(roundUp(-1.6)).toBe(-1)\n })\n })\n\n it('distribute percentages', () => {\n const values = [13.626332, 47.989636, 9.596008, 28.788024]\n\n const objs = [{\n name: '13',\n percent: 13.626332,\n }, {\n name: '47',\n percent: 47.989636,\n }, {\n name: '9',\n percent: 9.596008,\n }, {\n name: '28',\n percent: 28.788024,\n }]\n\n expect(arraySum(roundArrayOfNumbersToMatchSum(values))).toEqual(100)\n expect(arraySum(roundArrayOfNumbersToMatchSum(values, 95, 2))).toEqual(95)\n\n expect(roundArrayOfNumbersToMatchSum(values)).toMatchInlineSnapshot(`\n Array [\n 14,\n 48,\n 9,\n 29,\n ]\n `)\n\n expect(roundArrayOfNumbersToMatchSum(values, 95, 2)).toMatchInlineSnapshot(`\n Array [\n 12.94,\n 45.59,\n 9.12,\n 27.35,\n ]\n `)\n\n expect(roundArrayOfObjectsToMatchSum(objs, 'percent')).toMatchInlineSnapshot(`\n Array [\n Object {\n \"name\": \"13\",\n \"percent\": 14,\n },\n Object {\n \"name\": \"47\",\n \"percent\": 48,\n },\n Object {\n \"name\": \"9\",\n \"percent\": 9,\n },\n Object {\n \"name\": \"28\",\n \"percent\": 29,\n },\n ]\n `)\n })\n})\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/sortable.spec.cjs","../../../src/common/data/sortable.spec.ts"],"names":["items"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/sortable.spec.cjs","sourcesContent":[null,"import { arrayShuffleForce, arrayShuffleInPlace } from './array'\nimport type { SortableItem } from './sortable'\nimport {\n endSortWeight,\n moveSortWeight,\n sortedItems,\n startSortWeight,\n} from './sortable'\nimport { last } from './utils'\n\ninterface SItem extends SortableItem {\n name: string\n}\n\ndescribe('sortable', () => {\n const list = [-0.2, -0.001, 0, 0.001, 2]\n const items = list.map((sort_weight, index) => ({ index, sort_weight }))\n\n it('should add correctly', () => {\n expect(startSortWeight(items)).toBeLessThan(list[0])\n expect(endSortWeight(items)).toBeGreaterThan(last(list) || 0)\n })\n\n it('should sort correctly', () => {\n const shuffledItems = arrayShuffleForce(items)\n expect(shuffledItems.map(el => el.sort_weight)).not.toEqual(list)\n expect(sortedItems(shuffledItems).map(el => el.sort_weight)).toEqual(list)\n })\n\n it('should move correctly', () => {\n let items: SItem[] = []\n for (let i = 0; i < 10; i++) {\n items.push({\n name: String(i),\n sort_weight: i,\n })\n }\n\n expect(\n sortedItems(items)\n .map(o => o.name)\n .join(''),\n ).toEqual('0123456789')\n\n const moveItem = items[8]\n moveItem.sort_weight = moveSortWeight(1, 8, items)\n\n expect(\n sortedItems(items)\n .map(o => o.name)\n .join(''),\n ).toEqual('0812345679')\n\n items = sortedItems(items)\n const moveItem2 = items[1]\n\n arrayShuffleInPlace(items)\n moveItem2.sort_weight = moveSortWeight(8, 1, items)\n\n expect(\n sortedItems(items)\n .map(o => o.name)\n .join(''),\n ).toEqual('0123456789')\n })\n})\n"]}
1
+ {"version":3,"sources":["/home/runner/work/zeed/zeed/dist/common/data/sortable.spec.cjs","../../../src/common/data/sortable.spec.ts"],"names":["items"],"mappings":"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","file":"/home/runner/work/zeed/zeed/dist/common/data/sortable.spec.cjs","sourcesContent":[null,"import { arrayShuffleForce, arrayShuffleInPlace } from './array'\nimport type { SortableItem } from './sortable'\nimport { endSortWeight, moveSortWeight, sortedItems, startSortWeight } from './sortable'\nimport { last } from './utils'\n\ninterface SItem extends SortableItem {\n name: string\n}\n\ndescribe('sortable', () => {\n const list = [-0.2, -0.001, 0, 0.001, 2]\n const items = list.map((sort_weight, index) => ({ index, sort_weight }))\n\n it('should add correctly', () => {\n expect(startSortWeight(items)).toBeLessThan(list[0])\n expect(endSortWeight(items)).toBeGreaterThan(last(list) || 0)\n })\n\n it('should sort correctly', () => {\n const shuffledItems = arrayShuffleForce(items)\n expect(shuffledItems.map(el => el.sort_weight)).not.toEqual(list)\n expect(sortedItems(shuffledItems).map(el => el.sort_weight)).toEqual(list)\n })\n\n it('should move correctly', () => {\n let items: SItem[] = []\n for (let i = 0; i < 10; i++) {\n items.push({\n name: String(i),\n sort_weight: i,\n })\n }\n\n expect(\n sortedItems(items)\n .map(o => o.name)\n .join(''),\n ).toEqual('0123456789')\n\n const moveItem = items[8]\n moveItem.sort_weight = moveSortWeight(1, 8, items)\n\n expect(\n sortedItems(items)\n .map(o => o.name)\n .join(''),\n ).toEqual('0812345679')\n\n items = sortedItems(items)\n const moveItem2 = items[1]\n\n arrayShuffleInPlace(items)\n moveItem2.sort_weight = moveSortWeight(8, 1, items)\n\n expect(\n sortedItems(items)\n .map(o => o.name)\n .join(''),\n ).toEqual('0123456789')\n })\n})\n"]}