ember-container-query 5.0.9 → 5.0.11

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.
@@ -1,13 +1,14 @@
1
1
  import type { Metadata } from '../modifiers/container-query.ts';
2
- declare const AspectRatioHelper: import("@ember/component/helper").FunctionBasedHelper<{
2
+ interface AspectRatioHelperSignature {
3
3
  Args: {
4
- Positional: [];
5
4
  Named: {
6
- max?: number | undefined;
7
- min?: number | undefined;
5
+ max?: number;
6
+ min?: number;
8
7
  };
8
+ Positional: [];
9
9
  };
10
10
  Return: Metadata;
11
- }>;
11
+ }
12
+ declare const AspectRatioHelper: import("@ember/component/helper").FunctionBasedHelper<AspectRatioHelperSignature>;
12
13
  export default AspectRatioHelper;
13
14
  //# sourceMappingURL=aspect-ratio.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aspect-ratio.d.ts","sourceRoot":"","sources":["../../src/helpers/aspect-ratio.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAahE,QAAA,MAAM,iBAAiB;;;;;;;;;EAQtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"aspect-ratio.d.ts","sourceRoot":"","sources":["../../src/helpers/aspect-ratio.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEhE,UAAU,0BAA0B;IAClC,IAAI,EAAE;QACJ,KAAK,EAAE;YACL,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;QACF,UAAU,EAAE,EAAE,CAAC;KAChB,CAAC;IACF,MAAM,EAAE,QAAQ,CAAC;CAClB;AAED,QAAA,MAAM,iBAAiB,mFAQtB,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1,13 +1,14 @@
1
1
  import type { Metadata } from '../modifiers/container-query.ts';
2
- declare const HeightHelper: import("@ember/component/helper").FunctionBasedHelper<{
2
+ interface HeightHelperSignature {
3
3
  Args: {
4
- Positional: [];
5
4
  Named: {
6
- max?: number | undefined;
7
- min?: number | undefined;
5
+ max?: number;
6
+ min?: number;
8
7
  };
8
+ Positional: [];
9
9
  };
10
10
  Return: Metadata;
11
- }>;
11
+ }
12
+ declare const HeightHelper: import("@ember/component/helper").FunctionBasedHelper<HeightHelperSignature>;
12
13
  export default HeightHelper;
13
14
  //# sourceMappingURL=height.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"height.d.ts","sourceRoot":"","sources":["../../src/helpers/height.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAahE,QAAA,MAAM,YAAY;;;;;;;;;EAMhB,CAAC;AAEH,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"height.d.ts","sourceRoot":"","sources":["../../src/helpers/height.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEhE,UAAU,qBAAqB;IAC7B,IAAI,EAAE;QACJ,KAAK,EAAE;YACL,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;QACF,UAAU,EAAE,EAAE,CAAC;KAChB,CAAC;IACF,MAAM,EAAE,QAAQ,CAAC;CAClB;AAED,QAAA,MAAM,YAAY,8EAMhB,CAAC;AAEH,eAAe,YAAY,CAAC"}
@@ -1,13 +1,14 @@
1
1
  import type { Metadata } from '../modifiers/container-query.ts';
2
- declare const WidthHelper: import("@ember/component/helper").FunctionBasedHelper<{
2
+ interface WidthHelperSignature {
3
3
  Args: {
4
- Positional: [];
5
4
  Named: {
6
- max?: number | undefined;
7
- min?: number | undefined;
5
+ max?: number;
6
+ min?: number;
8
7
  };
8
+ Positional: [];
9
9
  };
10
10
  Return: Metadata;
11
- }>;
11
+ }
12
+ declare const WidthHelper: import("@ember/component/helper").FunctionBasedHelper<WidthHelperSignature>;
12
13
  export default WidthHelper;
