@c2n/details 0.0.6 → 0.0.7

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/details.js CHANGED
@@ -1,11 +1,12 @@
1
1
  import { accordionContext } from "./details-context.js";
2
2
  import { LitElement, html, nothing, unsafeCSS } from "lit";
3
3
  import { consume } from "@lit/context";
4
- import { customElement, property, query, state } from "lit/decorators.js";
4
+ import { property, query, state } from "lit/decorators.js";
5
+ import { customElement } from "@c2n/core/element-helper.js";
5
6
  import { classMap } from "lit/directives/class-map.js";
6
7
  import { redispatchEvent } from "@c2n/core/dom-helper.js";
7
8
  //#region src/details.scss?inline
8
- var details_default = "/* ex : var((width: 24px), width, c2-checkbox) returns var(--c2-checkbox-width, 24px) */\n:host {\n display: flex;\n}\n\n.c2-details {\n flex: 1;\n align-self: stretch;\n display: flex;\n flex-direction: column;\n min-width: 0;\n overflow: clip;\n background: var(--c2-details--background,rgb(255, 255, 255));\n box-shadow: var(--c2-details--box-shadow);\n border-top: var(--c2-details--border-top,1px solid rgb(213, 213, 213));\n border-right: var(--c2-details--border-right,1px solid rgb(213, 213, 213));\n border-bottom: var(--c2-details--border-bottom,1px solid rgb(213, 213, 213));\n border-left: var(--c2-details--border-left,1px solid rgb(213, 213, 213));\n border-top-left-radius: var(--c2-details--border-top-left-radius,8px);\n border-top-right-radius: var(--c2-details--border-top-right-radius,8px);\n border-bottom-left-radius: var(--c2-details--border-bottom-left-radius,8px);\n border-bottom-right-radius: var(--c2-details--border-bottom-right-radius,8px);\n}\n\nsummary {\n list-style: none;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n cursor: pointer;\n user-select: none;\n padding-top: var(--c2-details__header--padding-top,12px);\n padding-right: var(--c2-details__header--padding-right,16px);\n padding-bottom: var(--c2-details__header--padding-bottom,12px);\n padding-left: var(--c2-details__header--padding-left,16px);\n background: var(--c2-details__header--background);\n color: var(--c2-details__header--color);\n font-weight: var(--c2-details__header--font-weight,500);\n font-size: var(--c2-details__header--font-size);\n transition: background var(--c2-details--transition-duration,250ms) cubic-bezier(0.2, 0, 0, 1), color var(--c2-details--transition-duration,250ms) cubic-bezier(0.2, 0, 0, 1);\n}\nsummary::-webkit-details-marker, summary::marker {\n display: none;\n content: \"\";\n}\nsummary:hover {\n background: var(--c2-details__header__hover--background,var(--c2-details__header--background,rgb(248, 248, 248)));\n color: var(--c2-details__header__hover--color,var(--c2-details__header--color));\n}\nsummary:focus-visible {\n outline: var(--c2-details__header__focus--outline,2px solid rgba(2, 101, 220, 0.4));\n outline-offset: var(--c2-details__header__focus--outline-offset,-2px);\n}\n\n.c2-details-summary-row {\n display: flex;\n align-items: center;\n gap: var(--c2-details__header--gap,12px);\n flex-direction: var(--c2-details__header--flex-direction,row);\n}\n\n.c2-details-summary-content {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: center;\n}\n\n.c2-details-icons {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n color: var(--c2-details__header__icon--color,rgb(109, 109, 109));\n}\n.c2-details-icons .default-icon,\n.c2-details-icons ::slotted(*) {\n display: block;\n width: var(--c2-details__header__icon--width,20px);\n height: var(--c2-details__header__icon--height,20px);\n transition: transform var(--c2-details--transition-duration,250ms) cubic-bezier(0.2, 0, 0, 1);\n}\n.c2-details-icons slot[name=expanded-icon] {\n display: none;\n}\n\n.c2-details-header-content {\n margin-top: var(--c2-details__header__content--margin-top,4px);\n color: var(--c2-details__header__content--color,rgb(109, 109, 109));\n font-size: var(--c2-details__header__content--font-size,13px);\n font-weight: var(--c2-details__header__content--font-weight,400);\n cursor: auto;\n}\n.c2-details-header-content[hidden] {\n display: none;\n}\n\n.c2-details-content {\n flex: none;\n min-height: 0;\n transition-property: none;\n transition-duration: var(--c2-details--transition-duration,250ms);\n transition-timing-function: cubic-bezier(0.2, 0, 0, 1);\n}\n\n.c2-details-body {\n padding-top: var(--c2-details__content--padding-top,4px);\n padding-right: var(--c2-details__content--padding-right,var(--c2-details__header--padding-right,16px));\n padding-bottom: var(--c2-details__content--padding-bottom,var(--c2-details__header--padding-bottom,12px));\n padding-left: var(--c2-details__content--padding-left,var(--c2-details__header--padding-left,16px));\n color: var(--c2-details__content--color);\n border-top: var(--c2-details__content--border-top);\n}\n\n.c2-details[open] summary {\n background: var(--c2-details__header__open--background,var(--c2-details__header--background));\n color: var(--c2-details__header__open--color,var(--c2-details__header--color));\n}\n.c2-details[open] summary:hover {\n background: var(--c2-details__header__hover--background,var(--c2-details__header__open--background,var(--c2-details__header--background,rgb(248, 248, 248))));\n}\n.c2-details[open] .c2-details-icons .default-icon,\n.c2-details[open] .c2-details-icons slot[name=icon]::slotted(*) {\n transform: rotate(var(--c2-details__header__icon--rotate,180deg));\n}\n.c2-details[open] .c2-details-icons.has-expanded-icon slot[name=icon] {\n display: none;\n}\n.c2-details[open] .c2-details-icons.has-expanded-icon slot[name=expanded-icon] {\n display: contents;\n}\n\n:host([disabled]) summary {\n cursor: default;\n opacity: var(--c2-details__header__disabled--opacity,0.38);\n}\n\n@media (prefers-reduced-motion: reduce) {\n summary,\n .c2-details-icons .default-icon,\n .c2-details-icons ::slotted(*) {\n transition: none;\n }\n .c2-details-content {\n transition-duration: 0s;\n }\n}";
9
+ var details_default = "/* ex : var((width: 24px), width, c2-checkbox) returns var(--c2-checkbox-width, 24px) */\n:host {\n display: flex;\n}\n\n.c2-details {\n flex: 1;\n align-self: stretch;\n display: flex;\n flex-direction: column;\n min-width: 0;\n overflow: clip;\n background: var(--c2-details--background,rgb(255, 255, 255));\n box-shadow: var(--c2-details--box-shadow);\n border-top: var(--c2-details--border-top,1px solid rgb(213, 213, 213));\n border-right: var(--c2-details--border-right,1px solid rgb(213, 213, 213));\n border-bottom: var(--c2-details--border-bottom,1px solid rgb(213, 213, 213));\n border-left: var(--c2-details--border-left,1px solid rgb(213, 213, 213));\n border-top-left-radius: var(--c2-details--border-top-left-radius,8px);\n border-top-right-radius: var(--c2-details--border-top-right-radius,8px);\n border-bottom-left-radius: var(--c2-details--border-bottom-left-radius,8px);\n border-bottom-right-radius: var(--c2-details--border-bottom-right-radius,8px);\n}\n\nsummary {\n list-style: none;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n cursor: pointer;\n user-select: none;\n padding-top: var(--c2-details__header--padding-top,12px);\n padding-right: var(--c2-details__header--padding-right,16px);\n padding-bottom: var(--c2-details__header--padding-bottom,12px);\n padding-left: var(--c2-details__header--padding-left,16px);\n background: var(--c2-details__header--background);\n color: var(--c2-details__header--color);\n font-weight: var(--c2-details__header--font-weight,500);\n font-size: var(--c2-details__header--font-size);\n transition: background var(--c2-details--transition-duration,250ms) cubic-bezier(0.2, 0, 0, 1), color var(--c2-details--transition-duration,250ms) cubic-bezier(0.2, 0, 0, 1);\n}\nsummary::-webkit-details-marker, summary::marker {\n display: none;\n content: \"\";\n}\nsummary:hover {\n background: var(--c2-details__header__hover--background,var(--c2-details__header--background,rgb(248, 248, 248)));\n color: var(--c2-details__header__hover--color,var(--c2-details__header--color));\n}\nsummary:focus-visible {\n outline: var(--c2-details__header__focus--outline,2px solid rgba(2, 101, 220, 0.4));\n outline-offset: var(--c2-details__header__focus--outline-offset,-2px);\n}\n\n.c2-details-summary-row {\n display: flex;\n align-items: center;\n gap: var(--c2-details__header--gap,12px);\n flex-direction: var(--c2-details__header--flex-direction,row);\n}\n\n.c2-details-summary-content {\n flex: 1;\n min-width: 0;\n display: flex;\n align-items: center;\n}\n\n.c2-details-icons {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n color: var(--c2-details__header__icon--color,rgb(109, 109, 109));\n}\n.c2-details-icons .default-icon,\n.c2-details-icons ::slotted(*) {\n display: block;\n width: var(--c2-details__header__icon--width,20px);\n height: var(--c2-details__header__icon--height,20px);\n transform: rotate(var(--c2-details__header__icon--rotate-collapsed,0deg));\n transition: transform var(--c2-details--transition-duration,250ms) cubic-bezier(0.2, 0, 0, 1);\n}\n.c2-details-icons slot[name=expanded-icon] {\n display: none;\n}\n\n.c2-details-header-content {\n margin-top: var(--c2-details__header__content--margin-top,4px);\n color: var(--c2-details__header__content--color,rgb(109, 109, 109));\n font-size: var(--c2-details__header__content--font-size,13px);\n font-weight: var(--c2-details__header__content--font-weight,400);\n cursor: auto;\n}\n.c2-details-header-content[hidden] {\n display: none;\n}\n\n.c2-details-content {\n flex: none;\n min-height: 0;\n transition-property: none;\n transition-duration: var(--c2-details--transition-duration,250ms);\n transition-timing-function: cubic-bezier(0.2, 0, 0, 1);\n}\n\n.c2-details:not([open]) > .c2-details-content {\n display: none;\n}\n\n.c2-details-body {\n padding-top: var(--c2-details__content--padding-top,4px);\n padding-right: var(--c2-details__content--padding-right,var(--c2-details__header--padding-right,16px));\n padding-bottom: var(--c2-details__content--padding-bottom,var(--c2-details__header--padding-bottom,12px));\n padding-left: var(--c2-details__content--padding-left,var(--c2-details__header--padding-left,16px));\n color: var(--c2-details__content--color);\n border-top: var(--c2-details__content--border-top);\n}\n\n.c2-details[open] summary {\n background: var(--c2-details__header__open--background,var(--c2-details__header--background));\n color: var(--c2-details__header__open--color,var(--c2-details__header--color));\n}\n.c2-details[open] summary:hover {\n background: var(--c2-details__header__hover--background,var(--c2-details__header__open--background,var(--c2-details__header--background,rgb(248, 248, 248))));\n}\n.c2-details[open] .c2-details-icons .default-icon,\n.c2-details[open] .c2-details-icons slot[name=icon]::slotted(*) {\n transform: rotate(var(--c2-details__header__icon--rotate,180deg));\n}\n.c2-details[open] .c2-details-icons.has-expanded-icon slot[name=icon] {\n display: none;\n}\n.c2-details[open] .c2-details-icons.has-expanded-icon slot[name=expanded-icon] {\n display: contents;\n}\n\n:host([disabled]) summary {\n cursor: default;\n opacity: var(--c2-details__header__disabled--opacity,0.38);\n}\n\n@media (prefers-reduced-motion: reduce) {\n summary,\n .c2-details-icons .default-icon,\n .c2-details-icons ::slotted(*) {\n transition: none;\n }\n .c2-details-content {\n transition-duration: 0s;\n }\n}";
9
10
  //#endregion
