@ngxsmk/cdk 1.3.1 → 1.3.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.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Low-level, zoneless-friendly Angular behaviors that power NGXSMK components. Each behavior is its own secondary entry point, so you only bundle what you import.
4
4
 
5
- Part of the [NGXSMK UI kit](https://github.com/NGXSMK/ngxsmk-ui-kit).
5
+ Part of the [NGXSMK UI kit](https://ngxsmk.github.io/ngxsmk-ui-kit).
6
6
 
7
7
  ## Compatibility
8
8
 
@@ -2,9 +2,12 @@ import * as axe from 'axe-core';
2
2
  /**
3
3
  * Runs axe-core analysis on the provided HTML element and throws an error if any accessibility
4
4
  * violations are detected.
5
+ *
6
+ * Pass axe `options` to tune the run — e.g. in jsdom-based tests disable the
7
+ * `color-contrast` rule, which requires a real rendering engine.
5
8
  */
6
- export async function expectNoA11yViolations(element) {
7
- const results = await axe.run(element);
9
+ export async function expectNoA11yViolations(element, options = {}) {
10
+ const results = await axe.run(element, options);
8
11
  if (results.violations.length > 0) {
9
12
  const formatted = results.violations
10
13
  .map((v) => `[${v.id}] ${v.help}\n - Help URL: ${v.helpUrl}\n - Nodes affected:\n${v.nodes
@@ -14,4 +17,4 @@ export async function expectNoA11yViolations(element) {
14
17
  throw new Error(`Accessibility violations detected:\n\n${formatted}`);
15
18
  }
16
19
  }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYTExeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay90ZXN0aW5nL2ExMXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFFaEM7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxzQkFBc0IsQ0FBQyxPQUFvQjtJQUMvRCxNQUFNLE9BQU8sR0FBRyxNQUFNLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkMsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUNsQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsVUFBVTthQUNqQyxHQUFHLENBQ0YsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNKLElBQUksQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsSUFBSSxtQkFBbUIsQ0FBQyxDQUFDLE9BQU8sMEJBQTBCLENBQUMsQ0FBQyxLQUFLO2FBQzdFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ2xCO2FBQ0EsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDeEUsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBheGUgZnJvbSAnYXhlLWNvcmUnO1xuXG4vKipcbiAqIFJ1bnMgYXhlLWNvcmUgYW5hbHlzaXMgb24gdGhlIHByb3ZpZGVkIEhUTUwgZWxlbWVudCBhbmQgdGhyb3dzIGFuIGVycm9yIGlmIGFueSBhY2Nlc3NpYmlsaXR5XG4gKiB2aW9sYXRpb25zIGFyZSBkZXRlY3RlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4cGVjdE5vQTExeVZpb2xhdGlvbnMoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IGF4ZS5ydW4oZWxlbWVudCk7XG4gIGlmIChyZXN1bHRzLnZpb2xhdGlvbnMubGVuZ3RoID4gMCkge1xuICAgIGNvbnN0IGZvcm1hdHRlZCA9IHJlc3VsdHMudmlvbGF0aW9uc1xuICAgICAgLm1hcChcbiAgICAgICAgKHYpID0+XG4gICAgICAgICAgYFske3YuaWR9XSAke3YuaGVscH1cXG4gIC0gSGVscCBVUkw6ICR7di5oZWxwVXJsfVxcbiAgLSBOb2RlcyBhZmZlY3RlZDpcXG4ke3Yubm9kZXNcbiAgICAgICAgICAgIC5tYXAoKG4pID0+IGAgICAgKiAke24uaHRtbH1gKVxuICAgICAgICAgICAgLmpvaW4oJ1xcbicpfWAsXG4gICAgICApXG4gICAgICAuam9pbignXFxuXFxuJyk7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBBY2Nlc3NpYmlsaXR5IHZpb2xhdGlvbnMgZGV0ZWN0ZWQ6XFxuXFxuJHtmb3JtYXR0ZWR9YCk7XG4gIH1cbn1cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYTExeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay90ZXN0aW5nL2ExMXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFFaEM7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxzQkFBc0IsQ0FDMUMsT0FBb0IsRUFDcEIsVUFBMEIsRUFBRTtJQUU1QixNQUFNLE9BQU8sR0FBRyxNQUFNLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hELElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDbEMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFVBQVU7YUFDakMsR0FBRyxDQUNGLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDSixJQUFJLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLElBQUksbUJBQW1CLENBQUMsQ0FBQyxPQUFPLDBCQUEwQixDQUFDLENBQUMsS0FBSzthQUM3RSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUNsQjthQUNBLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXhlIGZyb20gJ2F4ZS1jb3JlJztcblxuLyoqXG4gKiBSdW5zIGF4ZS1jb3JlIGFuYWx5c2lzIG9uIHRoZSBwcm92aWRlZCBIVE1MIGVsZW1lbnQgYW5kIHRocm93cyBhbiBlcnJvciBpZiBhbnkgYWNjZXNzaWJpbGl0eVxuICogdmlvbGF0aW9ucyBhcmUgZGV0ZWN0ZWQuXG4gKlxuICogUGFzcyBheGUgYG9wdGlvbnNgIHRvIHR1bmUgdGhlIHJ1biDigJQgZS5nLiBpbiBqc2RvbS1iYXNlZCB0ZXN0cyBkaXNhYmxlIHRoZVxuICogYGNvbG9yLWNvbnRyYXN0YCBydWxlLCB3aGljaCByZXF1aXJlcyBhIHJlYWwgcmVuZGVyaW5nIGVuZ2luZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4cGVjdE5vQTExeVZpb2xhdGlvbnMoXG4gIGVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICBvcHRpb25zOiBheGUuUnVuT3B0aW9ucyA9IHt9LFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlc3VsdHMgPSBhd2FpdCBheGUucnVuKGVsZW1lbnQsIG9wdGlvbnMpO1xuICBpZiAocmVzdWx0cy52aW9sYXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICBjb25zdCBmb3JtYXR0ZWQgPSByZXN1bHRzLnZpb2xhdGlvbnNcbiAgICAgIC5tYXAoXG4gICAgICAgICh2KSA9PlxuICAgICAgICAgIGBbJHt2LmlkfV0gJHt2LmhlbHB9XFxuICAtIEhlbHAgVVJMOiAke3YuaGVscFVybH1cXG4gIC0gTm9kZXMgYWZmZWN0ZWQ6XFxuJHt2Lm5vZGVzXG4gICAgICAgICAgICAubWFwKChuKSA9PiBgICAgICogJHtuLmh0bWx9YClcbiAgICAgICAgICAgIC5qb2luKCdcXG4nKX1gLFxuICAgICAgKVxuICAgICAgLmpvaW4oJ1xcblxcbicpO1xuICAgIHRocm93IG5ldyBFcnJvcihgQWNjZXNzaWJpbGl0eSB2aW9sYXRpb25zIGRldGVjdGVkOlxcblxcbiR7Zm9ybWF0dGVkfWApO1xuICB9XG59XG4iXX0=
@@ -3,9 +3,12 @@ import * as axe from 'axe-core';
3
3
  /**
4
4
  * Runs axe-core analysis on the provided HTML element and throws an error if any accessibility
5
5
  * violations are detected.
6
+ *
7
+ * Pass axe `options` to tune the run — e.g. in jsdom-based tests disable the
8
+ * `color-contrast` rule, which requires a real rendering engine.
6
9
  */
7
- async function expectNoA11yViolations(element) {
8
- const results = await axe.run(element);
10
+ async function expectNoA11yViolations(element, options = {}) {
11
+ const results = await axe.run(element, options);
9
12
  if (results.violations.length > 0) {
10
13
  const formatted = results.violations
11
14
  .map((v) => `[${v.id}] ${v.help}\n - Help URL: ${v.helpUrl}\n - Nodes affected:\n${v.nodes
@@ -1 +1 @@
1
- {"version":3,"file":"ngxsmk-cdk-testing.mjs","sources":["../../../../packages/cdk/testing/a11y.ts","../../../../packages/cdk/testing/ngxsmk-cdk-testing.ts"],"sourcesContent":["import * as axe from 'axe-core';\n\n/**\n * Runs axe-core analysis on the provided HTML element and throws an error if any accessibility\n * violations are detected.\n */\nexport async function expectNoA11yViolations(element: HTMLElement): Promise<void> {\n const results = await axe.run(element);\n if (results.violations.length > 0) {\n const formatted = results.violations\n .map(\n (v) =>\n `[${v.id}] ${v.help}\\n - Help URL: ${v.helpUrl}\\n - Nodes affected:\\n${v.nodes\n .map((n) => ` * ${n.html}`)\n .join('\\n')}`,\n )\n .join('\\n\\n');\n throw new Error(`Accessibility violations detected:\\n\\n${formatted}`);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAEA;;;AAGG;AACI,eAAe,sBAAsB,CAAC,OAAoB,EAAA;IAC/D,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;IACtC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AACjC,QAAA,MAAM,SAAS,GAAG,OAAO,CAAC;aACvB,GAAG,CACF,CAAC,CAAC,KACA,CAAA,CAAA,EAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAA,gBAAA,EAAmB,CAAC,CAAC,OAAO,CAAA,uBAAA,EAA0B,CAAC,CAAC;aACxE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA,MAAA,EAAS,CAAC,CAAC,IAAI,CAAA,CAAE;AAC5B,aAAA,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE;aAElB,IAAI,CAAC,MAAM,CAAC;AACf,QAAA,MAAM,IAAI,KAAK,CAAC,yCAAyC,SAAS,CAAA,CAAE,CAAC;IACvE;AACF;;ACnBA;;AAEG;;;;"}
1
+ {"version":3,"file":"ngxsmk-cdk-testing.mjs","sources":["../../../../packages/cdk/testing/a11y.ts","../../../../packages/cdk/testing/ngxsmk-cdk-testing.ts"],"sourcesContent":["import * as axe from 'axe-core';\n\n/**\n * Runs axe-core analysis on the provided HTML element and throws an error if any accessibility\n * violations are detected.\n *\n * Pass axe `options` to tune the run — e.g. in jsdom-based tests disable the\n * `color-contrast` rule, which requires a real rendering engine.\n */\nexport async function expectNoA11yViolations(\n element: HTMLElement,\n options: axe.RunOptions = {},\n): Promise<void> {\n const results = await axe.run(element, options);\n if (results.violations.length > 0) {\n const formatted = results.violations\n .map(\n (v) =>\n `[${v.id}] ${v.help}\\n - Help URL: ${v.helpUrl}\\n - Nodes affected:\\n${v.nodes\n .map((n) => ` * ${n.html}`)\n .join('\\n')}`,\n )\n .join('\\n\\n');\n throw new Error(`Accessibility violations detected:\\n\\n${formatted}`);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAEA;;;;;;AAMG;AACI,eAAe,sBAAsB,CAC1C,OAAoB,EACpB,UAA0B,EAAE,EAAA;IAE5B,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC;IAC/C,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AACjC,QAAA,MAAM,SAAS,GAAG,OAAO,CAAC;aACvB,GAAG,CACF,CAAC,CAAC,KACA,CAAA,CAAA,EAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAA,gBAAA,EAAmB,CAAC,CAAC,OAAO,CAAA,uBAAA,EAA0B,CAAC,CAAC;aACxE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA,MAAA,EAAS,CAAC,CAAC,IAAI,CAAA,CAAE;AAC5B,aAAA,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE;aAElB,IAAI,CAAC,MAAM,CAAC;AACf,QAAA,MAAM,IAAI,KAAK,CAAC,yCAAyC,SAAS,CAAA,CAAE,CAAC;IACvE;AACF;;ACzBA;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ngxsmk/cdk",
3
- "version": "1.3.1",
3
+ "version": "1.3.2",
4
4
  "description": "Low-level Angular directives and utilities (click-outside, focus-trap, media-query, scroll-lock) for @ngxsmk.",
5
5
  "keywords": [
6
6
  "angular",
@@ -12,6 +12,15 @@
12
12
  "helpers"
13
13
  ],
14
14
  "license": "MIT",
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "git+https://github.com/NGXSMK/ngxsmk-ui-kit.git",
18
+ "directory": "packages/cdk"
19
+ },
20
+ "homepage": "https://ngxsmk.github.io/ngxsmk-ui-kit",
21
+ "bugs": {
22
+ "url": "https://github.com/NGXSMK/ngxsmk-ui-kit/issues"
23
+ },
15
24
  "peerDependencies": {
16
25
  "@angular/common": ">=17.3.0",
17
26
  "@angular/core": ">=17.3.0"
@@ -47,6 +56,12 @@
47
56
  "esm": "./esm2022/click-outside/ngxsmk-cdk-click-outside.mjs",
48
57
  "default": "./fesm2022/ngxsmk-cdk-click-outside.mjs"
49
58
  },
59
+ "./live-announcer": {
60
+ "types": "./live-announcer/index.d.ts",
61
+ "esm2022": "./esm2022/live-announcer/ngxsmk-cdk-live-announcer.mjs",
62
+ "esm": "./esm2022/live-announcer/ngxsmk-cdk-live-announcer.mjs",
63
+ "default": "./fesm2022/ngxsmk-cdk-live-announcer.mjs"
64
+ },
50
65
  "./focus-trap": {
51
66
  "types": "./focus-trap/index.d.ts",
52
67
  "esm2022": "./esm2022/focus-trap/ngxsmk-cdk-focus-trap.mjs",
@@ -59,24 +74,18 @@
59
74
  "esm": "./esm2022/focusable/ngxsmk-cdk-focusable.mjs",
60
75
  "default": "./fesm2022/ngxsmk-cdk-focusable.mjs"
61
76
  },
62
- "./intersection-observer": {
63
- "types": "./intersection-observer/index.d.ts",
64
- "esm2022": "./esm2022/intersection-observer/ngxsmk-cdk-intersection-observer.mjs",
65
- "esm": "./esm2022/intersection-observer/ngxsmk-cdk-intersection-observer.mjs",
66
- "default": "./fesm2022/ngxsmk-cdk-intersection-observer.mjs"
67
- },
68
- "./live-announcer": {
69
- "types": "./live-announcer/index.d.ts",
70
- "esm2022": "./esm2022/live-announcer/ngxsmk-cdk-live-announcer.mjs",
71
- "esm": "./esm2022/live-announcer/ngxsmk-cdk-live-announcer.mjs",
72
- "default": "./fesm2022/ngxsmk-cdk-live-announcer.mjs"
73
- },
74
77
  "./media-query": {
75
78
  "types": "./media-query/index.d.ts",
76
79
  "esm2022": "./esm2022/media-query/ngxsmk-cdk-media-query.mjs",
77
80
  "esm": "./esm2022/media-query/ngxsmk-cdk-media-query.mjs",
78
81
  "default": "./fesm2022/ngxsmk-cdk-media-query.mjs"
79
82
  },
83
+ "./intersection-observer": {
84
+ "types": "./intersection-observer/index.d.ts",
85
+ "esm2022": "./esm2022/intersection-observer/ngxsmk-cdk-intersection-observer.mjs",
86
+ "esm": "./esm2022/intersection-observer/ngxsmk-cdk-intersection-observer.mjs",
87
+ "default": "./fesm2022/ngxsmk-cdk-intersection-observer.mjs"
88
+ },
80
89
  "./resize-observer": {
81
90
  "types": "./resize-observer/index.d.ts",
82
91
  "esm2022": "./esm2022/resize-observer/ngxsmk-cdk-resize-observer.mjs",
package/testing/a11y.d.ts CHANGED
@@ -1,6 +1,10 @@
1
+ import * as axe from 'axe-core';
1
2
  /**
2
3
  * Runs axe-core analysis on the provided HTML element and throws an error if any accessibility
3
4
  * violations are detected.
5
+ *
6
+ * Pass axe `options` to tune the run — e.g. in jsdom-based tests disable the
7
+ * `color-contrast` rule, which requires a real rendering engine.
4
8
  */
5
- export declare function expectNoA11yViolations(element: HTMLElement): Promise<void>;
9
+ export declare function expectNoA11yViolations(element: HTMLElement, options?: axe.RunOptions): Promise<void>;
6
10
  //# sourceMappingURL=a11y.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"a11y.d.ts","sourceRoot":"","sources":["../../../../packages/cdk/testing/a11y.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAahF"}
1
+ {"version":3,"file":"a11y.d.ts","sourceRoot":"","sources":["../../../../packages/cdk/testing/a11y.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAEhC;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,GAAG,CAAC,UAAe,GAC3B,OAAO,CAAC,IAAI,CAAC,CAaf"}