@solace-health/ui 0.10.529 → 0.10.531

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 (30) hide show
  1. package/README.md +2 -0
  2. package/dist/{chunk-XCOTNA3D.js → chunk-6SXJ2DFE.js} +2 -2
  3. package/dist/{chunk-XCOTNA3D.js.map → chunk-6SXJ2DFE.js.map} +1 -1
  4. package/dist/chunk-HTYMWSQE.cjs +2 -0
  5. package/dist/chunk-HTYMWSQE.cjs.map +1 -0
  6. package/dist/{chunk-H7BXGE4A.js → chunk-N2GXHZUY.js} +2 -2
  7. package/dist/{chunk-H7BXGE4A.js.map → chunk-N2GXHZUY.js.map} +1 -1
  8. package/dist/{chunk-HJTZ4UYF.cjs → chunk-RQS7G3ER.cjs} +2 -2
  9. package/dist/{chunk-HJTZ4UYF.cjs.map → chunk-RQS7G3ER.cjs.map} +1 -1
  10. package/dist/{chunk-VE2GV4YU.cjs → chunk-TGWDTL32.cjs} +2 -2
  11. package/dist/{chunk-VE2GV4YU.cjs.map → chunk-TGWDTL32.cjs.map} +1 -1
  12. package/dist/chunk-XH6WCBQY.js +2 -0
  13. package/dist/chunk-XH6WCBQY.js.map +1 -0
  14. package/dist/metafile-cjs.json +1 -1
  15. package/dist/metafile-esm.json +1 -1
  16. package/dist/v2/hover-card/hover-card.cjs +2 -0
  17. package/dist/v2/hover-card/hover-card.cjs.map +1 -0
  18. package/dist/v2/hover-card/hover-card.d.ts +6 -0
  19. package/dist/v2/hover-card/hover-card.js +2 -0
  20. package/dist/v2/hover-card/hover-card.js.map +1 -0
  21. package/dist/v2/hover-card/hover-card.stories.d.ts +6 -0
  22. package/dist/v2/index.cjs +1 -1
  23. package/dist/v2/index.d.ts +2 -1
  24. package/dist/v2/index.js +1 -1
  25. package/dist/v2/rich-text-editor/rich-text-editor.cjs +1 -1
  26. package/dist/v2/rich-text-editor/rich-text-editor.d.ts +1 -1
  27. package/dist/v2/rich-text-editor/rich-text-editor.js +1 -1
  28. package/dist/v2/time-select/time-select.cjs +1 -1
  29. package/dist/v2/time-select/time-select.js +1 -1
  30. package/package.json +2 -1
package/README.md CHANGED
@@ -65,6 +65,8 @@ yalc link @solace-health/ui
65
65
 
66
66
  `solace-health-app` will now be using your local version of `solace-health-ui`.
67
67
 
68
+ NOTE: Make sure the package versions match between the UI library and the consuming app, otherwise linking may not work as expected.
69
+
68
70
  #### 4. Reloading the consumer app
69
71
 
70
72
  To automatically build and publish new changes to the UI repo with yalc, run the following command:
@@ -1,2 +1,2 @@
1
- import {a}from'./chunk-YTIIAU4W.js';import {MDXEditor,headingsPlugin,listsPlugin,quotePlugin,thematicBreakPlugin,linkPlugin,linkDialogPlugin,tablePlugin,markdownShortcutPlugin,toolbarPlugin,UndoRedo,Separator,BlockTypeSelect,BoldItalicUnderlineToggles,StrikeThroughSupSubToggles,ListsToggle,CreateLink,InsertTable,InsertThematicBreak}from'@mdxeditor/editor';import v from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';var T={undoRedo:true,blockType:true,boldItalicUnderline:true,strikeThrough:true,lists:true,link:true,table:true,horizontalRule:true},x=v.forwardRef(({className:n="",preview:y=false,options:f=T,...a$1},d)=>{let e={...T,...f};return y?jsx(MDXEditor,{plugins:[headingsPlugin(),listsPlugin(),quotePlugin(),thematicBreakPlugin(),linkPlugin(),linkDialogPlugin(),tablePlugin()],className:a("preview overflow-y-auto",n),...a$1,readOnly:true,ref:d},"preview"):jsx(MDXEditor,{plugins:[headingsPlugin(),listsPlugin(),quotePlugin(),thematicBreakPlugin(),linkPlugin(),linkDialogPlugin(),tablePlugin(),markdownShortcutPlugin(),toolbarPlugin({toolbarContents:()=>jsxs(Fragment,{children:[e.undoRedo&&jsxs(Fragment,{children:[jsx(UndoRedo,{}),jsx(Separator,{})]}),e.blockType&&jsxs(Fragment,{children:[jsx(BlockTypeSelect,{}),jsx(Separator,{})]}),e.boldItalicUnderline&&jsx(BoldItalicUnderlineToggles,{}),e.strikeThrough&&jsxs(Fragment,{children:[jsx(StrikeThroughSupSubToggles,{options:["Strikethrough"]}),jsx(Separator,{})]}),e.lists&&jsxs(Fragment,{children:[jsx(ListsToggle,{}),jsx(Separator,{})]}),e.link&&jsxs(Fragment,{children:[jsx(CreateLink,{}),jsx(Separator,{})]}),e.table&&jsxs(Fragment,{children:[jsx(InsertTable,{}),jsx(Separator,{})]}),e.horizontalRule&&jsx(InsertThematicBreak,{})]})})],className:a("overflow-y-auto rounded-md border border-gray-300 shadow-xs",n),...a$1,ref:d},"editor")});x.displayName="RichTextEditor";export{x as a};//# sourceMappingURL=chunk-XCOTNA3D.js.map
2
- //# sourceMappingURL=chunk-XCOTNA3D.js.map
1
+ import {a}from'./chunk-YTIIAU4W.js';import {MDXEditor,headingsPlugin,listsPlugin,quotePlugin,thematicBreakPlugin,linkPlugin,linkDialogPlugin,tablePlugin,markdownShortcutPlugin,toolbarPlugin,UndoRedo,Separator,BlockTypeSelect,BoldItalicUnderlineToggles,StrikeThroughSupSubToggles,ListsToggle,CreateLink,InsertTable,InsertThematicBreak}from'@mdxeditor/editor';import I from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';var y={undoRedo:true,blockType:true,boldItalicUnderline:true,strikeThrough:true,lists:true,link:true,table:true,horizontalRule:true},O=I.forwardRef(({className:n="",preview:T=false,options:f=y,...a$1},d)=>{let e={...y,...f};return T?jsx(MDXEditor,{plugins:[headingsPlugin(),listsPlugin(),quotePlugin(),thematicBreakPlugin(),linkPlugin(),linkDialogPlugin(),tablePlugin()],className:a("preview overflow-y-auto",n),...a$1,readOnly:true,ref:d},"preview"):jsx(MDXEditor,{plugins:[headingsPlugin(),listsPlugin(),quotePlugin(),thematicBreakPlugin(),linkPlugin(),linkDialogPlugin(),tablePlugin(),markdownShortcutPlugin(),toolbarPlugin({toolbarContents:()=>jsxs(Fragment,{children:[e.undoRedo&&jsxs(Fragment,{children:[jsx(UndoRedo,{}),jsx(Separator,{})]}),e.blockType&&jsxs(Fragment,{children:[jsx(BlockTypeSelect,{}),jsx(Separator,{})]}),e.boldItalicUnderline&&jsx(BoldItalicUnderlineToggles,{}),e.strikeThrough&&jsxs(Fragment,{children:[jsx(StrikeThroughSupSubToggles,{options:["Strikethrough"]}),jsx(Separator,{})]}),e.lists&&jsxs(Fragment,{children:[jsx(ListsToggle,{}),jsx(Separator,{})]}),e.link&&jsxs(Fragment,{children:[jsx(CreateLink,{}),jsx(Separator,{})]}),e.table&&jsxs(Fragment,{children:[jsx(InsertTable,{}),jsx(Separator,{})]}),e.horizontalRule&&jsx(InsertThematicBreak,{})]})})],className:a("overflow-y-auto rounded-md border border-gray-300 shadow-xs",n),...a$1,ref:d},"editor")});O.displayName="RichTextEditor";export{O as a};//# sourceMappingURL=chunk-6SXJ2DFE.js.map
2
+ //# sourceMappingURL=chunk-6SXJ2DFE.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/v2/rich-text-editor/rich-text-editor.tsx"],"names":["defaultOptions","RichTextEditor","React","className","preview","options","props","editorRef","finalOptions","jsx","MDXEditor","headingsPlugin","listsPlugin","quotePlugin","thematicBreakPlugin","linkPlugin","linkDialogPlugin","tablePlugin","cn","markdownShortcutPlugin","toolbarPlugin","jsxs","Fragment","UndoRedo","Separator","BlockTypeSelect","BoldItalicUnderlineToggles","StrikeThroughSupSubToggles","ListsToggle","CreateLink","InsertTable","InsertThematicBreak"],"mappings":"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","file":"chunk-XCOTNA3D.js","sourcesContent":["/* eslint-disable react/require-default-props */\n/* eslint-disable react/no-unstable-nested-components */\nimport type { ForwardedRef } from 'react';\nimport {\n headingsPlugin,\n listsPlugin,\n quotePlugin,\n thematicBreakPlugin,\n MDXEditor,\n type MDXEditorMethods,\n type MDXEditorProps,\n toolbarPlugin,\n linkDialogPlugin,\n linkPlugin,\n tablePlugin,\n BlockTypeSelect,\n BoldItalicUnderlineToggles,\n CreateLink,\n InsertTable,\n InsertThematicBreak,\n ListsToggle,\n Separator,\n StrikeThroughSupSubToggles,\n UndoRedo,\n markdownShortcutPlugin,\n} from '@mdxeditor/editor';\nimport React from 'react';\nimport { cn } from '@/lib/utils';\n\ntype EditorOptions = {\n undoRedo?: boolean;\n blockType?: boolean;\n boldItalicUnderline?: boolean;\n strikeThrough?: boolean;\n lists?: boolean;\n link?: boolean;\n table?: boolean;\n horizontalRule?: boolean;\n};\n\ntype RichTextEditorProps = {\n preview?: boolean;\n options?: EditorOptions;\n} & MDXEditorProps;\n\nconst defaultOptions: EditorOptions = {\n undoRedo: true,\n blockType: true,\n boldItalicUnderline: true,\n strikeThrough: true,\n lists: true,\n link: true,\n table: true,\n horizontalRule: true,\n};\n\nexport const RichTextEditor = React.forwardRef(\n (\n { className = '', preview = false, options = defaultOptions, ...props }: RichTextEditorProps,\n editorRef?: ForwardedRef<MDXEditorMethods> | null,\n ) => {\n const finalOptions = { ...defaultOptions, ...options };\n if (preview) {\n return (\n <MDXEditor\n key=\"preview\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n ]}\n className={cn('preview overflow-y-auto', className)}\n {...props}\n readOnly\n ref={editorRef}\n />\n );\n }\n return (\n <MDXEditor\n key=\"editor\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n markdownShortcutPlugin(),\n toolbarPlugin({\n toolbarContents: () => (\n <>\n {finalOptions.undoRedo && (\n <>\n <UndoRedo />\n <Separator />\n </>\n )}\n {finalOptions.blockType && (\n <>\n <BlockTypeSelect />\n <Separator />\n </>\n )}\n {finalOptions.boldItalicUnderline && <BoldItalicUnderlineToggles />}\n {finalOptions.strikeThrough && (\n <>\n <StrikeThroughSupSubToggles options={['Strikethrough']} />\n <Separator />\n </>\n )}\n {finalOptions.lists && (\n <>\n <ListsToggle />\n <Separator />\n </>\n )}\n {finalOptions.link && (\n <>\n <CreateLink />\n <Separator />\n </>\n )}\n {finalOptions.table && (\n <>\n <InsertTable />\n <Separator />\n </>\n )}\n {finalOptions.horizontalRule && <InsertThematicBreak />}\n </>\n ),\n }),\n ]}\n className={cn('overflow-y-auto rounded-md border border-gray-300 shadow-xs', className)}\n {...props}\n ref={editorRef}\n />\n );\n },\n);\n\nRichTextEditor.displayName = 'RichTextEditor';\n"]}
1
+ {"version":3,"sources":["../src/v2/rich-text-editor/rich-text-editor.tsx"],"names":["defaultOptions","RichTextEditor","React","className","preview","options","props","editorRef","finalOptions","jsx","MDXEditor","headingsPlugin","listsPlugin","quotePlugin","thematicBreakPlugin","linkPlugin","linkDialogPlugin","tablePlugin","cn","markdownShortcutPlugin","toolbarPlugin","jsxs","Fragment","UndoRedo","Separator","BlockTypeSelect","BoldItalicUnderlineToggles","StrikeThroughSupSubToggles","ListsToggle","CreateLink","InsertTable","InsertThematicBreak"],"mappings":"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","file":"chunk-6SXJ2DFE.js","sourcesContent":["/* eslint-disable react/require-default-props */\n/* eslint-disable react/no-unstable-nested-components */\nimport type { ForwardedRef } from 'react';\nimport {\n headingsPlugin,\n listsPlugin,\n quotePlugin,\n thematicBreakPlugin,\n MDXEditor,\n type MDXEditorMethods,\n type MDXEditorProps,\n toolbarPlugin,\n linkDialogPlugin,\n linkPlugin,\n tablePlugin,\n BlockTypeSelect,\n BoldItalicUnderlineToggles,\n CreateLink,\n InsertTable,\n InsertThematicBreak,\n ListsToggle,\n Separator,\n StrikeThroughSupSubToggles,\n UndoRedo,\n markdownShortcutPlugin,\n} from '@mdxeditor/editor';\nimport React from 'react';\nimport { cn } from '@/lib/utils';\n\ntype EditorOptions = {\n undoRedo?: boolean;\n blockType?: boolean;\n boldItalicUnderline?: boolean;\n strikeThrough?: boolean;\n lists?: boolean;\n link?: boolean;\n table?: boolean;\n horizontalRule?: boolean;\n};\n\ntype RichTextEditorProps = {\n preview?: boolean;\n options?: EditorOptions;\n} & MDXEditorProps;\n\nconst defaultOptions: EditorOptions = {\n undoRedo: true,\n blockType: true,\n boldItalicUnderline: true,\n strikeThrough: true,\n lists: true,\n link: true,\n table: true,\n horizontalRule: true,\n};\n\nexport const RichTextEditor = React.forwardRef(\n (\n { className = '', preview = false, options = defaultOptions, ...props }: RichTextEditorProps,\n editorRef?: ForwardedRef<MDXEditorMethods> | null,\n ) => {\n const finalOptions = { ...defaultOptions, ...options };\n if (preview) {\n return (\n <MDXEditor\n key=\"preview\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n ]}\n className={cn('preview overflow-y-auto', className)}\n {...props}\n readOnly\n ref={editorRef}\n />\n );\n }\n return (\n <MDXEditor\n key=\"editor\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n markdownShortcutPlugin(),\n toolbarPlugin({\n toolbarContents: () => (\n <>\n {finalOptions.undoRedo && (\n <>\n <UndoRedo />\n <Separator />\n </>\n )}\n {finalOptions.blockType && (\n <>\n <BlockTypeSelect />\n <Separator />\n </>\n )}\n {finalOptions.boldItalicUnderline && <BoldItalicUnderlineToggles />}\n {finalOptions.strikeThrough && (\n <>\n <StrikeThroughSupSubToggles options={['Strikethrough']} />\n <Separator />\n </>\n )}\n {finalOptions.lists && (\n <>\n <ListsToggle />\n <Separator />\n </>\n )}\n {finalOptions.link && (\n <>\n <CreateLink />\n <Separator />\n </>\n )}\n {finalOptions.table && (\n <>\n <InsertTable />\n <Separator />\n </>\n )}\n {finalOptions.horizontalRule && <InsertThematicBreak />}\n </>\n ),\n }),\n ]}\n className={cn('overflow-y-auto rounded-md border border-gray-300 shadow-xs', className)}\n {...props}\n ref={editorRef}\n />\n );\n },\n);\n\nRichTextEditor.displayName = 'RichTextEditor';\n\nexport { type MDXEditorMethods, type MDXEditorProps };\n"]}
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunkQRO22BPZ_cjs=require('./chunk-QRO22BPZ.cjs'),t=require('@radix-ui/react-hover-card'),jsxRuntime=require('react/jsx-runtime');function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var t__namespace=/*#__PURE__*/_interopNamespace(t);function m({...o}){return jsxRuntime.jsx(t__namespace.Root,{"data-slot":"hover-card",...o})}function s({...o}){return jsxRuntime.jsx(t__namespace.Trigger,{"data-slot":"hover-card-trigger",...o})}function v({className:o,align:a="center",sideOffset:i=4,...d}){return jsxRuntime.jsx(t__namespace.Portal,{"data-slot":"hover-card-portal",children:jsxRuntime.jsx(t__namespace.Content,{"data-slot":"hover-card-content",align:a,sideOffset:i,className:chunkQRO22BPZ_cjs.a("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-w-xl origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",o),...d})})}exports.a=m;exports.b=s;exports.c=v;//# sourceMappingURL=chunk-HTYMWSQE.cjs.map
2
+ //# sourceMappingURL=chunk-HTYMWSQE.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/v2/hover-card/hover-card.tsx"],"names":["HoverCard","props","jsx","t","HoverCardTrigger","HoverCardContent","className","align","sideOffset","cn"],"mappings":"yfAKA,SAASA,CAAU,CAAA,CAAE,GAAGC,CAAM,EAAyD,CACrF,OAAOC,cAAoB,CAAAC,YAAA,CAAA,IAAA,CAAnB,CAAwB,WAAU,CAAA,YAAA,CAAc,GAAGF,CAAAA,CAAO,CACpE,CAEA,SAASG,CAAiB,CAAA,CAAE,GAAGH,CAAM,CAAA,CAA4D,CAC/F,OAAOC,eAAoBC,YAAnB,CAAA,OAAA,CAAA,CAA2B,YAAU,oBAAsB,CAAA,GAAGF,EAAO,CAC/E,CAEA,SAASI,CAAAA,CAAiB,CACxB,SAAAC,CAAAA,CAAAA,CACA,KAAAC,CAAAA,CAAAA,CAAQ,SACR,UAAAC,CAAAA,CAAAA,CAAa,CACb,CAAA,GAAGP,CACL,CAA4D,CAAA,CAC1D,OACEC,cAAAA,CAAoBC,oBAAnB,CAA0B,WAAA,CAAU,mBACnC,CAAA,QAAA,CAAAD,eAAoBC,YAAnB,CAAA,OAAA,CAAA,CACC,WAAU,CAAA,oBAAA,CACV,MAAOI,CACP,CAAA,UAAA,CAAYC,CACZ,CAAA,SAAA,CAAWC,oBACT,ueACAH,CAAAA,CACF,EACC,GAAGL,CAAAA,CACN,EACF,CAEJ","file":"chunk-HTYMWSQE.cjs","sourcesContent":["import * as React from 'react';\nimport * as HoverCardPrimitive from '@radix-ui/react-hover-card';\n\nimport { cn } from '@/lib/utils';\n\nfunction HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n return <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\nfunction HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n return <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />;\n}\n\nfunction HoverCardContent({\n className,\n align = 'center',\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n return (\n <HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n <HoverCardPrimitive.Content\n data-slot=\"hover-card-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-w-xl origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden',\n className,\n )}\n {...props}\n />\n </HoverCardPrimitive.Portal>\n );\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"]}
@@ -1,2 +1,2 @@
1
- import {a,d,c,g,i}from'./chunk-YIOPQQWU.js';import {a as a$1}from'./chunk-YTIIAU4W.js';import {DateTime,Duration}from'luxon';import {useMemo}from'react';import {jsxs,jsx}from'react/jsx-runtime';var S="00:00",b="24:00",T=r=>DateTime.fromFormat(r,"HH:mm").isValid,D=({startTime:r=S,endTime:t=b,interval:f=30,onChange:w=void 0,className:C="",size:v="default",portal:F=true,...h})=>{T(r)||(console.error(`Invalid startTime: ${r}`),r=S),T(t)||(console.error(`Invalid endTime: ${t}`),t=b);let g$1=useMemo(()=>{let o=DateTime.fromFormat(t,"HH:mm"),a=Duration.fromObject({minutes:f}),n=[],e=DateTime.fromFormat(r,"HH:mm");for(;e<=o;){let p=e.toFormat("HH:mm");p==="00:00"&&e.equals(o)&&(p="24:00"),n.push({label:e.toFormat("h:mm a"),value:{hour:e.toFormat("HH"),min:e.toFormat("mm"),raw:p,formatted:e.toFormat("h:mm a")}}),e=e.plus(a);}return n},[r,t,f]),M=g$1.map(o=>({label:o.label,value:o.value.raw}));return jsxs(a,{onValueChange:o=>{let a=g$1.find(n=>n.value.raw===o);a&&w?.(a);},...h,children:[jsx(d,{className:a$1("max-w-[240px] md:w-[150px]",C),size:v,children:jsx(c,{placeholder:"Select one"})}),jsx(g,{position:"popper",className:"max-h-90",portal:F,children:M.map(o=>jsx(i,{className:"h-10",value:o.value,children:o.label},o.value))})]})},br=D;export{D as a,br as b};//# sourceMappingURL=chunk-H7BXGE4A.js.map
2
- //# sourceMappingURL=chunk-H7BXGE4A.js.map
1
+ import {a,d,c,g,i}from'./chunk-YIOPQQWU.js';import {a as a$1}from'./chunk-YTIIAU4W.js';import {DateTime,Duration}from'luxon';import {useMemo}from'react';import {jsxs,jsx}from'react/jsx-runtime';var C="00:00",S="24:00",b=r=>DateTime.fromFormat(r,"HH:mm").isValid,D=({startTime:r=C,endTime:t=S,interval:f=30,onChange:T=void 0,className:w="",size:v="default",portal:h=true,...F})=>{b(r)||(console.error(`Invalid startTime: ${r}`),r=C),b(t)||(console.error(`Invalid endTime: ${t}`),t=S);let g$1=useMemo(()=>{let o=DateTime.fromFormat(t,"HH:mm"),a=Duration.fromObject({minutes:f}),n=[],e=DateTime.fromFormat(r,"HH:mm");for(;e<=o;){let p=e.toFormat("HH:mm");p==="00:00"&&e.equals(o)&&(p="24:00"),n.push({label:e.toFormat("h:mm a"),value:{hour:e.toFormat("HH"),min:e.toFormat("mm"),raw:p,formatted:e.toFormat("h:mm a")}}),e=e.plus(a);}return n},[r,t,f]),M=g$1.map(o=>({label:o.label,value:o.value.raw}));return jsxs(a,{onValueChange:o=>{let a=g$1.find(n=>n.value.raw===o);a&&T?.(a);},...F,children:[jsx(d,{className:a$1("max-w-[240px] md:w-[150px]",w),size:v,children:jsx(c,{placeholder:"Select one"})}),jsx(g,{position:"popper",className:"max-h-90",portal:h,children:M.map(o=>jsx(i,{className:"h-10",value:o.value,children:o.label},o.value))})]})},vr=D;export{D as a,vr as b};//# sourceMappingURL=chunk-N2GXHZUY.js.map
2
+ //# sourceMappingURL=chunk-N2GXHZUY.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/v2/time-select/time-select.tsx"],"names":["START_TIME_DEFAULT","END_TIME_DEFAULT","isValidTime","time","DateTime","TimeSelect","startTime","endTime","interval","onChange","className","size","portal","inputProps","intervals","useMemo","dtEnd","durationInterval","Duration","res","i","raw","options","jsxs","Select","e","jsx","SelectTrigger","cn","SelectValue","SelectContent","option","SelectItem","time_select_default"],"mappings":"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","file":"chunk-H7BXGE4A.js","sourcesContent":["import { DateTime, Duration } from 'luxon';\nimport { useMemo } from 'react';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/v2';\nimport { cn } from '@/lib/utils';\n\nexport type Interval = {\n label: string;\n value: {\n hour: string;\n min: string;\n raw: string;\n formatted: string;\n };\n};\n\ntype Props = {\n startTime?: string;\n endTime?: string;\n interval?: number;\n onChange?: (e: Interval) => void;\n className?: string;\n size?: 'default' | 'sm';\n portal?: boolean;\n [inputProps: string]: unknown;\n};\n\nconst START_TIME_DEFAULT = '00:00';\nconst END_TIME_DEFAULT = '24:00';\n\nconst isValidTime = (time: string) => {\n const dt = DateTime.fromFormat(time, 'HH:mm');\n return dt.isValid;\n};\n\nexport const TimeSelect = ({\n startTime = START_TIME_DEFAULT,\n endTime = END_TIME_DEFAULT,\n interval = 30,\n onChange = undefined,\n className = '',\n size = 'default',\n portal = true,\n ...inputProps\n}: Props) => {\n if (!isValidTime(startTime)) {\n console.error(`Invalid startTime: ${startTime}`);\n // eslint-disable-next-line no-param-reassign\n startTime = START_TIME_DEFAULT;\n }\n if (!isValidTime(endTime)) {\n console.error(`Invalid endTime: ${endTime}`);\n // eslint-disable-next-line no-param-reassign\n endTime = END_TIME_DEFAULT;\n }\n\n const intervals = useMemo((): Interval[] => {\n const dtEnd = DateTime.fromFormat(endTime, 'HH:mm');\n const durationInterval = Duration.fromObject({ minutes: interval });\n const res = [];\n let i = DateTime.fromFormat(startTime, 'HH:mm');\n while (i <= dtEnd) {\n let raw = i.toFormat('HH:mm');\n // Avoid duplicate keys for \"00:00\" and \"00:00\" (end of day)\n if (raw === '00:00' && i.equals(dtEnd)) raw = '24:00';\n\n res.push({\n label: i.toFormat('h:mm a'),\n value: {\n hour: i.toFormat('HH'),\n min: i.toFormat('mm'),\n raw,\n formatted: i.toFormat('h:mm a'),\n },\n });\n i = i.plus(durationInterval);\n }\n\n return res;\n }, [startTime, endTime, interval]);\n\n const options = intervals.map((time) => ({\n label: time.label,\n value: time.value.raw,\n }));\n\n const handleOnSelect = (e: unknown) => {\n const interval = intervals.find((time) => time.value.raw === e);\n\n if (!interval) return;\n\n onChange?.(interval);\n };\n\n return (\n <Select onValueChange={handleOnSelect} {...inputProps}>\n <SelectTrigger className={cn('max-w-[240px] md:w-[150px]', className)} size={size}>\n <SelectValue placeholder=\"Select one\" />\n </SelectTrigger>\n <SelectContent position=\"popper\" className=\"max-h-90\" portal={portal}>\n {options.map((option) => (\n // Note that labels and values here may appear to be duplicates\n // For example, \"00:00\" and \"24:00\" will both have the same value \"00:00\"\n <SelectItem className=\"h-10\" key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n );\n};\n\nexport default TimeSelect;\n"]}
1
+ {"version":3,"sources":["../src/v2/time-select/time-select.tsx"],"names":["START_TIME_DEFAULT","END_TIME_DEFAULT","isValidTime","time","DateTime","TimeSelect","startTime","endTime","interval","onChange","className","size","portal","inputProps","intervals","useMemo","dtEnd","durationInterval","Duration","res","i","raw","options","jsxs","Select","e","jsx","SelectTrigger","cn","SelectValue","SelectContent","option","SelectItem","time_select_default"],"mappings":"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","file":"chunk-N2GXHZUY.js","sourcesContent":["import { DateTime, Duration } from 'luxon';\nimport { useMemo } from 'react';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/v2';\nimport { cn } from '@/lib/utils';\n\nexport type Interval = {\n label: string;\n value: {\n hour: string;\n min: string;\n raw: string;\n formatted: string;\n };\n};\n\ntype Props = {\n startTime?: string;\n endTime?: string;\n interval?: number;\n onChange?: (e: Interval) => void;\n className?: string;\n size?: 'default' | 'sm';\n portal?: boolean;\n [inputProps: string]: unknown;\n};\n\nconst START_TIME_DEFAULT = '00:00';\nconst END_TIME_DEFAULT = '24:00';\n\nconst isValidTime = (time: string) => {\n const dt = DateTime.fromFormat(time, 'HH:mm');\n return dt.isValid;\n};\n\nexport const TimeSelect = ({\n startTime = START_TIME_DEFAULT,\n endTime = END_TIME_DEFAULT,\n interval = 30,\n onChange = undefined,\n className = '',\n size = 'default',\n portal = true,\n ...inputProps\n}: Props) => {\n if (!isValidTime(startTime)) {\n console.error(`Invalid startTime: ${startTime}`);\n // eslint-disable-next-line no-param-reassign\n startTime = START_TIME_DEFAULT;\n }\n if (!isValidTime(endTime)) {\n console.error(`Invalid endTime: ${endTime}`);\n // eslint-disable-next-line no-param-reassign\n endTime = END_TIME_DEFAULT;\n }\n\n const intervals = useMemo((): Interval[] => {\n const dtEnd = DateTime.fromFormat(endTime, 'HH:mm');\n const durationInterval = Duration.fromObject({ minutes: interval });\n const res = [];\n let i = DateTime.fromFormat(startTime, 'HH:mm');\n while (i <= dtEnd) {\n let raw = i.toFormat('HH:mm');\n // Avoid duplicate keys for \"00:00\" and \"00:00\" (end of day)\n if (raw === '00:00' && i.equals(dtEnd)) raw = '24:00';\n\n res.push({\n label: i.toFormat('h:mm a'),\n value: {\n hour: i.toFormat('HH'),\n min: i.toFormat('mm'),\n raw,\n formatted: i.toFormat('h:mm a'),\n },\n });\n i = i.plus(durationInterval);\n }\n\n return res;\n }, [startTime, endTime, interval]);\n\n const options = intervals.map((time) => ({\n label: time.label,\n value: time.value.raw,\n }));\n\n const handleOnSelect = (e: unknown) => {\n const interval = intervals.find((time) => time.value.raw === e);\n\n if (!interval) return;\n\n onChange?.(interval);\n };\n\n return (\n <Select onValueChange={handleOnSelect} {...inputProps}>\n <SelectTrigger className={cn('max-w-[240px] md:w-[150px]', className)} size={size}>\n <SelectValue placeholder=\"Select one\" />\n </SelectTrigger>\n <SelectContent position=\"popper\" className=\"max-h-90\" portal={portal}>\n {options.map((option) => (\n // Note that labels and values here may appear to be duplicates\n // For example, \"00:00\" and \"24:00\" will both have the same value \"00:00\"\n <SelectItem className=\"h-10\" key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n );\n};\n\nexport default TimeSelect;\n"]}
@@ -1,2 +1,2 @@
1
- 'use strict';var chunk75JCLU5T_cjs=require('./chunk-75JCLU5T.cjs'),chunkQRO22BPZ_cjs=require('./chunk-QRO22BPZ.cjs'),luxon=require('luxon'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var S="00:00",b="24:00",T=r=>luxon.DateTime.fromFormat(r,"HH:mm").isValid,D=({startTime:r=S,endTime:t=b,interval:f=30,onChange:w=void 0,className:C="",size:v="default",portal:F=true,...h})=>{T(r)||(console.error(`Invalid startTime: ${r}`),r=S),T(t)||(console.error(`Invalid endTime: ${t}`),t=b);let g=react.useMemo(()=>{let o=luxon.DateTime.fromFormat(t,"HH:mm"),a=luxon.Duration.fromObject({minutes:f}),n=[],e=luxon.DateTime.fromFormat(r,"HH:mm");for(;e<=o;){let p=e.toFormat("HH:mm");p==="00:00"&&e.equals(o)&&(p="24:00"),n.push({label:e.toFormat("h:mm a"),value:{hour:e.toFormat("HH"),min:e.toFormat("mm"),raw:p,formatted:e.toFormat("h:mm a")}}),e=e.plus(a);}return n},[r,t,f]),M=g.map(o=>({label:o.label,value:o.value.raw}));return jsxRuntime.jsxs(chunk75JCLU5T_cjs.a,{onValueChange:o=>{let a=g.find(n=>n.value.raw===o);a&&w?.(a);},...h,children:[jsxRuntime.jsx(chunk75JCLU5T_cjs.d,{className:chunkQRO22BPZ_cjs.a("max-w-[240px] md:w-[150px]",C),size:v,children:jsxRuntime.jsx(chunk75JCLU5T_cjs.c,{placeholder:"Select one"})}),jsxRuntime.jsx(chunk75JCLU5T_cjs.g,{position:"popper",className:"max-h-90",portal:F,children:M.map(o=>jsxRuntime.jsx(chunk75JCLU5T_cjs.i,{className:"h-10",value:o.value,children:o.label},o.value))})]})},br=D;exports.a=D;exports.b=br;//# sourceMappingURL=chunk-HJTZ4UYF.cjs.map
2
- //# sourceMappingURL=chunk-HJTZ4UYF.cjs.map
1
+ 'use strict';var chunk75JCLU5T_cjs=require('./chunk-75JCLU5T.cjs'),chunkQRO22BPZ_cjs=require('./chunk-QRO22BPZ.cjs'),luxon=require('luxon'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var C="00:00",S="24:00",b=r=>luxon.DateTime.fromFormat(r,"HH:mm").isValid,D=({startTime:r=C,endTime:t=S,interval:f=30,onChange:T=void 0,className:w="",size:v="default",portal:h=true,...F})=>{b(r)||(console.error(`Invalid startTime: ${r}`),r=C),b(t)||(console.error(`Invalid endTime: ${t}`),t=S);let g=react.useMemo(()=>{let o=luxon.DateTime.fromFormat(t,"HH:mm"),a=luxon.Duration.fromObject({minutes:f}),n=[],e=luxon.DateTime.fromFormat(r,"HH:mm");for(;e<=o;){let p=e.toFormat("HH:mm");p==="00:00"&&e.equals(o)&&(p="24:00"),n.push({label:e.toFormat("h:mm a"),value:{hour:e.toFormat("HH"),min:e.toFormat("mm"),raw:p,formatted:e.toFormat("h:mm a")}}),e=e.plus(a);}return n},[r,t,f]),M=g.map(o=>({label:o.label,value:o.value.raw}));return jsxRuntime.jsxs(chunk75JCLU5T_cjs.a,{onValueChange:o=>{let a=g.find(n=>n.value.raw===o);a&&T?.(a);},...F,children:[jsxRuntime.jsx(chunk75JCLU5T_cjs.d,{className:chunkQRO22BPZ_cjs.a("max-w-[240px] md:w-[150px]",w),size:v,children:jsxRuntime.jsx(chunk75JCLU5T_cjs.c,{placeholder:"Select one"})}),jsxRuntime.jsx(chunk75JCLU5T_cjs.g,{position:"popper",className:"max-h-90",portal:h,children:M.map(o=>jsxRuntime.jsx(chunk75JCLU5T_cjs.i,{className:"h-10",value:o.value,children:o.label},o.value))})]})},vr=D;exports.a=D;exports.b=vr;//# sourceMappingURL=chunk-RQS7G3ER.cjs.map
2
+ //# sourceMappingURL=chunk-RQS7G3ER.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/v2/time-select/time-select.tsx"],"names":["START_TIME_DEFAULT","END_TIME_DEFAULT","isValidTime","time","DateTime","TimeSelect","startTime","endTime","interval","onChange","className","size","portal","inputProps","intervals","useMemo","dtEnd","durationInterval","Duration","res","i","raw","options","jsxs","Select","e","jsx","SelectTrigger","cn","SelectValue","SelectContent","option","SelectItem","time_select_default"],"mappings":"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","file":"chunk-HJTZ4UYF.cjs","sourcesContent":["import { DateTime, Duration } from 'luxon';\nimport { useMemo } from 'react';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/v2';\nimport { cn } from '@/lib/utils';\n\nexport type Interval = {\n label: string;\n value: {\n hour: string;\n min: string;\n raw: string;\n formatted: string;\n };\n};\n\ntype Props = {\n startTime?: string;\n endTime?: string;\n interval?: number;\n onChange?: (e: Interval) => void;\n className?: string;\n size?: 'default' | 'sm';\n portal?: boolean;\n [inputProps: string]: unknown;\n};\n\nconst START_TIME_DEFAULT = '00:00';\nconst END_TIME_DEFAULT = '24:00';\n\nconst isValidTime = (time: string) => {\n const dt = DateTime.fromFormat(time, 'HH:mm');\n return dt.isValid;\n};\n\nexport const TimeSelect = ({\n startTime = START_TIME_DEFAULT,\n endTime = END_TIME_DEFAULT,\n interval = 30,\n onChange = undefined,\n className = '',\n size = 'default',\n portal = true,\n ...inputProps\n}: Props) => {\n if (!isValidTime(startTime)) {\n console.error(`Invalid startTime: ${startTime}`);\n // eslint-disable-next-line no-param-reassign\n startTime = START_TIME_DEFAULT;\n }\n if (!isValidTime(endTime)) {\n console.error(`Invalid endTime: ${endTime}`);\n // eslint-disable-next-line no-param-reassign\n endTime = END_TIME_DEFAULT;\n }\n\n const intervals = useMemo((): Interval[] => {\n const dtEnd = DateTime.fromFormat(endTime, 'HH:mm');\n const durationInterval = Duration.fromObject({ minutes: interval });\n const res = [];\n let i = DateTime.fromFormat(startTime, 'HH:mm');\n while (i <= dtEnd) {\n let raw = i.toFormat('HH:mm');\n // Avoid duplicate keys for \"00:00\" and \"00:00\" (end of day)\n if (raw === '00:00' && i.equals(dtEnd)) raw = '24:00';\n\n res.push({\n label: i.toFormat('h:mm a'),\n value: {\n hour: i.toFormat('HH'),\n min: i.toFormat('mm'),\n raw,\n formatted: i.toFormat('h:mm a'),\n },\n });\n i = i.plus(durationInterval);\n }\n\n return res;\n }, [startTime, endTime, interval]);\n\n const options = intervals.map((time) => ({\n label: time.label,\n value: time.value.raw,\n }));\n\n const handleOnSelect = (e: unknown) => {\n const interval = intervals.find((time) => time.value.raw === e);\n\n if (!interval) return;\n\n onChange?.(interval);\n };\n\n return (\n <Select onValueChange={handleOnSelect} {...inputProps}>\n <SelectTrigger className={cn('max-w-[240px] md:w-[150px]', className)} size={size}>\n <SelectValue placeholder=\"Select one\" />\n </SelectTrigger>\n <SelectContent position=\"popper\" className=\"max-h-90\" portal={portal}>\n {options.map((option) => (\n // Note that labels and values here may appear to be duplicates\n // For example, \"00:00\" and \"24:00\" will both have the same value \"00:00\"\n <SelectItem className=\"h-10\" key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n );\n};\n\nexport default TimeSelect;\n"]}
1
+ {"version":3,"sources":["../src/v2/time-select/time-select.tsx"],"names":["START_TIME_DEFAULT","END_TIME_DEFAULT","isValidTime","time","DateTime","TimeSelect","startTime","endTime","interval","onChange","className","size","portal","inputProps","intervals","useMemo","dtEnd","durationInterval","Duration","res","i","raw","options","jsxs","Select","e","jsx","SelectTrigger","cn","SelectValue","SelectContent","option","SelectItem","time_select_default"],"mappings":"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","file":"chunk-RQS7G3ER.cjs","sourcesContent":["import { DateTime, Duration } from 'luxon';\nimport { useMemo } from 'react';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/v2';\nimport { cn } from '@/lib/utils';\n\nexport type Interval = {\n label: string;\n value: {\n hour: string;\n min: string;\n raw: string;\n formatted: string;\n };\n};\n\ntype Props = {\n startTime?: string;\n endTime?: string;\n interval?: number;\n onChange?: (e: Interval) => void;\n className?: string;\n size?: 'default' | 'sm';\n portal?: boolean;\n [inputProps: string]: unknown;\n};\n\nconst START_TIME_DEFAULT = '00:00';\nconst END_TIME_DEFAULT = '24:00';\n\nconst isValidTime = (time: string) => {\n const dt = DateTime.fromFormat(time, 'HH:mm');\n return dt.isValid;\n};\n\nexport const TimeSelect = ({\n startTime = START_TIME_DEFAULT,\n endTime = END_TIME_DEFAULT,\n interval = 30,\n onChange = undefined,\n className = '',\n size = 'default',\n portal = true,\n ...inputProps\n}: Props) => {\n if (!isValidTime(startTime)) {\n console.error(`Invalid startTime: ${startTime}`);\n // eslint-disable-next-line no-param-reassign\n startTime = START_TIME_DEFAULT;\n }\n if (!isValidTime(endTime)) {\n console.error(`Invalid endTime: ${endTime}`);\n // eslint-disable-next-line no-param-reassign\n endTime = END_TIME_DEFAULT;\n }\n\n const intervals = useMemo((): Interval[] => {\n const dtEnd = DateTime.fromFormat(endTime, 'HH:mm');\n const durationInterval = Duration.fromObject({ minutes: interval });\n const res = [];\n let i = DateTime.fromFormat(startTime, 'HH:mm');\n while (i <= dtEnd) {\n let raw = i.toFormat('HH:mm');\n // Avoid duplicate keys for \"00:00\" and \"00:00\" (end of day)\n if (raw === '00:00' && i.equals(dtEnd)) raw = '24:00';\n\n res.push({\n label: i.toFormat('h:mm a'),\n value: {\n hour: i.toFormat('HH'),\n min: i.toFormat('mm'),\n raw,\n formatted: i.toFormat('h:mm a'),\n },\n });\n i = i.plus(durationInterval);\n }\n\n return res;\n }, [startTime, endTime, interval]);\n\n const options = intervals.map((time) => ({\n label: time.label,\n value: time.value.raw,\n }));\n\n const handleOnSelect = (e: unknown) => {\n const interval = intervals.find((time) => time.value.raw === e);\n\n if (!interval) return;\n\n onChange?.(interval);\n };\n\n return (\n <Select onValueChange={handleOnSelect} {...inputProps}>\n <SelectTrigger className={cn('max-w-[240px] md:w-[150px]', className)} size={size}>\n <SelectValue placeholder=\"Select one\" />\n </SelectTrigger>\n <SelectContent position=\"popper\" className=\"max-h-90\" portal={portal}>\n {options.map((option) => (\n // Note that labels and values here may appear to be duplicates\n // For example, \"00:00\" and \"24:00\" will both have the same value \"00:00\"\n <SelectItem className=\"h-10\" key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n );\n};\n\nexport default TimeSelect;\n"]}
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkQRO22BPZ_cjs=require('./chunk-QRO22BPZ.cjs'),editor=require('@mdxeditor/editor'),v=require('react'),jsxRuntime=require('react/jsx-runtime');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var v__default=/*#__PURE__*/_interopDefault(v);var T={undoRedo:true,blockType:true,boldItalicUnderline:true,strikeThrough:true,lists:true,link:true,table:true,horizontalRule:true},x=v__default.default.forwardRef(({className:n="",preview:y=false,options:f=T,...a},d)=>{let e={...T,...f};return y?jsxRuntime.jsx(editor.MDXEditor,{plugins:[editor.headingsPlugin(),editor.listsPlugin(),editor.quotePlugin(),editor.thematicBreakPlugin(),editor.linkPlugin(),editor.linkDialogPlugin(),editor.tablePlugin()],className:chunkQRO22BPZ_cjs.a("preview overflow-y-auto",n),...a,readOnly:true,ref:d},"preview"):jsxRuntime.jsx(editor.MDXEditor,{plugins:[editor.headingsPlugin(),editor.listsPlugin(),editor.quotePlugin(),editor.thematicBreakPlugin(),editor.linkPlugin(),editor.linkDialogPlugin(),editor.tablePlugin(),editor.markdownShortcutPlugin(),editor.toolbarPlugin({toolbarContents:()=>jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[e.undoRedo&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.UndoRedo,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.blockType&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.BlockTypeSelect,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.boldItalicUnderline&&jsxRuntime.jsx(editor.BoldItalicUnderlineToggles,{}),e.strikeThrough&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.StrikeThroughSupSubToggles,{options:["Strikethrough"]}),jsxRuntime.jsx(editor.Separator,{})]}),e.lists&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.ListsToggle,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.link&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.CreateLink,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.table&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.InsertTable,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.horizontalRule&&jsxRuntime.jsx(editor.InsertThematicBreak,{})]})})],className:chunkQRO22BPZ_cjs.a("overflow-y-auto rounded-md border border-gray-300 shadow-xs",n),...a,ref:d},"editor")});x.displayName="RichTextEditor";exports.a=x;//# sourceMappingURL=chunk-VE2GV4YU.cjs.map
2
- //# sourceMappingURL=chunk-VE2GV4YU.cjs.map
1
+ 'use strict';var chunkQRO22BPZ_cjs=require('./chunk-QRO22BPZ.cjs'),editor=require('@mdxeditor/editor'),I=require('react'),jsxRuntime=require('react/jsx-runtime');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var I__default=/*#__PURE__*/_interopDefault(I);var y={undoRedo:true,blockType:true,boldItalicUnderline:true,strikeThrough:true,lists:true,link:true,table:true,horizontalRule:true},O=I__default.default.forwardRef(({className:n="",preview:T=false,options:f=y,...a},d)=>{let e={...y,...f};return T?jsxRuntime.jsx(editor.MDXEditor,{plugins:[editor.headingsPlugin(),editor.listsPlugin(),editor.quotePlugin(),editor.thematicBreakPlugin(),editor.linkPlugin(),editor.linkDialogPlugin(),editor.tablePlugin()],className:chunkQRO22BPZ_cjs.a("preview overflow-y-auto",n),...a,readOnly:true,ref:d},"preview"):jsxRuntime.jsx(editor.MDXEditor,{plugins:[editor.headingsPlugin(),editor.listsPlugin(),editor.quotePlugin(),editor.thematicBreakPlugin(),editor.linkPlugin(),editor.linkDialogPlugin(),editor.tablePlugin(),editor.markdownShortcutPlugin(),editor.toolbarPlugin({toolbarContents:()=>jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[e.undoRedo&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.UndoRedo,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.blockType&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.BlockTypeSelect,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.boldItalicUnderline&&jsxRuntime.jsx(editor.BoldItalicUnderlineToggles,{}),e.strikeThrough&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.StrikeThroughSupSubToggles,{options:["Strikethrough"]}),jsxRuntime.jsx(editor.Separator,{})]}),e.lists&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.ListsToggle,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.link&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.CreateLink,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.table&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(editor.InsertTable,{}),jsxRuntime.jsx(editor.Separator,{})]}),e.horizontalRule&&jsxRuntime.jsx(editor.InsertThematicBreak,{})]})})],className:chunkQRO22BPZ_cjs.a("overflow-y-auto rounded-md border border-gray-300 shadow-xs",n),...a,ref:d},"editor")});O.displayName="RichTextEditor";exports.a=O;//# sourceMappingURL=chunk-TGWDTL32.cjs.map
2
+ //# sourceMappingURL=chunk-TGWDTL32.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/v2/rich-text-editor/rich-text-editor.tsx"],"names":["defaultOptions","RichTextEditor","React","className","preview","options","props","editorRef","finalOptions","jsx","MDXEditor","headingsPlugin","listsPlugin","quotePlugin","thematicBreakPlugin","linkPlugin","linkDialogPlugin","tablePlugin","cn","markdownShortcutPlugin","toolbarPlugin","jsxs","Fragment","UndoRedo","Separator","BlockTypeSelect","BoldItalicUnderlineToggles","StrikeThroughSupSubToggles","ListsToggle","CreateLink","InsertTable","InsertThematicBreak"],"mappings":"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","file":"chunk-VE2GV4YU.cjs","sourcesContent":["/* eslint-disable react/require-default-props */\n/* eslint-disable react/no-unstable-nested-components */\nimport type { ForwardedRef } from 'react';\nimport {\n headingsPlugin,\n listsPlugin,\n quotePlugin,\n thematicBreakPlugin,\n MDXEditor,\n type MDXEditorMethods,\n type MDXEditorProps,\n toolbarPlugin,\n linkDialogPlugin,\n linkPlugin,\n tablePlugin,\n BlockTypeSelect,\n BoldItalicUnderlineToggles,\n CreateLink,\n InsertTable,\n InsertThematicBreak,\n ListsToggle,\n Separator,\n StrikeThroughSupSubToggles,\n UndoRedo,\n markdownShortcutPlugin,\n} from '@mdxeditor/editor';\nimport React from 'react';\nimport { cn } from '@/lib/utils';\n\ntype EditorOptions = {\n undoRedo?: boolean;\n blockType?: boolean;\n boldItalicUnderline?: boolean;\n strikeThrough?: boolean;\n lists?: boolean;\n link?: boolean;\n table?: boolean;\n horizontalRule?: boolean;\n};\n\ntype RichTextEditorProps = {\n preview?: boolean;\n options?: EditorOptions;\n} & MDXEditorProps;\n\nconst defaultOptions: EditorOptions = {\n undoRedo: true,\n blockType: true,\n boldItalicUnderline: true,\n strikeThrough: true,\n lists: true,\n link: true,\n table: true,\n horizontalRule: true,\n};\n\nexport const RichTextEditor = React.forwardRef(\n (\n { className = '', preview = false, options = defaultOptions, ...props }: RichTextEditorProps,\n editorRef?: ForwardedRef<MDXEditorMethods> | null,\n ) => {\n const finalOptions = { ...defaultOptions, ...options };\n if (preview) {\n return (\n <MDXEditor\n key=\"preview\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n ]}\n className={cn('preview overflow-y-auto', className)}\n {...props}\n readOnly\n ref={editorRef}\n />\n );\n }\n return (\n <MDXEditor\n key=\"editor\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n markdownShortcutPlugin(),\n toolbarPlugin({\n toolbarContents: () => (\n <>\n {finalOptions.undoRedo && (\n <>\n <UndoRedo />\n <Separator />\n </>\n )}\n {finalOptions.blockType && (\n <>\n <BlockTypeSelect />\n <Separator />\n </>\n )}\n {finalOptions.boldItalicUnderline && <BoldItalicUnderlineToggles />}\n {finalOptions.strikeThrough && (\n <>\n <StrikeThroughSupSubToggles options={['Strikethrough']} />\n <Separator />\n </>\n )}\n {finalOptions.lists && (\n <>\n <ListsToggle />\n <Separator />\n </>\n )}\n {finalOptions.link && (\n <>\n <CreateLink />\n <Separator />\n </>\n )}\n {finalOptions.table && (\n <>\n <InsertTable />\n <Separator />\n </>\n )}\n {finalOptions.horizontalRule && <InsertThematicBreak />}\n </>\n ),\n }),\n ]}\n className={cn('overflow-y-auto rounded-md border border-gray-300 shadow-xs', className)}\n {...props}\n ref={editorRef}\n />\n );\n },\n);\n\nRichTextEditor.displayName = 'RichTextEditor';\n"]}
1
+ {"version":3,"sources":["../src/v2/rich-text-editor/rich-text-editor.tsx"],"names":["defaultOptions","RichTextEditor","React","className","preview","options","props","editorRef","finalOptions","jsx","MDXEditor","headingsPlugin","listsPlugin","quotePlugin","thematicBreakPlugin","linkPlugin","linkDialogPlugin","tablePlugin","cn","markdownShortcutPlugin","toolbarPlugin","jsxs","Fragment","UndoRedo","Separator","BlockTypeSelect","BoldItalicUnderlineToggles","StrikeThroughSupSubToggles","ListsToggle","CreateLink","InsertTable","InsertThematicBreak"],"mappings":"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","file":"chunk-TGWDTL32.cjs","sourcesContent":["/* eslint-disable react/require-default-props */\n/* eslint-disable react/no-unstable-nested-components */\nimport type { ForwardedRef } from 'react';\nimport {\n headingsPlugin,\n listsPlugin,\n quotePlugin,\n thematicBreakPlugin,\n MDXEditor,\n type MDXEditorMethods,\n type MDXEditorProps,\n toolbarPlugin,\n linkDialogPlugin,\n linkPlugin,\n tablePlugin,\n BlockTypeSelect,\n BoldItalicUnderlineToggles,\n CreateLink,\n InsertTable,\n InsertThematicBreak,\n ListsToggle,\n Separator,\n StrikeThroughSupSubToggles,\n UndoRedo,\n markdownShortcutPlugin,\n} from '@mdxeditor/editor';\nimport React from 'react';\nimport { cn } from '@/lib/utils';\n\ntype EditorOptions = {\n undoRedo?: boolean;\n blockType?: boolean;\n boldItalicUnderline?: boolean;\n strikeThrough?: boolean;\n lists?: boolean;\n link?: boolean;\n table?: boolean;\n horizontalRule?: boolean;\n};\n\ntype RichTextEditorProps = {\n preview?: boolean;\n options?: EditorOptions;\n} & MDXEditorProps;\n\nconst defaultOptions: EditorOptions = {\n undoRedo: true,\n blockType: true,\n boldItalicUnderline: true,\n strikeThrough: true,\n lists: true,\n link: true,\n table: true,\n horizontalRule: true,\n};\n\nexport const RichTextEditor = React.forwardRef(\n (\n { className = '', preview = false, options = defaultOptions, ...props }: RichTextEditorProps,\n editorRef?: ForwardedRef<MDXEditorMethods> | null,\n ) => {\n const finalOptions = { ...defaultOptions, ...options };\n if (preview) {\n return (\n <MDXEditor\n key=\"preview\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n ]}\n className={cn('preview overflow-y-auto', className)}\n {...props}\n readOnly\n ref={editorRef}\n />\n );\n }\n return (\n <MDXEditor\n key=\"editor\"\n plugins={[\n headingsPlugin(),\n listsPlugin(),\n quotePlugin(),\n thematicBreakPlugin(),\n linkPlugin(),\n linkDialogPlugin(),\n tablePlugin(),\n markdownShortcutPlugin(),\n toolbarPlugin({\n toolbarContents: () => (\n <>\n {finalOptions.undoRedo && (\n <>\n <UndoRedo />\n <Separator />\n </>\n )}\n {finalOptions.blockType && (\n <>\n <BlockTypeSelect />\n <Separator />\n </>\n )}\n {finalOptions.boldItalicUnderline && <BoldItalicUnderlineToggles />}\n {finalOptions.strikeThrough && (\n <>\n <StrikeThroughSupSubToggles options={['Strikethrough']} />\n <Separator />\n </>\n )}\n {finalOptions.lists && (\n <>\n <ListsToggle />\n <Separator />\n </>\n )}\n {finalOptions.link && (\n <>\n <CreateLink />\n <Separator />\n </>\n )}\n {finalOptions.table && (\n <>\n <InsertTable />\n <Separator />\n </>\n )}\n {finalOptions.horizontalRule && <InsertThematicBreak />}\n </>\n ),\n }),\n ]}\n className={cn('overflow-y-auto rounded-md border border-gray-300 shadow-xs', className)}\n {...props}\n ref={editorRef}\n />\n );\n },\n);\n\nRichTextEditor.displayName = 'RichTextEditor';\n\nexport { type MDXEditorMethods, type MDXEditorProps };\n"]}
@@ -0,0 +1,2 @@
1
+ import {a}from'./chunk-YTIIAU4W.js';import*as t from'@radix-ui/react-hover-card';import {jsx}from'react/jsx-runtime';function m({...o}){return jsx(t.Root,{"data-slot":"hover-card",...o})}function s({...o}){return jsx(t.Trigger,{"data-slot":"hover-card-trigger",...o})}function v({className:o,align:a$1="center",sideOffset:i=4,...d}){return jsx(t.Portal,{"data-slot":"hover-card-portal",children:jsx(t.Content,{"data-slot":"hover-card-content",align:a$1,sideOffset:i,className:a("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-w-xl origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden",o),...d})})}export{m as a,s as b,v as c};//# sourceMappingURL=chunk-XH6WCBQY.js.map
2
+ //# sourceMappingURL=chunk-XH6WCBQY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/v2/hover-card/hover-card.tsx"],"names":["HoverCard","props","jsx","HoverCardTrigger","HoverCardContent","className","align","sideOffset","cn"],"mappings":"qHAKA,SAASA,CAAU,CAAA,CAAE,GAAGC,CAAM,EAAyD,CACrF,OAAOC,GAAoB,CAAA,CAAA,CAAA,IAAA,CAAnB,CAAwB,WAAU,CAAA,YAAA,CAAc,GAAGD,CAAAA,CAAO,CACpE,CAEA,SAASE,CAAiB,CAAA,CAAE,GAAGF,CAAM,CAAA,CAA4D,CAC/F,OAAOC,IAAoB,CAAnB,CAAA,OAAA,CAAA,CAA2B,YAAU,oBAAsB,CAAA,GAAGD,EAAO,CAC/E,CAEA,SAASG,CAAAA,CAAiB,CACxB,SAAAC,CAAAA,CAAAA,CACA,KAAAC,CAAAA,GAAAA,CAAQ,SACR,UAAAC,CAAAA,CAAAA,CAAa,CACb,CAAA,GAAGN,CACL,CAA4D,CAAA,CAC1D,OACEC,GAAAA,CAAoB,SAAnB,CAA0B,WAAA,CAAU,mBACnC,CAAA,QAAA,CAAAA,IAAoB,CAAnB,CAAA,OAAA,CAAA,CACC,WAAU,CAAA,oBAAA,CACV,MAAOI,GACP,CAAA,UAAA,CAAYC,CACZ,CAAA,SAAA,CAAWC,EACT,ueACAH,CAAAA,CACF,EACC,GAAGJ,CAAAA,CACN,EACF,CAEJ","file":"chunk-XH6WCBQY.js","sourcesContent":["import * as React from 'react';\nimport * as HoverCardPrimitive from '@radix-ui/react-hover-card';\n\nimport { cn } from '@/lib/utils';\n\nfunction HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n return <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\nfunction HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n return <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />;\n}\n\nfunction HoverCardContent({\n className,\n align = 'center',\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n return (\n <HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n <HoverCardPrimitive.Content\n data-slot=\"hover-card-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-w-xl origin-(--radix-hover-card-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden',\n className,\n )}\n {...props}\n />\n </HoverCardPrimitive.Portal>\n );\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"]}