From 99dcd7bb27da3b12d51b685f9562a89b15cd138f Mon Sep 17 00:00:00 2001 From: syuilo Date: Wed, 29 Jun 2022 23:28:52 +0900 Subject: feat(client): add instance-cloud widget --- packages/client/src/widgets/instance-cloud.vue | 80 ++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 packages/client/src/widgets/instance-cloud.vue (limited to 'packages/client/src/widgets/instance-cloud.vue') diff --git a/packages/client/src/widgets/instance-cloud.vue b/packages/client/src/widgets/instance-cloud.vue new file mode 100644 index 0000000000..aa76c37a00 --- /dev/null +++ b/packages/client/src/widgets/instance-cloud.vue @@ -0,0 +1,80 @@ + + + + + -- cgit v1.2.3-freya From 9ac526b6b6d66ceaceda6ef0d3662fd8484510da Mon Sep 17 00:00:00 2001 From: syuilo Date: Thu, 30 Jun 2022 10:13:27 +0900 Subject: tweak client --- packages/client/src/components/tag-cloud.vue | 14 ++++++++++++-- packages/client/src/ui/visitor/b.vue | 4 ++++ packages/client/src/widgets/instance-cloud.vue | 6 +----- 3 files changed, 17 insertions(+), 7 deletions(-) (limited to 'packages/client/src/widgets/instance-cloud.vue') diff --git a/packages/client/src/components/tag-cloud.vue b/packages/client/src/components/tag-cloud.vue index 43ab49357b..8df8d0b05b 100644 --- a/packages/client/src/components/tag-cloud.vue +++ b/packages/client/src/components/tag-cloud.vue @@ -1,6 +1,6 @@ @@ -62,7 +63,7 @@ export default defineComponent({ const thumbEl = ref(); const rawValue = ref((props.modelValue - props.min) / (props.max - props.min)); - const steppedValue = computed(() => { + const steppedRawValue = computed(() => { if (props.step) { const step = props.step / (props.max - props.min); return (step * Math.round(rawValue.value / step)); @@ -71,7 +72,11 @@ export default defineComponent({ } }); const finalValue = computed(() => { - return (steppedValue.value * (props.max - props.min)) + props.min; + if (Number.isInteger(props.step)) { + return Math.round((steppedRawValue.value * (props.max - props.min)) + props.min); + } else { + return (steppedRawValue.value * (props.max - props.min)) + props.min; + } }); watch(finalValue, () => { context.emit('update:modelValue', finalValue.value); @@ -86,10 +91,10 @@ export default defineComponent({ if (containerEl.value == null) { thumbPosition.value = 0; } else { - thumbPosition.value = (containerEl.value.offsetWidth - thumbWidth.value) * steppedValue.value; + thumbPosition.value = (containerEl.value.offsetWidth - thumbWidth.value) * steppedRawValue.value; } }; - watch([steppedValue, containerEl], calcThumbPosition); + watch([steppedRawValue, containerEl], calcThumbPosition); let ro: ResizeObserver | undefined; @@ -154,7 +159,7 @@ export default defineComponent({ return { rawValue, finalValue, - steppedValue, + steppedRawValue, onMousedown, containerEl, thumbEl, diff --git a/packages/client/src/components/global/router-view.vue b/packages/client/src/components/global/router-view.vue index 56b53e0127..7138faaa9d 100644 --- a/packages/client/src/components/global/router-view.vue +++ b/packages/client/src/components/global/router-view.vue @@ -1,5 +1,5 @@ @@ -7,6 +7,7 @@