@vaadin/react-components 24.8.0-alpha9 → 25.0.0-alpha2

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.
Files changed (43) hide show
  1. package/Markdown.d.ts +9 -0
  2. package/Markdown.d.ts.map +1 -0
  3. package/Markdown.js +2 -0
  4. package/Markdown.js.map +7 -0
  5. package/MasterDetailLayout.d.ts +24 -7
  6. package/MasterDetailLayout.d.ts.map +1 -1
  7. package/MasterDetailLayout.js +1 -1
  8. package/MasterDetailLayout.js.map +3 -3
  9. package/css/lumo/mixins/RequiredField.css +0 -1
  10. package/generated/Markdown.d.ts +9 -0
  11. package/generated/Markdown.d.ts.map +1 -0
  12. package/generated/MasterDetailLayout.d.ts +10 -3
  13. package/generated/MasterDetailLayout.d.ts.map +1 -1
  14. package/index.d.ts +1 -2
  15. package/index.js +1 -2
  16. package/package.json +66 -81
  17. package/utils/createComponent.js +1 -1
  18. package/utils/createComponent.js.map +1 -1
  19. package/ComboBoxLight.d.ts +0 -11
  20. package/ComboBoxLight.d.ts.map +0 -1
  21. package/ComboBoxLight.js +0 -2
  22. package/ComboBoxLight.js.map +0 -7
  23. package/DatePickerLight.d.ts +0 -2
  24. package/DatePickerLight.d.ts.map +0 -1
  25. package/DatePickerLight.js +0 -2
  26. package/DatePickerLight.js.map +0 -7
  27. package/css/Material.css +0 -13
  28. package/css/material/Color.css +0 -7
  29. package/css/material/ColorBase.css +0 -26
  30. package/css/material/ColorDark.css +0 -47
  31. package/css/material/ColorLight.css +0 -96
  32. package/css/material/Font.css +0 -22
  33. package/css/material/FontIcons.css +0 -28
  34. package/css/material/Shadow.css +0 -15
  35. package/css/material/Typography.css +0 -80
  36. package/css/material/UserColors.css +0 -22
  37. package/css/material/mixins/FieldButton.css +0 -34
  38. package/css/material/mixins/Overlay.css +0 -36
  39. package/css/material/mixins/RequiredField.css +0 -60
  40. package/generated/ComboBoxLight.d.ts +0 -19
  41. package/generated/ComboBoxLight.d.ts.map +0 -1
  42. package/generated/DatePickerLight.d.ts +0 -22
  43. package/generated/DatePickerLight.d.ts.map +0 -1
package/Markdown.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ import { type ReactElement, type RefAttributes } from 'react';
2
+ import { type MarkdownProps as _MarkdownProps, type MarkdownElement } from './generated/Markdown.js';
3
+ export * from './generated/Markdown.js';
4
+ export type MarkdownProps = Partial<Omit<_MarkdownProps, 'children' | 'content'>> & Readonly<{
5
+ children?: string | null;
6
+ }>;
7
+ declare const ForwardedMarkdown: (props: MarkdownProps & RefAttributes<MarkdownElement>) => ReactElement | null;
8
+ export { ForwardedMarkdown as Markdown };
9
+ //# sourceMappingURL=Markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["src/Markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiC,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAC7F,OAAO,EAEL,KAAK,aAAa,IAAI,cAAc,EACpC,KAAK,eAAe,EACrB,MAAM,yBAAyB,CAAC;AAEjC,cAAc,yBAAyB,CAAC;AAExC,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC,GAC/E,QAAQ,CAAC;IACP,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC,CAAC;AAML,QAAA,MAAM,iBAAiB,EAA2B,CAChD,KAAK,EAAE,aAAa,GAAG,aAAa,CAAC,eAAe,CAAC,KAClD,YAAY,GAAG,IAAI,CAAC;AAEzB,OAAO,EAAE,iBAAiB,IAAI,QAAQ,EAAE,CAAC"}
package/Markdown.js ADDED
@@ -0,0 +1,2 @@
1
+ export*from"@vaadin/markdown/vaadin-markdown.js";import{forwardRef as m}from"react";import{Markdown as n}from"@vaadin/markdown/vaadin-markdown.js";import*as a from"react";import{createComponent as p}from"./utils/createComponent.js";var d={},o=p({elementClass:n,events:d,react:a,tagName:"vaadin-markdown"});import{jsx as M}from"react/jsx-runtime";function w({children:r,...e},t){return M(o,{...e,ref:t,content:r??""})}var c=m(w);export{c as Markdown,n as MarkdownElement};
2
+ //# sourceMappingURL=Markdown.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["src/Markdown.tsx", "src/generated/Markdown.ts"],
4
+ "sourcesContent": ["export * from \"@vaadin/markdown/vaadin-markdown.js\";\nimport { forwardRef, type ForwardedRef, type ReactElement, type RefAttributes } from 'react';\nimport {\n Markdown as _Markdown,\n type MarkdownProps as _MarkdownProps,\n type MarkdownElement,\n} from './generated/Markdown.js';\n\nexport * from './generated/Markdown.js';\n\nexport type MarkdownProps = Partial<Omit<_MarkdownProps, 'children' | 'content'>> &\n Readonly<{\n children?: string | null;\n }>;\n\nfunction Markdown({ children, ...props }: MarkdownProps, ref: ForwardedRef<MarkdownElement>): ReactElement | null {\n return <_Markdown {...props} ref={ref} content={children ?? ''}></_Markdown>;\n}\n\nconst ForwardedMarkdown = forwardRef(Markdown) as (\n props: MarkdownProps & RefAttributes<MarkdownElement>,\n) => ReactElement | null;\n\nexport { ForwardedMarkdown as Markdown };\n", "import type {} from \"@lit/react\";\nimport { Markdown as MarkdownElement, } from \"@vaadin/markdown/vaadin-markdown.js\";\nimport * as React from \"react\";\nimport { createComponent, type WebComponentProps } from \"../utils/createComponent.js\";\nexport { MarkdownElement, };\nexport type MarkdownEventMap = Readonly<{}>;\nconst events = {} as MarkdownEventMap;\nexport type MarkdownProps = WebComponentProps<MarkdownElement, MarkdownEventMap>;\nexport const Markdown = createComponent({\n elementClass: MarkdownElement, events, react: React, tagName: \"vaadin-markdown\"\n});\n"],
5
+ "mappings": "AAAA,WAAc,sCACd,OAAS,cAAAA,MAA4E,QCArF,OAAS,YAAYC,MAAwB,sCAC7C,UAAYC,MAAW,QACvB,OAAS,mBAAAC,MAA+C,6BAGxD,IAAMC,EAAS,CAAC,EAEHC,EAAWC,EAAgB,CACpC,aAAcC,EAAiB,OAAAH,EAAQ,MAAOI,EAAO,QAAS,iBAClE,CAAC,EDMQ,cAAAC,MAAA,oBADT,SAASC,EAAS,CAAE,SAAAC,EAAU,GAAGC,CAAM,EAAkBC,EAAyD,CAChH,OAAOJ,EAACC,EAAA,CAAW,GAAGE,EAAO,IAAKC,EAAK,QAASF,GAAY,GAAI,CAClE,CAEA,IAAMG,EAAoBC,EAAWL,CAAQ",
6
+ "names": ["forwardRef", "MarkdownElement", "React", "createComponent", "events", "Markdown", "createComponent", "MarkdownElement", "React", "jsx", "Markdown", "children", "props", "ref", "ForwardedMarkdown", "forwardRef"]
7
+ }
@@ -3,16 +3,33 @@ import React from 'react';
3
3
  export * from './generated/MasterDetailLayout.js';
4
4
  type MasterProps = React.PropsWithChildren<{}>;
5
5
  type DetailProps = React.PropsWithChildren<{}>;
6
+ declare const MasterDetailLayoutWithValidation: React.FC<React.ComponentProps<typeof _MasterDetailLayout>>;
6
7
  /**
7
- * Compares two sets of React children to detect meaningful changes, ignoring text nodes.
8
- * Compares by component type and key.
8
+ * `MasterDetailLayout` is a React component for building UIs with a master
9
+ * (or primary) area and a detail (or secondary) area that is displayed next to, or
10
+ * overlaid on top of, the master area, depending on configuration and viewport size.
9
11
  *
10
- * @param prevChildren Previous children
11
- * @param nextChildren Current children
12
- * @returns True if the non-text children are meaningfully different, false otherwise
12
+ * Content for each area should be wrapped into to the respective
13
+ * `MasterDetailLayout.Master` and `MasterDetailLayout.Detail` wrapper components.
14
+ * Using any other component as a child will throw an error. To ensure that view
15
+ * transitions are run properly, details content should be rendered conditionally
16
+ * into the `MasterDetailLayout.Detail` component.
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * const selectedProduct = useSignal<Product | null>(null);
21
+ *
22
+ * <MasterDetailLayout>
23
+ * <MasterDetailLayout.Master>
24
+ * <ProductList onSelect={(product) => { selectedProduct.value = product }} />
25
+ * </MasterDetailLayout.Master>
26
+ * <MasterDetailLayout.Detail>
27
+ * { selectedProduct.value && <ProductDetail product={selectedProduct.value} /> }
28
+ * </MasterDetailLayout.Detail>
29
+ * </MasterDetailLayout>
30
+ * ```
13
31
  */