10
11
  //#region \0@oxc-project+runtime@0.148.0/helpers/esm/decorate.js
11
12
  function __decorate(decorators, target, key, desc) {
@@ -119,7 +120,7 @@ var Details = class Details extends LitElement {
119
120
  if (this.disabled && (event.key === "Enter" || event.key === " ")) event.preventDefault();
120
121
  }
121
122
  handleDetailsToggle(event) {
122
- this.expanded = this.detailsElement.open;
123
+ if (!this.closing) this.expanded = this.detailsElement.open;
123
124
  redispatchEvent(this, event);
124
125
  }
125
126
  /** Opens or closes the panel. */
package/package.json CHANGED
@@ -1,22 +1,34 @@
1
1
  {
2
2
  "name": "@c2n/details",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "type": "module",
5
5
  "main": "dist/details.js",
6
6
  "exports": {
7
7
  ".": {
8
- "default": "./dist/details.js",
9
- "types": "./types/src/details.d.ts"
8
+ "types": "./types/src/details.d.ts",
9
+ "default": "./dist/details.js"
10
10
  },
11
11
  "./details-context.js": {
12
- "default": "./dist/details-context.js",
13
- "types": "./types/src/details-context.d.ts"
12
+ "types": "./types/src/details-context.d.ts",
13
+ "default": "./dist/details-context.js"
14
+ },
15
+ "./react": {
16
+ "types": "./react.d.ts",
17
+ "default": "./react.js"
18
+ },
19
+ "./vue": {
20
+ "types": "./vue.d.ts",
21
+ "default": "./vue.js"
14
22
  },
15
23
  "./custom-elements.json": "./custom-elements.json"
16
24
  },
17
25
  "files": [
18
26
  "dist",
19
- "types"
27
+ "types",
28
+ "react.d.ts",
29
+ "react.js",
30
+ "vue.d.ts",
31
+ "vue.js"
20
32
  ],
21
33
  "keywords": [
22
34
  "details",
@@ -52,7 +64,7 @@
52
64
  }
53
65
  },
54
66
  "dependencies": {
55
- "@c2n/core": "0.0.6",
67
+ "@c2n/core": "0.0.7",
56
68
  "@lit/context": "1.1.6",
57
69
  "lit": "3.3.3"
58
70
  },
@@ -60,5 +72,5 @@
60
72
  "@c2n/config": "*"
61
73
  },
