duoyun-ui 0.0.2
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/LICENSE +21 -0
- package/README.md +12 -0
- package/docs/.gitignore +4 -0
- package/docs/104.bundle.js +19 -0
- package/docs/283.bundle.js +47 -0
- package/docs/354.bundle.js +1133 -0
- package/docs/354.bundle.js.LICENSE.txt +13 -0
- package/docs/587.bundle.js +26 -0
- package/docs/810.bundle.js +1 -0
- package/docs/gem-book.json +84 -0
- package/docs/index.html +1 -0
- package/docs/main.bundle.js +1 -0
- package/docs/robots.txt +2 -0
- package/docs/service-worker.js +1 -0
- package/docs/workbox-62d1f9d5.js +1 -0
- package/elements/action-text.d.ts +12 -0
- package/elements/action-text.d.ts.map +1 -0
- package/elements/action-text.js +63 -0
- package/elements/action-text.js.map +1 -0
- package/elements/area-chart.d.ts +35 -0
- package/elements/area-chart.d.ts.map +1 -0
- package/elements/area-chart.js +408 -0
- package/elements/area-chart.js.map +1 -0
- package/elements/avatar.d.ts +42 -0
- package/elements/avatar.d.ts.map +1 -0
- package/elements/avatar.js +190 -0
- package/elements/avatar.js.map +1 -0
- package/elements/banner.d.ts +21 -0
- package/elements/banner.d.ts.map +1 -0
- package/elements/banner.js +136 -0
- package/elements/banner.js.map +1 -0
- package/elements/bar-chart.d.ts +23 -0
- package/elements/bar-chart.d.ts.map +1 -0
- package/elements/bar-chart.js +170 -0
- package/elements/bar-chart.js.map +1 -0
- package/elements/base/chart.d.ts +74 -0
- package/elements/base/chart.d.ts.map +1 -0
- package/elements/base/chart.js +299 -0
- package/elements/base/chart.js.map +1 -0
- package/elements/base/loadable.d.ts +16 -0
- package/elements/base/loadable.d.ts.map +1 -0
- package/elements/base/loadable.js +77 -0
- package/elements/base/loadable.js.map +1 -0
- package/elements/base/resize.d.ts +15 -0
- package/elements/base/resize.d.ts.map +1 -0
- package/elements/base/resize.js +31 -0
- package/elements/base/resize.js.map +1 -0
- package/elements/base/scroll.d.ts +11 -0
- package/elements/base/scroll.d.ts.map +1 -0
- package/elements/base/scroll.js +90 -0
- package/elements/base/scroll.js.map +1 -0
- package/elements/base/visible.d.ts +12 -0
- package/elements/base/visible.d.ts.map +1 -0
- package/elements/base/visible.js +37 -0
- package/elements/base/visible.js.map +1 -0
- package/elements/breadcrumbs.d.ts +20 -0
- package/elements/breadcrumbs.d.ts.map +1 -0
- package/elements/breadcrumbs.js +88 -0
- package/elements/breadcrumbs.js.map +1 -0
- package/elements/button.d.ts +30 -0
- package/elements/button.d.ts.map +1 -0
- package/elements/button.js +225 -0
- package/elements/button.js.map +1 -0
- package/elements/card.d.ts +26 -0
- package/elements/card.d.ts.map +1 -0
- package/elements/card.js +163 -0
- package/elements/card.js.map +1 -0
- package/elements/cascader-pick.d.ts +22 -0
- package/elements/cascader-pick.d.ts.map +1 -0
- package/elements/cascader-pick.js +172 -0
- package/elements/cascader-pick.js.map +1 -0
- package/elements/cascader.d.ts +29 -0
- package/elements/cascader.d.ts.map +1 -0
- package/elements/cascader.js +247 -0
- package/elements/cascader.js.map +1 -0
- package/elements/chart-tooltip.d.ts +29 -0
- package/elements/chart-tooltip.d.ts.map +1 -0
- package/elements/chart-tooltip.js +150 -0
- package/elements/chart-tooltip.js.map +1 -0
- package/elements/chart-zoom.d.ts +20 -0
- package/elements/chart-zoom.d.ts.map +1 -0
- package/elements/chart-zoom.js +207 -0
- package/elements/chart-zoom.js.map +1 -0
- package/elements/checkbox.d.ts +20 -0
- package/elements/checkbox.d.ts.map +1 -0
- package/elements/checkbox.js +108 -0
- package/elements/checkbox.js.map +1 -0
- package/elements/coach-mark.d.ts +39 -0
- package/elements/coach-mark.d.ts.map +1 -0
- package/elements/coach-mark.js +212 -0
- package/elements/coach-mark.js.map +1 -0
- package/elements/code-block.d.ts +14 -0
- package/elements/code-block.d.ts.map +1 -0
- package/elements/code-block.js +427 -0
- package/elements/code-block.js.map +1 -0
- package/elements/collapse.d.ts +22 -0
- package/elements/collapse.d.ts.map +1 -0
- package/elements/collapse.js +111 -0
- package/elements/collapse.js.map +1 -0
- package/elements/color-panel.d.ts +30 -0
- package/elements/color-panel.d.ts.map +1 -0
- package/elements/color-panel.js +383 -0
- package/elements/color-panel.js.map +1 -0
- package/elements/color-pick.d.ts +14 -0
- package/elements/color-pick.d.ts.map +1 -0
- package/elements/color-pick.js +81 -0
- package/elements/color-pick.js.map +1 -0
- package/elements/compartment.d.ts +9 -0
- package/elements/compartment.d.ts.map +1 -0
- package/elements/compartment.js +32 -0
- package/elements/compartment.js.map +1 -0
- package/elements/copy.d.ts +20 -0
- package/elements/copy.d.ts.map +1 -0
- package/elements/copy.js +160 -0
- package/elements/copy.js.map +1 -0
- package/elements/date-panel.d.ts +29 -0
- package/elements/date-panel.d.ts.map +1 -0
- package/elements/date-panel.js +220 -0
- package/elements/date-panel.js.map +1 -0
- package/elements/date-pick.d.ts +23 -0
- package/elements/date-pick.d.ts.map +1 -0
- package/elements/date-pick.js +107 -0
- package/elements/date-pick.js.map +1 -0
- package/elements/date-range-panel.d.ts +28 -0
- package/elements/date-range-panel.d.ts.map +1 -0
- package/elements/date-range-panel.js +154 -0
- package/elements/date-range-panel.js.map +1 -0
- package/elements/date-range-pick.d.ts +26 -0
- package/elements/date-range-pick.d.ts.map +1 -0
- package/elements/date-range-pick.js +159 -0
- package/elements/date-range-pick.js.map +1 -0
- package/elements/divider.d.ts +15 -0
- package/elements/divider.d.ts.map +1 -0
- package/elements/divider.js +95 -0
- package/elements/divider.js.map +1 -0
- package/elements/donut-chart.d.ts +19 -0
- package/elements/donut-chart.d.ts.map +1 -0
- package/elements/donut-chart.js +140 -0
- package/elements/donut-chart.js.map +1 -0
- package/elements/drawer.d.ts +9 -0
- package/elements/drawer.d.ts.map +1 -0
- package/elements/drawer.js +45 -0
- package/elements/drawer.js.map +1 -0
- package/elements/drop-area.d.ts +18 -0
- package/elements/drop-area.d.ts.map +1 -0
- package/elements/drop-area.js +155 -0
- package/elements/drop-area.js.map +1 -0
- package/elements/empty.d.ts +8 -0
- package/elements/empty.d.ts.map +1 -0
- package/elements/empty.js +33 -0
- package/elements/empty.js.map +1 -0
- package/elements/file-pick.d.ts +28 -0
- package/elements/file-pick.d.ts.map +1 -0
- package/elements/file-pick.js +226 -0
- package/elements/file-pick.js.map +1 -0
- package/elements/form.d.ts +76 -0
- package/elements/form.d.ts.map +1 -0
- package/elements/form.js +372 -0
- package/elements/form.js.map +1 -0
- package/elements/heading.d.ts +13 -0
- package/elements/heading.d.ts.map +1 -0
- package/elements/heading.js +88 -0
- package/elements/heading.js.map +1 -0
- package/elements/help-text.d.ts +11 -0
- package/elements/help-text.d.ts.map +1 -0
- package/elements/help-text.js +53 -0
- package/elements/help-text.js.map +1 -0
- package/elements/icons.d.ts +10 -0
- package/elements/icons.d.ts.map +1 -0
- package/elements/icons.js +71 -0
- package/elements/icons.js.map +1 -0
- package/elements/image-preview.d.ts +26 -0
- package/elements/image-preview.d.ts.map +1 -0
- package/elements/image-preview.js +172 -0
- package/elements/image-preview.js.map +1 -0
- package/elements/input-capture.d.ts +17 -0
- package/elements/input-capture.d.ts.map +1 -0
- package/elements/input-capture.js +111 -0
- package/elements/input-capture.js.map +1 -0
- package/elements/input.d.ts +51 -0
- package/elements/input.d.ts.map +1 -0
- package/elements/input.js +372 -0
- package/elements/input.js.map +1 -0
- package/elements/keyboard-access.d.ts +26 -0
- package/elements/keyboard-access.d.ts.map +1 -0
- package/elements/keyboard-access.js +217 -0
- package/elements/keyboard-access.js.map +1 -0
- package/elements/legend.d.ts +21 -0
- package/elements/legend.d.ts.map +1 -0
- package/elements/legend.js +118 -0
- package/elements/legend.js.map +1 -0
- package/elements/line-chart.d.ts +9 -0
- package/elements/line-chart.d.ts.map +1 -0
- package/elements/line-chart.js +116 -0
- package/elements/line-chart.js.map +1 -0
- package/elements/link.d.ts +14 -0
- package/elements/link.d.ts.map +1 -0
- package/elements/link.js +46 -0
- package/elements/link.js.map +1 -0
- package/elements/list.d.ts +30 -0
- package/elements/list.d.ts.map +1 -0
- package/elements/list.js +114 -0
- package/elements/list.js.map +1 -0
- package/elements/loading.d.ts +9 -0
- package/elements/loading.d.ts.map +1 -0
- package/elements/loading.js +44 -0
- package/elements/loading.js.map +1 -0
- package/elements/map.d.ts +68 -0
- package/elements/map.d.ts.map +1 -0
- package/elements/map.js +323 -0
- package/elements/map.js.map +1 -0
- package/elements/menu.d.ts +58 -0
- package/elements/menu.d.ts.map +1 -0
- package/elements/menu.js +256 -0
- package/elements/menu.js.map +1 -0
- package/elements/meter.d.ts +20 -0
- package/elements/meter.d.ts.map +1 -0
- package/elements/meter.js +130 -0
- package/elements/meter.js.map +1 -0
- package/elements/modal.d.ts +46 -0
- package/elements/modal.d.ts.map +1 -0
- package/elements/modal.js +296 -0
- package/elements/modal.js.map +1 -0
- package/elements/more.d.ts +28 -0
- package/elements/more.d.ts.map +1 -0
- package/elements/more.js +118 -0
- package/elements/more.js.map +1 -0
- package/elements/options.d.ts +34 -0
- package/elements/options.d.ts.map +1 -0
- package/elements/options.js +174 -0
- package/elements/options.js.map +1 -0
- package/elements/page-loadbar.d.ts +20 -0
- package/elements/page-loadbar.d.ts.map +1 -0
- package/elements/page-loadbar.js +85 -0
- package/elements/page-loadbar.js.map +1 -0
- package/elements/pagination.d.ts +23 -0
- package/elements/pagination.d.ts.map +1 -0
- package/elements/pagination.js +221 -0
- package/elements/pagination.js.map +1 -0
- package/elements/paragraph.d.ts +8 -0
- package/elements/paragraph.d.ts.map +1 -0
- package/elements/paragraph.js +60 -0
- package/elements/paragraph.js.map +1 -0
- package/elements/pick.d.ts +34 -0
- package/elements/pick.d.ts.map +1 -0
- package/elements/pick.js +168 -0
- package/elements/pick.js.map +1 -0
- package/elements/placeholder.d.ts +23 -0
- package/elements/placeholder.d.ts.map +1 -0
- package/elements/placeholder.js +93 -0
- package/elements/placeholder.js.map +1 -0
- package/elements/popover.d.ts +54 -0
- package/elements/popover.d.ts.map +1 -0
- package/elements/popover.js +316 -0
- package/elements/popover.js.map +1 -0
- package/elements/progress.d.ts +12 -0
- package/elements/progress.d.ts.map +1 -0
- package/elements/progress.js +45 -0
- package/elements/progress.js.map +1 -0
- package/elements/radio.d.ts +34 -0
- package/elements/radio.d.ts.map +1 -0
- package/elements/radio.js +152 -0
- package/elements/radio.js.map +1 -0
- package/elements/rating.d.ts +15 -0
- package/elements/rating.d.ts.map +1 -0
- package/elements/rating.js +122 -0
- package/elements/rating.js.map +1 -0
- package/elements/scatter-chart.d.ts +13 -0
- package/elements/scatter-chart.d.ts.map +1 -0
- package/elements/scatter-chart.js +151 -0
- package/elements/scatter-chart.js.map +1 -0
- package/elements/select.d.ts +63 -0
- package/elements/select.d.ts.map +1 -0
- package/elements/select.js +416 -0
- package/elements/select.js.map +1 -0
- package/elements/shortcut-record.d.ts +19 -0
- package/elements/shortcut-record.d.ts.map +1 -0
- package/elements/shortcut-record.js +127 -0
- package/elements/shortcut-record.js.map +1 -0
- package/elements/side-navigation.d.ts +31 -0
- package/elements/side-navigation.d.ts.map +1 -0
- package/elements/side-navigation.js +137 -0
- package/elements/side-navigation.js.map +1 -0
- package/elements/slider.d.ts +27 -0
- package/elements/slider.d.ts.map +1 -0
- package/elements/slider.js +219 -0
- package/elements/slider.js.map +1 -0
- package/elements/space.d.ts +10 -0
- package/elements/space.d.ts.map +1 -0
- package/elements/space.js +35 -0
- package/elements/space.js.map +1 -0
- package/elements/statistic.d.ts +24 -0
- package/elements/statistic.d.ts.map +1 -0
- package/elements/statistic.js +116 -0
- package/elements/statistic.js.map +1 -0
- package/elements/status-light.d.ts +14 -0
- package/elements/status-light.d.ts.map +1 -0
- package/elements/status-light.js +75 -0
- package/elements/status-light.js.map +1 -0
- package/elements/switch.d.ts +18 -0
- package/elements/switch.d.ts.map +1 -0
- package/elements/switch.js +117 -0
- package/elements/switch.js.map +1 -0
- package/elements/table.d.ts +36 -0
- package/elements/table.d.ts.map +1 -0
- package/elements/table.js +268 -0
- package/elements/table.js.map +1 -0
- package/elements/tabs.d.ts +29 -0
- package/elements/tabs.d.ts.map +1 -0
- package/elements/tabs.js +130 -0
- package/elements/tabs.js.map +1 -0
- package/elements/tag.d.ts +20 -0
- package/elements/tag.d.ts.map +1 -0
- package/elements/tag.js +120 -0
- package/elements/tag.js.map +1 -0
- package/elements/timeline.d.ts +19 -0
- package/elements/timeline.d.ts.map +1 -0
- package/elements/timeline.js +92 -0
- package/elements/timeline.js.map +1 -0
- package/elements/toast.d.ts +26 -0
- package/elements/toast.d.ts.map +1 -0
- package/elements/toast.js +149 -0
- package/elements/toast.js.map +1 -0
- package/elements/tooltip.d.ts +12 -0
- package/elements/tooltip.d.ts.map +1 -0
- package/elements/tooltip.js +27 -0
- package/elements/tooltip.js.map +1 -0
- package/elements/tree.d.ts +48 -0
- package/elements/tree.d.ts.map +1 -0
- package/elements/tree.js +231 -0
- package/elements/tree.js.map +1 -0
- package/elements/wait.d.ts +19 -0
- package/elements/wait.d.ts.map +1 -0
- package/elements/wait.js +97 -0
- package/elements/wait.js.map +1 -0
- package/lib/animations.d.ts +4 -0
- package/lib/animations.d.ts.map +1 -0
- package/lib/animations.js +8 -0
- package/lib/animations.js.map +1 -0
- package/lib/cache.d.ts +12 -0
- package/lib/cache.d.ts.map +1 -0
- package/lib/cache.js +56 -0
- package/lib/cache.js.map +1 -0
- package/lib/color.d.ts +37 -0
- package/lib/color.d.ts.map +1 -0
- package/lib/color.js +101 -0
- package/lib/color.js.map +1 -0
- package/lib/hotkeys.d.ts +31 -0
- package/lib/hotkeys.d.ts.map +1 -0
- package/lib/hotkeys.js +207 -0
- package/lib/hotkeys.js.map +1 -0
- package/lib/icons.d.ts +90 -0
- package/lib/icons.d.ts.map +1 -0
- package/lib/icons.js +81 -0
- package/lib/icons.js.map +1 -0
- package/lib/image.d.ts +29 -0
- package/lib/image.d.ts.map +1 -0
- package/lib/image.js +140 -0
- package/lib/image.js.map +1 -0
- package/lib/locale.d.ts +37 -0
- package/lib/locale.d.ts.map +1 -0
- package/lib/locale.js +14 -0
- package/lib/locale.js.map +1 -0
- package/lib/number.d.ts +80 -0
- package/lib/number.d.ts.map +1 -0
- package/lib/number.js +144 -0
- package/lib/number.js.map +1 -0
- package/lib/theme.d.ts +67 -0
- package/lib/theme.d.ts.map +1 -0
- package/lib/theme.js +56 -0
- package/lib/theme.js.map +1 -0
- package/lib/time.d.ts +58 -0
- package/lib/time.d.ts.map +1 -0
- package/lib/time.js +225 -0
- package/lib/time.js.map +1 -0
- package/lib/types.d.ts +8 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +17 -0
- package/lib/types.js.map +1 -0
- package/lib/utils.d.ts +37 -0
- package/lib/utils.d.ts.map +1 -0
- package/lib/utils.js +249 -0
- package/lib/utils.js.map +1 -0
- package/locales/en.d.ts +34 -0
- package/locales/en.d.ts.map +1 -0
- package/locales/en.js +33 -0
- package/locales/en.js.map +1 -0
- package/locales/zh.d.ts +4 -0
- package/locales/zh.d.ts.map +1 -0
- package/locales/zh.js +34 -0
- package/locales/zh.js.map +1 -0
- package/package.json +39 -0
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _DuoyunDateRangePanelElement_submit, _DuoyunDateRangePanelElement_onSelect, _DuoyunDateRangePanelElement_onEnterDate;
|
|
13
|
+
import { GemElement, html, adoptedStyle, createCSSSheet, css, customElement, property, globalemitter, classMap, } from '@mantou/gem';
|
|
14
|
+
import { Time, parseNarrowRelativeTime, parseNarrowTimeRange } from '../lib/time';
|
|
15
|
+
import { locale } from '../lib/locale';
|
|
16
|
+
import { theme } from '../lib/theme';
|
|
17
|
+
import { isNullish } from '../lib/types';
|
|
18
|
+
import './date-panel';
|
|
19
|
+
import './button';
|
|
20
|
+
import './action-text';
|
|
21
|
+
import './divider';
|
|
22
|
+
const style = createCSSSheet(css `
|
|
23
|
+
.panels {
|
|
24
|
+
display: flex;
|
|
25
|
+
align-items: flex-start;
|
|
26
|
+
}
|
|
27
|
+
dy-date-panel {
|
|
28
|
+
width: 100%;
|
|
29
|
+
flex-shrink: 1;
|
|
30
|
+
border: none;
|
|
31
|
+
}
|
|
32
|
+
.separate {
|
|
33
|
+
color: ${theme.lightBackgroundColor};
|
|
34
|
+
margin-inline: 0.5em;
|
|
35
|
+
}
|
|
36
|
+
.footer {
|
|
37
|
+
margin-block-start: 2em;
|
|
38
|
+
display: flex;
|
|
39
|
+
justify-content: space-between;
|
|
40
|
+
}
|
|
41
|
+
.quick {
|
|
42
|
+
display: flex;
|
|
43
|
+
align-items: center;
|
|
44
|
+
gap: 0.5em;
|
|
45
|
+
}
|
|
46
|
+
.quick-item {
|
|
47
|
+
cursor: pointer;
|
|
48
|
+
}
|
|
49
|
+
`);
|
|
50
|
+
/**
|
|
51
|
+
* @customElement dy-date-range-panel
|
|
52
|
+
*/
|
|
53
|
+
let DuoyunDateRangePanelElement = class DuoyunDateRangePanelElement extends GemElement {
|
|
54
|
+
constructor() {
|
|
55
|
+
super();
|
|
56
|
+
this.state = {};
|
|
57
|
+
_DuoyunDateRangePanelElement_submit.set(this, () => {
|
|
58
|
+
const { start = 0, stop = 0 } = this.state;
|
|
59
|
+
this.change([Math.min(start, stop), Math.max(start, stop)]);
|
|
60
|
+
});
|
|
61
|
+
_DuoyunDateRangePanelElement_onSelect.set(this, ({ detail }) => {
|
|
62
|
+
const { start, stop } = this.state;
|
|
63
|
+
if (isNullish(start) || (!isNullish(start) && !isNullish(stop))) {
|
|
64
|
+
this.setState({ start: detail, stop: undefined });
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
this.setState({ stop: detail });
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
_DuoyunDateRangePanelElement_onEnterDate.set(this, ({ detail }) => {
|
|
71
|
+
this.setState({ hover: detail });
|
|
72
|
+
});
|
|
73
|
+
this.willMount = () => {
|
|
74
|
+
this.memo(() => {
|
|
75
|
+
if (Array.isArray(this.value)) {
|
|
76
|
+
return this.setState({ start: this.value[0], stop: this.value[1] });
|
|
77
|
+
}
|
|
78
|
+
if (typeof this.value === 'string') {
|
|
79
|
+
const parsed = parseNarrowRelativeTime(this.value);
|
|
80
|
+
if (parsed) {
|
|
81
|
+
return this.setState({ start: parsed.startOf('d').valueOf(), stop: new Time().valueOf() });
|
|
82
|
+
}
|
|
83
|
+
const range = parseNarrowTimeRange(this.value);
|
|
84
|
+
if (range) {
|
|
85
|
+
return this.setState({ start: range[0].startOf('d').valueOf(), stop: range[1].valueOf() });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}, () => [this.value]);
|
|
89
|
+
};
|
|
90
|
+
this.render = () => {
|
|
91
|
+
var _a;
|
|
92
|
+
const { start, stop, hover } = this.state;
|
|
93
|
+
const highlightStop = stop || hover;
|
|
94
|
+
const highlights = !isNullish(start) && highlightStop ? [[Math.min(start, highlightStop), Math.max(start, highlightStop)]] : [];
|
|
95
|
+
const isSomeMonth = !isNullish(start) && !isNullish(stop) && new Time(start).isSome(stop, 'M');
|
|
96
|
+
return html `
|
|
97
|
+
<div class="panels">
|
|
98
|
+
<dy-date-panel
|
|
99
|
+
@change=${__classPrivateFieldGet(this, _DuoyunDateRangePanelElement_onSelect, "f")}
|
|
100
|
+
@enterdate=${__classPrivateFieldGet(this, _DuoyunDateRangePanelElement_onEnterDate, "f")}
|
|
101
|
+
.value=${start}
|
|
102
|
+
.highlights=${highlights}
|
|
103
|
+
.initDate=${isNullish(start)
|
|
104
|
+
? new Time().subtract(1, 'M')
|
|
105
|
+
: isSomeMonth
|
|
106
|
+
? new Time(start).subtract(1, 'M')
|
|
107
|
+
: undefined}
|
|
108
|
+
></dy-date-panel>
|
|
109
|
+
<dy-divider class="separate" orientation="vertical"></dy-divider>
|
|
110
|
+
<dy-date-panel
|
|
111
|
+
@change=${__classPrivateFieldGet(this, _DuoyunDateRangePanelElement_onSelect, "f")}
|
|
112
|
+
@enterdate=${__classPrivateFieldGet(this, _DuoyunDateRangePanelElement_onEnterDate, "f")}
|
|
113
|
+
.value=${stop}
|
|
114
|
+
.highlights=${highlights}
|
|
115
|
+
.initDate=${isSomeMonth ? new Time(start) : undefined}
|
|
116
|
+
></dy-date-panel>
|
|
117
|
+
</div>
|
|
118
|
+
<div class="footer">
|
|
119
|
+
<div class="quick">
|
|
120
|
+
${(_a = this.quickRanges) === null || _a === void 0 ? void 0 : _a.map(({ label, value }) => html `
|
|
121
|
+
<dy-action-text
|
|
122
|
+
class=${classMap({ 'quick-item': true })}
|
|
123
|
+
.active=${this.value === value}
|
|
124
|
+
@click=${() => this.change(value)}
|
|
125
|
+
>
|
|
126
|
+
${label}
|
|
127
|
+
</dy-action-text>
|
|
128
|
+
`)}
|
|
129
|
+
</div>
|
|
130
|
+
<dy-button ?disabled=${isNullish(start) || isNullish(stop)} @click=${__classPrivateFieldGet(this, _DuoyunDateRangePanelElement_submit, "f")} small>
|
|
131
|
+
${locale.ok}
|
|
132
|
+
</dy-button>
|
|
133
|
+
</div>
|
|
134
|
+
`;
|
|
135
|
+
};
|
|
136
|
+
this.internals.role = 'widget';
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
_DuoyunDateRangePanelElement_submit = new WeakMap(), _DuoyunDateRangePanelElement_onSelect = new WeakMap(), _DuoyunDateRangePanelElement_onEnterDate = new WeakMap();
|
|
140
|
+
__decorate([
|
|
141
|
+
property
|
|
142
|
+
], DuoyunDateRangePanelElement.prototype, "quickRanges", void 0);
|
|
143
|
+
__decorate([
|
|
144
|
+
property
|
|
145
|
+
], DuoyunDateRangePanelElement.prototype, "value", void 0);
|
|
146
|
+
__decorate([
|
|
147
|
+
globalemitter
|
|
148
|
+
], DuoyunDateRangePanelElement.prototype, "change", void 0);
|
|
149
|
+
DuoyunDateRangePanelElement = __decorate([
|
|
150
|
+
customElement('dy-date-range-panel'),
|
|
151
|
+
adoptedStyle(style)
|
|
152
|
+
], DuoyunDateRangePanelElement);
|
|
153
|
+
export { DuoyunDateRangePanelElement };
|
|
154
|
+
//# sourceMappingURL=date-range-panel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-range-panel.js","sourceRoot":"","sources":["../src/elements/date-range-panel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { GemElement, Emitter } from '@mantou/gem';
|
|
2
|
+
import './date-range-panel';
|
|
3
|
+
import './button';
|
|
4
|
+
/**
|
|
5
|
+
* @customElement dy-date-range-pick
|
|
6
|
+
* @fires change
|
|
7
|
+
* @fires clear
|
|
8
|
+
*/
|
|
9
|
+
export declare class DuoyunDateRangePickElement extends GemElement {
|
|
10
|
+
#private;
|
|
11
|
+
placeholder: string;
|
|
12
|
+
clearable: boolean;
|
|
13
|
+
disabled: boolean;
|
|
14
|
+
active: boolean;
|
|
15
|
+
value?: any;
|
|
16
|
+
quickRanges?: {
|
|
17
|
+
label: string;
|
|
18
|
+
value: any;
|
|
19
|
+
}[];
|
|
20
|
+
change: Emitter<any | number[]>;
|
|
21
|
+
clear: Emitter;
|
|
22
|
+
constructor();
|
|
23
|
+
mounted: () => () => false | void;
|
|
24
|
+
render: () => import("@mantou/gem").TemplateResult;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=date-range-pick.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-range-pick.d.ts","sourceRoot":"","sources":["../src/elements/date-range-pick.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAUV,OAAO,EAIR,MAAM,aAAa,CAAC;AASrB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,UAAU,CAAC;AAoDlB;;;;GAIG;AACH,qBAEa,0BAA2B,SAAQ,UAAU;;IAC7C,WAAW,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAE1B,MAAM,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,EAAE,CAAC;IACzC,MAAM,EAAE,OAAO,CAAC,GAAG,GAAG,MAAM,EAAE,CAAC,CAAC;IACtC,KAAK,EAAE,OAAO,CAAC;;IA+CxB,OAAO,2BAEL;IAEF,MAAM,6CAUJ;CACH"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _DuoyunDateRangePickElement_onSubmit, _DuoyunDateRangePickElement_onClear, _DuoyunDateRangePickElement_onOpen, _DuoyunDateRangePickElement_getCurrentLabel;
|
|
13
|
+
import { GemElement, html, adoptedStyle, createCSSSheet, css, customElement, attribute, property, emitter, globalemitter, classMap, boolattribute, state, } from '@mantou/gem';
|
|
14
|
+
import { Time } from '../lib/time';
|
|
15
|
+
import { icons } from '../lib/icons';
|
|
16
|
+
import { theme } from '../lib/theme';
|
|
17
|
+
import { commonHandle } from '../lib/hotkeys';
|
|
18
|
+
import { ContextMenu } from './menu';
|
|
19
|
+
import './date-range-panel';
|
|
20
|
+
import './button';
|
|
21
|
+
const style = createCSSSheet(css `
|
|
22
|
+
:host {
|
|
23
|
+
cursor: pointer;
|
|
24
|
+
display: inline-flex;
|
|
25
|
+
align-items: center;
|
|
26
|
+
border: 1px solid ${theme.borderColor};
|
|
27
|
+
border-radius: ${theme.normalRound};
|
|
28
|
+
line-height: 1.2;
|
|
29
|
+
padding: 0.5em;
|
|
30
|
+
gap: 0.5em;
|
|
31
|
+
font-size: 0.875em;
|
|
32
|
+
box-sizing: border-box;
|
|
33
|
+
width: 18em;
|
|
34
|
+
}
|
|
35
|
+
:host(:where(:focus-visible, :--active, [data-active])) {
|
|
36
|
+
background-color: ${theme.lightBackgroundColor};
|
|
37
|
+
}
|
|
38
|
+
:host([disabled]) {
|
|
39
|
+
cursor: not-allowed;
|
|
40
|
+
border-color: transparent;
|
|
41
|
+
background: ${theme.disabledColor};
|
|
42
|
+
}
|
|
43
|
+
.value {
|
|
44
|
+
flex-grow: 1;
|
|
45
|
+
overflow: hidden;
|
|
46
|
+
text-overflow: ellipsis;
|
|
47
|
+
white-space: nowrap;
|
|
48
|
+
}
|
|
49
|
+
.placeholder {
|
|
50
|
+
color: ${theme.describeColor};
|
|
51
|
+
}
|
|
52
|
+
gem-use {
|
|
53
|
+
width: 1.2em;
|
|
54
|
+
color: ${theme.borderColor};
|
|
55
|
+
}
|
|
56
|
+
:host(:where(:hover, :--active, [data-active])) gem-use {
|
|
57
|
+
color: ${theme.textColor};
|
|
58
|
+
}
|
|
59
|
+
.icon {
|
|
60
|
+
display: flex;
|
|
61
|
+
}
|
|
62
|
+
.close,
|
|
63
|
+
.clearable:hover .date {
|
|
64
|
+
display: none;
|
|
65
|
+
}
|
|
66
|
+
.clearable:hover .close {
|
|
67
|
+
display: inline-flex;
|
|
68
|
+
}
|
|
69
|
+
`);
|
|
70
|
+
/**
|
|
71
|
+
* @customElement dy-date-range-pick
|
|
72
|
+
* @fires change
|
|
73
|
+
* @fires clear
|
|
74
|
+
*/
|
|
75
|
+
let DuoyunDateRangePickElement = class DuoyunDateRangePickElement extends GemElement {
|
|
76
|
+
constructor() {
|
|
77
|
+
super();
|
|
78
|
+
_DuoyunDateRangePickElement_onSubmit.set(this, ({ detail }) => {
|
|
79
|
+
this.change(detail);
|
|
80
|
+
ContextMenu.close();
|
|
81
|
+
});
|
|
82
|
+
_DuoyunDateRangePickElement_onClear.set(this, (e) => {
|
|
83
|
+
e.stopPropagation();
|
|
84
|
+
this.clear(null);
|
|
85
|
+
});
|
|
86
|
+
_DuoyunDateRangePickElement_onOpen.set(this, () => {
|
|
87
|
+
if (this.disabled)
|
|
88
|
+
return;
|
|
89
|
+
ContextMenu.open(html `
|
|
90
|
+
<dy-date-range-panel
|
|
91
|
+
@change=${__classPrivateFieldGet(this, _DuoyunDateRangePickElement_onSubmit, "f")}
|
|
92
|
+
.value=${this.value}
|
|
93
|
+
.quickRanges=${this.quickRanges}
|
|
94
|
+
></dy-date-range-panel>
|
|
95
|
+
`, {
|
|
96
|
+
activeElement: this,
|
|
97
|
+
width: '30em',
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
_DuoyunDateRangePickElement_getCurrentLabel.set(this, (value) => {
|
|
101
|
+
if (Array.isArray(value)) {
|
|
102
|
+
return this.value.map((t) => new Time(t).format('YYYY-MM-DD')).join(' ~ ');
|
|
103
|
+
}
|
|
104
|
+
if (this.quickRanges) {
|
|
105
|
+
const range = this.quickRanges.find((e) => value === e.value);
|
|
106
|
+
return range === null || range === void 0 ? void 0 : range.label;
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
this.mounted = () => {
|
|
110
|
+
return () => this.active && ContextMenu.close();
|
|
111
|
+
};
|
|
112
|
+
this.render = () => {
|
|
113
|
+
return html `
|
|
114
|
+
<div class=${classMap({ value: true, placeholder: !this.value })}>
|
|
115
|
+
${this.value ? __classPrivateFieldGet(this, _DuoyunDateRangePickElement_getCurrentLabel, "f").call(this, this.value) : this.placeholder}
|
|
116
|
+
</div>
|
|
117
|
+
<div class=${classMap({ icon: true, clearable: this.clearable })}>
|
|
118
|
+
<gem-use class="date" .element=${icons.date}></gem-use>
|
|
119
|
+
<gem-use @click=${__classPrivateFieldGet(this, _DuoyunDateRangePickElement_onClear, "f")} class="close" .element=${icons.close}></gem-use>
|
|
120
|
+
</div>
|
|
121
|
+
`;
|
|
122
|
+
};
|
|
123
|
+
this.addEventListener('click', __classPrivateFieldGet(this, _DuoyunDateRangePickElement_onOpen, "f"));
|
|
124
|
+
this.addEventListener('keydown', commonHandle);
|
|
125
|
+
this.tabIndex = 0;
|
|
126
|
+
this.internals.role = 'combobox';
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
_DuoyunDateRangePickElement_onSubmit = new WeakMap(), _DuoyunDateRangePickElement_onClear = new WeakMap(), _DuoyunDateRangePickElement_onOpen = new WeakMap(), _DuoyunDateRangePickElement_getCurrentLabel = new WeakMap();
|
|
130
|
+
__decorate([
|
|
131
|
+
attribute
|
|
132
|
+
], DuoyunDateRangePickElement.prototype, "placeholder", void 0);
|
|
133
|
+
__decorate([
|
|
134
|
+
boolattribute
|
|
135
|
+
], DuoyunDateRangePickElement.prototype, "clearable", void 0);
|
|
136
|
+
__decorate([
|
|
137
|
+
boolattribute
|
|
138
|
+
], DuoyunDateRangePickElement.prototype, "disabled", void 0);
|
|
139
|
+
__decorate([
|
|
140
|
+
state
|
|
141
|
+
], DuoyunDateRangePickElement.prototype, "active", void 0);
|
|
142
|
+
__decorate([
|
|
143
|
+
property
|
|
144
|
+
], DuoyunDateRangePickElement.prototype, "value", void 0);
|
|
145
|
+
__decorate([
|
|
146
|
+
property
|
|
147
|
+
], DuoyunDateRangePickElement.prototype, "quickRanges", void 0);
|
|
148
|
+
__decorate([
|
|
149
|
+
globalemitter
|
|
150
|
+
], DuoyunDateRangePickElement.prototype, "change", void 0);
|
|
151
|
+
__decorate([
|
|
152
|
+
emitter
|
|
153
|
+
], DuoyunDateRangePickElement.prototype, "clear", void 0);
|
|
154
|
+
DuoyunDateRangePickElement = __decorate([
|
|
155
|
+
customElement('dy-date-range-pick'),
|
|
156
|
+
adoptedStyle(style)
|
|
157
|
+
], DuoyunDateRangePickElement);
|
|
158
|
+
export { DuoyunDateRangePickElement };
|
|
159
|
+
//# sourceMappingURL=date-range-pick.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-range-pick.js","sourceRoot":"","sources":["../src/elements/date-range-pick.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GemElement } from '@mantou/gem';
|
|
2
|
+
/**
|
|
3
|
+
* @customElement dy-divider
|
|
4
|
+
* @attr size
|
|
5
|
+
* @attr orientation
|
|
6
|
+
*/
|
|
7
|
+
export declare class DuoyunDividerElement extends GemElement {
|
|
8
|
+
#private;
|
|
9
|
+
size: 'small' | 'medium' | 'large';
|
|
10
|
+
color: string;
|
|
11
|
+
orientation: 'horizontal' | 'vertical';
|
|
12
|
+
constructor();
|
|
13
|
+
render: () => import("@mantou/gem").TemplateResult;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=divider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"divider.d.ts","sourceRoot":"","sources":["../src/elements/divider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAqE,MAAM,aAAa,CAAC;AAa5G;;;;GAIG;AACH,qBAEa,oBAAqB,SAAQ,UAAU;;IACvC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,YAAY,GAAG,UAAU,CAAC;;IAiDlD,MAAM,6CAUJ;CACH"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _DuoyunDividerElement_instances, _DuoyunDividerElement_orientation_get, _DuoyunDividerElement_size_get, _DuoyunDividerElement_height_get, _DuoyunDividerElement_width_get, _DuoyunDividerElement_bgColor_get;
|
|
13
|
+
// https://spectrum.adobe.com/page/divider/
|
|
14
|
+
import { GemElement, html, adoptedStyle, createCSSSheet, css, customElement, attribute } from '@mantou/gem';
|
|
15
|
+
import { theme } from '../lib/theme';
|
|
16
|
+
const style = createCSSSheet(css `
|
|
17
|
+
:host {
|
|
18
|
+
display: block;
|
|
19
|
+
border-radius: 10px;
|
|
20
|
+
align-self: stretch;
|
|
21
|
+
background: currentColor;
|
|
22
|
+
}
|
|
23
|
+
`);
|
|
24
|
+
/**
|
|
25
|
+
* @customElement dy-divider
|
|
26
|
+
* @attr size
|
|
27
|
+
* @attr orientation
|
|
28
|
+
*/
|
|
29
|
+
let DuoyunDividerElement = class DuoyunDividerElement extends GemElement {
|
|
30
|
+
constructor() {
|
|
31
|
+
super();
|
|
32
|
+
_DuoyunDividerElement_instances.add(this);
|
|
33
|
+
this.render = () => {
|
|
34
|
+
return html `
|
|
35
|
+
<style>
|
|
36
|
+
:host {
|
|
37
|
+
width: ${__classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_width_get)};
|
|
38
|
+
height: ${__classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_height_get)};
|
|
39
|
+
color: ${__classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_bgColor_get)};
|
|
40
|
+
}
|
|
41
|
+
</style>
|
|
42
|
+
`;
|
|
43
|
+
};
|
|
44
|
+
this.internals.role = 'separator';
|
|
45
|
+
this.effect(() => {
|
|
46
|
+
this.internals.ariaOrientation = __classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_orientation_get);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
_DuoyunDividerElement_instances = new WeakSet(), _DuoyunDividerElement_orientation_get = function _DuoyunDividerElement_orientation_get() {
|
|
51
|
+
return this.orientation || 'horizontal';
|
|
52
|
+
}, _DuoyunDividerElement_size_get = function _DuoyunDividerElement_size_get() {
|
|
53
|
+
switch (this.size) {
|
|
54
|
+
case 'large':
|
|
55
|
+
return '4px';
|
|
56
|
+
case 'medium':
|
|
57
|
+
return '2px';
|
|
58
|
+
default:
|
|
59
|
+
return '1px';
|
|
60
|
+
}
|
|
61
|
+
}, _DuoyunDividerElement_height_get = function _DuoyunDividerElement_height_get() {
|
|
62
|
+
if (__classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_orientation_get) === 'vertical') {
|
|
63
|
+
return 'auto';
|
|
64
|
+
}
|
|
65
|
+
return __classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_size_get);
|
|
66
|
+
}, _DuoyunDividerElement_width_get = function _DuoyunDividerElement_width_get() {
|
|
67
|
+
if (__classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_orientation_get) === 'vertical') {
|
|
68
|
+
return __classPrivateFieldGet(this, _DuoyunDividerElement_instances, "a", _DuoyunDividerElement_size_get);
|
|
69
|
+
}
|
|
70
|
+
return 'auto';
|
|
71
|
+
}, _DuoyunDividerElement_bgColor_get = function _DuoyunDividerElement_bgColor_get() {
|
|
72
|
+
if (this.color)
|
|
73
|
+
return this.color;
|
|
74
|
+
switch (this.size) {
|
|
75
|
+
case 'large':
|
|
76
|
+
return theme.textColor;
|
|
77
|
+
default:
|
|
78
|
+
return theme.borderColor;
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
__decorate([
|
|
82
|
+
attribute
|
|
83
|
+
], DuoyunDividerElement.prototype, "size", void 0);
|
|
84
|
+
__decorate([
|
|
85
|
+
attribute
|
|
86
|
+
], DuoyunDividerElement.prototype, "color", void 0);
|
|
87
|
+
__decorate([
|
|
88
|
+
attribute
|
|
89
|
+
], DuoyunDividerElement.prototype, "orientation", void 0);
|
|
90
|
+
DuoyunDividerElement = __decorate([
|
|
91
|
+
customElement('dy-divider'),
|
|
92
|
+
adoptedStyle(style)
|
|
93
|
+
], DuoyunDividerElement);
|
|
94
|
+
export { DuoyunDividerElement };
|
|
95
|
+
//# sourceMappingURL=divider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"divider.js","sourceRoot":"","sources":["../src/elements/divider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA2C;AAC3C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE5G,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAA;;;;;;;CAO/B,CAAC,CAAC;AAEH;;;;GAIG;AAGH,IAAa,oBAAoB,GAAjC,MAAa,oBAAqB,SAAQ,UAAU;IA4ClD;QACE,KAAK,EAAE,CAAC;;QAOV,WAAM,GAAG,GAAG,EAAE;YACZ,OAAO,IAAI,CAAA;;;mBAGI,uBAAA,IAAI,wEAAO;oBACV,uBAAA,IAAI,yEAAQ;mBACb,uBAAA,IAAI,0EAAS;;;KAG3B,CAAC;QACJ,CAAC,CAAC;QAhBA,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,WAAW,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,SAAS,CAAC,eAAe,GAAG,uBAAA,IAAI,8EAAa,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC;CAaF,CAAA;;IAzDG,OAAO,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC;AAC1C,CAAC;IAGC,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC;QACf;YACE,OAAO,KAAK,CAAC;KAChB;AACH,CAAC;IAGC,IAAI,uBAAA,IAAI,8EAAa,KAAK,UAAU,EAAE;QACpC,OAAO,MAAM,CAAC;KACf;IACD,OAAO,uBAAA,IAAI,uEAAM,CAAC;AACpB,CAAC;IAGC,IAAI,uBAAA,IAAI,8EAAa,KAAK,UAAU,EAAE;QACpC,OAAO,uBAAA,IAAI,uEAAM,CAAC;KACnB;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;IAGC,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC;IAClC,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,SAAS,CAAC;QACzB;YACE,OAAO,KAAK,CAAC,WAAW,CAAC;KAC5B;AACH,CAAC;AAzCU;IAAV,SAAS;kDAAoC;AACnC;IAAV,SAAS;mDAAe;AACd;IAAV,SAAS;yDAAwC;AAHvC,oBAAoB;IAFhC,aAAa,CAAC,YAAY,CAAC;IAC3B,YAAY,CAAC,KAAK,CAAC;GACP,oBAAoB,CA+DhC;SA/DY,oBAAoB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { DuoyunChartBaseElement } from './base/chart';
|
|
2
|
+
/**
|
|
3
|
+
* @customElement dy-donut-chart
|
|
4
|
+
*/
|
|
5
|
+
export declare class DuoyunDonutChartElement extends DuoyunChartBaseElement {
|
|
6
|
+
#private;
|
|
7
|
+
label: string;
|
|
8
|
+
total: string;
|
|
9
|
+
sequences?: {
|
|
10
|
+
label: string;
|
|
11
|
+
value: number;
|
|
12
|
+
}[];
|
|
13
|
+
stageWidth: number;
|
|
14
|
+
stageHeight: number;
|
|
15
|
+
willMount: () => void;
|
|
16
|
+
mounted: () => () => void;
|
|
17
|
+
render: () => import("@mantou/gem").TemplateResult;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=donut-chart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"donut-chart.d.ts","sourceRoot":"","sources":["../src/elements/donut-chart.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAYtD;;GAEG;AACH,qBAEa,uBAAwB,SAAQ,sBAAsB;;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IAEf,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAEzD,UAAU,SAAO;IACjB,WAAW,SAAO;IA0BlB,SAAS,aAuBP;IAEF,OAAO,mBAEL;IAEF,MAAM,6CAsCJ;CACH"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
13
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
14
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
15
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
16
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
17
|
+
};
|
|
18
|
+
var _DuoyunDonutChartElement_outside, _DuoyunDonutChartElement_inside, _DuoyunDonutChartElement_paths, _DuoyunDonutChartElement_onMouseMove, _DuoyunDonutChartElement_onMouseOut;
|
|
19
|
+
// https://spectrum.adobe.com/page/donut-chart/
|
|
20
|
+
import { html, adoptedStyle, createCSSSheet, css, customElement, attribute, property, svg } from '@mantou/gem';
|
|
21
|
+
import { theme } from '../lib/theme';
|
|
22
|
+
import { DuoyunChartBaseElement } from './base/chart';
|
|
23
|
+
import { ChartTooltip } from './chart-tooltip';
|
|
24
|
+
const style = createCSSSheet(css `
|
|
25
|
+
.path {
|
|
26
|
+
stroke: ${theme.backgroundColor};
|
|
27
|
+
}
|
|
28
|
+
.path:hover {
|
|
29
|
+
filter: brightness(1.05);
|
|
30
|
+
}
|
|
31
|
+
`);
|
|
32
|
+
/**
|
|
33
|
+
* @customElement dy-donut-chart
|
|
34
|
+
*/
|
|
35
|
+
let DuoyunDonutChartElement = class DuoyunDonutChartElement extends DuoyunChartBaseElement {
|
|
36
|
+
constructor() {
|
|
37
|
+
super(...arguments);
|
|
38
|
+
this.stageWidth = 300;
|
|
39
|
+
this.stageHeight = 300;
|
|
40
|
+
_DuoyunDonutChartElement_outside.set(this, 140);
|
|
41
|
+
_DuoyunDonutChartElement_inside.set(this, 115);
|
|
42
|
+
_DuoyunDonutChartElement_paths.set(this, void 0);
|
|
43
|
+
_DuoyunDonutChartElement_onMouseMove.set(this, (evt, index) => {
|
|
44
|
+
var _a, _b;
|
|
45
|
+
if (this.noData || this.loading)
|
|
46
|
+
return;
|
|
47
|
+
if ((_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.render) {
|
|
48
|
+
ChartTooltip.open(evt.x, evt.y, {
|
|
49
|
+
render: (_b = this.tooltip) === null || _b === void 0 ? void 0 : _b.render,
|
|
50
|
+
values: this.sequences.map(({ label, value }, i) => {
|
|
51
|
+
var _a, _b;
|
|
52
|
+
return ({
|
|
53
|
+
highlight: index === i,
|
|
54
|
+
value: ((_b = (_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.formatter) === null || _b === void 0 ? void 0 : _b.call(_a, value)) || String(value),
|
|
55
|
+
originValue: value,
|
|
56
|
+
color: this.colors[i],
|
|
57
|
+
label: label,
|
|
58
|
+
});
|
|
59
|
+
}),
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
_DuoyunDonutChartElement_onMouseOut.set(this, () => {
|
|
64
|
+
ChartTooltip.close();
|
|
65
|
+
});
|
|
66
|
+
this.willMount = () => {
|
|
67
|
+
this.memo(() => {
|
|
68
|
+
var _a, _b;
|
|
69
|
+
const total = (_a = this.sequences) === null || _a === void 0 ? void 0 : _a.reduce((p, c) => p + c.value, 0);
|
|
70
|
+
const accumulateSequences = (_b = this.sequences) === null || _b === void 0 ? void 0 : _b.map((_, index) => this.sequences.slice(0, index + 1).reduce((p, c) => p + c.value, 0));
|
|
71
|
+
const thetaList = accumulateSequences === null || accumulateSequences === void 0 ? void 0 : accumulateSequences.map((v, index, arr, prev = arr[index - 1] || 0) => [prev, v].map((e) => (e / total) * 2 * Math.PI));
|
|
72
|
+
__classPrivateFieldSet(this, _DuoyunDonutChartElement_paths, thetaList === null || thetaList === void 0 ? void 0 : thetaList.map(([start, stop]) => {
|
|
73
|
+
const insideStartPoint = this.polarToCartesian([__classPrivateFieldGet(this, _DuoyunDonutChartElement_inside, "f"), start]).join(' ');
|
|
74
|
+
const insideStopPoint = this.polarToCartesian([__classPrivateFieldGet(this, _DuoyunDonutChartElement_inside, "f"), stop]).join(' ');
|
|
75
|
+
const outsideStartPoint = this.polarToCartesian([__classPrivateFieldGet(this, _DuoyunDonutChartElement_outside, "f"), stop]).join(' ');
|
|
76
|
+
const outsideStopPoint = this.polarToCartesian([__classPrivateFieldGet(this, _DuoyunDonutChartElement_outside, "f"), start]).join(' ');
|
|
77
|
+
return (`M${insideStartPoint}A${__classPrivateFieldGet(this, _DuoyunDonutChartElement_inside, "f")} ${__classPrivateFieldGet(this, _DuoyunDonutChartElement_inside, "f")} 0 0 1 ${insideStopPoint}` +
|
|
78
|
+
`L${outsideStartPoint}A${__classPrivateFieldGet(this, _DuoyunDonutChartElement_outside, "f")} ${__classPrivateFieldGet(this, _DuoyunDonutChartElement_outside, "f")} 0 0 0 ${outsideStopPoint}`);
|
|
79
|
+
}), "f");
|
|
80
|
+
}, () => [this.sequences]);
|
|
81
|
+
};
|
|
82
|
+
this.mounted = () => {
|
|
83
|
+
return __classPrivateFieldGet(this, _DuoyunDonutChartElement_onMouseOut, "f");
|
|
84
|
+
};
|
|
85
|
+
this.render = () => {
|
|
86
|
+
var _a;
|
|
87
|
+
return html `
|
|
88
|
+
${svg `
|
|
89
|
+
<svg aria-hidden="true" part="svg" xmlns="http://www.w3.org/2000/svg" viewBox="-150 -150 300 300">
|
|
90
|
+
${(_a = __classPrivateFieldGet(this, _DuoyunDonutChartElement_paths, "f")) === null || _a === void 0 ? void 0 : _a.map((d, index) => svg `
|
|
91
|
+
<path
|
|
92
|
+
class="path"
|
|
93
|
+
@mousemove=${(evt) => __classPrivateFieldGet(this, _DuoyunDonutChartElement_onMouseMove, "f").call(this, evt, index)}
|
|
94
|
+
@mouseout=${__classPrivateFieldGet(this, _DuoyunDonutChartElement_onMouseOut, "f")}
|
|
95
|
+
d=${d}
|
|
96
|
+
fill=${this.colors[index]}
|
|
97
|
+
stroke-width=${this.getSVGPixel(1)}
|
|
98
|
+
/>
|
|
99
|
+
`)}
|
|
100
|
+
<text
|
|
101
|
+
x=${0}
|
|
102
|
+
y=${this.label ? -this.getSVGPixel(4) : 0}
|
|
103
|
+
font-size=${this.getSVGPixel(24)}
|
|
104
|
+
font-weight="bold"
|
|
105
|
+
fill="currentColor"
|
|
106
|
+
text-anchor="middle"
|
|
107
|
+
dominant-baseline="middle">
|
|
108
|
+
${this.total}
|
|
109
|
+
</text>
|
|
110
|
+
<text
|
|
111
|
+
x=${0}
|
|
112
|
+
y=${this.total ? this.getSVGPixel(14) : 0}
|
|
113
|
+
font-size=${this.getSVGPixel(12)}
|
|
114
|
+
fill="currentColor"
|
|
115
|
+
text-anchor="middle"
|
|
116
|
+
dominant-baseline="middle">
|
|
117
|
+
${this.label}
|
|
118
|
+
</text>
|
|
119
|
+
</svg>
|
|
120
|
+
`}
|
|
121
|
+
`;
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
_DuoyunDonutChartElement_outside = new WeakMap(), _DuoyunDonutChartElement_inside = new WeakMap(), _DuoyunDonutChartElement_paths = new WeakMap(), _DuoyunDonutChartElement_onMouseMove = new WeakMap(), _DuoyunDonutChartElement_onMouseOut = new WeakMap();
|
|
126
|
+
__decorate([
|
|
127
|
+
attribute
|
|
128
|
+
], DuoyunDonutChartElement.prototype, "label", void 0);
|
|
129
|
+
__decorate([
|
|
130
|
+
attribute
|
|
131
|
+
], DuoyunDonutChartElement.prototype, "total", void 0);
|
|
132
|
+
__decorate([
|
|
133
|
+
property
|
|
134
|
+
], DuoyunDonutChartElement.prototype, "sequences", void 0);
|
|
135
|
+
DuoyunDonutChartElement = __decorate([
|
|
136
|
+
customElement('dy-donut-chart'),
|
|
137
|
+
adoptedStyle(style)
|
|
138
|
+
], DuoyunDonutChartElement);
|
|
139
|
+
export { DuoyunDonutChartElement };
|
|
140
|
+
//# sourceMappingURL=donut-chart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"donut-chart.js","sourceRoot":"","sources":["../src/elements/donut-chart.ts"],"names":[],"mappings":"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"}
|