@feugene/granularity 0.23.0 → 0.24.1
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/dist/chunks/config-BFJIxE8b.js +62 -0
- package/dist/chunks/config-BFJIxE8b.js.map +1 -0
- package/dist/chunks/{config-DBQQT-WP.js → config-BIa3ilQm.js} +18 -3
- package/dist/chunks/config-BIa3ilQm.js.map +1 -0
- package/dist/chunks/config-BSyiFlbi2.js.map +1 -0
- package/dist/chunks/config-BViooYNv2.js.map +1 -0
- package/dist/chunks/config-BoNR7_PD.js.map +1 -0
- package/dist/chunks/{config-Be9k9bOf.js → config-C8tVRv8i.js} +16 -2
- package/dist/chunks/config-C8tVRv8i.js.map +1 -0
- package/dist/chunks/{config-Bm_Sovla.js → config-DYgfMrIF.js} +14 -2
- package/dist/chunks/config-DYgfMrIF.js.map +1 -0
- package/dist/chunks/{config-DCwQBMmJ.js → config-rkcKArZQ2.js} +27 -8
- package/dist/chunks/config-rkcKArZQ2.js.map +1 -0
- package/dist/chunks/config-vSji8w902.js.map +1 -0
- package/dist/chunks/{generated-CiCrGDQO.js → generated-1WEi10KK.js} +89 -6
- package/dist/chunks/{generated-CiCrGDQO.js.map → generated-1WEi10KK.js.map} +1 -1
- package/dist/chunks/{granular-provider-CQKhl5C_.js → granular-provider-Dr2PKgl1.js} +13 -11
- package/dist/chunks/granular-provider-Dr2PKgl1.js.map +1 -0
- package/dist/components/GrCard/chunks/{GrCard-Bc7nRfbe.js → GrCard-gI2wA8ZZ.js} +8 -2
- package/dist/components/GrCard/chunks/GrCard-gI2wA8ZZ.js.map +1 -0
- package/dist/components/GrCard/index.js +2 -2
- package/dist/components/GrCollapse/chunks/{GrCollapse-C1rCfbc0.js → GrCollapse-DIHEiTju.js} +1 -1
- package/dist/components/GrCollapse/chunks/{GrCollapse-C1rCfbc0.js.map → GrCollapse-DIHEiTju.js.map} +1 -1
- package/dist/components/GrCollapse/index.js +1 -1
- package/dist/components/GrDelta/chunks/{GrDelta-DFvxNpmN.js → GrDelta-NE5HhXoo.js} +0 -0
- package/dist/components/GrDelta/chunks/GrDelta-NE5HhXoo.js.map +1 -0
- package/dist/components/GrDelta/index.js +2 -2
- package/dist/components/GrDescriptionList/chunks/{GrDescriptionList-2zFXzX83.js → GrDescriptionList-C6Pxjjbh.js} +8 -4
- package/dist/components/GrDescriptionList/chunks/GrDescriptionList-C6Pxjjbh.js.map +1 -0
- package/dist/components/GrDescriptionList/index.js +2 -2
- package/dist/components/GrDropdown/index.js +1 -1
- package/dist/components/GrEmptyState/chunks/{GrEmptyState-CS9do8eM.js → GrEmptyState-BGUX8O0U.js} +1 -1
- package/dist/components/GrEmptyState/chunks/{GrEmptyState-CS9do8eM.js.map → GrEmptyState-BGUX8O0U.js.map} +1 -1
- package/dist/components/GrEmptyState/index.js +2 -2
- package/dist/components/GrList/chunks/{GrList-BRYhpqIe.js → GrList-DAtzVIHh.js} +1 -1
- package/dist/components/GrList/chunks/{GrList-BRYhpqIe.js.map → GrList-DAtzVIHh.js.map} +1 -1
- package/dist/components/GrList/index.js +1 -1
- package/dist/components/GrLoading/chunks/{GrLoading-C3DZSSuh.js → GrLoading-DeBFTvFX.js} +1 -1
- package/dist/components/GrLoading/chunks/GrLoading-DeBFTvFX.js.map +1 -0
- package/dist/components/GrLoading/index.js +1 -1
- package/dist/components/GrPopover/index.js +1 -1
- package/dist/components/GrSegmented/chunks/{GrSegmented-D1mjxF_O.js → GrSegmented-DKpo3cnC.js} +30 -5
- package/dist/components/GrSegmented/chunks/GrSegmented-DKpo3cnC.js.map +1 -0
- package/dist/components/GrSegmented/index.js +1 -1
- package/dist/components/GrSortableList/chunks/{GrSortableList-DPjxilmN.js → GrSortableList-BmcUVAMb.js} +1 -1
- package/dist/components/GrSortableList/chunks/{GrSortableList-DPjxilmN.js.map → GrSortableList-BmcUVAMb.js.map} +1 -1
- package/dist/components/GrSortableList/index.js +1 -1
- package/dist/components/GrStatistic/chunks/{GrStatistic-C7wQECeS.js → GrStatistic-BJQv5aOS.js} +41 -26
- package/dist/components/GrStatistic/chunks/GrStatistic-BJQv5aOS.js.map +1 -0
- package/dist/components/GrStatistic/index.js +2 -2
- package/dist/components/GrSwitch/chunks/{GrSwitch-x_vQQ6ao.js → GrSwitch-CHiIj9GT.js} +1 -1
- package/dist/components/GrSwitch/chunks/{GrSwitch-x_vQQ6ao.js.map → GrSwitch-CHiIj9GT.js.map} +1 -1
- package/dist/components/GrSwitch/index.js +2 -2
- package/dist/components/GrValue/chunks/GrValue-CZsuZ4x-.js +38 -0
- package/dist/components/GrValue/chunks/GrValue-CZsuZ4x-.js.map +1 -0
- package/dist/components/GrValue/index.js +3 -0
- package/dist/directives/loading.js +1 -1
- package/dist/granular-provider-node.js +1 -1
- package/dist/granular-provider.js +1 -1
- package/dist/index.js +22 -20
- package/dist/styles/themes/dark.css +11 -6
- package/dist/styles/themes/light.css +5 -0
- package/dist/theme.js +1 -1
- package/dist/tokens.js +1 -1
- package/dist/types/components/GrCard/grCardStyles.d.ts +11 -0
- package/dist/types/components/GrDelta/grDeltaStyles.d.ts +13 -1
- package/dist/types/components/GrDescriptionList/grDescriptionListStyles.d.ts +29 -1
- package/dist/types/components/GrStatistic/GrStatistic.vue.d.ts +5 -5
- package/dist/types/components/GrStatistic/grStatisticStyles.d.ts +9 -0
- package/dist/types/components/GrValue/GrValue.vue.d.ts +51 -0
- package/dist/types/components/GrValue/config.d.ts +1 -0
- package/dist/types/components/GrValue/grValueStyles.d.ts +34 -0
- package/dist/types/components/GrValue/index.d.ts +5 -0
- package/dist/types/components/GrValue/safelist.d.ts +1 -0
- package/dist/types/components/shared/truncationTitle.d.ts +16 -0
- package/dist/types/granular-provider/shared.d.ts +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/web-types.json +56 -1
- package/package.json +5 -1
- package/tokens/themes/dark.json +26 -6
- package/tokens/themes/light.json +20 -0
- package/dist/chunks/config-BSyiFlbi.js.map +0 -1
- package/dist/chunks/config-BViooYNv.js.map +0 -1
- package/dist/chunks/config-Be9k9bOf.js.map +0 -1
- package/dist/chunks/config-Bm_Sovla.js.map +0 -1
- package/dist/chunks/config-BoNR7_PD2.js.map +0 -1
- package/dist/chunks/config-DBQQT-WP.js.map +0 -1
- package/dist/chunks/config-DCwQBMmJ.js.map +0 -1
- package/dist/chunks/config-vSji8w90.js.map +0 -1
- package/dist/chunks/granular-provider-CQKhl5C_.js.map +0 -1
- package/dist/components/GrCard/chunks/GrCard-Bc7nRfbe.js.map +0 -1
- package/dist/components/GrDelta/chunks/GrDelta-DFvxNpmN.js.map +0 -1
- package/dist/components/GrDescriptionList/chunks/GrDescriptionList-2zFXzX83.js.map +0 -1
- package/dist/components/GrLoading/chunks/GrLoading-C3DZSSuh.js.map +0 -1
- package/dist/components/GrSegmented/chunks/GrSegmented-D1mjxF_O.js.map +0 -1
- package/dist/components/GrStatistic/chunks/GrStatistic-C7wQECeS.js.map +0 -1
- /package/dist/chunks/{config-BSyiFlbi.js → config-BSyiFlbi2.js} +0 -0
- /package/dist/chunks/{config-BViooYNv.js → config-BViooYNv2.js} +0 -0
- /package/dist/chunks/{config-BoNR7_PD2.js → config-BoNR7_PD.js} +0 -0
- /package/dist/chunks/{config-vSji8w90.js → config-vSji8w902.js} +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { n as formatStatisticValue, t as GrStatistic_default } from "./chunks/GrStatistic-
|
|
2
|
-
import { n as grStatisticSafelist, t as grStatisticConfig } from "../../chunks/config-
|
|
1
|
+
import { n as formatStatisticValue, t as GrStatistic_default } from "./chunks/GrStatistic-BJQv5aOS.js";
|
|
2
|
+
import { n as grStatisticSafelist, t as grStatisticConfig } from "../../chunks/config-C8tVRv8i.js";
|
|
3
3
|
export { GrStatistic_default as GrStatistic, GrStatistic_default as default, formatStatisticValue, grStatisticConfig, grStatisticSafelist };
|
|
@@ -3,7 +3,7 @@ import { n as useGranularityTranslations } from "../../../chunks/granularityI18n
|
|
|
3
3
|
import { t as loader_circle_default } from "../../../chunks/loader-circle-CfVLz7lb.js";
|
|
4
4
|
import { n as useGrFormFieldContext } from "../../../chunks/context-DdNIxa1w.js";
|
|
5
5
|
import { useGrFormControl } from "../../../composables/useGrFormControl.js";
|
|
6
|
-
import { a as grSwitchSpinnerClass, i as grSwitchRootClass, o as grSwitchThumbClass, r as grSwitchLabelClass, s as grSwitchTrackClass } from "../../../chunks/config-
|
|
6
|
+
import { a as grSwitchSpinnerClass, i as grSwitchRootClass, o as grSwitchThumbClass, r as grSwitchLabelClass, s as grSwitchTrackClass } from "../../../chunks/config-BoNR7_PD.js";
|
|
7
7
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, mergeProps, normalizeClass, normalizeStyle, openBlock, ref, renderSlot, toDisplayString, unref } from "vue";
|
|
8
8
|
//#region src/components/GrSwitch/GrSwitch.vue?vue&type=script&setup=true&lang.ts
|
|
9
9
|
var _hoisted_1 = [
|
package/dist/components/GrSwitch/chunks/{GrSwitch-x_vQQ6ao.js.map → GrSwitch-CHiIj9GT.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GrSwitch-x_vQQ6ao.js","names":["$attrs","$slots"],"sources":["../../../../src/components/GrSwitch/GrSwitch.vue","../../../../src/components/GrSwitch/GrSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport IconLoader from '~icons/lucide/loader-circle'\n\nimport { useGrComponentSize } from '../GrConfigProvider/context'\nimport { useGrFormFieldContext } from '../GrFormField/context'\nimport { useGrFormControl } from '../../composables/useGrFormControl'\nimport { useGranularityTranslations } from '../../internal/granularityI18n'\n\nimport {\n grSwitchLabelClass,\n grSwitchRootClass,\n grSwitchSpinnerClass,\n grSwitchThumbClass,\n grSwitchTrackClass,\n type GrSwitchLabelPosition,\n type GrSwitchSize,\n} from './grSwitchStyles'\n\nexport type { GrSwitchLabelPosition, GrSwitchSize } from './grSwitchStyles'\n\n/**\n * Пропсы публичного GR-примитива «Switch».\n */\nexport interface GrSwitchProps {\n modelValue: boolean\n disabled?: boolean\n /** Только для чтения: состояние видно, но не переключается. */\n readonly?: boolean\n /** Визуальное и ARIA-состояние ошибки. */\n invalid?: boolean\n /** Обязательное поле (`aria-required`). */\n required?: boolean\n ariaLabel?: string\n size?: GrSwitchSize\n /** Сторона подписи относительно дорожки. */\n labelPosition?: GrSwitchLabelPosition\n /** Идёт сохранение: бегунок показывает спиннер, переключение заблокировано. */\n loading?: boolean\n /** i18n: что именно грузится. `aria-busy` сам по себе часть AT не объявляет. */\n loadingText?: string\n /** Имя поля для нативной отправки формы. Без него скрытое поле не рендерится. */\n name?: string\n /** Значение, уходящее в форму во включённом состоянии. */\n value?: string\n /** `id` формы, если переключатель лежит вне неё. */\n form?: string\n /** Кастомный цвет фона в активном состоянии. Если не задан — `var(--gr-primary)`. */\n activeBackgroundColor?: string\n /** Кастомный цвет фона в неактивном состоянии. Если не задан — `var(--gr-muted)`. */\n inactiveBackgroundColor?: string\n}\n\nexport interface GrSwitchEmits {\n (e: 'update:modelValue', value: boolean): void\n (e: 'change', value: boolean): void\n (e: 'focus', event: FocusEvent): void\n (e: 'blur', event: FocusEvent): void\n}\n\nconst getCustomColor = (value?: string) => value?.trim() || undefined\n\n// Скрытое поле — сосед кнопки, а не её потомок: интерактивный контент внутри\n// `<button>` невалиден. Из-за этого корень компонента — фрагмент, и атрибуты\n// потребителя надо донести до кнопки руками.\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(\n defineProps<GrSwitchProps>(),\n {\n disabled: false,\n readonly: false,\n invalid: false,\n required: false,\n ariaLabel: undefined,\n size: undefined,\n labelPosition: 'end',\n loading: false,\n loadingText: undefined,\n name: undefined,\n value: 'on',\n form: undefined,\n activeBackgroundColor: undefined,\n inactiveBackgroundColor: undefined,\n },\n)\n\n// Контекст `GrFormField`: id для `<label for>`, описание ошибкой, невалидность.\n// `<button>` — labelable-элемент, поэтому клик по подписи фокусирует переключатель.\nconst field = useGrFormFieldContext()\nconst fieldId = computed(() => field?.id.value)\nconst describedBy = computed(() => field?.describedById.value)\nconst {\n disabled: isDisabled,\n invalid: isInvalid,\n required: isRequired,\n readonly: isReadonly,\n} = useGrFormControl(() => props)\n\nconst { t } = useGranularityTranslations()\n\nconst rootEl = ref<HTMLButtonElement | null>(null)\n\nfunction focus(): void {\n rootEl.value?.focus()\n}\n\nfunction blur(): void {\n rootEl.value?.blur()\n}\n\ndefineExpose({ focus, blur })\n\n// Эффективный размер: локальный проп → `GrConfigProvider` → дефолт компонента.\nconst resolvedSize = useGrComponentSize(() => props.size, {\n component: 'GrSwitch',\n supported: ['xs', 'sm', 'md', 'lg'],\n})\n\nconst emit = defineEmits<GrSwitchEmits>()\ndefineSlots<{\n /** Подпись переключателя. */\n default?: () => any\n}>()\n\n\nconst rootClass = computed(() => grSwitchRootClass(props.labelPosition))\n\nconst trackClass = computed(() => grSwitchTrackClass(resolvedSize.value))\n\nconst trackStyle = computed(() => {\n const isChecked = props.modelValue\n const defaultBackgroundColor = isChecked ? 'var(--gr-primary)' : 'var(--gr-muted)'\n const customBackgroundColor = getCustomColor(\n isChecked ? props.activeBackgroundColor : props.inactiveBackgroundColor,\n )\n // Недоступность гасится токеном и перебивает кастомный цвет: иначе выключенный\n // переключатель остался бы таким же ярким, как рабочий.\n const backgroundColor = isDisabled.value\n ? 'var(--gr-disabled-bg)'\n : customBackgroundColor ?? defaultBackgroundColor\n\n return {\n '--gr-switch-track-bg': backgroundColor,\n '--gr-switch-track-brd': isDisabled.value\n ? 'var(--gr-disabled-brd)'\n : customBackgroundColor\n ? backgroundColor\n : isChecked\n ? 'var(--gr-primary)'\n : 'var(--gr-brd)',\n backgroundColor: 'var(--gr-switch-track-bg)',\n }\n})\n\nconst thumbClass = computed(() => grSwitchThumbClass({size: resolvedSize.value, checked: props.modelValue}))\n\nconst spinnerClass = computed(() => grSwitchSpinnerClass(resolvedSize.value))\n\nconst labelClass = computed(() => grSwitchLabelClass(resolvedSize.value, isDisabled.value))\n\nconst resolvedLoadingText = computed(() => props.loadingText ?? t('gr.switch.loading', 'Saving…'))\n\n// Выключенный переключатель не отправляется вовсе — так устроен чекбокс в HTML,\n// и сервер отличает «выкл» по отсутствию ключа.\nconst submitsValue = computed(\n () => props.modelValue && !isDisabled.value && Boolean(props.name),\n)\n\nfunction toggle(): void {\n if (isDisabled.value || isReadonly.value || props.loading) {\n return\n }\n\n const next = !props.modelValue\n emit('update:modelValue', next)\n emit('change', next)\n}\n</script>\n\n<template>\n <input\n v-if=\"submitsValue\"\n type=\"hidden\"\n :name=\"name\"\n :value=\"value\"\n :form=\"form\"\n >\n\n <button\n :id=\"fieldId\"\n ref=\"rootEl\"\n v-bind=\"$attrs\"\n type=\"button\"\n role=\"switch\"\n data-gr-switch\n :aria-checked=\"modelValue ? 'true' : 'false'\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"describedBy\"\n :aria-invalid=\"isInvalid ? 'true' : undefined\"\n :aria-required=\"isRequired ? 'true' : undefined\"\n :aria-readonly=\"isReadonly ? 'true' : undefined\"\n :aria-busy=\"loading ? 'true' : undefined\"\n :disabled=\"isDisabled\"\n :class=\"rootClass\"\n @click=\"toggle\"\n @focus=\"emit('focus', $event)\"\n @blur=\"emit('blur', $event)\"\n >\n <span\n data-testid=\"gr-switch-track\"\n data-gr-switch-track\n :class=\"trackClass\"\n :style=\"trackStyle\"\n >\n <span\n data-testid=\"gr-switch-thumb\"\n data-gr-switch-thumb\n :class=\"thumbClass\"\n aria-hidden=\"true\"\n >\n <IconLoader v-if=\"loading\" data-gr-switch-spinner :class=\"spinnerClass\" />\n </span>\n </span>\n <span\n v-if=\"$slots.default\"\n data-gr-switch-label\n :class=\"labelClass\"\n >\n <slot />\n </span>\n <span v-if=\"loading\" data-gr-switch-loading-text class=\"sr-only\">{{ resolvedLoadingText }}</span>\n </button>\n</template>\n","<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport IconLoader from '~icons/lucide/loader-circle'\n\nimport { useGrComponentSize } from '../GrConfigProvider/context'\nimport { useGrFormFieldContext } from '../GrFormField/context'\nimport { useGrFormControl } from '../../composables/useGrFormControl'\nimport { useGranularityTranslations } from '../../internal/granularityI18n'\n\nimport {\n grSwitchLabelClass,\n grSwitchRootClass,\n grSwitchSpinnerClass,\n grSwitchThumbClass,\n grSwitchTrackClass,\n type GrSwitchLabelPosition,\n type GrSwitchSize,\n} from './grSwitchStyles'\n\nexport type { GrSwitchLabelPosition, GrSwitchSize } from './grSwitchStyles'\n\n/**\n * Пропсы публичного GR-примитива «Switch».\n */\nexport interface GrSwitchProps {\n modelValue: boolean\n disabled?: boolean\n /** Только для чтения: состояние видно, но не переключается. */\n readonly?: boolean\n /** Визуальное и ARIA-состояние ошибки. */\n invalid?: boolean\n /** Обязательное поле (`aria-required`). */\n required?: boolean\n ariaLabel?: string\n size?: GrSwitchSize\n /** Сторона подписи относительно дорожки. */\n labelPosition?: GrSwitchLabelPosition\n /** Идёт сохранение: бегунок показывает спиннер, переключение заблокировано. */\n loading?: boolean\n /** i18n: что именно грузится. `aria-busy` сам по себе часть AT не объявляет. */\n loadingText?: string\n /** Имя поля для нативной отправки формы. Без него скрытое поле не рендерится. */\n name?: string\n /** Значение, уходящее в форму во включённом состоянии. */\n value?: string\n /** `id` формы, если переключатель лежит вне неё. */\n form?: string\n /** Кастомный цвет фона в активном состоянии. Если не задан — `var(--gr-primary)`. */\n activeBackgroundColor?: string\n /** Кастомный цвет фона в неактивном состоянии. Если не задан — `var(--gr-muted)`. */\n inactiveBackgroundColor?: string\n}\n\nexport interface GrSwitchEmits {\n (e: 'update:modelValue', value: boolean): void\n (e: 'change', value: boolean): void\n (e: 'focus', event: FocusEvent): void\n (e: 'blur', event: FocusEvent): void\n}\n\nconst getCustomColor = (value?: string) => value?.trim() || undefined\n\n// Скрытое поле — сосед кнопки, а не её потомок: интерактивный контент внутри\n// `<button>` невалиден. Из-за этого корень компонента — фрагмент, и атрибуты\n// потребителя надо донести до кнопки руками.\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(\n defineProps<GrSwitchProps>(),\n {\n disabled: false,\n readonly: false,\n invalid: false,\n required: false,\n ariaLabel: undefined,\n size: undefined,\n labelPosition: 'end',\n loading: false,\n loadingText: undefined,\n name: undefined,\n value: 'on',\n form: undefined,\n activeBackgroundColor: undefined,\n inactiveBackgroundColor: undefined,\n },\n)\n\n// Контекст `GrFormField`: id для `<label for>`, описание ошибкой, невалидность.\n// `<button>` — labelable-элемент, поэтому клик по подписи фокусирует переключатель.\nconst field = useGrFormFieldContext()\nconst fieldId = computed(() => field?.id.value)\nconst describedBy = computed(() => field?.describedById.value)\nconst {\n disabled: isDisabled,\n invalid: isInvalid,\n required: isRequired,\n readonly: isReadonly,\n} = useGrFormControl(() => props)\n\nconst { t } = useGranularityTranslations()\n\nconst rootEl = ref<HTMLButtonElement | null>(null)\n\nfunction focus(): void {\n rootEl.value?.focus()\n}\n\nfunction blur(): void {\n rootEl.value?.blur()\n}\n\ndefineExpose({ focus, blur })\n\n// Эффективный размер: локальный проп → `GrConfigProvider` → дефолт компонента.\nconst resolvedSize = useGrComponentSize(() => props.size, {\n component: 'GrSwitch',\n supported: ['xs', 'sm', 'md', 'lg'],\n})\n\nconst emit = defineEmits<GrSwitchEmits>()\ndefineSlots<{\n /** Подпись переключателя. */\n default?: () => any\n}>()\n\n\nconst rootClass = computed(() => grSwitchRootClass(props.labelPosition))\n\nconst trackClass = computed(() => grSwitchTrackClass(resolvedSize.value))\n\nconst trackStyle = computed(() => {\n const isChecked = props.modelValue\n const defaultBackgroundColor = isChecked ? 'var(--gr-primary)' : 'var(--gr-muted)'\n const customBackgroundColor = getCustomColor(\n isChecked ? props.activeBackgroundColor : props.inactiveBackgroundColor,\n )\n // Недоступность гасится токеном и перебивает кастомный цвет: иначе выключенный\n // переключатель остался бы таким же ярким, как рабочий.\n const backgroundColor = isDisabled.value\n ? 'var(--gr-disabled-bg)'\n : customBackgroundColor ?? defaultBackgroundColor\n\n return {\n '--gr-switch-track-bg': backgroundColor,\n '--gr-switch-track-brd': isDisabled.value\n ? 'var(--gr-disabled-brd)'\n : customBackgroundColor\n ? backgroundColor\n : isChecked\n ? 'var(--gr-primary)'\n : 'var(--gr-brd)',\n backgroundColor: 'var(--gr-switch-track-bg)',\n }\n})\n\nconst thumbClass = computed(() => grSwitchThumbClass({size: resolvedSize.value, checked: props.modelValue}))\n\nconst spinnerClass = computed(() => grSwitchSpinnerClass(resolvedSize.value))\n\nconst labelClass = computed(() => grSwitchLabelClass(resolvedSize.value, isDisabled.value))\n\nconst resolvedLoadingText = computed(() => props.loadingText ?? t('gr.switch.loading', 'Saving…'))\n\n// Выключенный переключатель не отправляется вовсе — так устроен чекбокс в HTML,\n// и сервер отличает «выкл» по отсутствию ключа.\nconst submitsValue = computed(\n () => props.modelValue && !isDisabled.value && Boolean(props.name),\n)\n\nfunction toggle(): void {\n if (isDisabled.value || isReadonly.value || props.loading) {\n return\n }\n\n const next = !props.modelValue\n emit('update:modelValue', next)\n emit('change', next)\n}\n</script>\n\n<template>\n <input\n v-if=\"submitsValue\"\n type=\"hidden\"\n :name=\"name\"\n :value=\"value\"\n :form=\"form\"\n >\n\n <button\n :id=\"fieldId\"\n ref=\"rootEl\"\n v-bind=\"$attrs\"\n type=\"button\"\n role=\"switch\"\n data-gr-switch\n :aria-checked=\"modelValue ? 'true' : 'false'\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"describedBy\"\n :aria-invalid=\"isInvalid ? 'true' : undefined\"\n :aria-required=\"isRequired ? 'true' : undefined\"\n :aria-readonly=\"isReadonly ? 'true' : undefined\"\n :aria-busy=\"loading ? 'true' : undefined\"\n :disabled=\"isDisabled\"\n :class=\"rootClass\"\n @click=\"toggle\"\n @focus=\"emit('focus', $event)\"\n @blur=\"emit('blur', $event)\"\n >\n <span\n data-testid=\"gr-switch-track\"\n data-gr-switch-track\n :class=\"trackClass\"\n :style=\"trackStyle\"\n >\n <span\n data-testid=\"gr-switch-thumb\"\n data-gr-switch-thumb\n :class=\"thumbClass\"\n aria-hidden=\"true\"\n >\n <IconLoader v-if=\"loading\" data-gr-switch-spinner :class=\"spinnerClass\" />\n </span>\n </span>\n <span\n v-if=\"$slots.default\"\n data-gr-switch-label\n :class=\"labelClass\"\n >\n <slot />\n </span>\n <span v-if=\"loading\" data-gr-switch-loading-text class=\"sr-only\">{{ resolvedLoadingText }}</span>\n </button>\n</template>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GrSwitch-CHiIj9GT.js","names":["$attrs","$slots"],"sources":["../../../../src/components/GrSwitch/GrSwitch.vue","../../../../src/components/GrSwitch/GrSwitch.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport IconLoader from '~icons/lucide/loader-circle'\n\nimport { useGrComponentSize } from '../GrConfigProvider/context'\nimport { useGrFormFieldContext } from '../GrFormField/context'\nimport { useGrFormControl } from '../../composables/useGrFormControl'\nimport { useGranularityTranslations } from '../../internal/granularityI18n'\n\nimport {\n grSwitchLabelClass,\n grSwitchRootClass,\n grSwitchSpinnerClass,\n grSwitchThumbClass,\n grSwitchTrackClass,\n type GrSwitchLabelPosition,\n type GrSwitchSize,\n} from './grSwitchStyles'\n\nexport type { GrSwitchLabelPosition, GrSwitchSize } from './grSwitchStyles'\n\n/**\n * Пропсы публичного GR-примитива «Switch».\n */\nexport interface GrSwitchProps {\n modelValue: boolean\n disabled?: boolean\n /** Только для чтения: состояние видно, но не переключается. */\n readonly?: boolean\n /** Визуальное и ARIA-состояние ошибки. */\n invalid?: boolean\n /** Обязательное поле (`aria-required`). */\n required?: boolean\n ariaLabel?: string\n size?: GrSwitchSize\n /** Сторона подписи относительно дорожки. */\n labelPosition?: GrSwitchLabelPosition\n /** Идёт сохранение: бегунок показывает спиннер, переключение заблокировано. */\n loading?: boolean\n /** i18n: что именно грузится. `aria-busy` сам по себе часть AT не объявляет. */\n loadingText?: string\n /** Имя поля для нативной отправки формы. Без него скрытое поле не рендерится. */\n name?: string\n /** Значение, уходящее в форму во включённом состоянии. */\n value?: string\n /** `id` формы, если переключатель лежит вне неё. */\n form?: string\n /** Кастомный цвет фона в активном состоянии. Если не задан — `var(--gr-primary)`. */\n activeBackgroundColor?: string\n /** Кастомный цвет фона в неактивном состоянии. Если не задан — `var(--gr-muted)`. */\n inactiveBackgroundColor?: string\n}\n\nexport interface GrSwitchEmits {\n (e: 'update:modelValue', value: boolean): void\n (e: 'change', value: boolean): void\n (e: 'focus', event: FocusEvent): void\n (e: 'blur', event: FocusEvent): void\n}\n\nconst getCustomColor = (value?: string) => value?.trim() || undefined\n\n// Скрытое поле — сосед кнопки, а не её потомок: интерактивный контент внутри\n// `<button>` невалиден. Из-за этого корень компонента — фрагмент, и атрибуты\n// потребителя надо донести до кнопки руками.\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(\n defineProps<GrSwitchProps>(),\n {\n disabled: false,\n readonly: false,\n invalid: false,\n required: false,\n ariaLabel: undefined,\n size: undefined,\n labelPosition: 'end',\n loading: false,\n loadingText: undefined,\n name: undefined,\n value: 'on',\n form: undefined,\n activeBackgroundColor: undefined,\n inactiveBackgroundColor: undefined,\n },\n)\n\n// Контекст `GrFormField`: id для `<label for>`, описание ошибкой, невалидность.\n// `<button>` — labelable-элемент, поэтому клик по подписи фокусирует переключатель.\nconst field = useGrFormFieldContext()\nconst fieldId = computed(() => field?.id.value)\nconst describedBy = computed(() => field?.describedById.value)\nconst {\n disabled: isDisabled,\n invalid: isInvalid,\n required: isRequired,\n readonly: isReadonly,\n} = useGrFormControl(() => props)\n\nconst { t } = useGranularityTranslations()\n\nconst rootEl = ref<HTMLButtonElement | null>(null)\n\nfunction focus(): void {\n rootEl.value?.focus()\n}\n\nfunction blur(): void {\n rootEl.value?.blur()\n}\n\ndefineExpose({ focus, blur })\n\n// Эффективный размер: локальный проп → `GrConfigProvider` → дефолт компонента.\nconst resolvedSize = useGrComponentSize(() => props.size, {\n component: 'GrSwitch',\n supported: ['xs', 'sm', 'md', 'lg'],\n})\n\nconst emit = defineEmits<GrSwitchEmits>()\ndefineSlots<{\n /** Подпись переключателя. */\n default?: () => any\n}>()\n\n\nconst rootClass = computed(() => grSwitchRootClass(props.labelPosition))\n\nconst trackClass = computed(() => grSwitchTrackClass(resolvedSize.value))\n\nconst trackStyle = computed(() => {\n const isChecked = props.modelValue\n const defaultBackgroundColor = isChecked ? 'var(--gr-primary)' : 'var(--gr-muted)'\n const customBackgroundColor = getCustomColor(\n isChecked ? props.activeBackgroundColor : props.inactiveBackgroundColor,\n )\n // Недоступность гасится токеном и перебивает кастомный цвет: иначе выключенный\n // переключатель остался бы таким же ярким, как рабочий.\n const backgroundColor = isDisabled.value\n ? 'var(--gr-disabled-bg)'\n : customBackgroundColor ?? defaultBackgroundColor\n\n return {\n '--gr-switch-track-bg': backgroundColor,\n '--gr-switch-track-brd': isDisabled.value\n ? 'var(--gr-disabled-brd)'\n : customBackgroundColor\n ? backgroundColor\n : isChecked\n ? 'var(--gr-primary)'\n : 'var(--gr-brd)',\n backgroundColor: 'var(--gr-switch-track-bg)',\n }\n})\n\nconst thumbClass = computed(() => grSwitchThumbClass({size: resolvedSize.value, checked: props.modelValue}))\n\nconst spinnerClass = computed(() => grSwitchSpinnerClass(resolvedSize.value))\n\nconst labelClass = computed(() => grSwitchLabelClass(resolvedSize.value, isDisabled.value))\n\nconst resolvedLoadingText = computed(() => props.loadingText ?? t('gr.switch.loading', 'Saving…'))\n\n// Выключенный переключатель не отправляется вовсе — так устроен чекбокс в HTML,\n// и сервер отличает «выкл» по отсутствию ключа.\nconst submitsValue = computed(\n () => props.modelValue && !isDisabled.value && Boolean(props.name),\n)\n\nfunction toggle(): void {\n if (isDisabled.value || isReadonly.value || props.loading) {\n return\n }\n\n const next = !props.modelValue\n emit('update:modelValue', next)\n emit('change', next)\n}\n</script>\n\n<template>\n <input\n v-if=\"submitsValue\"\n type=\"hidden\"\n :name=\"name\"\n :value=\"value\"\n :form=\"form\"\n >\n\n <button\n :id=\"fieldId\"\n ref=\"rootEl\"\n v-bind=\"$attrs\"\n type=\"button\"\n role=\"switch\"\n data-gr-switch\n :aria-checked=\"modelValue ? 'true' : 'false'\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"describedBy\"\n :aria-invalid=\"isInvalid ? 'true' : undefined\"\n :aria-required=\"isRequired ? 'true' : undefined\"\n :aria-readonly=\"isReadonly ? 'true' : undefined\"\n :aria-busy=\"loading ? 'true' : undefined\"\n :disabled=\"isDisabled\"\n :class=\"rootClass\"\n @click=\"toggle\"\n @focus=\"emit('focus', $event)\"\n @blur=\"emit('blur', $event)\"\n >\n <span\n data-testid=\"gr-switch-track\"\n data-gr-switch-track\n :class=\"trackClass\"\n :style=\"trackStyle\"\n >\n <span\n data-testid=\"gr-switch-thumb\"\n data-gr-switch-thumb\n :class=\"thumbClass\"\n aria-hidden=\"true\"\n >\n <IconLoader v-if=\"loading\" data-gr-switch-spinner :class=\"spinnerClass\" />\n </span>\n </span>\n <span\n v-if=\"$slots.default\"\n data-gr-switch-label\n :class=\"labelClass\"\n >\n <slot />\n </span>\n <span v-if=\"loading\" data-gr-switch-loading-text class=\"sr-only\">{{ resolvedLoadingText }}</span>\n </button>\n</template>\n","<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport IconLoader from '~icons/lucide/loader-circle'\n\nimport { useGrComponentSize } from '../GrConfigProvider/context'\nimport { useGrFormFieldContext } from '../GrFormField/context'\nimport { useGrFormControl } from '../../composables/useGrFormControl'\nimport { useGranularityTranslations } from '../../internal/granularityI18n'\n\nimport {\n grSwitchLabelClass,\n grSwitchRootClass,\n grSwitchSpinnerClass,\n grSwitchThumbClass,\n grSwitchTrackClass,\n type GrSwitchLabelPosition,\n type GrSwitchSize,\n} from './grSwitchStyles'\n\nexport type { GrSwitchLabelPosition, GrSwitchSize } from './grSwitchStyles'\n\n/**\n * Пропсы публичного GR-примитива «Switch».\n */\nexport interface GrSwitchProps {\n modelValue: boolean\n disabled?: boolean\n /** Только для чтения: состояние видно, но не переключается. */\n readonly?: boolean\n /** Визуальное и ARIA-состояние ошибки. */\n invalid?: boolean\n /** Обязательное поле (`aria-required`). */\n required?: boolean\n ariaLabel?: string\n size?: GrSwitchSize\n /** Сторона подписи относительно дорожки. */\n labelPosition?: GrSwitchLabelPosition\n /** Идёт сохранение: бегунок показывает спиннер, переключение заблокировано. */\n loading?: boolean\n /** i18n: что именно грузится. `aria-busy` сам по себе часть AT не объявляет. */\n loadingText?: string\n /** Имя поля для нативной отправки формы. Без него скрытое поле не рендерится. */\n name?: string\n /** Значение, уходящее в форму во включённом состоянии. */\n value?: string\n /** `id` формы, если переключатель лежит вне неё. */\n form?: string\n /** Кастомный цвет фона в активном состоянии. Если не задан — `var(--gr-primary)`. */\n activeBackgroundColor?: string\n /** Кастомный цвет фона в неактивном состоянии. Если не задан — `var(--gr-muted)`. */\n inactiveBackgroundColor?: string\n}\n\nexport interface GrSwitchEmits {\n (e: 'update:modelValue', value: boolean): void\n (e: 'change', value: boolean): void\n (e: 'focus', event: FocusEvent): void\n (e: 'blur', event: FocusEvent): void\n}\n\nconst getCustomColor = (value?: string) => value?.trim() || undefined\n\n// Скрытое поле — сосед кнопки, а не её потомок: интерактивный контент внутри\n// `<button>` невалиден. Из-за этого корень компонента — фрагмент, и атрибуты\n// потребителя надо донести до кнопки руками.\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(\n defineProps<GrSwitchProps>(),\n {\n disabled: false,\n readonly: false,\n invalid: false,\n required: false,\n ariaLabel: undefined,\n size: undefined,\n labelPosition: 'end',\n loading: false,\n loadingText: undefined,\n name: undefined,\n value: 'on',\n form: undefined,\n activeBackgroundColor: undefined,\n inactiveBackgroundColor: undefined,\n },\n)\n\n// Контекст `GrFormField`: id для `<label for>`, описание ошибкой, невалидность.\n// `<button>` — labelable-элемент, поэтому клик по подписи фокусирует переключатель.\nconst field = useGrFormFieldContext()\nconst fieldId = computed(() => field?.id.value)\nconst describedBy = computed(() => field?.describedById.value)\nconst {\n disabled: isDisabled,\n invalid: isInvalid,\n required: isRequired,\n readonly: isReadonly,\n} = useGrFormControl(() => props)\n\nconst { t } = useGranularityTranslations()\n\nconst rootEl = ref<HTMLButtonElement | null>(null)\n\nfunction focus(): void {\n rootEl.value?.focus()\n}\n\nfunction blur(): void {\n rootEl.value?.blur()\n}\n\ndefineExpose({ focus, blur })\n\n// Эффективный размер: локальный проп → `GrConfigProvider` → дефолт компонента.\nconst resolvedSize = useGrComponentSize(() => props.size, {\n component: 'GrSwitch',\n supported: ['xs', 'sm', 'md', 'lg'],\n})\n\nconst emit = defineEmits<GrSwitchEmits>()\ndefineSlots<{\n /** Подпись переключателя. */\n default?: () => any\n}>()\n\n\nconst rootClass = computed(() => grSwitchRootClass(props.labelPosition))\n\nconst trackClass = computed(() => grSwitchTrackClass(resolvedSize.value))\n\nconst trackStyle = computed(() => {\n const isChecked = props.modelValue\n const defaultBackgroundColor = isChecked ? 'var(--gr-primary)' : 'var(--gr-muted)'\n const customBackgroundColor = getCustomColor(\n isChecked ? props.activeBackgroundColor : props.inactiveBackgroundColor,\n )\n // Недоступность гасится токеном и перебивает кастомный цвет: иначе выключенный\n // переключатель остался бы таким же ярким, как рабочий.\n const backgroundColor = isDisabled.value\n ? 'var(--gr-disabled-bg)'\n : customBackgroundColor ?? defaultBackgroundColor\n\n return {\n '--gr-switch-track-bg': backgroundColor,\n '--gr-switch-track-brd': isDisabled.value\n ? 'var(--gr-disabled-brd)'\n : customBackgroundColor\n ? backgroundColor\n : isChecked\n ? 'var(--gr-primary)'\n : 'var(--gr-brd)',\n backgroundColor: 'var(--gr-switch-track-bg)',\n }\n})\n\nconst thumbClass = computed(() => grSwitchThumbClass({size: resolvedSize.value, checked: props.modelValue}))\n\nconst spinnerClass = computed(() => grSwitchSpinnerClass(resolvedSize.value))\n\nconst labelClass = computed(() => grSwitchLabelClass(resolvedSize.value, isDisabled.value))\n\nconst resolvedLoadingText = computed(() => props.loadingText ?? t('gr.switch.loading', 'Saving…'))\n\n// Выключенный переключатель не отправляется вовсе — так устроен чекбокс в HTML,\n// и сервер отличает «выкл» по отсутствию ключа.\nconst submitsValue = computed(\n () => props.modelValue && !isDisabled.value && Boolean(props.name),\n)\n\nfunction toggle(): void {\n if (isDisabled.value || isReadonly.value || props.loading) {\n return\n }\n\n const next = !props.modelValue\n emit('update:modelValue', next)\n emit('change', next)\n}\n</script>\n\n<template>\n <input\n v-if=\"submitsValue\"\n type=\"hidden\"\n :name=\"name\"\n :value=\"value\"\n :form=\"form\"\n >\n\n <button\n :id=\"fieldId\"\n ref=\"rootEl\"\n v-bind=\"$attrs\"\n type=\"button\"\n role=\"switch\"\n data-gr-switch\n :aria-checked=\"modelValue ? 'true' : 'false'\"\n :aria-label=\"ariaLabel\"\n :aria-describedby=\"describedBy\"\n :aria-invalid=\"isInvalid ? 'true' : undefined\"\n :aria-required=\"isRequired ? 'true' : undefined\"\n :aria-readonly=\"isReadonly ? 'true' : undefined\"\n :aria-busy=\"loading ? 'true' : undefined\"\n :disabled=\"isDisabled\"\n :class=\"rootClass\"\n @click=\"toggle\"\n @focus=\"emit('focus', $event)\"\n @blur=\"emit('blur', $event)\"\n >\n <span\n data-testid=\"gr-switch-track\"\n data-gr-switch-track\n :class=\"trackClass\"\n :style=\"trackStyle\"\n >\n <span\n data-testid=\"gr-switch-thumb\"\n data-gr-switch-thumb\n :class=\"thumbClass\"\n aria-hidden=\"true\"\n >\n <IconLoader v-if=\"loading\" data-gr-switch-spinner :class=\"spinnerClass\" />\n </span>\n </span>\n <span\n v-if=\"$slots.default\"\n data-gr-switch-label\n :class=\"labelClass\"\n >\n <slot />\n </span>\n <span v-if=\"loading\" data-gr-switch-loading-text class=\"sr-only\">{{ resolvedLoadingText }}</span>\n </button>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4DA,MAAM,kBAAkB,UAAmB,OAAO,KAAK,KAAK,KAAA;EAO5D,MAAM,QAAQ;EAsBd,MAAM,QAAQ,sBAAsB;EACpC,MAAM,UAAU,eAAe,OAAO,GAAG,KAAK;EAC9C,MAAM,cAAc,eAAe,OAAO,cAAc,KAAK;EAC7D,MAAM,EACJ,UAAU,YACV,SAAS,WACT,UAAU,YACV,UAAU,eACR,uBAAuB,KAAK;EAEhC,MAAM,EAAE,MAAM,2BAA2B;EAEzC,MAAM,SAAS,IAA8B,IAAI;EAEjD,SAAS,QAAc;GACrB,OAAO,OAAO,MAAM;EACtB;EAEA,SAAS,OAAa;GACpB,OAAO,OAAO,KAAK;EACrB;EAEA,SAAa;GAAE;GAAO;EAAK,CAAC;EAG5B,MAAM,eAAe,yBAAyB,MAAM,MAAM;GACxD,WAAW;GACX,WAAW;IAAC;IAAM;IAAM;IAAM;GAAI;EACpC,CAAC;EAED,MAAM,OAAO;EAOb,MAAM,YAAY,eAAe,kBAAkB,MAAM,aAAa,CAAC;EAEvE,MAAM,aAAa,eAAe,mBAAmB,aAAa,KAAK,CAAC;EAExE,MAAM,aAAa,eAAe;GAChC,MAAM,YAAY,MAAM;GACxB,MAAM,yBAAyB,YAAY,sBAAsB;GACjE,MAAM,wBAAwB,eAC1B,YAAY,MAAM,wBAAwB,MAAM,uBACpD;GAGA,MAAM,kBAAkB,WAAW,QAC7B,0BACA,yBAAyB;GAE/B,OAAO;IACL,wBAAwB;IACxB,yBAAyB,WAAW,QAC9B,2BACA,wBACI,kBACA,YACI,sBACA;IACd,iBAAiB;GACnB;EACF,CAAC;EAED,MAAM,aAAa,eAAe,mBAAmB;GAAC,MAAM,aAAa;GAAO,SAAS,MAAM;EAAU,CAAC,CAAC;EAE3G,MAAM,eAAe,eAAe,qBAAqB,aAAa,KAAK,CAAC;EAE5E,MAAM,aAAa,eAAe,mBAAmB,aAAa,OAAO,WAAW,KAAK,CAAC;EAE1F,MAAM,sBAAsB,eAAe,MAAM,eAAe,EAAE,qBAAqB,SAAS,CAAC;EAIjG,MAAM,eAAe,eACX,MAAM,cAAc,CAAC,WAAW,SAAS,QAAQ,MAAM,IAAI,CACrE;EAEA,SAAS,SAAe;GACtB,IAAI,WAAW,SAAS,WAAW,SAAS,MAAM,SAChD;GAGF,MAAM,OAAO,CAAC,MAAM;GACpB,KAAK,qBAAqB,IAAI;GAC9B,KAAK,UAAU,IAAI;EACrB;;2DAKY,aAAA,SAAA,UAAA,GADV,mBAMC,SAAA;;IAJG,MAAK;IACJ,MAAM,QAAA;IACN,OAAO,QAAA;IACP,MAAM,QAAA;4DAGX,mBA2CS,UA3CT,WA2CS;IA1CJ,IAAI,QAAA;aACD;IAAJ,KAAI;MACIA,KAAAA,QAAM;IACd,MAAK;IACL,MAAK;IACL,kBAAA;IACC,gBAAc,QAAA,aAAU,SAAA;IACxB,cAAY,QAAA;IACZ,oBAAkB,YAAA;IAClB,gBAAc,MAAA,SAAA,IAAS,SAAY,KAAA;IACnC,iBAAe,MAAA,UAAA,IAAU,SAAY,KAAA;IACrC,iBAAe,MAAA,UAAA,IAAU,SAAY,KAAA;IACrC,aAAW,QAAA,UAAO,SAAY,KAAA;IAC9B,UAAU,MAAA,UAAA;IACV,OAAO,UAAA;IACP,SAAO;IACP,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,SAAU,MAAM;IAC3B,QAAI,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,QAAS,MAAM;;IAE5B,mBAcO,QAAA;KAbH,eAAY;KACZ,wBAAA;KACC,OAAK,eAAE,WAAA,KAAU;KACjB,OAAK,eAAE,WAAA,KAAU;QAEpB,mBAOO,QAAA;KANH,eAAY;KACZ,wBAAA;KACC,OAAK,eAAE,WAAA,KAAU;KAClB,eAAY;QAEI,QAAA,WAAA,UAAA,GAAlB,YAA0E,MAAA,qBAAA,GAAA;;KAA/C,0BAAA;KAAwB,OAAK,eAAE,aAAA,KAAY;;IAIhEC,KAAAA,OAAO,WAAA,UAAA,GADjB,mBAMO,QAAA;;KAJH,wBAAA;KACC,OAAK,eAAE,WAAA,KAAU;QAEpB,WAAQ,KAAA,QAAA,SAAA,CAAA,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA;IAEE,QAAA,WAAA,UAAA,GAAZ,mBAAiG,QAAjG,YAAiG,gBAA7B,oBAAA,KAAmB,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { n as grSwitchSafelist, t as grSwitchConfig } from "../../chunks/config-
|
|
2
|
-
import { t as GrSwitch_default } from "./chunks/GrSwitch-
|
|
1
|
+
import { n as grSwitchSafelist, t as grSwitchConfig } from "../../chunks/config-BoNR7_PD.js";
|
|
2
|
+
import { t as GrSwitch_default } from "./chunks/GrSwitch-CHiIj9GT.js";
|
|
3
3
|
export { GrSwitch_default as GrSwitch, GrSwitch_default as default, grSwitchConfig, grSwitchSafelist };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { a as valueSuffixClass, i as valueRootClass, r as valuePrefixClass } from "../../../chunks/config-BFJIxE8b.js";
|
|
2
|
+
import { createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, normalizeClass, openBlock, renderSlot, toDisplayString, unref } from "vue";
|
|
3
|
+
//#region src/components/GrValue/GrValue.vue?vue&type=script&setup=true&lang.ts
|
|
4
|
+
var _hoisted_1 = { "data-gr-value-number": "" };
|
|
5
|
+
//#endregion
|
|
6
|
+
//#region src/components/GrValue/GrValue.vue
|
|
7
|
+
var GrValue_default = /* @__PURE__ */ defineComponent({
|
|
8
|
+
__name: "GrValue",
|
|
9
|
+
props: {
|
|
10
|
+
value: {},
|
|
11
|
+
prefix: {},
|
|
12
|
+
suffix: {}
|
|
13
|
+
},
|
|
14
|
+
setup(__props) {
|
|
15
|
+
return (_ctx, _cache) => {
|
|
16
|
+
return openBlock(), createElementBlock("span", {
|
|
17
|
+
"data-gr-value": "",
|
|
18
|
+
class: normalizeClass(unref(valueRootClass))
|
|
19
|
+
}, [
|
|
20
|
+
renderSlot(_ctx.$slots, "lead"),
|
|
21
|
+
__props.prefix || _ctx.$slots.prefix ? (openBlock(), createElementBlock("span", {
|
|
22
|
+
key: 0,
|
|
23
|
+
"data-gr-value-prefix": "",
|
|
24
|
+
class: normalizeClass(unref(valuePrefixClass))
|
|
25
|
+
}, [renderSlot(_ctx.$slots, "prefix", {}, () => [createTextVNode(toDisplayString(__props.prefix), 1)])], 2)) : createCommentVNode("", true),
|
|
26
|
+
createElementVNode("span", _hoisted_1, [renderSlot(_ctx.$slots, "default", {}, () => [createTextVNode(toDisplayString(__props.value), 1)])]),
|
|
27
|
+
renderSlot(_ctx.$slots, "trail"),
|
|
28
|
+
__props.suffix || _ctx.$slots.suffix ? (openBlock(), createElementBlock("span", {
|
|
29
|
+
key: 1,
|
|
30
|
+
"data-gr-value-suffix": "",
|
|
31
|
+
class: normalizeClass(unref(valueSuffixClass))
|
|
32
|
+
}, [renderSlot(_ctx.$slots, "suffix", {}, () => [createTextVNode(toDisplayString(__props.suffix), 1)])], 2)) : createCommentVNode("", true)
|
|
33
|
+
], 2);
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
//#endregion
|
|
38
|
+
export { GrValue_default as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GrValue-CZsuZ4x-.js","names":["$slots"],"sources":["../../../../src/components/GrValue/GrValue.vue","../../../../src/components/GrValue/GrValue.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { valuePrefixClass, valueRootClass, valueSuffixClass } from './grValueStyles'\n\n/**\n * Величина с приписками: префикс, значение, суффикс — и ничего больше.\n *\n * Примитив, на котором стоят `GrDelta` (величина со знаком и тоном) и\n * `GrStatistic` (величина плиткой с подписью). Сам он не форматирует число, не\n * знает про тон и не имеет своей шкалы размеров: значение приходит готовым, а\n * кегль и цвет наследуются от места, где величина стоит.\n *\n * Чем является приписка — валютой, единицей измерения или пометкой — компонент\n * не решает: оформление обеих задаётся токенами `--gr-value-*`.\n */\nexport interface GrValueProps {\n /** Готовое к показу значение. Не форматируется: «2 ч 15 мин» и «—» тоже величины. */\n value?: string | number | null\n /** Приписка перед значением: валюта, знак приближения. */\n prefix?: string\n /** Приписка после значения: единица измерения, валюта справа. */\n suffix?: string\n}\n\ndefineProps<GrValueProps>()\n\ndefineSlots<{\n /** Значение вместо пропа. */\n default?: () => unknown\n /** Приписка перед значением. */\n prefix?: () => unknown\n /** Приписка после значения. */\n suffix?: () => unknown\n /**\n * Перед префиксом: знак величины у `GrDelta`, стрелка направления.\n * Слотом, а не пропом, — разметка там принадлежит потребителю.\n */\n lead?: () => unknown\n /** После значения: скрытый узел для диктора у `GrStatistic`. */\n trail?: () => unknown\n}>()\n</script>\n\n<template>\n <span data-gr-value :class=\"valueRootClass\">\n <slot name=\"lead\" />\n\n <span v-if=\"prefix || $slots.prefix\" data-gr-value-prefix :class=\"valuePrefixClass\">\n <slot name=\"prefix\">{{ prefix }}</slot>\n </span>\n\n <span data-gr-value-number>\n <slot>{{ value }}</slot>\n </span>\n\n <slot name=\"trail\" />\n\n <span v-if=\"suffix || $slots.suffix\" data-gr-value-suffix :class=\"valueSuffixClass\">\n <slot name=\"suffix\">{{ suffix }}</slot>\n </span>\n </span>\n</template>\n","<script setup lang=\"ts\">\nimport { valuePrefixClass, valueRootClass, valueSuffixClass } from './grValueStyles'\n\n/**\n * Величина с приписками: префикс, значение, суффикс — и ничего больше.\n *\n * Примитив, на котором стоят `GrDelta` (величина со знаком и тоном) и\n * `GrStatistic` (величина плиткой с подписью). Сам он не форматирует число, не\n * знает про тон и не имеет своей шкалы размеров: значение приходит готовым, а\n * кегль и цвет наследуются от места, где величина стоит.\n *\n * Чем является приписка — валютой, единицей измерения или пометкой — компонент\n * не решает: оформление обеих задаётся токенами `--gr-value-*`.\n */\nexport interface GrValueProps {\n /** Готовое к показу значение. Не форматируется: «2 ч 15 мин» и «—» тоже величины. */\n value?: string | number | null\n /** Приписка перед значением: валюта, знак приближения. */\n prefix?: string\n /** Приписка после значения: единица измерения, валюта справа. */\n suffix?: string\n}\n\ndefineProps<GrValueProps>()\n\ndefineSlots<{\n /** Значение вместо пропа. */\n default?: () => unknown\n /** Приписка перед значением. */\n prefix?: () => unknown\n /** Приписка после значения. */\n suffix?: () => unknown\n /**\n * Перед префиксом: знак величины у `GrDelta`, стрелка направления.\n * Слотом, а не пропом, — разметка там принадлежит потребителю.\n */\n lead?: () => unknown\n /** После значения: скрытый узел для диктора у `GrStatistic`. */\n trail?: () => unknown\n}>()\n</script>\n\n<template>\n <span data-gr-value :class=\"valueRootClass\">\n <slot name=\"lead\" />\n\n <span v-if=\"prefix || $slots.prefix\" data-gr-value-prefix :class=\"valuePrefixClass\">\n <slot name=\"prefix\">{{ prefix }}</slot>\n </span>\n\n <span data-gr-value-number>\n <slot>{{ value }}</slot>\n </span>\n\n <slot name=\"trail\" />\n\n <span v-if=\"suffix || $slots.suffix\" data-gr-value-suffix :class=\"valueSuffixClass\">\n <slot name=\"suffix\">{{ suffix }}</slot>\n </span>\n </span>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;uBA2CE,mBAgBO,QAAA;IAhBD,iBAAA;IAAe,OAAK,eAAE,MAAA,cAAA,CAAc;;IACxC,WAAoB,KAAA,QAAA,MAAA;IAER,QAAA,UAAUA,KAAAA,OAAO,UAAA,UAAA,GAA7B,mBAEO,QAAA;;KAF8B,wBAAA;KAAsB,OAAK,eAAE,MAAA,gBAAA,CAAgB;QAChF,WAAuC,KAAA,QAAA,UAAA,CAAA,SAAA,CAAA,gBAAA,gBAAhB,QAAA,MAAM,GAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA;IAG/B,mBAEO,QAFP,YAEO,CADL,WAAwB,KAAA,QAAA,WAAA,CAAA,SAAA,CAAA,gBAAA,gBAAf,QAAA,KAAK,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IAGhB,WAAqB,KAAA,QAAA,OAAA;IAET,QAAA,UAAUA,KAAAA,OAAO,UAAA,UAAA,GAA7B,mBAEO,QAAA;;KAF8B,wBAAA;KAAsB,OAAK,eAAE,MAAA,gBAAA,CAAgB;QAChF,WAAuC,KAAA,QAAA,UAAA,CAAA,SAAA,CAAA,gBAAA,gBAAhB,QAAA,MAAM,GAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,KAAA,mBAAA,IAAA,IAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as ensurePortalRoot } from "../chunks/portalRoot-CVhCgdG6.js";
|
|
2
2
|
import { n as markInert, t as inertableOutside } from "../chunks/inert-DIHCCn_1.js";
|
|
3
|
-
import { t as GrLoading_default } from "../components/GrLoading/chunks/GrLoading-
|
|
3
|
+
import { t as GrLoading_default } from "../components/GrLoading/chunks/GrLoading-DeBFTvFX.js";
|
|
4
4
|
import { createVNode, render } from "vue";
|
|
5
5
|
//#region src/directives/loading.ts
|
|
6
6
|
function isHTMLElement(value) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as granularityDefaultThemes, i as granularityComponentConfigs, n as GRANULARITY_PROVIDER_ID, o as granularityThemeNames, r as createGranularityProvider, t as granularityProvider } from "./chunks/granular-provider-
|
|
1
|
+
import { a as granularityDefaultThemes, i as granularityComponentConfigs, n as GRANULARITY_PROVIDER_ID, o as granularityThemeNames, r as createGranularityProvider, t as granularityProvider } from "./chunks/granular-provider-Dr2PKgl1.js";
|
|
2
2
|
export { GRANULARITY_PROVIDER_ID, createGranularityProvider, granularityProvider as default, granularityProvider, granularityComponentConfigs, granularityDefaultThemes, granularityThemeNames };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as granularityDefaultThemes, i as granularityComponentConfigs, n as GRANULARITY_PROVIDER_ID, o as granularityThemeNames, r as createGranularityProvider, t as granularityProvider } from "./chunks/granular-provider-
|
|
1
|
+
import { a as granularityDefaultThemes, i as granularityComponentConfigs, n as GRANULARITY_PROVIDER_ID, o as granularityThemeNames, r as createGranularityProvider, t as granularityProvider } from "./chunks/granular-provider-Dr2PKgl1.js";
|
|
2
2
|
export { GRANULARITY_PROVIDER_ID, createGranularityProvider, granularityProvider as default, granularityProvider, granularityComponentConfigs, granularityDefaultThemes, granularityThemeNames };
|
package/dist/index.js
CHANGED
|
@@ -11,7 +11,7 @@ import { p as FileValidationError } from "./chunks/fileValidation-D5TFBhbv.js";
|
|
|
11
11
|
import { vDropzone } from "./directives/dropzone.js";
|
|
12
12
|
import { vHotkey } from "./directives/hotkey.js";
|
|
13
13
|
import { t as GrIcon_default } from "./components/GrIcon/chunks/GrIcon-bQwtZtYT.js";
|
|
14
|
-
import { t as GrLoading_default } from "./components/GrLoading/chunks/GrLoading-
|
|
14
|
+
import { t as GrLoading_default } from "./components/GrLoading/chunks/GrLoading-DeBFTvFX.js";
|
|
15
15
|
import { createLoading, vLoading } from "./directives/loading.js";
|
|
16
16
|
import { useFloating } from "./composables/useFloating.js";
|
|
17
17
|
import { useOverlayLayer } from "./composables/useOverlayLayer.js";
|
|
@@ -42,8 +42,8 @@ import { t as grButtonConfig } from "./chunks/config-B84z1aos.js";
|
|
|
42
42
|
import { t as GrButtonGroup_default } from "./components/GrButtonGroup/chunks/GrButtonGroup-CKyiAV8K.js";
|
|
43
43
|
import { t as grButtonGroupConfig } from "./chunks/config-DBmdgoVf.js";
|
|
44
44
|
import "./components/GrButtonGroup/index.js";
|
|
45
|
-
import { n as grCardSafelist, t as grCardConfig } from "./chunks/config-
|
|
46
|
-
import { t as GrCard_default } from "./components/GrCard/chunks/GrCard-
|
|
45
|
+
import { n as grCardSafelist, t as grCardConfig } from "./chunks/config-DYgfMrIF.js";
|
|
46
|
+
import { t as GrCard_default } from "./components/GrCard/chunks/GrCard-gI2wA8ZZ.js";
|
|
47
47
|
import { t as GrCheckbox_default } from "./components/GrCheckbox/chunks/GrCheckbox-CEcHIsXM.js";
|
|
48
48
|
import { n as grCheckboxSafelist, t as grCheckboxConfig } from "./chunks/config-esdviAPL.js";
|
|
49
49
|
import "./components/GrCheckbox/index.js";
|
|
@@ -53,7 +53,7 @@ import { useAnnouncer } from "./composables/useAnnouncer.js";
|
|
|
53
53
|
import { t as GrCodeBlock_default } from "./components/GrCodeBlock/chunks/GrCodeBlock-BmXCLgLS.js";
|
|
54
54
|
import { n as grCodeBlockSafelist, t as grCodeBlockConfig } from "./chunks/config-B_qi4Fma.js";
|
|
55
55
|
import { n as grCollapseSafelist, t as grCollapseConfig } from "./chunks/config-DU2DNSRx.js";
|
|
56
|
-
import { n as GrCollapse_default, t as GrCollapseItem_default } from "./components/GrCollapse/chunks/GrCollapse-
|
|
56
|
+
import { n as GrCollapse_default, t as GrCollapseItem_default } from "./components/GrCollapse/chunks/GrCollapse-DIHEiTju.js";
|
|
57
57
|
import { n as grIconSafelist, t as grIconConfig } from "./chunks/config-Cp0DE0GH.js";
|
|
58
58
|
import { t as GrInput_default } from "./components/GrInput/chunks/GrInput-Bb_pxqpT.js";
|
|
59
59
|
import { useFocusTrap } from "./composables/useFocusTrap.js";
|
|
@@ -78,11 +78,13 @@ import { t as useDragSort } from "./chunks/useDragSort-0l47h4yb.js";
|
|
|
78
78
|
import { useRovingFocus } from "./composables/useRovingFocus.js";
|
|
79
79
|
import { t as GrDataTable_default } from "./components/GrDataTable/chunks/GrDataTable-B5MmZFUg.js";
|
|
80
80
|
import { n as grDataTableSafelist, t as grDataTableConfig } from "./chunks/config-BC8d_smz.js";
|
|
81
|
-
import { t as GrDelta_default } from "./components/GrDelta/chunks/GrDelta-
|
|
81
|
+
import { t as GrDelta_default } from "./components/GrDelta/chunks/GrDelta-NE5HhXoo.js";
|
|
82
|
+
import { n as grValueSafelist, t as grValueConfig } from "./chunks/config-BFJIxE8b.js";
|
|
83
|
+
import { t as GrValue_default } from "./components/GrValue/chunks/GrValue-CZsuZ4x-.js";
|
|
82
84
|
import { n as deltaTone, t as deltaDirection } from "./chunks/deltaTone-B5OoS1vo.js";
|
|
83
|
-
import { n as grDeltaSafelist, t as grDeltaConfig } from "./chunks/config-
|
|
84
|
-
import { n as grDescriptionListSafelist, t as grDescriptionListConfig } from "./chunks/config-
|
|
85
|
-
import { t as GrDescriptionList_default } from "./components/GrDescriptionList/chunks/GrDescriptionList-
|
|
85
|
+
import { n as grDeltaSafelist, t as grDeltaConfig } from "./chunks/config-BIa3ilQm.js";
|
|
86
|
+
import { n as grDescriptionListSafelist, t as grDescriptionListConfig } from "./chunks/config-rkcKArZQ2.js";
|
|
87
|
+
import { t as GrDescriptionList_default } from "./components/GrDescriptionList/chunks/GrDescriptionList-C6Pxjjbh.js";
|
|
86
88
|
import { t as grDialogSafelist } from "./chunks/safelist-CkF4v7DC.js";
|
|
87
89
|
import "./components/GrDialog/index.js";
|
|
88
90
|
import { n as useGrFormContext } from "./chunks/context-Bfrgsluh.js";
|
|
@@ -97,12 +99,12 @@ import { t as GrDivider_default } from "./components/GrDivider/chunks/GrDivider-
|
|
|
97
99
|
import { n as grDrawerSafelist, t as grDrawerConfig } from "./chunks/config-D94Z9po5.js";
|
|
98
100
|
import { t as GrDrawer_default } from "./components/GrDrawer/chunks/GrDrawer-C3zAg2tG.js";
|
|
99
101
|
import { t as GrDropdown_default } from "./components/GrDropdown/chunks/GrDropdown-BSfFOcDx.js";
|
|
100
|
-
import { n as grDropdownSafelist, t as grDropdownConfig } from "./chunks/config-
|
|
102
|
+
import { n as grDropdownSafelist, t as grDropdownConfig } from "./chunks/config-BViooYNv2.js";
|
|
101
103
|
import "./components/GrDropdown/index.js";
|
|
102
104
|
import { n as grDropdownMenuSafelist, t as grDropdownMenuConfig } from "./chunks/config-C5mO5DYZ.js";
|
|
103
105
|
import { a as GrDropdownMenuItem_default, c as GrDropdownMenuDivider_default, i as GrDropdownMenuList_default, n as GrDropdownMenuColumn_default, o as GrDropdownMenuGroup_default, r as GrDropdownMenu_default, s as GrDropdownMenuHeader_default, t as GrDropdownMenuColumns_default } from "./components/GrDropdownMenu/chunks/GrDropdownMenu-DyS6dWDp.js";
|
|
104
|
-
import { t as GrEmptyState_default } from "./components/GrEmptyState/chunks/GrEmptyState-
|
|
105
|
-
import { n as grEmptyStateSafelist, t as grEmptyStateConfig } from "./chunks/config-
|
|
106
|
+
import { t as GrEmptyState_default } from "./components/GrEmptyState/chunks/GrEmptyState-BGUX8O0U.js";
|
|
107
|
+
import { n as grEmptyStateSafelist, t as grEmptyStateConfig } from "./chunks/config-vSji8w902.js";
|
|
106
108
|
import { n as fileKindOf, r as isPreviewableKind, t as GrFilePreview_default } from "./components/GrFilePreview/chunks/GrFilePreview-D0Bt-0nn.js";
|
|
107
109
|
import { n as grFilePreviewSafelist, t as grFilePreviewConfig } from "./chunks/config-QJ54_fcM.js";
|
|
108
110
|
import { t as GrProgressBar_default } from "./components/GrProgressBar/chunks/GrProgressBar-hszUOC8f.js";
|
|
@@ -130,7 +132,7 @@ import "./components/GrKbd/index.js";
|
|
|
130
132
|
import { n as grLinkSafelist, t as grLinkConfig } from "./chunks/config-Cl4ST6Qd.js";
|
|
131
133
|
import "./components/GrLink/index.js";
|
|
132
134
|
import { n as grListSafelist, t as grListConfig } from "./chunks/config-CKULiuvc.js";
|
|
133
|
-
import { n as GrList_default, t as GrListItem_default } from "./components/GrList/chunks/GrList-
|
|
135
|
+
import { n as GrList_default, t as GrListItem_default } from "./components/GrList/chunks/GrList-DAtzVIHh.js";
|
|
134
136
|
import { n as grLoadingSafelist, t as grLoadingConfig } from "./chunks/config-CjnbevbD.js";
|
|
135
137
|
import "./components/GrLoading/index.js";
|
|
136
138
|
import { n as grModalSafelist, t as grModalConfig } from "./chunks/config-BtXRpAtq.js";
|
|
@@ -142,7 +144,7 @@ import { t as GrNumberInput_default } from "./components/GrNumberInput/chunks/Gr
|
|
|
142
144
|
import { t as GrSelect_default } from "./components/GrSelect/chunks/GrSelect-CaGuyvtb.js";
|
|
143
145
|
import { n as grPaginationSafelist, t as grPaginationConfig } from "./chunks/config-DSJY6aEl.js";
|
|
144
146
|
import { t as GrPagination_default } from "./components/GrPagination/chunks/GrPagination-GtGtSMJG.js";
|
|
145
|
-
import { n as grPopoverSafelist, t as grPopoverConfig } from "./chunks/config-
|
|
147
|
+
import { n as grPopoverSafelist, t as grPopoverConfig } from "./chunks/config-BSyiFlbi2.js";
|
|
146
148
|
import "./components/GrPopover/index.js";
|
|
147
149
|
import { n as grProgressBarSafelist, r as GR_TONES, t as grProgressBarConfig } from "./chunks/config-CQzGyi1C.js";
|
|
148
150
|
import "./components/GrProgressBar/index.js";
|
|
@@ -158,8 +160,8 @@ import { t as grRadioGroupConfig } from "./chunks/config-QaIc_gRa.js";
|
|
|
158
160
|
import { n as grRatingSafelist, t as grRatingConfig } from "./chunks/config-Baj7Wvx-.js";
|
|
159
161
|
import { t as GrRating_default } from "./components/GrRating/chunks/GrRating-BSEtaibx.js";
|
|
160
162
|
import { n as GrFormErrorBanner_default, r as GrUploadErrorBanner_default, t as useResponseError } from "./components/GrResponseErrorBanner/chunks/GrResponseErrorBanner-CgfAwlg3.js";
|
|
163
|
+
import { n as titleWhenTruncated, t as GrSegmented_default } from "./components/GrSegmented/chunks/GrSegmented-DKpo3cnC.js";
|
|
161
164
|
import { n as grSegmentedSafelist, t as grSegmentedConfig } from "./chunks/config-BEVBsvni2.js";
|
|
162
|
-
import { t as GrSegmented_default } from "./components/GrSegmented/chunks/GrSegmented-D1mjxF_O.js";
|
|
163
165
|
import { n as grSelectSafelist, t as grSelectConfig } from "./chunks/config-Cwd3yjRw.js";
|
|
164
166
|
import "./components/GrSelect/index.js";
|
|
165
167
|
import { n as grSidebarSafelist, t as grSidebarConfig } from "./chunks/config-BfsBepkH2.js";
|
|
@@ -169,13 +171,13 @@ import "./components/GrSkeleton/index.js";
|
|
|
169
171
|
import { n as grSliderSafelist, t as grSliderConfig } from "./chunks/config-T3qdQBgU2.js";
|
|
170
172
|
import "./components/GrSlider/index.js";
|
|
171
173
|
import { n as grSortableListSafelist, t as grSortableListConfig } from "./chunks/config-DAX8Deh12.js";
|
|
172
|
-
import { t as GrSortableList_default } from "./components/GrSortableList/chunks/GrSortableList-
|
|
174
|
+
import { t as GrSortableList_default } from "./components/GrSortableList/chunks/GrSortableList-BmcUVAMb.js";
|
|
173
175
|
import { n as grSplitterSafelist, t as grSplitterConfig } from "./chunks/config-BE6n20np.js";
|
|
174
176
|
import { n as sizeFromPointer, t as GrSplitter_default } from "./components/GrSplitter/chunks/GrSplitter-B9_JrT7q.js";
|
|
175
|
-
import { n as formatStatisticValue, t as GrStatistic_default } from "./components/GrStatistic/chunks/GrStatistic-
|
|
176
|
-
import { n as grStatisticSafelist, t as grStatisticConfig } from "./chunks/config-
|
|
177
|
-
import { n as grSwitchSafelist, t as grSwitchConfig } from "./chunks/config-
|
|
178
|
-
import { t as GrSwitch_default } from "./components/GrSwitch/chunks/GrSwitch-
|
|
177
|
+
import { n as formatStatisticValue, t as GrStatistic_default } from "./components/GrStatistic/chunks/GrStatistic-BJQv5aOS.js";
|
|
178
|
+
import { n as grStatisticSafelist, t as grStatisticConfig } from "./chunks/config-C8tVRv8i.js";
|
|
179
|
+
import { n as grSwitchSafelist, t as grSwitchConfig } from "./chunks/config-BoNR7_PD.js";
|
|
180
|
+
import { t as GrSwitch_default } from "./components/GrSwitch/chunks/GrSwitch-CHiIj9GT.js";
|
|
179
181
|
import { n as grTableSafelist, t as grTableConfig } from "./chunks/config-WTNhdh6T.js";
|
|
180
182
|
import "./components/GrTable/index.js";
|
|
181
183
|
import { n as GrTabPanels_default, t as GrTabPanel_default } from "./components/GrTabPanels/chunks/GrTabPanels-AJt1w1XC.js";
|
|
@@ -197,4 +199,4 @@ import { t as GrTreeSelect_default } from "./components/GrTreeSelect/chunks/GrTr
|
|
|
197
199
|
import "./composables/useGrComponentConfig.js";
|
|
198
200
|
import "./composables/useGranularityTranslations.js";
|
|
199
201
|
import { GRANULARITY_THEME_STATE, granularityThemePlugin, initThemeEarly, useTheme } from "./composables/useTheme.js";
|
|
200
|
-
export { FileValidationError, GRANULARITY_THEME_STATE, GRANULARITY_TOAST_STATE, GR_KBD_TOKENS, GR_TONES, GrAlert_default as GrAlert, GrAutocomplete_default as GrAutocomplete, GrAvatar_default as GrAvatar, GrAvatarGroup_default as GrAvatarGroup, GrBadge_default as GrBadge, GrBadgeWrap_default as GrBadgeWrap, GrBottomNav_default as GrBottomNav, GrBreadcrumbs_default as GrBreadcrumbs, GrButton_default as GrButton, GrButtonGroup_default as GrButtonGroup, GrCard_default as GrCard, GrCheckbox_default as GrCheckbox, GrCheckboxGroup_default as GrCheckboxGroup, GrCodeBlock_default as GrCodeBlock, GrCollapse_default as GrCollapse, GrCollapseItem_default as GrCollapseItem, GrColorPicker_default as GrColorPicker, GrCommandPalette_default as GrCommandPalette, GrConfigProvider_default as GrConfigProvider, GrConfirmDialog_default as GrConfirmDialog, GrDataTable_default as GrDataTable, GrDelta_default as GrDelta, GrDescriptionList_default as GrDescriptionList, GrDialog_default as GrDialog, GrDialogCloseButton_default as GrDialogCloseButton, GrDialogFooter_default as GrDialogFooter, GrDialogHeader_default as GrDialogHeader, GrDialogServiceHost_default as GrDialogServiceHost, GrDivider_default as GrDivider, GrDrawer_default as GrDrawer, GrDropdown_default as GrDropdown, GrDropdownMenu_default as GrDropdownMenu, GrDropdownMenuColumn_default as GrDropdownMenuColumn, GrDropdownMenuColumns_default as GrDropdownMenuColumns, GrDropdownMenuDivider_default as GrDropdownMenuDivider, GrDropdownMenuGroup_default as GrDropdownMenuGroup, GrDropdownMenuHeader_default as GrDropdownMenuHeader, GrDropdownMenuItem_default as GrDropdownMenuItem, GrDropdownMenuList_default as GrDropdownMenuList, GrEmptyState_default as GrEmptyState, GrFilePreview_default as GrFilePreview, GrFileUpload_default as GrFileUpload, GrForm_default as GrForm, GrFormErrorBanner_default as GrFormErrorBanner, GrFormField_default as GrFormField, GrFormFile_default as GrFormFile, GrFormSection_default as GrFormSection, GrIcon_default as GrIcon, GrImageViewer_default as GrImageViewer, GrInput_default as GrInput, GrInputTag_default as GrInputTag, GrJsonViewer_default as GrJsonViewer, GrKbd_default as GrKbd, GrLink_default as GrLink, GrList_default as GrList, GrListItem_default as GrListItem, GrLoading_default as GrLoading, GrModal_default as GrModal, GrNavbar_default as GrNavbar, GrNumberInput_default as GrNumberInput, GrPagination_default as GrPagination, GrPopover_default as GrPopover, GrProgressBar_default as GrProgressBar, GrProgressCircle_default as GrProgressCircle, GrPromptDialog_default as GrPromptDialog, GrRadio_default as GrRadio, GrRadioGroup_default as GrRadioGroup, GrRating_default as GrRating, GrResponseErrorBanner_default as GrResponseErrorBanner, GrSegmented_default as GrSegmented, GrSelect_default as GrSelect, GrSidebar_default as GrSidebar, GrSidebarGroup_default as GrSidebarGroup, GrSidebarItem_default as GrSidebarItem, GrSkeleton_default as GrSkeleton, GrSlider_default as GrSlider, GrSortableList_default as GrSortableList, GrSplitter_default as GrSplitter, GrStatistic_default as GrStatistic, GrSwitch_default as GrSwitch, GrTabPanel_default as GrTabPanel, GrTabPanels_default as GrTabPanels, GrTable_default as GrTable, GrTabs_default as GrTabs, GrTextarea_default as GrTextarea, GrTimeline_default as GrTimeline, GrTimelineItem_default as GrTimelineItem, GrToaster_default as GrToaster, GrTooltip_default as GrTooltip, GrTree_default as GrTree, GrTreeSelect_default as GrTreeSelect, GrUploadAbortError, GrUploadErrorBanner_default as GrUploadErrorBanner, GrUploadHttpError, coreResponseErrorParsers, createGrFormMessageResolver, createLoading, createResponseErrorClassifier, deltaDirection, deltaTone, dialogService, extendDefaultParsers, fileKindOf, findKbdToken, formatBadgeValue, formatStatisticValue, grAlertConfig, grAutocompleteConfig, grAutocompleteSafelist, grAvatarConfig, grAvatarSafelist, grBadgeConfig, grBadgeSafelist, grBadgeWrapConfig, grBadgeWrapSafelist, grBottomNavConfig, grBottomNavSafelist, grBreadcrumbsConfig, grBreadcrumbsSafelist, grButtonConfig, grButtonGroupConfig, grButtonSafelist, grCardConfig, grCardSafelist, grCheckboxConfig, grCheckboxGroupConfig, grCheckboxSafelist, grCodeBlockConfig, grCodeBlockSafelist, grCollapseConfig, grCollapseSafelist, grColorPickerConfig, grColorPickerSafelist, grCommandPaletteConfig, grCommandPaletteSafelist, grConfigProviderConfig, grConfirmDialogConfig, grDataTableConfig, grDataTableSafelist, grDeltaConfig, grDeltaSafelist, grDescriptionListConfig, grDescriptionListSafelist, grDialogSafelist, grDialogServiceConfig, grDividerConfig, grDividerSafelist, grDrawerConfig, grDrawerSafelist, grDropdownConfig, grDropdownMenuConfig, grDropdownMenuSafelist, grDropdownSafelist, grEmptyStateConfig, grEmptyStateSafelist, grFilePreviewConfig, grFilePreviewSafelist, grFileUploadConfig, grFileUploadSafelist, grFormConfig, grFormFieldConfig, grFormFieldSafelist, grFormFileConfig, grFormFileSafelist, grFormSectionConfig, grFormSectionSafelist, grIconConfig, grIconSafelist, grImageViewerConfig, grImageViewerSafelist, grInputConfig, grInputSafelist, grInputTagConfig, grInputTagSafelist, grJsonViewerConfig, grJsonViewerSafelist, grKbdConfig, grKbdSafelist, grLinkConfig, grLinkSafelist, grListConfig, grListSafelist, grLoadingConfig, grLoadingSafelist, grModalConfig, grModalSafelist, grNavbarConfig, grNavbarSafelist, grNumberInputConfig, grNumberInputSafelist, grPaginationConfig, grPaginationSafelist, grPopoverConfig, grPopoverSafelist, grProgressBarConfig, grProgressBarSafelist, grProgressCircleConfig, grProgressCircleSafelist, grPromptDialogConfig, grRadioConfig, grRadioGroupConfig, grRadioSafelist, grRatingConfig, grRatingSafelist, grSegmentedConfig, grSegmentedSafelist, grSelectConfig, grSelectSafelist, grSidebarConfig, grSidebarSafelist, grSkeletonConfig, grSliderConfig, grSliderSafelist, grSortableListConfig, grSortableListSafelist, grSplitterConfig, grSplitterSafelist, grStatisticConfig, grStatisticSafelist, grSwitchConfig, grSwitchSafelist, grTabPanelsConfig, grTableConfig, grTableSafelist, grTabsConfig, grTabsSafelist, grTextareaConfig, grTextareaSafelist, grTimelineConfig, grTimelineSafelist, grToasterConfig, grToasterSafelist, grTooltipConfig, grTooltipSafelist, grTreeConfig, grTreeSafelist, grTreeSelectConfig, grTreeSelectSafelist, granularityDialogServicePlugin, granularityThemePlugin, granularityToastPlugin, initThemeEarly, initialsFrom, isPreviewableKind, normalizeError, resolveBreadcrumbsFit, resolveBreadcrumbsLayout, resolveGrConfig, runFieldRules, sizeFromPointer, teardownDialogService, useAnnouncer, useComboboxNavigation, useDialogService, useDismissible, useDragGesture, useDragSort, useFloating, useFocusTrap, useGrButtonGroup, useGrComponentDefaults, useGrComponentProp, useGrComponentSize, useGrConfig, useGrFormContext, useGrFormControl, useGrFormFieldContext, useGrThemeAttrs, useGranularityTranslations, useOverlayLayer, usePortalTarget, useResponseError, useRovingFocus, useTheme, useToast, useVirtualList, vAutofocus, vAutosize, vClickOutside, vDropzone, vHotkey, vLoading };
|
|
202
|
+
export { FileValidationError, GRANULARITY_THEME_STATE, GRANULARITY_TOAST_STATE, GR_KBD_TOKENS, GR_TONES, GrAlert_default as GrAlert, GrAutocomplete_default as GrAutocomplete, GrAvatar_default as GrAvatar, GrAvatarGroup_default as GrAvatarGroup, GrBadge_default as GrBadge, GrBadgeWrap_default as GrBadgeWrap, GrBottomNav_default as GrBottomNav, GrBreadcrumbs_default as GrBreadcrumbs, GrButton_default as GrButton, GrButtonGroup_default as GrButtonGroup, GrCard_default as GrCard, GrCheckbox_default as GrCheckbox, GrCheckboxGroup_default as GrCheckboxGroup, GrCodeBlock_default as GrCodeBlock, GrCollapse_default as GrCollapse, GrCollapseItem_default as GrCollapseItem, GrColorPicker_default as GrColorPicker, GrCommandPalette_default as GrCommandPalette, GrConfigProvider_default as GrConfigProvider, GrConfirmDialog_default as GrConfirmDialog, GrDataTable_default as GrDataTable, GrDelta_default as GrDelta, GrDescriptionList_default as GrDescriptionList, GrDialog_default as GrDialog, GrDialogCloseButton_default as GrDialogCloseButton, GrDialogFooter_default as GrDialogFooter, GrDialogHeader_default as GrDialogHeader, GrDialogServiceHost_default as GrDialogServiceHost, GrDivider_default as GrDivider, GrDrawer_default as GrDrawer, GrDropdown_default as GrDropdown, GrDropdownMenu_default as GrDropdownMenu, GrDropdownMenuColumn_default as GrDropdownMenuColumn, GrDropdownMenuColumns_default as GrDropdownMenuColumns, GrDropdownMenuDivider_default as GrDropdownMenuDivider, GrDropdownMenuGroup_default as GrDropdownMenuGroup, GrDropdownMenuHeader_default as GrDropdownMenuHeader, GrDropdownMenuItem_default as GrDropdownMenuItem, GrDropdownMenuList_default as GrDropdownMenuList, GrEmptyState_default as GrEmptyState, GrFilePreview_default as GrFilePreview, GrFileUpload_default as GrFileUpload, GrForm_default as GrForm, GrFormErrorBanner_default as GrFormErrorBanner, GrFormField_default as GrFormField, GrFormFile_default as GrFormFile, GrFormSection_default as GrFormSection, GrIcon_default as GrIcon, GrImageViewer_default as GrImageViewer, GrInput_default as GrInput, GrInputTag_default as GrInputTag, GrJsonViewer_default as GrJsonViewer, GrKbd_default as GrKbd, GrLink_default as GrLink, GrList_default as GrList, GrListItem_default as GrListItem, GrLoading_default as GrLoading, GrModal_default as GrModal, GrNavbar_default as GrNavbar, GrNumberInput_default as GrNumberInput, GrPagination_default as GrPagination, GrPopover_default as GrPopover, GrProgressBar_default as GrProgressBar, GrProgressCircle_default as GrProgressCircle, GrPromptDialog_default as GrPromptDialog, GrRadio_default as GrRadio, GrRadioGroup_default as GrRadioGroup, GrRating_default as GrRating, GrResponseErrorBanner_default as GrResponseErrorBanner, GrSegmented_default as GrSegmented, GrSelect_default as GrSelect, GrSidebar_default as GrSidebar, GrSidebarGroup_default as GrSidebarGroup, GrSidebarItem_default as GrSidebarItem, GrSkeleton_default as GrSkeleton, GrSlider_default as GrSlider, GrSortableList_default as GrSortableList, GrSplitter_default as GrSplitter, GrStatistic_default as GrStatistic, GrSwitch_default as GrSwitch, GrTabPanel_default as GrTabPanel, GrTabPanels_default as GrTabPanels, GrTable_default as GrTable, GrTabs_default as GrTabs, GrTextarea_default as GrTextarea, GrTimeline_default as GrTimeline, GrTimelineItem_default as GrTimelineItem, GrToaster_default as GrToaster, GrTooltip_default as GrTooltip, GrTree_default as GrTree, GrTreeSelect_default as GrTreeSelect, GrUploadAbortError, GrUploadErrorBanner_default as GrUploadErrorBanner, GrUploadHttpError, GrValue_default as GrValue, coreResponseErrorParsers, createGrFormMessageResolver, createLoading, createResponseErrorClassifier, deltaDirection, deltaTone, dialogService, extendDefaultParsers, fileKindOf, findKbdToken, formatBadgeValue, formatStatisticValue, grAlertConfig, grAutocompleteConfig, grAutocompleteSafelist, grAvatarConfig, grAvatarSafelist, grBadgeConfig, grBadgeSafelist, grBadgeWrapConfig, grBadgeWrapSafelist, grBottomNavConfig, grBottomNavSafelist, grBreadcrumbsConfig, grBreadcrumbsSafelist, grButtonConfig, grButtonGroupConfig, grButtonSafelist, grCardConfig, grCardSafelist, grCheckboxConfig, grCheckboxGroupConfig, grCheckboxSafelist, grCodeBlockConfig, grCodeBlockSafelist, grCollapseConfig, grCollapseSafelist, grColorPickerConfig, grColorPickerSafelist, grCommandPaletteConfig, grCommandPaletteSafelist, grConfigProviderConfig, grConfirmDialogConfig, grDataTableConfig, grDataTableSafelist, grDeltaConfig, grDeltaSafelist, grDescriptionListConfig, grDescriptionListSafelist, grDialogSafelist, grDialogServiceConfig, grDividerConfig, grDividerSafelist, grDrawerConfig, grDrawerSafelist, grDropdownConfig, grDropdownMenuConfig, grDropdownMenuSafelist, grDropdownSafelist, grEmptyStateConfig, grEmptyStateSafelist, grFilePreviewConfig, grFilePreviewSafelist, grFileUploadConfig, grFileUploadSafelist, grFormConfig, grFormFieldConfig, grFormFieldSafelist, grFormFileConfig, grFormFileSafelist, grFormSectionConfig, grFormSectionSafelist, grIconConfig, grIconSafelist, grImageViewerConfig, grImageViewerSafelist, grInputConfig, grInputSafelist, grInputTagConfig, grInputTagSafelist, grJsonViewerConfig, grJsonViewerSafelist, grKbdConfig, grKbdSafelist, grLinkConfig, grLinkSafelist, grListConfig, grListSafelist, grLoadingConfig, grLoadingSafelist, grModalConfig, grModalSafelist, grNavbarConfig, grNavbarSafelist, grNumberInputConfig, grNumberInputSafelist, grPaginationConfig, grPaginationSafelist, grPopoverConfig, grPopoverSafelist, grProgressBarConfig, grProgressBarSafelist, grProgressCircleConfig, grProgressCircleSafelist, grPromptDialogConfig, grRadioConfig, grRadioGroupConfig, grRadioSafelist, grRatingConfig, grRatingSafelist, grSegmentedConfig, grSegmentedSafelist, grSelectConfig, grSelectSafelist, grSidebarConfig, grSidebarSafelist, grSkeletonConfig, grSliderConfig, grSliderSafelist, grSortableListConfig, grSortableListSafelist, grSplitterConfig, grSplitterSafelist, grStatisticConfig, grStatisticSafelist, grSwitchConfig, grSwitchSafelist, grTabPanelsConfig, grTableConfig, grTableSafelist, grTabsConfig, grTabsSafelist, grTextareaConfig, grTextareaSafelist, grTimelineConfig, grTimelineSafelist, grToasterConfig, grToasterSafelist, grTooltipConfig, grTooltipSafelist, grTreeConfig, grTreeSafelist, grTreeSelectConfig, grTreeSelectSafelist, grValueConfig, grValueSafelist, granularityDialogServicePlugin, granularityThemePlugin, granularityToastPlugin, initThemeEarly, initialsFrom, isPreviewableKind, normalizeError, resolveBreadcrumbsFit, resolveBreadcrumbsLayout, resolveGrConfig, runFieldRules, sizeFromPointer, teardownDialogService, titleWhenTruncated, useAnnouncer, useComboboxNavigation, useDialogService, useDismissible, useDragGesture, useDragSort, useFloating, useFocusTrap, useGrButtonGroup, useGrComponentDefaults, useGrComponentProp, useGrComponentSize, useGrConfig, useGrFormContext, useGrFormControl, useGrFormFieldContext, useGrThemeAttrs, useGranularityTranslations, useOverlayLayer, usePortalTarget, useResponseError, useRovingFocus, useTheme, useToast, useVirtualList, vAutofocus, vAutosize, vClickOutside, vDropzone, vHotkey, vLoading };
|
|
@@ -62,28 +62,28 @@
|
|
|
62
62
|
|
|
63
63
|
/* Status roles */
|
|
64
64
|
--gr-success: #34d399;
|
|
65
|
-
--gr-success-light: #
|
|
65
|
+
--gr-success-light: #194536;
|
|
66
66
|
--gr-success-fg: #0f172a;
|
|
67
67
|
--gr-primary-text: #c7d2fe;
|
|
68
68
|
--gr-success-text: #6ee7b7;
|
|
69
69
|
--gr-warning: #fb923c;
|
|
70
|
-
--gr-warning-light: #
|
|
70
|
+
--gr-warning-light: #672e1c;
|
|
71
71
|
--gr-warning-fg: #0f172a;
|
|
72
72
|
--gr-warning-text: #fdba74;
|
|
73
73
|
--gr-danger: #f87171;
|
|
74
|
-
--gr-danger-light: #
|
|
74
|
+
--gr-danger-light: #6a2522;
|
|
75
75
|
--gr-danger-fg: #0f172a;
|
|
76
76
|
--gr-danger-text: #fca5a5;
|
|
77
77
|
--gr-info: #60a5fa;
|
|
78
|
-
--gr-info-light: #
|
|
78
|
+
--gr-info-light: #213771;
|
|
79
79
|
--gr-info-fg: #0f172a;
|
|
80
80
|
--gr-info-text: #bfdbfe;
|
|
81
81
|
--gr-slate: #94a3b8;
|
|
82
|
-
--gr-slate-light: #
|
|
82
|
+
--gr-slate-light: #313b4a;
|
|
83
83
|
--gr-slate-fg: #0f172a;
|
|
84
84
|
--gr-slate-text: #cbd5e1;
|
|
85
85
|
--gr-azure: #38bdf8;
|
|
86
|
-
--gr-azure-light: #
|
|
86
|
+
--gr-azure-light: #1b425c;
|
|
87
87
|
--gr-azure-fg: #0f172a;
|
|
88
88
|
--gr-azure-text: #bae6fd;
|
|
89
89
|
|
|
@@ -149,6 +149,11 @@
|
|
|
149
149
|
--gr-sidebar-accent-fg: #f1f5f9;
|
|
150
150
|
--gr-sidebar-brd: #334155;
|
|
151
151
|
--gr-sidebar-ring: #818cf8;
|
|
152
|
+
|
|
153
|
+
/* Elevation */
|
|
154
|
+
--gr-shadow-1: 0 1px 2px rgba(0, 0, 0, 0.45);
|
|
155
|
+
--gr-shadow-2: 0 8px 24px rgba(0, 0, 0, 0.55);
|
|
156
|
+
--gr-shadow-3: 0 16px 48px rgba(0, 0, 0, 0.65);
|
|
152
157
|
}
|
|
153
158
|
|
|
154
159
|
@supports not (color: color-mix(in srgb, #000 50%, #fff)) {
|
|
@@ -165,6 +165,11 @@
|
|
|
165
165
|
--gr-sidebar-accent-fg: #1e293b;
|
|
166
166
|
--gr-sidebar-brd: #e2e8f0;
|
|
167
167
|
--gr-sidebar-ring: #6366f1;
|
|
168
|
+
|
|
169
|
+
/* Elevation */
|
|
170
|
+
--gr-shadow-1: 0 1px 2px rgba(15, 23, 42, 0.08);
|
|
171
|
+
--gr-shadow-2: 0 8px 24px rgba(15, 23, 42, 0.14);
|
|
172
|
+
--gr-shadow-3: 0 16px 48px rgba(15, 23, 42, 0.20);
|
|
168
173
|
}
|
|
169
174
|
|
|
170
175
|
@supports not (color: color-mix(in srgb, #000 50%, #fff)) {
|
package/dist/theme.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as grThemeTokens, n as grDerivedTokens, t as grComponentTokens } from "./chunks/generated-
|
|
1
|
+
import { a as grThemeTokens, n as grDerivedTokens, t as grComponentTokens } from "./chunks/generated-1WEi10KK.js";
|
|
2
2
|
//#region src/theme/color.ts
|
|
3
3
|
function parseHex(value) {
|
|
4
4
|
const match = value.trim().match(/^#([\da-f]{3}|[\da-f]{6})$/i);
|
package/dist/tokens.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as grThemeTokens, i as grThemeNames, n as grDerivedTokens, r as grFoundationTokens, t as grComponentTokens } from "./chunks/generated-
|
|
1
|
+
import { a as grThemeTokens, i as grThemeNames, n as grDerivedTokens, r as grFoundationTokens, t as grComponentTokens } from "./chunks/generated-1WEi10KK.js";
|
|
2
2
|
export { grComponentTokens, grDerivedTokens, grFoundationTokens, grThemeNames, grThemeTokens };
|
|
@@ -12,6 +12,17 @@ export declare const variantClass: Record<GrCardVariant, string>;
|
|
|
12
12
|
export declare const paddingClass: Record<GrCardPadding, string>;
|
|
13
13
|
export declare const sectionDividerTopClass = "border-t border-[var(--gr-brd)]";
|
|
14
14
|
export declare const sectionDividerBottomClass = "border-b border-[var(--gr-brd)]";
|
|
15
|
+
/**
|
|
16
|
+
* Отступ шапки, которую карточка рисует сама из `title`.
|
|
17
|
+
*
|
|
18
|
+
* Не берётся из `padding`: тот описывает **содержимое**, и дефолт `none` у него
|
|
19
|
+
* осмыслен — на `GrCard` стоят `GrCollapse` и `GrList`, а карточка с таблицей
|
|
20
|
+
* хочет её край в край. Заголовок же принадлежит самой карточке, и прижатым к
|
|
21
|
+
* рамке вместе с разделителем он выглядеть не должен ни при каком `padding`.
|
|
22
|
+
*
|
|
23
|
+
* По вертикали отступ меньше горизонтального: шапка — строка, а не блок.
|
|
24
|
+
*/
|
|
25
|
+
export declare const ownHeaderPaddingClass = "px-4 py-3";
|
|
15
26
|
/**
|
|
16
27
|
* Уровень заголовка карточки. `h1` намеренно нет: его задаёт страница, а
|
|
17
28
|
* карточка — блок внутри уже существующей структуры.
|
|
@@ -14,8 +14,20 @@ import type { GrDeltaTone } from './deltaTone';
|
|
|
14
14
|
* читается как опечатка. Отбивку получают только стрелка и суффикс.
|
|
15
15
|
*/
|
|
16
16
|
export declare const deltaRootClass = "inline-flex items-baseline tabular-nums";
|
|
17
|
+
/**
|
|
18
|
+
* Величина стоит **в строке текста**, и приписка при ней приглушения не
|
|
19
|
+
* получает: «−15 %» набирается кеглем и цветом строки целиком, иначе процент
|
|
20
|
+
* оказывается мельче окружающих слов.
|
|
21
|
+
*
|
|
22
|
+
* Дефолт `GrValue` рассчитан на плитку, где величина крупная и приписке есть
|
|
23
|
+
* куда уменьшаться. Здесь он переопределяется — ровно теми же токенами, что
|
|
24
|
+
* доступны потребителю.
|
|
25
|
+
*
|
|
26
|
+
* `currentColor` и `1em`, а не `inherit`: у пользовательского свойства
|
|
27
|
+
* `inherit` значит «наследовать саму переменную», то есть ничего.
|
|
28
|
+
*/
|
|
29
|
+
export declare const deltaValueStyle: Record<string, string>;
|
|
17
30
|
/** Суффикс — единица измерения, и от числа он отбивается: «−15 %», «120 мс». */
|
|
18
|
-
export declare const deltaSuffixClass = "ml-1";
|
|
19
31
|
/**
|
|
20
32
|
* Стрелка выравнивается по строке, а не по базовой линии: у svg её нет.
|
|
21
33
|
*
|
|
@@ -18,7 +18,35 @@ export declare const descriptionRootClass = "m-0 gap-x-4 [row-gap:var(--gr-descr
|
|
|
18
18
|
/** Сетка колонок — раскладки `inline` и `stacked`. */
|
|
19
19
|
export declare const descriptionRootGridClass = "grid";
|
|
20
20
|
export declare const descriptionRootFlowClass = "flex flex-wrap items-baseline";
|
|
21
|
-
|
|
21
|
+
/** Одна колонка — обычный класс: считать там нечего. */
|
|
22
|
+
export declare const descriptionSingleColumnClass = "grid-cols-1";
|
|
23
|
+
/**
|
|
24
|
+
* Колонки по ширине **контейнера**, а не вьюпорта.
|
|
25
|
+
*
|
|
26
|
+
* Медиазапрос меряет экран, а список живёт в карточке: на широком мониторе в
|
|
27
|
+
* колонке 290px включались две колонки, подпись фиксированной ширины съедала
|
|
28
|
+
* почти всё место, и значение переносилось посимвольно — «30» печаталось как
|
|
29
|
+
* «3» и «0» на двух строках. Показанное число становилось неверным.
|
|
30
|
+
*
|
|
31
|
+
* `auto-fit` решает это без медиазапросов, без JS и без замеров, то есть
|
|
32
|
+
* одинаково на сервере и на клиенте. `columns` при этом становится **потолком**:
|
|
33
|
+
* трек не уже `column-min`, но и не уже доли, на которую делится контейнер при
|
|
34
|
+
* N колонках, — поэтому шире N штук не встанет никогда.
|
|
35
|
+
*
|
|
36
|
+
* `min(100%, …)` спасает совсем узкий контейнер: без него трек шириной с
|
|
37
|
+
* `column-min` вылезал бы за край.
|
|
38
|
+
*
|
|
39
|
+
* Инлайновым стилем, а не классом: выражение зависит от N, и шкалы утилит для
|
|
40
|
+
* него не существует — тот же довод, что записан у сетки `GrDashboard`.
|
|
41
|
+
*/
|
|
42
|
+
export declare function descriptionColumnsStyle(columns: GrDescriptionColumns,
|
|
43
|
+
/**
|
|
44
|
+
* Ширина колонки подписей при `inline`. В этой раскладке подпись и значение
|
|
45
|
+
* стоят **рядом**, поэтому минимум колонки складывается из них двоих: колонка
|
|
46
|
+
* шириной с одну подпись оставляет значению несколько пикселей, и оно
|
|
47
|
+
* переносится посимвольно — тот же дефект, только в других числах.
|
|
48
|
+
*/
|
|
49
|
+
labelWidth?: string): Record<string, string>;
|
|
22
50
|
export declare const descriptionPairInlineClass = "flex min-w-0 items-baseline gap-2";
|
|
23
51
|
export declare const descriptionPairStackedClass = "min-w-0";
|
|
24
52
|
export declare const descriptionPairFlowClass = "flex min-w-0 items-baseline gap-1";
|
|
@@ -71,19 +71,19 @@ export interface GrStatisticProps {
|
|
|
71
71
|
export interface GrStatisticEmits {
|
|
72
72
|
(e: 'click', event: MouseEvent): void;
|
|
73
73
|
}
|
|
74
|
-
declare var __VLS_10: {}, __VLS_23: {},
|
|
74
|
+
declare var __VLS_10: {}, __VLS_23: {}, __VLS_49: {}, __VLS_51: {}, __VLS_55: {}, __VLS_57: {};
|
|
75
75
|
type __VLS_Slots = {} & {
|
|
76
76
|
icon?: (props: typeof __VLS_10) => any;
|
|
77
77
|
} & {
|
|
78
78
|
title?: (props: typeof __VLS_23) => any;
|
|
79
79
|
} & {
|
|
80
|
-
prefix?: (props: typeof
|
|
80
|
+
prefix?: (props: typeof __VLS_49) => any;
|
|
81
81
|
} & {
|
|
82
|
-
default?: (props: typeof
|
|
82
|
+
default?: (props: typeof __VLS_51) => any;
|
|
83
83
|
} & {
|
|
84
|
-
suffix?: (props: typeof
|
|
84
|
+
suffix?: (props: typeof __VLS_55) => any;
|
|
85
85
|
} & {
|
|
86
|
-
trend?: (props: typeof
|
|
86
|
+
trend?: (props: typeof __VLS_57) => any;
|
|
87
87
|
};
|
|
88
88
|
declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<GrStatisticProps>, {
|
|
89
89
|
title: undefined;
|
|
@@ -13,6 +13,15 @@ export type GrStatisticTrend = 'up' | 'down' | 'flat';
|
|
|
13
13
|
export declare const statisticTitleSizeBySize: Record<GrStatisticSize, string>;
|
|
14
14
|
export declare const statisticValueSizeBySize: Record<GrStatisticSize, string>;
|
|
15
15
|
export declare const statisticAffixSizeBySize: Record<GrStatisticSize, string>;
|
|
16
|
+
/**
|
|
17
|
+
* Кегль приписки — значением токена, а не классом: он уезжает в
|
|
18
|
+
* `--gr-value-suffix-size`, которым `GrValue` и набирает суффикс.
|
|
19
|
+
*
|
|
20
|
+
* Ступень шкалы, а не доля от величины: у плитки шкала размеров своя, и на
|
|
21
|
+
* ступени `md` число крупное (`--gr-text-3xl`), а приписка при нём обязана
|
|
22
|
+
* остаться подписью. Доля дала бы её вровень с числом.
|
|
23
|
+
*/
|
|
24
|
+
export declare const statisticAffixSizeVarBySize: Record<GrStatisticSize, string>;
|
|
16
25
|
export declare const statisticPlaceholderHeightBySize: Record<GrStatisticSize, string>;
|
|
17
26
|
export declare const statisticTrendSizeBySize: Record<GrStatisticSize, string>;
|
|
18
27
|
export declare const statisticValueClassByTone: Record<GrStatisticTone, string>;
|