13
14
  //# sourceMappingURL=width.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"width.d.ts","sourceRoot":"","sources":["../../src/helpers/width.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAahE,QAAA,MAAM,WAAW;;;;;;;;;EAMf,CAAC;AAEH,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"width.d.ts","sourceRoot":"","sources":["../../src/helpers/width.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAEhE,UAAU,oBAAoB;IAC5B,IAAI,EAAE;QACJ,KAAK,EAAE;YACL,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;QACF,UAAU,EAAE,EAAE,CAAC;KAChB,CAAC;IACF,MAAM,EAAE,QAAQ,CAAC;CAClB;AAED,QAAA,MAAM,WAAW,6EAMf,CAAC;AAEH,eAAe,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"container-query.js","sources":["../../src/modifiers/container-query.ts"],"sourcesContent":["import { registerDestructor } from '@ember/destroyable';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\nimport { debounce as _debounce } from '@ember/runloop';\nimport { inject as service } from '@ember/service';\nimport type { ArgsFor, NamedArgs, PositionalArgs } from 'ember-modifier';\nimport Modifier from 'ember-modifier';\n\ntype IndexSignatureParameter = string | number | symbol;\ntype ObjectEntry<T> = [keyof T, T[keyof T]];\ntype ObjectEntries<T> = ObjectEntry<T>[];\n\ntype Dimensions = {\n aspectRatio: number;\n height: number;\n width: number;\n};\n\ntype Metadata = {\n dimension: keyof Dimensions;\n max: number;\n min: number;\n};\n\ntype Features<T extends IndexSignatureParameter> = Record<T, Metadata>;\n\ntype QueryResults<T extends IndexSignatureParameter> = Record<T, boolean>;\n\ninterface ContainerQueryModifierSignature<T extends IndexSignatureParameter> {\n Args: {\n Named: {\n dataAttributePrefix?: string;\n debounce?: number;\n features?: Features<T>;\n onQuery?: ({\n dimensions,\n queryResults,\n }: {\n dimensions: Dimensions;\n queryResults: QueryResults<T>;\n }) => void;\n };\n Positional: [];\n };\n Element: Element;\n}\n\nexport default class ContainerQueryModifier<\n T extends IndexSignatureParameter,\n> extends Modifier<ContainerQueryModifierSignature<T>> {\n @service private declare readonly resizeObserver;\n\n dimensions!: Dimensions;\n queryResults!: QueryResults<T>;\n\n private _dataAttributes: string[] = [];\n private _element?: Element;\n private _named!: NamedArgs<ContainerQueryModifierSignature<T>>;\n\n get dataAttributePrefix(): string {\n return this._named.dataAttributePrefix ?? 'container-query';\n }\n\n get debounce(): number {\n return this._named.debounce ?? 0;\n }\n\n get features(): Features<T> {\n return this._named.features ?? ({} as Features<T>);\n }\n\n constructor(owner: Owner, args: ArgsFor<ContainerQueryModifierSignature<T>>) {\n super(owner, args);\n\n registerDestructor(this, () => {\n this.resizeObserver.unobserve(this._element, this.onResize);\n });\n }\n\n modify(\n element: Element,\n _positional: PositionalArgs<ContainerQueryModifierSignature<T>>,\n named: NamedArgs<ContainerQueryModifierSignature<T>>,\n ): void {\n this._named = named;\n\n this.registerResizeObserver(element);\n this.queryContainer(element);\n }\n\n @action private onResize(resizeObserverEntry: ResizeObserverEntry): void {\n const element = resizeObserverEntry.target;\n\n if (this.debounce > 0) {\n // eslint-disable-next-line ember/no-runloop\n _debounce(this, this.queryContainer, element, this.debounce);\n return;\n }\n\n this.queryContainer(element);\n }\n\n private registerResizeObserver(element: Element): void {\n this.resizeObserver.unobserve(this._element, this.onResize);\n\n this._element = element;\n this.resizeObserver.observe(this._element, this.onResize);\n }\n\n private queryContainer(element: Element): void {\n this.measureDimensions(element);\n this.evaluateQueries();\n this.resetDataAttributes(element);\n this.setDataAttributes(element);\n\n this._named.onQuery?.({\n dimensions: this.dimensions,\n queryResults: this.queryResults,\n });\n }\n\n private measureDimensions(element: Element): void {\n const height = element.clientHeight;\n const width = element.clientWidth;\n\n this.dimensions = {\n aspectRatio: width / height,\n height,\n width,\n };\n }\n\n private evaluateQueries(): void {\n const queryResults = {} as QueryResults<T>;\n\n for (const [featureName, metadata] of Object.entries(\n this.features,\n ) as ObjectEntries<Features<T>>) {\n const { dimension, min, max } = metadata;\n const value = this.dimensions[dimension];\n\n queryResults[featureName] = min <= value && value < max;\n }\n\n this.queryResults = queryResults;\n }\n\n private resetDataAttributes(element: Element): void {\n this._dataAttributes.forEach((dataAttribute) => {\n element.removeAttribute(dataAttribute);\n });\n\n this._dataAttributes = [];\n }\n\n private setDataAttributes(element: Element): void {\n const prefix = this.dataAttributePrefix;\n\n for (const [featureName, meetsFeature] of Object.entries(\n this.queryResults,\n ) as ObjectEntries<QueryResults<T>>) {\n if (!meetsFeature) {\n continue;\n }\n\n const dataAttribute = prefix\n ? `data-${prefix}-${String(featureName)}`\n : `data-${String(featureName)}`;\n\n element.setAttribute(dataAttribute, '');\n\n this._dataAttributes.push(dataAttribute);\n }\n }\n}\n\nexport type {\n Dimensions,\n Features,\n IndexSignatureParameter,\n Metadata,\n QueryResults,\n};\n"],"names":["ContainerQueryModifier","Modifier","g","prototype","service","i","void 0","dimensions","queryResults","_dataAttributes","_element","_named","dataAttributePrefix","debounce","features","constructor","owner","args","registerDestructor","resizeObserver","unobserve","onResize","modify","element","_positional","named","registerResizeObserver","queryContainer","resizeObserverEntry","target","_debounce","n","action","observe","measureDimensions","evaluateQueries","resetDataAttributes","setDataAttributes","onQuery","height","clientHeight","width","clientWidth","aspectRatio","featureName","metadata","Object","entries","dimension","min","max","value","forEach","dataAttribute","removeAttribute","prefix","meetsFeature","String","setAttribute","push"],"mappings":"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"}
