neko-ui 2.8.21 → 2.8.23
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/es/avatar/README.mdx +10 -0
- package/es/avatar/examples/basic.md +14 -0
- package/es/avatar/examples/group.md +57 -0
- package/es/avatar/examples/size.md +21 -0
- package/es/avatar/group.js +2 -2
- package/es/avatar/group.js.map +1 -1
- package/es/avatar/index.js +2 -2
- package/es/avatar/index.js.map +1 -1
- package/es/avatar/style.js +2 -2
- package/es/avatar/style.js.map +1 -1
- package/es/back-top/README.mdx +10 -0
- package/es/back-top/examples/basic.md +19 -0
- package/es/back-top/examples/mount.md +36 -0
- package/es/back-top/examples/target.md +46 -0
- package/es/back-top/index.js +1 -1
- package/es/back-top/index.js.map +1 -1
- package/es/basic-config/README.mdx +11 -0
- package/es/button/README.mdx +10 -0
- package/es/button/examples/basic.md +21 -0
- package/es/button/examples/block.md +33 -0
- package/es/button/examples/circle.md +21 -0
- package/es/button/examples/danger.md +23 -0
- package/es/button/examples/dashed.md +21 -0
- package/es/button/examples/disabled.md +35 -0
- package/es/button/examples/fill.md +21 -0
- package/es/button/examples/flat.md +21 -0
- package/es/button/examples/ghost.md +21 -0
- package/es/button/examples/icon.md +30 -0
- package/es/button/examples/link.md +21 -0
- package/es/button/examples/size.md +23 -0
- package/es/button/index.js +1 -1
- package/es/button/index.js.map +1 -1
- package/es/button/style.js +1 -0
- package/es/button/style.js.map +1 -1
- package/es/capture-screen/README.mdx +10 -0
- package/es/capture-screen/examples/basic.md +13 -0
- package/es/capture-screen/examples/custom-save.md +30 -0
- package/es/capture-screen/examples/preview.md +13 -0
- package/es/capture-screen/examples/recorder-save.md +13 -0
- package/es/capture-screen/index.js +1 -1
- package/es/capture-screen/index.js.map +1 -1
- package/es/carousel/README.mdx +10 -0
- package/es/carousel/examples/autoplay.md +21 -0
- package/es/carousel/examples/basic.md +23 -0
- package/es/carousel/examples/dots.md +23 -0
- package/es/carousel/examples/header.md +38 -0
- package/es/carousel/index.js +1 -1
- package/es/carousel/index.js.map +1 -1
- package/es/checkbox/README.mdx +10 -0
- package/es/checkbox/examples/basic.md +31 -0
- package/es/checkbox/examples/check-all.md +37 -0
- package/es/checkbox/examples/disabled-all.md +28 -0
- package/es/checkbox/examples/disabled-option.md +35 -0
- package/es/checkbox/examples/field-names.md +40 -0
- package/es/checkbox/examples/status.md +37 -0
- package/es/checkbox/examples/vertical.md +36 -0
- package/es/checkbox/index.js +1 -1
- package/es/checkbox/index.js.map +1 -1
- package/es/code/README.mdx +10 -0
- package/es/code/examples/basic.md +19 -0
- package/es/code/examples/diff.md +45 -0
- package/es/code/examples/line-number.md +18 -0
- package/es/code/examples/live-edit.md +20 -0
- package/es/code/examples/toolbar.md +18 -0
- package/es/code/index.js +2 -2
- package/es/code/index.js.map +1 -1
- package/es/code/worker.js.map +1 -1
- package/es/color-palette/README.mdx +10 -0
- package/es/color-palette/examples/default-value.md +25 -0
- package/es/color-palette/examples/hexa.md +13 -0
- package/es/color-palette/examples/hsla.md +13 -0
- package/es/color-palette/examples/rgba.md +13 -0
- package/es/color-palette/index.js +1 -1
- package/es/color-palette/index.js.map +1 -1
- package/es/color-picker/README.mdx +10 -0
- package/es/color-picker/examples/basic.md +12 -0
- package/es/color-picker/examples/default-value.md +20 -0
- package/es/color-picker/examples/size.md +17 -0
- package/es/color-picker/index.js +1 -1
- package/es/color-picker/index.js.map +1 -1
- package/es/cron/README.mdx +10 -0
- package/es/cron/begin-interval.js.map +1 -1
- package/es/cron/day.js.map +1 -1
- package/es/cron/examples/basic.md +19 -0
- package/es/cron/examples/card.md +12 -0
- package/es/cron/examples/show-cron.md +12 -0
- package/es/cron/hour.js +1 -1
- package/es/cron/hour.js.map +1 -1
- package/es/cron/index.js +1 -1
- package/es/cron/index.js.map +1 -1
- package/es/cron/item.js.map +1 -1
- package/es/cron/minute.js +1 -1
- package/es/cron/minute.js.map +1 -1
- package/es/cron/month.js +1 -1
- package/es/cron/month.js.map +1 -1
- package/es/cron/period.js.map +1 -1
- package/es/cron/second.js +1 -1
- package/es/cron/second.js.map +1 -1
- package/es/cron/some.js.map +1 -1
- package/es/date-picker/README.mdx +10 -0
- package/es/date-picker/date.js +1 -1
- package/es/date-picker/date.js.map +1 -1
- package/es/date-picker/dayjs.js +1 -1
- package/es/date-picker/dayjs.js.map +1 -1
- package/es/date-picker/examples/basic.md +24 -0
- package/es/date-picker/examples/date.md +13 -0
- package/es/date-picker/examples/disbaled.md +13 -0
- package/es/date-picker/examples/header.md +13 -0
- package/es/date-picker/examples/month.md +13 -0
- package/es/date-picker/examples/time.md +15 -0
- package/es/date-picker/examples/today.md +13 -0
- package/es/date-picker/examples/year.md +13 -0
- package/es/date-picker/index.js +1 -1
- package/es/date-picker/index.js.map +1 -1
- package/es/date-picker/month.js +1 -1
- package/es/date-picker/month.js.map +1 -1
- package/es/date-picker/panel.js +1 -1
- package/es/date-picker/panel.js.map +1 -1
- package/es/date-picker/time.js +1 -1
- package/es/date-picker/time.js.map +1 -1
- package/es/date-picker/year.js +1 -1
- package/es/date-picker/year.js.map +1 -1
- package/es/dropdown/README.mdx +10 -0
- package/es/dropdown/examples/arrow.md +59 -0
- package/es/dropdown/examples/basic.md +17 -0
- package/es/dropdown/examples/click.md +45 -0
- package/es/dropdown/examples/context-menu.md +66 -0
- package/es/dropdown/examples/field-names.md +44 -0
- package/es/dropdown/examples/icon.md +30 -0
- package/es/dropdown/examples/multiple.md +45 -0
- package/es/dropdown/examples/no-data.md +16 -0
- package/es/dropdown/examples/placement.md +59 -0
- package/es/dropdown/examples/toggle.md +36 -0
- package/es/dropdown/index.js +1 -1
- package/es/dropdown/index.js.map +1 -1
- package/es/empty/index.js.map +1 -1
- package/es/from-schema/index.js +1 -1
- package/es/from-schema/index.js.map +1 -1
- package/es/highlight-text/README.mdx +10 -0
- package/es/highlight-text/examples/basic.md +19 -0
- package/es/highlight-text/examples/mut.md +47 -0
- package/es/highlight-text/examples/not-hightlight.md +19 -0
- package/es/highlight-text/index.js +2 -2
- package/es/highlight-text/index.js.map +1 -1
- package/es/img/README.mdx +10 -0
- package/es/img/examples/basic.md +17 -0
- package/es/img/examples/close-mask.md +21 -0
- package/es/img/examples/disabled.md +16 -0
- package/es/img/examples/error.md +13 -0
- package/es/img/examples/esc.md +21 -0
- package/es/img/examples/open-change.md +25 -0
- package/es/img/index.js +1 -1
- package/es/img/index.js.map +1 -1
- package/es/img/lazy.js +1 -1
- package/es/img/lazy.js.map +1 -1
- package/es/index.js +1 -1
- package/es/index.js.map +1 -1
- package/es/input/README.mdx +10 -0
- package/es/input/examples/basic.md +31 -0
- package/es/input/examples/prefix&suffix.md +33 -0
- package/es/input/examples/size.md +21 -0
- package/es/input/examples/status.md +23 -0
- package/es/input/index.js +1 -1
- package/es/input/index.js.map +1 -1
- package/es/input-number/README.mdx +10 -0
- package/es/input-number/examples/basic.md +26 -0
- package/es/input-number/examples/formatter.md +36 -0
- package/es/input-number/examples/max-min.md +13 -0
- package/es/input-number/index.js.map +1 -1
- package/es/katex/README.mdx +42 -0
- package/es/katex/examples/block.md +25 -0
- package/es/katex/examples/inline.md +19 -0
- package/es/md/README.mdx +10 -0
- package/es/md/examples/in-children.md +23 -0
- package/es/md/examples/in-text.md +32 -0
- package/es/md/examples/math.md +36 -0
- package/es/md/index.js +1 -1
- package/es/md/index.js.map +1 -1
- package/es/menu/README.mdx +10 -0
- package/es/menu/examples/basic.md +17 -0
- package/es/menu/examples/field-names.md +42 -0
- package/es/menu/examples/icon.md +125 -0
- package/es/menu/examples/multiple.md +42 -0
- package/es/menu/index.js +1 -1
- package/es/menu/index.js.map +1 -1
- package/es/modal/README.mdx +10 -0
- package/es/modal/examples/basic.md +56 -0
- package/es/modal/examples/close-icon.md +57 -0
- package/es/modal/examples/esc-closable.md +64 -0
- package/es/modal/examples/mask-blur.md +56 -0
- package/es/modal/examples/mask-closable.md +64 -0
- package/es/modal/index.js +1 -1
- package/es/modal/index.js.map +1 -1
- package/es/notification/README.mdx +11 -0
- package/es/notification/examples/basic.md +35 -0
- package/es/notification/examples/close.md +35 -0
- package/es/notification/examples/type.md +84 -0
- package/es/notification/examples/update.md +52 -0
- package/es/notification/index.js.map +1 -1
- package/es/notification/notification.js +1 -1
- package/es/notification/notification.js.map +1 -1
- package/es/pagination/README.mdx +10 -0
- package/es/pagination/examples/basic.md +13 -0
- package/es/pagination/examples/onchange.md +29 -0
- package/es/pagination/examples/size.md +23 -0
- package/es/pagination/examples/total-text.md +42 -0
- package/es/pagination/index.js +1 -1
- package/es/pagination/index.js.map +1 -1
- package/es/popover/README.mdx +10 -0
- package/es/popover/examples/basic.md +35 -0
- package/es/popover/examples/click.md +15 -0
- package/es/popover/examples/context-menu.md +58 -0
- package/es/popover/examples/controlled.md +47 -0
- package/es/popover/index.js +1 -1
- package/es/popover/index.js.map +1 -1
- package/es/prism/css.js.map +1 -1
- package/es/prism/index.js.map +1 -1
- package/es/provider/README.mdx +10 -0
- package/es/provider/examples/scheme.md +14 -0
- package/es/provider/index.js.map +1 -1
- package/es/radio/README.mdx +10 -0
- package/es/radio/examples/basic.md +19 -0
- package/es/radio/examples/disabled-option.md +19 -0
- package/es/radio/examples/disabled.md +19 -0
- package/es/radio/examples/field-names.md +39 -0
- package/es/radio/examples/layout-vertical.md +19 -0
- package/es/radio/examples/status.md +31 -0
- package/es/radio/index.js +1 -1
- package/es/radio/index.js.map +1 -1
- package/es/segmented/README.mdx +10 -0
- package/es/segmented/examples/basic.md +18 -0
- package/es/segmented/examples/custom-field-names.md +43 -0
- package/es/segmented/examples/disabled-option.md +29 -0
- package/es/segmented/examples/disabled.md +18 -0
- package/es/segmented/examples/icon.md +28 -0
- package/es/segmented/examples/options.md +21 -0
- package/es/segmented/index.js +2 -2
- package/es/segmented/index.js.map +1 -1
- package/es/select/README.mdx +10 -0
- package/es/select/examples/basic.md +44 -0
- package/es/select/examples/disabled-option.md +21 -0
- package/es/select/examples/disabled.md +24 -0
- package/es/select/examples/field-names.md +40 -0
- package/es/select/examples/item-suffix.md +84 -0
- package/es/select/examples/multiple.md +61 -0
- package/es/select/examples/no-data.md +12 -0
- package/es/select/examples/prefix-icon.md +74 -0
- package/es/select/index.js +1 -1
- package/es/select/index.js.map +1 -1
- package/es/skeleton/README.mdx +10 -0
- package/es/skeleton/examples/animation.md +13 -0
- package/es/skeleton/examples/avatar.md +13 -0
- package/es/skeleton/examples/basic.md +12 -0
- package/es/skeleton/examples/rows.md +13 -0
- package/es/skeleton/examples/title.md +12 -0
- package/es/skeleton/index.js +3 -3
- package/es/skeleton/index.js.map +1 -1
- package/es/spin/README.mdx +10 -0
- package/es/spin/examples/basic.md +67 -0
- package/es/spin/index.js +4 -4
- package/es/spin/index.js.map +1 -1
- package/es/switch/README.mdx +10 -0
- package/es/switch/examples/basic.md +24 -0
- package/es/switch/examples/checked-text.md +17 -0
- package/es/switch/examples/disabled.md +15 -0
- package/es/switch/examples/loading.md +17 -0
- package/es/switch/index.js +1 -1
- package/es/switch/index.js.map +1 -1
- package/es/table/README.mdx +10 -0
- package/es/table/examples/basic.md +29 -0
- package/es/table/examples/key.md +29 -0
- package/es/table/examples/order.md +29 -0
- package/es/table/examples/pagination.md +67 -0
- package/es/table/examples/render.md +92 -0
- package/es/table/examples/size.md +52 -0
- package/es/table/examples/summary.md +40 -0
- package/es/table/index.js +1 -1
- package/es/table/index.js.map +1 -1
- package/es/tabs/README.mdx +10 -0
- package/es/tabs/examples/add-remove.md +115 -0
- package/es/tabs/examples/animated.md +33 -0
- package/es/tabs/examples/basic.md +32 -0
- package/es/tabs/examples/card.md +33 -0
- package/es/tabs/examples/center.md +33 -0
- package/es/tabs/examples/disabled-tab.md +34 -0
- package/es/tabs/examples/disabled.md +33 -0
- package/es/tabs/examples/extra.md +65 -0
- package/es/tabs/index.js +2 -2
- package/es/tabs/index.js.map +1 -1
- package/es/tag/README.mdx +10 -0
- package/es/tag/examples/basic.md +28 -0
- package/es/tag/examples/bordered.md +19 -0
- package/es/tag/examples/color.md +25 -0
- package/es/tag/examples/icon.md +21 -0
- package/es/tag/examples/type.md +19 -0
- package/es/tag/index.js +3 -3
- package/es/tag/index.js.map +1 -1
- package/es/theme/README.mdx +10 -0
- package/es/theme/examples/colors.md +123 -0
- package/es/theme/examples/theme.md +19 -0
- package/es/theme/index.js +1 -1
- package/es/theme/index.js.map +1 -1
- package/es/tree/README.mdx +10 -0
- package/es/tree/examples/basic.md +108 -0
- package/es/tree/examples/custom-render.md +115 -0
- package/es/tree/examples/direction.md +100 -0
- package/es/tree/examples/field-names.md +114 -0
- package/es/tree/examples/multiple.md +117 -0
- package/es/tree/examples/readonly.md +90 -0
- package/es/tree/examples/render-tree-string1.md +70 -0
- package/es/tree/examples/render-tree-string2.md +52 -0
- package/es/tree/examples/schema.md +130 -0
- package/es/tree/examples/size.md +125 -0
- package/es/tree/examples/toggle.md +71 -0
- package/es/tree/index.js +1 -1
- package/es/tree/index.js.map +1 -1
- package/es/tree/register.js.map +1 -1
- package/es/typography/README.mdx +10 -0
- package/es/typography/examples/basic.md +27 -0
- package/es/typography/examples/tag.md +25 -0
- package/es/typography/examples/truncated.md +17 -0
- package/es/typography/index.js +3 -3
- package/es/typography/index.js.map +1 -1
- package/eslint.config.mjs +9 -0
- package/lib/avatar/README.mdx +10 -0
- package/lib/avatar/examples/basic.md +14 -0
- package/lib/avatar/examples/group.md +57 -0
- package/lib/avatar/examples/size.md +21 -0
- package/lib/avatar/group.js.map +1 -1
- package/lib/avatar/index.js +2 -2
- package/lib/avatar/index.js.map +1 -1
- package/lib/avatar/style.js +2 -2
- package/lib/avatar/style.js.map +1 -1
- package/lib/back-top/README.mdx +10 -0
- package/lib/back-top/examples/basic.md +19 -0
- package/lib/back-top/examples/mount.md +36 -0
- package/lib/back-top/examples/target.md +46 -0
- package/lib/back-top/index.js +1 -1
- package/lib/back-top/index.js.map +1 -1
- package/lib/basic-config/README.mdx +11 -0
- package/lib/button/README.mdx +10 -0
- package/lib/button/examples/basic.md +21 -0
- package/lib/button/examples/block.md +33 -0
- package/lib/button/examples/circle.md +21 -0
- package/lib/button/examples/danger.md +23 -0
- package/lib/button/examples/dashed.md +21 -0
- package/lib/button/examples/disabled.md +35 -0
- package/lib/button/examples/fill.md +21 -0
- package/lib/button/examples/flat.md +21 -0
- package/lib/button/examples/ghost.md +21 -0
- package/lib/button/examples/icon.md +30 -0
- package/lib/button/examples/link.md +21 -0
- package/lib/button/examples/size.md +23 -0
- package/lib/button/index.js +1 -1
- package/lib/button/index.js.map +1 -1
- package/lib/button/style.js +1 -0
- package/lib/button/style.js.map +1 -1
- package/lib/capture-screen/README.mdx +10 -0
- package/lib/capture-screen/examples/basic.md +13 -0
- package/lib/capture-screen/examples/custom-save.md +30 -0
- package/lib/capture-screen/examples/preview.md +13 -0
- package/lib/capture-screen/examples/recorder-save.md +13 -0
- package/lib/capture-screen/index.js +1 -1
- package/lib/capture-screen/index.js.map +1 -1
- package/lib/carousel/README.mdx +10 -0
- package/lib/carousel/examples/autoplay.md +21 -0
- package/lib/carousel/examples/basic.md +23 -0
- package/lib/carousel/examples/dots.md +23 -0
- package/lib/carousel/examples/header.md +38 -0
- package/lib/carousel/index.js +1 -1
- package/lib/carousel/index.js.map +1 -1
- package/lib/checkbox/README.mdx +10 -0
- package/lib/checkbox/examples/basic.md +31 -0
- package/lib/checkbox/examples/check-all.md +37 -0
- package/lib/checkbox/examples/disabled-all.md +28 -0
- package/lib/checkbox/examples/disabled-option.md +35 -0
- package/lib/checkbox/examples/field-names.md +40 -0
- package/lib/checkbox/examples/status.md +37 -0
- package/lib/checkbox/examples/vertical.md +36 -0
- package/lib/checkbox/index.js +1 -1
- package/lib/checkbox/index.js.map +1 -1
- package/lib/code/README.mdx +10 -0
- package/lib/code/examples/basic.md +19 -0
- package/lib/code/examples/diff.md +45 -0
- package/lib/code/examples/line-number.md +18 -0
- package/lib/code/examples/live-edit.md +20 -0
- package/lib/code/examples/toolbar.md +18 -0
- package/lib/code/index.js +2 -2
- package/lib/code/index.js.map +1 -1
- package/lib/code/worker.js.map +1 -1
- package/lib/color-palette/README.mdx +10 -0
- package/lib/color-palette/examples/default-value.md +25 -0
- package/lib/color-palette/examples/hexa.md +13 -0
- package/lib/color-palette/examples/hsla.md +13 -0
- package/lib/color-palette/examples/rgba.md +13 -0
- package/lib/color-palette/index.js +1 -1
- package/lib/color-palette/index.js.map +1 -1
- package/lib/color-picker/README.mdx +10 -0
- package/lib/color-picker/examples/basic.md +12 -0
- package/lib/color-picker/examples/default-value.md +20 -0
- package/lib/color-picker/examples/size.md +17 -0
- package/lib/color-picker/index.js +1 -1
- package/lib/color-picker/index.js.map +1 -1
- package/lib/cron/README.mdx +10 -0
- package/lib/cron/begin-interval.js.map +1 -1
- package/lib/cron/day.js.map +1 -1
- package/lib/cron/examples/basic.md +19 -0
- package/lib/cron/examples/card.md +12 -0
- package/lib/cron/examples/show-cron.md +12 -0
- package/lib/cron/hour.js +1 -1
- package/lib/cron/hour.js.map +1 -1
- package/lib/cron/index.js.map +1 -1
- package/lib/cron/item.js.map +1 -1
- package/lib/cron/minute.js +1 -1
- package/lib/cron/minute.js.map +1 -1
- package/lib/cron/month.js +1 -1
- package/lib/cron/month.js.map +1 -1
- package/lib/cron/period.js.map +1 -1
- package/lib/cron/second.js +1 -1
- package/lib/cron/second.js.map +1 -1
- package/lib/cron/some.js.map +1 -1
- package/lib/date-picker/README.mdx +10 -0
- package/lib/date-picker/date.js.map +1 -1
- package/lib/date-picker/dayjs.js +1 -1
- package/lib/date-picker/dayjs.js.map +1 -1
- package/lib/date-picker/examples/basic.md +24 -0
- package/lib/date-picker/examples/date.md +13 -0
- package/lib/date-picker/examples/disbaled.md +13 -0
- package/lib/date-picker/examples/header.md +13 -0
- package/lib/date-picker/examples/month.md +13 -0
- package/lib/date-picker/examples/time.md +15 -0
- package/lib/date-picker/examples/today.md +13 -0
- package/lib/date-picker/examples/year.md +13 -0
- package/lib/date-picker/index.js +1 -1
- package/lib/date-picker/index.js.map +1 -1
- package/lib/date-picker/month.js.map +1 -1
- package/lib/date-picker/panel.js +1 -1
- package/lib/date-picker/panel.js.map +1 -1
- package/lib/date-picker/time.js.map +1 -1
- package/lib/date-picker/year.js.map +1 -1
- package/lib/dropdown/README.mdx +10 -0
- package/lib/dropdown/examples/arrow.md +59 -0
- package/lib/dropdown/examples/basic.md +17 -0
- package/lib/dropdown/examples/click.md +45 -0
- package/lib/dropdown/examples/context-menu.md +66 -0
- package/lib/dropdown/examples/field-names.md +44 -0
- package/lib/dropdown/examples/icon.md +30 -0
- package/lib/dropdown/examples/multiple.md +45 -0
- package/lib/dropdown/examples/no-data.md +16 -0
- package/lib/dropdown/examples/placement.md +59 -0
- package/lib/dropdown/examples/toggle.md +36 -0
- package/lib/dropdown/index.js +1 -1
- package/lib/dropdown/index.js.map +1 -1
- package/lib/empty/index.js.map +1 -1
- package/lib/from-schema/index.js +1 -1
- package/lib/from-schema/index.js.map +1 -1
- package/lib/highlight-text/README.mdx +10 -0
- package/lib/highlight-text/examples/basic.md +19 -0
- package/lib/highlight-text/examples/mut.md +47 -0
- package/lib/highlight-text/examples/not-hightlight.md +19 -0
- package/lib/highlight-text/index.js.map +1 -1
- package/lib/img/README.mdx +10 -0
- package/lib/img/examples/basic.md +17 -0
- package/lib/img/examples/close-mask.md +21 -0
- package/lib/img/examples/disabled.md +16 -0
- package/lib/img/examples/error.md +13 -0
- package/lib/img/examples/esc.md +21 -0
- package/lib/img/examples/open-change.md +25 -0
- package/lib/img/index.js +1 -1
- package/lib/img/index.js.map +1 -1
- package/lib/img/lazy.js +1 -1
- package/lib/img/lazy.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/input/README.mdx +10 -0
- package/lib/input/examples/basic.md +31 -0
- package/lib/input/examples/prefix&suffix.md +33 -0
- package/lib/input/examples/size.md +21 -0
- package/lib/input/examples/status.md +23 -0
- package/lib/input/index.js +1 -1
- package/lib/input/index.js.map +1 -1
- package/lib/input-number/README.mdx +10 -0
- package/lib/input-number/examples/basic.md +26 -0
- package/lib/input-number/examples/formatter.md +36 -0
- package/lib/input-number/examples/max-min.md +13 -0
- package/lib/input-number/index.js.map +1 -1
- package/lib/katex/README.mdx +42 -0
- package/lib/katex/examples/block.md +25 -0
- package/lib/katex/examples/inline.md +19 -0
- package/lib/md/README.mdx +10 -0
- package/lib/md/examples/in-children.md +23 -0
- package/lib/md/examples/in-text.md +32 -0
- package/lib/md/examples/math.md +36 -0
- package/lib/md/index.js +1 -1
- package/lib/md/index.js.map +1 -1
- package/lib/menu/README.mdx +10 -0
- package/lib/menu/examples/basic.md +17 -0
- package/lib/menu/examples/field-names.md +42 -0
- package/lib/menu/examples/icon.md +125 -0
- package/lib/menu/examples/multiple.md +42 -0
- package/lib/menu/index.js +1 -1
- package/lib/menu/index.js.map +1 -1
- package/lib/modal/README.mdx +10 -0
- package/lib/modal/examples/basic.md +56 -0
- package/lib/modal/examples/close-icon.md +57 -0
- package/lib/modal/examples/esc-closable.md +64 -0
- package/lib/modal/examples/mask-blur.md +56 -0
- package/lib/modal/examples/mask-closable.md +64 -0
- package/lib/modal/index.js.map +1 -1
- package/lib/notification/README.mdx +11 -0
- package/lib/notification/examples/basic.md +35 -0
- package/lib/notification/examples/close.md +35 -0
- package/lib/notification/examples/type.md +84 -0
- package/lib/notification/examples/update.md +52 -0
- package/lib/notification/index.js.map +1 -1
- package/lib/notification/notification.js +1 -1
- package/lib/notification/notification.js.map +1 -1
- package/lib/pagination/README.mdx +10 -0
- package/lib/pagination/examples/basic.md +13 -0
- package/lib/pagination/examples/onchange.md +29 -0
- package/lib/pagination/examples/size.md +23 -0
- package/lib/pagination/examples/total-text.md +42 -0
- package/lib/pagination/index.js +1 -1
- package/lib/pagination/index.js.map +1 -1
- package/lib/popover/README.mdx +10 -0
- package/lib/popover/examples/basic.md +35 -0
- package/lib/popover/examples/click.md +15 -0
- package/lib/popover/examples/context-menu.md +58 -0
- package/lib/popover/examples/controlled.md +47 -0
- package/lib/popover/index.js +1 -1
- package/lib/popover/index.js.map +1 -1
- package/lib/prism/css.js.map +1 -1
- package/lib/prism/index.js.map +1 -1
- package/lib/provider/README.mdx +10 -0
- package/lib/provider/examples/scheme.md +14 -0
- package/lib/provider/index.js.map +1 -1
- package/lib/radio/README.mdx +10 -0
- package/lib/radio/examples/basic.md +19 -0
- package/lib/radio/examples/disabled-option.md +19 -0
- package/lib/radio/examples/disabled.md +19 -0
- package/lib/radio/examples/field-names.md +39 -0
- package/lib/radio/examples/layout-vertical.md +19 -0
- package/lib/radio/examples/status.md +31 -0
- package/lib/radio/index.js +1 -1
- package/lib/radio/index.js.map +1 -1
- package/lib/segmented/README.mdx +10 -0
- package/lib/segmented/examples/basic.md +18 -0
- package/lib/segmented/examples/custom-field-names.md +43 -0
- package/lib/segmented/examples/disabled-option.md +29 -0
- package/lib/segmented/examples/disabled.md +18 -0
- package/lib/segmented/examples/icon.md +28 -0
- package/lib/segmented/examples/options.md +21 -0
- package/lib/segmented/index.js +2 -2
- package/lib/segmented/index.js.map +1 -1
- package/lib/select/README.mdx +10 -0
- package/lib/select/examples/basic.md +44 -0
- package/lib/select/examples/disabled-option.md +21 -0
- package/lib/select/examples/disabled.md +24 -0
- package/lib/select/examples/field-names.md +40 -0
- package/lib/select/examples/item-suffix.md +84 -0
- package/lib/select/examples/multiple.md +61 -0
- package/lib/select/examples/no-data.md +12 -0
- package/lib/select/examples/prefix-icon.md +74 -0
- package/lib/select/index.js +1 -1
- package/lib/select/index.js.map +1 -1
- package/lib/skeleton/README.mdx +10 -0
- package/lib/skeleton/examples/animation.md +13 -0
- package/lib/skeleton/examples/avatar.md +13 -0
- package/lib/skeleton/examples/basic.md +12 -0
- package/lib/skeleton/examples/rows.md +13 -0
- package/lib/skeleton/examples/title.md +12 -0
- package/lib/skeleton/index.js.map +1 -1
- package/lib/spin/README.mdx +10 -0
- package/lib/spin/examples/basic.md +67 -0
- package/lib/spin/index.js +3 -3
- package/lib/spin/index.js.map +1 -1
- package/lib/switch/README.mdx +10 -0
- package/lib/switch/examples/basic.md +24 -0
- package/lib/switch/examples/checked-text.md +17 -0
- package/lib/switch/examples/disabled.md +15 -0
- package/lib/switch/examples/loading.md +17 -0
- package/lib/switch/index.js +1 -1
- package/lib/switch/index.js.map +1 -1
- package/lib/table/README.mdx +10 -0
- package/lib/table/examples/basic.md +29 -0
- package/lib/table/examples/key.md +29 -0
- package/lib/table/examples/order.md +29 -0
- package/lib/table/examples/pagination.md +67 -0
- package/lib/table/examples/render.md +92 -0
- package/lib/table/examples/size.md +52 -0
- package/lib/table/examples/summary.md +40 -0
- package/lib/table/index.js +1 -1
- package/lib/table/index.js.map +1 -1
- package/lib/tabs/README.mdx +10 -0
- package/lib/tabs/examples/add-remove.md +115 -0
- package/lib/tabs/examples/animated.md +33 -0
- package/lib/tabs/examples/basic.md +32 -0
- package/lib/tabs/examples/card.md +33 -0
- package/lib/tabs/examples/center.md +33 -0
- package/lib/tabs/examples/disabled-tab.md +34 -0
- package/lib/tabs/examples/disabled.md +33 -0
- package/lib/tabs/examples/extra.md +65 -0
- package/lib/tabs/index.js +2 -2
- package/lib/tabs/index.js.map +1 -1
- package/lib/tag/README.mdx +10 -0
- package/lib/tag/examples/basic.md +28 -0
- package/lib/tag/examples/bordered.md +19 -0
- package/lib/tag/examples/color.md +25 -0
- package/lib/tag/examples/icon.md +21 -0
- package/lib/tag/examples/type.md +19 -0
- package/lib/tag/index.js +3 -3
- package/lib/tag/index.js.map +1 -1
- package/lib/theme/README.mdx +10 -0
- package/lib/theme/examples/colors.md +123 -0
- package/lib/theme/examples/theme.md +19 -0
- package/lib/theme/index.js +1 -1
- package/lib/theme/index.js.map +1 -1
- package/lib/tree/README.mdx +10 -0
- package/lib/tree/examples/basic.md +108 -0
- package/lib/tree/examples/custom-render.md +115 -0
- package/lib/tree/examples/direction.md +100 -0
- package/lib/tree/examples/field-names.md +114 -0
- package/lib/tree/examples/multiple.md +117 -0
- package/lib/tree/examples/readonly.md +90 -0
- package/lib/tree/examples/render-tree-string1.md +70 -0
- package/lib/tree/examples/render-tree-string2.md +52 -0
- package/lib/tree/examples/schema.md +130 -0
- package/lib/tree/examples/size.md +125 -0
- package/lib/tree/examples/toggle.md +71 -0
- package/lib/tree/index.js +1 -1
- package/lib/tree/index.js.map +1 -1
- package/lib/tree/register.js.map +1 -1
- package/lib/typography/README.mdx +10 -0
- package/lib/typography/examples/basic.md +27 -0
- package/lib/typography/examples/tag.md +25 -0
- package/lib/typography/examples/truncated.md +17 -0
- package/lib/typography/index.js.map +1 -1
- package/package.json +18 -18
- package/types/avatar/group.d.ts +1 -1
- package/types/back-top/index.d.ts +1 -1
- package/types/capture-screen/index.d.ts +1 -1
- package/types/color-palette/index.d.ts +1 -1
- package/types/color-picker/index.d.ts +1 -1
- package/types/cron/begin-interval.d.ts +3 -3
- package/types/cron/index.d.ts +5 -5
- package/types/cron/item.d.ts +4 -4
- package/types/cron/period.d.ts +3 -3
- package/types/cron/some.d.ts +3 -3
- package/types/date-picker/date.d.ts +2 -2
- package/types/date-picker/index.d.ts +2 -2
- package/types/date-picker/month.d.ts +2 -2
- package/types/date-picker/panel.d.ts +3 -3
- package/types/date-picker/time.d.ts +2 -2
- package/types/date-picker/year.d.ts +2 -2
- package/types/dropdown/index.d.ts +1 -1
- package/types/empty/index.d.ts +1 -1
- package/types/from-schema/index.d.ts +4 -4
- package/types/index.d.ts +12 -12
- package/types/md/index.d.ts +1 -1
- package/types/modal/index.d.ts +1 -1
- package/types/notification/index.d.ts +1 -1
- package/types/pagination/index.d.ts +1 -1
- package/types/provider/index.d.ts +1 -1
- package/types/segmented/index.d.ts +1 -1
- package/types/select/index.d.ts +1 -1
- package/types/table/index.d.ts +1 -1
- package/types/tabs/index.d.ts +1 -1
- package/types/tree/index.d.ts +1 -1
- package/umd/assets/svg/favicon.svg +1 -0
- package/umd/index.js +2 -2
- package/umd/js/46e8f96158e59015.js +1 -0
package/es/cron/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/cron/index.tsx"],"sourcesContent":["import { Show, batch, createEffect, createSignal, mergeProps, splitProps, untrack } from 'solid-js';\nimport { css } from '@moneko/css';\nimport { customElement } from 'solid-element';\nimport Day from './day';\nimport Hour from './hour';\nimport Minute from './minute';\nimport Month from './month';\nimport Second from './second';\nimport Week from './week';\nimport Year from './year';\nimport '../button';\nimport '../input-number';\nimport '../radio';\nimport '../select';\nimport '../tabs';\nimport type { BaseOption, CustomElement, TabOption } from '..';\n\nexport interface CronProps {\n /** 自定义类名 */\n class?: string;\n /** 自定义样式表 */\n css?: string;\n /** 隐藏域 */\n exclude?: string[];\n /** 显示表达式\n * @default true\n */\n showCron?: boolean;\n /** 标签页类型\n * @default 'line'\n */\n type?: 'line' | 'card';\n /** 值 */\n value?: string;\n /** 默认值\n * @default 0 0 0 * * ? *\n */\n defaultValue?: string;\n /** 值改变触发a */\n onChange?(val?: string): void;\n}\n\nexport type CronElement = CustomElement<CronProps>;\nexport type SecondType = '*' | 'period' | 'beginInterval' | 'some';\nexport type MinuteType = SecondType;\nexport type HourType = SecondType;\nexport type DayType = SecondType | 'closeWorkDay' | '?' | 'last';\nexport type WeekType = SecondType | 'last' | '?';\nexport type MonthType = SecondType;\nexport type YearType = SecondType | '';\nexport type CronData<T extends string = string> = {\n start: number;\n end: number;\n begin: number;\n beginEvery: number;\n type: T;\n some: number[];\n value: string;\n};\n\nexport type ActiveTab = keyof CronType;\nexport type CronType = {\n second: CronData<SecondType>;\n minute: CronData<MinuteType>;\n hour: CronData<HourType>;\n day: CronData<DayType> & { last: number; closeWorkDay: number };\n week: CronData<WeekType> & { last: number };\n month: CronData<MonthType>;\n year: CronData<YearType>;\n};\n\nfunction Cron(props: CronProps) {\n const [local] = splitProps(props, [\n 'value',\n 'defaultValue',\n 'exclude',\n 'onChange',\n 'type',\n 'showCron',\n 'css',\n 'class',\n ]);\n const [value, setValue] = createSignal(local.defaultValue);\n const date = new Date();\n const fullYear = date.getFullYear();\n const defaultState = {\n hms: {\n start: 0,\n end: 1,\n begin: 0,\n beginEvery: 1,\n some: [0],\n value: '',\n },\n mwd: {\n start: 1,\n end: 2,\n begin: 1,\n beginEvery: 1,\n some: [1],\n value: '',\n },\n year: {\n start: fullYear,\n end: fullYear + 1,\n begin: fullYear,\n beginEvery: 1,\n some: [fullYear],\n value: '',\n },\n };\n const days: BaseOption[] = [];\n const daysBeginEvery: number[] = [];\n\n for (let x = 1; x < 32; x++) {\n days.push({\n label: x < 10 ? `0${x}` : `${x}`,\n value: x,\n });\n daysBeginEvery.push(x);\n }\n const [active, setActive] = createSignal<ActiveTab>('second');\n const [state, setState] = createSignal<CronType>({\n second: { type: '*', ...defaultState.hms },\n minute: { type: '*', ...defaultState.hms },\n hour: { type: '*', ...defaultState.hms },\n day: {\n type: '*',\n last: 1,\n closeWorkDay: 1,\n ...defaultState.mwd,\n },\n month: {\n type: '*',\n ...defaultState.mwd,\n },\n week: {\n last: 1,\n type: '?',\n ...defaultState.mwd,\n },\n year: {\n type: '',\n ...defaultState.year,\n },\n });\n\n function prefixWeekDay() {\n const store = untrack(state);\n const isDay = active() === 'day';\n\n if (isDay || active() === 'week') {\n const key = isDay ? 'week' : 'day';\n const next = store[key].type === '?' && store[active()].type === '?' ? '*' : '?';\n\n if (next !== store[key].type) {\n setState((prev) => {\n return {\n ...prev,\n [key]: {\n ...prev[key],\n type: next,\n },\n };\n });\n }\n }\n }\n\n function onChange<T extends CronType[ActiveTab]>(type: keyof T, val: T[keyof T]) {\n batch(() => {\n prefixWeekDay();\n setState((prev) => {\n const next = {\n ...prev[active()],\n [type]: val,\n };\n\n if (type === 'start' || type === 'end') {\n if (next.end - next.start <= 1) {\n if (type === 'end') {\n next.start = (val as number) - 1;\n } else {\n next.end = (val as number) + 1;\n }\n }\n }\n\n return {\n ...prev,\n [active()]: next,\n };\n });\n });\n }\n function changeActiveKey(e: CustomEvent<[string, TabOption, Event]>) {\n setActive(e.detail[0] as ActiveTab);\n }\n function parseVal<T extends ActiveTab>(item: CronType[T], isWeek?: boolean) {\n if (item.value.includes('-')) {\n item.type = 'period';\n const period = item.value.split('-');\n\n item.start = Number(period[0]);\n item.end = Number(period[1]);\n } else if (item.value.includes('W')) {\n item.type = 'closeWorkDay';\n (item as CronType['day']).closeWorkDay = Number(item.value.split('W')[0]) || 1;\n } else if (item.value.includes('L')) {\n item.type = 'last';\n (item as CronType['day']).last = Number(item.value.split('L')[0]) || 1;\n } else if (item.value.includes(isWeek ? '#' : '/')) {\n item.type = 'beginInterval';\n const beginInterval = item.value.split(isWeek ? '#' : '/');\n\n if (isWeek) {\n item.begin = Number(beginInterval[1]);\n item.beginEvery = Number(beginInterval[0]);\n } else {\n item.begin = Number(beginInterval[0]);\n item.beginEvery = Number(beginInterval[1]);\n }\n } else if (item.value.includes(',') || /^[0-9]+$/.test(item.value)) {\n item.type = 'some';\n item.some = item.value.split(',').map(Number);\n } else {\n item.type = item.value as CronType[T]['type'];\n }\n return item;\n }\n\n function nts(num?: string | number) {\n if (typeof num === 'number' && !isNaN(num)) {\n return `${num}`;\n }\n return num;\n }\n\n function fmt<T extends ActiveTab>(item: CronType[T], isWeek?: boolean) {\n switch (item.type) {\n case 'period':\n return `${nts(item.start)}-${nts(item.end)}`;\n case 'beginInterval':\n if (isWeek) return `${nts(item.beginEvery)}#${nts(item.begin)}`;\n return `${nts(item.begin)}/${nts(item.beginEvery)}`;\n case 'closeWorkDay':\n return `${nts(item.closeWorkDay || 1)}W`;\n case 'last':\n return isWeek ? `${nts(item.last)}L` : 'L';\n case 'some':\n return item.some.join(',');\n default:\n return item.type;\n }\n }\n\n createEffect(() => {\n if (local.value !== void 0 && untrack(value) !== local.value) {\n setValue(local.value);\n }\n });\n\n createEffect(() => {\n const val = value();\n\n if (val) {\n const valuesArray = val.toUpperCase().split(' ');\n\n batch(() => {\n setState((prev) => {\n return {\n second: parseVal<'second'>({ ...prev.second, value: valuesArray[0] || '?' }),\n minute: parseVal<'minute'>({ ...prev.minute, value: valuesArray[1] || '?' }),\n hour: parseVal<'hour'>({ ...prev.hour, value: valuesArray[2] || '?' }),\n day: parseVal<'day'>({ ...prev.day, value: valuesArray[3] || '' }),\n month: parseVal<'month'>({ ...prev.month, value: valuesArray[4] || '' }),\n week: parseVal<'week'>({ ...prev.week, value: valuesArray[5] || '' }, true),\n year: parseVal<'year'>({ ...prev.year, value: valuesArray[6] || '' }),\n };\n });\n });\n }\n });\n createEffect(() => {\n const { second, minute, hour, day, month, week, year } = state();\n const next = `${fmt(second)} ${fmt(minute)} ${fmt(hour)} ${fmt(day)} ${fmt(month)} ${fmt(\n week,\n true,\n )} ${fmt(year)}`;\n\n setValue((prev) => {\n if (prev === next) return prev;\n props.onChange?.(next);\n return next;\n });\n });\n\n const items = [\n {\n value: 'second',\n label: '秒',\n content: <Second state={state().second} onChange={onChange} />,\n },\n {\n value: 'minute',\n label: '分钟',\n content: <Minute state={state().minute} onChange={onChange} />,\n },\n {\n value: 'hour',\n label: '小时',\n content: <Hour state={state().hour} onChange={onChange} />,\n },\n {\n value: 'day',\n label: '日',\n content: <Day state={state().day} onChange={onChange} />,\n },\n {\n value: 'week',\n label: '周',\n content: <Week state={state().week} onChange={onChange} />,\n },\n {\n value: 'month',\n label: '月',\n content: <Month state={state().month} onChange={onChange} />,\n },\n {\n value: 'year',\n label: '年',\n content: <Year state={state().year} onChange={onChange} />,\n },\n ];\n\n return (\n <>\n <Show when={local.css}>\n <style textContent={css(local.css)} />\n </Show>\n <n-tabs type={local.type} items={items} value={active()} onChange={changeActiveKey} />\n <Show when={local.showCron}>\n <code\n style={{\n width: '100%',\n display: 'block',\n background: 'var(--component-bg)',\n 'border-radius': 'var(--border-radius)',\n 'text-align': 'center',\n }}\n >\n {value()}\n </code>\n </Show>\n </>\n );\n}\n\ncustomElement<CronProps>(\n 'n-cron',\n {\n value: void 0,\n defaultValue: '0 0 0 * * ? *',\n onChange: void 0,\n type: 'line',\n exclude: [],\n showCron: true,\n } as CronProps,\n (_, opts) => {\n const el = opts.element;\n const props = mergeProps(\n {\n onChange(val?: string) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: val,\n }),\n );\n },\n },\n _,\n );\n\n return <Cron {...props} />;\n },\n);\nexport default Cron;\n"],"names":["Show","batch","createEffect","createSignal","mergeProps","splitProps","untrack","css","customElement","Day","Hour","Minute","Month","Second","Week","Year","Cron","props","local","value","setValue","defaultValue","fullYear","date","Date","getFullYear","defaultState","hms","start","end","begin","beginEvery","some","mwd","year","days","daysBeginEvery","x","push","label","active","setActive","state","setState","second","type","minute","hour","day","last","closeWorkDay","month","week","onChange","val","prefixWeekDay","store","isDay","key","next","prev","changeActiveKey","e","detail","parseVal","item","isWeek","includes","period","split","Number","beginInterval","test","map","nts","num","isNaN","fmt","join","valuesArray","toUpperCase","items","content","showCron","exclude","_","opts","el","element","dispatchEvent","CustomEvent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../components/cron/index.tsx"],"sourcesContent":["import { batch, createEffect, createSignal, mergeProps, Show, splitProps, untrack } from 'solid-js';\nimport { css } from '@moneko/css';\nimport { customElement } from 'solid-element';\n\nimport type { BaseOption, CustomElement, TabOption } from '..';\n\nimport Day from './day';\nimport Hour from './hour';\nimport Minute from './minute';\nimport Month from './month';\nimport Second from './second';\nimport Week from './week';\nimport Year from './year';\n\nimport '../button';\nimport '../input-number';\nimport '../radio';\nimport '../select';\nimport '../tabs';\n\nexport interface CronProps {\n /** 自定义类名 */\n class?: string;\n /** 自定义样式表 */\n css?: string;\n /** 隐藏域 */\n exclude?: string[];\n /** 显示表达式\n * @default true\n */\n showCron?: boolean;\n /** 标签页类型\n * @default 'line'\n */\n type?: 'line' | 'card';\n /** 值 */\n value?: string;\n /** 默认值\n * @default 0 0 0 * * ? *\n */\n defaultValue?: string;\n /** 值改变触发a */\n onChange?(val?: string): void;\n}\n\nexport type CronElement = CustomElement<CronProps>;\nexport type SecondType = '*' | 'period' | 'beginInterval' | 'some';\nexport type MinuteType = SecondType;\nexport type HourType = SecondType;\nexport type DayType = SecondType | 'closeWorkDay' | '?' | 'last';\nexport type WeekType = SecondType | 'last' | '?';\nexport type MonthType = SecondType;\nexport type YearType = SecondType | '';\nexport interface CronData<T extends string = string> {\n start: number;\n end: number;\n begin: number;\n beginEvery: number;\n type: T;\n some: number[];\n value: string;\n}\n\nexport type ActiveTab = keyof CronType;\nexport interface CronType {\n second: CronData<SecondType>;\n minute: CronData<MinuteType>;\n hour: CronData<HourType>;\n day: CronData<DayType> & { last: number; closeWorkDay: number };\n week: CronData<WeekType> & { last: number };\n month: CronData<MonthType>;\n year: CronData<YearType>;\n}\n\nfunction Cron(props: CronProps) {\n const [local] = splitProps(props, [\n 'value',\n 'defaultValue',\n 'exclude',\n 'onChange',\n 'type',\n 'showCron',\n 'css',\n 'class',\n ]);\n const [value, setValue] = createSignal(local.defaultValue);\n const date = new Date();\n const fullYear = date.getFullYear();\n const defaultState = {\n hms: {\n start: 0,\n end: 1,\n begin: 0,\n beginEvery: 1,\n some: [0],\n value: '',\n },\n mwd: {\n start: 1,\n end: 2,\n begin: 1,\n beginEvery: 1,\n some: [1],\n value: '',\n },\n year: {\n start: fullYear,\n end: fullYear + 1,\n begin: fullYear,\n beginEvery: 1,\n some: [fullYear],\n value: '',\n },\n };\n const days: BaseOption[] = [];\n const daysBeginEvery: number[] = [];\n\n for (let x = 1; x < 32; x++) {\n days.push({\n label: x < 10 ? `0${x}` : `${x}`,\n value: x,\n });\n daysBeginEvery.push(x);\n }\n const [active, setActive] = createSignal<ActiveTab>('second');\n const [state, setState] = createSignal<CronType>({\n second: { type: '*', ...defaultState.hms },\n minute: { type: '*', ...defaultState.hms },\n hour: { type: '*', ...defaultState.hms },\n day: {\n type: '*',\n last: 1,\n closeWorkDay: 1,\n ...defaultState.mwd,\n },\n month: {\n type: '*',\n ...defaultState.mwd,\n },\n week: {\n last: 1,\n type: '?',\n ...defaultState.mwd,\n },\n year: {\n type: '',\n ...defaultState.year,\n },\n });\n\n function prefixWeekDay() {\n const store = untrack(state);\n const isDay = active() === 'day';\n\n if (isDay || active() === 'week') {\n const key = isDay ? 'week' : 'day';\n const next = store[key].type === '?' && store[active()].type === '?' ? '*' : '?';\n\n if (next !== store[key].type) {\n setState((prev) => {\n return {\n ...prev,\n [key]: {\n ...prev[key],\n type: next,\n },\n };\n });\n }\n }\n }\n\n function onChange<T extends CronType[ActiveTab]>(type: keyof T, val: T[keyof T]) {\n batch(() => {\n prefixWeekDay();\n setState((prev) => {\n const next = {\n ...prev[active()],\n [type]: val,\n };\n\n if (type === 'start' || type === 'end') {\n if (next.end - next.start <= 1) {\n if (type === 'end') {\n next.start = (val as number) - 1;\n } else {\n next.end = (val as number) + 1;\n }\n }\n }\n\n return {\n ...prev,\n [active()]: next,\n };\n });\n });\n }\n function changeActiveKey(e: CustomEvent<[string, TabOption, Event]>) {\n setActive(e.detail[0] as ActiveTab);\n }\n function parseVal<T extends ActiveTab>(item: CronType[T], isWeek?: boolean) {\n if (item.value.includes('-')) {\n item.type = 'period';\n const period = item.value.split('-');\n\n item.start = Number(period[0]);\n item.end = Number(period[1]);\n } else if (item.value.includes('W')) {\n item.type = 'closeWorkDay';\n (item as CronType['day']).closeWorkDay = Number(item.value.split('W')[0]) || 1;\n } else if (item.value.includes('L')) {\n item.type = 'last';\n (item as CronType['day']).last = Number(item.value.split('L')[0]) || 1;\n } else if (item.value.includes(isWeek ? '#' : '/')) {\n item.type = 'beginInterval';\n const beginInterval = item.value.split(isWeek ? '#' : '/');\n\n if (isWeek) {\n item.begin = Number(beginInterval[1]);\n item.beginEvery = Number(beginInterval[0]);\n } else {\n item.begin = Number(beginInterval[0]);\n item.beginEvery = Number(beginInterval[1]);\n }\n } else if (item.value.includes(',') || /^[0-9]+$/.test(item.value)) {\n item.type = 'some';\n item.some = item.value.split(',').map(Number);\n } else {\n item.type = item.value as CronType[T]['type'];\n }\n return item;\n }\n\n function nts(num?: string | number) {\n if (typeof num === 'number' && !isNaN(num)) {\n return `${num}`;\n }\n return num;\n }\n\n function fmt<T extends ActiveTab>(item: CronType[T], isWeek?: boolean) {\n switch (item.type) {\n case 'period':\n return `${nts(item.start)}-${nts(item.end)}`;\n case 'beginInterval':\n if (isWeek) return `${nts(item.beginEvery)}#${nts(item.begin)}`;\n return `${nts(item.begin)}/${nts(item.beginEvery)}`;\n case 'closeWorkDay':\n return `${nts(item.closeWorkDay || 1)}W`;\n case 'last':\n return isWeek ? `${nts(item.last)}L` : 'L';\n case 'some':\n return item.some.join(',');\n default:\n return item.type;\n }\n }\n\n createEffect(() => {\n if (local.value !== void 0 && untrack(value) !== local.value) {\n setValue(local.value);\n }\n });\n\n createEffect(() => {\n const val = value();\n\n if (val) {\n const valuesArray = val.toUpperCase().split(' ');\n\n batch(() => {\n setState((prev) => {\n return {\n second: parseVal<'second'>({ ...prev.second, value: valuesArray[0] || '?' }),\n minute: parseVal<'minute'>({ ...prev.minute, value: valuesArray[1] || '?' }),\n hour: parseVal<'hour'>({ ...prev.hour, value: valuesArray[2] || '?' }),\n day: parseVal<'day'>({ ...prev.day, value: valuesArray[3] || '' }),\n month: parseVal<'month'>({ ...prev.month, value: valuesArray[4] || '' }),\n week: parseVal<'week'>({ ...prev.week, value: valuesArray[5] || '' }, true),\n year: parseVal<'year'>({ ...prev.year, value: valuesArray[6] || '' }),\n };\n });\n });\n }\n });\n createEffect(() => {\n const { second, minute, hour, day, month, week, year } = state();\n const next = `${fmt(second)} ${fmt(minute)} ${fmt(hour)} ${fmt(day)} ${fmt(month)} ${fmt(\n week,\n true,\n )} ${fmt(year)}`;\n\n setValue((prev) => {\n if (prev === next) return prev;\n props.onChange?.(next);\n return next;\n });\n });\n\n const items = [\n {\n value: 'second',\n label: '秒',\n content: <Second state={state().second} onChange={onChange} />,\n },\n {\n value: 'minute',\n label: '分钟',\n content: <Minute state={state().minute} onChange={onChange} />,\n },\n {\n value: 'hour',\n label: '小时',\n content: <Hour state={state().hour} onChange={onChange} />,\n },\n {\n value: 'day',\n label: '日',\n content: <Day state={state().day} onChange={onChange} />,\n },\n {\n value: 'week',\n label: '周',\n content: <Week state={state().week} onChange={onChange} />,\n },\n {\n value: 'month',\n label: '月',\n content: <Month state={state().month} onChange={onChange} />,\n },\n {\n value: 'year',\n label: '年',\n content: <Year state={state().year} onChange={onChange} />,\n },\n ];\n\n return (\n <>\n <Show when={local.css}>\n <style textContent={css(local.css)} />\n </Show>\n <n-tabs type={local.type} items={items} value={active()} onChange={changeActiveKey} />\n <Show when={local.showCron}>\n <code\n style={{\n width: '100%',\n display: 'block',\n background: 'var(--component-bg)',\n 'border-radius': 'var(--border-radius)',\n 'text-align': 'center',\n }}\n >\n {value()}\n </code>\n </Show>\n </>\n );\n}\n\ncustomElement<CronProps>(\n 'n-cron',\n {\n value: void 0,\n defaultValue: '0 0 0 * * ? *',\n onChange: void 0,\n type: 'line',\n exclude: [],\n showCron: true,\n } as CronProps,\n (_, opts) => {\n const el = opts.element;\n const props = mergeProps(\n {\n onChange(val?: string) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: val,\n }),\n );\n },\n },\n _,\n );\n\n return <Cron {...props} />;\n },\n);\nexport default Cron;\n"],"names":["batch","createEffect","createSignal","mergeProps","Show","splitProps","untrack","css","customElement","Day","Hour","Minute","Month","Second","Week","Year","Cron","props","local","value","setValue","defaultValue","fullYear","date","Date","getFullYear","defaultState","hms","start","end","begin","beginEvery","some","mwd","year","days","daysBeginEvery","x","push","label","active","setActive","state","setState","second","type","minute","hour","day","last","closeWorkDay","month","week","onChange","val","prefixWeekDay","store","isDay","key","next","prev","changeActiveKey","e","detail","parseVal","item","isWeek","includes","period","split","Number","beginInterval","test","map","nts","num","isNaN","fmt","join","valuesArray","toUpperCase","items","content","showCron","exclude","_","opts","el","element","dispatchEvent","CustomEvent"],"mappings":"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"}
|
package/es/cron/item.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/cron/item.tsx"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"sources":["../../components/cron/item.tsx"],"sourcesContent":["import type { RadioOption } from 'neko-ui';\n\nimport type { ActiveTab, CronType } from '.';\n\nexport interface CronItemProps<T extends ActiveTab = 'second'> {\n state: CronType[T];\n onChange?<V extends Exclude<keyof CronType[T], 'value' | 'type'> | 'type'>(\n type: V,\n value: CronType[T][V],\n ): void;\n options: RadioOption[];\n}\n\nfunction Item<T extends ActiveTab>(props: CronItemProps<T>) {\n function handleType(e: CustomEvent<string>) {\n props.onChange?.('type', e.detail as CronType[T]['type']);\n }\n\n return (\n <n-radio\n layout=\"vertical\"\n value={props.state.type}\n options={props.options}\n onChange={handleType}\n />\n );\n}\n\nexport default Item;\n"],"names":["props","handleType","e","onChange","detail","options","state","type"],"mappings":"kNA4BA,gBAfA,SAAmCA,CAAuB,EACxD,SAASC,EAAWC,CAAsB,QACxCF,EAAMG,QAAQ,EAAdH,EAAMG,QAAQ,MAAdH,EAAiB,OAAQE,EAAEE,MAAM,CACnC,CAEA,0CAKcH,iCADDD,EAAMK,OAAO,gBADfL,EAAMM,KAAK,CAACC,IAAI,OAK7B"}
|
package/es/cron/minute.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"solid-js/web";import{createComponent as e}from"solid-js/web";import t
|
|
1
|
+
import"solid-js/web";import{createComponent as e}from"solid-js/web";import{minutes as t}from"../date-picker/time";import r from"./begin-interval";import n from"./item";import a from"./period";import o from"./some";export default function(i){let l=[];for(let e=0;e<60;e++)l.push(`${e+1}`);let g=[{value:"*",label:"每分钟"},{value:"period",label:e(a,{get start(){return i.state.start},get end(){return i.state.end},options:t,get disabled(){return"period"!==i.state.type},get onChange(){return i.onChange},validate:(e,t)=>"start"===e?t>=0&&t<59:t>0&&t<=59,label:["周期从","到","分钟"]})},{value:"beginInterval",label:e(r,{get begin(){return i.state.begin},get beginEvery(){return i.state.beginEvery},get onChange(){return i.onChange},beginOption:t,beginEveryOption:l,get disabled(){return"beginInterval"!==i.state.type},validate:(e,t)=>"begin"===e?t>=0&&t<=59:t>=1&&t<=60,label:["从","分开始, 每","分钟执行一次"]})},{value:"some",label:e(o,{label:"具体分钟数(至少选择一项)",get value(){return i.state.some},options:t,get type(){return i.state.type},get onChange(){return i.onChange}})}];return e(n,{options:g,get onChange(){return i.onChange},get state(){return i.state}})}
|
|
2
2
|
//# sourceMappingURL=minute.js.map
|
package/es/cron/minute.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/cron/minute.tsx"],"sourcesContent":["import BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\
|
|
1
|
+
{"version":3,"sources":["../../components/cron/minute.tsx"],"sourcesContent":["import { minutes } from '../date-picker/time';\n\nimport BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\n\nfunction Minute(props: Required<Omit<CronItemProps<'minute'>, 'options'>>) {\n const beginEvery: string[] = [];\n\n for (let x = 0; x < 60; x++) {\n beginEvery.push(`${x + 1}`);\n }\n\n const options = [\n { value: '*', label: '每分钟' },\n {\n value: 'period',\n label: (\n <Period\n start={props.state.start}\n end={props.state.end}\n options={minutes}\n disabled={props.state.type !== 'period'}\n onChange={props.onChange}\n validate={(_, v) => (_ === 'start' ? v >= 0 && v < 59 : v > 0 && v <= 59)}\n label={['周期从', '到', '分钟']}\n />\n ),\n },\n {\n value: 'beginInterval',\n label: (\n <BeginInterval\n begin={props.state.begin}\n beginEvery={props.state.beginEvery}\n onChange={props.onChange}\n beginOption={minutes}\n beginEveryOption={beginEvery}\n disabled={props.state.type !== 'beginInterval'}\n validate={(_, v) => (_ === 'begin' ? v >= 0 && v <= 59 : v >= 1 && v <= 60)}\n label={['从', '分开始, 每', '分钟执行一次']}\n />\n ),\n },\n {\n value: 'some',\n label: (\n <Some\n label=\"具体分钟数(至少选择一项)\"\n value={props.state.some}\n options={minutes}\n type={props.state.type}\n onChange={props.onChange}\n />\n ),\n },\n ];\n\n return <Item options={options} onChange={props.onChange} state={props.state} />;\n}\n\nexport default Minute;\n"],"names":["minutes","BeginInterval","Item","Period","Some","props","beginEvery","x","push","options","value","label","state","start","end","type","onChange","_","v","begin","some"],"mappings":"mEAAA,QAASA,WAAAA,CAAO,KAAQ,qBAAsB,AAE9C,QAAOC,MAAmB,kBAAmB,AAC7C,QAAOC,MAAkC,QAAS,AAClD,QAAOC,MAAY,UAAW,AAC9B,QAAOC,MAAU,QAAS,AAyD1B,gBAvDA,SAAgBC,CAAyD,EACvE,IAAMC,EAAuB,EAAE,CAE/B,IAAK,IAAIC,EAAI,EAAGA,EAAI,GAAIA,IACtBD,EAAWE,IAAI,CAAC,CAAC,EAAED,EAAI,EAAE,CAAC,EAG5B,IAAME,EAAU,CACd,CAAEC,MAAO,IAAKC,MAAO,KAAM,EAC3B,CACED,MAAO,SACPC,KAAK,GACFR,sBACQE,EAAMO,KAAK,CAACC,KAAK,mBACnBR,EAAMO,KAAK,CAACE,GAAG,UACXd,uBACCK,AAAqB,WAArBA,EAAMO,KAAK,CAACG,IAAI,wBAChBV,EAAMW,QAAQ,WACd,CAACC,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,EAAI,GAAKA,EAAI,GAAKA,GAAK,SAC/D,CAAC,MAAO,IAAK,KAAK,EAG/B,EACA,CACER,MAAO,gBACPC,KAAK,GACFV,sBACQI,EAAMO,KAAK,CAACO,KAAK,0BACZd,EAAMO,KAAK,CAACN,UAAU,wBACxBD,EAAMW,QAAQ,cACXhB,mBACKM,uBACRD,AAAqB,kBAArBA,EAAMO,KAAK,CAACG,IAAI,WAChB,CAACE,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,GAAK,GAAKA,GAAK,GAAKA,GAAK,SACjE,CAAC,IAAK,SAAU,SAAS,EAGtC,EACA,CACER,MAAO,OACPC,KAAK,GACFP,4CAEQC,EAAMO,KAAK,CAACQ,IAAI,UACdpB,oBACHK,EAAMO,KAAK,CAACG,IAAI,wBACZV,EAAMW,QAAQ,GAG9B,EACD,CAED,SAAQd,WAAcO,wBAAmBJ,EAAMW,QAAQ,qBAASX,EAAMO,KAAK,GAC7E"}
|
package/es/cron/month.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"solid-js/web";import{createComponent as e}from"solid-js/web";import t
|
|
1
|
+
import"solid-js/web";import{createComponent as e}from"solid-js/web";import{months as t}from"../date-picker/month";import r from"./begin-interval";import n from"./item";import a from"./period";import o from"./some";let l=t.map((e,t)=>({label:e,value:t}));export default function(t){let i=[];for(let e=1;e<13;e++)i.push(e);let g=[{value:"*",label:"每月"},{value:"period",label:e(a,{get start(){return t.state.start},get end(){return t.state.end},options:l,get disabled(){return"period"!==t.state.type},get onChange(){return t.onChange},validate:(e,t)=>"start"===e?t>=1&&t<12:t>1&&t<=12,label:["周期从","到","月"]})},{value:"beginInterval",label:e(r,{get begin(){return t.state.begin},get beginEvery(){return t.state.beginEvery},get onChange(){return t.onChange},beginOption:l,beginEveryOption:i,get disabled(){return"beginInterval"!==t.state.type},validate:(e,t)=>t>=1&&t<=12,label:["从","开始, 每","个月执行一次"]})},{value:"some",label:e(o,{label:"具体月数(至少选择一项)",get value(){return t.state.some},options:l,get type(){return t.state.type},get onChange(){return t.onChange}})}];return e(n,{options:g,get onChange(){return t.onChange},get state(){return t.state}})}
|
|
2
2
|
//# sourceMappingURL=month.js.map
|
package/es/cron/month.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/cron/month.tsx"],"sourcesContent":["import BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\
|
|
1
|
+
{"version":3,"sources":["../../components/cron/month.tsx"],"sourcesContent":["import { months as month } from '../date-picker/month';\n\nimport BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\n\nconst months = month.map((m, i) => ({ label: m, value: i }));\n\nfunction Month(props: Required<Omit<CronItemProps<'month'>, 'options'>>) {\n const beginEvery: number[] = [];\n\n for (let x = 1; x < 13; x++) {\n beginEvery.push(x);\n }\n\n const options = [\n { value: '*', label: '每月' },\n {\n value: 'period',\n label: (\n <Period\n start={props.state.start}\n end={props.state.end}\n options={months}\n disabled={props.state.type !== 'period'}\n onChange={props.onChange}\n validate={(_, v) => (_ === 'start' ? v >= 1 && v < 12 : v > 1 && v <= 12)}\n label={['周期从', '到', '月']}\n />\n ),\n },\n {\n value: 'beginInterval',\n label: (\n <BeginInterval\n begin={props.state.begin}\n beginEvery={props.state.beginEvery}\n onChange={props.onChange}\n beginOption={months}\n beginEveryOption={beginEvery}\n disabled={props.state.type !== 'beginInterval'}\n validate={(_, v) => v >= 1 && v <= 12}\n label={['从', '开始, 每', '个月执行一次']}\n />\n ),\n },\n {\n value: 'some',\n label: (\n <Some\n label=\"具体月数(至少选择一项)\"\n value={props.state.some}\n options={months}\n type={props.state.type}\n onChange={props.onChange}\n />\n ),\n },\n ];\n\n return <Item options={options} onChange={props.onChange} state={props.state} />;\n}\n\nexport default Month;\n"],"names":["months","month","BeginInterval","Item","Period","Some","map","m","i","label","value","props","beginEvery","x","push","options","state","start","end","type","onChange","_","v","begin","some"],"mappings":"mEAAA,QAASA,UAAUC,CAAK,KAAQ,sBAAuB,AAEvD,QAAOC,MAAmB,kBAAmB,AAC7C,QAAOC,MAAkC,QAAS,AAClD,QAAOC,MAAY,UAAW,AAC9B,QAAOC,MAAU,QAAS,CAE1B,IAAML,EAASC,EAAMK,GAAG,CAAC,CAACC,EAAGC,IAAO,CAAA,CAAEC,MAAOF,EAAGG,MAAOF,CAAE,CAAA,EAyDzD,gBAvDA,SAAeG,CAAwD,EACrE,IAAMC,EAAuB,EAAE,CAE/B,IAAK,IAAIC,EAAI,EAAGA,EAAI,GAAIA,IACtBD,EAAWE,IAAI,CAACD,GAGlB,IAAME,EAAU,CACd,CAAEL,MAAO,IAAKD,MAAO,IAAK,EAC1B,CACEC,MAAO,SACPD,KAAK,GACFL,sBACQO,EAAMK,KAAK,CAACC,KAAK,mBACnBN,EAAMK,KAAK,CAACE,GAAG,UACXlB,uBACCW,AAAqB,WAArBA,EAAMK,KAAK,CAACG,IAAI,wBAChBR,EAAMS,QAAQ,WACd,CAACC,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,EAAI,GAAKA,EAAI,GAAKA,GAAK,SAC/D,CAAC,MAAO,IAAK,IAAI,EAG9B,EACA,CACEZ,MAAO,gBACPD,KAAK,GACFP,sBACQS,EAAMK,KAAK,CAACO,KAAK,0BACZZ,EAAMK,KAAK,CAACJ,UAAU,wBACxBD,EAAMS,QAAQ,cACXpB,mBACKY,uBACRD,AAAqB,kBAArBA,EAAMK,KAAK,CAACG,IAAI,WAChB,CAACE,EAAGC,IAAMA,GAAK,GAAKA,GAAK,SAC5B,CAAC,IAAK,QAAS,SAAS,EAGrC,EACA,CACEZ,MAAO,OACPD,KAAK,GACFJ,2CAEQM,EAAMK,KAAK,CAACQ,IAAI,UACdxB,oBACHW,EAAMK,KAAK,CAACG,IAAI,wBACZR,EAAMS,QAAQ,GAG9B,EACD,CAED,SAAQjB,WAAcY,wBAAmBJ,EAAMS,QAAQ,qBAAST,EAAMK,KAAK,GAC7E"}
|
package/es/cron/period.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/cron/period.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../components/cron/period.tsx"],"sourcesContent":["import type { BaseOption } from 'neko-ui';\n\nimport type { CronData } from '.';\nimport { selectCss, selectPortalCss } from './style';\n\ninterface PeriodProps {\n start: CronData['start'];\n end: CronData['end'];\n label: [JSX.Element, JSX.Element, JSX.Element];\n options: (string | number | BaseOption)[];\n onChange(type: 'start' | 'end', value: number): void;\n validate(type: 'start' | 'end', v: number): boolean;\n disabled: boolean;\n}\n\nfunction Period(props: PeriodProps) {\n function onChange(\n type: 'start' | 'end',\n e: CustomEvent<[val: number | string, item: BaseOption]>,\n ) {\n const [value] = e.detail;\n const v = Number(value);\n\n if (props.validate(type, v)) {\n props.onChange(type, v);\n }\n }\n\n return (\n <>\n {props.label[0]}\n <n-select\n value={props.start}\n onChange={onChange.bind(null, 'start')}\n options={props.options.slice(0, -1)}\n disabled={props.disabled}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n {props.label[1]}\n <n-select\n value={props.end}\n onChange={onChange.bind(null, 'end')}\n options={props.options.slice(1)}\n disabled={props.disabled}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n {props.label[2]}\n </>\n );\n}\n\nexport default Period;\n"],"names":["selectCss","selectPortalCss","props","onChange","type","e","value","detail","v","Number","validate","label","bind","options","slice","disabled","start","end"],"mappings":"qOAGA,QAASA,aAAAA,CAAS,CAAEC,mBAAAA,CAAe,KAAQ,SAAU,AAsDrD,gBA1CA,SAAgBC,CAAkB,EAChC,SAASC,EACPC,CAAqB,CACrBC,CAAwD,EAExD,GAAM,CAACC,EAAM,CAAGD,EAAEE,MAAM,CAClBC,EAAIC,OAAOH,GAEbJ,EAAMQ,QAAQ,CAACN,EAAMI,IACvBN,EAAMC,QAAQ,CAACC,EAAMI,EAEzB,CAEA,aAEKN,EAAMS,KAAK,CAAC,EAAE,sCAGHR,EAASS,IAAI,CAAC,KAAM,gBAGzBZ,aACMC,6BACkB,CAAA,UACtB,CAAA,4BALEC,EAAMW,OAAO,CAACC,KAAK,CAAC,EAAG,MACtBZ,EAAMa,QAAQ,oHAHjBb,EAAMc,KAAK,cASnBd,EAAMS,KAAK,CAAC,EAAE,sCAGHR,EAASS,IAAI,CAAC,KAAM,cAGzBZ,aACMC,6BACkB,CAAA,UACtB,CAAA,4BALEC,EAAMW,OAAO,CAACC,KAAK,CAAC,KACnBZ,EAAMa,QAAQ,uHAHjBb,EAAMe,GAAG,cASjBf,EAAMS,KAAK,CAAC,EAAE,EAGrB"}
|
package/es/cron/second.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"solid-js/web";import{createComponent as e}from"solid-js/web";import t
|
|
1
|
+
import"solid-js/web";import{createComponent as e}from"solid-js/web";import{minutes as t}from"../date-picker/time";import r from"./begin-interval";import n from"./item";import a from"./period";import o from"./some";export default function(i){let l=[];for(let e=0;e<60;e++)l.push(`${e+1}`);let g=[{value:"*",label:"每秒"},{value:"period",label:e(a,{get start(){return i.state.start},get end(){return i.state.end},options:t,get disabled(){return"period"!==i.state.type},get onChange(){return i.onChange},validate:(e,t)=>"start"===e?t>=0&&t<59:t>0&&t<=59,label:["周期从","到","秒"]})},{value:"beginInterval",label:e(r,{get begin(){return i.state.begin},get beginEvery(){return i.state.beginEvery},get onChange(){return i.onChange},beginOption:t,beginEveryOption:l,get disabled(){return"beginInterval"!==i.state.type},validate:(e,t)=>"begin"===e?t>=0&&t<=59:t>=0&&t<=60,label:["从","秒开始, 每","秒执行一次"]})},{value:"some",label:e(o,{label:"具体秒数(至少选择一项)",get value(){return i.state.some},options:t,get type(){return i.state.type},get onChange(){return i.onChange}})}];return e(n,{options:g,get onChange(){return i.onChange},get state(){return i.state}})}
|
|
2
2
|
//# sourceMappingURL=second.js.map
|
package/es/cron/second.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/cron/second.tsx"],"sourcesContent":["import BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\
|
|
1
|
+
{"version":3,"sources":["../../components/cron/second.tsx"],"sourcesContent":["import { minutes as seconds } from '../date-picker/time';\n\nimport BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\n\nfunction Second(props: Required<Omit<CronItemProps<'month'>, 'options'>>) {\n const beginEvery: string[] = [];\n\n for (let x = 0; x < 60; x++) {\n beginEvery.push(`${x + 1}`);\n }\n\n const options = [\n { value: '*', label: '每秒' },\n {\n value: 'period',\n label: (\n <Period\n start={props.state.start}\n end={props.state.end}\n options={seconds}\n disabled={props.state.type !== 'period'}\n onChange={props.onChange}\n validate={(_, v) => (_ === 'start' ? v >= 0 && v < 59 : v > 0 && v <= 59)}\n label={['周期从', '到', '秒']}\n />\n ),\n },\n {\n value: 'beginInterval',\n label: (\n <BeginInterval\n begin={props.state.begin}\n beginEvery={props.state.beginEvery}\n onChange={props.onChange}\n beginOption={seconds}\n beginEveryOption={beginEvery}\n disabled={props.state.type !== 'beginInterval'}\n validate={(_, v) => (_ === 'begin' ? v >= 0 && v <= 59 : v >= 0 && v <= 60)}\n label={['从', '秒开始, 每', '秒执行一次']}\n />\n ),\n },\n {\n value: 'some',\n label: (\n <Some\n label=\"具体秒数(至少选择一项)\"\n value={props.state.some}\n options={seconds}\n type={props.state.type}\n onChange={props.onChange}\n />\n ),\n },\n ];\n\n return <Item options={options} onChange={props.onChange} state={props.state} />;\n}\n\nexport default Second;\n"],"names":["minutes","seconds","BeginInterval","Item","Period","Some","props","beginEvery","x","push","options","value","label","state","start","end","type","onChange","_","v","begin","some"],"mappings":"mEAAA,QAASA,WAAWC,CAAO,KAAQ,qBAAsB,AAEzD,QAAOC,MAAmB,kBAAmB,AAC7C,QAAOC,MAAkC,QAAS,AAClD,QAAOC,MAAY,UAAW,AAC9B,QAAOC,MAAU,QAAS,AAyD1B,gBAvDA,SAAgBC,CAAwD,EACtE,IAAMC,EAAuB,EAAE,CAE/B,IAAK,IAAIC,EAAI,EAAGA,EAAI,GAAIA,IACtBD,EAAWE,IAAI,CAAC,CAAC,EAAED,EAAI,EAAE,CAAC,EAG5B,IAAME,EAAU,CACd,CAAEC,MAAO,IAAKC,MAAO,IAAK,EAC1B,CACED,MAAO,SACPC,KAAK,GACFR,sBACQE,EAAMO,KAAK,CAACC,KAAK,mBACnBR,EAAMO,KAAK,CAACE,GAAG,UACXd,uBACCK,AAAqB,WAArBA,EAAMO,KAAK,CAACG,IAAI,wBAChBV,EAAMW,QAAQ,WACd,CAACC,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,EAAI,GAAKA,EAAI,GAAKA,GAAK,SAC/D,CAAC,MAAO,IAAK,IAAI,EAG9B,EACA,CACER,MAAO,gBACPC,KAAK,GACFV,sBACQI,EAAMO,KAAK,CAACO,KAAK,0BACZd,EAAMO,KAAK,CAACN,UAAU,wBACxBD,EAAMW,QAAQ,cACXhB,mBACKM,uBACRD,AAAqB,kBAArBA,EAAMO,KAAK,CAACG,IAAI,WAChB,CAACE,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,GAAK,GAAKA,GAAK,GAAKA,GAAK,SACjE,CAAC,IAAK,SAAU,QAAQ,EAGrC,EACA,CACER,MAAO,OACPC,KAAK,GACFP,2CAEQC,EAAMO,KAAK,CAACQ,IAAI,UACdpB,oBACHK,EAAMO,KAAK,CAACG,IAAI,wBACZV,EAAMW,QAAQ,GAG9B,EACD,CAED,SAAQd,WAAcO,wBAAmBJ,EAAMW,QAAQ,qBAASX,EAAMO,KAAK,GAC7E"}
|
package/es/cron/some.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/cron/some.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../components/cron/some.tsx"],"sourcesContent":["import type { BaseOption } from 'neko-ui';\n\nimport type { CronData } from '.';\nimport { selectPortalCss } from './style';\n\ninterface SomeProps {\n value: CronData['some'];\n label: JSX.Element;\n options: (string | number | BaseOption)[];\n type: CronData['type'];\n onChange(type: 'some', value: number[]): void;\n}\n\nfunction Some(props: SomeProps) {\n function onChange(e: CustomEvent<[val: (number | string)[], item: BaseOption]>) {\n const [value] = e.detail;\n\n if (value.length < 1) {\n return;\n }\n props.onChange('some', value as number[]);\n }\n return (\n <>\n {props.label}\n <n-select\n multiple={true}\n style={{ flex: 1 }}\n value={props.value}\n onChange={onChange}\n options={props.options}\n disabled={props.type !== 'some'}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n </>\n );\n}\n\nexport default Some;\n"],"names":["selectPortalCss","props","onChange","e","value","detail","length","label","options","type"],"mappings":"qOAGA,QAASA,mBAAAA,CAAe,KAAQ,SAAU,AAqC1C,gBA3BA,SAAcC,CAAgB,EAC5B,SAASC,EAASC,CAA4D,EAC5E,GAAM,CAACC,EAAM,CAAGD,EAAEE,MAAM,AAEpBD,CAAAA,EAAME,MAAM,CAAG,GAGnBL,EAAMC,QAAQ,CAAC,OAAQE,EACzB,CACA,aAEKH,EAAMM,KAAK,sCAKAL,cAHA,CAAA,6CAMCF,6BACkB,CAAA,UACtB,CAAA,4BAJEC,EAAMO,OAAO,GACZP,AAAe,SAAfA,EAAMQ,IAAI,oHAHbR,EAAMG,KAAK,QAU1B"}
|
package/es/date-picker/date.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{template as t}from"solid-js/web";import{insert as e}from"solid-js/web";import{getOwner as r}from"solid-js/web";import{effect as n}from"solid-js/web";import{delegateEvents as o}from"solid-js/web";import{createComponent as a}from"solid-js/web";import{className as s}from"solid-js/web";import{addEventListener as i}from"solid-js/web";let l=t('<n-button type="primary">',!0,!1);import{
|
|
1
|
+
import{template as t}from"solid-js/web";import{insert as e}from"solid-js/web";import{getOwner as r}from"solid-js/web";import{effect as n}from"solid-js/web";import{delegateEvents as o}from"solid-js/web";import{createComponent as a}from"solid-js/web";import{className as s}from"solid-js/web";import{addEventListener as i}from"solid-js/web";let l=t('<n-button type="primary">',!0,!1);import{createMemo as d,For as u}from"solid-js";export default function(t){let o=d(()=>{let e=t.current.startOf("month").day();if(!e)return[];let r=[],n=t.current.subtract(1,"month").endOf("month");for(let t=e-1;t>=0;t--)r.push(n.subtract(t,"day").get("date"));return r}),c=d(()=>Array.from({length:6-t.current.endOf("month").day()},(t,e)=>e+1)),m=d(()=>[...o(),...Array.from({length:t.current.daysInMonth()},(t,e)=>e+1),...c()]);function f(t){return t<o().length}function h(t){return t>=m().length-c().length}return a(u,{get each(){return m()},children:(o,a)=>{let u=d(()=>{let t=a();return f(t)||h(t)?"date-day date-opacity":"date-day"}),c=d(()=>{let e=a();return!f(e)&&!h(e)&&t.current.get("date")===o});function m(e){let r=a(),n=t.current.subtract(1,"month"),o=t.current.subtract(-1,"month"),s=(f(r)?n:h(r)?o:t.current).set("date",e);t.current.isSame(s)||t.onChange(s)}return(()=>{let t=l();return i(t,"click",m.bind(null,o),!0),t.circle=!0,t.flat=!0,t._$owner=r(),e(t,o),n(e=>{let r=u(),n=!!c(),o=c()?"strong":"button";return r!==e._v$&&s(t,e._v$=r),n!==e._v$2&&t.classList.toggle("date-active",e._v$2=n),o!==e._v$3&&(t.tag=e._v$3=o),e},{_v$:void 0,_v$2:void 0,_v$3:void 0}),t})()}})}o(["click"]);
|
|
2
2
|
//# sourceMappingURL=date.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/date-picker/date.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../components/date-picker/date.tsx"],"sourcesContent":["import { createMemo, For } from 'solid-js';\n\nimport dayjs from './dayjs';\n\ninterface DatePanelProps {\n current: dayjs.Dayjs;\n onChange(next: dayjs.Dayjs): void;\n}\nfunction DatePanel(props: DatePanelProps) {\n function getDays(_dayjs: dayjs.Dayjs): number[] {\n return Array.from({ length: _dayjs.daysInMonth() }, (_, i) => i + 1);\n }\n const prevDays = createMemo(() => {\n const len = props.current.startOf('month').day();\n\n if (!len) return [];\n const _: number[] = [];\n const lastDayOfMonth = props.current.subtract(1, 'month').endOf('month');\n\n for (let i = len - 1; i >= 0; i--) {\n _.push(lastDayOfMonth.subtract(i, 'day').get('date'));\n }\n\n return _;\n });\n const nextDays = createMemo(() =>\n Array.from({ length: 6 - props.current.endOf('month').day() }, (_, i) => i + 1),\n );\n\n const allDays = createMemo(() => [...prevDays(), ...getDays(props.current), ...nextDays()]);\n\n function isPrev(idx: number) {\n return idx < prevDays().length;\n }\n function isNext(idx: number) {\n return idx >= allDays().length - nextDays().length;\n }\n return (\n <For each={allDays()}>\n {(d, i) => {\n const cls = createMemo(() => {\n const idx = i();\n\n if (isPrev(idx)) return 'date-day date-opacity';\n if (isNext(idx)) return 'date-day date-opacity';\n return 'date-day';\n });\n const isActive = createMemo(() => {\n const idx = i();\n\n return !isPrev(idx) && !isNext(idx) && props.current.get('date') === d;\n });\n\n function setDate(date: number) {\n const idx = i();\n const previousMonth = props.current.subtract(1, 'month');\n const nextMonth = props.current.subtract(-1, 'month');\n\n const next = (isPrev(idx) ? previousMonth : isNext(idx) ? nextMonth : props.current).set(\n 'date',\n date,\n );\n\n if (!props.current.isSame(next)) {\n props.onChange(next);\n }\n }\n\n return (\n <n-button\n type=\"primary\"\n circle={true}\n flat={true}\n class={cls()}\n classList={{\n 'date-active': isActive(),\n }}\n tag={isActive() ? 'strong' : 'button'}\n onClick={setDate.bind(null, d)}\n >\n {d}\n </n-button>\n );\n }}\n </For>\n );\n}\n\nexport default DatePanel;\n"],"names":["createMemo","For","props","prevDays","len","current","startOf","day","_","lastDayOfMonth","subtract","endOf","i","push","get","nextDays","Array","from","length","allDays","_dayjs","daysInMonth","isPrev","idx","isNext","d","cls","isActive","setDate","date","previousMonth","nextMonth","next","set","isSame","onChange","bind"],"mappings":"4XAAA,QAASA,cAAAA,CAAU,CAAEC,OAAAA,CAAG,KAAQ,UAAW,AAwF3C,gBAhFA,SAAmBC,CAAqB,EAItC,IAAMC,EAAWH,EAAW,KAC1B,IAAMI,EAAMF,EAAMG,OAAO,CAACC,OAAO,CAAC,SAASC,GAAG,GAE9C,GAAI,CAACH,EAAK,MAAO,EAAE,CACnB,IAAMI,EAAc,EAAE,CAChBC,EAAiBP,EAAMG,OAAO,CAACK,QAAQ,CAAC,EAAG,SAASC,KAAK,CAAC,SAEhE,IAAK,IAAIC,EAAIR,EAAM,EAAGQ,GAAK,EAAGA,IAC5BJ,EAAEK,IAAI,CAACJ,EAAeC,QAAQ,CAACE,EAAG,OAAOE,GAAG,CAAC,SAG/C,OAAON,CACT,GACMO,EAAWf,EAAW,IAC1BgB,MAAMC,IAAI,CAAC,CAAEC,OAAQ,EAAIhB,EAAMG,OAAO,CAACM,KAAK,CAAC,SAASJ,GAAG,EAAG,EAAG,CAACC,EAAGI,IAAMA,EAAI,IAGzEO,EAAUnB,EAAW,IAAM,IAAIG,OAnB5Ba,MAAMC,IAAI,CAAC,CAAEC,OAAQE,AAmB8BlB,EAAMG,OAAO,CAnBpCgB,WAAW,EAAG,EAAG,CAACb,EAAGI,IAAMA,EAAI,MAmBWG,IAAW,EAE1F,SAASO,EAAOC,CAAW,EACzB,OAAOA,EAAMpB,IAAWe,MAAM,AAChC,CACA,SAASM,EAAOD,CAAW,EACzB,OAAOA,GAAOJ,IAAUD,MAAM,CAAGH,IAAWG,MAAM,AACpD,CACA,SACGjB,qBAAUkB,cACR,CAACM,EAAGb,KACH,IAAMc,EAAM1B,EAAW,KACrB,IAAMuB,EAAMX,WAEZ,AAAIU,EAAOC,IACPC,EAAOD,GADa,wBAEjB,UACT,GACMI,EAAW3B,EAAW,KAC1B,IAAMuB,EAAMX,IAEZ,MAAO,CAACU,EAAOC,IAAQ,CAACC,EAAOD,IAAQrB,EAAMG,OAAO,CAACS,GAAG,CAAC,UAAYW,CACvE,GAEA,SAASG,EAAQC,CAAY,EAC3B,IAAMN,EAAMX,IACNkB,EAAgB5B,EAAMG,OAAO,CAACK,QAAQ,CAAC,EAAG,SAC1CqB,EAAY7B,EAAMG,OAAO,CAACK,QAAQ,CAAC,GAAI,SAEvCsB,EAAO,AAACV,CAAAA,EAAOC,GAAOO,EAAgBN,EAAOD,GAAOQ,EAAY7B,EAAMG,OAAO,AAAD,EAAG4B,GAAG,CACtF,OACAJ,GAGG3B,EAAMG,OAAO,CAAC6B,MAAM,CAACF,IACxB9B,EAAMiC,QAAQ,CAACH,EAEnB,CAEA,yCAUaJ,EAAQQ,IAAI,CAAC,KAAMX,gBAPpB,CAAA,SACF,CAAA,oBAQLA,eAPMC,QAEUC,MAEZA,IAAa,SAAW,0KAMnC,GAGN"}
|
package/es/date-picker/dayjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import a,{extend as o,locale as l}from"dayjs";import"dayjs/
|
|
1
|
+
import a,{extend as o,locale as l}from"dayjs";import r from"dayjs/plugin/localeData";import"dayjs/locale/zh-cn";o(r),l("zh-cn");export default a;
|
|
2
2
|
//# sourceMappingURL=dayjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/date-picker/dayjs.ts"],"sourcesContent":["import dayjs, { extend, locale } from 'dayjs';\nimport 'dayjs/
|
|
1
|
+
{"version":3,"sources":["../../components/date-picker/dayjs.ts"],"sourcesContent":["import dayjs, { extend, locale } from 'dayjs';\nimport localData from 'dayjs/plugin/localeData';\n\nimport 'dayjs/locale/zh-cn';\n\nextend(localData);\nlocale('zh-cn');\n\nexport default dayjs;\n"],"names":["dayjs","extend","locale","localData"],"mappings":"AAAA,OAAOA,GAASC,UAAAA,CAAM,CAAEC,UAAAA,CAAM,KAAQ,OAAQ,AAC9C,QAAOC,MAAe,yBAA0B,AAEhD,OAAO,oBAAqB,CAE5BF,EAAOE,GACPD,EAAO,QAEP,gBAAeF,CAAM"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 基本使用
|
|
3
|
+
description: 最简单的使用方式
|
|
4
|
+
order: 1
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
```html
|
|
8
|
+
<n-data-picker value="2023-08-30 09:41:32"></n-data-picker>
|
|
9
|
+
<script>
|
|
10
|
+
const el = container.querySelector('n-data-picker');
|
|
11
|
+
|
|
12
|
+
el.onchange = function (e) {
|
|
13
|
+
e.target.value = e.detail[0];
|
|
14
|
+
};
|
|
15
|
+
</script>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
```jsx
|
|
19
|
+
<n-data-picker
|
|
20
|
+
onChange={(e) => {
|
|
21
|
+
console.log(e.detail);
|
|
22
|
+
}}
|
|
23
|
+
/>
|
|
24
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 显示时间选择
|
|
3
|
+
description: 设置 `type` 为 `date` 将面板调整为日期选择, 并设置 `show-time` 为 `true`
|
|
4
|
+
order: 5
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
```html
|
|
8
|
+
<n-data-picker type="date" show-time="true"></n-data-picker>
|
|
9
|
+
<h4>不选时</h4>
|
|
10
|
+
<n-data-picker type="date" show-time="true" show-hour="false"></n-data-picker>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
```jsx
|
|
14
|
+
<n-data-picker type="date" show-time={true} value="2023-08-08 06:06:53" />
|
|
15
|
+
```
|
package/es/date-picker/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e
|
|
1
|
+
var e;function o(){return(o=Object.assign||function(e){for(var o=1;o<arguments.length;o++){var t=arguments[o];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(this,arguments)}import{use as t}from"solid-js/web";import{template as n}from"solid-js/web";import{mergeProps as r}from"solid-js/web";import{getOwner as a}from"solid-js/web";import{effect as s}from"solid-js/web";import{delegateEvents as i}from"solid-js/web";import{createComponent as d}from"solid-js/web";import{addEventListener as l}from"solid-js/web";let p=n('<n-input part="value">',!0,!1);import{createEffect as u,createMemo as m,createSignal as v,mergeProps as c,splitProps as f,untrack as h}from"solid-js";import{customElement as w}from"solid-element";import g,{defaultProps as y}from"../popover";import Y from"./dayjs";import C from"./panel";import{styles as b}from"./style";import"../button";import"../menu";function $(e){let o;let n=c({type:"date",parser:"YYYY-MM-DD HH:mm:ss"},e),[i,w]=f(n,["class","css","value","defaultValue","onChange","type","content","onOpenChange","open","format","popupCss","trigger","parser","showTime","showHour","showMinute","showSecond","prefixIcon","suffixIcon","placeholder","showToday","showHeader"]),[y,$]=v(null),[_,j]=v(Y(i.defaultValue)),H=m(()=>i.format?i.format:i.showTime?"YYYY-MM-DD HH:mm:ss":({month:"YYYY-MM",date:"YYYY-MM-DD",year:"YYYY"})[i.type||"date"]);function M(e){w.disabled||(null==i.onOpenChange||i.onOpenChange.call(i,e),void 0===i.open&&$(e))}function T(e){e.stopPropagation(),e.preventDefault(),M(!0)}function x(){h(y)&&M(!1)}function O(e){var t;e.target===(null==o?void 0:null==(t=o.shadowRoot)?void 0:t.activeElement)&&M(!h(y))}function I(e){void 0===i.value&&j(e),null==n.onChange||n.onChange.call(n,e.format(i.parser),e)}function D(e){if(e.detail){let o=Y(e.detail);o.isValid()&&I(o)}}return u(()=>{void 0!==i.open&&i.open!==h(y)&&$(i.open)}),u(()=>{let e=Y(i.value||i.defaultValue);void 0!==i.value&&e.isValid()&&j(e)}),d(g,r({trigger:"none",placement:"left",get open(){return y()},onOpenChange:M,get css(){return i.css},popupCss:b,get content(){return d(C,{get type(){return i.type},get current(){return _()},get open(){return y()},onChange:I,openChange:M,get showHour(){return i.showHour},get showMinute(){return i.showMinute},get showSecond(){return i.showSecond},get showTime(){return i.showTime},get showToday(){return i.showToday},get showHeader(){return i.showHeader}})}},w,{get children(){let e=p(),n=o;return l(e,"change",D),l(e,"blur",x),l(e,"focus",T),l(e,"mousedown",O,!0),"function"==typeof n?t(n,e):o=e,e._$owner=a(),s(o=>{let t=w.disabled,n=i.suffixIcon,r=i.prefixIcon,a=i.placeholder;return t!==o._v$&&(e.disabled=o._v$=t),n!==o._v$2&&(e.suffixIcon=o._v$2=n),r!==o._v$3&&(e.prefixIcon=o._v$3=r),a!==o._v$4&&(e.placeholder=o._v$4=a),o},{_v$:void 0,_v$2:void 0,_v$3:void 0,_v$4:void 0}),s(()=>e.value=_().format(H())),e}}))}export var PickerType;(e=PickerType||(PickerType={})).date="date",e.month="month",e.year="year",w("n-data-picker",o({},y,{value:void 0,defaultValue:void 0,disabled:void 0,onChange:void 0,open:void 0,onOpenChange:void 0,type:void 0,format:void 0,parser:void 0,showTime:void 0,suffixIcon:"📅",prefixIcon:void 0,placeholder:void 0,showHour:!0,showMinute:!0,showSecond:!0,showToday:!0,showHeader:!0}),(e,o)=>{let t=o.element,n=c({css:t.css,onChange(e,o){t.dispatchEvent(new CustomEvent("change",{detail:[e,o]}))},onOpenChange(e){t.dispatchEvent(new CustomEvent("openchange",{detail:e}))}},e);return u(()=>{t.removeAttribute("css")}),d($,n)});export default $;i(["mousedown"]);
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/date-picker/index.tsx"],"sourcesContent":["import { createEffect, createMemo, createSignal, mergeProps, splitProps, untrack } from 'solid-js';\nimport { customElement } from 'solid-element';\nimport dayjs from './dayjs';\nimport Panel from './panel';\nimport { styles } from './style';\nimport '../button';\nimport '../menu';\nimport Popover, { defaultProps } from '../popover';\nimport type { CustomElement, InputElement, PopoverProps } from '..';\n\nfunction DatePicker(_props: DatePickerProps) {\n let ref: InputElement | undefined;\n const props = mergeProps(\n {\n type: 'date' as DatePickerProps['type'],\n parser: 'YYYY-MM-DD HH:mm:ss',\n },\n _props,\n );\n const [local, other] = splitProps(props, [\n 'class',\n 'css',\n 'value',\n 'defaultValue',\n 'onChange',\n 'type',\n 'content',\n 'onOpenChange',\n 'open',\n 'format',\n 'popupCss',\n 'trigger',\n 'parser',\n 'showTime',\n 'showHour',\n 'showMinute',\n 'showSecond',\n 'prefixIcon',\n 'suffixIcon',\n 'placeholder',\n 'showToday',\n 'showHeader',\n ]);\n const [open, setOpen] = createSignal<boolean | null>(null);\n const [current, setCurrent] = createSignal(dayjs(local.defaultValue));\n\n const format = createMemo(() => {\n if (local.format) {\n return local.format;\n }\n if (local.showTime) return 'YYYY-MM-DD HH:mm:ss';\n return {\n month: 'YYYY-MM',\n date: 'YYYY-MM-DD',\n year: 'YYYY',\n }[local.type || 'date'];\n });\n\n function openChange(next: boolean | null) {\n if (!other.disabled) {\n local.onOpenChange?.(next);\n if (local.open === void 0) {\n setOpen(next);\n }\n }\n }\n\n function focus(e: FocusEvent | MouseEvent) {\n e.stopPropagation();\n e.preventDefault();\n openChange(true);\n }\n function blur() {\n if (untrack(open)) {\n openChange(false);\n }\n }\n function inputMouseDown(e: MouseEvent) {\n if (e.target === (ref?.shadowRoot as ShadowRoot)?.activeElement) {\n openChange(!untrack(open));\n }\n }\n function handleChange(next: dayjs.Dayjs) {\n if (local.value === void 0) {\n setCurrent(next);\n }\n props.onChange?.(next.format(local.parser), next);\n }\n function handleInputChange(e: CustomEvent<string | number | undefined>) {\n if (e.detail) {\n const next = dayjs(e.detail);\n\n if (next.isValid()) {\n handleChange(next);\n }\n }\n }\n\n createEffect(() => {\n if (local.open !== void 0 && local.open !== untrack(open)) {\n setOpen(local.open);\n }\n });\n createEffect(() => {\n const next = dayjs(local.value || local.defaultValue);\n\n if (local.value !== void 0 && next.isValid()) {\n setCurrent(next);\n }\n });\n return (\n <Popover\n trigger=\"none\"\n placement=\"left\"\n open={open()}\n onOpenChange={openChange}\n css={local.css}\n popupCss={styles}\n content={\n <Panel\n type={local.type}\n current={current()}\n open={open()}\n onChange={handleChange}\n openChange={openChange}\n showHour={local.showHour}\n showMinute={local.showMinute}\n showSecond={local.showSecond}\n showTime={local.showTime}\n showToday={local.showToday}\n showHeader={local.showHeader}\n />\n }\n {...other}\n >\n <n-input\n ref={ref}\n onMouseDown={inputMouseDown}\n onFocus={focus}\n onBlur={blur}\n disabled={other.disabled}\n value={current().format(format())}\n suffix-icon={local.suffixIcon}\n prefix-icon={local.prefixIcon}\n placeholder={local.placeholder}\n part=\"value\"\n onChange={handleInputChange}\n />\n </Popover>\n );\n}\n/** API\n * @since 2.1.0\n */\nexport interface DatePickerProps extends Partial<PopoverProps> {\n /** 自定义类名 */\n class?: string;\n /** 自定义类名 */\n css?: string;\n /** 类型\n * @default 'date'\n */\n type?: keyof typeof PickerType;\n /** 值 */\n value?: string | number;\n /** 默认值\n * @default 当前时间\n */\n defaultValue?: string | number;\n /** 禁用 */\n disabled?: boolean;\n /** 格式化回填到输入框的内容\n * @default 'YYYY-MM-DD'\n */\n format?: string;\n /** 格式化获取的值\n * @default 'YYYY-MM-DD HH:mm:ss'\n */\n parser?: string;\n /** 前缀 */\n prefixIcon?: JSX.Element;\n /** 后缀\n * @default '📅'\n */\n suffixIcon?: JSX.Element;\n /** 变更时的回调 */\n onChange?(val: string, time: dayjs.Dayjs): void;\n /** 显示时间选择\n * @default false\n */\n showTime?: boolean;\n /** 显示小时选择\n * @default true\n **/\n showHour?: boolean;\n /** 显示分钟选择\n * @default true\n **/\n showMinute?: boolean;\n /** 显示秒选择\n * @default true\n **/\n showSecond?: boolean;\n /** 占位文本 */\n placeholder?: string;\n /** 显示今日按钮\n * @default true\n */\n showToday?: boolean;\n /** 显示顶部\n * @default true\n */\n showHeader?: boolean;\n}\n\nenum PickerType {\n /** 日期选择 */\n date = 'date',\n /** 月份选择 */\n month = 'month',\n /** 年份选择 */\n year = 'year',\n}\n\nexport type DatePickerElement = CustomElement<DatePickerProps, 'onChange' | 'onOpenChange'>;\n\ncustomElement<DatePickerProps>(\n 'n-data-picker',\n {\n ...defaultProps,\n value: void 0,\n defaultValue: void 0,\n disabled: void 0,\n onChange: void 0,\n open: void 0,\n onOpenChange: void 0,\n type: void 0,\n format: void 0,\n parser: void 0,\n showTime: void 0,\n suffixIcon: '📅',\n prefixIcon: void 0,\n placeholder: void 0,\n showHour: true,\n showMinute: true,\n showSecond: true,\n showToday: true,\n showHeader: true,\n },\n (_, opt) => {\n const el = opt.element;\n const props = mergeProps(\n {\n css: el.css,\n onChange(val: string, time: dayjs.Dayjs) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: [val, time],\n }),\n );\n },\n onOpenChange(open: boolean | null) {\n el.dispatchEvent(\n new CustomEvent('openchange', {\n detail: open,\n }),\n );\n },\n },\n _,\n );\n\n createEffect(() => {\n el.removeAttribute('css');\n });\n return <DatePicker {...props} />;\n },\n);\nexport default DatePicker;\n"],"names":["PickerType","createEffect","createMemo","createSignal","mergeProps","splitProps","untrack","customElement","dayjs","Panel","styles","Popover","defaultProps","DatePicker","_props","ref","props","type","parser","local","other","open","setOpen","current","setCurrent","defaultValue","format","showTime","month","date","year","openChange","next","disabled","onOpenChange","focus","e","stopPropagation","preventDefault","blur","inputMouseDown","target","shadowRoot","activeElement","handleChange","value","onChange","handleInputChange","detail","isValid","css","showHour","showMinute","showSecond","showToday","showHeader","suffixIcon","prefixIcon","placeholder","_","opt","el","element","val","time","dispatchEvent","CustomEvent","removeAttribute"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../components/date-picker/index.tsx"],"sourcesContent":["import { createEffect, createMemo, createSignal, mergeProps, splitProps, untrack } from 'solid-js';\nimport { customElement } from 'solid-element';\n\nimport type { CustomElement, InputElement, PopoverProps } from '..';\nimport Popover, { defaultProps } from '../popover';\n\nimport dayjs from './dayjs';\nimport Panel from './panel';\nimport { styles } from './style';\n\nimport '../button';\nimport '../menu';\n\nfunction DatePicker(_props: DatePickerProps) {\n let ref: InputElement | undefined;\n const props = mergeProps(\n {\n type: 'date' as DatePickerProps['type'],\n parser: 'YYYY-MM-DD HH:mm:ss',\n },\n _props,\n );\n const [local, other] = splitProps(props, [\n 'class',\n 'css',\n 'value',\n 'defaultValue',\n 'onChange',\n 'type',\n 'content',\n 'onOpenChange',\n 'open',\n 'format',\n 'popupCss',\n 'trigger',\n 'parser',\n 'showTime',\n 'showHour',\n 'showMinute',\n 'showSecond',\n 'prefixIcon',\n 'suffixIcon',\n 'placeholder',\n 'showToday',\n 'showHeader',\n ]);\n const [open, setOpen] = createSignal<boolean | null>(null);\n const [current, setCurrent] = createSignal(dayjs(local.defaultValue));\n\n const format = createMemo(() => {\n if (local.format) {\n return local.format;\n }\n if (local.showTime) return 'YYYY-MM-DD HH:mm:ss';\n return {\n month: 'YYYY-MM',\n date: 'YYYY-MM-DD',\n year: 'YYYY',\n }[local.type || 'date'];\n });\n\n function openChange(next: boolean | null) {\n if (!other.disabled) {\n local.onOpenChange?.(next);\n if (local.open === void 0) {\n setOpen(next);\n }\n }\n }\n\n function focus(e: FocusEvent | MouseEvent) {\n e.stopPropagation();\n e.preventDefault();\n openChange(true);\n }\n function blur() {\n if (untrack(open)) {\n openChange(false);\n }\n }\n function inputMouseDown(e: MouseEvent) {\n if (e.target === (ref?.shadowRoot as ShadowRoot | null)?.activeElement) {\n openChange(!untrack(open));\n }\n }\n function handleChange(next: dayjs.Dayjs) {\n if (local.value === void 0) {\n setCurrent(next);\n }\n props.onChange?.(next.format(local.parser), next);\n }\n function handleInputChange(e: CustomEvent<string | number | undefined>) {\n if (e.detail) {\n const next = dayjs(e.detail);\n\n if (next.isValid()) {\n handleChange(next);\n }\n }\n }\n\n createEffect(() => {\n if (local.open !== void 0 && local.open !== untrack(open)) {\n setOpen(local.open);\n }\n });\n createEffect(() => {\n const next = dayjs(local.value || local.defaultValue);\n\n if (local.value !== void 0 && next.isValid()) {\n setCurrent(next);\n }\n });\n return (\n <Popover\n trigger=\"none\"\n placement=\"left\"\n open={open()}\n onOpenChange={openChange}\n css={local.css}\n popupCss={styles}\n content={\n <Panel\n type={local.type}\n current={current()}\n open={open()}\n onChange={handleChange}\n openChange={openChange}\n showHour={local.showHour}\n showMinute={local.showMinute}\n showSecond={local.showSecond}\n showTime={local.showTime}\n showToday={local.showToday}\n showHeader={local.showHeader}\n />\n }\n {...other}\n >\n <n-input\n ref={ref}\n onMouseDown={inputMouseDown}\n onFocus={focus}\n onBlur={blur}\n disabled={other.disabled}\n value={current().format(format())}\n suffix-icon={local.suffixIcon}\n prefix-icon={local.prefixIcon}\n placeholder={local.placeholder}\n part=\"value\"\n onChange={handleInputChange}\n />\n </Popover>\n );\n}\n/** API\n * @since 2.1.0\n */\nexport interface DatePickerProps extends Partial<PopoverProps> {\n /** 自定义类名 */\n class?: string;\n /** 自定义类名 */\n css?: string;\n /** 类型\n * @default 'date'\n */\n type?: keyof typeof PickerType;\n /** 值 */\n value?: string | number;\n /** 默认值\n * @default 当前时间\n */\n defaultValue?: string | number;\n /** 禁用 */\n disabled?: boolean;\n /** 格式化回填到输入框的内容\n * @default 'YYYY-MM-DD'\n */\n format?: string;\n /** 格式化获取的值\n * @default 'YYYY-MM-DD HH:mm:ss'\n */\n parser?: string;\n /** 前缀 */\n prefixIcon?: JSX.Element;\n /** 后缀\n * @default '📅'\n */\n suffixIcon?: JSX.Element;\n /** 变更时的回调 */\n onChange?(val: string, time: dayjs.Dayjs): void;\n /** 显示时间选择\n * @default false\n */\n showTime?: boolean;\n /** 显示小时选择\n * @default true\n **/\n showHour?: boolean;\n /** 显示分钟选择\n * @default true\n **/\n showMinute?: boolean;\n /** 显示秒选择\n * @default true\n **/\n showSecond?: boolean;\n /** 占位文本 */\n placeholder?: string;\n /** 显示今日按钮\n * @default true\n */\n showToday?: boolean;\n /** 显示顶部\n * @default true\n */\n showHeader?: boolean;\n}\n\nexport enum PickerType {\n /** 日期选择 */\n date = 'date',\n /** 月份选择 */\n month = 'month',\n /** 年份选择 */\n year = 'year',\n}\n\nexport type DatePickerElement = CustomElement<DatePickerProps, 'onChange' | 'onOpenChange'>;\n\ncustomElement<DatePickerProps>(\n 'n-data-picker',\n {\n ...defaultProps,\n value: void 0,\n defaultValue: void 0,\n disabled: void 0,\n onChange: void 0,\n open: void 0,\n onOpenChange: void 0,\n type: void 0,\n format: void 0,\n parser: void 0,\n showTime: void 0,\n suffixIcon: '📅',\n prefixIcon: void 0,\n placeholder: void 0,\n showHour: true,\n showMinute: true,\n showSecond: true,\n showToday: true,\n showHeader: true,\n },\n (_, opt) => {\n const el = opt.element;\n const props = mergeProps(\n {\n css: el.css,\n onChange(val: string, time: dayjs.Dayjs) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: [val, time],\n }),\n );\n },\n onOpenChange(open: boolean | null) {\n el.dispatchEvent(\n new CustomEvent('openchange', {\n detail: open,\n }),\n );\n },\n },\n _,\n );\n\n createEffect(() => {\n el.removeAttribute('css');\n });\n return <DatePicker {...props} />;\n },\n);\nexport default DatePicker;\n"],"names":["PickerType","createEffect","createMemo","createSignal","mergeProps","splitProps","untrack","customElement","Popover","defaultProps","dayjs","Panel","styles","DatePicker","_props","ref","props","type","parser","local","other","open","setOpen","current","setCurrent","defaultValue","format","showTime","month","date","year","openChange","next","disabled","onOpenChange","focus","e","stopPropagation","preventDefault","blur","inputMouseDown","target","shadowRoot","activeElement","handleChange","value","onChange","handleInputChange","detail","isValid","css","showHour","showMinute","showSecond","showToday","showHeader","suffixIcon","prefixIcon","placeholder","_","opt","el","element","val","time","dispatchEvent","CustomEvent","removeAttribute"],"mappings":"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"}
|
package/es/date-picker/month.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{template as t}from"solid-js/web";import{insert as e}from"solid-js/web";import{getOwner as o}from"solid-js/web";import{effect as r}from"solid-js/web";import{delegateEvents as s}from"solid-js/web";import{createComponent as n}from"solid-js/web";import{addEventListener as i}from"solid-js/web";let m=t('<n-button type="primary" class="date-picker-month">',!0,!1);import{
|
|
1
|
+
import{template as t}from"solid-js/web";import{insert as e}from"solid-js/web";import{getOwner as o}from"solid-js/web";import{effect as r}from"solid-js/web";import{delegateEvents as s}from"solid-js/web";import{createComponent as n}from"solid-js/web";import{addEventListener as i}from"solid-js/web";let m=t('<n-button type="primary" class="date-picker-month">',!0,!1);import{createMemo as a,For as l}from"solid-js";import d from"./dayjs";export const months=d.monthsShort();export default function(t){return n(l,{each:months,children:(s,n)=>{let l=a(()=>t.current.get("month")===n());function d(){t.onChange(t.current.set("month",n()))}return(()=>{let t=m();return i(t,"click",d,!0),t.flat=!0,t._$owner=o(),e(t,s),r(e=>{let o=!!l(),r=l()?"strong":"button";return o!==e._v$&&t.classList.toggle("date-active",e._v$=o),r!==e._v$2&&(t.tag=e._v$2=r),e},{_v$:void 0,_v$2:void 0}),t})()}})}s(["click"]);
|
|
2
2
|
//# sourceMappingURL=month.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../components/date-picker/month.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"sources":["../../components/date-picker/month.tsx"],"sourcesContent":["import { createMemo, For } from 'solid-js';\n\nimport dayjs from './dayjs';\n\ninterface MonthPanelProps {\n current: dayjs.Dayjs;\n onChange(next: dayjs.Dayjs): void;\n}\n\nexport const months = dayjs.monthsShort();\n\nfunction MonthPanel(props: MonthPanelProps) {\n return (\n <For each={months}>\n {(m, i) => {\n const isActive = createMemo(() => {\n return props.current.get('month') === i();\n });\n\n function onChange() {\n props.onChange(props.current.set('month', i()));\n }\n\n return (\n <n-button\n type=\"primary\"\n flat={true}\n class=\"date-picker-month\"\n classList={{\n 'date-active': isActive(),\n }}\n tag={isActive() ? 'strong' : 'button'}\n onClick={onChange}\n >\n {m}\n </n-button>\n );\n }}\n </For>\n );\n}\n\nexport default MonthPanel;\n"],"names":["createMemo","For","dayjs","months","monthsShort","props","m","i","isActive","current","get","onChange","set"],"mappings":"6WAAA,QAASA,cAAAA,CAAU,CAAEC,OAAAA,CAAG,KAAQ,UAAW,AAE3C,QAAOC,MAAW,SAAU,AAO5B,QAAO,MAAMC,OAASD,EAAME,WAAW,EAAG,AAiC1C,gBA/BA,SAAoBC,CAAsB,EACxC,SACGJ,QAAUE,gBACR,CAACG,EAAGC,KACH,IAAMC,EAAWR,EAAW,IACnBK,EAAMI,OAAO,CAACC,GAAG,CAAC,WAAaH,KAGxC,SAASI,IACPN,EAAMM,QAAQ,CAACN,EAAMI,OAAO,CAACG,GAAG,CAAC,QAASL,KAC5C,CAEA,yCASaI,aANH,CAAA,oBAQLL,iBALgBE,MAEZA,IAAa,SAAW,oIAMnC,GAGN"}
|
package/es/date-picker/panel.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{use as e}from"solid-js/web";import{template as t}from"solid-js/web";import"solid-js/web";import{insert as r}from"solid-js/web";import{getOwner as n}from"solid-js/web";import{effect as o}from"solid-js/web";import{delegateEvents as i}from"solid-js/web";import{createComponent as s}from"solid-js/web";import{addEventListener as a}from"solid-js/web";let l=t(`<n-button class="prev-month" type="primary">〈`,!0,!1),c=t("<n-button><strong>",!0,!1),u=t(`<n-button class="next-month" type="primary">〉`,!0,!1),h=t(`<section class="date-picker-header"><span class="date-prev"><n-button class="prev-year" type="primary">《</n-button></span><span class="date-value"><n-button><strong></strong></n-button></span><span class="date-next"><n-button class="next-year" type="primary">》`,!0,!1),d=t('<section class="date-picker-weeks">'),g=t(`<section class="date-picker-footer"><n-button type="primary">今日`,!0,!1),p=t('<div class="date-time-picker"><div class="date-picker"><section class="date-picker-items">'),m=t("<span>");import{
|
|
1
|
+
import{use as e}from"solid-js/web";import{template as t}from"solid-js/web";import"solid-js/web";import{insert as r}from"solid-js/web";import{getOwner as n}from"solid-js/web";import{effect as o}from"solid-js/web";import{delegateEvents as i}from"solid-js/web";import{createComponent as s}from"solid-js/web";import{addEventListener as a}from"solid-js/web";let l=t(`<n-button class="prev-month" type="primary">〈`,!0,!1),c=t("<n-button><strong>",!0,!1),u=t(`<n-button class="next-month" type="primary">〉`,!0,!1),h=t(`<section class="date-picker-header"><span class="date-prev"><n-button class="prev-year" type="primary">《</n-button></span><span class="date-value"><n-button><strong></strong></n-button></span><span class="date-next"><n-button class="next-year" type="primary">》`,!0,!1),d=t('<section class="date-picker-weeks">'),g=t(`<section class="date-picker-footer"><n-button type="primary">今日`,!0,!1),p=t('<div class="date-time-picker"><div class="date-picker"><section class="date-picker-items">'),m=t("<span>");import{createEffect as f,createMemo as w,createSignal as y,For as b,Match as $,Show as C,Switch as k}from"solid-js";import v from"./date";import _ from"./dayjs";import j from"./month";import x from"./time";import S from"./year";export default function(t){let i;let[H,L]=y(0),[M,E]=y("date"),P=_.weekdaysMin(),T=w(()=>"date"===M()),D=w(()=>10*parseInt(`${t.current.get("years")/10+H()}`));function I(e){t.open&&(e.stopPropagation(),e.preventDefault())}function O(){"year"===M()?L(e=>e-1):t.onChange(t.current.subtract(1,"year"))}function q(){"year"===M()?L(e=>e+1):t.onChange(t.current.subtract(-1,"year"))}function z(){t.onChange(t.current.subtract(1,"month"))}function A(){t.onChange(t.current.subtract(-1,"month"))}function B(e){t.onChange(e),M()===t.type?t.openChange(!1):E(t.type)}return f(()=>{"year"!==M()&&L(e=>e?0:e)}),f(()=>{t.type&&E(t.type)}),(()=>{let f=p(),w=f.firstChild,y=i,H=w.firstChild;return a(w,"mousedown",I,!0),"function"==typeof y?e(y,w):i=w,r(w,s(C,{get when(){return t.showHeader},get children(){let e=h(),i=e.firstChild,d=i.firstChild,g=i.nextSibling,p=g.firstChild,m=p.firstChild,f=g.nextSibling,w=f.firstChild;return a(d,"click",O,!0),d.circle=!0,d.flat=!0,d._$owner=n(),r(i,s(C,{get when(){return T()},get children(){let e=l();return a(e,"click",z,!0),e.circle=!0,e.flat=!0,e._$owner=n(),e}}),null),p.$$click=()=>E("year"),p.ghost=!0,p.flat=!0,p._$owner=n(),r(m,s(C,{get when(){return"year"===M()},get fallback(){return`${t.current.get("years")}年`},get children(){return`${D()}-${D()+9}年`}})),r(g,s(C,{get when(){return T()},get children(){let e=c(),o=e.firstChild;return e.$$click=()=>E("month"),e.ghost=!0,e.flat=!0,e._$owner=n(),r(o,()=>`${t.current.get("months")+1}月`),e}}),null),r(f,s(C,{get when(){return T()},get children(){let e=u();return a(e,"click",A,!0),e.circle=!0,e.flat=!0,e._$owner=n(),e}}),w),a(w,"click",q,!0),w.circle=!0,w.flat=!0,w._$owner=n(),o(e=>{let t=!T(),r=!T();return t!==e._v$&&i.classList.toggle("not-date",e._v$=t),r!==e._v$2&&f.classList.toggle("not-date",e._v$2=r),e},{_v$:void 0,_v$2:void 0}),e}}),H),r(w,s(C,{get when(){return T()},get children(){let e=d();return r(e,s(b,{each:P,children:e=>(()=>{let t=m();return r(t,e),t})()})),e}}),H),r(H,s(k,{get children(){return[s($,{get when(){return T()},get children(){return s(v,{get current(){return t.current},onChange:B})}}),s($,{get when(){return"month"===M()},get children(){return s(j,{get current(){return t.current},onChange:B})}}),s($,{get when(){return"year"===M()},get children(){return s(S,{get current(){return t.current},onChange:B,get start(){return D()}})}})]}})),r(w,s(C,{get when(){return T()&&t.showToday},get children(){let e=g(),r=e.firstChild;return r.$$click=()=>{t.onChange(_())},r.block=!0,r.link=!0,r._$owner=n(),e}}),null),r(f,s(C,{get when(){return T()&&t.showTime},get children(){return s(x,{get current(){return t.current},get onChange(){return t.onChange},get showHour(){return t.showHour},get showMinute(){return t.showMinute},get showSecond(){return t.showSecond},datePicker:i})}}),null),f})()}i(["click","mousedown"]);
|
|
2
2
|
//# sourceMappingURL=panel.js.map
|