14
- export declare function areChildrenDifferent(prevChildren: React.ReactNode, nextChildren: React.ReactNode): boolean;
15
- declare const MasterDetailLayout: React.ComponentType<React.ComponentProps<typeof _MasterDetailLayout>> & {
32
+ declare const MasterDetailLayout: typeof MasterDetailLayoutWithValidation & {
16
33
  Master: React.FC<MasterProps>;
17
34
  Detail: React.FC<DetailProps>;
18
35
  };
@@ -1 +1 @@
1
- {"version":3,"file":"MasterDetailLayout.d.ts","sourceRoot":"","sources":["src/MasterDetailLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,IAAI,mBAAmB,EAE1C,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAuD,MAAM,OAAO,CAAC;AAE5E,cAAc,mCAAmC,CAAC;AAElD,KAAK,WAAW,GAAG,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAC/C,KAAK,WAAW,GAAG,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAW/C;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,SAAS,GAAG,OAAO,CA2B1G;AA0ED,QAAA,MAAM,kBAAkB,EAA0B,KAAK,CAAC,aAAa,CACnE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,CACjD,GAAG;IACF,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;IAC9B,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;CAC/B,CAAC;AAIF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"MasterDetailLayout.d.ts","sourceRoot":"","sources":["src/MasterDetailLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,IAAI,mBAAmB,EAE1C,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAuD,MAAM,OAAO,CAAC;AAE5E,cAAc,mCAAmC,CAAC;AAElD,KAAK,WAAW,GAAG,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAC/C,KAAK,WAAW,GAAG,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAoI/C,QAAA,MAAM,gCAAgC,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,CAIhG,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,QAAA,MAAM,kBAAkB,EAAuC,OAAO,gCAAgC,GAAG;IACvG,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;IAC9B,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;CAC/B,CAAC;AAKF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,2 +1,2 @@
1
- export*from"@vaadin/master-detail-layout/vaadin-master-detail-layout.js";import{MasterDetailLayout as C}from"@vaadin/master-detail-layout/vaadin-master-detail-layout.js";import*as E from"react";import{createComponent as R}from"./utils/createComponent.js";var v={},d=R({elementClass:C,events:v,react:E,tagName:"vaadin-master-detail-layout"});import l,{useEffect as L,useLayoutEffect as P,useRef as c,useState as m}from"react";import{Fragment as b,jsx as f,jsxs as g}from"react/jsx-runtime";function x({children:e}){return e}function T(e,r){let n=l.Children.toArray(e).filter(t=>l.isValidElement(t)),s=l.Children.toArray(r).filter(t=>l.isValidElement(t));if(n.length!==s.length)return!0;for(let t=0;t<n.length;t++){let a=n[t],o=s[t];if(a.type!==o.type||a.key!==o.key)return!0}return!1}function A({children:e}){let r=c(null),n=c(0),s=c(null),t=n.current+1,[a,o]=m("idle"),[p,y]=m(e);return P(()=>{let u=r.current?.closest("vaadin-master-detail-layout");if(u){if(a==="idle"){let i=r.current.childElementCount>0;r.current.setAttribute("slot",i?"detail":"detail-hidden")}else if(a==="starting"){let i=r.current.childElementCount>0,M=s.current.childElementCount>0,h=i&&M?"replace":i?"remove":"add";u._startTransition(h,()=>{o("ready"),y(e),n.current=t})}else if(a==="ready"){let i=r.current.childElementCount>0;r.current.setAttribute("slot",i?"detail":"detail-hidden"),u._finishTransition().then(()=>{o("idle")})}}},[a]),L(()=>{a==="idle"&&(T(p,e)?o("starting"):y(e))},[a,e]),g(b,{children:[f("div",{ref:r,style:{display:"contents"},children:p},n.current),a==="starting"&&f("div",{ref:s,style:{display:"none"},children:e},t)]})}var D=d;D.Master=x;D.Detail=A;export{D as MasterDetailLayout,C as MasterDetailLayoutElement,T as areChildrenDifferent};
1
+ export*from"@vaadin/master-detail-layout/vaadin-master-detail-layout.js";import{MasterDetailLayout as v}from"@vaadin/master-detail-layout/vaadin-master-detail-layout.js";import*as L from"react";import{createComponent as R}from"./utils/createComponent.js";var P={onBackdropClick:"backdrop-click",onDetailEscapePress:"detail-escape-press"},m=R({elementClass:v,events:P,react:L,tagName:"vaadin-master-detail-layout"});import s,{useEffect as k,useLayoutEffect as x,useRef as p,useState as f}from"react";import{Fragment as A,jsx as d,jsxs as N}from"react/jsx-runtime";function D({children:t}){return t}function b(t,e){let n=s.Children.toArray(t).filter(a=>s.isValidElement(a)),l=s.Children.toArray(e).filter(a=>s.isValidElement(a));if(n.length!==l.length)return!0;for(let a=0;a<n.length;a++){let r=n[a],i=l[a];if(r.type!==i.type||r.key!==i.key)return!0}return!1}function M({children:t}){let e=p(null),n=p(0),l=p(null),a=n.current+1,[r,i]=f("idle"),[c,y]=f(t);return x(()=>{let u=e.current?.closest("vaadin-master-detail-layout");if(u){if(r==="idle"){let o=e.current.childElementCount>0;e.current.setAttribute("slot",o?"detail":"detail-hidden")}else if(r==="starting"){let o=e.current.childElementCount>0,E=l.current.childElementCount>0,C=o&&E?"replace":o?"remove":"add";u._startTransition(C,()=>{i("ready"),y(t),n.current=a})}else if(r==="ready"){let o=e.current.childElementCount>0;e.current.setAttribute("slot",o?"detail":"detail-hidden"),u._finishTransition().then(()=>{i("idle")})}}},[r,c]),k(()=>{r==="idle"&&(b(c,t)?i("starting"):y(t))},[r,t]),N(A,{children:[d("div",{ref:e,style:{display:"contents"},children:c},n.current),r==="starting"&&d("div",{ref:l,style:{display:"none"},children:t},a)]})}function _(t){s.Children.forEach(t,e=>{if(s.isValidElement(e)&&e.type!==D&&e.type!==M)throw new Error("Invalid child in MasterDetailLayout. Only <MasterDetailLayout.Master> and <MasterDetailLayout.Detail> components are allowed. Check the component docs for proper usage.")})}var g=t=>(_(t.children),d(m,{...t})),h=g;h.Master=D;h.Detail=M;export{h as MasterDetailLayout,v as MasterDetailLayoutElement};
2
2
  //# sourceMappingURL=MasterDetailLayout.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["src/MasterDetailLayout.tsx", "src/generated/MasterDetailLayout.ts"],
4
- "sourcesContent": ["export * from \"@vaadin/master-detail-layout/vaadin-master-detail-layout.js\";\nimport {\n MasterDetailLayout as _MasterDetailLayout,\n MasterDetailLayoutElement,\n} from './generated/MasterDetailLayout.js';\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nexport * from './generated/MasterDetailLayout.js';\n\ntype MasterProps = React.PropsWithChildren<{}>;\ntype DetailProps = React.PropsWithChildren<{}>;\n\ntype MasterDetailLayoutElementWithInternalAPI = MasterDetailLayoutElement & {\n _startTransition: (transitionType: 'add' | 'remove' | 'replace', callback: () => void) => void;\n _finishTransition: () => Promise<void>;\n};\n\nfunction Master({ children }: MasterProps) {\n return children;\n}\n\n/**\n * Compares two sets of React children to detect meaningful changes, ignoring text nodes.\n * Compares by component type and key.\n *\n * @param prevChildren Previous children\n * @param nextChildren Current children\n * @returns True if the non-text children are meaningfully different, false otherwise\n */\nexport function areChildrenDifferent(prevChildren: React.ReactNode, nextChildren: React.ReactNode): boolean {\n // Convert to arrays and filter out text nodes\n const prevArray = React.Children.toArray(prevChildren).filter((child) => React.isValidElement(child));\n const nextArray = React.Children.toArray(nextChildren).filter((child) => React.isValidElement(child));\n\n // If lengths are different, children have changed\n if (prevArray.length !== nextArray.length) {\n return true;\n }\n\n // Compare each element by type and key\n for (let i = 0; i < prevArray.length; i++) {\n const prevChild = prevArray[i] as React.ReactElement;\n const nextChild = nextArray[i] as React.ReactElement;\n\n // Compare by type\n if (prevChild.type !== nextChild.type) {\n return true;\n }\n\n // Compare by key (React.Children.toArray adds keys if missing)\n if (prevChild.key !== nextChild.key) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction Detail({ children }: DetailProps) {\n const currentDetailsRef = useRef<HTMLDivElement>(null);\n const currentDetailsKey = useRef<number>(0);\n const nextDetailsRef = useRef<HTMLDivElement>(null);\n const nextDetailsKey = currentDetailsKey.current + 1;\n const [state, setState] = useState('idle');\n const [currentChildren, setCurrentChildren] = useState(children);\n\n useLayoutEffect(() => {\n const layout = currentDetailsRef.current?.closest(\n 'vaadin-master-detail-layout',\n ) as MasterDetailLayoutElementWithInternalAPI;\n if (!layout) {\n return;\n }\n\n if (state === 'idle') {\n // No transition in progress\n // Just update slot name\n const hasChildren = currentDetailsRef.current!.childElementCount > 0;\n currentDetailsRef.current!.setAttribute('slot', hasChildren ? 'detail' : 'detail-hidden');\n } else if (state === 'starting') {\n // Transition is starting and old and (invisible) new details are rendered\n // Determine the transition type based on old and new detail contents\n const hasCurrentDetails = currentDetailsRef.current!.childElementCount > 0;\n const hasNextDetails = nextDetailsRef.current!.childElementCount > 0;\n const transitionType = hasCurrentDetails && hasNextDetails ? 'replace' : hasCurrentDetails ? 'remove' : 'add';\n // Start transition to capture old DOM state\n layout._startTransition(transitionType, () => {\n // Once old DOM state is captured, render with new details only\n setState('ready');\n setCurrentChildren(children);\n currentDetailsKey.current = nextDetailsKey;\n });\n } else if (state === 'ready') {\n // Transition is ready and new details are rendered\n // Update slot name to either show or hide the new details\n const hasChildren = currentDetailsRef.current!.childElementCount > 0;\n currentDetailsRef.current!.setAttribute('slot', hasChildren ? 'detail' : 'detail-hidden');\n // Finish transition to animate to new DOM state\n layout._finishTransition().then(() => {\n // Transition is finished, reset state\n setState('idle');\n });\n }\n }, [state]);\n\n useEffect(() => {\n if (state !== 'idle') {\n return;\n }\n if (areChildrenDifferent(currentChildren, children)) {\n setState('starting');\n } else {\n setCurrentChildren(children);\n }\n }, [state, children]);\n\n return (\n <>\n <div ref={currentDetailsRef} key={currentDetailsKey.current} style={{ display: 'contents' }}>\n {currentChildren}\n </div>\n {state === 'starting' && (\n <div ref={nextDetailsRef} key={nextDetailsKey} style={{ display: 'none' }}>\n {children}\n </div>\n )}\n </>\n );\n}\n\nconst MasterDetailLayout = _MasterDetailLayout as React.ComponentType<\n React.ComponentProps<typeof _MasterDetailLayout>\n> & {\n Master: React.FC<MasterProps>;\n Detail: React.FC<DetailProps>;\n};\nMasterDetailLayout.Master = Master;\nMasterDetailLayout.Detail = Detail;\n\nexport { MasterDetailLayout };\n", "import type {} from \"@lit/react\";\nimport { MasterDetailLayout as MasterDetailLayoutElement, } from \"@vaadin/master-detail-layout/vaadin-master-detail-layout.js\";\nimport * as React from \"react\";\nimport { createComponent, type WebComponentProps } from \"../utils/createComponent.js\";\nexport { MasterDetailLayoutElement, };\nexport type MasterDetailLayoutEventMap = Readonly<{}>;\nconst events = {} as MasterDetailLayoutEventMap;\nexport type MasterDetailLayoutProps = WebComponentProps<MasterDetailLayoutElement, MasterDetailLayoutEventMap>;\nexport const MasterDetailLayout = createComponent({\n elementClass: MasterDetailLayoutElement, events, react: React, tagName: \"vaadin-master-detail-layout\"\n});\n"],
5
- "mappings": "AAAA,WAAc,8DCCd,OAAS,sBAAsBA,MAAkC,8DACjE,UAAYC,MAAW,QACvB,OAAS,mBAAAC,MAA+C,6BAGxD,IAAMC,EAAS,CAAC,EAEHC,EAAqBC,EAAgB,CAC9C,aAAcC,EAA2B,OAAAH,EAAQ,MAAOI,EAAO,QAAS,6BAC5E,CAAC,EDLD,OAAOC,GAAS,aAAAC,EAAW,mBAAAC,EAAiB,UAAAC,EAAQ,YAAAC,MAAgB,QAgHhE,mBAAAC,EACE,OAAAC,EADF,QAAAC,MAAA,oBApGJ,SAASC,EAAO,CAAE,SAAAC,CAAS,EAAgB,CACzC,OAAOA,CACT,CAUO,SAASC,EAAqBC,EAA+BC,EAAwC,CAE1G,IAAMC,EAAYb,EAAM,SAAS,QAAQW,CAAY,EAAE,OAAQG,GAAUd,EAAM,eAAec,CAAK,CAAC,EAC9FC,EAAYf,EAAM,SAAS,QAAQY,CAAY,EAAE,OAAQE,GAAUd,EAAM,eAAec,CAAK,CAAC,EAGpG,GAAID,EAAU,SAAWE,EAAU,OACjC,MAAO,GAIT,QAASC,EAAI,EAAGA,EAAIH,EAAU,OAAQG,IAAK,CACzC,IAAMC,EAAYJ,EAAUG,CAAC,EACvBE,EAAYH,EAAUC,CAAC,EAQ7B,GALIC,EAAU,OAASC,EAAU,MAK7BD,EAAU,MAAQC,EAAU,IAC9B,MAAO,EAEX,CAEA,MAAO,EACT,CAEA,SAASC,EAAO,CAAE,SAAAV,CAAS,EAAgB,CACzC,IAAMW,EAAoBjB,EAAuB,IAAI,EAC/CkB,EAAoBlB,EAAe,CAAC,EACpCmB,EAAiBnB,EAAuB,IAAI,EAC5CoB,EAAiBF,EAAkB,QAAU,EAC7C,CAACG,EAAOC,CAAQ,EAAIrB,EAAS,MAAM,EACnC,CAACsB,EAAiBC,CAAkB,EAAIvB,EAASK,CAAQ,EAE/D,OAAAP,EAAgB,IAAM,CACpB,IAAM0B,EAASR,EAAkB,SAAS,QACxC,6BACF,EACA,GAAKQ,GAIL,GAAIJ,IAAU,OAAQ,CAGpB,IAAMK,EAAcT,EAAkB,QAAS,kBAAoB,EACnEA,EAAkB,QAAS,aAAa,OAAQS,EAAc,SAAW,eAAe,CAC1F,SAAWL,IAAU,WAAY,CAG/B,IAAMM,EAAoBV,EAAkB,QAAS,kBAAoB,EACnEW,EAAiBT,EAAe,QAAS,kBAAoB,EAC7DU,EAAiBF,GAAqBC,EAAiB,UAAYD,EAAoB,SAAW,MAExGF,EAAO,iBAAiBI,EAAgB,IAAM,CAE5CP,EAAS,OAAO,EAChBE,EAAmBlB,CAAQ,EAC3BY,EAAkB,QAAUE,CAC9B,CAAC,CACH,SAAWC,IAAU,QAAS,CAG5B,IAAMK,EAAcT,EAAkB,QAAS,kBAAoB,EACnEA,EAAkB,QAAS,aAAa,OAAQS,EAAc,SAAW,eAAe,EAExFD,EAAO,kBAAkB,EAAE,KAAK,IAAM,CAEpCH,EAAS,MAAM,CACjB,CAAC,CACH,EACF,EAAG,CAACD,CAAK,CAAC,EAEVvB,EAAU,IAAM,CACVuB,IAAU,SAGVd,EAAqBgB,EAAiBjB,CAAQ,EAChDgB,EAAS,UAAU,EAEnBE,EAAmBlB,CAAQ,EAE/B,EAAG,CAACe,EAAOf,CAAQ,CAAC,EAGlBF,EAAAF,EAAA,CACE,UAAAC,EAAC,OAAI,IAAKc,EAAmD,MAAO,CAAE,QAAS,UAAW,EACvF,SAAAM,GAD+BL,EAAkB,OAEpD,EACCG,IAAU,YACTlB,EAAC,OAAI,IAAKgB,EAAqC,MAAO,CAAE,QAAS,MAAO,EACrE,SAAAb,GAD4Bc,CAE/B,GAEJ,CAEJ,CAEA,IAAMU,EAAqBA,EAM3BA,EAAmB,OAASzB,EAC5ByB,EAAmB,OAASd",
6
- "names": ["MasterDetailLayoutElement", "React", "createComponent", "events", "MasterDetailLayout", "createComponent", "MasterDetailLayoutElement", "React", "React", "useEffect", "useLayoutEffect", "useRef", "useState", "Fragment", "jsx", "jsxs", "Master", "children", "areChildrenDifferent", "prevChildren", "nextChildren", "prevArray", "child", "nextArray", "i", "prevChild", "nextChild", "Detail", "currentDetailsRef", "currentDetailsKey", "nextDetailsRef", "nextDetailsKey", "state", "setState", "currentChildren", "setCurrentChildren", "layout", "hasChildren", "hasCurrentDetails", "hasNextDetails", "transitionType", "MasterDetailLayout"]
4
+ "sourcesContent": ["export * from \"@vaadin/master-detail-layout/vaadin-master-detail-layout.js\";\nimport {\n MasterDetailLayout as _MasterDetailLayout,\n MasterDetailLayoutElement,\n} from './generated/MasterDetailLayout.js';\nimport React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nexport * from './generated/MasterDetailLayout.js';\n\ntype MasterProps = React.PropsWithChildren<{}>;\ntype DetailProps = React.PropsWithChildren<{}>;\n\ntype MasterDetailLayoutElementWithInternalAPI = MasterDetailLayoutElement & {\n _startTransition: (transitionType: 'add' | 'remove' | 'replace', callback: () => void) => void;\n _finishTransition: () => Promise<void>;\n};\n\nfunction Master({ children }: MasterProps) {\n return children;\n}\n\n/**\n * Compares two sets of React children to detect meaningful changes, ignoring text nodes.\n * Compares by component type and key.\n *\n * @param prevChildren Previous children\n * @param nextChildren Current children\n * @returns True if the non-text children are meaningfully different, false otherwise\n */\nfunction areChildrenDifferent(prevChildren: React.ReactNode, nextChildren: React.ReactNode): boolean {\n // Convert to arrays and filter out text nodes\n const prevArray = React.Children.toArray(prevChildren).filter((child) => React.isValidElement(child));\n const nextArray = React.Children.toArray(nextChildren).filter((child) => React.isValidElement(child));\n\n // If lengths are different, children have changed\n if (prevArray.length !== nextArray.length) {\n return true;\n }\n\n // Compare each element by type and key\n for (let i = 0; i < prevArray.length; i++) {\n const prevChild = prevArray[i] as React.ReactElement;\n const nextChild = nextArray[i] as React.ReactElement;\n\n // Compare by type\n if (prevChild.type !== nextChild.type) {\n return true;\n }\n\n // Compare by key (React.Children.toArray adds keys if missing)\n if (prevChild.key !== nextChild.key) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction Detail({ children }: DetailProps) {\n const currentDetailsRef = useRef<HTMLDivElement>(null);\n const currentDetailsKey = useRef<number>(0);\n const nextDetailsRef = useRef<HTMLDivElement>(null);\n const nextDetailsKey = currentDetailsKey.current + 1;\n const [state, setState] = useState('idle');\n const [currentChildren, setCurrentChildren] = useState(children);\n\n useLayoutEffect(() => {\n const layout = currentDetailsRef.current?.closest(\n 'vaadin-master-detail-layout',\n ) as MasterDetailLayoutElementWithInternalAPI;\n if (!layout) {\n return;\n }\n\n if (state === 'idle') {\n // No transition in progress\n // Just update slot name\n const hasChildren = currentDetailsRef.current!.childElementCount > 0;\n currentDetailsRef.current!.setAttribute('slot', hasChildren ? 'detail' : 'detail-hidden');\n } else if (state === 'starting') {\n // Transition is starting and old and (invisible) new details are rendered\n // Determine the transition type based on old and new detail contents\n const hasCurrentDetails = currentDetailsRef.current!.childElementCount > 0;\n const hasNextDetails = nextDetailsRef.current!.childElementCount > 0;\n const transitionType = hasCurrentDetails && hasNextDetails ? 'replace' : hasCurrentDetails ? 'remove' : 'add';\n // Start transition to capture old DOM state\n layout._startTransition(transitionType, () => {\n // Once old DOM state is captured, render with new details only\n setState('ready');\n setCurrentChildren(children);\n currentDetailsKey.current = nextDetailsKey;\n });\n } else if (state === 'ready') {\n // Transition is ready and new details are rendered\n // Update slot name to either show or hide the new details\n const hasChildren = currentDetailsRef.current!.childElementCount > 0;\n currentDetailsRef.current!.setAttribute('slot', hasChildren ? 'detail' : 'detail-hidden');\n // Finish transition to animate to new DOM state\n layout._finishTransition().then(() => {\n // Transition is finished, reset state\n setState('idle');\n });\n }\n }, [state, currentChildren]);\n\n useEffect(() => {\n if (state !== 'idle') {\n return;\n }\n if (areChildrenDifferent(currentChildren, children)) {\n setState('starting');\n } else {\n setCurrentChildren(children);\n }\n }, [state, children]);\n\n return (\n <>\n <div ref={currentDetailsRef} key={currentDetailsKey.current} style={{ display: 'contents' }}>\n {currentChildren}\n </div>\n {state === 'starting' && (\n <div ref={nextDetailsRef} key={nextDetailsKey} style={{ display: 'none' }}>\n {children}\n </div>\n )}\n </>\n );\n}\n\nfunction validateChildren(children: React.ReactNode) {\n React.Children.forEach(children, (child) => {\n // Ignore non-React elements\n // We especially want to ignore text nodes to allow for whitespace resulting from formatting\n if (React.isValidElement(child) && child.type !== Master && child.type !== Detail) {\n throw new Error(\n 'Invalid child in MasterDetailLayout. Only <MasterDetailLayout.Master> and <MasterDetailLayout.Detail> components are allowed. Check the component docs for proper usage.',\n );\n }\n });\n}\n\nconst MasterDetailLayoutWithValidation: React.FC<React.ComponentProps<typeof _MasterDetailLayout>> = (props) => {\n validateChildren(props.children);\n\n return <_MasterDetailLayout {...props} />;\n};\n\n/**\n * `MasterDetailLayout` is a React component for building UIs with a master\n * (or primary) area and a detail (or secondary) area that is displayed next to, or\n * overlaid on top of, the master area, depending on configuration and viewport size.\n *\n * Content for each area should be wrapped into to the respective\n * `MasterDetailLayout.Master` and `MasterDetailLayout.Detail` wrapper components.\n * Using any other component as a child will throw an error. To ensure that view\n * transitions are run properly, details content should be rendered conditionally\n * into the `MasterDetailLayout.Detail` component.\n *\n * @example\n * ```tsx\n * const selectedProduct = useSignal<Product | null>(null);\n *\n * <MasterDetailLayout>\n * <MasterDetailLayout.Master>\n * <ProductList onSelect={(product) => { selectedProduct.value = product }} />\n * </MasterDetailLayout.Master>\n * <MasterDetailLayout.Detail>\n * { selectedProduct.value && <ProductDetail product={selectedProduct.value} /> }\n * </MasterDetailLayout.Detail>\n * </MasterDetailLayout>\n * ```\n */\nconst MasterDetailLayout = MasterDetailLayoutWithValidation as typeof MasterDetailLayoutWithValidation & {\n Master: React.FC<MasterProps>;\n Detail: React.FC<DetailProps>;\n};\n\nMasterDetailLayout.Master = Master;\nMasterDetailLayout.Detail = Detail;\n\nexport { MasterDetailLayout };\n", "import type { EventName } from \"@lit/react\";\nimport { MasterDetailLayout as MasterDetailLayoutElement, type MasterDetailLayoutEventMap as _MasterDetailLayoutEventMap, } from \"@vaadin/master-detail-layout/vaadin-master-detail-layout.js\";\nimport * as React from \"react\";\nimport { createComponent, type WebComponentProps } from \"../utils/createComponent.js\";\nexport { MasterDetailLayoutElement, };\nexport type MasterDetailLayoutEventMap = Readonly<{\n onBackdropClick: EventName<_MasterDetailLayoutEventMap[\"backdrop-click\"]>;\n onDetailEscapePress: EventName<_MasterDetailLayoutEventMap[\"detail-escape-press\"]>;\n}>;\nconst events = { onBackdropClick: \"backdrop-click\", onDetailEscapePress: \"detail-escape-press\" } as MasterDetailLayoutEventMap;\nexport type MasterDetailLayoutProps = WebComponentProps<MasterDetailLayoutElement, MasterDetailLayoutEventMap>;\nexport const MasterDetailLayout = createComponent({\n elementClass: MasterDetailLayoutElement, events, react: React, tagName: \"vaadin-master-detail-layout\"\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["MasterDetailLayoutElement", "React", "createComponent", "events", "MasterDetailLayout", "createComponent", "MasterDetailLayoutElement", "React", "React", "useEffect", "useLayoutEffect", "useRef", "useState", "Fragment", "jsx", "jsxs", "Master", "children", "areChildrenDifferent", "prevChildren", "nextChildren", "prevArray", "child", "nextArray", "i", "prevChild", "nextChild", "Detail", "currentDetailsRef", "currentDetailsKey", "nextDetailsRef", "nextDetailsKey", "state", "setState", "currentChildren", "setCurrentChildren", "layout", "hasChildren", "hasCurrentDetails", "hasNextDetails", "transitionType", "validateChildren", "MasterDetailLayoutWithValidation", "props", "MasterDetailLayout"]
7
7
  }
@@ -56,7 +56,6 @@
56
56
 
57
57
  :host([required]) [part='required-indicator']::after {
58
58
  content: var(--lumo-required-field-indicator, '\\2022');
59
- transition: opacity 0.2s;
60
59
  color: var(--lumo-required-field-indicator-color, var(--lumo-primary-text-color));
61
60
  position: absolute;
62
61
  right: 0;
@@ -0,0 +1,9 @@
1
+ import { Markdown as MarkdownElement } from "@vaadin/markdown/vaadin-markdown.js";
2
+ import * as React from "react";
3
+ import { type WebComponentProps } from "../utils/createComponent.js";
4
+ export * from "@vaadin/markdown/vaadin-markdown.js";
5
+ export { MarkdownElement, };
6
+ export type MarkdownEventMap = Readonly<{}>;
7
+ export type MarkdownProps = WebComponentProps<MarkdownElement, MarkdownEventMap>;
8
+ export declare const Markdown: (props: Partial<import("../utils/createComponent.js").ThemedWebComponentProps<MarkdownElement, Readonly<{}>>> & React.RefAttributes<MarkdownElement>) => React.ReactElement | null;
9
+ //# sourceMappingURL=Markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../src/generated/Markdown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAG,MAAM,qCAAqC,CAAC;AACnF,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACtF,cAAc,qCAAqC,CAAC;AACpD,OAAO,EAAE,eAAe,GAAG,CAAC;AAC5B,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;AACjF,eAAO,MAAM,QAAQ,oLAEnB,CAAC"}
@@ -1,9 +1,16 @@
1
- import { MasterDetailLayout as MasterDetailLayoutElement } from "@vaadin/master-detail-layout/vaadin-master-detail-layout.js";
1
+ import type { EventName } from "@lit/react";
2
+ import { MasterDetailLayout as MasterDetailLayoutElement, type MasterDetailLayoutEventMap as _MasterDetailLayoutEventMap } from "@vaadin/master-detail-layout/vaadin-master-detail-layout.js";
2
3
  import * as React from "react";
3
4
  import { type WebComponentProps } from "../utils/createComponent.js";
4
5
  export * from "@vaadin/master-detail-layout/vaadin-master-detail-layout.js";
5
6
  export { MasterDetailLayoutElement, };
6
- export type MasterDetailLayoutEventMap = Readonly<{}>;
7
+ export type MasterDetailLayoutEventMap = Readonly<{
8
+ onBackdropClick: EventName<_MasterDetailLayoutEventMap["backdrop-click"]>;
9
+ onDetailEscapePress: EventName<_MasterDetailLayoutEventMap["detail-escape-press"]>;
10
+ }>;
7
11
  export type MasterDetailLayoutProps = WebComponentProps<MasterDetailLayoutElement, MasterDetailLayoutEventMap>;
8
- export declare const MasterDetailLayout: (props: Partial<import("../utils/createComponent.js").ThemedWebComponentProps<MasterDetailLayoutElement, Readonly<{}>>> & React.RefAttributes<MasterDetailLayoutElement>) => React.ReactElement | null;
12
+ export declare const MasterDetailLayout: (props: Partial<import("../utils/createComponent.js").ThemedWebComponentProps<MasterDetailLayoutElement, Readonly<{
13
+ onBackdropClick: EventName<_MasterDetailLayoutEventMap["backdrop-click"]>;
14
+ onDetailEscapePress: EventName<_MasterDetailLayoutEventMap["detail-escape-press"]>;
15
+ }>>> & React.RefAttributes<MasterDetailLayoutElement>) => React.ReactElement | null;
9
16
  //# sourceMappingURL=MasterDetailLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MasterDetailLayout.d.ts","sourceRoot":"","sources":["../src/generated/MasterDetailLayout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,IAAI,yBAAyB,EAAG,MAAM,6DAA6D,CAAC;AAC/H,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACtF,cAAc,6DAA6D,CAAC;AAC5E,OAAO,EAAE,yBAAyB,GAAG,CAAC;AACtC,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;AAEtD,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,yBAAyB,EAAE,0BAA0B,CAAC,CAAC;AAC/G,eAAO,MAAM,kBAAkB,wMAE7B,CAAC"}
1
+ {"version":3,"file":"MasterDetailLayout.d.ts","sourceRoot":"","sources":["../src/generated/MasterDetailLayout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,kBAAkB,IAAI,yBAAyB,EAAE,KAAK,0BAA0B,IAAI,2BAA2B,EAAG,MAAM,6DAA6D,CAAC;AAC/L,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACtF,cAAc,6DAA6D,CAAC;AAC5E,OAAO,EAAE,yBAAyB,GAAG,CAAC;AACtC,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAAC;IAC9C,eAAe,EAAE,SAAS,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC1E,mBAAmB,EAAE,SAAS,CAAC,2BAA2B,CAAC,qBAAqB,CAAC,CAAC,CAAC;CACtF,CAAC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,yBAAyB,EAAE,0BAA0B,CAAC,CAAC;AAC/G,eAAO,MAAM,kBAAkB;qBALV,SAAS,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,CAAC;yBACpD,SAAS,CAAC,2BAA2B,CAAC,qBAAqB,CAAC,CAAC;mFAMpF,CAAC"}
package/index.d.ts CHANGED
@@ -9,12 +9,10 @@ export * from "./Button.js";
9
9
  export * from "./Card.js";
10
10
  export * from "./Checkbox.js";
11
11
  export * from "./CheckboxGroup.js";
12
- export * from "./ComboBoxLight.js";
13
12
  export * from "./ComboBox.js";
14
13
  export * from "./ConfirmDialog.js";
15
14
  export * from "./ContextMenu.js";
16
15
  export * from "./CustomField.js";
17
- export * from "./DatePickerLight.js";
18
16
  export * from "./DatePicker.js";
19
17
  export * from "./DateTimePicker.js";
20
18
  export * from "./DetailsSummary.js";
@@ -42,6 +40,7 @@ export * from "./Item.js";
42
40
  export * from "./ListBox.js";
43
41
  export * from "./LoginForm.js";
44
42
  export * from "./LoginOverlay.js";
43
+ export * from "./Markdown.js";
45
44
  export * from "./MasterDetailLayout.js";
46
45
  export * from "./MenuBar.js";
47
46
  export * from "./MessageInput.js";
package/index.js CHANGED
@@ -9,12 +9,10 @@ export * from "./Button.js";
9
9
  export * from "./Card.js";
10
10
  export * from "./Checkbox.js";
11
11
  export * from "./CheckboxGroup.js";
12
- export * from "./ComboBoxLight.js";
13
12
  export * from "./ComboBox.js";
14
13
  export * from "./ConfirmDialog.js";
15
14
  export * from "./ContextMenu.js";
16
15
  export * from "./CustomField.js";
17
- export * from "./DatePickerLight.js";
18
16
  export * from "./DatePicker.js";
19
17
  export * from "./DateTimePicker.js";
20
18
  export * from "./DetailsSummary.js";
@@ -42,6 +40,7 @@ export * from "./Item.js";
42
40
  export * from "./ListBox.js";
43
41
  export * from "./LoginForm.js";
44
42
  export * from "./LoginOverlay.js";
43
+ export * from "./Markdown.js";
45
44
  export * from "./MasterDetailLayout.js";
46
45
  export * from "./MenuBar.js";
47
46
  export * from "./MessageInput.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vaadin/react-components",
3
- "version": "24.8.0-alpha9",
3
+ "version": "25.0.0-alpha2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -27,66 +27,66 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@lit/react": "^1.0.7",
30
- "@vaadin/a11y-base": "24.8.0-alpha9",
31
- "@vaadin/accordion": "24.8.0-alpha9",
32
- "@vaadin/app-layout": "24.8.0-alpha9",
33
- "@vaadin/avatar": "24.8.0-alpha9",
34
- "@vaadin/avatar-group": "24.8.0-alpha9",
35
- "@vaadin/button": "24.8.0-alpha9",
36
- "@vaadin/card": "24.8.0-alpha9",
37
- "@vaadin/checkbox": "24.8.0-alpha9",
38
- "@vaadin/checkbox-group": "24.8.0-alpha9",
39
- "@vaadin/combo-box": "24.8.0-alpha9",
40
- "@vaadin/component-base": "24.8.0-alpha9",
41
- "@vaadin/confirm-dialog": "24.8.0-alpha9",
42
- "@vaadin/context-menu": "24.8.0-alpha9",
43
- "@vaadin/custom-field": "24.8.0-alpha9",
44
- "@vaadin/date-picker": "24.8.0-alpha9",
45
- "@vaadin/date-time-picker": "24.8.0-alpha9",
46
- "@vaadin/details": "24.8.0-alpha9",
47
- "@vaadin/dialog": "24.8.0-alpha9",
48
- "@vaadin/email-field": "24.8.0-alpha9",
49
- "@vaadin/field-base": "24.8.0-alpha9",
50
- "@vaadin/field-highlighter": "24.8.0-alpha9",
51
- "@vaadin/form-layout": "24.8.0-alpha9",
52
- "@vaadin/grid": "24.8.0-alpha9",
53
- "@vaadin/horizontal-layout": "24.8.0-alpha9",
54
- "@vaadin/icon": "24.8.0-alpha9",
55
- "@vaadin/icons": "24.8.0-alpha9",
56
- "@vaadin/input-container": "24.8.0-alpha9",
57
- "@vaadin/integer-field": "24.8.0-alpha9",
58
- "@vaadin/item": "24.8.0-alpha9",
59
- "@vaadin/list-box": "24.8.0-alpha9",
60
- "@vaadin/lit-renderer": "24.8.0-alpha9",
61
- "@vaadin/login": "24.8.0-alpha9",
62
- "@vaadin/master-detail-layout": "24.8.0-alpha9",
63
- "@vaadin/menu-bar": "24.8.0-alpha9",
64
- "@vaadin/message-input": "24.8.0-alpha9",
65
- "@vaadin/message-list": "24.8.0-alpha9",
66
- "@vaadin/multi-select-combo-box": "24.8.0-alpha9",
67
- "@vaadin/notification": "24.8.0-alpha9",
68
- "@vaadin/number-field": "24.8.0-alpha9",
69
- "@vaadin/overlay": "24.8.0-alpha9",
70
- "@vaadin/password-field": "24.8.0-alpha9",
71
- "@vaadin/popover": "24.8.0-alpha9",
72
- "@vaadin/progress-bar": "24.8.0-alpha9",
73
- "@vaadin/radio-group": "24.8.0-alpha9",
74
- "@vaadin/scroller": "24.8.0-alpha9",
75
- "@vaadin/select": "24.8.0-alpha9",
76
- "@vaadin/side-nav": "24.8.0-alpha9",
77
- "@vaadin/split-layout": "24.8.0-alpha9",
78
- "@vaadin/tabs": "24.8.0-alpha9",
79
- "@vaadin/tabsheet": "24.8.0-alpha9",
80
- "@vaadin/text-area": "24.8.0-alpha9",
81
- "@vaadin/text-field": "24.8.0-alpha9",
82
- "@vaadin/time-picker": "24.8.0-alpha9",
83
- "@vaadin/tooltip": "24.8.0-alpha9",
84
- "@vaadin/upload": "24.8.0-alpha9",
85
- "@vaadin/vaadin-lumo-styles": "24.8.0-alpha9",
86
- "@vaadin/vaadin-material-styles": "24.8.0-alpha9",
87
- "@vaadin/vaadin-themable-mixin": "24.8.0-alpha9",
88
- "@vaadin/vertical-layout": "24.8.0-alpha9",
89
- "@vaadin/virtual-list": "24.8.0-alpha9"
30
+ "@vaadin/a11y-base": "25.0.0-alpha2",
31
+ "@vaadin/accordion": "25.0.0-alpha2",
32
+ "@vaadin/app-layout": "25.0.0-alpha2",
33
+ "@vaadin/avatar": "25.0.0-alpha2",
34
+ "@vaadin/avatar-group": "25.0.0-alpha2",
35
+ "@vaadin/button": "25.0.0-alpha2",
36
+ "@vaadin/card": "25.0.0-alpha2",
37
+ "@vaadin/checkbox": "25.0.0-alpha2",
38
+ "@vaadin/checkbox-group": "25.0.0-alpha2",
39
+ "@vaadin/combo-box": "25.0.0-alpha2",
40
+ "@vaadin/component-base": "25.0.0-alpha2",
41
+ "@vaadin/confirm-dialog": "25.0.0-alpha2",
42
+ "@vaadin/context-menu": "25.0.0-alpha2",
43
+ "@vaadin/custom-field": "25.0.0-alpha2",
44
+ "@vaadin/date-picker": "25.0.0-alpha2",
45
+ "@vaadin/date-time-picker": "25.0.0-alpha2",
46
+ "@vaadin/details": "25.0.0-alpha2",
47
+ "@vaadin/dialog": "25.0.0-alpha2",
48
+ "@vaadin/email-field": "25.0.0-alpha2",
49
+ "@vaadin/field-base": "25.0.0-alpha2",
50
+ "@vaadin/field-highlighter": "25.0.0-alpha2",
51
+ "@vaadin/form-layout": "25.0.0-alpha2",
52
+ "@vaadin/grid": "25.0.0-alpha2",
53
+ "@vaadin/horizontal-layout": "25.0.0-alpha2",
54
+ "@vaadin/icon": "25.0.0-alpha2",
55
+ "@vaadin/icons": "25.0.0-alpha2",
56
+ "@vaadin/input-container": "25.0.0-alpha2",
57
+ "@vaadin/integer-field": "25.0.0-alpha2",
58
+ "@vaadin/item": "25.0.0-alpha2",
59
+ "@vaadin/list-box": "25.0.0-alpha2",
60
+ "@vaadin/lit-renderer": "25.0.0-alpha2",
61
+ "@vaadin/login": "25.0.0-alpha2",
62
+ "@vaadin/markdown": "25.0.0-alpha2",
63
+ "@vaadin/master-detail-layout": "25.0.0-alpha2",
64
+ "@vaadin/menu-bar": "25.0.0-alpha2",
65
+ "@vaadin/message-input": "25.0.0-alpha2",
66
+ "@vaadin/message-list": "25.0.0-alpha2",
67
+ "@vaadin/multi-select-combo-box": "25.0.0-alpha2",
68
+ "@vaadin/notification": "25.0.0-alpha2",
69
+ "@vaadin/number-field": "25.0.0-alpha2",
70
+ "@vaadin/overlay": "25.0.0-alpha2",
71
+ "@vaadin/password-field": "25.0.0-alpha2",
72
+ "@vaadin/popover": "25.0.0-alpha2",
73
+ "@vaadin/progress-bar": "25.0.0-alpha2",
74
+ "@vaadin/radio-group": "25.0.0-alpha2",
75
+ "@vaadin/scroller": "25.0.0-alpha2",
76
+ "@vaadin/select": "25.0.0-alpha2",
77
+ "@vaadin/side-nav": "25.0.0-alpha2",
78
+ "@vaadin/split-layout": "25.0.0-alpha2",
79
+ "@vaadin/tabs": "25.0.0-alpha2",
80
+ "@vaadin/tabsheet": "25.0.0-alpha2",
81
+ "@vaadin/text-area": "25.0.0-alpha2",
82
+ "@vaadin/text-field": "25.0.0-alpha2",
83
+ "@vaadin/time-picker": "25.0.0-alpha2",
84
+ "@vaadin/tooltip": "25.0.0-alpha2",
85
+ "@vaadin/upload": "25.0.0-alpha2",
86
+ "@vaadin/vaadin-lumo-styles": "25.0.0-alpha2",
87
+ "@vaadin/vaadin-themable-mixin": "25.0.0-alpha2",
88
+ "@vaadin/vertical-layout": "25.0.0-alpha2",
89
+ "@vaadin/virtual-list": "25.0.0-alpha2"
90
90
  },
91
91
  "author": "Vaadin Ltd.",
92
92
  "license": "Apache-2.0",
@@ -165,10 +165,6 @@
165
165
  "types": "./ComboBox.d.ts",
166
166
  "default": "./ComboBox.js"
167
167
  },
168
- "./ComboBoxLight.js": {
169
- "types": "./ComboBoxLight.d.ts",
170
- "default": "./ComboBoxLight.js"
171
- },
172
168
  "./ConfirmDialog.js": {
173
169
  "types": "./ConfirmDialog.d.ts",
174
170
  "default": "./ConfirmDialog.js"
@@ -185,10 +181,6 @@
185
181
  "types": "./DatePicker.d.ts",
186
182
  "default": "./DatePicker.js"
187
183
  },
188
- "./DatePickerLight.js": {
189
- "types": "./DatePickerLight.d.ts",
190
- "default": "./DatePickerLight.js"
191
- },
192
184
  "./DateTimePicker.js": {
193
185
  "types": "./DateTimePicker.d.ts",
194
186
  "default": "./DateTimePicker.js"
@@ -297,6 +289,10 @@
297
289
  "types": "./LoginOverlay.d.ts",
298
290
  "default": "./LoginOverlay.js"
299
291
  },
292
+ "./Markdown.js": {
293
+ "types": "./Markdown.d.ts",
294
+ "default": "./Markdown.js"
295
+ },
300
296
  "./MasterDetailLayout.js": {
301
297
  "types": "./MasterDetailLayout.d.ts",
302
298
  "default": "./MasterDetailLayout.js"
@@ -420,12 +416,10 @@
420
416
  "./Checkbox": "./Checkbox.js",
421
417
  "./CheckboxGroup": "./CheckboxGroup.js",
422
418
  "./ComboBox": "./ComboBox.js",
423
- "./ComboBoxLight": "./ComboBoxLight.js",
424
419
  "./ConfirmDialog": "./ConfirmDialog.js",
425
420
  "./ContextMenu": "./ContextMenu.js",
426
421
  "./CustomField": "./CustomField.js",
427
422
  "./DatePicker": "./DatePicker.js",
428
- "./DatePickerLight": "./DatePickerLight.js",
429
423
  "./DateTimePicker": "./DateTimePicker.js",
430
424
  "./Details": "./Details.js",
431
425
  "./DetailsSummary": "./DetailsSummary.js",
@@ -453,6 +447,7 @@
453
447
  "./ListBox": "./ListBox.js",
454
448
  "./LoginForm": "./LoginForm.js",
455
449
  "./LoginOverlay": "./LoginOverlay.js",
450
+ "./Markdown": "./Markdown.js",
456
451
  "./MasterDetailLayout": "./MasterDetailLayout.js",
457
452
  "./MenuBar": "./MenuBar.js",
458
453
  "./Message": "./Message.js",
@@ -494,16 +489,6 @@
494
489
  "./css/lumo/Typography.css": "./css/lumo/Typography.css",
495
490
  "./css/lumo/UserColors.css": "./css/lumo/UserColors.css",
496
491
  "./css/lumo/Utility.module.css": "./css/lumo/Utility.module.css",
497
- "./css/Material.css": "./css/Material.css",
498
- "./css/material/Color.css": "./css/material/Color.css",
499
- "./css/material/ColorBase.css": "./css/material/ColorBase.css",
500
- "./css/material/ColorDark.css": "./css/material/ColorDark.css",
501
- "./css/material/ColorLight.css": "./css/material/ColorLight.css",
502
- "./css/material/Font.css": "./css/material/Font.css",
503
- "./css/material/FontIcons.css": "./css/material/FontIcons.css",
504
- "./css/material/Shadow.css": "./css/material/Shadow.css",
505
- "./css/material/Typography.css": "./css/material/Typography.css",
506
- "./css/material/UserColors.css": "./css/material/UserColors.css",
507
492
  "./utils/createComponent.d.ts": "./utils/createComponent.d.ts",
508
493
  "./utils/createComponent.d.ts.map": "./utils/createComponent.d.ts.map",
509
494
  "./utils/createComponent.js": "./utils/createComponent.js",
@@ -1,2 +1,2 @@
1
- import{createComponent as n}from"@lit/react";window.Vaadin??={},window.Vaadin.registrations??=[],window.Vaadin.registrations.push({is:"@vaadin/react-components",version:"24.8.0-alpha9"});function s(e){const{elementClass:t}=e;return n("_properties"in t?{...e,elementClass:{name:t.name,prototype:{...t._properties,hidden:Boolean}}}:e)}export{s as createComponent};
1
+ import{createComponent as n}from"@lit/react";window.Vaadin??={},window.Vaadin.registrations??=[],window.Vaadin.registrations.push({is:"@vaadin/react-components",version:"25.0.0-alpha2"});function s(e){const{elementClass:t}=e;return n("_properties"in t?{...e,elementClass:{name:t.name,prototype:{...t._properties,hidden:Boolean}}}:e)}export{s as createComponent};
2
2
  //# sourceMappingURL=createComponent.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/utils/createComponent.ts"],
4
- "sourcesContent": ["import { createComponent as _createComponent, type EventName } from '@lit/react';\nimport type { ThemePropertyMixinClass } from '@vaadin/vaadin-themable-mixin/vaadin-theme-property-mixin.js';\nimport type React from 'react';\nimport type { RefAttributes } from 'react';\n\ndeclare const __VERSION__: string;\n\ndeclare global {\n interface VaadinRegistration {\n is: string;\n version: string;\n }\n\n interface Vaadin {\n registrations?: VaadinRegistration[];\n }\n\n interface Window {\n // @ts-expect-error: Different declaration from one of the dependencies.\n Vaadin?: Vaadin;\n }\n}\n\nwindow.Vaadin ??= {};\nwindow.Vaadin.registrations ??= [];\nwindow.Vaadin.registrations.push({\n is: '@vaadin/react-components',\n version: /* updated-by-script */ '24.8.0-alpha9',\n});\n\n// TODO: Remove when types from @lit-labs/react are exported\nexport type EventNames = Record<string, EventName | string>;\ntype Constructor<T> = { new (): T; name: string };\ntype PolymerConstructor<T> = Constructor<T> & { _properties: Record<string, unknown> };\ntype Options<I extends HTMLElement, E extends EventNames = {}> = Readonly<{\n displayName?: string;\n elementClass: Constructor<I> | PolymerConstructor<I>;\n events?: E;\n react: typeof window.React;\n tagName: string;\n}>;\n\n// A map of expected event listener types based on EventNames.\ntype EventListeners<R extends EventNames> = {\n [K in keyof R]?: R[K] extends EventName ? (e: R[K]['__eventType']) => void : (e: Event) => void;\n};\n\n// Props derived from custom element class. Currently has limitations of making\n// all properties optional and also surfaces life cycle methods in autocomplete.\n// TODO: LoginOverlay has \"autofocus\" property, so we add it back manually.\ntype ElementProps<I> = Partial<Omit<I, keyof HTMLElement>> & { autofocus?: boolean };\n\n// Acceptable props to the React component.\ntype ComponentProps<I, E extends EventNames = {}> = Omit<\n React.HTMLAttributes<I>,\n // Prefer type of provided event handler props or those on element over\n // built-in HTMLAttributes\n keyof E | keyof ElementProps<I>\n> &\n EventListeners<E> &\n ElementProps<I>;\n\nexport type ThemedWebComponentProps<\n I extends ThemePropertyMixinClass & HTMLElement,\n E extends EventNames = {},\n> = ComponentProps<I, E> & {\n /**\n * Attribute that can be used by the component to apply built-in style variants,\n * or to propagate its value to the sub-components in Shadow DOM.\n *\n * @see ThemePropertyMixinClass#_theme\n */\n theme?: string;\n};\n\ntype AllWebComponentProps<I extends HTMLElement, E extends EventNames = {}> = I extends ThemePropertyMixinClass\n ? ThemedWebComponentProps<I, E>\n : ComponentProps<I, E>;\n\nexport type WebComponentProps<I extends HTMLElement, E extends EventNames = {}> = Partial<AllWebComponentProps<I, E>>;\n\n// We need a separate declaration here; otherwise, the TypeScript fails into the\n// endless loop trying to resolve the typings.\nexport function createComponent<I extends HTMLElement, E extends EventNames = {}>(\n options: Options<I, E>,\n): (props: WebComponentProps<I, E> & RefAttributes<I>) => React.ReactElement | null;\n\nexport function createComponent<I extends HTMLElement, E extends EventNames = {}>(options: Options<I, E>): any {\n const { elementClass } = options;\n\n return _createComponent(\n '_properties' in elementClass\n ? {\n ...options,\n // TODO: improve or remove the Polymer workaround\n // 'createComponent' relies on key presence on the custom element class,\n // but Polymer defines properties on the prototype when the first element\n // is created. Workaround: pass a mock object with properties in\n // the prototype.\n elementClass: {\n // @ts-expect-error: it is a specific workaround for Polymer classes.\n name: elementClass.name,\n prototype: { ...elementClass._properties, hidden: Boolean },\n },\n }\n : options,\n );\n}\n"],
4
+ "sourcesContent": ["import { createComponent as _createComponent, type EventName } from '@lit/react';\nimport type { ThemePropertyMixinClass } from '@vaadin/vaadin-themable-mixin/vaadin-theme-property-mixin.js';\nimport type React from 'react';\nimport type { RefAttributes } from 'react';\n\ndeclare const __VERSION__: string;\n\ndeclare global {\n interface VaadinRegistration {\n is: string;\n version: string;\n }\n\n interface Vaadin {\n registrations?: VaadinRegistration[];\n }\n\n interface Window {\n // @ts-expect-error: Different declaration from one of the dependencies.\n Vaadin?: Vaadin;\n }\n}\n\nwindow.Vaadin ??= {};\nwindow.Vaadin.registrations ??= [];\nwindow.Vaadin.registrations.push({\n is: '@vaadin/react-components',\n version: /* updated-by-script */ '25.0.0-alpha2',\n});\n\n// TODO: Remove when types from @lit-labs/react are exported\nexport type EventNames = Record<string, EventName | string>;\ntype Constructor<T> = { new (): T; name: string };\ntype PolymerConstructor<T> = Constructor<T> & { _properties: Record<string, unknown> };\ntype Options<I extends HTMLElement, E extends EventNames = {}> = Readonly<{\n displayName?: string;\n elementClass: Constructor<I> | PolymerConstructor<I>;\n events?: E;\n react: typeof window.React;\n tagName: string;\n}>;\n\n// A map of expected event listener types based on EventNames.\ntype EventListeners<R extends EventNames> = {\n [K in keyof R]?: R[K] extends EventName ? (e: R[K]['__eventType']) => void : (e: Event) => void;\n};\n\n// Props derived from custom element class. Currently has limitations of making\n// all properties optional and also surfaces life cycle methods in autocomplete.\n// TODO: LoginOverlay has \"autofocus\" property, so we add it back manually.\ntype ElementProps<I> = Partial<Omit<I, keyof HTMLElement>> & { autofocus?: boolean };\n\n// Acceptable props to the React component.\ntype ComponentProps<I, E extends EventNames = {}> = Omit<\n React.HTMLAttributes<I>,\n // Prefer type of provided event handler props or those on element over\n // built-in HTMLAttributes\n keyof E | keyof ElementProps<I>\n> &\n EventListeners<E> &\n ElementProps<I>;\n\nexport type ThemedWebComponentProps<\n I extends ThemePropertyMixinClass & HTMLElement,\n E extends EventNames = {},\n> = ComponentProps<I, E> & {\n /**\n * Attribute that can be used by the component to apply built-in style variants,\n * or to propagate its value to the sub-components in Shadow DOM.\n *\n * @see ThemePropertyMixinClass#_theme\n */\n theme?: string;\n};\n\ntype AllWebComponentProps<I extends HTMLElement, E extends EventNames = {}> = I extends ThemePropertyMixinClass\n ? ThemedWebComponentProps<I, E>\n : ComponentProps<I, E>;\n\nexport type WebComponentProps<I extends HTMLElement, E extends EventNames = {}> = Partial<AllWebComponentProps<I, E>>;\n\n// We need a separate declaration here; otherwise, the TypeScript fails into the\n// endless loop trying to resolve the typings.\nexport function createComponent<I extends HTMLElement, E extends EventNames = {}>(\n options: Options<I, E>,\n): (props: WebComponentProps<I, E> & RefAttributes<I>) => React.ReactElement | null;\n\nexport function createComponent<I extends HTMLElement, E extends EventNames = {}>(options: Options<I, E>): any {\n const { elementClass } = options;\n\n return _createComponent(\n '_properties' in elementClass\n ? {\n ...options,\n // TODO: improve or remove the Polymer workaround\n // 'createComponent' relies on key presence on the custom element class,\n // but Polymer defines properties on the prototype when the first element\n // is created. Workaround: pass a mock object with properties in\n // the prototype.\n elementClass: {\n // @ts-expect-error: it is a specific workaround for Polymer classes.\n name: elementClass.name,\n prototype: { ...elementClass._properties, hidden: Boolean },\n },\n }\n : options,\n );\n}\n"],
5
5
  "mappings": "AAAA,OAAS,mBAAmBA,MAAwC,aAuBpE,OAAO,SAAW,CAAC,EACnB,OAAO,OAAO,gBAAkB,CAAC,EACjC,OAAO,OAAO,cAAc,KAAK,CAC/B,GAAI,2BACJ,QAAiC,eACnC,CAAC,EA2DM,SAASC,EAAkEC,EAA6B,CAC7G,KAAM,CAAE,aAAAC,CAAa,EAAID,EAEzB,OAAOF,EACL,gBAAiBG,EACb,CACE,GAAGD,EAMH,aAAc,CAEZ,KAAMC,EAAa,KACnB,UAAW,CAAE,GAAGA,EAAa,YAAa,OAAQ,OAAQ,CAC5D,CACF,EACAD,CACN,CACF",
6
6
  "names": ["_createComponent", "createComponent", "options", "elementClass"]
7
7
  }
@@ -1,11 +0,0 @@
1
- import type { ComboBoxDefaultItem } from '@vaadin/combo-box';
2
- import { type ComponentType, type ReactElement, type RefAttributes } from 'react';
3
- import { type ComboBoxLightElement, type ComboBoxLightProps as _ComboBoxLightProps } from './generated/ComboBoxLight.js';
4
- import type { ComboBoxReactRendererProps } from './renderers/combobox.js';
5
- export * from './generated/ComboBoxLight.js';
6
- export type ComboBoxLightProps<TItem> = Partial<Omit<_ComboBoxLightProps<TItem>, 'renderer'>> & Readonly<{
7
- renderer?: ComponentType<ComboBoxReactRendererProps<TItem>> | null;
8
- }>;
9
- declare const ForwardedComboBoxLight: <TItem = ComboBoxDefaultItem>(props: ComboBoxLightProps<TItem> & RefAttributes<ComboBoxLightElement<TItem>>) => ReactElement | null;
10
- export { ForwardedComboBoxLight as ComboBoxLight };
11
- //# sourceMappingURL=ComboBoxLight.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ComboBoxLight.d.ts","sourceRoot":"","sources":["src/ComboBoxLight.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,KAAK,aAAa,EAAc,KAAK,YAAY,EAAE,KAAK,aAAa,EAAqB,MAAM,OAAO,CAAC;AACjH,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,IAAI,mBAAmB,EAC/C,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAG1E,cAAc,8BAA8B,CAAC;AAE7C,MAAM,MAAM,kBAAkB,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC,GAC3F,QAAQ,CAAC;IACP,QAAQ,CAAC,EAAE,aAAa,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC;CACpE,CAAC,CAAC;AAgBL,QAAA,MAAM,sBAAsB,EAAgC,CAAC,KAAK,GAAG,mBAAmB,EACtF,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,KAC1E,YAAY,GAAG,IAAI,CAAC;AAEzB,OAAO,EAAE,sBAAsB,IAAI,aAAa,EAAE,CAAC"}
package/ComboBoxLight.js DELETED
@@ -1,2 +0,0 @@
1
- export*from"@vaadin/combo-box/vaadin-combo-box-light.js";import{forwardRef as d}from"react";import{ComboBoxLight as a}from"@vaadin/combo-box/vaadin-combo-box-light.js";import*as r from"react";import{createComponent as i}from"./utils/createComponent.js";var p={onValidated:"validated",onChange:"change",onCustomValueSet:"custom-value-set",onSelectedItemChanged:"selected-item-changed",onValueChanged:"value-changed",onInvalidChanged:"invalid-changed",onOpenedChanged:"opened-changed",onFilterChanged:"filter-changed"},o=i({elementClass:a,events:p,react:r,tagName:"vaadin-combo-box-light"});import{useModelRenderer as g}from"./renderers/useModelRenderer.js";import{jsxs as C}from"react/jsx-runtime";function h(e,t){let[n,m]=g(e.renderer);return C(o,{...e,ref:t,renderer:m,children:[e.children,n]})}var v=d(h);export{v as ComboBoxLight,a as ComboBoxLightElement};
2
- //# sourceMappingURL=ComboBoxLight.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["src/ComboBoxLight.tsx", "src/generated/ComboBoxLight.ts"],
4
- "sourcesContent": ["export * from \"@vaadin/combo-box/vaadin-combo-box-light.js\";\nimport type { ComboBoxDefaultItem } from '@vaadin/combo-box';\nimport { type ComponentType, forwardRef, type ReactElement, type RefAttributes, type ForwardedRef } from 'react';\nimport {\n ComboBoxLight as _ComboBoxLight,\n type ComboBoxLightElement,\n type ComboBoxLightProps as _ComboBoxLightProps,\n} from './generated/ComboBoxLight.js';\nimport type { ComboBoxReactRendererProps } from './renderers/combobox.js';\nimport { useModelRenderer } from './renderers/useModelRenderer.js';\n\nexport * from './generated/ComboBoxLight.js';\n\nexport type ComboBoxLightProps<TItem> = Partial<Omit<_ComboBoxLightProps<TItem>, 'renderer'>> &\n Readonly<{\n renderer?: ComponentType<ComboBoxReactRendererProps<TItem>> | null;\n }>;\n\nfunction ComboBoxLight<TItem = ComboBoxDefaultItem>(\n props: ComboBoxLightProps<TItem>,\n ref: ForwardedRef<ComboBoxLightElement<TItem>>,\n): ReactElement | null {\n const [portals, renderer] = useModelRenderer(props.renderer);\n\n return (\n <_ComboBoxLight<TItem> {...props} ref={ref} renderer={renderer}>\n {props.children}\n {portals}\n </_ComboBoxLight>\n );\n}\n\nconst ForwardedComboBoxLight = forwardRef(ComboBoxLight) as <TItem = ComboBoxDefaultItem>(\n props: ComboBoxLightProps<TItem> & RefAttributes<ComboBoxLightElement<TItem>>,\n) => ReactElement | null;\n\nexport { ForwardedComboBoxLight as ComboBoxLight };\n", "import type { EventName } from \"@lit/react\";\nimport { ComboBoxLight as ComboBoxLightElement, type ComboBoxLightEventMap as _ComboBoxLightEventMap, } from \"@vaadin/combo-box/vaadin-combo-box-light.js\";\nimport * as React from \"react\";\nimport { createComponent, type WebComponentProps } from \"../utils/createComponent.js\";\nexport { ComboBoxLightElement, };\nexport type ComboBoxLightEventMap<T1> = Readonly<{\n onValidated: EventName<_ComboBoxLightEventMap<T1>[\"validated\"]>;\n onChange: EventName<_ComboBoxLightEventMap<T1>[\"change\"]>;\n onCustomValueSet: EventName<_ComboBoxLightEventMap<T1>[\"custom-value-set\"]>;\n onSelectedItemChanged: EventName<_ComboBoxLightEventMap<T1>[\"selected-item-changed\"]>;\n onValueChanged: EventName<_ComboBoxLightEventMap<T1>[\"value-changed\"]>;\n onInvalidChanged: EventName<_ComboBoxLightEventMap<T1>[\"invalid-changed\"]>;\n onOpenedChanged: EventName<_ComboBoxLightEventMap<T1>[\"opened-changed\"]>;\n onFilterChanged: EventName<_ComboBoxLightEventMap<T1>[\"filter-changed\"]>;\n}>;\nconst events = { onValidated: \"validated\", onChange: \"change\", onCustomValueSet: \"custom-value-set\", onSelectedItemChanged: \"selected-item-changed\", onValueChanged: \"value-changed\", onInvalidChanged: \"invalid-changed\", onOpenedChanged: \"opened-changed\", onFilterChanged: \"filter-changed\" } as ComboBoxLightEventMap<any>;\nexport type ComboBoxLightProps<T1> = WebComponentProps<ComboBoxLightElement<T1>, ComboBoxLightEventMap<T1>>;\nexport const ComboBoxLight = createComponent({\n elementClass: ComboBoxLightElement, events, react: React, tagName: \"vaadin-combo-box-light\"\n}) as <T1>(props: ComboBoxLightProps<T1> & React.RefAttributes<ComboBoxLightElement<T1>>) => React.ReactElement | null;\n"],
5
- "mappings": "AAAA,WAAc,8CAEd,OAA6B,cAAAA,MAA4E,QCDzG,OAAS,iBAAiBC,MAAmF,8CAC7G,UAAYC,MAAW,QACvB,OAAS,mBAAAC,MAA+C,6BAYxD,IAAMC,EAAS,CAAE,YAAa,YAAa,SAAU,SAAU,iBAAkB,mBAAoB,sBAAuB,wBAAyB,eAAgB,gBAAiB,iBAAkB,kBAAmB,gBAAiB,iBAAkB,gBAAiB,gBAAiB,EAEnRC,EAAgBC,EAAgB,CACzC,aAAcC,EAAsB,OAAAH,EAAQ,MAAOI,EAAO,QAAS,wBACvE,CAAC,EDVD,OAAS,oBAAAC,MAAwB,kCAgB7B,eAAAC,MAAA,oBAPJ,SAASC,EACPC,EACAC,EACqB,CACrB,GAAM,CAACC,EAASC,CAAQ,EAAIN,EAAiBG,EAAM,QAAQ,EAE3D,OACEF,EAACC,EAAA,CAAuB,GAAGC,EAAO,IAAKC,EAAK,SAAUE,EACnD,UAAAH,EAAM,SACNE,GACH,CAEJ,CAEA,IAAME,EAAyBC,EAAWN,CAAa",
6
- "names": ["forwardRef", "ComboBoxLightElement", "React", "createComponent", "events", "ComboBoxLight", "createComponent", "ComboBoxLightElement", "React", "useModelRenderer", "jsxs", "ComboBoxLight", "props", "ref", "portals", "renderer", "ForwardedComboBoxLight", "forwardRef"]
7
- }
@@ -1,2 +0,0 @@
1
- export * from './generated/DatePickerLight.js';
2
- //# sourceMappingURL=DatePickerLight.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DatePickerLight.d.ts","sourceRoot":"","sources":["src/DatePickerLight.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC"}
@@ -1,2 +0,0 @@
1
- export*from"@vaadin/date-picker/vaadin-date-picker-light.js";import{DatePickerLight as e}from"@vaadin/date-picker/vaadin-date-picker-light.js";import*as t from"react";import{createComponent as a}from"./utils/createComponent.js";var n={onValidated:"validated",onChange:"change",onOpenedChanged:"opened-changed",onValueChanged:"value-changed",onInvalidChanged:"invalid-changed"},r=a({elementClass:e,events:n,react:t,tagName:"vaadin-date-picker-light"});export{r as DatePickerLight,e as DatePickerLightElement};
2
- //# sourceMappingURL=DatePickerLight.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["src/DatePickerLight.ts", "src/generated/DatePickerLight.ts"],
4
- "sourcesContent": ["export * from \"@vaadin/date-picker/vaadin-date-picker-light.js\";\nexport * from './generated/DatePickerLight.js';\n", "import type { EventName } from \"@lit/react\";\nimport { DatePickerLight as DatePickerLightElement, type DatePickerLightEventMap as _DatePickerLightEventMap, } from \"@vaadin/date-picker/vaadin-date-picker-light.js\";\nimport * as React from \"react\";\nimport { createComponent, type WebComponentProps } from \"../utils/createComponent.js\";\nexport { DatePickerLightElement, };\nexport type DatePickerLightEventMap = Readonly<{\n onValidated: EventName<_DatePickerLightEventMap[\"validated\"]>;\n onChange: EventName<_DatePickerLightEventMap[\"change\"]>;\n onOpenedChanged: EventName<_DatePickerLightEventMap[\"opened-changed\"]>;\n onValueChanged: EventName<_DatePickerLightEventMap[\"value-changed\"]>;\n onInvalidChanged: EventName<_DatePickerLightEventMap[\"invalid-changed\"]>;\n}>;\nconst events = { onValidated: \"validated\", onChange: \"change\", onOpenedChanged: \"opened-changed\", onValueChanged: \"value-changed\", onInvalidChanged: \"invalid-changed\" } as DatePickerLightEventMap;\nexport type DatePickerLightProps = WebComponentProps<DatePickerLightElement, DatePickerLightEventMap>;\nexport const DatePickerLight = createComponent({\n elementClass: DatePickerLightElement, events, react: React, tagName: \"vaadin-date-picker-light\"\n});\n"],
5
- "mappings": "AAAA,WAAc,kDCCd,OAAS,mBAAmBA,MAAyF,kDACrH,UAAYC,MAAW,QACvB,OAAS,mBAAAC,MAA+C,6BASxD,IAAMC,EAAS,CAAE,YAAa,YAAa,SAAU,SAAU,gBAAiB,iBAAkB,eAAgB,gBAAiB,iBAAkB,iBAAkB,EAE1JC,EAAkBC,EAAgB,CAC3C,aAAcC,EAAwB,OAAAH,EAAQ,MAAOI,EAAO,QAAS,0BACzE,CAAC",
6
- "names": ["DatePickerLightElement", "React", "createComponent", "events", "DatePickerLight", "createComponent", "DatePickerLightElement", "React"]
7
- }
package/css/Material.css DELETED
@@ -1,13 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
- @import url(./material/FontIcons.css);
4
-
5
- @import url(./material/ColorBase.css);
6
-
7
- @import url(./material/Font.css);
8
-
9
- @import url(./material/Typography.css);
10
-
11
- @import url(./material/Shadow.css);
12
-
13
- @import url(./material/UserColors.css);
@@ -1,7 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
- @import url(./ColorLight.css);
4
-
5
- @import url(./ColorDark.css);
6
-
7
- @import url(./ColorBase.css);
@@ -1,26 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- html {
5
- /* Text colors */
6
- --material-body-text-color: var(--light-theme-text-color, rgba(0, 0, 0, 0.87));
7
- --material-secondary-text-color: var(--light-theme-secondary-color, rgba(0, 0, 0, 0.54));
8
- --material-disabled-text-color: var(--light-theme-disabled-color, rgba(0, 0, 0, 0.38));
9
-
10
- /* Primary colors */
11
- --material-primary-color: var(--primary-color, #6200ee);
12
- --material-primary-contrast-color: var(--dark-theme-base-color, #fff);
13
- --material-primary-text-color: var(--material-primary-color);
14
-
15
- /* Error colors */
16
- --material-error-color: var(--error-color, #b00020);
17
- --material-error-text-color: var(--material-error-color);
18
-
19
- /* Background colors */
20
- --material-background-color: var(--light-theme-background-color, #fff);
21
- --material-secondary-background-color: var(--light-theme-secondary-background-color, #f5f5f5);
22
- --material-disabled-color: rgba(0, 0, 0, 0.26);
23
-
24
- /* Divider colors */
25
- --material-divider-color: rgba(0, 0, 0, 0.12);
26
- }
@@ -1,47 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- html {
5
- /* Text colors */
6
- --material-body-text-color: var(--dark-theme-text-color, rgba(255, 255, 255, 1));
7
- --material-secondary-text-color: var(--dark-theme-secondary-color, rgba(255, 255, 255, 0.7));
8
- --material-disabled-text-color: var(--dark-theme-disabled-color, rgba(255, 255, 255, 0.5));
9
-
10
- /* Primary colors */
11
- --material-primary-color: var(--light-primary-color, #7e3ff2);
12
- --material-primary-text-color: #b794f6;
13
-
14
- /* Error colors */
15
- --material-error-color: var(--error-color, #de2839);
16
- --material-error-text-color: var(--material-error-color);
17
-
18
- /* Background colors */
19
- --material-background-color: var(--dark-theme-background-color, #303030);
20
- --material-secondary-background-color: var(--dark-theme-secondary-background-color, #3b3b3b);
21
- --material-disabled-color: rgba(255, 255, 255, 0.3);
22
-
23
- /* Divider colors */
24
- --material-divider-color: rgba(255, 255, 255, 0.12);
25
-
26
- /* Undocumented internal properties (prefixed with three dashes) */
27
-
28
- /* Text field tweaks */
29
- --_material-text-field-input-line-background-color: #fff;
30
- --_material-text-field-input-line-opacity: 0.7;
31
- --_material-text-field-input-line-hover-opacity: 1;
32
- --_material-text-field-focused-label-opacity: 1;
33
-
34
- /* Button tweaks */
35
- --_material-button-raised-background-color: rgba(255, 255, 255, 0.08);
36
- --_material-button-outline-color: rgba(255, 255, 255, 0.2);
37
-
38
- /* Grid tweaks */
39
- --_material-grid-row-hover-background-color: rgba(255, 255, 255, 0.08);
40
- --_material-grid-row-selected-overlay-opacity: 0.16;
41
-
42
- /* Split layout tweaks */
43
- --_material-split-layout-splitter-background-color: rgba(255, 255, 255, 0.8);
44
-
45
- background-color: var(--material-background-color);
46
- color: var(--material-body-text-color);
47
- }
@@ -1,96 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- html {
5
- /* Text colors */
6
- --material-body-text-color: var(--light-theme-text-color, rgba(0, 0, 0, 0.87));
7
- --material-secondary-text-color: var(--light-theme-secondary-color, rgba(0, 0, 0, 0.54));
8
- --material-disabled-text-color: var(--light-theme-disabled-color, rgba(0, 0, 0, 0.38));
9
-
10
- /* Primary colors */
11
- --material-primary-color: var(--primary-color, #6200ee);
12
- --material-primary-contrast-color: var(--dark-theme-base-color, #fff);
13
- --material-primary-text-color: var(--material-primary-color);
14
-
15
- /* Error colors */
16
- --material-error-color: var(--error-color, #b00020);
17
- --material-error-text-color: var(--material-error-color);
18
-
19
- /* Background colors */
20
- --material-background-color: var(--light-theme-background-color, #fff);
21
- --material-secondary-background-color: var(--light-theme-secondary-background-color, #f5f5f5);
22
- --material-disabled-color: rgba(0, 0, 0, 0.26);
23
-
24
- /* Divider colors */
25
- --material-divider-color: rgba(0, 0, 0, 0.12);
26
-
27
- /* Undocumented internal properties (prefixed with three dashes) */
28
-
29
- /* Text field tweaks */
30
- --_material-text-field-input-line-background-color: initial;
31
- --_material-text-field-input-line-opacity: initial;
32
- --_material-text-field-input-line-hover-opacity: initial;
33
- --_material-text-field-focused-label-opacity: initial;
34
-
35
- /* Button tweaks */
36
- --_material-button-raised-background-color: initial;
37
- --_material-button-outline-color: initial;
38
-
39
- /* Grid tweaks */
40
- --_material-grid-row-hover-background-color: initial;
41
-
42
- /* Split layout tweaks */
43
- --_material-split-layout-splitter-background-color: initial;
44
-
45
- background-color: var(--material-background-color);
46
- color: var(--material-body-text-color);
47
- }
48
-
49
- [theme~='dark'] {
50
- /* Text colors */
51
- --material-body-text-color: var(--dark-theme-text-color, rgba(255, 255, 255, 1));
52
- --material-secondary-text-color: var(--dark-theme-secondary-color, rgba(255, 255, 255, 0.7));
53
- --material-disabled-text-color: var(--dark-theme-disabled-color, rgba(255, 255, 255, 0.5));
54
-
55
- /* Primary colors */
56
- --material-primary-color: var(--light-primary-color, #7e3ff2);
57
- --material-primary-text-color: #b794f6;
58
-
59
- /* Error colors */
60
- --material-error-color: var(--error-color, #de2839);
61
- --material-error-text-color: var(--material-error-color);
62
-
63
- /* Background colors */
64
- --material-background-color: var(--dark-theme-background-color, #303030);
65
- --material-secondary-background-color: var(--dark-theme-secondary-background-color, #3b3b3b);
66
- --material-disabled-color: rgba(255, 255, 255, 0.3);
67
-
68
- /* Divider colors */
69
- --material-divider-color: rgba(255, 255, 255, 0.12);
70
-
71
- /* Undocumented internal properties (prefixed with three dashes) */
72
-
73
- /* Text field tweaks */
74
- --_material-text-field-input-line-background-color: #fff;
75
- --_material-text-field-input-line-opacity: 0.7;
76
- --_material-text-field-input-line-hover-opacity: 1;
77
- --_material-text-field-focused-label-opacity: 1;
78
-
79
- /* Button tweaks */
80
- --_material-button-raised-background-color: rgba(255, 255, 255, 0.08);
81
- --_material-button-outline-color: rgba(255, 255, 255, 0.2);
82
-
83
- /* Grid tweaks */
84
- --_material-grid-row-hover-background-color: rgba(255, 255, 255, 0.08);
85
- --_material-grid-row-selected-overlay-opacity: 0.16;
86
-
87
- /* Split layout tweaks */
88
- --_material-split-layout-splitter-background-color: rgba(255, 255, 255, 0.8);
89
-
90
- background-color: var(--material-background-color);
91
- color: var(--material-body-text-color);
92
- }
93
-
94
- a {
95
- color: inherit;
96
- }
@@ -1,22 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- html {
5
- /* Font family */
6
- --material-font-family: 'Roboto', sans-serif;
7
-
8
- /* Font sizes */
9
- --material-h1-font-size: 6rem;
10
- --material-h2-font-size: 3.75rem;
11
- --material-h3-font-size: 3rem;
12
- --material-h4-font-size: 2.125rem;
13
- --material-h5-font-size: 1.5rem;
14
- --material-h6-font-size: 1.25rem;
15
- --material-body-font-size: 1rem;
16
- --material-small-font-size: 0.875rem;
17
- --material-button-font-size: 0.875rem;
18
- --material-caption-font-size: 0.75rem;
19
-
20
- /* Icon size */
21
- --material-icon-font-size: 20px;
22
- }
@@ -1,28 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- @font-face {
5
- font-family: 'material-icons';
6
- src: url(data:application/font-woff;charset=utf-8;base64,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)
7
- format('woff');
8
- font-weight: normal;
9
- font-style: normal;
10
- }
11
-
12
- html {
13
- --material-icons-arrow-downward: '\ea01';
14
- --material-icons-arrow-upward: '\ea02';
15
- --material-icons-calendar: '\ea03';
16
- --material-icons-check: '\ea04';
17
- --material-icons-chevron-left: '\ea05';
18
- --material-icons-chevron-right: '\ea06';
19
- --material-icons-clear: '\ea07';
20
- --material-icons-clock: '\ea08';
21
- --material-icons-dropdown: '\ea09';
22
- --material-icons-error: '\ea0a';
23
- --material-icons-eye: '\ea0b';
24
- --material-icons-eye-disabled: '\ea0c';
25
- --material-icons-play: '\ea0d';
26
- --material-icons-reload: '\ea0e';
27
- --material-icons-upload: '\ea0f';
28
- }
@@ -1,15 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- /* prettier-ignore */
5
- html {
6
- /* from http://codepen.io/shyndman/pen/c5394ddf2e8b2a5c9185904b57421cdb */
7
- --material-shadow-elevation-2dp: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
8
- --material-shadow-elevation-3dp: 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 1px 8px 0 rgba(0, 0, 0, 0.12), 0 3px 3px -2px rgba(0, 0, 0, 0.4);
9
- --material-shadow-elevation-4dp: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.4);
10
- --material-shadow-elevation-6dp: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.4);
11
- --material-shadow-elevation-8dp: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.4);
12
- --material-shadow-elevation-12dp: 0 12px 16px 1px rgba(0, 0, 0, 0.14), 0 4px 22px 3px rgba(0, 0, 0, 0.12), 0 6px 7px -4px rgba(0, 0, 0, 0.4);
13
- --material-shadow-elevation-16dp: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.4);
14
- --material-shadow-elevation-24dp: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.4);
15
- }
@@ -1,80 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
- @import url(./Font.css);
4
-
5
-
6
- body,
7
- html {
8
- font-family: var(--material-font-family);
9
- font-size: var(--material-body-font-size);
10
- line-height: 1.4;
11
- -webkit-text-size-adjust: 100%;
12
- -webkit-font-smoothing: antialiased;
13
- -moz-osx-font-smoothing: grayscale;
14
- }
15
-
16
- h1,
17
- h2,
18
- h3,
19
- h4,
20
- h5,
21
- h6 {
22
- color: inherit;
23
- line-height: 1.1;
24
- margin-top: 1.5em;
25
- }
26
-
27
- h1 {
28
- font-size: var(--material-h3-font-size);
29
- font-weight: 300;
30
- letter-spacing: -0.015em;
31
- margin-bottom: 1em;
32
- text-indent: -0.07em;
33
- }
34
-
35
- h2 {
36
- font-size: var(--material-h4-font-size);
37
- font-weight: 300;
38
- letter-spacing: -0.01em;
39
- margin-bottom: 0.75em;
40
- text-indent: -0.07em;
41
- }
42
-
43
- h3 {
44
- font-size: var(--material-h5-font-size);
45
- font-weight: 400;
46
- margin-bottom: 0.75em;
47
- text-indent: -0.05em;
48
- }
49
-
50
- h4 {
51
- font-size: var(--material-h6-font-size);
52
- font-weight: 400;
53
- letter-spacing: 0.01em;
54
- margin-bottom: 0.75em;
55
- text-indent: -0.05em;
56
- }
57
-
58
- h5 {
59
- font-size: var(--material-body-font-size);
60
- font-weight: 500;
61
- margin-bottom: 0.5em;
62
- text-indent: -0.025em;
63
- }
64
-
65
- h6 {
66
- font-size: var(--material-small-font-size);
67
- font-weight: 500;
68
- letter-spacing: 0.01em;
69
- margin-bottom: 0.25em;
70
- text-indent: -0.025em;
71
- }
72
-
73
- a,
74
- b,
75
- strong {
76
- font-weight: 500;
77
- }
78
-
79
- @import url(https://fonts.googleapis.com/css?family=Roboto+Mono:400,700|Roboto:400,300,300italic,400italic,500,500italic,700,700italic);
80
- @import url(https://fonts.googleapis.com/css?family=Roboto+Mono:400,700|Roboto:400,300,300italic,400italic,500,500italic,700,700italic);
@@ -1,22 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- html {
5
- --vaadin-user-color-0: #ab47bc;
6
- --vaadin-user-color-1: #546e7a;
7
- --vaadin-user-color-2: #2e7d32;
8
- --vaadin-user-color-3: #6d4c41;
9
- --vaadin-user-color-4: #1976d2;
10
- --vaadin-user-color-5: #00838f;
11
- --vaadin-user-color-6: #827717;
12
- }
13
-
14
- [theme~='dark'] {
15
- --vaadin-user-color-0: #9fa8da;
16
- --vaadin-user-color-1: #00bcd4;
17
- --vaadin-user-color-2: #ffeb3b;
18
- --vaadin-user-color-3: #a1887f;
19
- --vaadin-user-color-4: #2196f3;
20
- --vaadin-user-color-5: #4caf50;
21
- --vaadin-user-color-6: #ff9800;
22
- }
@@ -1,34 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- [part$='button'] {
5
- flex: none;
6
- width: 24px;
7
- height: 24px;
8
- padding: 4px;
9
- color: var(--material-secondary-text-color);
10
- font-size: var(--material-icon-font-size);
11
- line-height: 24px;
12
- text-align: center;
13
- }
14
-
15
- html(:not([readonly])) [part$='button'] {
16
- cursor: pointer;
17
- }
18
-
19
- :host(:not([readonly])) [part$='button']:hover {
20
- color: var(--material-text-color);
21
- }
22
-
23
- :host([disabled]) [part$='button'],
24
- :host([readonly]) [part$='button'] {
25
- color: var(--material-disabled-text-color);
26
- }
27
-
28
- :host([disabled]) [part='clear-button'] {
29
- display: none;
30
- }
31
-
32
- [part$='button']::before {
33
- font-family: 'material-icons';
34
- }
@@ -1,36 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- html {
5
- top: 16px;
6
- right: 16px;
7
- /* TODO (@jouni): remove unnecessary multiplication after https://github.com/vaadin/vaadin-overlay/issues/90 is fixed */
8
- bottom: calc(1px * var(--vaadin-overlay-viewport-bottom) + 16px);
9
- left: 16px;
10
- }
11
-
12
- [part='overlay'] {
13
- background-color: var(--material-background-color);
14
- border-radius: 4px;
15
- box-shadow: var(--material-shadow-elevation-4dp);
16
- color: var(--material-body-text-color);
17
- font-family: var(--material-font-family);
18
- font-size: var(--material-body-font-size);
19
- font-weight: 400;
20
- }
21
-
22
- [part='content'] {
23
- padding: 8px 0;
24
- }
25
-
26
- [part='backdrop'] {
27
- opacity: 0.2;
28
- animation: 0.2s vaadin-overlay-backdrop-enter;
29
- will-change: opacity;
30
- }
31
-
32
- @keyframes vaadin-overlay-backdrop-enter {
33
- 0% {
34
- opacity: 0;
35
- }
36
- }
@@ -1,60 +0,0 @@
1
- /* Generated file, do not edit */
2
-
3
-
4
- [part='label'] {
5
- display: block;
6
- position: absolute;
7
- top: 8px;
8
- font-size: 1em;
9
- line-height: 1;
10
- height: 20px;
11
- margin-bottom: -4px;
12
- white-space: nowrap;
13
- overflow-x: hidden;
14
- text-overflow: ellipsis;
15
- color: var(--material-secondary-text-color);
16
- transform-origin: 0 75%;
17
- transform: scale(0.75);
18
- }
19
-
20
- html([required]) [part='required-indicator']::after {
21
- content: ' *';
22
- color: inherit;
23
- }
24
-
25
- :host([invalid]) [part='label'] {
26
- color: var(--material-error-text-color);
27
- }
28
-
29
- [part='error-message'] {
30
- font-size: 0.75em;
31
- line-height: 1;
32
- color: var(--material-error-text-color);
33
- }
34
-
35
- :host([has-error-message]) [part='error-message']::before {
36
- content: '';
37
- display: block;
38
- height: 6px;
39
- }
40
-
41
- :host(:not([invalid])) [part='error-message'] {
42
- margin-top: 0;
43
- max-height: 0;
44
- overflow: hidden;
45
- }
46
-
47
- :host([invalid]) [part='error-message'] {
48
- animation: reveal 0.2s;
49
- }
50
-
51
- @keyframes reveal {
52
- 0% {
53
- opacity: 0;
54
- }
55
- }
56
-
57
- /* RTL specific styles */
58
- :host([dir='rtl']) [part='label'] {
59
- transform-origin: 100% 75%;
60
- }
@@ -1,19 +0,0 @@
1
- import type { EventName } from "@lit/react";
2
- import { ComboBoxLight as ComboBoxLightElement, type ComboBoxLightEventMap as _ComboBoxLightEventMap } from "@vaadin/combo-box/vaadin-combo-box-light.js";
3
- import * as React from "react";
4
- import { type WebComponentProps } from "../utils/createComponent.js";
5
- export * from "@vaadin/combo-box/vaadin-combo-box-light.js";
6
- export { ComboBoxLightElement, };
7
- export type ComboBoxLightEventMap<T1> = Readonly<{
8
- onValidated: EventName<_ComboBoxLightEventMap<T1>["validated"]>;
9
- onChange: EventName<_ComboBoxLightEventMap<T1>["change"]>;
10
- onCustomValueSet: EventName<_ComboBoxLightEventMap<T1>["custom-value-set"]>;
11
- onSelectedItemChanged: EventName<_ComboBoxLightEventMap<T1>["selected-item-changed"]>;
12
- onValueChanged: EventName<_ComboBoxLightEventMap<T1>["value-changed"]>;
13
- onInvalidChanged: EventName<_ComboBoxLightEventMap<T1>["invalid-changed"]>;
14
- onOpenedChanged: EventName<_ComboBoxLightEventMap<T1>["opened-changed"]>;
15
- onFilterChanged: EventName<_ComboBoxLightEventMap<T1>["filter-changed"]>;
16
- }>;
17
- export type ComboBoxLightProps<T1> = WebComponentProps<ComboBoxLightElement<T1>, ComboBoxLightEventMap<T1>>;
18
- export declare const ComboBoxLight: <T1>(props: ComboBoxLightProps<T1> & React.RefAttributes<ComboBoxLightElement<T1>>) => React.ReactElement | null;
19
- //# sourceMappingURL=ComboBoxLight.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ComboBoxLight.d.ts","sourceRoot":"","sources":["../src/generated/ComboBoxLight.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,aAAa,IAAI,oBAAoB,EAAE,KAAK,qBAAqB,IAAI,sBAAsB,EAAG,MAAM,6CAA6C,CAAC;AAC3J,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACtF,cAAc,6CAA6C,CAAC;AAC5D,OAAO,EAAE,oBAAoB,GAAG,CAAC;AACjC,MAAM,MAAM,qBAAqB,CAAC,EAAE,IAAI,QAAQ,CAAC;IAC7C,WAAW,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAChE,QAAQ,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,gBAAgB,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC5E,qBAAqB,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACtF,cAAc,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IACvE,gBAAgB,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3E,eAAe,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACzE,eAAe,EAAE,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;CAC5E,CAAC,CAAC;AAEH,MAAM,MAAM,kBAAkB,CAAC,EAAE,IAAI,iBAAiB,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5G,eAAO,MAAM,aAAa,EAEpB,CAAC,EAAE,EAAE,KAAK,EAAE,kBAAkB,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC"}
@@ -1,22 +0,0 @@
1
- import type { EventName } from "@lit/react";
2
- import { DatePickerLight as DatePickerLightElement, type DatePickerLightEventMap as _DatePickerLightEventMap } from "@vaadin/date-picker/vaadin-date-picker-light.js";
3
- import * as React from "react";
4
- import { type WebComponentProps } from "../utils/createComponent.js";
5
- export * from "@vaadin/date-picker/vaadin-date-picker-light.js";
6
- export { DatePickerLightElement, };
7
- export type DatePickerLightEventMap = Readonly<{
8
- onValidated: EventName<_DatePickerLightEventMap["validated"]>;
9
- onChange: EventName<_DatePickerLightEventMap["change"]>;
10
- onOpenedChanged: EventName<_DatePickerLightEventMap["opened-changed"]>;
11
- onValueChanged: EventName<_DatePickerLightEventMap["value-changed"]>;
12
- onInvalidChanged: EventName<_DatePickerLightEventMap["invalid-changed"]>;
13
- }>;
14
- export type DatePickerLightProps = WebComponentProps<DatePickerLightElement, DatePickerLightEventMap>;
15
- export declare const DatePickerLight: (props: Partial<import("../utils/createComponent.js").ThemedWebComponentProps<DatePickerLightElement, Readonly<{
16
- onValidated: EventName<_DatePickerLightEventMap["validated"]>;
17
- onChange: EventName<_DatePickerLightEventMap["change"]>;
18
- onOpenedChanged: EventName<_DatePickerLightEventMap["opened-changed"]>;
19
- onValueChanged: EventName<_DatePickerLightEventMap["value-changed"]>;
20
- onInvalidChanged: EventName<_DatePickerLightEventMap["invalid-changed"]>;
21
- }>>> & React.RefAttributes<DatePickerLightElement>) => React.ReactElement | null;
22
- //# sourceMappingURL=DatePickerLight.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DatePickerLight.d.ts","sourceRoot":"","sources":["../src/generated/DatePickerLight.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,eAAe,IAAI,sBAAsB,EAAE,KAAK,uBAAuB,IAAI,wBAAwB,EAAG,MAAM,iDAAiD,CAAC;AACvK,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACtF,cAAc,iDAAiD,CAAC;AAChE,OAAO,EAAE,sBAAsB,GAAG,CAAC;AACnC,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;IAC3C,WAAW,EAAE,SAAS,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,QAAQ,EAAE,SAAS,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxD,eAAe,EAAE,SAAS,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACvE,cAAc,EAAE,SAAS,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC,CAAC;IACrE,gBAAgB,EAAE,SAAS,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC,CAAC;CAC5E,CAAC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC;AACtG,eAAO,MAAM,eAAe;iBARX,SAAS,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC;cACnD,SAAS,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;qBACtC,SAAS,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;oBACtD,SAAS,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC;sBAClD,SAAS,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;gFAM1E,CAAC"}