62
74
  "customElements": "custom-elements.json",
63
- "gitHead": "2921054bc75299da66dad11c1e374246ff88a51e"
75
+ "gitHead": "c8db398a27f7cd417d665fdf5da455fee2d4e910"
64
76
  }
package/react.d.ts ADDED
@@ -0,0 +1,24 @@
1
+ // GENERATED by @c2n/framework-types. Do not edit by hand.
2
+ //
3
+ // JSX types for the custom elements of @c2n/details. Import once, anywhere in the program:
4
+ //
5
+ // import '@c2n/details/react'
6
+ //
7
+ // Register the elements at module scope before React renders, or React writes an object prop as an
8
+ // attribute and it stringifies.
9
+
10
+ import type { DetailedHTMLProps, HTMLAttributes } from 'react'
11
+ import type { Details } from '@c2n/details'
12
+
13
+ /** Standard React host-element attributes plus the element's own public properties. */
14
+ type C2Props<T> = DetailedHTMLProps<HTMLAttributes<T>, T> & Partial<Omit<T, keyof HTMLElement>>
15
+
16
+ declare module 'react' {
17
+ namespace JSX {
18
+ interface IntrinsicElements {
19
+ 'c2-details': C2Props<Details>
20
+ }
21
+ }
22
+ }
23
+
24
+ export {}
package/react.js ADDED
@@ -0,0 +1,3 @@
1
+ // GENERATED by @c2n/framework-types. Do not edit by hand.
2
+ // Types only — see the matching .d.ts.
3
+ export {}
@@ -1,4 +1,13 @@
1
1
  import { LitElement, type PropertyValues } from 'lit';
