css-calipers 0.13.0 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -25
- package/dist/cjs/factory.js +0 -3
- package/dist/cjs/internal/createCoreApi.js +30 -9
- package/dist/esm/core.d.ts +21 -17
- package/dist/esm/core.d.ts.map +1 -1
- package/dist/esm/factory.d.ts +0 -2
- package/dist/esm/factory.d.ts.map +1 -1
- package/dist/esm/factory.js +0 -3
- package/dist/esm/internal/createCoreApi.d.ts +7 -11
- package/dist/esm/internal/createCoreApi.d.ts.map +1 -1
- package/dist/esm/internal/createCoreApi.js +30 -9
- package/package.json +11 -24
- package/RELEASING.md +0 -62
- package/dist/cjs/comparisons/index.js +0 -25
- package/dist/cjs/containerQueries/containerQueries.js +0 -115
- package/dist/cjs/containerQueries/factory.js +0 -123
- package/dist/cjs/containerQueries/helpers.js +0 -95
- package/dist/cjs/containerQueries/index.js +0 -16
- package/dist/cjs/containerQueries/linting/aspectRatio.js +0 -24
- package/dist/cjs/containerQueries/linting/block.js +0 -23
- package/dist/cjs/containerQueries/linting/core.js +0 -25
- package/dist/cjs/containerQueries/linting/custom.js +0 -11
- package/dist/cjs/containerQueries/linting/inline.js +0 -23
- package/dist/cjs/containerQueries/linting/resolution.js +0 -12
- package/dist/cjs/containerQueries/linting/style.js +0 -28
- package/dist/cjs/containerQueries/linting.js +0 -24
- package/dist/cjs/containerQueries/moduleRegistry.js +0 -5
- package/dist/cjs/containerQueries/modules/aspectRatio.js +0 -51
- package/dist/cjs/containerQueries/modules/block.js +0 -53
- package/dist/cjs/containerQueries/modules/custom.js +0 -43
- package/dist/cjs/containerQueries/modules/index.js +0 -21
- package/dist/cjs/containerQueries/modules/inline.js +0 -53
- package/dist/cjs/containerQueries/modules/size.js +0 -2
- package/dist/cjs/containerQueries/modules/style.js +0 -36
- package/dist/cjs/containerQueries/types.js +0 -2
- package/dist/cjs/containerQueries/validation.js +0 -191
- package/dist/cjs/fraction.js +0 -139
- package/dist/cjs/internal/createComponentQueriesApi.js +0 -56
- package/dist/cjs/internal/createMediaQueriesApi.js +0 -74
- package/dist/cjs/internal/normalizeToArray.js +0 -9
- package/dist/cjs/libraryHelpers/vanilla-extract.js +0 -11
- package/dist/cjs/logicalOperators/index.js +0 -18
- package/dist/cjs/mediaQueries/factory.js +0 -187
- package/dist/cjs/mediaQueries/helpers.js +0 -97
- package/dist/cjs/mediaQueries/index.js +0 -23
- package/dist/cjs/mediaQueries/libraryHelpers/vanilla-extract.js +0 -77
- package/dist/cjs/mediaQueries/linting/core.js +0 -19
- package/dist/cjs/mediaQueries/linting/resolution.js +0 -11
- package/dist/cjs/mediaQueries/linting.js +0 -24
- package/dist/cjs/mediaQueries/mediaQueries.js +0 -53
- package/dist/cjs/mediaQueries/mediaQueryFactory.js +0 -120
- package/dist/cjs/mediaQueries/moduleRegistry.js +0 -5
- package/dist/cjs/mediaQueries/modules/custom.js +0 -26
- package/dist/cjs/mediaQueries/modules/dimensions.js +0 -61
- package/dist/cjs/mediaQueries/modules/display.js +0 -20
- package/dist/cjs/mediaQueries/modules/environment.js +0 -20
- package/dist/cjs/mediaQueries/modules/index.js +0 -23
- package/dist/cjs/mediaQueries/modules/interaction.js +0 -26
- package/dist/cjs/mediaQueries/modules/preferences.js +0 -26
- package/dist/cjs/mediaQueries/modules/resolution.js +0 -31
- package/dist/cjs/mediaQueries/types.js +0 -2
- package/dist/cjs/mediaQueries/validation.js +0 -131
- package/dist/cjs/types.js +0 -2
- package/dist/cjs/validation.js +0 -20
- package/dist/esm/comparisons/index.d.ts +0 -23
- package/dist/esm/comparisons/index.d.ts.map +0 -1
- package/dist/esm/comparisons/index.js +0 -22
- package/dist/esm/containerQueries/containerQueries.d.ts +0 -36
- package/dist/esm/containerQueries/containerQueries.d.ts.map +0 -1
- package/dist/esm/containerQueries/containerQueries.js +0 -109
- package/dist/esm/containerQueries/factory.d.ts +0 -20
- package/dist/esm/containerQueries/factory.d.ts.map +0 -1
- package/dist/esm/containerQueries/factory.js +0 -119
- package/dist/esm/containerQueries/helpers.d.ts +0 -53
- package/dist/esm/containerQueries/helpers.d.ts.map +0 -1
- package/dist/esm/containerQueries/helpers.js +0 -82
- package/dist/esm/containerQueries/index.d.ts +0 -10
- package/dist/esm/containerQueries/index.d.ts.map +0 -1
- package/dist/esm/containerQueries/index.js +0 -4
- package/dist/esm/containerQueries/linting/aspectRatio.d.ts +0 -4
- package/dist/esm/containerQueries/linting/aspectRatio.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting/aspectRatio.js +0 -19
- package/dist/esm/containerQueries/linting/block.d.ts +0 -4
- package/dist/esm/containerQueries/linting/block.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting/block.js +0 -18
- package/dist/esm/containerQueries/linting/core.d.ts +0 -4
- package/dist/esm/containerQueries/linting/core.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting/core.js +0 -20
- package/dist/esm/containerQueries/linting/custom.d.ts +0 -3
- package/dist/esm/containerQueries/linting/custom.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting/custom.js +0 -7
- package/dist/esm/containerQueries/linting/inline.d.ts +0 -4
- package/dist/esm/containerQueries/linting/inline.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting/inline.js +0 -18
- package/dist/esm/containerQueries/linting/resolution.d.ts +0 -1
- package/dist/esm/containerQueries/linting/resolution.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting/resolution.js +0 -12
- package/dist/esm/containerQueries/linting/style.d.ts +0 -3
- package/dist/esm/containerQueries/linting/style.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting/style.js +0 -24
- package/dist/esm/containerQueries/linting.d.ts +0 -4
- package/dist/esm/containerQueries/linting.d.ts.map +0 -1
- package/dist/esm/containerQueries/linting.js +0 -20
- package/dist/esm/containerQueries/moduleRegistry.d.ts +0 -25
- package/dist/esm/containerQueries/moduleRegistry.d.ts.map +0 -1
- package/dist/esm/containerQueries/moduleRegistry.js +0 -1
- package/dist/esm/containerQueries/modules/aspectRatio.d.ts +0 -17
- package/dist/esm/containerQueries/modules/aspectRatio.d.ts.map +0 -1
- package/dist/esm/containerQueries/modules/aspectRatio.js +0 -47
- package/dist/esm/containerQueries/modules/block.d.ts +0 -20
- package/dist/esm/containerQueries/modules/block.d.ts.map +0 -1
- package/dist/esm/containerQueries/modules/block.js +0 -49
- package/dist/esm/containerQueries/modules/custom.d.ts +0 -13
- package/dist/esm/containerQueries/modules/custom.d.ts.map +0 -1
- package/dist/esm/containerQueries/modules/custom.js +0 -39
- package/dist/esm/containerQueries/modules/index.d.ts +0 -6
- package/dist/esm/containerQueries/modules/index.d.ts.map +0 -1
- package/dist/esm/containerQueries/modules/index.js +0 -5
- package/dist/esm/containerQueries/modules/inline.d.ts +0 -20
- package/dist/esm/containerQueries/modules/inline.d.ts.map +0 -1
- package/dist/esm/containerQueries/modules/inline.js +0 -49
- package/dist/esm/containerQueries/modules/size.d.ts +0 -41
- package/dist/esm/containerQueries/modules/size.d.ts.map +0 -1
- package/dist/esm/containerQueries/modules/size.js +0 -1
- package/dist/esm/containerQueries/modules/style.d.ts +0 -11
- package/dist/esm/containerQueries/modules/style.d.ts.map +0 -1
- package/dist/esm/containerQueries/modules/style.js +0 -32
- package/dist/esm/containerQueries/types.d.ts +0 -81
- package/dist/esm/containerQueries/types.d.ts.map +0 -1
- package/dist/esm/containerQueries/types.js +0 -1
- package/dist/esm/containerQueries/validation.d.ts +0 -41
- package/dist/esm/containerQueries/validation.d.ts.map +0 -1
- package/dist/esm/containerQueries/validation.js +0 -187
- package/dist/esm/fraction.d.ts +0 -23
- package/dist/esm/fraction.d.ts.map +0 -1
- package/dist/esm/fraction.js +0 -129
- package/dist/esm/internal/createComponentQueriesApi.d.ts +0 -34
- package/dist/esm/internal/createComponentQueriesApi.d.ts.map +0 -1
- package/dist/esm/internal/createComponentQueriesApi.js +0 -52
- package/dist/esm/internal/createMediaQueriesApi.d.ts +0 -35
- package/dist/esm/internal/createMediaQueriesApi.d.ts.map +0 -1
- package/dist/esm/internal/createMediaQueriesApi.js +0 -70
- package/dist/esm/internal/normalizeToArray.d.ts +0 -2
- package/dist/esm/internal/normalizeToArray.d.ts.map +0 -1
- package/dist/esm/internal/normalizeToArray.js +0 -5
- package/dist/esm/libraryHelpers/vanilla-extract.d.ts +0 -4
- package/dist/esm/libraryHelpers/vanilla-extract.d.ts.map +0 -1
- package/dist/esm/libraryHelpers/vanilla-extract.js +0 -6
- package/dist/esm/logicalOperators/index.d.ts +0 -2
- package/dist/esm/logicalOperators/index.d.ts.map +0 -1
- package/dist/esm/logicalOperators/index.js +0 -17
- package/dist/esm/mediaQueries/factory.d.ts +0 -45
- package/dist/esm/mediaQueries/factory.d.ts.map +0 -1
- package/dist/esm/mediaQueries/factory.js +0 -183
- package/dist/esm/mediaQueries/helpers.d.ts +0 -40
- package/dist/esm/mediaQueries/helpers.d.ts.map +0 -1
- package/dist/esm/mediaQueries/helpers.js +0 -87
- package/dist/esm/mediaQueries/index.d.ts +0 -8
- package/dist/esm/mediaQueries/index.d.ts.map +0 -1
- package/dist/esm/mediaQueries/index.js +0 -7
- package/dist/esm/mediaQueries/libraryHelpers/vanilla-extract.d.ts +0 -5
- package/dist/esm/mediaQueries/libraryHelpers/vanilla-extract.d.ts.map +0 -1
- package/dist/esm/mediaQueries/libraryHelpers/vanilla-extract.js +0 -71
- package/dist/esm/mediaQueries/linting/core.d.ts +0 -5
- package/dist/esm/mediaQueries/linting/core.d.ts.map +0 -1
- package/dist/esm/mediaQueries/linting/core.js +0 -14
- package/dist/esm/mediaQueries/linting/resolution.d.ts +0 -3
- package/dist/esm/mediaQueries/linting/resolution.d.ts.map +0 -1
- package/dist/esm/mediaQueries/linting/resolution.js +0 -7
- package/dist/esm/mediaQueries/linting.d.ts +0 -4
- package/dist/esm/mediaQueries/linting.d.ts.map +0 -1
- package/dist/esm/mediaQueries/linting.js +0 -20
- package/dist/esm/mediaQueries/mediaQueries.d.ts +0 -23
- package/dist/esm/mediaQueries/mediaQueries.d.ts.map +0 -1
- package/dist/esm/mediaQueries/mediaQueries.js +0 -48
- package/dist/esm/mediaQueries/moduleRegistry.d.ts +0 -27
- package/dist/esm/mediaQueries/moduleRegistry.d.ts.map +0 -1
- package/dist/esm/mediaQueries/moduleRegistry.js +0 -1
- package/dist/esm/mediaQueries/modules/custom.d.ts +0 -10
- package/dist/esm/mediaQueries/modules/custom.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/custom.js +0 -22
- package/dist/esm/mediaQueries/modules/dimensions.d.ts +0 -19
- package/dist/esm/mediaQueries/modules/dimensions.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/dimensions.js +0 -57
- package/dist/esm/mediaQueries/modules/display.d.ts +0 -9
- package/dist/esm/mediaQueries/modules/display.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/display.js +0 -16
- package/dist/esm/mediaQueries/modules/environment.d.ts +0 -9
- package/dist/esm/mediaQueries/modules/environment.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/environment.js +0 -16
- package/dist/esm/mediaQueries/modules/index.d.ts +0 -8
- package/dist/esm/mediaQueries/modules/index.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/index.js +0 -7
- package/dist/esm/mediaQueries/modules/interaction.d.ts +0 -11
- package/dist/esm/mediaQueries/modules/interaction.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/interaction.js +0 -22
- package/dist/esm/mediaQueries/modules/preferences.d.ts +0 -11
- package/dist/esm/mediaQueries/modules/preferences.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/preferences.js +0 -22
- package/dist/esm/mediaQueries/modules/resolution.d.ts +0 -12
- package/dist/esm/mediaQueries/modules/resolution.d.ts.map +0 -1
- package/dist/esm/mediaQueries/modules/resolution.js +0 -27
- package/dist/esm/mediaQueries/types.d.ts +0 -117
- package/dist/esm/mediaQueries/types.d.ts.map +0 -1
- package/dist/esm/mediaQueries/types.js +0 -1
- package/dist/esm/mediaQueries/validation.d.ts +0 -34
- package/dist/esm/mediaQueries/validation.d.ts.map +0 -1
- package/dist/esm/mediaQueries/validation.js +0 -127
- package/dist/esm/types.d.ts +0 -35
- package/dist/esm/types.d.ts.map +0 -1
- package/dist/esm/types.js +0 -1
- package/dist/esm/validation.d.ts +0 -10
- package/dist/esm/validation.d.ts.map +0 -1
- package/dist/esm/validation.js +0 -15
- package/dist/examples/containerQueries.example.js +0 -54
- package/dist/examples/examples/containerQueries.example.js +0 -54
- package/dist/examples/examples/factory-wrapper.example.js +0 -33
- package/dist/examples/examples/lineHeight-normalizer.example.js +0 -81
- package/dist/examples/examples/mediaQueries-multipleInstances.example.js +0 -127
- package/dist/examples/examples/mixedQueries.example.js +0 -55
- package/dist/examples/examples/validation-and-runtime-checks.example.js +0 -85
- package/dist/examples/examples/validation-unit-tests.example.js +0 -35
- package/dist/examples/factory-wrapper.example.js +0 -33
- package/dist/examples/lineHeight-normalizer.example.js +0 -81
- package/dist/examples/mediaQueries-multipleInstances.example.js +0 -127
- package/dist/examples/mixedQueries.example.js +0 -60
- package/dist/examples/src/comparisons/index.js +0 -25
- package/dist/examples/src/containerQueries/containerQueries.js +0 -96
- package/dist/examples/src/containerQueries/factory.js +0 -123
- package/dist/examples/src/containerQueries/helpers.js +0 -94
- package/dist/examples/src/containerQueries/index.js +0 -16
- package/dist/examples/src/containerQueries/linting/aspectRatio.js +0 -20
- package/dist/examples/src/containerQueries/linting/block.js +0 -20
- package/dist/examples/src/containerQueries/linting/core.js +0 -19
- package/dist/examples/src/containerQueries/linting/custom.js +0 -11
- package/dist/examples/src/containerQueries/linting/inline.js +0 -20
- package/dist/examples/src/containerQueries/linting/style.js +0 -28
- package/dist/examples/src/containerQueries/linting.js +0 -24
- package/dist/examples/src/containerQueries/moduleRegistry.js +0 -5
- package/dist/examples/src/containerQueries/modules/aspectRatio.js +0 -33
- package/dist/examples/src/containerQueries/modules/block.js +0 -44
- package/dist/examples/src/containerQueries/modules/custom.js +0 -31
- package/dist/examples/src/containerQueries/modules/index.js +0 -21
- package/dist/examples/src/containerQueries/modules/inline.js +0 -44
- package/dist/examples/src/containerQueries/modules/style.js +0 -36
- package/dist/examples/src/containerQueries/types.js +0 -2
- package/dist/examples/src/containerQueries/validation.js +0 -177
- package/dist/examples/src/core.js +0 -16
- package/dist/examples/src/factory.js +0 -21
- package/dist/examples/src/index.js +0 -30
- package/dist/examples/src/internal/buildMeasurementCreationError.js +0 -16
- package/dist/examples/src/internal/createCoreApi.js +0 -336
- package/dist/examples/src/internal/createMediaQueriesApi.js +0 -74
- package/dist/examples/src/internal/createUnitsApi.js +0 -18
- package/dist/examples/src/internal/errors.js +0 -130
- package/dist/examples/src/libraryHelpers/vanilla-extract.js +0 -11
- package/dist/examples/src/mediaQueries/factory.js +0 -163
- package/dist/examples/src/mediaQueries/helpers.js +0 -88
- package/dist/examples/src/mediaQueries/index.js +0 -23
- package/dist/examples/src/mediaQueries/linting/core.js +0 -19
- package/dist/examples/src/mediaQueries/linting/resolution.js +0 -11
- package/dist/examples/src/mediaQueries/linting.js +0 -24
- package/dist/examples/src/mediaQueries/mediaQueries.js +0 -53
- package/dist/examples/src/mediaQueries/moduleRegistry.js +0 -5
- package/dist/examples/src/mediaQueries/modules/custom.js +0 -26
- package/dist/examples/src/mediaQueries/modules/dimensions.js +0 -61
- package/dist/examples/src/mediaQueries/modules/display.js +0 -20
- package/dist/examples/src/mediaQueries/modules/environment.js +0 -20
- package/dist/examples/src/mediaQueries/modules/index.js +0 -23
- package/dist/examples/src/mediaQueries/modules/interaction.js +0 -26
- package/dist/examples/src/mediaQueries/modules/preferences.js +0 -26
- package/dist/examples/src/mediaQueries/modules/resolution.js +0 -31
- package/dist/examples/src/mediaQueries/types.js +0 -2
- package/dist/examples/src/mediaQueries/validation.js +0 -128
- package/dist/examples/src/ratio.js +0 -141
- package/dist/examples/src/types.js +0 -2
- package/dist/examples/src/unitDefinitions.js +0 -67
- package/dist/examples/src/units/absolute.js +0 -11
- package/dist/examples/src/units/angle.js +0 -8
- package/dist/examples/src/units/container.js +0 -10
- package/dist/examples/src/units/font-relative.js +0 -16
- package/dist/examples/src/units/frequency.js +0 -6
- package/dist/examples/src/units/grid.js +0 -5
- package/dist/examples/src/units/percent.js +0 -7
- package/dist/examples/src/units/resolution.js +0 -7
- package/dist/examples/src/units/time.js +0 -6
- package/dist/examples/src/units/viewport-dynamic.js +0 -10
- package/dist/examples/src/units/viewport-large.js +0 -10
- package/dist/examples/src/units/viewport-small.js +0 -10
- package/dist/examples/src/units/viewport.js +0 -10
- package/dist/examples/src/validation.js +0 -20
- package/dist/examples/validation-and-runtime-checks.example.js +0 -85
- package/dist/examples/validation-unit-tests.example.js +0 -35
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
import { applyContainerQueryValidation } from "./helpers";
|
|
2
|
-
import { assertCondition, assertMatchingUnits, hasCssMethod, isMeasurement, isRatio, } from "../core";
|
|
3
|
-
import { toValidationResult } from "../validation";
|
|
4
|
-
import { normalizeToArray } from "../internal/normalizeToArray";
|
|
5
|
-
import { ratioToFloat } from "../ratio";
|
|
6
|
-
const isFiniteNumber = (value) => typeof value === "number" && Number.isFinite(value);
|
|
7
|
-
const assertMeasurement = (value, label) => {
|
|
8
|
-
assertCondition(isMeasurement(value), `${label} must be a measurement`);
|
|
9
|
-
};
|
|
10
|
-
const assertMeasurementPositive = (value, label) => {
|
|
11
|
-
assertCondition(value.getValue() > 0, `${label} must be greater than 0`);
|
|
12
|
-
};
|
|
13
|
-
const assertRatio = (value, label) => {
|
|
14
|
-
assertCondition(isRatio(value), `${label} must be a ratio created with r()`);
|
|
15
|
-
};
|
|
16
|
-
const assertRatioPositive = (value, label) => {
|
|
17
|
-
assertCondition(value.numerator() > 0, `${label} numerator must be greater than 0`);
|
|
18
|
-
assertCondition(value.denominator() > 0, `${label} denominator must be greater than 0`);
|
|
19
|
-
};
|
|
20
|
-
const isStyleValue = (value) => {
|
|
21
|
-
if (typeof value === "string")
|
|
22
|
-
return true;
|
|
23
|
-
if (isFiniteNumber(value))
|
|
24
|
-
return true;
|
|
25
|
-
if (hasCssMethod(value))
|
|
26
|
-
return true;
|
|
27
|
-
return false;
|
|
28
|
-
};
|
|
29
|
-
export const createContainerQueryValidation = (core) => {
|
|
30
|
-
const assertCondition = core.assertCondition;
|
|
31
|
-
const assertMatchingUnits = core.assertMatchingUnits;
|
|
32
|
-
const runContainerQueryValidation = (config, helpers, check, context, fallbackMessage = "Invalid container query configuration") => {
|
|
33
|
-
if (!check)
|
|
34
|
-
return true;
|
|
35
|
-
try {
|
|
36
|
-
check(config);
|
|
37
|
-
return true;
|
|
38
|
-
}
|
|
39
|
-
catch (error) {
|
|
40
|
-
const result = toValidationResult(error, fallbackMessage);
|
|
41
|
-
return applyContainerQueryValidation(config, helpers, () => result, context);
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
const validateMinMaxWidth = (props) => {
|
|
45
|
-
if (!props.minWidth || !props.maxWidth)
|
|
46
|
-
return;
|
|
47
|
-
if (Array.isArray(props.minWidth) || Array.isArray(props.maxWidth)) {
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
assertMatchingUnits(props.minWidth, props.maxWidth, "containerQueries.minMaxWidth");
|
|
51
|
-
assertCondition(props.minWidth.getValue() <= props.maxWidth.getValue(), "minWidth must be less than or equal to maxWidth");
|
|
52
|
-
};
|
|
53
|
-
const validateWidthValuesPositive = (props) => {
|
|
54
|
-
normalizeToArray(props.minWidth).forEach((value) => {
|
|
55
|
-
assertMeasurement(value, "minWidth");
|
|
56
|
-
assertMeasurementPositive(value, "minWidth");
|
|
57
|
-
});
|
|
58
|
-
normalizeToArray(props.maxWidth).forEach((value) => {
|
|
59
|
-
assertMeasurement(value, "maxWidth");
|
|
60
|
-
assertMeasurementPositive(value, "maxWidth");
|
|
61
|
-
});
|
|
62
|
-
};
|
|
63
|
-
const validateMinMaxHeight = (props) => {
|
|
64
|
-
if (!props.minHeight || !props.maxHeight)
|
|
65
|
-
return;
|
|
66
|
-
if (Array.isArray(props.minHeight) || Array.isArray(props.maxHeight)) {
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
assertMatchingUnits(props.minHeight, props.maxHeight, "containerQueries.minMaxHeight");
|
|
70
|
-
assertCondition(props.minHeight.getValue() <= props.maxHeight.getValue(), "minHeight must be less than or equal to maxHeight");
|
|
71
|
-
};
|
|
72
|
-
const validateHeightValuesPositive = (props) => {
|
|
73
|
-
normalizeToArray(props.minHeight).forEach((value) => {
|
|
74
|
-
assertMeasurement(value, "minHeight");
|
|
75
|
-
assertMeasurementPositive(value, "minHeight");
|
|
76
|
-
});
|
|
77
|
-
normalizeToArray(props.maxHeight).forEach((value) => {
|
|
78
|
-
assertMeasurement(value, "maxHeight");
|
|
79
|
-
assertMeasurementPositive(value, "maxHeight");
|
|
80
|
-
});
|
|
81
|
-
};
|
|
82
|
-
const validateInlineSizeValues = (props) => {
|
|
83
|
-
normalizeToArray(props.inlineSize).forEach((value) => {
|
|
84
|
-
assertMeasurement(value.value, "inlineSize");
|
|
85
|
-
assertMeasurementPositive(value.value, "inlineSize");
|
|
86
|
-
});
|
|
87
|
-
normalizeToArray(props.inlineSizeRange).forEach((value) => {
|
|
88
|
-
assertMeasurement(value.min, "inlineSizeRange.min");
|
|
89
|
-
assertMeasurement(value.max, "inlineSizeRange.max");
|
|
90
|
-
assertMeasurementPositive(value.min, "inlineSizeRange.min");
|
|
91
|
-
assertMeasurementPositive(value.max, "inlineSizeRange.max");
|
|
92
|
-
assertMatchingUnits(value.min, value.max, "containerQueries.inlineSizeRangeUnits");
|
|
93
|
-
assertCondition(value.min.getValue() <= value.max.getValue(), "inlineSizeRange min must be less than or equal to max");
|
|
94
|
-
});
|
|
95
|
-
};
|
|
96
|
-
const validateBlockSizeValues = (props) => {
|
|
97
|
-
normalizeToArray(props.blockSize).forEach((value) => {
|
|
98
|
-
assertMeasurement(value.value, "blockSize");
|
|
99
|
-
assertMeasurementPositive(value.value, "blockSize");
|
|
100
|
-
});
|
|
101
|
-
normalizeToArray(props.blockSizeRange).forEach((value) => {
|
|
102
|
-
assertMeasurement(value.min, "blockSizeRange.min");
|
|
103
|
-
assertMeasurement(value.max, "blockSizeRange.max");
|
|
104
|
-
assertMeasurementPositive(value.min, "blockSizeRange.min");
|
|
105
|
-
assertMeasurementPositive(value.max, "blockSizeRange.max");
|
|
106
|
-
assertMatchingUnits(value.min, value.max, "containerQueries.blockSizeRangeUnits");
|
|
107
|
-
assertCondition(value.min.getValue() <= value.max.getValue(), "blockSizeRange min must be less than or equal to max");
|
|
108
|
-
});
|
|
109
|
-
};
|
|
110
|
-
const validateAspectRatioValues = (props) => {
|
|
111
|
-
normalizeToArray(props.aspectRatio).forEach((value) => {
|
|
112
|
-
assertRatio(value, "aspectRatio");
|
|
113
|
-
assertRatioPositive(value, "aspectRatio");
|
|
114
|
-
});
|
|
115
|
-
normalizeToArray(props.minAspectRatio).forEach((value) => {
|
|
116
|
-
assertRatio(value, "minAspectRatio");
|
|
117
|
-
assertRatioPositive(value, "minAspectRatio");
|
|
118
|
-
});
|
|
119
|
-
normalizeToArray(props.maxAspectRatio).forEach((value) => {
|
|
120
|
-
assertRatio(value, "maxAspectRatio");
|
|
121
|
-
assertRatioPositive(value, "maxAspectRatio");
|
|
122
|
-
});
|
|
123
|
-
if (props.minAspectRatio &&
|
|
124
|
-
props.maxAspectRatio &&
|
|
125
|
-
!Array.isArray(props.minAspectRatio) &&
|
|
126
|
-
!Array.isArray(props.maxAspectRatio)) {
|
|
127
|
-
const minValue = ratioToFloat(props.minAspectRatio);
|
|
128
|
-
const maxValue = ratioToFloat(props.maxAspectRatio);
|
|
129
|
-
assertCondition(minValue <= maxValue, "minAspectRatio must be less than or equal to maxAspectRatio");
|
|
130
|
-
}
|
|
131
|
-
};
|
|
132
|
-
const validateStyleValues = (props) => {
|
|
133
|
-
if (!props.style)
|
|
134
|
-
return;
|
|
135
|
-
const entries = Object.entries(props.style);
|
|
136
|
-
assertCondition(entries.length > 0, "style conditions must not be empty.");
|
|
137
|
-
entries.forEach(([name, value]) => {
|
|
138
|
-
if (value === undefined || value === null)
|
|
139
|
-
return;
|
|
140
|
-
if (Array.isArray(value)) {
|
|
141
|
-
assertCondition(value.length > 0, `style.${name} must not be empty`);
|
|
142
|
-
value.forEach((entry, index) => {
|
|
143
|
-
assertCondition(isStyleValue(entry), `style.${name}[${index}] must be a primitive or measurement`);
|
|
144
|
-
});
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
assertCondition(isStyleValue(value), `style.${name} must be a primitive or measurement`);
|
|
148
|
-
});
|
|
149
|
-
};
|
|
150
|
-
const validateCustomFeatures = (props) => {
|
|
151
|
-
if (!props.customFeatures)
|
|
152
|
-
return;
|
|
153
|
-
const entries = Object.entries(props.customFeatures);
|
|
154
|
-
assertCondition(entries.length > 0, "customFeatures should not be empty.");
|
|
155
|
-
entries.forEach(([name, value]) => {
|
|
156
|
-
const trimmedName = name.trim();
|
|
157
|
-
assertCondition(trimmedName.length > 0, "Custom feature name must be non-empty.");
|
|
158
|
-
if (value === undefined || value === null)
|
|
159
|
-
return;
|
|
160
|
-
if (Array.isArray(value)) {
|
|
161
|
-
value.forEach((entry, index) => {
|
|
162
|
-
assertCondition(isStyleValue(entry), `Custom feature "${trimmedName}[${index}]" must be a primitive or a measurement.`);
|
|
163
|
-
});
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
assertCondition(isStyleValue(value), `Custom feature "${trimmedName}" must be a primitive or a measurement.`);
|
|
167
|
-
});
|
|
168
|
-
};
|
|
169
|
-
return {
|
|
170
|
-
runContainerQueryValidation,
|
|
171
|
-
validateMinMaxWidth,
|
|
172
|
-
validateWidthValuesPositive,
|
|
173
|
-
validateMinMaxHeight,
|
|
174
|
-
validateHeightValuesPositive,
|
|
175
|
-
validateInlineSizeValues,
|
|
176
|
-
validateBlockSizeValues,
|
|
177
|
-
validateAspectRatioValues,
|
|
178
|
-
validateStyleValues,
|
|
179
|
-
validateCustomFeatures,
|
|
180
|
-
};
|
|
181
|
-
};
|
|
182
|
-
const defaultContainerQueryValidation = createContainerQueryValidation({
|
|
183
|
-
assertCondition,
|
|
184
|
-
assertMatchingUnits,
|
|
185
|
-
});
|
|
186
|
-
export const { runContainerQueryValidation, validateMinMaxWidth, validateWidthValuesPositive, validateMinMaxHeight, validateHeightValuesPositive, validateInlineSizeValues, validateBlockSizeValues, validateAspectRatioValues, validateStyleValues, validateCustomFeatures, } = defaultContainerQueryValidation;
|
|
187
|
-
export { defaultContainerQueryValidation };
|
package/dist/esm/fraction.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export interface IFraction {
|
|
2
|
-
css: () => string;
|
|
3
|
-
toString: () => string;
|
|
4
|
-
valueOf: () => number;
|
|
5
|
-
numerator: () => number;
|
|
6
|
-
denominator: () => number;
|
|
7
|
-
withNumerator: (numerator: number) => IFraction;
|
|
8
|
-
withDenominator: (denominator: number) => IFraction;
|
|
9
|
-
}
|
|
10
|
-
export type Fraction = IFraction;
|
|
11
|
-
export type RatioParts = {
|
|
12
|
-
numerator: number;
|
|
13
|
-
denominator: number;
|
|
14
|
-
};
|
|
15
|
-
export declare function r(denominator: number): Fraction;
|
|
16
|
-
export declare function r(numerator: number, denominator: number): Fraction;
|
|
17
|
-
export declare const isFraction: (value: unknown) => value is IFraction;
|
|
18
|
-
export declare const parseRatio: (value: number | string | IFraction) => RatioParts | null;
|
|
19
|
-
export declare const normalizeFraction: (fraction: IFraction) => IFraction;
|
|
20
|
-
export declare const reduceFraction: (fraction: IFraction) => IFraction;
|
|
21
|
-
export declare const simplifyFraction: (fraction: IFraction) => IFraction;
|
|
22
|
-
export declare const fractionToFloat: (fraction: IFraction) => number;
|
|
23
|
-
//# sourceMappingURL=fraction.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fraction.d.ts","sourceRoot":"","sources":["../../src/fraction.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,SAAS,CAAC;IAChD,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,SAAS,CAAC;CACrD;AAED,MAAM,MAAM,QAAQ,GAAG,SAAS,CAAC;AAEjC,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAwDF,wBAAgB,CAAC,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,CAAC;AACjD,wBAAgB,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,QAAQ,CAAC;AAUpE,eAAO,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,SAWpD,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,GAAG,MAAM,GAAG,SAAS,KAAG,UAAU,GAAG,IAoB5E,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,UAAU,SAAS,KAAG,SAiCvD,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,UAAU,SAAS,KAAG,SACxB,CAAC;AAE9B,eAAO,MAAM,gBAAgB,GAAI,UAAU,SAAS,KAAG,SAOtD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,UAAU,SAAS,KAAG,MACP,CAAC"}
|
package/dist/esm/fraction.js
DELETED
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
-
};
|
|
7
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
-
};
|
|
12
|
-
var _FractionImpl_numerator, _FractionImpl_denominator, _FractionImpl_omitDenominatorWhenOne;
|
|
13
|
-
class FractionImpl {
|
|
14
|
-
constructor(numerator, denominator, options = {}) {
|
|
15
|
-
var _a;
|
|
16
|
-
_FractionImpl_numerator.set(this, void 0);
|
|
17
|
-
_FractionImpl_denominator.set(this, void 0);
|
|
18
|
-
_FractionImpl_omitDenominatorWhenOne.set(this, void 0);
|
|
19
|
-
if (!Number.isFinite(numerator) || !Number.isFinite(denominator)) {
|
|
20
|
-
throw new Error('Fraction values must be finite numbers.');
|
|
21
|
-
}
|
|
22
|
-
if (denominator === 0) {
|
|
23
|
-
throw new Error('Fraction denominator cannot be zero.');
|
|
24
|
-
}
|
|
25
|
-
__classPrivateFieldSet(this, _FractionImpl_numerator, numerator, "f");
|
|
26
|
-
__classPrivateFieldSet(this, _FractionImpl_denominator, denominator, "f");
|
|
27
|
-
__classPrivateFieldSet(this, _FractionImpl_omitDenominatorWhenOne, (_a = options.omitDenominatorWhenOne) !== null && _a !== void 0 ? _a : false, "f");
|
|
28
|
-
}
|
|
29
|
-
numerator() {
|
|
30
|
-
return __classPrivateFieldGet(this, _FractionImpl_numerator, "f");
|
|
31
|
-
}
|
|
32
|
-
denominator() {
|
|
33
|
-
return __classPrivateFieldGet(this, _FractionImpl_denominator, "f");
|
|
34
|
-
}
|
|
35
|
-
withNumerator(numerator) {
|
|
36
|
-
return new FractionImpl(numerator, __classPrivateFieldGet(this, _FractionImpl_denominator, "f"));
|
|
37
|
-
}
|
|
38
|
-
withDenominator(denominator) {
|
|
39
|
-
return new FractionImpl(__classPrivateFieldGet(this, _FractionImpl_numerator, "f"), denominator);
|
|
40
|
-
}
|
|
41
|
-
valueOf() {
|
|
42
|
-
return __classPrivateFieldGet(this, _FractionImpl_numerator, "f") / __classPrivateFieldGet(this, _FractionImpl_denominator, "f");
|
|
43
|
-
}
|
|
44
|
-
css() {
|
|
45
|
-
if (__classPrivateFieldGet(this, _FractionImpl_omitDenominatorWhenOne, "f") && __classPrivateFieldGet(this, _FractionImpl_denominator, "f") === 1) {
|
|
46
|
-
return String(__classPrivateFieldGet(this, _FractionImpl_numerator, "f"));
|
|
47
|
-
}
|
|
48
|
-
return `${__classPrivateFieldGet(this, _FractionImpl_numerator, "f")}/${__classPrivateFieldGet(this, _FractionImpl_denominator, "f")}`;
|
|
49
|
-
}
|
|
50
|
-
toString() {
|
|
51
|
-
return this.css();
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
_FractionImpl_numerator = new WeakMap(), _FractionImpl_denominator = new WeakMap(), _FractionImpl_omitDenominatorWhenOne = new WeakMap();
|
|
55
|
-
export function r(numeratorOrDenominator, denominator) {
|
|
56
|
-
const numerator = denominator === undefined ? numeratorOrDenominator : numeratorOrDenominator;
|
|
57
|
-
const resolvedDenominator = denominator === undefined ? 1 : denominator;
|
|
58
|
-
return new FractionImpl(numerator, resolvedDenominator);
|
|
59
|
-
}
|
|
60
|
-
export const isFraction = (value) => {
|
|
61
|
-
return (typeof value === "object" &&
|
|
62
|
-
value !== null &&
|
|
63
|
-
"css" in value &&
|
|
64
|
-
"numerator" in value &&
|
|
65
|
-
"denominator" in value &&
|
|
66
|
-
typeof value.css === "function" &&
|
|
67
|
-
typeof value.numerator === "function" &&
|
|
68
|
-
typeof value.denominator === "function");
|
|
69
|
-
};
|
|
70
|
-
export const parseRatio = (value) => {
|
|
71
|
-
if (typeof value === "number") {
|
|
72
|
-
return Number.isFinite(value) ? { numerator: value, denominator: 1 } : null;
|
|
73
|
-
}
|
|
74
|
-
if (isFraction(value)) {
|
|
75
|
-
return { numerator: value.numerator(), denominator: value.denominator() };
|
|
76
|
-
}
|
|
77
|
-
const trimmed = value.trim();
|
|
78
|
-
if (!trimmed)
|
|
79
|
-
return null;
|
|
80
|
-
if (trimmed.includes("/")) {
|
|
81
|
-
const [left, right] = trimmed.split("/");
|
|
82
|
-
if (left === undefined || right === undefined)
|
|
83
|
-
return null;
|
|
84
|
-
const numerator = Number(left.trim());
|
|
85
|
-
const denominator = Number(right.trim());
|
|
86
|
-
if (!Number.isFinite(numerator) || !Number.isFinite(denominator))
|
|
87
|
-
return null;
|
|
88
|
-
if (denominator === 0)
|
|
89
|
-
return null;
|
|
90
|
-
return { numerator, denominator };
|
|
91
|
-
}
|
|
92
|
-
const parsed = Number(trimmed);
|
|
93
|
-
return Number.isFinite(parsed) ? { numerator: parsed, denominator: 1 } : null;
|
|
94
|
-
};
|
|
95
|
-
export const normalizeFraction = (fraction) => {
|
|
96
|
-
let numerator = fraction.numerator();
|
|
97
|
-
let denominator = fraction.denominator();
|
|
98
|
-
if (!Number.isFinite(numerator) || !Number.isFinite(denominator)) {
|
|
99
|
-
throw new Error("Fraction values must be finite numbers.");
|
|
100
|
-
}
|
|
101
|
-
if (denominator === 0) {
|
|
102
|
-
throw new Error("Fraction denominator cannot be zero.");
|
|
103
|
-
}
|
|
104
|
-
if (!Number.isInteger(numerator) || !Number.isInteger(denominator)) {
|
|
105
|
-
return new FractionImpl(numerator, denominator);
|
|
106
|
-
}
|
|
107
|
-
if (denominator < 0) {
|
|
108
|
-
numerator = -numerator;
|
|
109
|
-
denominator = Math.abs(denominator);
|
|
110
|
-
}
|
|
111
|
-
const gcd = (a, b) => {
|
|
112
|
-
let x = Math.abs(a);
|
|
113
|
-
let y = Math.abs(b);
|
|
114
|
-
while (y !== 0) {
|
|
115
|
-
const next = x % y;
|
|
116
|
-
x = y;
|
|
117
|
-
y = next;
|
|
118
|
-
}
|
|
119
|
-
return x === 0 ? 1 : x;
|
|
120
|
-
};
|
|
121
|
-
const divisor = gcd(numerator, denominator);
|
|
122
|
-
return new FractionImpl(numerator / divisor, denominator / divisor);
|
|
123
|
-
};
|
|
124
|
-
export const reduceFraction = (fraction) => normalizeFraction(fraction);
|
|
125
|
-
export const simplifyFraction = (fraction) => {
|
|
126
|
-
const reduced = normalizeFraction(fraction);
|
|
127
|
-
return new FractionImpl(reduced.numerator(), reduced.denominator(), { omitDenominatorWhenOne: true });
|
|
128
|
-
};
|
|
129
|
-
export const fractionToFloat = (fraction) => fraction.numerator() / fraction.denominator();
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import type { CoreApi } from "./createCoreApi";
|
|
2
|
-
import type { ContainerQueryBuilderHelpers } from "../containerQueries/helpers";
|
|
3
|
-
import type { StyleRule } from "../mediaQueries/types";
|
|
4
|
-
import { type IContainerQueries, type IContainerQueryProps, type IContainerQueryStyles } from "../containerQueries/containerQueries";
|
|
5
|
-
import { type IContainerQueryAspectRatio, type IContainerQueryBlock, type IContainerQueryCustomFeatures, type IContainerQueryInline, type IContainerQueryStyle } from "../containerQueries/modules";
|
|
6
|
-
import { type ContainerQueryFactoryConfig } from "../containerQueries/factory";
|
|
7
|
-
import type { ContainerQueryModulesList } from "../containerQueries/moduleRegistry";
|
|
8
|
-
type ContainerQueriesCore = Pick<CoreApi, "assertCondition" | "assertMatchingUnits">;
|
|
9
|
-
export declare const createContainerQueriesApi: (core: ContainerQueriesCore) => {
|
|
10
|
-
readonly buildContainerQueryString: (config: IContainerQueryProps) => string;
|
|
11
|
-
readonly makeContainerQueryStyle: <T extends IContainerQueries>(queries: T) => (stylesByQuery: IContainerQueryStyles<T>) => StyleRule;
|
|
12
|
-
readonly containerQueryFactory: <TModules extends ContainerQueryModulesList | undefined, TQueries extends import("../containerQueries").CSSContainerQueries, TOutput = import("../mediaQueries/types").ComplexStyleRule>(options: {
|
|
13
|
-
queries: TQueries;
|
|
14
|
-
config: ContainerQueryFactoryConfig<TModules, TOutput>;
|
|
15
|
-
}) => (stylesByQuery: Partial<Record<keyof TQueries, StyleRule>>) => TOutput;
|
|
16
|
-
readonly emitCoreFeatures: (props: import("../containerQueries/containerQueries").IContainerQueryCore, helpers: ContainerQueryBuilderHelpers) => void;
|
|
17
|
-
readonly emitAspectRatioFeatures: (props: IContainerQueryAspectRatio, helpers: ContainerQueryBuilderHelpers, validate?: import("../containerQueries/modules").ContainerQueryAspectRatioValidator) => void;
|
|
18
|
-
readonly emitBlockSizeFeatures: (props: IContainerQueryBlock, helpers: ContainerQueryBuilderHelpers, validate?: import("../containerQueries/modules").ContainerQueryBlockValidator) => void;
|
|
19
|
-
readonly emitInlineSizeFeatures: (props: IContainerQueryInline, helpers: ContainerQueryBuilderHelpers, validate?: import("../containerQueries/modules").ContainerQueryInlineValidator) => void;
|
|
20
|
-
readonly emitStyleFeatures: (props: IContainerQueryStyle, helpers: ContainerQueryBuilderHelpers, validate?: import("../containerQueries/modules").ContainerQueryStyleValidator) => void;
|
|
21
|
-
readonly emitCustomFeatures: (props: IContainerQueryCustomFeatures, helpers: ContainerQueryBuilderHelpers, options?: {
|
|
22
|
-
allowQueryArrays?: boolean;
|
|
23
|
-
}, validate?: import("../containerQueries/modules").ContainerQueryCustomFeaturesValidator) => void;
|
|
24
|
-
readonly containerQueryOutputVanillaExtract: (container: import("../mediaQueries/types").ComplexStyleRule) => Record<string, unknown>;
|
|
25
|
-
readonly createContainerQueryBuilder: <TConfig>(options: {
|
|
26
|
-
emitBase: import("../containerQueries/helpers").ContainerQueryExtensionHandler<TConfig>;
|
|
27
|
-
emitExtensions?: import("../containerQueries/helpers").ContainerQueryExtensionHandler<TConfig> | undefined;
|
|
28
|
-
resolveType?: ((config: TConfig) => "all" | "print" | "screen" | undefined) | undefined;
|
|
29
|
-
config?: import("../containerQueries/helpers").ContainerQueryBuilderConfig;
|
|
30
|
-
}) => (config: TConfig) => string;
|
|
31
|
-
};
|
|
32
|
-
export type ContainerQueriesApi = ReturnType<typeof createContainerQueriesApi>;
|
|
33
|
-
export type { IContainerQueries, IContainerQueryProps, IContainerQueryStyles, IContainerQueryCustomFeatures, IContainerQueryAspectRatio, IContainerQueryBlock, IContainerQueryInline, IContainerQueryStyle, ContainerQueryFactoryConfig, ContainerQueryModulesList, };
|
|
34
|
-
//# sourceMappingURL=createComponentQueriesApi.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createComponentQueriesApi.d.ts","sourceRoot":"","sources":["../../../src/internal/createComponentQueriesApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC3B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAML,KAAK,0BAA0B,EAC/B,KAAK,oBAAoB,EACzB,KAAK,6BAA6B,EAClC,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAEpF,KAAK,oBAAoB,GAAG,IAAI,CAC9B,OAAO,EACP,iBAAiB,GAAG,qBAAqB,CAC1C,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAAI,MAAM,oBAAoB;;uCAyB/D,CAAC,SAAS,iBAAiB,WAAW,CAAC,MACvC,eAAe,qBAAqB,CAAC,CAAC,CAAC,KAAG,SAAS;;;;WA8CyiC,yDAA+C;;;;;;;wBAhFjnC,CAAC;;;;;;;;WAgFm5B,eAAe;CAfj8B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC/E,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,0BAA0B,EAC1B,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,GAC1B,CAAC"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { createContainerQueryBuilder } from "../containerQueries/helpers";
|
|
2
|
-
import { createContainerQueryValidation } from "../containerQueries/validation";
|
|
3
|
-
import { createEmitCoreFeatures, } from "../containerQueries/containerQueries";
|
|
4
|
-
import { emitAspectRatioFeatures, emitBlockSizeFeatures, emitCustomFeatures, emitInlineSizeFeatures, emitStyleFeatures, } from "../containerQueries/modules";
|
|
5
|
-
import { createContainerQueryFactory, } from "../containerQueries/factory";
|
|
6
|
-
import { containerQueryOutputVanillaExtract } from "../libraryHelpers/vanilla-extract";
|
|
7
|
-
export const createContainerQueriesApi = (core) => {
|
|
8
|
-
const validation = createContainerQueryValidation({
|
|
9
|
-
assertCondition: core.assertCondition,
|
|
10
|
-
assertMatchingUnits: core.assertMatchingUnits,
|
|
11
|
-
});
|
|
12
|
-
const emitCoreFeatures = createEmitCoreFeatures(validation);
|
|
13
|
-
const emitBaseFeatures = (props, helpers) => {
|
|
14
|
-
emitCoreFeatures(props, helpers);
|
|
15
|
-
emitAspectRatioFeatures(props, helpers);
|
|
16
|
-
emitBlockSizeFeatures(props, helpers);
|
|
17
|
-
emitInlineSizeFeatures(props, helpers);
|
|
18
|
-
emitStyleFeatures(props, helpers);
|
|
19
|
-
emitCustomFeatures(props, helpers);
|
|
20
|
-
};
|
|
21
|
-
const buildContainerQueryString = createContainerQueryBuilder({
|
|
22
|
-
emitBase: emitBaseFeatures,
|
|
23
|
-
});
|
|
24
|
-
const makeContainerQueryStyle = (queries) => (stylesByQuery) => {
|
|
25
|
-
const result = {};
|
|
26
|
-
Object.keys(stylesByQuery).forEach((key) => {
|
|
27
|
-
const styles = stylesByQuery[key];
|
|
28
|
-
const props = queries[key];
|
|
29
|
-
if (!styles || !props)
|
|
30
|
-
return;
|
|
31
|
-
result[buildContainerQueryString(props)] = styles;
|
|
32
|
-
});
|
|
33
|
-
const containerQuery = {
|
|
34
|
-
"@container": result,
|
|
35
|
-
};
|
|
36
|
-
return containerQuery;
|
|
37
|
-
};
|
|
38
|
-
const containerQueryFactory = createContainerQueryFactory();
|
|
39
|
-
return {
|
|
40
|
-
buildContainerQueryString,
|
|
41
|
-
makeContainerQueryStyle,
|
|
42
|
-
containerQueryFactory,
|
|
43
|
-
emitCoreFeatures,
|
|
44
|
-
emitAspectRatioFeatures,
|
|
45
|
-
emitBlockSizeFeatures,
|
|
46
|
-
emitInlineSizeFeatures,
|
|
47
|
-
emitStyleFeatures,
|
|
48
|
-
emitCustomFeatures,
|
|
49
|
-
containerQueryOutputVanillaExtract,
|
|
50
|
-
createContainerQueryBuilder,
|
|
51
|
-
};
|
|
52
|
-
};
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { CoreApi } from './createCoreApi';
|
|
2
|
-
import type { ComplexStyleRule, StyleRule } from '../mediaQueries/types';
|
|
3
|
-
import { type IMediaQueries, type IMediaQueryProps, type IMediaQueryStyles } from '../mediaQueries/mediaQueries';
|
|
4
|
-
import { type IMediaQueryCustomFeatures, type IMediaQueryDimensions, type IMediaQueryDisplay, type IMediaQueryEnvironment, type IMediaQueryInteraction, type IMediaQueryPreferences } from '../mediaQueries/modules';
|
|
5
|
-
import { type IMediaQueryResolutionRange } from '../mediaQueries/modules/resolution';
|
|
6
|
-
import { type MediaQueryFactoryConfig } from '../mediaQueries/factory';
|
|
7
|
-
import type { MediaQueryBuilderHelpers } from '../mediaQueries/helpers';
|
|
8
|
-
import type { MediaQueryModulesList } from '../mediaQueries/moduleRegistry';
|
|
9
|
-
type MediaQueriesCore = Pick<CoreApi, 'assertCondition' | 'assertMatchingUnits'>;
|
|
10
|
-
export declare const createMediaQueriesApi: (core: MediaQueriesCore) => {
|
|
11
|
-
readonly buildMediaQueryString: (config: IMediaQueryProps) => string;
|
|
12
|
-
readonly makeMediaQueryStyle: <T extends IMediaQueries>(queries: T) => (stylesByQuery: IMediaQueryStyles<T>) => ComplexStyleRule;
|
|
13
|
-
readonly mediaQueryFactory: <TModules extends MediaQueryModulesList | undefined, TQueries extends Record<string, TModules extends MediaQueryModulesList ? (import("../mediaQueries/moduleRegistry").MediaQueryModulePropsMap[TModules[number]] extends infer T ? T extends import("../mediaQueries/moduleRegistry").MediaQueryModulePropsMap[TModules[number]] ? T extends unknown ? (value: T) => void : never : never : never) extends (value: infer R) => void ? R : never : IMediaQueryProps>, TOutput = ComplexStyleRule>(options: {
|
|
14
|
-
queries: TQueries;
|
|
15
|
-
config: MediaQueryFactoryConfig<TModules, TOutput>;
|
|
16
|
-
}) => (stylesByQuery: Partial<Record<keyof TQueries, StyleRule>>) => TOutput;
|
|
17
|
-
readonly emitCoreFeatures: (props: import("../mediaQueries/mediaQueries").IMediaQueryCore, helpers: MediaQueryBuilderHelpers) => void;
|
|
18
|
-
readonly emitDimensionsFeatures: (props: IMediaQueryDimensions, helpers: MediaQueryBuilderHelpers, validate?: import("../mediaQueries/modules").MediaQueryDimensionsValidator) => void;
|
|
19
|
-
readonly emitResolutionFeatures: (props: IMediaQueryResolutionRange, helpers: MediaQueryBuilderHelpers, validate?: import("../mediaQueries/modules").MediaQueryResolutionValidator) => void;
|
|
20
|
-
readonly emitInteractionFeatures: (props: IMediaQueryInteraction, helpers: MediaQueryBuilderHelpers, validate?: import("../mediaQueries/modules").MediaQueryInteractionValidator) => void;
|
|
21
|
-
readonly emitPreferencesFeatures: (props: IMediaQueryPreferences, helpers: MediaQueryBuilderHelpers, validate?: import("../mediaQueries/modules").MediaQueryPreferencesValidator) => void;
|
|
22
|
-
readonly emitDisplayFeatures: (props: IMediaQueryDisplay, helpers: MediaQueryBuilderHelpers, validate?: import("../mediaQueries/modules").MediaQueryDisplayValidator) => void;
|
|
23
|
-
readonly emitEnvironmentFeatures: (props: IMediaQueryEnvironment, helpers: MediaQueryBuilderHelpers, validate?: import("../mediaQueries/modules").MediaQueryEnvironmentValidator) => void;
|
|
24
|
-
readonly emitCustomFeatures: (props: IMediaQueryCustomFeatures, helpers: MediaQueryBuilderHelpers, validate?: import("../mediaQueries/modules").MediaQueryCustomFeaturesValidator) => void;
|
|
25
|
-
readonly mediaQueryOutputVanillaExtract: <TSelectorMap extends Record<string, unknown> = import("../mediaQueries/types").SelectorMap>(media: StyleRule) => TSelectorMap;
|
|
26
|
-
readonly createMediaQueryBuilder: <TConfig>(options: {
|
|
27
|
-
emitBase: import("../mediaQueries/helpers").MediaQueryExtensionHandler<TConfig>;
|
|
28
|
-
emitExtensions?: import("../mediaQueries/helpers").MediaQueryExtensionHandler<TConfig> | undefined;
|
|
29
|
-
resolveType?: ((config: TConfig) => "all" | "print" | "screen" | undefined) | undefined;
|
|
30
|
-
config?: import("../mediaQueries/helpers").MediaQueryBuilderConfig;
|
|
31
|
-
}) => (config: TConfig) => string;
|
|
32
|
-
};
|
|
33
|
-
export type MediaQueriesApi = ReturnType<typeof createMediaQueriesApi>;
|
|
34
|
-
export type { IMediaQueries, IMediaQueryProps, IMediaQueryStyles, IMediaQueryCustomFeatures, IMediaQueryDimensions, IMediaQueryResolutionRange, IMediaQueryInteraction, IMediaQueryPreferences, IMediaQueryDisplay, IMediaQueryEnvironment, MediaQueryFactoryConfig, MediaQueryModulesList, };
|
|
35
|
-
//# sourceMappingURL=createMediaQueriesApi.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"createMediaQueriesApi.d.ts","sourceRoot":"","sources":["../../../src/internal/createMediaQueriesApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIzE,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAOL,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAEL,KAAK,uBAAuB,EAE7B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAE5E,KAAK,gBAAgB,GAAG,IAAI,CAC1B,OAAO,EACP,iBAAiB,GAAG,qBAAqB,CAC1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,MAAM,gBAAgB;;mCAkCvD,CAAC,SAAS,aAAa,WAAW,CAAC,MACnC,eAAe,iBAAiB,CAAC,CAAC,CAAC,KAAG,gBAAgB;;;;WA+DssG,yDAA2C;;;;;;;;;;;;;;;WA1DzxG,eAAe;CAyCjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACvE,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,GACtB,CAAC"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { createMediaQueryBuilder } from '../mediaQueries/helpers';
|
|
2
|
-
import { createMediaQueryValidation, } from '../mediaQueries/validation';
|
|
3
|
-
import { createEmitCoreFeatures, } from '../mediaQueries/mediaQueries';
|
|
4
|
-
import { createEmitDimensionsFeatures, emitDisplayFeatures, emitEnvironmentFeatures, emitInteractionFeatures, emitPreferencesFeatures, emitCustomFeatures, } from '../mediaQueries/modules';
|
|
5
|
-
import { createEmitResolutionFeatures, } from '../mediaQueries/modules/resolution';
|
|
6
|
-
import { createMediaQueryFactory, } from '../mediaQueries/factory';
|
|
7
|
-
import { mediaQueryOutputVanillaExtract } from '../mediaQueries/libraryHelpers/vanilla-extract';
|
|
8
|
-
export const createMediaQueriesApi = (core) => {
|
|
9
|
-
const validation = createMediaQueryValidation({
|
|
10
|
-
assertCondition: core.assertCondition,
|
|
11
|
-
assertMatchingUnits: core.assertMatchingUnits,
|
|
12
|
-
});
|
|
13
|
-
const emitCoreFeatures = createEmitCoreFeatures(validation);
|
|
14
|
-
const emitDimensionsFeatures = createEmitDimensionsFeatures(validation);
|
|
15
|
-
const emitResolutionFeatures = createEmitResolutionFeatures(validation);
|
|
16
|
-
const emitBaseFeatures = (props, helpers) => {
|
|
17
|
-
emitCoreFeatures(props, helpers);
|
|
18
|
-
emitDimensionsFeatures(props, helpers);
|
|
19
|
-
emitResolutionFeatures(props, helpers);
|
|
20
|
-
emitInteractionFeatures(props, helpers);
|
|
21
|
-
emitPreferencesFeatures(props, helpers);
|
|
22
|
-
emitDisplayFeatures(props, helpers);
|
|
23
|
-
emitEnvironmentFeatures(props, helpers);
|
|
24
|
-
emitCustomFeatures(props, helpers);
|
|
25
|
-
};
|
|
26
|
-
const buildMediaQueryString = createMediaQueryBuilder({
|
|
27
|
-
emitBase: emitBaseFeatures,
|
|
28
|
-
resolveType: (props) => props.type,
|
|
29
|
-
});
|
|
30
|
-
const makeMediaQueryStyle = (queries) => (stylesByQuery) => {
|
|
31
|
-
const result = {};
|
|
32
|
-
Object.keys(stylesByQuery).forEach((key) => {
|
|
33
|
-
const styles = stylesByQuery[key];
|
|
34
|
-
const props = queries[key];
|
|
35
|
-
if (!styles || !props)
|
|
36
|
-
return;
|
|
37
|
-
result[buildMediaQueryString(props)] = styles;
|
|
38
|
-
});
|
|
39
|
-
const mediaQuery = {
|
|
40
|
-
'@media': result,
|
|
41
|
-
};
|
|
42
|
-
return mediaQuery;
|
|
43
|
-
};
|
|
44
|
-
const moduleEmitters = {
|
|
45
|
-
core: emitCoreFeatures,
|
|
46
|
-
dimensions: emitDimensionsFeatures,
|
|
47
|
-
resolution: emitResolutionFeatures,
|
|
48
|
-
interaction: emitInteractionFeatures,
|
|
49
|
-
preferences: emitPreferencesFeatures,
|
|
50
|
-
display: emitDisplayFeatures,
|
|
51
|
-
environment: emitEnvironmentFeatures,
|
|
52
|
-
custom: emitCustomFeatures,
|
|
53
|
-
};
|
|
54
|
-
const mediaQueryFactory = createMediaQueryFactory(moduleEmitters);
|
|
55
|
-
return {
|
|
56
|
-
buildMediaQueryString,
|
|
57
|
-
makeMediaQueryStyle,
|
|
58
|
-
mediaQueryFactory,
|
|
59
|
-
emitCoreFeatures,
|
|
60
|
-
emitDimensionsFeatures,
|
|
61
|
-
emitResolutionFeatures,
|
|
62
|
-
emitInteractionFeatures,
|
|
63
|
-
emitPreferencesFeatures,
|
|
64
|
-
emitDisplayFeatures,
|
|
65
|
-
emitEnvironmentFeatures,
|
|
66
|
-
emitCustomFeatures,
|
|
67
|
-
mediaQueryOutputVanillaExtract,
|
|
68
|
-
createMediaQueryBuilder,
|
|
69
|
-
};
|
|
70
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"normalizeToArray.d.ts","sourceRoot":"","sources":["../../../src/internal/normalizeToArray.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAChC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,KAChC,CAAC,EAGH,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { ComplexStyleRule } from "../mediaQueries/types";
|
|
2
|
-
export declare const mediaQueryOutputVanillaExtract: (media: ComplexStyleRule) => Record<string, unknown>;
|
|
3
|
-
export declare const containerQueryOutputVanillaExtract: (container: ComplexStyleRule) => Record<string, unknown>;
|
|
4
|
-
//# sourceMappingURL=vanilla-extract.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"vanilla-extract.d.ts","sourceRoot":"","sources":["../../../src/libraryHelpers/vanilla-extract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,eAAO,MAAM,8BAA8B,GACzC,OAAO,gBAAgB,KACtB,MAAM,CAAC,MAAM,EAAE,OAAO,CAEvB,CAAC;AAEH,eAAO,MAAM,kCAAkC,GAC7C,WAAW,gBAAgB,KAC1B,MAAM,CAAC,MAAM,EAAE,OAAO,CAEvB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/logicalOperators/index.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
// export type ContentQueryVariable =
|
|
3
|
-
// ContainerQueryModuleKeysMap[keyof ContainerQueryModuleKeysMap];
|
|
4
|
-
// export type ContentQueryComparisonValue = IMeasurement | number | string;
|
|
5
|
-
// export type Comparison<
|
|
6
|
-
// Variable = ContentQueryVariable,
|
|
7
|
-
// Value = ContentQueryComparisonValue
|
|
8
|
-
// > = {
|
|
9
|
-
// variable: Variable;
|
|
10
|
-
// operator: IComparisonOperator;
|
|
11
|
-
// value: Value;
|
|
12
|
-
// };
|
|
13
|
-
// export type ComparisonValue<Value = ContentQueryComparisonValue> = {
|
|
14
|
-
// operator: IComparisonOperator;
|
|
15
|
-
// value: Value;
|
|
16
|
-
// readonly __comparisonBrand: unique symbol;
|
|
17
|
-
// };
|