@obliczeniowo/elementary
Version:
Library made in Angular version 19
1 lines • 24 kB
Source Map (JSON)
{"version":3,"file":"obliczeniowo-elementary-numeric-pipes.mjs","sources":["../../../../projects/components/numeric-pipes/pipes/units.pipe.ts","../../../../projects/components/numeric-pipes/pipes/limits.pipe.ts","../../../../projects/components/numeric-pipes/pipes/int-filter.pipe.ts","../../../../projects/components/numeric-pipes/pipes/range-filter.pipe.ts","../../../../projects/components/numeric-pipes/pipes/abs.pipe.ts","../../../../projects/components/numeric-pipes/pipes/u-int-filter.pipe.ts","../../../../projects/components/numeric-pipes/pipes/math.pipe.ts","../../../../projects/components/numeric-pipes/pipes/is-numeric.pipe.ts","../../../../projects/components/numeric-pipes/pipes/min-max.pipe.ts","../../../../projects/components/numeric-pipes/pipes/min.pipe.ts","../../../../projects/components/numeric-pipes/pipes/max.pipe.ts","../../../../projects/components/numeric-pipes/obliczeniowo-elementary-numeric-pipes.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\nimport { TranslationPipe } from '@obliczeniowo/elementary/text-pipes';\r\n\r\nconst units = {\r\n basic: [\r\n {\r\n unit: '',\r\n max: 0,\r\n },\r\n {\r\n unit: '',\r\n max: 1e3,\r\n },\r\n {\r\n unit: 'k',\r\n max: 1e6,\r\n },\r\n {\r\n unit: 'M',\r\n max: 1e9,\r\n },\r\n {\r\n unit: 'G',\r\n max: 1e12,\r\n },\r\n {\r\n unit: 'T',\r\n max: 1e15,\r\n },\r\n {\r\n unit: 'P',\r\n max: 1e18,\r\n },\r\n {\r\n unit: 'E',\r\n max: 1e21,\r\n },\r\n {\r\n unit: 'Z',\r\n max: 1e24,\r\n },\r\n {\r\n unit: 'Y',\r\n max: 1e27,\r\n },\r\n {\r\n unit: 'R',\r\n max: 1e30,\r\n },\r\n {\r\n unit: 'Q',\r\n max: Infinity,\r\n },\r\n ],\r\n fullInteger: [\r\n {\r\n unit: '',\r\n max: 0,\r\n },\r\n {\r\n unit: '',\r\n max: 10,\r\n },\r\n {\r\n unit: 'da',\r\n max: 1e2,\r\n },\r\n {\r\n unit: 'h',\r\n max: 1e3,\r\n },\r\n {\r\n unit: 'k',\r\n max: 1e6,\r\n },\r\n {\r\n unit: 'M',\r\n max: 1e9,\r\n },\r\n {\r\n unit: 'G',\r\n max: 1e12,\r\n },\r\n {\r\n unit: 'T',\r\n max: 1e15,\r\n },\r\n {\r\n unit: 'P',\r\n max: 1e18,\r\n },\r\n {\r\n unit: 'E',\r\n max: 1e21,\r\n },\r\n {\r\n unit: 'Z',\r\n max: 1e24,\r\n },\r\n {\r\n unit: 'Y',\r\n max: 1e27,\r\n },\r\n {\r\n unit: 'R',\r\n max: 1e30,\r\n },\r\n {\r\n unit: 'Q',\r\n max: Infinity,\r\n },\r\n ],\r\n decimal: [\r\n {\r\n unit: 'none',\r\n max: 1e-30,\r\n },\r\n {\r\n unit: 'q',\r\n max: 1e-27,\r\n },\r\n {\r\n unit: 'r',\r\n max: 1e-24,\r\n },\r\n {\r\n unit: 'y',\r\n max: 1e-21,\r\n },\r\n {\r\n unit: 'z',\r\n max: 1e-18,\r\n },\r\n {\r\n unit: 'a',\r\n max: 1e-15,\r\n },\r\n {\r\n unit: 'f',\r\n max: 1e-12,\r\n },\r\n {\r\n unit: 'p',\r\n max: 1e-9,\r\n },\r\n {\r\n unit: 'n',\r\n max: 1e-6,\r\n },\r\n {\r\n unit: 'µ',\r\n max: 1e-3,\r\n },\r\n {\r\n unit: 'm',\r\n max: 1,\r\n },\r\n {\r\n unit: '',\r\n max: 1e3,\r\n },\r\n {\r\n unit: 'k',\r\n max: 1e6,\r\n },\r\n {\r\n unit: 'M',\r\n max: 1e9,\r\n },\r\n {\r\n unit: 'G',\r\n max: 1e12,\r\n },\r\n {\r\n unit: 'T',\r\n max: 1e15,\r\n },\r\n {\r\n unit: 'P',\r\n max: 1e18,\r\n },\r\n {\r\n unit: 'E',\r\n max: 1e21,\r\n },\r\n {\r\n unit: 'Z',\r\n max: 1e24,\r\n },\r\n {\r\n unit: 'Y',\r\n max: 1e27,\r\n },\r\n {\r\n unit: 'R',\r\n max: 1e30,\r\n },\r\n {\r\n unit: 'Q',\r\n max: Infinity,\r\n },\r\n ],\r\n fullDecimal: [\r\n {\r\n unit: 'none',\r\n max: 1e-30,\r\n },\r\n {\r\n unit: 'q',\r\n max: 1e-27,\r\n },\r\n {\r\n unit: 'r',\r\n max: 1e-24,\r\n },\r\n {\r\n unit: 'y',\r\n max: 1e-21,\r\n },\r\n {\r\n unit: 'z',\r\n max: 1e-18,\r\n },\r\n {\r\n unit: 'a',\r\n max: 1e-15,\r\n },\r\n {\r\n unit: 'f',\r\n max: 1e-12,\r\n },\r\n {\r\n unit: 'p',\r\n max: 1e-9,\r\n },\r\n {\r\n unit: 'n',\r\n max: 1e-6,\r\n },\r\n {\r\n unit: 'µ',\r\n max: 1e-3,\r\n },\r\n {\r\n unit: 'm',\r\n max: 0.01,\r\n },\r\n {\r\n unit: 'c',\r\n max: 0.1,\r\n },\r\n {\r\n unit: 'd',\r\n max: 1,\r\n },\r\n {\r\n unit: '',\r\n max: 10,\r\n },\r\n {\r\n unit: 'da',\r\n max: 1e2,\r\n },\r\n {\r\n unit: 'h',\r\n max: 1e3,\r\n },\r\n {\r\n unit: 'k',\r\n max: 1e6,\r\n },\r\n {\r\n unit: 'M',\r\n max: 1e9,\r\n },\r\n {\r\n unit: 'G',\r\n max: 1e12,\r\n },\r\n {\r\n unit: 'T',\r\n max: 1e15,\r\n },\r\n {\r\n unit: 'P',\r\n max: 1e18,\r\n },\r\n {\r\n unit: 'E',\r\n max: 1e21,\r\n },\r\n {\r\n unit: 'Z',\r\n max: 1e24,\r\n },\r\n {\r\n unit: 'Y',\r\n max: 1e27,\r\n },\r\n {\r\n unit: 'R',\r\n max: 1e30,\r\n },\r\n {\r\n unit: 'Q',\r\n max: Infinity,\r\n },\r\n ],\r\n};\r\n\r\nconst phonetic: { [en: string]: string } = {\r\n q: 'quecto',\r\n r: 'ronto',\r\n y: 'jokto',\r\n z: 'zepto',\r\n a: 'atto',\r\n f: 'femto',\r\n p: 'piko',\r\n n: 'nano',\r\n µ: 'mikro',\r\n m: 'mili',\r\n c: 'centy',\r\n d: 'decy',\r\n da: 'deka',\r\n h: 'hekta',\r\n k: 'kilo',\r\n M: 'mega',\r\n G: 'giga',\r\n T: 'tera',\r\n P: 'peta',\r\n E: 'eksa',\r\n Z: 'zetta',\r\n Y: 'jotta',\r\n R: 'roanna',\r\n Q: 'quetta',\r\n};\r\n\r\nexport interface UnitsPipeOptions {\r\n precision?: number;\r\n type?: 'basic' | 'fullInteger' | 'decimal' | 'fullDecimal';\r\n translations?: { [en: string]: string } | 'phonetic';\r\n}\r\n\r\n/**\r\n * Transform number from '12345' to '12.35 k'\r\n * Can use basic units: [k, M, G, ...]\r\n * Or in fullInteger type: [da, h, k, M, ...]\r\n * Ot in decimal type: [..., m, , k, ...]\r\n * Ot in fullDecimal type: [..., m, c, d, , da, h, k, ...]\r\n */\r\n@Pipe({\r\n name: 'oblUnits',\r\n standalone: true,\r\n})\r\nexport class UnitsPipe implements PipeTransform {\r\n translate = new TranslationPipe();\r\n\r\n transform(\r\n value: number,\r\n options?: UnitsPipeOptions\r\n ): string {\r\n const { type, precision, translations } = options || {};\r\n const unitsSet = units[type || 'basic'];\r\n\r\n if (value === 0) {\r\n return value.toString();\r\n }\r\n\r\n let index = 1;\r\n\r\n const v = Math.abs(value);\r\n\r\n const max = () => unitsSet[index - 1].max || 1;\r\n const toFixed = () => +(v / max()).toFixed(precision) * max();\r\n\r\n while (\r\n (toFixed() >= unitsSet[index].max || v / unitsSet[index].max === 1) &&\r\n index < unitsSet.length\r\n ) {\r\n index += 1;\r\n }\r\n\r\n return (\r\n (value / max()).toFixed(precision) +\r\n (unitsSet[index].unit !== ''\r\n ? ' ' +\r\n this.translate.transform(\r\n unitsSet[index].unit,\r\n ((translations === 'phonetic' && phonetic) ||\r\n translations ||\r\n {}) as any\r\n )\r\n : '')\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ElementaryMath } from '@obliczeniowo/elementary/math';\r\n\r\nexport interface LimitsPipeOptions {\r\n min?: number;\r\n max?: number;\r\n transformTo?: 'int-ceil' | 'int-floor' | 'int-round';\r\n}\r\n\r\n@Pipe({\r\n name: 'oblLimits',\r\n standalone: true,\r\n})\r\nexport class LimitsPipe implements PipeTransform {\r\n transform(\r\n value: number[],\r\n options?: LimitsPipeOptions\r\n ): number[] {\r\n return value.map(value => {\r\n value = ElementaryMath.minmax(\r\n value || 0,\r\n (options?.min !== undefined && options.min >= 0 && options.min) || 0,\r\n options?.max ?? Infinity\r\n );\r\n const [type, roundType] = options?.transformTo?.split('-') || [];\r\n return type === 'int' ? this.roundTo(value, roundType) : value;\r\n });\r\n }\r\n\r\n roundTo(value: number, type: 'floor' | 'ceil' | 'bottom' | string) {\r\n switch (type) {\r\n case 'floor':\r\n return Math.floor(value);\r\n case 'ceil':\r\n return Math.ceil(value);\r\n case 'round':\r\n return Math.round(value);\r\n default:\r\n return value;\r\n }\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'oblIntFilter',\r\n standalone: true\r\n})\r\nexport class IntFilterPipe implements PipeTransform {\r\n transform(value: number[]): number[] {\r\n return value.filter(v => v === Math.floor(v));\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'oblRangeFilter',\r\n standalone: true,\r\n})\r\nexport class RangeFilterPipe implements PipeTransform {\r\n transform(value: number[], min?: number, max?: number): number[] {\r\n return value.filter(\r\n (v) => v >= (min || Number.NEGATIVE_INFINITY) && v <= (max || Infinity)\r\n );\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'oblAbs',\r\n standalone: true\r\n})\r\nexport class AbsPipe implements PipeTransform {\r\n transform(value: number[]): number[] {\r\n return value.map(v => Math.abs(v));\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'oblUIntFilter',\r\n standalone: true\r\n})\r\nexport class UIntFilterPipe implements PipeTransform {\r\n\r\n transform(value: number[], max?: number): unknown {\r\n return value.filter(v => v === Math.floor(v) && v >= 0 && v <= (max || Infinity));\r\n }\r\n\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ElementaryMath, Operations } from '@obliczeniowo/elementary/math';\r\n\r\n@Pipe({\r\n name: 'oblMath',\r\n standalone: true\r\n})\r\nexport class MathPipe implements PipeTransform {\r\n transform(value: number, operations: Operations): number {\r\n return ElementaryMath.calculate(operations, { x: value });\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ElementaryMath } from '@obliczeniowo/elementary/math';\r\n\r\n@Pipe({\r\n name: 'oblIsNumeric',\r\n standalone: true\r\n})\r\nexport class IsNumericPipe implements PipeTransform {\r\n transform(value: string | number, fully?: boolean): boolean {\r\n return ElementaryMath.isNumeric(value, fully);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport { ElementaryMath, MinMax } from '@obliczeniowo/elementary/math';\r\n\r\n@Pipe({\r\n name: 'oblMinMax',\r\n standalone: true\r\n})\r\nexport class MinMaxPipe implements PipeTransform {\r\n transform(numbers: number[]): MinMax {\r\n return ElementaryMath.getMinMax(numbers);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'oblMin',\r\n standalone: true\r\n})\r\nexport class MinPipe implements PipeTransform {\r\n transform(value: number[]): number {\r\n return Math.min(...value);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'oblMax',\r\n standalone: true\r\n})\r\nexport class MaxPipe implements PipeTransform {\r\n transform(value: number[]): number {\r\n return Math.max(...value);\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}