2
+ import type { TypedAddEventListener, TypedRemoveEventListener } from '@c2n/core/event-helper.js';
3
+ /** Events fired by {@link Details}, keyed for `addEventListener`. */
4
+ export interface DetailsEventMap {
5
+ toggle: ToggleEvent;
6
+ }
7
+ export interface Details {
8
+ addEventListener: TypedAddEventListener<Details, DetailsEventMap>;
9
+ removeEventListener: TypedRemoveEventListener<Details, DetailsEventMap>;
10
+ }
2
11
  /**
3
12
  * Collapsible disclosure built on native `<details>` / `<summary>`, so keyboard access, screen-reader semantics and
4
13
  * find-in-page auto-expand come from the browser. Panels that share a `name` form an exclusive accordion. Open and
@@ -44,7 +53,8 @@ import { LitElement, type PropertyValues } from 'lit';
44
53
  *
45
54
  * @cssproperty {pixel} [--c2-details__header__icon--width=20px]
46
55
  * @cssproperty {pixel} [--c2-details__header__icon--height=20px]
47
- * @cssproperty {pixel} [--c2-details__header__icon--rotate=180deg]
56
+ * @cssproperty {pixel} [--c2-details__header__icon--rotate=180deg] - Icon angle while open.
57
+ * @cssproperty {pixel} [--c2-details__header__icon--rotate-collapsed=0deg] - Icon angle while closed. `-90deg` with the default chevron gives the nav idiom: right when closed, down when open.
48
58
  * @cssproperty {color} [--c2-details__header__icon--color=rgb(109, 109, 109)]
49
59
  *
50
60
  * @cssproperty {pixel} [--c2-details__header__content--margin-top=4px]
@@ -1 +1 @@
1
- {"version":3,"file":"details.d.ts","sourceRoot":"","sources":["../../src/details.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA4B,KAAK,cAAc,EAAE,MAAM,KAAK,CAAA;AAQ/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,qBACa,OAAQ,SAAQ,UAAU;IACrC,OAAgB,MAAM,0BAAoB;IAExB,SAAS,CAAC,cAAc,EAAG,kBAAkB,CAAA;IACjC,OAAO,CAAC,cAAc,CAAc;IACvC,OAAO,CAAC,WAAW,CAAc;IAE5D,iEAAiE;IACrB,QAAQ,UAAQ;IAE5D,kDAAkD;IACtC,KAAK,SAAK;IAEtB;;;OAGG;IACS,IAAI,EAAE,MAAM,GAAG,SAAS,CAAY;IAEhD,wEAAwE;IACM,iBAAiB,UAAQ;IAEvG,kEAAkE;IACtB,QAAQ,UAAQ;IAEnD,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,eAAe,CAAQ;IACxC,yHAAyH;IAChH,OAAO,CAAC,OAAO,CAAQ;IAEhC,OAAO,CAAC,iBAAiB,CAAkB;IAG3C,OAAO,CAAC,SAAS,CAA8B;IAEtC,oBAAoB;IAOpB,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;IAOxC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;IAO9C,OAAO,CAAC,uBAAuB;IAM/B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAmCtB,sGAAsG;IAC7F,YAAY;IAIrB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,mBAAmB;IAK3B,iCAAiC;IACjC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO;IAKtB,SAAS,CAAC,UAAU;IAaX,MAAM;CA0BhB;AAqBD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,OAAO,CAAA;KACtB;CACF"}
1
+ {"version":3,"file":"details.d.ts","sourceRoot":"","sources":["../../src/details.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA4B,KAAK,cAAc,EAAE,MAAM,KAAK,CAAA;AAK/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAA;AAKhG,qEAAqE;AACrE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,WAAW,CAAA;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,gBAAgB,EAAE,qBAAqB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;IACjE,mBAAmB,EAAE,wBAAwB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;CACxE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AACH,qBACa,OAAQ,SAAQ,UAAU;IACrC,OAAgB,MAAM,0BAAoB;IAExB,SAAS,CAAC,cAAc,EAAG,kBAAkB,CAAA;IACjC,OAAO,CAAC,cAAc,CAAc;IACvC,OAAO,CAAC,WAAW,CAAc;IAE5D,iEAAiE;IACrB,QAAQ,UAAQ;IAE5D,kDAAkD;IACtC,KAAK,SAAK;IAEtB;;;OAGG;IACS,IAAI,EAAE,MAAM,GAAG,SAAS,CAAY;IAEhD,wEAAwE;IACM,iBAAiB,UAAQ;IAEvG,kEAAkE;IACtB,QAAQ,UAAQ;IAEnD,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,eAAe,CAAQ;IACxC,yHAAyH;IAChH,OAAO,CAAC,OAAO,CAAQ;IAEhC,OAAO,CAAC,iBAAiB,CAAkB;IAG3C,OAAO,CAAC,SAAS,CAA8B;IAEtC,oBAAoB;IAOpB,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;IAOxC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC;IAO9C,OAAO,CAAC,uBAAuB;IAM/B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAmCtB,sGAAsG;IAC7F,YAAY;IAIrB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,mBAAmB;IAM3B,iCAAiC;IACjC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO;IAKtB,SAAS,CAAC,UAAU;IAaX,MAAM;CA0BhB;AAqBD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,OAAO,CAAA;KACtB;CACF"}
package/vue.d.ts ADDED
@@ -0,0 +1,34 @@
1
+ // GENERATED by @c2n/framework-types. Do not edit by hand.
2
+ //
3
+ // Vue template types for the custom elements of @c2n/details. Import once, anywhere in the program:
4
+ //
5
+ // import '@c2n/details/vue'
6
+ //
7
+ // Tell the compiler about the tags as well, or every c2-* tag is resolved as a Vue component and renders
8
+ // nothing: template.compilerOptions.isCustomElement = (tag) => tag.startsWith('c2-') in vite.config.ts.
9
+
10
+ import type { DefineComponent, HTMLAttributes } from 'vue'
11
+ import type { Details, DetailsEventMap } from '@c2n/details'
12
+
13
+ /** The element's own public properties, plus every attribute Vue understands on a host element. */
14
+ type C2Props<T> = Partial<Omit<T, keyof HTMLElement>> & HTMLAttributes
15
+
16
+ declare module 'vue' {
17
+ interface GlobalComponents {
18
+ 'c2-details': DefineComponent<
19
+ C2Props<Details> & {
20
+ 'title-not-clickable'?: unknown
21
+ onToggle?: (event: DetailsEventMap['toggle']) => void
22
+ }
23
+ >
24
+ }
25
+ }
26
+
27
+ declare module '@vue/runtime-dom' {
28
+ interface HTMLAttributes {
29
+ /** Vue's own definition omits it, and slotting a plain element into a component needs it. */
30
+ slot?: string
31
+ }
32
+ }
33
+
34
+ export {}
package/vue.js ADDED
@@ -0,0 +1,3 @@
1
+ // GENERATED by @c2n/framework-types. Do not edit by hand.
2
+ // Types only — see the matching .d.ts.
3
+ export {}