1
+ {"version":3,"file":"container-query.js","sources":["../../src/modifiers/container-query.ts"],"sourcesContent":["import { registerDestructor } from '@ember/destroyable';\nimport { action } from '@ember/object';\nimport type Owner from '@ember/owner';\nimport { debounce as _debounce } from '@ember/runloop';\nimport { inject as service } from '@ember/service';\nimport type { ArgsFor, NamedArgs, PositionalArgs } from 'ember-modifier';\nimport Modifier from 'ember-modifier';\n\ntype IndexSignatureParameter = string | number | symbol;\ntype ObjectEntry<T> = [keyof T, T[keyof T]];\ntype ObjectEntries<T> = ObjectEntry<T>[];\n\ntype Dimensions = {\n aspectRatio: number;\n height: number;\n width: number;\n};\n\ntype Metadata = {\n dimension: keyof Dimensions;\n max: number;\n min: number;\n};\n\ntype Features<T extends IndexSignatureParameter> = Record<T, Metadata>;\n\ntype QueryResults<T extends IndexSignatureParameter> = Record<T, boolean>;\n\ninterface ContainerQueryModifierSignature<T extends IndexSignatureParameter> {\n Args: {\n Named: {\n dataAttributePrefix?: string;\n debounce?: number;\n features?: Features<T>;\n onQuery?: ({\n dimensions,\n queryResults,\n }: {\n dimensions: Dimensions;\n queryResults: QueryResults<T>;\n }) => void;\n };\n Positional: [];\n };\n Element: Element;\n}\n\nexport default class ContainerQueryModifier<\n T extends IndexSignatureParameter,\n> extends Modifier<ContainerQueryModifierSignature<T>> {\n @service private declare readonly resizeObserver;\n\n dimensions!: Dimensions;\n queryResults!: QueryResults<T>;\n\n private _dataAttributes: string[] = [];\n private _element?: Element;\n private _named!: NamedArgs<ContainerQueryModifierSignature<T>>;\n\n get dataAttributePrefix(): string {\n return this._named.dataAttributePrefix ?? 'container-query';\n }\n\n get debounce(): number {\n return this._named.debounce ?? 0;\n }\n\n get features(): Features<T> {\n return this._named.features ?? ({} as Features<T>);\n }\n\n constructor(owner: Owner, args: ArgsFor<ContainerQueryModifierSignature<T>>) {\n super(owner, args);\n\n registerDestructor(this, () => {\n this.resizeObserver.unobserve(this._element, this.onResize);\n });\n }\n\n modify(\n element: Element,\n _positional: PositionalArgs<ContainerQueryModifierSignature<T>>,\n named: NamedArgs<ContainerQueryModifierSignature<T>>,\n ): void {\n this._named = named;\n\n this.registerResizeObserver(element);\n this.queryContainer(element);\n }\n\n @action private onResize(resizeObserverEntry: ResizeObserverEntry): void {\n const element = resizeObserverEntry.target;\n\n if (this.debounce > 0) {\n // eslint-disable-next-line ember/no-runloop\n _debounce(this, this.queryContainer, element, this.debounce);\n return;\n }\n\n this.queryContainer(element);\n }\n\n private registerResizeObserver(element: Element): void {\n this.resizeObserver.unobserve(this._element, this.onResize);\n\n this._element = element;\n this.resizeObserver.observe(this._element, this.onResize);\n }\n\n private queryContainer(element: Element): void {\n this.measureDimensions(element);\n this.evaluateQueries();\n this.resetDataAttributes(element);\n this.setDataAttributes(element);\n\n this._named.onQuery?.({\n dimensions: this.dimensions,\n queryResults: this.queryResults,\n });\n }\n\n private measureDimensions(element: Element): void {\n const height = element.clientHeight;\n const width = element.clientWidth;\n\n this.dimensions = {\n aspectRatio: width / height,\n height,\n width,\n };\n }\n\n private evaluateQueries(): void {\n const queryResults = {} as QueryResults<T>;\n\n for (const [featureName, metadata] of Object.entries(\n this.features,\n ) as ObjectEntries<Features<T>>) {\n const { dimension, min, max } = metadata;\n const value = this.dimensions[dimension];\n\n queryResults[featureName] = min <= value && value < max;\n }\n\n this.queryResults = queryResults;\n }\n\n private resetDataAttributes(element: Element): void {\n this._dataAttributes.forEach((dataAttribute) => {\n element.removeAttribute(dataAttribute);\n });\n\n this._dataAttributes = [];\n }\n\n private setDataAttributes(element: Element): void {\n const prefix = this.dataAttributePrefix;\n\n for (const [featureName, meetsFeature] of Object.entries(\n this.queryResults,\n ) as ObjectEntries<QueryResults<T>>) {\n if (!meetsFeature) {\n continue;\n }\n\n const dataAttribute = prefix\n ? `data-${prefix}-${String(featureName)}`\n : `data-${String(featureName)}`;\n\n element.setAttribute(dataAttribute, '');\n\n this._dataAttributes.push(dataAttribute);\n }\n }\n}\n\nexport type {\n Dimensions,\n Features,\n IndexSignatureParameter,\n Metadata,\n QueryResults,\n};\n"],"names":["ContainerQueryModifier","Modifier","g","prototype","service","i","void 0","dimensions","queryResults","_dataAttributes","_element","_named","dataAttributePrefix","debounce","features","constructor","owner","args","registerDestructor","resizeObserver","unobserve","onResize","modify","element","_positional","named","registerResizeObserver","queryContainer","resizeObserverEntry","target","_debounce","n","action","observe","measureDimensions","evaluateQueries","resetDataAttributes","setDataAttributes","onQuery","height","clientHeight","width","clientWidth","aspectRatio","featureName","metadata","Object","entries","dimension","min","max","value","forEach","dataAttribute","removeAttribute","prefix","meetsFeature","String","setAttribute","push"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ember-container-query",
3
- "version": "5.0.9",
3
+ "version": "5.0.11",
4
4
  "description": "Make container queries that harness the power of Ember",
5
5
  "keywords": [
6
6
  "container-queries",
@@ -47,35 +47,18 @@
47
47
  "declarations",
48
48
  "dist"
49
49
  ],
50
- "scripts": {
51
- "build": "concurrently \"npm:build:*\" --names \"build:\"",
52
- "build:js": "rollup --config",
53
- "build:types": "glint --declaration",
54
- "lint": "concurrently \"npm:lint:*(!fix)\" --names \"lint:\"",
55
- "lint:fix": "concurrently \"npm:lint:*:fix\" --names \"fix:\"",
56
- "lint:hbs": "ember-template-lint .",
57
- "lint:hbs:fix": "ember-template-lint . --fix",
58
- "lint:js": "eslint . --cache",
59
- "lint:js:fix": "eslint . --fix",
60
- "lint:types": "glint",
61
- "prepack": "rollup --config",
62
- "start": "concurrently \"npm:start:*\" --names \"start:\"",
63
- "start:js": "rollup --config --watch --no-watch.clearScreen",
64
- "start:types": "glint --declaration --watch",
65
- "test": "echo 'A v2 addon does not have tests, run tests in test-app'"
66
- },
67
50
  "dependencies": {
68
- "@embroider/addon-shim": "^1.8.8",
51
+ "@embroider/addon-shim": "^1.8.9",
69
52
  "decorator-transforms": "^2.0.0",
70
53
  "ember-element-helper": "^0.8.6",
71
- "ember-modifier": "^3.2.7 || ^4.1.0",
54
+ "ember-modifier": "^3.2.7 || ^4.2.0",
72
55
  "ember-resize-observer-service": "^1.1.0"
73
56
  },
74
57
  "devDependencies": {
75
- "@babel/core": "^7.24.5",
76
- "@babel/plugin-transform-typescript": "^7.24.5",
77
- "@babel/runtime": "^7.24.5",
78
- "@embroider/addon-dev": "^4.3.1",
58
+ "@babel/core": "^7.25.2",
59
+ "@babel/plugin-transform-typescript": "^7.25.2",
60
+ "@babel/runtime": "^7.25.0",
61
+ "@embroider/addon-dev": "^5.0.0",
79
62
  "@glimmer/component": "^1.1.2",
80
63
  "@glimmer/tracking": "^1.1.2",
81
64
  "@glint/core": "^1.4.0",
@@ -83,24 +66,19 @@
83
66
  "@glint/environment-ember-template-imports": "^1.4.0",
84
67
  "@glint/template": "^1.4.0",
85
68
  "@rollup/plugin-babel": "^6.0.4",
86
- "@shared-configs/ember-template-lint": "workspace:*",
87
- "@shared-configs/eslint-config-ember": "workspace:*",
88
- "@shared-configs/prettier": "workspace:*",
89
- "@shared-configs/typescript": "workspace:*",
90
- "@types/ember__component": "^4.0.22",
91
- "@types/ember__destroyable": "^4.0.5",
92
- "@types/ember__object": "^4.0.12",
93
- "@types/ember__owner": "^4.0.9",
94
- "@types/ember__runloop": "^4.0.10",
95
- "@types/ember__service": "^4.0.9",
96
69
  "babel-plugin-ember-template-compilation": "^2.2.5",
97
70
  "concurrently": "^8.2.2",
71
+ "ember-source": "^5.10.2",
98
72
  "ember-template-lint": "^6.0.0",
99
73
  "eslint": "^8.57.0",
100
- "prettier": "^3.2.5",
101
- "rollup": "^4.17.2",
74
+ "prettier": "^3.3.3",
75
+ "rollup": "^4.20.0",
102
76
  "rollup-plugin-copy": "^3.5.0",
103
- "typescript": "^5.4.5"
77
+ "typescript": "^5.5.4",
78
+ "@shared-configs/ember-template-lint": "0.0.0",
79
+ "@shared-configs/prettier": "0.0.0",
80
+ "@shared-configs/eslint-config-ember": "0.0.0",
81
+ "@shared-configs/typescript": "0.0.0"
104
82
  },
105
83
  "engines": {
106
84
  "node": "18.* || >= 20"
@@ -119,5 +97,21 @@
119
97
  "main": "addon-main.cjs",
120
98
  "type": "addon",
121
99
  "version": 2
100
+ },
101
+ "scripts": {
102
+ "build": "concurrently 'pnpm:build:*' --names 'build:'",
103
+ "build:js": "rollup --config",
104
+ "build:types": "glint --declaration",
105
+ "lint": "concurrently 'pnpm:lint:*(!fix)' --names 'lint:'",
106
+ "lint:fix": "concurrently 'pnpm:lint:*:fix' --names 'fix:'",
107
+ "lint:hbs": "ember-template-lint .",
108
+ "lint:hbs:fix": "ember-template-lint . --fix",
109
+ "lint:js": "eslint . --cache",
110
+ "lint:js:fix": "eslint . --fix",
111
+ "lint:types": "glint",
112
+ "start": "concurrently 'pnpm:start:*' --names 'start:'",
113
+ "start:js": "rollup --config --watch --no-watch.clearScreen",
114
+ "start:types": "glint --declaration --watch",
115
+ "test": "echo 'A v2 addon does not have tests, run tests in test-app'"
122
116
  }
123
- }
117
+ }