@thi.ng/units
Version:
Extensible SI unit creation, conversions, quantities & calculations (incl. ~170 predefined units & constants)
119 lines (118 loc) • 3.4 kB
JavaScript
import { Quantity, quantity } from "../unit.js";
import { dpi } from "../units/density.js";
import { inch, mm } from "../units/length.js";
const DIN_A0 = quantity([841, 1189], mm);
const DIN_A1 = quantity([594, 841], mm);
const DIN_A2 = quantity([420, 594], mm);
const DIN_A3 = quantity([297, 420], mm);
const DIN_A4 = quantity([210, 297], mm);
const DIN_A5 = quantity([148, 210], mm);
const DIN_A6 = quantity([105, 148], mm);
const DIN_A7 = quantity([74, 105], mm);
const DIN_A8 = quantity([52, 74], mm);
const $ = (q) => new Quantity([q.value[1], q.value[0]]);
const DIN_A0_LANDSCAPE = $(DIN_A0);
const DIN_A1_LANDSCAPE = $(DIN_A1);
const DIN_A2_LANDSCAPE = $(DIN_A2);
const DIN_A3_LANDSCAPE = $(DIN_A3);
const DIN_A4_LANDSCAPE = $(DIN_A4);
const DIN_A5_LANDSCAPE = $(DIN_A5);
const DIN_A6_LANDSCAPE = $(DIN_A6);
const DIN_A7_LANDSCAPE = $(DIN_A7);
const DIN_A8_LANDSCAPE = $(DIN_A8);
const US_LETTER = quantity([8.5, 11], inch);
const US_HALF_LETTER = quantity([5.5, 8.5], inch);
const US_LEGAL = quantity([8.5, 14], inch);
const US_JUNIOR_LEGAL = quantity([5, 8], inch);
const US_LETTER_LANDSCAPE = $(US_LETTER);
const US_HALF_LETTER_LANDSCAPE = $(US_HALF_LETTER);
const US_LEGAL_LANDSCAPE = $(US_LEGAL);
const US_JUNIOR_LEGAL_LANDSCAPE = $(US_JUNIOR_LEGAL);
const ANSI_A = US_LETTER;
const ANSI_B = quantity([11, 17], inch);
const ANSI_C = quantity([17, 22], inch);
const ANSI_D = quantity([22, 34], inch);
const ANSI_E = quantity([34, 44], inch);
const ANSI_A_LANDSCAPE = $(ANSI_A);
const ANSI_B_LANDSCAPE = $(ANSI_B);
const ANSI_C_LANDSCAPE = $(ANSI_C);
const ANSI_D_LANDSCAPE = $(ANSI_D);
const ANSI_E_LANDSCAPE = $(ANSI_E);
const US_ARCH_A = quantity([9, 12], inch);
const US_ARCH_B = quantity([12, 18], inch);
const US_ARCH_C = quantity([18, 24], inch);
const US_ARCH_D = quantity([24, 36], inch);
const US_ARCH_E = quantity([36, 48], inch);
const US_ARCH_E1 = quantity([30, 42], inch);
const US_ARCH_E2 = quantity([26, 38], inch);
const US_ARCH_E3 = quantity([27, 39], inch);
const US_ARCH_A_LANDSCAPE = $(US_ARCH_A);
const US_ARCH_B_LANDSCAPE = $(US_ARCH_B);
const US_ARCH_C_LANDSCAPE = $(US_ARCH_C);
const US_ARCH_D_LANDSCAPE = $(US_ARCH_D);
const US_ARCH_E_LANDSCAPE = $(US_ARCH_E);
const US_ARCH_E1_LANDSCAPE = $(US_ARCH_E1);
const US_ARCH_E2_LANDSCAPE = $(US_ARCH_E2);
const US_ARCH_E3_LANDSCAPE = $(US_ARCH_E3);
const DPI_72 = quantity(72, dpi);
const DPI_150 = quantity(150, dpi);
const DPI_300 = quantity(300, dpi);
const DPI_600 = quantity(600, dpi);
export {
ANSI_A,
ANSI_A_LANDSCAPE,
ANSI_B,
ANSI_B_LANDSCAPE,
ANSI_C,
ANSI_C_LANDSCAPE,
ANSI_D,
ANSI_D_LANDSCAPE,
ANSI_E,
ANSI_E_LANDSCAPE,
DIN_A0,
DIN_A0_LANDSCAPE,
DIN_A1,
DIN_A1_LANDSCAPE,
DIN_A2,
DIN_A2_LANDSCAPE,
DIN_A3,
DIN_A3_LANDSCAPE,
DIN_A4,
DIN_A4_LANDSCAPE,
DIN_A5,
DIN_A5_LANDSCAPE,
DIN_A6,
DIN_A6_LANDSCAPE,
DIN_A7,
DIN_A7_LANDSCAPE,
DIN_A8,
DIN_A8_LANDSCAPE,
DPI_150,
DPI_300,
DPI_600,
DPI_72,
US_ARCH_A,
US_ARCH_A_LANDSCAPE,
US_ARCH_B,
US_ARCH_B_LANDSCAPE,
US_ARCH_C,
US_ARCH_C_LANDSCAPE,
US_ARCH_D,
US_ARCH_D_LANDSCAPE,
US_ARCH_E,
US_ARCH_E1,
US_ARCH_E1_LANDSCAPE,
US_ARCH_E2,
US_ARCH_E2_LANDSCAPE,
US_ARCH_E3,
US_ARCH_E3_LANDSCAPE,
US_ARCH_E_LANDSCAPE,
US_HALF_LETTER,
US_HALF_LETTER_LANDSCAPE,
US_JUNIOR_LEGAL,
US_JUNIOR_LEGAL_LANDSCAPE,
US_LEGAL,
US_LEGAL_LANDSCAPE,
US_LETTER,
US_LETTER_LANDSCAPE
};