neko-ui 2.6.7 → 2.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -6
- package/es/@moneko/routes/index.d.ts +1 -1
- package/es/back-top/style.js +1 -3
- package/es/back-top/style.js.map +1 -1
- package/es/button/style.js.map +1 -1
- package/es/capture-screen/index.js +1 -1
- package/es/capture-screen/index.js.map +1 -1
- package/es/cron/begin-interval.d.ts +1 -0
- package/es/cron/index.js +1 -1
- package/es/cron/index.js.map +1 -1
- package/es/cron/item.d.ts +1 -0
- package/es/cron/period.d.ts +1 -0
- package/es/cron/some.d.ts +1 -0
- package/es/date-picker/index.js +1 -1
- package/es/date-picker/index.js.map +1 -1
- package/es/img/style.js +0 -2
- package/es/img/style.js.map +1 -1
- package/es/index.d.ts +1 -0
- package/es/index.js +1 -1
- package/es/index.js.map +1 -1
- package/es/md-style/index.js +6 -8
- package/es/md-style/index.js.map +1 -1
- package/es/modal/hooks.d.ts +5 -0
- package/es/modal/hooks.js +2 -0
- package/es/modal/hooks.js.map +1 -0
- package/es/modal/style.js +3 -4
- package/es/modal/style.js.map +1 -1
- package/es/notification/index.d.ts +59 -0
- package/es/notification/index.js +2 -0
- package/es/notification/index.js.map +1 -0
- package/es/notification/notification.d.ts +3 -0
- package/es/notification/notification.js +2 -0
- package/es/notification/notification.js.map +1 -0
- package/es/notification/queque.d.ts +46 -0
- package/es/notification/queque.js +2 -0
- package/es/notification/queque.js.map +1 -0
- package/es/notification/styles.d.ts +1 -0
- package/es/notification/styles.js +97 -0
- package/es/notification/styles.js.map +1 -0
- package/es/popover/index.js +1 -1
- package/es/popover/index.js.map +1 -1
- package/es/popover/style.js +1 -3
- package/es/popover/style.js.map +1 -1
- package/es/prism/css.js +1 -3
- package/es/prism/css.js.map +1 -1
- package/es/select/index.js +1 -1
- package/es/select/index.js.map +1 -1
- package/es/theme/index.js +10 -8
- package/es/theme/index.js.map +1 -1
- package/es/tree/index.d.ts +3 -99
- package/es/tree/index.js +1 -1
- package/es/tree/index.js.map +1 -1
- package/es/tree/register.d.ts +1 -0
- package/es/tree/register.js +2 -0
- package/es/tree/register.js.map +1 -0
- package/es/tree/type.d.ts +104 -0
- package/es/tree/type.js +2 -0
- package/es/tree/type.js.map +1 -0
- package/lib/@moneko/routes/index.d.ts +1 -1
- package/lib/back-top/style.js +1 -3
- package/lib/back-top/style.js.map +1 -1
- package/lib/button/style.js.map +1 -1
- package/lib/capture-screen/index.js +1 -1
- package/lib/capture-screen/index.js.map +1 -1
- package/lib/cron/begin-interval.d.ts +1 -0
- package/lib/cron/index.js +1 -1
- package/lib/cron/index.js.map +1 -1
- package/lib/cron/item.d.ts +1 -0
- package/lib/cron/period.d.ts +1 -0
- package/lib/cron/some.d.ts +1 -0
- package/lib/img/style.js +0 -2
- package/lib/img/style.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/md-style/index.js +6 -8
- package/lib/md-style/index.js.map +1 -1
- package/lib/modal/hooks.d.ts +5 -0
- package/lib/modal/hooks.js +2 -0
- package/lib/modal/hooks.js.map +1 -0
- package/lib/modal/style.js +3 -4
- package/lib/modal/style.js.map +1 -1
- package/lib/notification/index.d.ts +59 -0
- package/lib/notification/index.js +2 -0
- package/lib/notification/index.js.map +1 -0
- package/lib/notification/notification.d.ts +3 -0
- package/lib/notification/notification.js +2 -0
- package/lib/notification/notification.js.map +1 -0
- package/lib/notification/queque.d.ts +46 -0
- package/lib/notification/queque.js +2 -0
- package/lib/notification/queque.js.map +1 -0
- package/lib/notification/styles.d.ts +1 -0
- package/lib/notification/styles.js +97 -0
- package/lib/notification/styles.js.map +1 -0
- package/lib/popover/index.js +1 -1
- package/lib/popover/index.js.map +1 -1
- package/lib/popover/style.js +1 -3
- package/lib/popover/style.js.map +1 -1
- package/lib/prism/css.js +1 -3
- package/lib/prism/css.js.map +1 -1
- package/lib/theme/index.js +8 -6
- package/lib/theme/index.js.map +1 -1
- package/lib/tree/index.d.ts +3 -99
- package/lib/tree/index.js +1 -1
- package/lib/tree/index.js.map +1 -1
- package/lib/tree/register.d.ts +1 -0
- package/lib/tree/register.js +2 -0
- package/lib/tree/register.js.map +1 -0
- package/lib/tree/type.d.ts +104 -0
- package/lib/tree/type.js +2 -0
- package/lib/tree/type.js.map +1 -0
- package/package.json +23 -21
- package/umd/index.js +1 -1
- package/es/@introduce/api.md +0 -158
- package/es/@introduce/getting-started/api.md +0 -34
- package/es/@introduce/html/doc.md +0 -45
- package/es/@introduce/react/doc.md +0 -49
- package/es/@introduce/solid/doc.md +0 -39
- package/es/@introduce/vue/doc.md +0 -54
- package/es/@moneko/cli/doc.md +0 -211
- package/es/@moneko/config/api.md +0 -213
- package/es/@moneko/locales/doc.md +0 -130
- package/es/@moneko/mock/api.md +0 -177
- package/es/@moneko/request/api.md +0 -31
- package/es/@moneko/routes/doc.md +0 -81
- package/es/@moneko/sso/api.md +0 -158
- package/lib/@introduce/api.md +0 -158
- package/lib/@introduce/getting-started/api.md +0 -34
- package/lib/@introduce/html/doc.md +0 -45
- package/lib/@introduce/react/doc.md +0 -49
- package/lib/@introduce/solid/doc.md +0 -39
- package/lib/@introduce/vue/doc.md +0 -54
- package/lib/@moneko/cli/doc.md +0 -211
- package/lib/@moneko/config/api.md +0 -213
- package/lib/@moneko/locales/doc.md +0 -130
- package/lib/@moneko/mock/api.md +0 -177
- package/lib/@moneko/request/api.md +0 -31
- package/lib/@moneko/routes/doc.md +0 -81
- package/lib/@moneko/sso/api.md +0 -158
package/es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../components/index.ts"],"sourcesContent":["export { default as Avatar, type AvatarElement, type AvatarProps } from './avatar';\nexport {\n default as AvatarGroup,\n type AvatarGroupElement,\n type AvatarGroupProps,\n} from './avatar/group';\nexport { default as BackTop, type BackTopElement, type BackTopProps } from './back-top';\nexport { type BaseOption, type BasicConfig, FieldName, Size, Status } from './basic-config';\nexport { default as Button, type ButtonElement, type ButtonProps } from './button';\nexport {\n default as CaptureScreen,\n type CaptureScreenElement,\n type CaptureScreenProps,\n} from './capture-screen';\nexport { default as Carousel, type CarouselElement, type CarouselProps } from './carousel';\nexport {\n default as Checkbox,\n type CheckboxBoolElement,\n type CheckboxBoolProps,\n type CheckboxGroupElement,\n type CheckboxGroupProps,\n} from './checkbox';\nexport { default as Code, type CodeElement, type CodeProps } from './code';\nexport {\n default as ColorPalette,\n type ColorPaletteElement,\n type ColorPaletteProps,\n} from './color-palette';\nexport {\n default as ColorPicker,\n type ColorPickerElement,\n type ColorPickerProps,\n} from './color-picker';\nexport { default as Cron, type CronElement, type CronProps } from './cron';\nexport { default as DatePicker, type DatePickerProps, type DatePickerElement } from './date-picker';\nexport {\n default as Dropdown,\n type DropdownElement,\n type DropdownMultipleElement,\n type DropdownMultipleProps,\n type DropdownProps,\n} from './dropdown';\nexport { default as Empty, type EmptyElement, type EmptyProps } from './empty';\nexport { default as fromSchema } from './from-schema';\nexport { default as getOptions } from './get-options';\nexport {\n default as HighlightText,\n type HighlightTextElement,\n type HighlightTextProps,\n} from './highlight-text';\nexport { default as Img, type ImgElement, type ImgProps } from './img';\nexport { default as Input, type InputElement, type InputProps } from './input';\nexport {\n default as InputNumber,\n type InputNumberElement,\n type InputNumberProps,\n} from './input-number';\nexport { default as Md, type MdElement, type MdProps } from './md';\nexport { default as mdStyle } from './md-style';\nexport {\n default as Menu,\n type MenuElement,\n type MenuMultipleElement,\n type MenuMultipleProps,\n type MenuOption,\n type MenuProps,\n} from './menu';\nexport {\n default as Modal,\n type ModalElement,\n type ModalProps,\n type OpenStateKey,\n OpenState,\n} from './modal';\nexport { default as Pagination, type PaginationProps, type PaginationElement } from './pagination';\nexport { default as Popover, type PopoverElement, type PopoverProps } from './popover';\nexport { default as Radio, type RadioElement, type RadioOption, type RadioProps } from './radio';\nexport { default as Segmented, type SegmentedElement, type SegmentedProps } from './segmented';\nexport {\n default as Select,\n type SelectElement,\n type SelectMultipleElement,\n type SelectMultipleProps,\n type SelectProps,\n} from './select';\nexport { default as Skeleton, type SkeletonElement, type SkeletonProps } from './skeleton';\nexport { default as Spin, type SpinElement, type SpinProps } from './spin';\nexport { default as Switch, type SwitchElement, type SwitchProps } from './switch';\nexport { default as Table, type TableElement, type TableProps } from './table';\nexport { default as Tabs, type TabOption, type TabsElement, type TabsProps } from './tabs';\nexport { default as Tag, type TagElement, type TagProps } from './tag';\nexport {\n default as theme,\n type ColorScheme,\n type ThemeOption,\n generateTheme,\n toneColor,\n} from './theme';\nexport {\n default as Tree,\n type TreeElement,\n type TreeMultipleElement,\n type TreeMultipleProps,\n type TreeMultipleSchemaElement,\n type TreeMultipleSchemaProps,\n type TreeMultipleStringElement,\n type TreeMultipleStringProps,\n type TreeProps,\n type TreeSchemaElement,\n type TreeSchemaProps,\n type TreeStringElement,\n type TreeStringProps,\n} from './tree';\nexport { default as Typography, type TypographyElement, type TypographyProps } from './typography';\nexport { default as dayjs } from './date-picker/dayjs';\nexport { default as Provider, type ProviderElement, type ProviderProps } from './provider';\nexport { hot, customElement, noShadowDOM, withSolid, getCurrentElement } from 'solid-element';\nexport type { CustomElement } from 'custom-element-type';\nimport type {\n AvatarElement,\n AvatarGroupElement,\n BackTopElement,\n ButtonElement,\n CaptureScreenElement,\n CarouselElement,\n CheckboxBoolElement,\n CheckboxGroupElement,\n CodeElement,\n ColorPaletteElement,\n ColorPickerElement,\n CronElement,\n DatePickerElement,\n DropdownElement,\n DropdownMultipleElement,\n EmptyElement,\n HighlightTextElement,\n ImgElement,\n InputElement,\n InputNumberElement,\n MdElement,\n MenuElement,\n MenuMultipleElement,\n ModalElement,\n PaginationElement,\n PopoverElement,\n ProviderElement,\n RadioElement,\n SegmentedElement,\n SelectElement,\n SelectMultipleElement,\n SkeletonElement,\n SpinElement,\n SwitchElement,\n TableElement,\n TabsElement,\n TagElement,\n TreeElement,\n TreeMultipleElement,\n TreeMultipleSchemaElement,\n TreeMultipleStringElement,\n TreeSchemaElement,\n TreeStringElement,\n TypographyElement,\n} from '.';\nimport type { ICustomElement, Transform } from 'custom-element-type';\n\n/** 组件列表\n * @author monako97\n * @ignore optional\n */\ninterface CustomElementTags {\n /** 头像 */\n 'n-avatar': AvatarElement;\n /** 头像组 */\n 'n-avatar-group': AvatarGroupElement;\n /** 返回顶部 */\n 'n-back-top': BackTopElement;\n /** 按钮 */\n 'n-button': ButtonElement;\n /** 捕获屏幕 */\n 'n-capture-screen': CaptureScreenElement;\n /** 走马灯、轮播 */\n 'n-carousel': CarouselElement;\n /** 复选框 */\n 'n-checkbox': CheckboxBoolElement | CheckboxGroupElement;\n /** 代码框 */\n 'n-code': CodeElement;\n /** 取色器 */\n 'n-color-palette': ColorPaletteElement;\n /** 取色器(弹出类型) */\n 'n-color-picker': ColorPickerElement;\n /** 下拉面板 */\n 'n-dropdown': DropdownElement | DropdownMultipleElement;\n /** 空面板 */\n 'n-empty': EmptyElement;\n /** 匹配高亮文字 */\n 'n-highlight-text': HighlightTextElement;\n /** 图片查看器 */\n 'n-img': ImgElement;\n /** 输入框 */\n 'n-input': InputElement;\n /** 数字输入框 */\n 'n-input-number': InputNumberElement;\n /** Markdown渲染 */\n 'n-md': MdElement;\n /** 弹出气泡面板 */\n 'n-popover': PopoverElement;\n /** 单选项 */\n 'n-radio': RadioElement;\n /** 分段控制器 */\n 'n-segmented': SegmentedElement;\n /** 下拉选择框 */\n 'n-select': SelectElement | SelectMultipleElement;\n /** 骨架屏 */\n 'n-skeleton': SkeletonElement;\n /** 加载中 */\n 'n-spin': SpinElement;\n /** 开关 */\n 'n-switch': SwitchElement;\n /** 树形渲染 */\n 'n-tree':\n | TreeElement\n | TreeStringElement\n | TreeSchemaElement\n | TreeMultipleElement\n | TreeMultipleStringElement\n | TreeMultipleSchemaElement;\n /** 文字排版 */\n 'n-typography': TypographyElement;\n /** 标签页 */\n 'n-tabs': TabsElement;\n /** 标签 */\n 'n-tag': TagElement;\n /** 导航菜单 */\n 'n-menu': MenuElement | MenuMultipleElement;\n /** Cron表达式编辑器 */\n 'n-cron': CronElement;\n /** 日期选择器\n * @since 2.1.0\n */\n 'n-data-picker': DatePickerElement;\n /** 数据表格\n * @since 2.2.0\n */\n 'n-table': TableElement;\n /** 分页器\n * @since 2.2.0\n */\n 'n-pagination': PaginationElement;\n /** 响应内部变化\n * @since 2.3.0\n */\n 'n-provider': ProviderElement;\n /** 模态框\n * @since 2.6.0\n */\n 'n-modal': ModalElement;\n}\ntype IntrinsicNekoElement = Transform<CustomElementTags>;\n\ndeclare module 'solid-js' {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace JSX {\n export interface IntrinsicElements extends HTMLElementTags, IntrinsicNekoElement {}\n }\n interface HTMLElementTagNameMap extends IntrinsicNekoElement {}\n}\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace JSX {\n export interface IntrinsicElements extends IntrinsicNekoElement {}\n }\n interface HTMLElementTagNameMap extends IntrinsicNekoElement {}\n}\n\nexport interface ComponentOptions<T> {\n element: T & ICustomElement;\n}\n"],"names":["default","Avatar","AvatarGroup","BackTop","FieldName","Size","Status","Button","CaptureScreen","Carousel","Checkbox","Code","ColorPalette","ColorPicker","Cron","DatePicker","Dropdown","Empty","fromSchema","getOptions","HighlightText","Img","Input","InputNumber","Md","mdStyle","Menu","Modal","OpenState","Pagination","Popover","Radio","Segmented","Select","Skeleton","Spin","Switch","Table","Tabs","Tag","theme","generateTheme","toneColor","Tree","Typography","dayjs","Provider","hot","customElement","noShadowDOM","withSolid","getCurrentElement"],"mappings":"AAAA,OAASA,WAAWC,MAAM,KAA8C,UAAW,AACnF,QACED,WAAWE,WAAW,KAGjB,gBAAiB,AACxB,QAASF,WAAWG,OAAO,KAAgD,YAAa,AACxF,QAA4CC,SAAS,CAAEC,IAAI,CAAEC,MAAM,KAAQ,gBAAiB,AAC5F,QAASN,WAAWO,MAAM,KAA8C,UAAW,AACnF,QACEP,WAAWQ,aAAa,KAGnB,kBAAmB,AAC1B,QAASR,WAAWS,QAAQ,KAAkD,YAAa,AAC3F,QACET,WAAWU,QAAQ,KAKd,YAAa,AACpB,QAASV,WAAWW,IAAI,KAA0C,QAAS,AAC3E,QACEX,WAAWY,YAAY,KAGlB,iBAAkB,AACzB,QACEZ,WAAWa,WAAW,KAGjB,gBAAiB,AACxB,QAASb,WAAWc,IAAI,KAA0C,QAAS,AAC3E,QAASd,WAAWe,UAAU,KAAsD,eAAgB,AACpG,QACEf,WAAWgB,QAAQ,KAKd,YAAa,AACpB,QAAShB,WAAWiB,KAAK,KAA4C,SAAU,AAC/E,QAASjB,WAAWkB,UAAU,KAAQ,eAAgB,AACtD,QAASlB,WAAWmB,UAAU,KAAQ,eAAgB,AACtD,QACEnB,WAAWoB,aAAa,KAGnB,kBAAmB,AAC1B,QAASpB,WAAWqB,GAAG,KAAwC,OAAQ,AACvE,QAASrB,WAAWsB,KAAK,KAA4C,SAAU,AAC/E,QACEtB,WAAWuB,WAAW,KAGjB,gBAAiB,AACxB,QAASvB,WAAWwB,EAAE,KAAsC,MAAO,AACnE,QAASxB,WAAWyB,OAAO,KAAQ,YAAa,AAChD,QACEzB,WAAW0B,IAAI,KAMV,QAAS,AAChB,QACE1B,WAAW2B,KAAK,CAIhBC,SAAS,KACJ,SAAU,AACjB,QAAS5B,WAAW6B,UAAU,KAAsD,cAAe,AACnG,QAAS7B,WAAW8B,OAAO,KAAgD,WAAY,AACvF,QAAS9B,WAAW+B,KAAK,KAA8D,SAAU,AACjG,QAAS/B,WAAWgC,SAAS,KAAoD,aAAc,AAC/F,QACEhC,WAAWiC,MAAM,KAKZ,UAAW,AAClB,QAASjC,WAAWkC,QAAQ,KAAkD,YAAa,AAC3F,QAASlC,WAAWmC,IAAI,KAA0C,QAAS,AAC3E,QAASnC,WAAWoC,MAAM,KAA8C,UAAW,AACnF,QAASpC,WAAWqC,KAAK,KAA4C,SAAU,AAC/E,QAASrC,WAAWsC,IAAI,KAA0D,QAAS,AAC3F,QAAStC,WAAWuC,GAAG,KAAwC,OAAQ,AACvE,QACEvC,WAAWwC,KAAK,CAGhBC,aAAa,CACbC,SAAS,KACJ,SAAU,AACjB,QACE1C,WAAW2C,IAAI,KAaV,QAAS,AAChB,QAAS3C,WAAW4C,UAAU,KAAsD,cAAe,AACnG,QAAS5C,WAAW6C,KAAK,KAAQ,qBAAsB,AACvD,QAAS7C,WAAW8C,QAAQ,KAAkD,YAAa,AAC3F,QAASC,GAAG,CAAEC,aAAa,CAAEC,WAAW,CAAEC,SAAS,CAAEC,iBAAiB,KAAQ,eAAgB"}
|
|
1
|
+
{"version":3,"sources":["../components/index.ts"],"sourcesContent":["'use client';\n\nexport { default as Avatar, type AvatarElement, type AvatarProps } from './avatar';\nexport {\n default as AvatarGroup,\n type AvatarGroupElement,\n type AvatarGroupProps,\n} from './avatar/group';\nexport { default as BackTop, type BackTopElement, type BackTopProps } from './back-top';\nexport { type BaseOption, type BasicConfig, FieldName, Size, Status } from './basic-config';\nexport { default as Button, type ButtonElement, type ButtonProps } from './button';\nexport {\n default as CaptureScreen,\n type CaptureScreenElement,\n type CaptureScreenProps,\n} from './capture-screen';\nexport { default as Carousel, type CarouselElement, type CarouselProps } from './carousel';\nexport {\n default as Checkbox,\n type CheckboxBoolElement,\n type CheckboxBoolProps,\n type CheckboxGroupElement,\n type CheckboxGroupProps,\n} from './checkbox';\nexport { default as Code, type CodeElement, type CodeProps } from './code';\nexport {\n default as ColorPalette,\n type ColorPaletteElement,\n type ColorPaletteProps,\n} from './color-palette';\nexport {\n default as ColorPicker,\n type ColorPickerElement,\n type ColorPickerProps,\n} from './color-picker';\nexport { default as Cron, type CronElement, type CronProps } from './cron';\nexport { default as DatePicker, type DatePickerProps, type DatePickerElement } from './date-picker';\nexport {\n default as Dropdown,\n type DropdownElement,\n type DropdownMultipleElement,\n type DropdownMultipleProps,\n type DropdownProps,\n} from './dropdown';\nexport { default as Empty, type EmptyElement, type EmptyProps } from './empty';\nexport { default as fromSchema } from './from-schema';\nexport { default as getOptions } from './get-options';\nexport {\n default as HighlightText,\n type HighlightTextElement,\n type HighlightTextProps,\n} from './highlight-text';\nexport { default as Img, type ImgElement, type ImgProps } from './img';\nexport { default as Input, type InputElement, type InputProps } from './input';\nexport {\n default as InputNumber,\n type InputNumberElement,\n type InputNumberProps,\n} from './input-number';\nexport { default as Md, type MdElement, type MdProps } from './md';\nexport { default as mdStyle } from './md-style';\nexport {\n default as Menu,\n type MenuElement,\n type MenuMultipleElement,\n type MenuMultipleProps,\n type MenuOption,\n type MenuProps,\n} from './menu';\nexport {\n default as Modal,\n type ModalElement,\n type ModalProps,\n type OpenStateKey,\n OpenState,\n} from './modal';\nexport {\n default as notification,\n type NotificationType,\n type NotificationProps,\n} from './notification';\nexport { default as Pagination, type PaginationProps, type PaginationElement } from './pagination';\nexport { default as Popover, type PopoverElement, type PopoverProps } from './popover';\nexport { default as Radio, type RadioElement, type RadioOption, type RadioProps } from './radio';\nexport { default as Segmented, type SegmentedElement, type SegmentedProps } from './segmented';\nexport {\n default as Select,\n type SelectElement,\n type SelectMultipleElement,\n type SelectMultipleProps,\n type SelectProps,\n} from './select';\nexport { default as Skeleton, type SkeletonElement, type SkeletonProps } from './skeleton';\nexport { default as Spin, type SpinElement, type SpinProps } from './spin';\nexport { default as Switch, type SwitchElement, type SwitchProps } from './switch';\nexport { default as Table, type TableElement, type TableProps } from './table';\nexport { default as Tabs, type TabOption, type TabsElement, type TabsProps } from './tabs';\nexport { default as Tag, type TagElement, type TagProps } from './tag';\nexport {\n default as theme,\n type ColorScheme,\n type ThemeOption,\n generateTheme,\n toneColor,\n} from './theme';\nexport {\n default as Tree,\n type TreeElement,\n type TreeMultipleElement,\n type TreeMultipleProps,\n type TreeMultipleSchemaElement,\n type TreeMultipleSchemaProps,\n type TreeMultipleStringElement,\n type TreeMultipleStringProps,\n type TreeProps,\n type TreeSchemaElement,\n type TreeSchemaProps,\n type TreeStringElement,\n type TreeStringProps,\n} from './tree';\nexport { default as Typography, type TypographyElement, type TypographyProps } from './typography';\nexport { default as dayjs } from './date-picker/dayjs';\nexport { default as Provider, type ProviderElement, type ProviderProps } from './provider';\nexport { hot, customElement, noShadowDOM, withSolid, getCurrentElement } from 'solid-element';\nexport type { CustomElement } from 'custom-element-type';\nimport type {\n AvatarElement,\n AvatarGroupElement,\n BackTopElement,\n ButtonElement,\n CaptureScreenElement,\n CarouselElement,\n CheckboxBoolElement,\n CheckboxGroupElement,\n CodeElement,\n ColorPaletteElement,\n ColorPickerElement,\n CronElement,\n DatePickerElement,\n DropdownElement,\n DropdownMultipleElement,\n EmptyElement,\n HighlightTextElement,\n ImgElement,\n InputElement,\n InputNumberElement,\n MdElement,\n MenuElement,\n MenuMultipleElement,\n ModalElement,\n PaginationElement,\n PopoverElement,\n ProviderElement,\n RadioElement,\n SegmentedElement,\n SelectElement,\n SelectMultipleElement,\n SkeletonElement,\n SpinElement,\n SwitchElement,\n TableElement,\n TabsElement,\n TagElement,\n TreeElement,\n TreeMultipleElement,\n TreeMultipleSchemaElement,\n TreeMultipleStringElement,\n TreeSchemaElement,\n TreeStringElement,\n TypographyElement,\n} from '.';\nimport type { ICustomElement, Transform } from 'custom-element-type';\n\n/** 组件列表\n * @author monako97\n * @ignore optional\n */\ninterface CustomElementTags {\n /** 头像 */\n 'n-avatar': AvatarElement;\n /** 头像组 */\n 'n-avatar-group': AvatarGroupElement;\n /** 返回顶部 */\n 'n-back-top': BackTopElement;\n /** 按钮 */\n 'n-button': ButtonElement;\n /** 捕获屏幕 */\n 'n-capture-screen': CaptureScreenElement;\n /** 走马灯、轮播 */\n 'n-carousel': CarouselElement;\n /** 复选框 */\n 'n-checkbox': CheckboxBoolElement | CheckboxGroupElement;\n /** 代码框 */\n 'n-code': CodeElement;\n /** 取色器 */\n 'n-color-palette': ColorPaletteElement;\n /** 取色器(弹出类型) */\n 'n-color-picker': ColorPickerElement;\n /** 下拉面板 */\n 'n-dropdown': DropdownElement | DropdownMultipleElement;\n /** 空面板 */\n 'n-empty': EmptyElement;\n /** 匹配高亮文字 */\n 'n-highlight-text': HighlightTextElement;\n /** 图片查看器 */\n 'n-img': ImgElement;\n /** 输入框 */\n 'n-input': InputElement;\n /** 数字输入框 */\n 'n-input-number': InputNumberElement;\n /** Markdown渲染 */\n 'n-md': MdElement;\n /** 弹出气泡面板 */\n 'n-popover': PopoverElement;\n /** 单选项 */\n 'n-radio': RadioElement;\n /** 分段控制器 */\n 'n-segmented': SegmentedElement;\n /** 下拉选择框 */\n 'n-select': SelectElement | SelectMultipleElement;\n /** 骨架屏 */\n 'n-skeleton': SkeletonElement;\n /** 加载中 */\n 'n-spin': SpinElement;\n /** 开关 */\n 'n-switch': SwitchElement;\n /** 树形渲染 */\n 'n-tree':\n | TreeElement\n | TreeStringElement\n | TreeSchemaElement\n | TreeMultipleElement\n | TreeMultipleStringElement\n | TreeMultipleSchemaElement;\n /** 文字排版 */\n 'n-typography': TypographyElement;\n /** 标签页 */\n 'n-tabs': TabsElement;\n /** 标签 */\n 'n-tag': TagElement;\n /** 导航菜单 */\n 'n-menu': MenuElement | MenuMultipleElement;\n /** Cron表达式编辑器 */\n 'n-cron': CronElement;\n /** 日期选择器\n * @since 2.1.0\n */\n 'n-data-picker': DatePickerElement;\n /** 数据表格\n * @since 2.2.0\n */\n 'n-table': TableElement;\n /** 分页器\n * @since 2.2.0\n */\n 'n-pagination': PaginationElement;\n /** 响应内部变化\n * @since 2.3.0\n */\n 'n-provider': ProviderElement;\n /** 模态框\n * @since 2.6.0\n */\n 'n-modal': ModalElement;\n}\ntype IntrinsicNekoElement = Transform<CustomElementTags>;\n\ndeclare module 'solid-js' {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace JSX {\n export interface IntrinsicElements extends HTMLElementTags, IntrinsicNekoElement {}\n }\n interface HTMLElementTagNameMap extends IntrinsicNekoElement {}\n}\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace JSX {\n export interface IntrinsicElements extends IntrinsicNekoElement {}\n }\n interface HTMLElementTagNameMap extends IntrinsicNekoElement {}\n}\n\nexport interface ComponentOptions<T> {\n element: T & ICustomElement;\n}\n"],"names":["default","Avatar","AvatarGroup","BackTop","FieldName","Size","Status","Button","CaptureScreen","Carousel","Checkbox","Code","ColorPalette","ColorPicker","Cron","DatePicker","Dropdown","Empty","fromSchema","getOptions","HighlightText","Img","Input","InputNumber","Md","mdStyle","Menu","Modal","OpenState","notification","Pagination","Popover","Radio","Segmented","Select","Skeleton","Spin","Switch","Table","Tabs","Tag","theme","generateTheme","toneColor","Tree","Typography","dayjs","Provider","hot","customElement","noShadowDOM","withSolid","getCurrentElement"],"mappings":"AAEA,OAASA,WAAWC,MAAM,KAA8C,UAAW,AACnF,QACED,WAAWE,WAAW,KAGjB,gBAAiB,AACxB,QAASF,WAAWG,OAAO,KAAgD,YAAa,AACxF,QAA4CC,SAAS,CAAEC,IAAI,CAAEC,MAAM,KAAQ,gBAAiB,AAC5F,QAASN,WAAWO,MAAM,KAA8C,UAAW,AACnF,QACEP,WAAWQ,aAAa,KAGnB,kBAAmB,AAC1B,QAASR,WAAWS,QAAQ,KAAkD,YAAa,AAC3F,QACET,WAAWU,QAAQ,KAKd,YAAa,AACpB,QAASV,WAAWW,IAAI,KAA0C,QAAS,AAC3E,QACEX,WAAWY,YAAY,KAGlB,iBAAkB,AACzB,QACEZ,WAAWa,WAAW,KAGjB,gBAAiB,AACxB,QAASb,WAAWc,IAAI,KAA0C,QAAS,AAC3E,QAASd,WAAWe,UAAU,KAAsD,eAAgB,AACpG,QACEf,WAAWgB,QAAQ,KAKd,YAAa,AACpB,QAAShB,WAAWiB,KAAK,KAA4C,SAAU,AAC/E,QAASjB,WAAWkB,UAAU,KAAQ,eAAgB,AACtD,QAASlB,WAAWmB,UAAU,KAAQ,eAAgB,AACtD,QACEnB,WAAWoB,aAAa,KAGnB,kBAAmB,AAC1B,QAASpB,WAAWqB,GAAG,KAAwC,OAAQ,AACvE,QAASrB,WAAWsB,KAAK,KAA4C,SAAU,AAC/E,QACEtB,WAAWuB,WAAW,KAGjB,gBAAiB,AACxB,QAASvB,WAAWwB,EAAE,KAAsC,MAAO,AACnE,QAASxB,WAAWyB,OAAO,KAAQ,YAAa,AAChD,QACEzB,WAAW0B,IAAI,KAMV,QAAS,AAChB,QACE1B,WAAW2B,KAAK,CAIhBC,SAAS,KACJ,SAAU,AACjB,QACE5B,WAAW6B,YAAY,KAGlB,gBAAiB,AACxB,QAAS7B,WAAW8B,UAAU,KAAsD,cAAe,AACnG,QAAS9B,WAAW+B,OAAO,KAAgD,WAAY,AACvF,QAAS/B,WAAWgC,KAAK,KAA8D,SAAU,AACjG,QAAShC,WAAWiC,SAAS,KAAoD,aAAc,AAC/F,QACEjC,WAAWkC,MAAM,KAKZ,UAAW,AAClB,QAASlC,WAAWmC,QAAQ,KAAkD,YAAa,AAC3F,QAASnC,WAAWoC,IAAI,KAA0C,QAAS,AAC3E,QAASpC,WAAWqC,MAAM,KAA8C,UAAW,AACnF,QAASrC,WAAWsC,KAAK,KAA4C,SAAU,AAC/E,QAAStC,WAAWuC,IAAI,KAA0D,QAAS,AAC3F,QAASvC,WAAWwC,GAAG,KAAwC,OAAQ,AACvE,QACExC,WAAWyC,KAAK,CAGhBC,aAAa,CACbC,SAAS,KACJ,SAAU,AACjB,QACE3C,WAAW4C,IAAI,KAaV,QAAS,AAChB,QAAS5C,WAAW6C,UAAU,KAAsD,cAAe,AACnG,QAAS7C,WAAW8C,KAAK,KAAQ,qBAAsB,AACvD,QAAS9C,WAAW+C,QAAQ,KAAkD,YAAa,AAC3F,QAASC,GAAG,CAAEC,aAAa,CAAEC,WAAW,CAAEC,SAAS,CAAEC,iBAAiB,KAAQ,eAAgB"}
|
package/es/md-style/index.js
CHANGED
|
@@ -7,9 +7,7 @@ import{css as o}from"@moneko/css";let r=o`
|
|
|
7
7
|
.n-photo-header > span,
|
|
8
8
|
.n-md-body,
|
|
9
9
|
.n-md-toc {
|
|
10
|
-
backdrop-filter: blur(
|
|
11
|
-
/* stylelint-disable-next-line */
|
|
12
|
-
-webkit-backdrop-filter: blur(16px);
|
|
10
|
+
backdrop-filter: blur(10px);
|
|
13
11
|
}
|
|
14
12
|
|
|
15
13
|
.n-md-box:not(.site-doc-main) {
|
|
@@ -152,7 +150,11 @@ import{css as o}from"@moneko/css";let r=o`
|
|
|
152
150
|
opacity: 0.4;
|
|
153
151
|
}
|
|
154
152
|
|
|
155
|
-
a[href]::before {
|
|
153
|
+
a[href]:has(img, n-img)::before {
|
|
154
|
+
content: none !important;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
a[href]:not(.site-pagination-link)::before {
|
|
156
158
|
position: absolute;
|
|
157
159
|
inset-block-end: 0;
|
|
158
160
|
inset-inline-start: 0;
|
|
@@ -168,10 +170,6 @@ import{css as o}from"@moneko/css";let r=o`
|
|
|
168
170
|
content: '';
|
|
169
171
|
}
|
|
170
172
|
|
|
171
|
-
a[href]:has(img, n-img)::before {
|
|
172
|
-
content: none !important;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
173
|
a:hover::before {
|
|
176
174
|
transform: scaleX(1);
|
|
177
175
|
}
|
package/es/md-style/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/md-style/index.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nconst mdStyle = css`\n :host,\n :root {\n --table-heading-bg: var(--border-color);\n }\n\n .n-photo-header > span,\n .n-md-body,\n .n-md-toc {\n backdrop-filter: blur(16px);\n /* stylelint-disable-next-line */\n -webkit-backdrop-filter: blur(16px);\n }\n\n .n-md-box:not(.site-doc-main) {\n position: relative;\n display: flex;\n margin: 0 auto;\n max-inline-size: 1280px;\n flex-direction: row-reverse;\n gap: 16px;\n }\n\n .n-md-toc,\n .n-md-body {\n border-radius: var(--border-radius);\n background-color: var(--component-bg);\n box-shadow: 0 2px 8px 0 var(--primary-shadow);\n }\n\n .n-md-body {\n overflow: hidden;\n margin: 0 auto 24px;\n padding: 24px;\n color: var(--text-color);\n max-inline-size: 100%;\n box-sizing: border-box;\n overflow-wrap: break-word;\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: background-color;\n flex: 1;\n }\n\n .n-md-body .n-md-body,\n .n-md-body n-md {\n overflow: visible;\n margin: 0;\n padding: 0;\n background-color: unset;\n backdrop-filter: none;\n box-shadow: none;\n }\n\n .n-md-body:has(div:only-child:empty) {\n margin: 0;\n padding: 0;\n background-color: unset;\n backdrop-filter: none;\n box-shadow: none;\n }\n\n a {\n position: relative;\n text-decoration: none;\n color: var(--text-color);\n }\n\n a:visited {\n color: var(--text-secondary);\n }\n\n a:hover {\n color: var(--primary-hover, #80b3ff);\n }\n\n p {\n padding: 0;\n font-size: var(--font-size);\n line-height: 1.8;\n vertical-align: baseline;\n word-wrap: break-word;\n word-break: break-word;\n content-visibility: auto;\n contain-intrinsic-size: 32px;\n margin-block-end: 1em;\n }\n\n ol {\n margin: 0;\n padding: 0 0 0 24px;\n font-size: var(--font-size);\n }\n\n .n-md-toc {\n position: sticky;\n inset-block-start: 24px;\n inset-inline-end: 0;\n z-index: 10;\n display: block;\n overflow-y: auto;\n margin: 0 0 24px;\n padding: 16px;\n max-inline-size: 200px;\n block-size: fit-content;\n max-block-size: calc(100vb - 132px);\n box-sizing: border-box;\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: border-color, background-color, box-shadow;\n }\n\n .n-md-toc li,\n .n-md-toc ol {\n display: grid;\n inline-size: fit-content;\n max-inline-size: 100%;\n font-size: var(--font-size-sm);\n list-style: none;\n }\n\n .n-md-toc li a {\n overflow: hidden;\n max-inline-size: 100%;\n font-size: var(--font-size-sm);\n text-overflow: ellipsis;\n text-decoration: none;\n white-space: nowrap;\n color: var(--text-color);\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: color;\n }\n\n .n-md-toc .active,\n .n-md-toc .active a {\n color: var(--primary-color, #5794ff);\n text-shadow: 0 1px var(--primary-shadow);\n }\n\n .n-md-toc a[href^='http'],\n .n-md-toc a[href^='\\/\\/'],\n .n-md-body table a[href^='http'] {\n &:not(:has(img, n-img))::after {\n content: ' ⎋';\n opacity: 0.3;\n }\n }\n\n a[href^='mailto:']::after {\n content: ' 📧';\n opacity: 0.4;\n }\n\n a[href]::before {\n position: absolute;\n inset-block-end: 0;\n inset-inline-start: 0;\n inline-size: 100%;\n block-size: 2px;\n background-color: var(--primary-hover, #80b3ff);\n transform: scaleX(0);\n transform-origin: center;\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: transform, background-color;\n opacity: 0.5;\n content: '';\n }\n\n a[href]:has(img, n-img)::before {\n content: none !important;\n }\n\n a:hover::before {\n transform: scaleX(1);\n }\n\n th img[src*='browser-logos'] {\n display: block;\n inline-size: 32px;\n block-size: 32px;\n }\n\n h1::before,\n h2::before,\n h3::before,\n h4::before,\n h5::before,\n h6::before {\n color: var(--primary-color, #5794ff);\n content: attr(data-prefix);\n }\n\n h1[data-prefix]::before,\n h2[data-prefix]::before,\n h3[data-prefix]::before,\n h4[data-prefix]::before,\n h5[data-prefix]::before,\n h6[data-prefix]::before {\n color: var(--primary-color, #5794ff);\n content: attr(data-prefix) !important;\n }\n\n code:not([class]),\n mark {\n border-radius: var(--border-radius);\n padding: 2px 7px;\n font-size: 90%;\n color: var(--primary-heading);\n background-color: var(--text-selection);\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: background-color, color;\n }\n\n [data-prefix] code,\n [data-prefix] mark {\n font-size: 60%;\n }\n\n h1,\n h2,\n h3,\n h4,\n h5 {\n margin-block: 1em;\n font-weight: 500;\n color: var(--text-heading);\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: border-color, background-color, box-shadow, color;\n }\n\n table,\n tr th,\n tr td,\n blockquote,\n blockquote::after,\n blockquote::before,\n blockquote p {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n\n dl {\n padding: 0;\n margin-block-end: 1em;\n }\n\n h1 {\n font-size: 1.6em;\n line-height: 54px;\n }\n\n h2 {\n font-size: 1.5em;\n line-height: 42px;\n counter-increment: section;\n }\n\n h2::before {\n content: counter(section) '. ';\n }\n\n h1,\n h2 {\n border-block-end: 1px dotted var(--border-color);\n padding-block-end: 10px;\n }\n\n h3 {\n font-size: 1.4em;\n line-height: 30px;\n }\n\n h4 {\n font-size: 1.3em;\n line-height: 28px;\n }\n\n h5 {\n font-size: 1.2em;\n list-style: none;\n }\n\n hr {\n margin: 16px 0;\n border: 0 none;\n padding: 0;\n block-size: 2px;\n text-align: start;\n color: var(--text-color);\n background-color: var(--border-color);\n }\n\n p img,\n p n-img {\n position: relative;\n display: flex;\n overflow: hidden;\n margin: auto;\n border-radius: var(--border-radius);\n max-inline-size: 100%;\n inline-size: fit-content;\n cursor: pointer;\n }\n\n ul {\n font-size: var(--font-size);\n }\n\n dl dt {\n margin-block-start: 16px;\n padding: 10px 0;\n font-size: 1em;\n font-weight: bold;\n font-style: italic;\n }\n\n dl dd {\n margin-block-end: 16px;\n margin-inline-start: 0;\n padding: 0 16px;\n }\n\n table {\n overflow: hidden;\n margin-block-end: 16px;\n border-block-end: 1px solid var(--table-heading-bg);\n inline-size: 100%;\n max-inline-size: 100%;\n border-spacing: 0;\n transition-property: border-color;\n word-break: break-all;\n }\n\n table:last-child {\n margin-block-end: 0;\n }\n\n table tbody tr:nth-child(2n) {\n background-color: var(--primary-details-bg);\n }\n\n table tbody tr:hover {\n background-color: var(--primary-selection);\n }\n\n table tr th {\n font-weight: 500;\n min-inline-size: 54px;\n color: var(--text-heading);\n background-color: var(--table-heading-bg);\n transition-property: background-color, color;\n }\n\n table tr th,\n table td {\n padding: 8px 16px;\n }\n\n tr:first-child th:first-child {\n border-start-start-radius: var(--border-radius);\n }\n\n tr:first-child th:last-child {\n border-start-end-radius: var(--border-radius);\n }\n\n blockquote {\n position: relative;\n margin: 30px 48px;\n border-radius: var(--border-radius);\n padding: 16px;\n font-weight: 500;\n background-color: var(--primary-selection);\n transition-property: background-color;\n }\n\n blockquote::before,\n blockquote::after {\n position: absolute;\n font-size: 56px;\n font-family: sans-serif;\n color: var(--primary-active);\n transition-property: color;\n content: '❞';\n line-height: 1;\n }\n\n blockquote::before {\n inset-block-start: -8px;\n inset-inline-start: 0;\n transform: translateX(-44px) rotate(180deg);\n }\n\n blockquote::after {\n inset-inline-end: 0;\n inset-block-end: -8px;\n transform: translateX(44px);\n }\n\n blockquote.n-tip {\n margin: 16px 0 16px 8px;\n border-inline-start: 4px solid var(--primary-color, #5794ff);\n }\n\n blockquote.n-tip::after {\n content: none;\n }\n\n blockquote.n-tip::before {\n inset-block-start: 18px;\n inset-inline-start: -12px;\n border-radius: 100%;\n inline-size: 20px;\n block-size: 20px;\n font-size: 14px;\n font-weight: bold;\n text-align: center;\n color: #fff;\n background-color: var(--primary-color, #5794ff);\n transform: none;\n content: '!';\n line-height: 20px;\n }\n\n blockquote cite {\n font-size: var(--font-size);\n color: var(--cite-color, #bfbfbf);\n line-height: 20px;\n }\n\n blockquote cite::before {\n content: '\\\\2014 \\\\00A0';\n }\n\n blockquote p {\n margin: auto 0;\n font-size: var(--font-size);\n line-height: 24px;\n transition-property: color;\n }\n\n details {\n overflow: hidden;\n border-inline-start: 5px solid var(--primary-hover, #5794ff);\n border-radius: var(--border-radius);\n padding: 12px 24px;\n background: var(--primary-details-bg);\n box-sizing: border-box;\n user-select: none;\n box-shadow: 0 2px 8px 0 var(--primary-shadow, rgb(0 0 0 / 5%));\n }\n\n details,\n details summary {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: background-color, transform, border-color;\n }\n\n details:not(:last-of-type) {\n margin-block-end: 16px;\n }\n\n details > summary,\n details > summary ~ * {\n font-size: var(--font-size);\n font-weight: normal;\n font-style: normal;\n line-height: 1.4;\n transition-property: background-color, transform, border-color, margin;\n }\n\n details > summary:not(:last-of-type) details > summary ~ *:not(:last-of-type) {\n margin-block-end: 16px;\n }\n\n details > summary {\n font-weight: 500;\n outline: none;\n cursor: pointer;\n transform: translateX(-18px);\n }\n\n details > summary::-webkit-details-marker,\n details > summary::marker {\n display: none;\n color: transparent;\n }\n\n details > summary::before {\n display: inline-block;\n margin-inline-end: 4px;\n inline-size: 14px;\n font-weight: lighter;\n text-align: center;\n opacity: 0.5;\n content: '⛌';\n transform: rotate(45deg);\n }\n\n details[open] {\n user-select: auto;\n }\n\n details[open] > details {\n margin-block-start: 10px;\n }\n\n details[open] > summary {\n margin-block-end: 10px;\n }\n\n details[open] > summary::before {\n transform: rotate(0);\n }\n\n .katex-display {\n overflow-x: auto;\n }\n\n .n-photo-header {\n display: flex;\n flex-wrap: wrap;\n padding: 16px;\n gap: 16px;\n }\n\n .n-photo-header > span {\n border-radius: 8px;\n padding: 4px 10px;\n font-size: 14px;\n font-weight: lighter;\n background-color: rgb(0 0 0 / 20%);\n }\n\n .n-code {\n display: block;\n margin-block-end: 16px;\n }\n\n .n-code:last-child {\n margin-block-end: 0;\n }\n\n @media screen and (width <= 1100px) {\n .n-md-box,\n .n-md-box:not(.site-doc-main),\n .n-md-body {\n max-inline-size: auto;\n }\n\n .n-md-toc {\n position: fixed;\n inset-inline-end: 16px;\n transform: translateX(100%);\n transition: transform var(--transition-duration) var(--transition-timing-function);\n\n &:hover {\n transform: translateX(0);\n }\n }\n }\n`;\n\nexport default mdStyle;\n"],"names":["css","mdStyle"],"mappings":"AAAA,OAASA,OAAAA,CAAG,KAAQ,aAAc,CAElC,IAAMC,EAAUD,CAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsjBpB,CAAC,AAED,gBAAeC,CAAQ"}
|
|
1
|
+
{"version":3,"sources":["../../components/md-style/index.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nconst mdStyle = css`\n :host,\n :root {\n --table-heading-bg: var(--border-color);\n }\n\n .n-photo-header > span,\n .n-md-body,\n .n-md-toc {\n backdrop-filter: blur(10px);\n }\n\n .n-md-box:not(.site-doc-main) {\n position: relative;\n display: flex;\n margin: 0 auto;\n max-inline-size: 1280px;\n flex-direction: row-reverse;\n gap: 16px;\n }\n\n .n-md-toc,\n .n-md-body {\n border-radius: var(--border-radius);\n background-color: var(--component-bg);\n box-shadow: 0 2px 8px 0 var(--primary-shadow);\n }\n\n .n-md-body {\n overflow: hidden;\n margin: 0 auto 24px;\n padding: 24px;\n color: var(--text-color);\n max-inline-size: 100%;\n box-sizing: border-box;\n overflow-wrap: break-word;\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: background-color;\n flex: 1;\n }\n\n .n-md-body .n-md-body,\n .n-md-body n-md {\n overflow: visible;\n margin: 0;\n padding: 0;\n background-color: unset;\n backdrop-filter: none;\n box-shadow: none;\n }\n\n .n-md-body:has(div:only-child:empty) {\n margin: 0;\n padding: 0;\n background-color: unset;\n backdrop-filter: none;\n box-shadow: none;\n }\n\n a {\n position: relative;\n text-decoration: none;\n color: var(--text-color);\n }\n\n a:visited {\n color: var(--text-secondary);\n }\n\n a:hover {\n color: var(--primary-hover, #80b3ff);\n }\n\n p {\n padding: 0;\n font-size: var(--font-size);\n line-height: 1.8;\n vertical-align: baseline;\n word-wrap: break-word;\n word-break: break-word;\n content-visibility: auto;\n contain-intrinsic-size: 32px;\n margin-block-end: 1em;\n }\n\n ol {\n margin: 0;\n padding: 0 0 0 24px;\n font-size: var(--font-size);\n }\n\n .n-md-toc {\n position: sticky;\n inset-block-start: 24px;\n inset-inline-end: 0;\n z-index: 10;\n display: block;\n overflow-y: auto;\n margin: 0 0 24px;\n padding: 16px;\n max-inline-size: 200px;\n block-size: fit-content;\n max-block-size: calc(100vb - 132px);\n box-sizing: border-box;\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: border-color, background-color, box-shadow;\n }\n\n .n-md-toc li,\n .n-md-toc ol {\n display: grid;\n inline-size: fit-content;\n max-inline-size: 100%;\n font-size: var(--font-size-sm);\n list-style: none;\n }\n\n .n-md-toc li a {\n overflow: hidden;\n max-inline-size: 100%;\n font-size: var(--font-size-sm);\n text-overflow: ellipsis;\n text-decoration: none;\n white-space: nowrap;\n color: var(--text-color);\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: color;\n }\n\n .n-md-toc .active,\n .n-md-toc .active a {\n color: var(--primary-color, #5794ff);\n text-shadow: 0 1px var(--primary-shadow);\n }\n\n .n-md-toc a[href^='http'],\n .n-md-toc a[href^='\\/\\/'],\n .n-md-body table a[href^='http'] {\n &:not(:has(img, n-img))::after {\n content: ' ⎋';\n opacity: 0.3;\n }\n }\n\n a[href^='mailto:']::after {\n content: ' 📧';\n opacity: 0.4;\n }\n\n a[href]:has(img, n-img)::before {\n content: none !important;\n }\n\n a[href]:not(.site-pagination-link)::before {\n position: absolute;\n inset-block-end: 0;\n inset-inline-start: 0;\n inline-size: 100%;\n block-size: 2px;\n background-color: var(--primary-hover, #80b3ff);\n transform: scaleX(0);\n transform-origin: center;\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: transform, background-color;\n opacity: 0.5;\n content: '';\n }\n\n a:hover::before {\n transform: scaleX(1);\n }\n\n th img[src*='browser-logos'] {\n display: block;\n inline-size: 32px;\n block-size: 32px;\n }\n\n h1::before,\n h2::before,\n h3::before,\n h4::before,\n h5::before,\n h6::before {\n color: var(--primary-color, #5794ff);\n content: attr(data-prefix);\n }\n\n h1[data-prefix]::before,\n h2[data-prefix]::before,\n h3[data-prefix]::before,\n h4[data-prefix]::before,\n h5[data-prefix]::before,\n h6[data-prefix]::before {\n color: var(--primary-color, #5794ff);\n content: attr(data-prefix) !important;\n }\n\n code:not([class]),\n mark {\n border-radius: var(--border-radius);\n padding: 2px 7px;\n font-size: 90%;\n color: var(--primary-heading);\n background-color: var(--text-selection);\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: background-color, color;\n }\n\n [data-prefix] code,\n [data-prefix] mark {\n font-size: 60%;\n }\n\n h1,\n h2,\n h3,\n h4,\n h5 {\n margin-block: 1em;\n font-weight: 500;\n color: var(--text-heading);\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: border-color, background-color, box-shadow, color;\n }\n\n table,\n tr th,\n tr td,\n blockquote,\n blockquote::after,\n blockquote::before,\n blockquote p {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n\n dl {\n padding: 0;\n margin-block-end: 1em;\n }\n\n h1 {\n font-size: 1.6em;\n line-height: 54px;\n }\n\n h2 {\n font-size: 1.5em;\n line-height: 42px;\n counter-increment: section;\n }\n\n h2::before {\n content: counter(section) '. ';\n }\n\n h1,\n h2 {\n border-block-end: 1px dotted var(--border-color);\n padding-block-end: 10px;\n }\n\n h3 {\n font-size: 1.4em;\n line-height: 30px;\n }\n\n h4 {\n font-size: 1.3em;\n line-height: 28px;\n }\n\n h5 {\n font-size: 1.2em;\n list-style: none;\n }\n\n hr {\n margin: 16px 0;\n border: 0 none;\n padding: 0;\n block-size: 2px;\n text-align: start;\n color: var(--text-color);\n background-color: var(--border-color);\n }\n\n p img,\n p n-img {\n position: relative;\n display: flex;\n overflow: hidden;\n margin: auto;\n border-radius: var(--border-radius);\n max-inline-size: 100%;\n inline-size: fit-content;\n cursor: pointer;\n }\n\n ul {\n font-size: var(--font-size);\n }\n\n dl dt {\n margin-block-start: 16px;\n padding: 10px 0;\n font-size: 1em;\n font-weight: bold;\n font-style: italic;\n }\n\n dl dd {\n margin-block-end: 16px;\n margin-inline-start: 0;\n padding: 0 16px;\n }\n\n table {\n overflow: hidden;\n margin-block-end: 16px;\n border-block-end: 1px solid var(--table-heading-bg);\n inline-size: 100%;\n max-inline-size: 100%;\n border-spacing: 0;\n transition-property: border-color;\n word-break: break-all;\n }\n\n table:last-child {\n margin-block-end: 0;\n }\n\n table tbody tr:nth-child(2n) {\n background-color: var(--primary-details-bg);\n }\n\n table tbody tr:hover {\n background-color: var(--primary-selection);\n }\n\n table tr th {\n font-weight: 500;\n min-inline-size: 54px;\n color: var(--text-heading);\n background-color: var(--table-heading-bg);\n transition-property: background-color, color;\n }\n\n table tr th,\n table td {\n padding: 8px 16px;\n }\n\n tr:first-child th:first-child {\n border-start-start-radius: var(--border-radius);\n }\n\n tr:first-child th:last-child {\n border-start-end-radius: var(--border-radius);\n }\n\n blockquote {\n position: relative;\n margin: 30px 48px;\n border-radius: var(--border-radius);\n padding: 16px;\n font-weight: 500;\n background-color: var(--primary-selection);\n transition-property: background-color;\n }\n\n blockquote::before,\n blockquote::after {\n position: absolute;\n font-size: 56px;\n font-family: sans-serif;\n color: var(--primary-active);\n transition-property: color;\n content: '❞';\n line-height: 1;\n }\n\n blockquote::before {\n inset-block-start: -8px;\n inset-inline-start: 0;\n transform: translateX(-44px) rotate(180deg);\n }\n\n blockquote::after {\n inset-inline-end: 0;\n inset-block-end: -8px;\n transform: translateX(44px);\n }\n\n blockquote.n-tip {\n margin: 16px 0 16px 8px;\n border-inline-start: 4px solid var(--primary-color, #5794ff);\n }\n\n blockquote.n-tip::after {\n content: none;\n }\n\n blockquote.n-tip::before {\n inset-block-start: 18px;\n inset-inline-start: -12px;\n border-radius: 100%;\n inline-size: 20px;\n block-size: 20px;\n font-size: 14px;\n font-weight: bold;\n text-align: center;\n color: #fff;\n background-color: var(--primary-color, #5794ff);\n transform: none;\n content: '!';\n line-height: 20px;\n }\n\n blockquote cite {\n font-size: var(--font-size);\n color: var(--cite-color, #bfbfbf);\n line-height: 20px;\n }\n\n blockquote cite::before {\n content: '\\\\2014 \\\\00A0';\n }\n\n blockquote p {\n margin: auto 0;\n font-size: var(--font-size);\n line-height: 24px;\n transition-property: color;\n }\n\n details {\n overflow: hidden;\n border-inline-start: 5px solid var(--primary-hover, #5794ff);\n border-radius: var(--border-radius);\n padding: 12px 24px;\n background: var(--primary-details-bg);\n box-sizing: border-box;\n user-select: none;\n box-shadow: 0 2px 8px 0 var(--primary-shadow, rgb(0 0 0 / 5%));\n }\n\n details,\n details summary {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n transition-property: background-color, transform, border-color;\n }\n\n details:not(:last-of-type) {\n margin-block-end: 16px;\n }\n\n details > summary,\n details > summary ~ * {\n font-size: var(--font-size);\n font-weight: normal;\n font-style: normal;\n line-height: 1.4;\n transition-property: background-color, transform, border-color, margin;\n }\n\n details > summary:not(:last-of-type) details > summary ~ *:not(:last-of-type) {\n margin-block-end: 16px;\n }\n\n details > summary {\n font-weight: 500;\n outline: none;\n cursor: pointer;\n transform: translateX(-18px);\n }\n\n details > summary::-webkit-details-marker,\n details > summary::marker {\n display: none;\n color: transparent;\n }\n\n details > summary::before {\n display: inline-block;\n margin-inline-end: 4px;\n inline-size: 14px;\n font-weight: lighter;\n text-align: center;\n opacity: 0.5;\n content: '⛌';\n transform: rotate(45deg);\n }\n\n details[open] {\n user-select: auto;\n }\n\n details[open] > details {\n margin-block-start: 10px;\n }\n\n details[open] > summary {\n margin-block-end: 10px;\n }\n\n details[open] > summary::before {\n transform: rotate(0);\n }\n\n .katex-display {\n overflow-x: auto;\n }\n\n .n-photo-header {\n display: flex;\n flex-wrap: wrap;\n padding: 16px;\n gap: 16px;\n }\n\n .n-photo-header > span {\n border-radius: 8px;\n padding: 4px 10px;\n font-size: 14px;\n font-weight: lighter;\n background-color: rgb(0 0 0 / 20%);\n }\n\n .n-code {\n display: block;\n margin-block-end: 16px;\n }\n\n .n-code:last-child {\n margin-block-end: 0;\n }\n\n @media screen and (width <= 1100px) {\n .n-md-box,\n .n-md-box:not(.site-doc-main),\n .n-md-body {\n max-inline-size: auto;\n }\n\n .n-md-toc {\n position: fixed;\n inset-inline-end: 16px;\n transform: translateX(100%);\n transition: transform var(--transition-duration) var(--transition-timing-function);\n\n &:hover {\n transform: translateX(0);\n }\n }\n }\n`;\n\nexport default mdStyle;\n"],"names":["css","mdStyle"],"mappings":"AAAA,OAASA,OAAAA,CAAG,KAAQ,aAAc,CAElC,IAAMC,EAAUD,CAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAojBpB,CAAC,AAED,gBAAeC,CAAQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../components/modal/hooks.ts"],"sourcesContent":["import { type ModalProps } from '.';\n\nconst open = (options: ModalProps) => {\n // eslint-disable-next-line no-console\n console.log(options);\n};\n\nexport default {\n open: open,\n};\n"],"names":["open","options","console","log"],"mappings":"AAOA,cAAe,CACbA,KANW,AAACC,IAEZC,QAAQC,GAAG,CAACF,EACd,CAIA,CAAE"}
|
package/es/modal/style.js
CHANGED
|
@@ -30,23 +30,22 @@ import{css as i}from"@moneko/css";export const style=i`
|
|
|
30
30
|
|
|
31
31
|
.mask-blur::before {
|
|
32
32
|
backdrop-filter: blur(10px);
|
|
33
|
-
/* stylelint-disable-next-line */
|
|
34
|
-
-webkit-backdrop-filter: blur(10px);
|
|
35
33
|
}
|
|
36
34
|
|
|
37
35
|
.modal-content {
|
|
38
36
|
margin: auto;
|
|
39
37
|
border-radius: var(--border-radius);
|
|
40
38
|
padding: 20px 24px;
|
|
41
|
-
background-color: var(--component-bg);
|
|
39
|
+
background-color: var(--modal-component-bg);
|
|
42
40
|
opacity: var(--opacity);
|
|
43
|
-
box-shadow: var(--box-shadow
|
|
41
|
+
box-shadow: var(--modal-box-shadow);
|
|
44
42
|
inline-size: 520px;
|
|
45
43
|
max-inline-size: calc(100% - 32px);
|
|
46
44
|
transform: translate3d(var(--x), var(--y), 1px) scale3d(var(--scale), var(--scale), 1);
|
|
47
45
|
transition-property: transform, opacity;
|
|
48
46
|
transition-duration: 0.2s;
|
|
49
47
|
transition-timing-function: var(--timing);
|
|
48
|
+
backdrop-filter: blur(10px);
|
|
50
49
|
}
|
|
51
50
|
|
|
52
51
|
.open {
|
package/es/modal/style.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/modal/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n .portal {\n --opacity: 0;\n --scale: 0;\n --timing: ease-in;\n\n position: fixed;\n box-sizing: border-box;\n inset-block-start: 0;\n inset-inline-start: 0;\n inline-size: 100%;\n block-size: 100%;\n z-index: 99999;\n display: flex;\n\n &::before {\n position: absolute;\n z-index: -1;\n background-color: var(--mask-bg);\n opacity: var(--opacity);\n transition: opacity 0.2s var(--timing);\n inset-inline-start: 0;\n inset-block-start: 0;\n content: '';\n inline-size: 100%;\n block-size: 100%;\n pointer-events: none;\n }\n }\n\n .mask-blur::before {\n backdrop-filter: blur(10px);\n
|
|
1
|
+
{"version":3,"sources":["../../components/modal/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n .portal {\n --opacity: 0;\n --scale: 0;\n --timing: ease-in;\n\n position: fixed;\n box-sizing: border-box;\n inset-block-start: 0;\n inset-inline-start: 0;\n inline-size: 100%;\n block-size: 100%;\n z-index: 99999;\n display: flex;\n\n &::before {\n position: absolute;\n z-index: -1;\n background-color: var(--mask-bg);\n opacity: var(--opacity);\n transition: opacity 0.2s var(--timing);\n inset-inline-start: 0;\n inset-block-start: 0;\n content: '';\n inline-size: 100%;\n block-size: 100%;\n pointer-events: none;\n }\n }\n\n .mask-blur::before {\n backdrop-filter: blur(10px);\n }\n\n .modal-content {\n margin: auto;\n border-radius: var(--border-radius);\n padding: 20px 24px;\n background-color: var(--modal-component-bg);\n opacity: var(--opacity);\n box-shadow: var(--modal-box-shadow);\n inline-size: 520px;\n max-inline-size: calc(100% - 32px);\n transform: translate3d(var(--x), var(--y), 1px) scale3d(var(--scale), var(--scale), 1);\n transition-property: transform, opacity;\n transition-duration: 0.2s;\n transition-timing-function: var(--timing);\n backdrop-filter: blur(10px);\n }\n\n .open {\n --opacity: 0;\n --timing: ease-in;\n\n animation: zoom-in 0.2s var(--timing) forwards;\n }\n\n .closeing {\n --opacity: 1;\n --timing: ease-out;\n\n animation: zoom-out 0.2s var(--timing) forwards;\n }\n\n .modal-header {\n display: flex;\n justify-content: space-between;\n align-items: flex-end;\n }\n\n .modal-title {\n flex: 1;\n }\n\n .modal-close {\n position: absolute;\n inset-inline-end: 10px;\n inset-block-start: 10px;\n\n &::part(label) {\n color: var(--text-color);\n }\n }\n\n @keyframes zoom-in {\n 0% {\n --opacity: 0;\n --scale: 0;\n\n pointer-events: none;\n }\n\n 100% {\n --opacity: 1;\n --scale: 1;\n --x: 0;\n --y: 0;\n }\n }\n\n @keyframes zoom-out {\n 0% {\n --opacity: 1;\n --scale: 1;\n --x: 0;\n --y: 0;\n }\n\n 100% {\n --opacity: 0;\n --scale: 0;\n\n pointer-events: none;\n }\n }\n`;\n"],"names":["css","style"],"mappings":"AAAA,OAASA,OAAAA,CAAG,KAAQ,aAAc,AAElC,QAAO,MAAMC,MAAQD,CAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmHzB,CAAC,AAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { type NotificationProps } from './queque';
|
|
2
|
+
export type { NotificationType, NotificationProps } from './queque';
|
|
3
|
+
/** Api */
|
|
4
|
+
interface Notification {
|
|
5
|
+
/**
|
|
6
|
+
* 信息
|
|
7
|
+
* @param {String} content - 内容.
|
|
8
|
+
* @param {Number} duration - 显示时间.
|
|
9
|
+
* @param {Boolean} close - 显示关闭按钮.
|
|
10
|
+
* @return {String} id
|
|
11
|
+
*/
|
|
12
|
+
info(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;
|
|
13
|
+
/**
|
|
14
|
+
* 成功
|
|
15
|
+
* @param {String} content - 内容.
|
|
16
|
+
* @param {Number} duration - 显示时间.
|
|
17
|
+
* @param {Boolean} close - 显示关闭按钮.
|
|
18
|
+
* @return {String} id
|
|
19
|
+
*/
|
|
20
|
+
success(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;
|
|
21
|
+
/**
|
|
22
|
+
* 错误
|
|
23
|
+
* @param {String} content - 内容.
|
|
24
|
+
* @param {Number} duration - 显示时间.
|
|
25
|
+
* @param {Boolean} close - 显示关闭按钮.
|
|
26
|
+
* @return {String} id
|
|
27
|
+
*/
|
|
28
|
+
error(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;
|
|
29
|
+
/**
|
|
30
|
+
* 警告
|
|
31
|
+
* @param {String} content - 内容.
|
|
32
|
+
* @param {Number} duration - 显示时间.
|
|
33
|
+
* @param {Boolean} close - 显示关闭按钮.
|
|
34
|
+
* @return {String} id
|
|
35
|
+
*/
|
|
36
|
+
warning(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;
|
|
37
|
+
/**
|
|
38
|
+
* 主要
|
|
39
|
+
* @param {String} content - 内容.
|
|
40
|
+
* @param {Number} duration - 显示时间.
|
|
41
|
+
* @param {Boolean} close - 显示关闭按钮.
|
|
42
|
+
* @return {String} id
|
|
43
|
+
*/
|
|
44
|
+
primary(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;
|
|
45
|
+
/**
|
|
46
|
+
* 更新通知内容
|
|
47
|
+
* @param {String} id 通知id
|
|
48
|
+
* @param {NotificationProps} item 更新内容
|
|
49
|
+
* @constructor
|
|
50
|
+
*/
|
|
51
|
+
update(uniqueId: string, item: NotificationProps): void;
|
|
52
|
+
/**
|
|
53
|
+
* 销毁全部通知
|
|
54
|
+
* @constructor
|
|
55
|
+
*/
|
|
56
|
+
destory: VoidFunction;
|
|
57
|
+
}
|
|
58
|
+
declare const _default: Notification;
|
|
59
|
+
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import n from"./notification";import r from"./queque";export default{info:n.bind(null,"info"),success:n.bind(null,"success"),error:n.bind(null,"error"),warning:n.bind(null,"warning"),primary:n.bind(null,"primary"),update:r.update,destory:r.clean};
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../components/notification/index.tsx"],"sourcesContent":["import notification from './notification';\nimport queque, { type NotificationProps } from './queque';\n\nexport type { NotificationType, NotificationProps } from './queque';\n\n/** Api */\ninterface Notification {\n /**\n * 信息\n * @param {String} content - 内容.\n * @param {Number} duration - 显示时间.\n * @param {Boolean} close - 显示关闭按钮.\n * @return {String} id\n */\n info(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;\n /**\n * 成功\n * @param {String} content - 内容.\n * @param {Number} duration - 显示时间.\n * @param {Boolean} close - 显示关闭按钮.\n * @return {String} id\n */\n success(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;\n /**\n * 错误\n * @param {String} content - 内容.\n * @param {Number} duration - 显示时间.\n * @param {Boolean} close - 显示关闭按钮.\n * @return {String} id\n */\n error(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;\n /**\n * 警告\n * @param {String} content - 内容.\n * @param {Number} duration - 显示时间.\n * @param {Boolean} close - 显示关闭按钮.\n * @return {String} id\n */\n warning(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;\n /**\n * 主要\n * @param {String} content - 内容.\n * @param {Number} duration - 显示时间.\n * @param {Boolean} close - 显示关闭按钮.\n * @return {String} id\n */\n primary(content: JSX.Element, duration?: number, close?: boolean, icon?: JSX.Element): string;\n /**\n * 更新通知内容\n * @param {String} id 通知id\n * @param {NotificationProps} item 更新内容\n * @constructor\n */\n update(uniqueId: string, item: NotificationProps): void;\n /**\n * 销毁全部通知\n * @constructor\n */\n destory: VoidFunction;\n}\n\nexport default {\n info: notification.bind(null, 'info'),\n success: notification.bind(null, 'success'),\n error: notification.bind(null, 'error'),\n warning: notification.bind(null, 'warning'),\n primary: notification.bind(null, 'primary'),\n update: queque.update,\n destory: queque.clean,\n} as Notification;\n"],"names":["notification","queque","info","bind","success","error","warning","primary","update","destory","clean"],"mappings":"AAAA,OAAOA,MAAkB,gBAAiB,AAC1C,QAAOC,MAAwC,UAAW,AA4D1D,eAAe,CACbC,KAAMF,EAAaG,IAAI,CAAC,KAAM,QAC9BC,QAASJ,EAAaG,IAAI,CAAC,KAAM,WACjCE,MAAOL,EAAaG,IAAI,CAAC,KAAM,SAC/BG,QAASN,EAAaG,IAAI,CAAC,KAAM,WACjCI,QAASP,EAAaG,IAAI,CAAC,KAAM,WACjCK,OAAQP,EAAOO,MAAM,CACrBC,QAASR,EAAOS,KAAK,AACvB,CAAkB"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{template as e}from"solid-js/web";import{insert as t}from"solid-js/web";import{effect as o}from"solid-js/web";import{delegateEvents as r}from"solid-js/web";import{createComponent as l}from"solid-js/web";import{className as i}from"solid-js/web";let n=e("<style>"),s=e('<span class="close">'),m=e('<div><div class="content">');import{For as c,Show as d,createEffect as a,createUniqueId as u}from"solid-js";import{cx as f}from"@moneko/css";import{render as p}from"solid-js/web";import h from"./queque";import{styles as g}from"./styles";import w from"../theme";let b="n-notification-box";export default((e,r,y=3e3,j,v)=>{let k=u(),{list:x,add:q,remove:C}=h,{baseStyle:E}=w,I=document.getElementById(b);if(q({type:e,icon:v,children:r,close:j,uniqueId:k}),y&&y>0){let e=setTimeout(()=>{C(k),clearTimeout(e)},y)}if(!I){(I=document.createElement("div")).id=b,I.style.position="fixed",I.style.insetBlockStart="16px",I.style.insetInlineStart="50%",I.style.transform="translateX(-50%)",I.attachShadow({mode:"open"});let e=p(()=>(a(()=>{0===x().length&&(e(),null==I||I.remove())}),l(d,{get when(){return x().length},get children(){return[(()=>{let e=n();return t(e,E,null),t(e,g,null),e})(),l(c,{get each(){return x()},children:e=>(()=>{let r=m(),n=r.firstChild;return t(r,l(d,{get when(){return e.icon},get children(){return e.icon}}),n),t(n,()=>e.children),t(r,l(d,{get when(){return e.close},get children(){let t=s();return t.$$click=()=>C(e.uniqueId),t}}),null),o(()=>i(r,f("notification",e.type,e.closeing&&"closeing"))),r})()})]}})),I.shadowRoot);document.body.appendChild(I)}return k});r(["click"]);
|
|
2
|
+
//# sourceMappingURL=notification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../components/notification/notification.tsx"],"sourcesContent":["import { For, Show, createEffect, createUniqueId } from 'solid-js';\nimport { cx } from '@moneko/css';\nimport { render } from 'solid-js/web';\nimport queque, { type NotificationType } from './queque';\nimport { styles } from './styles';\nimport theme from '../theme';\n\nconst mountId = 'n-notification-box';\n\nconst notification = (\n type: keyof typeof NotificationType,\n children: JSX.Element,\n duration = 3000,\n close?: boolean,\n icon?: JSX.Element,\n) => {\n const uniqueId = createUniqueId();\n const { list, add, remove } = queque;\n const { baseStyle } = theme;\n let mount = document.getElementById(mountId);\n\n add({\n type,\n icon,\n children,\n close,\n uniqueId,\n });\n if (duration && duration > 0) {\n const timer = setTimeout(() => {\n remove(uniqueId);\n clearTimeout(timer);\n }, duration);\n }\n if (!mount) {\n mount = document.createElement('div');\n mount.id = mountId;\n mount.style.position = 'fixed';\n mount.style.insetBlockStart = '16px';\n mount.style.insetInlineStart = '50%';\n mount.style.transform = 'translateX(-50%)';\n mount.attachShadow({ mode: 'open' });\n\n const unmount = render(() => {\n createEffect(() => {\n if (list().length === 0) {\n unmount();\n mount?.remove();\n }\n });\n return (\n <Show when={list().length}>\n <style>\n {baseStyle()}\n {styles}\n </style>\n <For each={list()}>\n {(item) => {\n return (\n <div class={cx('notification', item.type, item.closeing && 'closeing')}>\n <Show when={item.icon}>{item.icon}</Show>\n <div class=\"content\">{item.children}</div>\n <Show when={item.close}>\n <span class=\"close\" onClick={() => remove(item.uniqueId)} />\n </Show>\n </div>\n );\n }}\n </For>\n </Show>\n );\n }, mount!.shadowRoot!);\n\n document.body.appendChild(mount);\n }\n return uniqueId;\n};\n\nexport default notification;\n"],"names":["For","Show","createEffect","createUniqueId","cx","render","queque","styles","theme","mountId","type","children","duration","close","icon","uniqueId","list","add","remove","baseStyle","mount","document","getElementById","timer","setTimeout","clearTimeout","createElement","id","style","position","insetBlockStart","insetInlineStart","transform","attachShadow","mode","unmount","length","item","closeing","shadowRoot","body","appendChild"],"mappings":"0UAAA,QAASA,OAAAA,CAAG,CAAEC,QAAAA,CAAI,CAAEC,gBAAAA,CAAY,CAAEC,kBAAAA,CAAc,KAAQ,UAAW,AACnE,QAASC,MAAAA,CAAE,KAAQ,aAAc,AACjC,QAASC,UAAAA,CAAM,KAAQ,cAAe,AACtC,QAAOC,MAAuC,UAAW,AACzD,QAASC,UAAAA,CAAM,KAAQ,UAAW,AAClC,QAAOC,MAAW,UAAW,CAE7B,IAAMC,EAAU,oBAuEhB,eArEqB,CAAA,CACnBC,EACAC,EACAC,EAAW,GAAI,CACfC,EACAC,KAEA,IAAMC,EAAWZ,IACX,CAAEa,KAAAA,CAAI,CAAEC,IAAAA,CAAG,CAAEC,OAAAA,CAAM,CAAE,CAAGZ,EACxB,CAAEa,UAAAA,CAAS,CAAE,CAAGX,EAClBY,EAAQC,SAASC,cAAc,CAACb,GASpC,GAPAQ,EAAI,CACFP,KAAAA,EACAI,KAAAA,EACAH,SAAAA,EACAE,MAAAA,EACAE,SAAAA,CACF,GACIH,GAAYA,EAAW,EAAG,CAC5B,IAAMW,EAAQC,WAAW,KACvBN,EAAOH,GACPU,aAAaF,EACf,EAAGX,EACL,CACA,GAAI,CAACQ,EAAO,CAEVA,AADAA,CAAAA,EAAQC,SAASK,aAAa,CAAC,MAAK,EAC9BC,EAAE,CAAGlB,EACXW,EAAMQ,KAAK,CAACC,QAAQ,CAAG,QACvBT,EAAMQ,KAAK,CAACE,eAAe,CAAG,OAC9BV,EAAMQ,KAAK,CAACG,gBAAgB,CAAG,MAC/BX,EAAMQ,KAAK,CAACI,SAAS,CAAG,mBACxBZ,EAAMa,YAAY,CAAC,CAAEC,KAAM,MAAO,GAElC,IAAMC,EAAU9B,EAAO,KACrBH,EAAa,KACW,IAAlBc,IAAOoB,MAAM,GACfD,UACAf,GAAAA,EAAOF,MAAM,GAEjB,KAEGjB,qBAAWe,IAAOoB,MAAM,mDAEpBjB,YACAZ,gBAEFP,qBAAUgB,cACR,AAACqB,+CAGKpC,qBAAWoC,EAAKvB,IAAI,wBAAGuB,EAAKvB,IAAI,eACXuB,EAAK1B,QAAQ,QAClCV,qBAAWoC,EAAKxB,KAAK,4CACS,IAAMK,EAAOmB,EAAKtB,QAAQ,uBAJ/CX,EAAG,eAAgBiC,EAAK3B,IAAI,CAAE2B,EAAKC,QAAQ,EAAI,2BAYpElB,EAAOmB,UAAU,EAEpBlB,SAASmB,IAAI,CAACC,WAAW,CAACrB,EAC5B,CACA,OAAOL,CACT,CAAA,CAE4B"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/** Api
|
|
2
|
+
* @since 2.7.0
|
|
3
|
+
*/
|
|
4
|
+
export interface NotificationProps {
|
|
5
|
+
/** 通知类型 */
|
|
6
|
+
type: keyof typeof NotificationType;
|
|
7
|
+
/** 通知内容 */
|
|
8
|
+
children: JSX.Element;
|
|
9
|
+
/** 图标 */
|
|
10
|
+
icon?: JSX.Element;
|
|
11
|
+
/**
|
|
12
|
+
* 是否显示关闭按钮
|
|
13
|
+
* @default false
|
|
14
|
+
*/
|
|
15
|
+
close?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* 显示通知时间, 到时自动关闭; 当 duration < 1 时不自动关闭
|
|
18
|
+
* @default 3000
|
|
19
|
+
*/
|
|
20
|
+
duration?: boolean;
|
|
21
|
+
}
|
|
22
|
+
/** 通知类型 */
|
|
23
|
+
export declare enum NotificationType {
|
|
24
|
+
/** 详细 */
|
|
25
|
+
info = "info",
|
|
26
|
+
/** 成功 */
|
|
27
|
+
success = "success",
|
|
28
|
+
/** 错误 */
|
|
29
|
+
error = "error",
|
|
30
|
+
/** 警告 */
|
|
31
|
+
warning = "warning",
|
|
32
|
+
/** 主要 */
|
|
33
|
+
primary = "primary"
|
|
34
|
+
}
|
|
35
|
+
interface NotificationQueQue extends NotificationProps {
|
|
36
|
+
uniqueId: string;
|
|
37
|
+
closeing?: boolean;
|
|
38
|
+
}
|
|
39
|
+
declare const queque: {
|
|
40
|
+
list: import("solid-js").Accessor<NotificationQueQue[]>;
|
|
41
|
+
add: (item: NotificationQueQue) => void;
|
|
42
|
+
remove: (uniqueId: string) => void;
|
|
43
|
+
clean: () => void;
|
|
44
|
+
update: (uniqueId: string, item: NotificationProps) => void;
|
|
45
|
+
};
|
|
46
|
+
export default queque;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var r;function e(){return(e=Object.assign||function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[i]=t[i])}return r}).apply(this,arguments)}import{createRoot as t,createSignal as i}from"solid-js";export var NotificationType;(r=NotificationType||(NotificationType={})).info="info",r.success="success",r.error="error",r.warning="warning",r.primary="primary";let n=t(()=>{let[r,t]=i([]);return{list:r,add:function(r){t(e=>[...e,r])},remove:function(r){t(t=>t.map(t=>t.uniqueId===r?e({},t,{closeing:!0}):t));let i=setTimeout(()=>{t(e=>e.filter(e=>e.uniqueId!==r)),clearTimeout(i)},200)},clean:function(){t([])},update:function(r,i){t(t=>t.map(t=>t.uniqueId===r?e({},t,i):t))}}});export default n;
|
|
2
|
+
//# sourceMappingURL=queque.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../components/notification/queque.ts"],"sourcesContent":["import { createRoot, createSignal } from 'solid-js';\n\n/** Api\n * @since 2.7.0\n */\nexport interface NotificationProps {\n /** 通知类型 */\n type: keyof typeof NotificationType;\n /** 通知内容 */\n children: JSX.Element;\n /** 图标 */\n icon?: JSX.Element;\n /**\n * 是否显示关闭按钮\n * @default false\n */\n close?: boolean;\n /**\n * 显示通知时间, 到时自动关闭; 当 duration < 1 时不自动关闭\n * @default 3000\n */\n duration?: boolean;\n}\n\n/** 通知类型 */\nexport enum NotificationType {\n /** 详细 */\n info = 'info',\n /** 成功 */\n success = 'success',\n /** 错误 */\n error = 'error',\n /** 警告 */\n warning = 'warning',\n /** 主要 */\n primary = 'primary',\n}\n\ninterface NotificationQueQue extends NotificationProps {\n uniqueId: string;\n closeing?: boolean;\n}\nconst queque = createRoot(() => {\n const [list, setList] = createSignal<NotificationQueQue[]>([]);\n\n function add(item: NotificationQueQue) {\n setList((prev) => [...prev, item]);\n }\n function remove(uniqueId: string) {\n setList((prev) =>\n prev.map((q) => {\n if (q.uniqueId === uniqueId) {\n return { ...q, closeing: true };\n }\n return q;\n }),\n );\n const timer = setTimeout(() => {\n setList((prev) => prev.filter((q) => q.uniqueId !== uniqueId));\n clearTimeout(timer);\n }, 200);\n }\n function update(uniqueId: string, item: NotificationProps) {\n setList((prev) =>\n prev.map((q) => {\n if (q.uniqueId === uniqueId) {\n return { ...q, ...item };\n }\n return q;\n }),\n );\n }\n function clean() {\n setList([]);\n }\n return { list, add, remove, clean, update };\n});\n\nexport default queque;\n"],"names":["NotificationType","createRoot","createSignal","queque","list","setList","add","item","prev","remove","uniqueId","map","q","closeing","timer","setTimeout","filter","clearTimeout","clean","update"],"mappings":"IAyBYA,iNAzBZ,OAASC,cAAAA,CAAU,CAAEC,gBAAAA,CAAY,KAAQ,UAAW,8BAyBxCF,EAAAA,mBAAAA,8GAiBZ,IAAMG,EAASF,EAAW,KACxB,GAAM,CAACG,EAAMC,EAAQ,CAAGH,EAAmC,EAAE,EAgC7D,MAAO,CAAEE,KAAAA,EAAME,IA9Bf,SAAaC,CAAwB,EACnCF,EAAQ,AAACG,GAAS,IAAIA,EAAMD,EAAK,CACnC,EA4BoBE,OA3BpB,SAAgBC,CAAgB,EAC9BL,EAAQ,AAACG,GACPA,EAAKG,GAAG,CAAC,AAACC,GACR,AAAIA,EAAEF,QAAQ,GAAKA,EACV,KAAKE,GAAGC,SAAU,CAAA,IAEpBD,IAGX,IAAME,EAAQC,WAAW,KACvBV,EAAQ,AAACG,GAASA,EAAKQ,MAAM,CAAC,AAACJ,GAAMA,EAAEF,QAAQ,GAAKA,IACpDO,aAAaH,EACf,EAAG,IACL,EAc4BI,MAH5B,WACEb,EAAQ,EAAE,CACZ,EACmCc,OAbnC,SAAgBT,CAAgB,CAAEH,CAAuB,EACvDF,EAAQ,AAACG,GACPA,EAAKG,GAAG,CAAC,AAACC,GACR,AAAIA,EAAEF,QAAQ,GAAKA,EACV,KAAKE,EAAML,GAEbK,GAGb,CAI0C,CAC5C,EAEA,gBAAeT,CAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: string;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import{css as o}from"@moneko/css";export const styles=o`
|
|
2
|
+
:host {
|
|
3
|
+
display: flex;
|
|
4
|
+
flex-direction: column;
|
|
5
|
+
align-items: center;
|
|
6
|
+
row-gap: 16px;
|
|
7
|
+
pointer-events: none;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.notification {
|
|
11
|
+
inline-size: fit-content;
|
|
12
|
+
display: flex;
|
|
13
|
+
align-items: center;
|
|
14
|
+
border-radius: var(--border-radius);
|
|
15
|
+
padding: 5px 16px;
|
|
16
|
+
background-color: var(--modal-component-bg);
|
|
17
|
+
opacity: var(--opacity);
|
|
18
|
+
box-shadow: var(--notification-box-shadow);
|
|
19
|
+
backdrop-filter: blur(10px);
|
|
20
|
+
gap: 8px;
|
|
21
|
+
pointer-events: all;
|
|
22
|
+
animation: scale-in 0.2s forwards;
|
|
23
|
+
|
|
24
|
+
&.closeing {
|
|
25
|
+
animation: scale-out 0.2s forwards;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
&.error {
|
|
29
|
+
color: var(--error-color);
|
|
30
|
+
background-color: var(--error-notify-bg);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&.success {
|
|
34
|
+
color: var(--success-color);
|
|
35
|
+
background-color: var(--success-notify-bg);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&.warning {
|
|
39
|
+
color: var(--warning-color);
|
|
40
|
+
background-color: var(--warning-notify-bg);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
&.primary {
|
|
44
|
+
color: var(--primary-color);
|
|
45
|
+
background-color: var(--primary-notify-bg);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.close {
|
|
50
|
+
border-radius: 16px;
|
|
51
|
+
font-size: 14px;
|
|
52
|
+
text-align: center;
|
|
53
|
+
opacity: 0.8;
|
|
54
|
+
outline: 2px solid transparent;
|
|
55
|
+
transition: transform var(--transition-duration);
|
|
56
|
+
transform: translate3d(50%, 0, 1px);
|
|
57
|
+
cursor: pointer;
|
|
58
|
+
block-size: 14px;
|
|
59
|
+
line-height: 1;
|
|
60
|
+
inline-size: 14px;
|
|
61
|
+
|
|
62
|
+
&::before {
|
|
63
|
+
content: '⛌';
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&:hover {
|
|
67
|
+
opacity: 1;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
@keyframes scale-in {
|
|
72
|
+
from {
|
|
73
|
+
transform: translate3d(0, -100%, 1px);
|
|
74
|
+
opacity: 0;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
to {
|
|
78
|
+
transform: translate3d(0, 0, 1px);
|
|
79
|
+
opacity: 1;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
@keyframes scale-out {
|
|
84
|
+
0% {
|
|
85
|
+
z-index: -1;
|
|
86
|
+
opacity: 1;
|
|
87
|
+
margin-block-start: 0;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
100% {
|
|
91
|
+
z-index: -1;
|
|
92
|
+
opacity: 0;
|
|
93
|
+
margin-block-start: -50px;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
`;
|
|
97
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../components/notification/styles.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const styles = css`\n :host {\n display: flex;\n flex-direction: column;\n align-items: center;\n row-gap: 16px;\n pointer-events: none;\n }\n\n .notification {\n inline-size: fit-content;\n display: flex;\n align-items: center;\n border-radius: var(--border-radius);\n padding: 5px 16px;\n background-color: var(--modal-component-bg);\n opacity: var(--opacity);\n box-shadow: var(--notification-box-shadow);\n backdrop-filter: blur(10px);\n gap: 8px;\n pointer-events: all;\n animation: scale-in 0.2s forwards;\n\n &.closeing {\n animation: scale-out 0.2s forwards;\n }\n\n &.error {\n color: var(--error-color);\n background-color: var(--error-notify-bg);\n }\n\n &.success {\n color: var(--success-color);\n background-color: var(--success-notify-bg);\n }\n\n &.warning {\n color: var(--warning-color);\n background-color: var(--warning-notify-bg);\n }\n\n &.primary {\n color: var(--primary-color);\n background-color: var(--primary-notify-bg);\n }\n }\n\n .close {\n border-radius: 16px;\n font-size: 14px;\n text-align: center;\n opacity: 0.8;\n outline: 2px solid transparent;\n transition: transform var(--transition-duration);\n transform: translate3d(50%, 0, 1px);\n cursor: pointer;\n block-size: 14px;\n line-height: 1;\n inline-size: 14px;\n\n &::before {\n content: '⛌';\n }\n\n &:hover {\n opacity: 1;\n }\n }\n\n @keyframes scale-in {\n from {\n transform: translate3d(0, -100%, 1px);\n opacity: 0;\n }\n\n to {\n transform: translate3d(0, 0, 1px);\n opacity: 1;\n }\n }\n\n @keyframes scale-out {\n 0% {\n z-index: -1;\n opacity: 1;\n margin-block-start: 0;\n }\n\n 100% {\n z-index: -1;\n opacity: 0;\n margin-block-start: -50px;\n }\n }\n`;\n"],"names":["css","styles"],"mappings":"AAAA,OAASA,OAAAA,CAAG,KAAQ,aAAc,AAElC,QAAO,MAAMC,OAASD,CAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+F1B,CAAC,AAAC"}
|
package/es/popover/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e,t;function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e}).apply(this,arguments)}import{use as n}from"solid-js/web";import{template as r}from"solid-js/web";import{spread as i}from"solid-js/web";import{mergeProps as l}from"solid-js/web";import"solid-js/web";import{insert as s}from"solid-js/web";import{getOwner as p}from"solid-js/web";import{createComponent as a}from"solid-js/web";import{addEventListener as
|
|
1
|
+
var e,t;function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e}).apply(this,arguments)}import{use as n}from"solid-js/web";import{template as r}from"solid-js/web";import{spread as i}from"solid-js/web";import{mergeProps as l}from"solid-js/web";import"solid-js/web";import{insert as s}from"solid-js/web";import{getOwner as p}from"solid-js/web";import{createComponent as a}from"solid-js/web";import{addEventListener as d}from"solid-js/web";let u=r("<style>"),c=r("<span>"),m=r("<div>"),g=r("<n-empty>",!0,!1);import{Show as f,createComponent as h,createEffect as v,createMemo as w,createSignal as b,mergeProps as C,onCleanup as x,onMount as y,splitProps as j}from"solid-js";import M from"@moneko/common/lib/isElementInside";import O from"@moneko/common/lib/isEqual";import k from"@moneko/common/lib/isFunction";import E from"@moneko/common/lib/passiveSupported";import{css as L,cx as P}from"@moneko/css";import{customElement as T}from"solid-element";import{Portal as R}from"solid-js/web";import{popoverCss as $,portalCss as W}from"./style";import"../empty";import S from"../theme";export var TriggerOption;(e=TriggerOption||(TriggerOption={})).hover="hover",e.click="click",e.contextMenu="contextMenu",e.none="none";export var Placement;function z(e){let t,r,h,T;let{isDark:z,baseStyle:I}=S,[B]=j(C({trigger:"hover"},e),["class","css","popupClass","popupCss","size","trigger","open","disabled","onOpenChange","dropdownMatchSelectWidth","destroyInactive","arrow","placement","getPopupContainer","children","content"]),[H,A]=b(null),[D,q]=b({}),[F,N]=b(!1),[X,Y]=b("");function _(e){B.disabled||(B.onOpenChange&&B.onOpenChange(e),void 0===B.open&&A(e))}function G(){!1===H()&&(A(null),_(null))}function J(e){clearTimeout(h),h=setTimeout(()=>{var o;if(clearTimeout(h),(null==(o=e.target)?void 0:o.getAttribute("handle-closed"))==="false")return;let n=M(e.target,t);(H()&&!n||n&&"mousedown"!==e.type)&&_(!1)},"hover"===B.trigger?300:0)}v(()=>{void 0!==B.open&&A(B.open)}),v(()=>{H()&&B.dropdownMatchSelectWidth&&r&&Y(`.portal {width: ${r.offsetWidth}px;}`)});let K=function(e){clearTimeout(T),T=setTimeout(()=>{if(clearTimeout(T),!t||!r||!e&&"contextMenu"===B.trigger)return;if((null==e?void 0:e.type)==="scroll"&&"contextMenu"===B.trigger){_(!1);return}let o=r.getBoundingClientRect(),n=t.getBoundingClientRect(),i=n.width/2-o.width/2,l=window.innerHeight-o.bottom,s=B.placement,p=!(null==s?void 0:s.startsWith("top"))&&l>.8*t.offsetHeight&&l>o.top||(null==s?void 0:s.startsWith("bottom")),a=B.arrow?8:4,d={};switch(B.placement){case"bottomLeft":case"left":case"topLeft":d.left=o.left,d["--x"]=-n.width/2+16;break;case"bottomRight":case"right":case"topRight":d.left=o.right-n.width,d["--x"]=n.width/2-16;break;default:d.left=Math.abs(i>o.left?o.left:o.left-i),d["--x"]=-(d.left-o.left+i)}p?d.top=o.bottom+a:d.bottom=window.innerHeight-o.top+a,q(e=>O(e,d)?e:d),N(e=>!p===e?e:!p)},32)};function Q(e){clearTimeout(h),e.stopPropagation(),"contextMenu"===B.trigger&&"contextmenu"===e.type&&(e.preventDefault(),q(n=>o({},n,{left:e.clientX,top:e.clientY,"--x":-((null==t?void 0:t.getBoundingClientRect().width)||0)/2+16}))),_(!0)}let U=w(()=>k(B.getPopupContainer)?B.getPopupContainer(r):document.body),V=w(()=>{let e={},t={click:"onMouseDown",hover:"onMouseEnter",contextMenu:"onContextMenu",none:void 0}[B.trigger],o={hover:"onMouseLeave",click:void 0,contextMenu:void 0,none:void 0}[B.trigger];return Object.assign(e,t&&{[t]:Q},o&&{[o]:J}),e}),Z=w(()=>{let e=D();return`.portal {${Object.keys(e).map(t=>`${t}:${e[t]}px;`).join("")}z-index: 1;}`}),ee=w(()=>P("portal",B.arrow&&"arrow",`${H()?"in":"out"}-${F()?"up":"down"}`,B.size,B.popupClass)),et=w(()=>`:host {--popover-bg: ${z()?"#1f1f1f":"var(--component-bg)"};--popover-shadow-color: rgb(0 0 0 / 5%);}`);return v(()=>{H()&&(K(),window.addEventListener("scroll",K,{passive:E})),x(()=>{window.removeEventListener("scroll",K,!1)})}),y(()=>{"none"!==B.trigger&&document.documentElement.addEventListener("mousedown",J,!1)}),x(()=>{clearTimeout(h),document.documentElement.removeEventListener("mousedown",J,!1)}),[(()=>{let e=u();return s(e,I,null),s(e,$,null),s(e,()=>L(B.css),null),e})(),(()=>{let e=c(),t=r;return"function"==typeof t?n(t,e):r=e,i(e,l({get class(){return P("popover",B.size,B.class)}},V),!1,!0),s(e,()=>B.children),e})(),a(f,{get when(){return null!==H()||!B.destroyInactive},get children(){return a(R,{useShadow:!0,get mount(){return U()},get children(){return[(()=>{let e=u();return s(e,I,null),s(e,W,null),s(e,et,null),s(e,Z,null),s(e,X,null),s(e,()=>L(B.popupCss),null),e})(),(()=>{let e=m(),o=t;return d(e,"animationend",G),"function"==typeof o?n(o,e):t=e,i(e,l({get class(){return ee()}},V),!1,!0),s(e,a(f,{get when(){return B.content},get fallback(){return(()=>{let e=g();return e._$owner=p(),e})()},get children(){return B.content}})),e})()]}})}})]}(t=Placement||(Placement={})).bottomLeft="bottomLeft",t.bottom="bottom",t.bottomRight="bottomRight",t.topLeft="topLeft",t.top="top",t.topRight="topRight",t.left="left",t.right="right";export const defaultProps={class:void 0,css:void 0,content:void 0,getPopupContainer:void 0,trigger:void 0,open:void 0,onOpenChange:void 0,popupClass:void 0,popupCss:void 0,destroyInactive:!0,disabled:void 0,arrow:void 0,placement:void 0,dropdownMatchSelectWidth:void 0};T("n-popover",defaultProps,(e,t)=>{let o=t.element,n=C({onOpenChange(e){o.dispatchEvent(new CustomEvent("openchange",{detail:e}))},children:[...o.childNodes.values()]},e);return v(()=>{o.removeAttribute("css")}),h(z,n)});export default z;
|
|
2
2
|
//# sourceMappingURL=index.js.map
|