@gnireeg/accordion 0.1.14 → 0.1.17

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/dist/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- import './global-jsx';
2
1
  export type { AccordionItemElement, AccordionGroupElement, AccordionEventDetail, AccordionItemAttributes, AccordionGroupAttributes, } from './types';
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAC;AAGtB,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,3 @@
1
- import './global-jsx';
2
1
  // SSR-safe: Only define and register components in browser environment
3
2
  if (typeof window !== 'undefined' && typeof HTMLElement !== 'undefined') {
4
3
  /**
@@ -14,8 +13,10 @@ if (typeof window !== 'undefined' && typeof HTMLElement !== 'undefined') {
14
13
  * @slot trigger-container - Container for the trigger element(s). Use accordion-trigger attribute to specify which element toggles the accordion
15
14
  * @slot - Default slot for the accordion content
16
15
  *
17
- * @fires accordion-opened - Dispatched when the accordion opens (detail: { open: true })
18
- * @fires accordion-closed - Dispatched when the accordion closes (detail: { open: false })
16
+ * @fires accordion-opened - Dispatched when the accordion opens (detail: { open: true }) - Vanilla JS convention
17
+ * @fires AccordionOpened - Same as accordion-opened, for React compatibility
18
+ * @fires accordion-closed - Dispatched when the accordion closes (detail: { open: false }) - Vanilla JS convention
19
+ * @fires AccordionClosed - Same as accordion-closed, for React compatibility
19
20
  *
20
21
  * @cssprop [--animation-time] - Can be overridden via CSS custom properties
21
22
  * @cssprop [--animation-easing] - Can be overridden via CSS custom properties
@@ -105,6 +106,7 @@ if (typeof window !== 'undefined' && typeof HTMLElement !== 'undefined') {
105
106
  * Opens the accordion
106
107
  * @public
107
108
  * @fires accordion-opened
109
+ * @fires AccordionOpened
108
110
  */
109
111
  this.show = () => {
110
112
  this.open = true;
@@ -114,6 +116,7 @@ if (typeof window !== 'undefined' && typeof HTMLElement !== 'undefined') {
114
116
  * Closes the accordion
115
117
  * @public
116
118
  * @fires accordion-closed
119
+ * @fires AccordionClosed
117
120
  */
118
121
  this.close = () => {
119
122
  this.open = false;
@@ -126,12 +129,16 @@ if (typeof window !== 'undefined' && typeof HTMLElement !== 'undefined') {
126
129
  this.dispatchStateEvent();
127
130
  };
128
131
  this.dispatchStateEvent = () => {
129
- // Dispatch custom events
130
- this.dispatchEvent(new CustomEvent(this.open ? 'accordion-opened' : 'accordion-closed', {
132
+ // Dispatch custom events (both naming conventions for compatibility)
133
+ const eventDetail = {
131
134
  bubbles: true,
132
135
  composed: true,
133
136
  detail: { open: this.open }
134
- }));
137
+ };
138
+ // Vanilla JS / Web Standards convention (lowercase with hyphens)
139
+ this.dispatchEvent(new CustomEvent(this.open ? 'accordion-opened' : 'accordion-closed', eventDetail));
140
+ // React convention (camelCase)
141
+ this.dispatchEvent(new CustomEvent(this.open ? 'AccordionOpened' : 'AccordionClosed', eventDetail));
135
142
  };
136
143
  this.updateTriggerAccessibility = () => {
137
144
  if (!this.triggerElement)
@@ -307,6 +314,7 @@ if (typeof window !== 'undefined' && typeof HTMLElement !== 'undefined') {
307
314
  }
308
315
  }
309
316
  connectedCallback() {
317
+ // Only listen to one event to avoid duplicate handling
310
318
  this.addEventListener('accordion-opened', this.handleAccordionOpened);
311
319
  }
312
320
  disconnectedCallback() {
@@ -318,4 +326,5 @@ if (typeof window !== 'undefined' && typeof HTMLElement !== 'undefined') {
318
326
  customElements.define('accordion-item', AccordionItem);
319
327
  customElements.define('accordion-group', AccordionGroup);
320
328
  }
329
+ export {};
321
330
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /// <reference path="./jsx.d.ts" />
2
+
3
+ export * from './types';
package/dist/types.d.ts CHANGED
@@ -1,116 +1,99 @@
1
- /**
2
- * Custom element interfaces for accordion components
3
- */
4
-
5
- /**
6
- * AccordionItem custom element interface
7
- */
8
- export interface AccordionItemElement extends HTMLElement {
9
- /**
10
- * Opens the accordion
11
- * @fires accordion-opened
12
- */
13
- show(): void;
14
-
15
- /**
16
- * Closes the accordion
17
- * @fires accordion-closed
18
- */
19
- close(): void;
20
-
21
- /**
22
- * Toggles the accordion between open and closed states
23
- */
24
- toggle(): void;
25
-
26
- /**
27
- * Current open state of the accordion
28
- */
29
- open: boolean;
30
- }
31
-
32
- /**
33
- * AccordionGroup custom element interface
34
- */
35
- export interface AccordionGroupElement extends HTMLElement {}
36
-
37
- /**
38
- * Event detail for accordion state change events
39
- */
40
- export interface AccordionEventDetail {
41
- open: boolean;
42
- }
43
-
44
- /**
45
- * HTML attributes for accordion-item element
46
- */
47
- export interface AccordionItemAttributes {
48
- /**
49
- * When present, the accordion starts in an expanded state
50
- */
51
- open?: boolean;
52
-
53
- /**
54
- * Animation duration in milliseconds (default: "300")
55
- */
56
- 'animation-time'?: string | number;
57
-
58
- /**
59
- * CSS easing function (default: "ease")
60
- */
61
- 'animation-easing'?: string;
62
-
63
- /**
64
- * Applied to child elements inside trigger-container slot to designate which element toggles the accordion
65
- */
66
- 'accordion-trigger'?: boolean;
67
-
68
- /**
69
- * Children and standard HTML attributes
70
- */
71
- children?: any;
72
- slot?: string;
73
- className?: string;
74
- class?: string;
75
- style?: string | Record<string, any>;
76
- id?: string;
77
-
78
- /**
79
- * Event handler for accordion-opened event
80
- * Fired when the accordion opens
81
- */
82
- onAccordionOpened?: (event: CustomEvent<AccordionEventDetail>) => void;
83
-
84
- /**
85
- * Event handler for accordion-closed event
86
- * Fired when the accordion closes
87
- */
88
- onAccordionClosed?: (event: CustomEvent<AccordionEventDetail>) => void;
89
-
90
- /**
91
- * Legacy event handler naming (lowercase)
92
- */
93
- 'onaccordion-opened'?: (event: CustomEvent<AccordionEventDetail>) => void;
94
- 'onaccordion-closed'?: (event: CustomEvent<AccordionEventDetail>) => void;
95
- }
96
-
97
- /**
98
- * HTML attributes for accordion-group element
99
- */
100
- export interface AccordionGroupAttributes {
101
- /**
102
- * When present, allows multiple accordions to be open simultaneously.
103
- * By default, opening one accordion closes all others in the group.
104
- */
105
- 'allow-multiple-open'?: boolean;
106
-
107
- /**
108
- * Children and standard HTML attributes
109
- */
110
- children?: any;
111
- slot?: string;
112
- className?: string;
113
- class?: string;
114
- style?: string | Record<string, any>;
115
- id?: string;
116
- }
1
+ /**
2
+ * Custom element interfaces for accordion components
3
+ */
4
+ /**
5
+ * AccordionItem custom element interface
6
+ */
7
+ export interface AccordionItemElement extends HTMLElement {
8
+ /**
9
+ * Opens the accordion
10
+ * @fires accordion-opened
11
+ */
12
+ show(): void;
13
+ /**
14
+ * Closes the accordion
15
+ * @fires accordion-closed
16
+ */
17
+ close(): void;
18
+ /**
19
+ * Toggles the accordion between open and closed states
20
+ */
21
+ toggle(): void;
22
+ /**
23
+ * Current open state of the accordion
24
+ */
25
+ open: boolean;
26
+ }
27
+ /**
28
+ * AccordionGroup custom element interface
29
+ */
30
+ export interface AccordionGroupElement extends HTMLElement {
31
+ }
32
+ /**
33
+ * Event detail for accordion state change events
34
+ */
35
+ export interface AccordionEventDetail {
36
+ open: boolean;
37
+ }
38
+ /**
39
+ * HTML attributes for accordion-item element
40
+ */
41
+ export interface AccordionItemAttributes {
42
+ /**
43
+ * When present, the accordion starts in an expanded state
44
+ */
45
+ open?: boolean;
46
+ /**
47
+ * Animation duration in milliseconds (default: "300")
48
+ */
49
+ 'animation-time'?: string | number;
50
+ /**
51
+ * CSS easing function (default: "ease")
52
+ */
53
+ 'animation-easing'?: string;
54
+ /**
55
+ * Applied to child elements inside trigger-container slot to designate which element toggles the accordion
56
+ */
57
+ 'accordion-trigger'?: boolean;
58
+ /**
59
+ * Children and standard HTML attributes
60
+ */
61
+ children?: any;
62
+ slot?: string;
63
+ className?: string;
64
+ class?: string;
65
+ style?: string | Record<string, any>;
66
+ id?: string;
67
+ /**
68
+ * Event handler for when the accordion opens
69
+ * React: Use onAccordionOpened
70
+ * Vanilla JS: addEventListener('accordion-opened', ...)
71
+ */
72
+ onAccordionOpened?: (event: CustomEvent<AccordionEventDetail>) => void;
73
+ /**
74
+ * Event handler for when the accordion closes
75
+ * React: Use onAccordionClosed
76
+ * Vanilla JS: addEventListener('accordion-closed', ...)
77
+ */
78
+ onAccordionClosed?: (event: CustomEvent<AccordionEventDetail>) => void;
79
+ }
80
+ /**
81
+ * HTML attributes for accordion-group element
82
+ */
83
+ export interface AccordionGroupAttributes {
84
+ /**
85
+ * When present, allows multiple accordions to be open simultaneously.
86
+ * By default, opening one accordion closes all others in the group.
87
+ */
88
+ 'allow-multiple-open'?: boolean;
89
+ /**
90
+ * Children and standard HTML attributes
91
+ */
92
+ children?: any;
93
+ slot?: string;
94
+ className?: string;
95
+ class?: string;
96
+ style?: string | Record<string, any>;
97
+ id?: string;
98
+ }
99
+ //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD;;;OAGG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;;OAGG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,MAAM,IAAI,IAAI,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,WAAW;CAAG;AAE7D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEnC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;IAEvE;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;IAEvE;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;IAC1E,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;CAC3E;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD;;;OAGG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;;OAGG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,MAAM,IAAI,IAAI,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,WAAW;CAAG;AAE7D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEnC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;IAEvE;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;CACxE;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb"}
package/package.json CHANGED
@@ -1,26 +1,24 @@
1
1
  {
2
2
  "name": "@gnireeg/accordion",
3
- "version": "0.1.14",
3
+ "version": "0.1.17",
4
4
  "description": "Accessible accordion web component with smooth animations, keyboard support, and nested accordion groups",
5
5
  "type": "module",
6
+
6
7
  "main": "./dist/index.js",
7
- "types": "./dist/index.d.ts",
8
- "typesVersions": {
9
- "*": {
10
- "*": ["dist/index.d.ts"]
11
- }
12
- },
8
+ "types": "./dist/types-entry.d.ts",
9
+
13
10
  "exports": {
14
11
  ".": {
15
- "types": "./dist/index.d.ts",
16
- "node": "./dist/index.js",
12
+ "types": "./dist/types-entry.d.ts",
17
13
  "default": "./dist/index.js"
18
14
  }
19
15
  },
16
+
20
17
  "files": [
21
18
  "dist",
22
19
  "README.md"
23
20
  ],
21
+
24
22
  "keywords": [
25
23
  "accordion",
26
24
  "web-components",
@@ -30,18 +28,22 @@
30
28
  "typescript",
31
29
  "ui-components"
32
30
  ],
31
+
33
32
  "author": "Joel Geering <joel@geering.dev> (https://geering.dev)",
34
33
  "license": "MIT",
34
+
35
35
  "repository": {
36
36
  "type": "git",
37
37
  "url": "https://github.com/gnireeG/web-components.git",
38
38
  "directory": "packages/accordion"
39
39
  },
40
+
40
41
  "scripts": {
41
- "build": "tsc && node -e \"const fs = require('fs'); fs.copyFileSync('src/jsx.d.ts', 'dist/jsx.d.ts'); fs.copyFileSync('src/types.ts', 'dist/types.d.ts');\"",
42
+ "build": "tsc && node -e \"const fs = require('fs'); fs.copyFileSync('src/jsx.d.ts', 'dist/jsx.d.ts'); fs.copyFileSync('src/types-entry.d.ts', 'dist/types-entry.d.ts');\"",
42
43
  "dev": "tsc --watch",
43
44
  "prepublishOnly": "npm run build"
44
45
  },
46
+
45
47
  "devDependencies": {
46
48
  "typescript": "^5.4.0"
47
49
  }
@@ -1,17 +0,0 @@
1
- import type { AccordionItemAttributes, AccordionGroupAttributes } from './types';
2
- declare global {
3
- namespace JSX {
4
- interface IntrinsicElements {
5
- 'accordion-item': AccordionItemAttributes;
6
- 'accordion-group': AccordionGroupAttributes;
7
- }
8
- }
9
- namespace React.JSX {
10
- interface IntrinsicElements {
11
- 'accordion-item': AccordionItemAttributes;
12
- 'accordion-group': AccordionGroupAttributes;
13
- }
14
- }
15
- }
16
- export {};
17
- //# sourceMappingURL=global-jsx.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"global-jsx.d.ts","sourceRoot":"","sources":["../src/global-jsx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,SAAS,CAAC;AAEjB,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,gBAAgB,EAAE,uBAAuB,CAAC;YAC1C,iBAAiB,EAAE,wBAAwB,CAAC;SAC7C;KACF;IAED,UAAU,KAAK,CAAC,GAAG,CAAC;QAClB,UAAU,iBAAiB;YACzB,gBAAgB,EAAE,uBAAuB,CAAC;YAC1C,iBAAiB,EAAE,wBAAwB,CAAC;SAC7C;KACF;CACF;AAED,OAAO,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=global-jsx.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"global-jsx.js","sourceRoot":"","sources":["../src/global-jsx.ts"],"names":[],"mappings":""}