@eightshift/ui-components 6.0.13 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{Button-JRIu2BnS.js → Button-BTCA69Lt.js} +9 -9
- package/dist/{Dialog-Dd1yqNus.js → Dialog-BbNWvB5_.js} +76 -57
- package/dist/{FieldError-DmVwL6Dj.js → FieldError-BPG0hKfB.js} +2 -2
- package/dist/{FocusScope-Dri1oBcH.js → FocusScope-BxT4xfe9.js} +6 -7
- package/dist/{Heading-eA6LXIKB.js → Heading-CY-_gt-U.js} +2 -2
- package/dist/{Input-Cuw9UbNb.js → Input-Wrnm2nxy.js} +8 -8
- package/dist/{Label-DPWyf-gp.js → Label-BDlf9vIY.js} +3 -2
- package/dist/{ListBox-DT1sFY3e.js → ListBox-yHUyUAAH.js} +28 -26
- package/dist/{OverlayArrow-DVJTTfZM.js → OverlayArrow-NzRV9wsn.js} +7 -7
- package/dist/{RadioGroup-Cp5cdBI_.js → RadioGroup-BFDueqHz.js} +14 -14
- package/dist/{SearchField-CLhr5PGZ.js → SearchField-CmRhtrQf.js} +12 -12
- package/dist/{SelectionManager-DbBiF5M8.js → SelectionManager-VgpR-1Ri.js} +33 -29
- package/dist/{Slider-CZV3HhHY.js → Slider-Bl5G0ZHE.js} +16 -15
- package/dist/{Text-Dae33gHp.js → Text-CjFEHSfr.js} +3 -2
- package/dist/{VisuallyHidden-eaCBtXhE.js → VisuallyHidden-DXVaR_RC.js} +2 -2
- package/dist/{animation-DY7CNkr6.js → animation-B2sADg3I.js} +1 -1
- package/dist/assets/style-admin.css +38 -54
- package/dist/assets/style-editor.css +38 -54
- package/dist/assets/style.css +38 -54
- package/dist/{color-swatch-CZj0jHZd.js → color-swatch-DtaLObbd.js} +4 -4
- package/dist/components/base-control/base-control.js +1 -1
- package/dist/components/button/button.js +9 -9
- package/dist/components/checkbox/checkbox.js +10 -10
- package/dist/components/color-pickers/color-picker.js +1 -1
- package/dist/components/color-pickers/color-swatch.js +1 -1
- package/dist/components/color-pickers/gradient-editor.js +1 -1
- package/dist/components/color-pickers/solid-color-picker.js +26 -22
- package/dist/components/expandable/expandable.js +8 -8
- package/dist/components/index.js +4 -2
- package/dist/components/input-field/input-field.js +10 -10
- package/dist/components/link-input/link-input.js +24 -23
- package/dist/components/matrix-align/matrix-align.js +1 -1
- package/dist/components/menu/menu.js +1 -1
- package/dist/components/modal/modal.js +19 -20
- package/dist/components/number-picker/number-picker.js +10 -10
- package/dist/components/options-panel/options-panel.js +1 -1
- package/dist/components/placeholders/file-picker-shell.js +48 -43
- package/dist/components/popover/popover.js +1 -1
- package/dist/components/radio/radio.js +2 -2
- package/dist/components/responsive/mini-responsive.js +1 -1
- package/dist/components/select/async-multi-select.js +7 -7
- package/dist/components/select/async-select.js +7 -7
- package/dist/components/select/multi-select.js +8 -8
- package/dist/components/select/shared.js +3 -3
- package/dist/components/select/single-select.js +8 -8
- package/dist/components/slider/column-config-slider.js +3 -3
- package/dist/components/slider/slider.js +3 -3
- package/dist/components/smart-image/image-analysis-worker-next.js +144 -0
- package/dist/components/smart-image/smart-image-next.js +294 -0
- package/dist/components/tabs/tabs.js +15 -14
- package/dist/components/toggle/switch.js +7 -7
- package/dist/components/toggle/toggle.js +1 -1
- package/dist/components/toggle-button/toggle-button.js +10 -7
- package/dist/components/tooltip/tooltip.js +5 -5
- package/dist/{context-DYYO3Ns3.js → context-iUFQCK8m.js} +1 -1
- package/dist/icons/icons.js +2 -2
- package/dist/index.js +3 -1
- package/dist/{proxy-B_RaYTfe.js → proxy-CgLBbUpw.js} +190 -35
- package/dist/{shared-Bg9lx3pE.js → shared-DSTKnPjF.js} +27 -24
- package/dist/{textSelection-Cq_Br7RW.js → textSelection-D_BSbtab.js} +1 -1
- package/dist/{useButton-CeuyDay5.js → useButton-DofKjCES.js} +3 -3
- package/dist/{useEvent-DoWvho2u.js → useEvent-ADVZr4I3.js} +1 -1
- package/dist/{useFilter-DYtfYPua.js → useFilter-Cqw0-KoB.js} +1 -1
- package/dist/{useFocusRing-WEswknAY.js → useFocusRing-Ct2N5S1b.js} +10 -5
- package/dist/{useFormReset-BDF1K4E4.js → useFormReset-KT27O1en.js} +1 -1
- package/dist/{useFormValidation-Dqzjv4jX.js → useFormValidation-DwbcW-pN.js} +2 -2
- package/dist/{useHover-CG39Ci3A.js → useHover-VPZwb-1l.js} +15 -14
- package/dist/{useLabel--3fT2XKM.js → useLabel-DzXzKZZZ.js} +2 -2
- package/dist/{useLabels-vzdDMGCX.js → useLabels-D8O3gOdV.js} +1 -1
- package/dist/{useListState-Bya9g7W8.js → useListState-jHobZH6F.js} +1 -1
- package/dist/{useLocalizedStringFormatter-M3L6Ge2c.js → useLocalizedStringFormatter-CEDs0LsA.js} +1 -1
- package/dist/{useNumberField-D6lsi3Vu.js → useNumberField-CrLevIP3.js} +50 -40
- package/dist/{useNumberFormatter-BWOyCamK.js → useNumberFormatter-CG_IQXp9.js} +1 -1
- package/dist/{usePress-B9w0X4Ur.js → usePress-BPCda-AF.js} +13 -7
- package/dist/{useSingleSelectListState-D9SqGLJ0.js → useSingleSelectListState-sLg_MnX8.js} +2 -2
- package/dist/{useToggle-Deq2xxQV.js → useToggle-D0-c9HPm.js} +4 -4
- package/dist/{useToggleState-j3o1PvdS.js → useToggleState-BhJn-Dz7.js} +1 -1
- package/dist/{utils-HC9_3Crc.js → utils-Cr3pLd9c.js} +77 -38
- package/package.json +13 -13
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { _ as __ } from "../../default-i18n-CnQeC5Pl.js";
|
|
3
|
+
import { c as clsx } from "../../clsx-DgYk2OaC.js";
|
|
4
|
+
import { useState, useRef, useEffect, cloneElement } from "react";
|
|
5
|
+
import { icons } from "../../icons/icons.js";
|
|
6
|
+
import "../../react-jsx-parser.min-B_hvYYa1.js";
|
|
7
|
+
import { DecorativeTooltip } from "../tooltip/tooltip.js";
|
|
8
|
+
import { cyrb64Hash } from "../../utilities/hash.js";
|
|
9
|
+
const WORKER_CODE = "const getSaturation = (r, g, b) => {\n // Convert 0-255 to 0-1 range.\n const red = r / 255;\n const green = g / 255;\n const blue = b / 255;\n\n const max = Math.max(red, green, blue);\n const min = Math.min(red, green, blue);\n const delta = max - min;\n\n // If the maximum brightness is less than ~5% (approx RGB 13),\n // the human eye just sees \"black\", regardless of the color math.\n if (max < 0.05) {\n return 0;\n }\n\n // Standard HSV Calculation\n let saturation = 0;\n\n if (max !== 0) {\n saturation = delta / max;\n }\n\n return parseFloat(saturation.toFixed(3));\n};\n\n// Helper to convert RGB to Hex\nconst rgbToHex = (r, g, b) => '#' + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1).toUpperCase();\n\nself.onmessage = (e) => {\n const { buffer, width, height, config } = e.data;\n const { maxColors = 5, threshold = 96, transparencyThreshold = 255 } = config;\n const stride = 4;\n\n // [1] Check transparency.\n const isTransparent = (idx) => buffer[idx + 3] < transparencyThreshold;\n const getIdx = (x, y) => (y * width + x) * stride;\n\n const corners = {\n topLeft: isTransparent(getIdx(0, 0)),\n topRight: isTransparent(getIdx(width - 1, 0)),\n bottomLeft: isTransparent(getIdx(0, height - 1)),\n bottomRight: isTransparent(getIdx(width - 1, height - 1)),\n };\n\n const sides = { top: false, bottom: false, left: false, right: false };\n\n // Scan top/bottom.\n for (let x = 0; x < width; x += 5) {\n if (!sides.top && isTransparent(getIdx(x, 0))) {\n sides.top = true;\n }\n\n if (!sides.bottom && isTransparent(getIdx(x, height - 1))) {\n sides.bottom = true;\n }\n }\n\n // Scan left/right.\n for (let y = 0; y < height; y += 5) {\n if (!sides.left && isTransparent(getIdx(0, y))) {\n sides.left = true;\n }\n\n if (!sides.right && isTransparent(getIdx(width - 1, y))) {\n sides.right = true;\n }\n }\n\n // Internal transparency check\n let internalTransparent = false;\n const borderIsSolid = !Object.values(sides).some((v) => v);\n\n if (borderIsSolid) {\n const len = buffer.length;\n const step = Math.floor(len / 100);\n\n for (let i = 0; i < len; i += step) {\n const idx = i - (i % 4);\n\n if (buffer[idx + 3] < 255) {\n internalTransparent = true;\n break;\n }\n }\n } else {\n internalTransparent = true;\n }\n\n // [2] Analyze colors (Dominant + average)\n const colorCounts = {};\n const samplingRate = 20;\n let totalSampledPixels = 0;\n\n // Accumulators for Average Color\n let sumR = 0;\n let sumG = 0;\n let sumB = 0;\n\n for (let i = 0; i < buffer.length; i += stride * samplingRate) {\n const rRaw = buffer[i];\n const gRaw = buffer[i + 1];\n const bRaw = buffer[i + 2];\n const a = buffer[i + 3];\n\n // Strict alpha check (ignores anti-aliased SVG edges)\n if (a < 250) continue;\n\n totalSampledPixels++;\n\n // 1. Add to Average Sums (Use raw values for accuracy)\n sumR += rRaw;\n sumG += gRaw;\n sumB += bRaw;\n\n // 2. Add to Dominant Color Buckets (Quantized)\n const q = 5;\n const r = Math.round(rRaw / q) * q;\n const g = Math.round(gRaw / q) * q;\n const b = Math.round(bRaw / q) * q;\n\n const key = `${r},${g},${b}`;\n colorCounts[key] = (colorCounts[key] || 0) + 1;\n }\n\n // [3] Calculate Average Color\n let averageColor = null;\n\n if (totalSampledPixels > 0) {\n const avgR = Math.round(sumR / totalSampledPixels);\n const avgG = Math.round(sumG / totalSampledPixels);\n const avgB = Math.round(sumB / totalSampledPixels);\n const avgLum = 0.2126 * avgR + 0.7152 * avgG + 0.0722 * avgB;\n\n averageColor = {\n color: rgbToHex(avgR, avgG, avgB),\n isDark: avgLum <= 128,\n saturation: getSaturation(avgR, avgG, avgB),\n };\n }\n\n // [4] Process Dominant Colors\n const sortedRawColors = Object.entries(colorCounts)\n .map(([key, count]) => {\n const [r, g, b] = key.split(',').map(Number);\n\n return { r, g, b, count };\n })\n .sort((a, b) => b.count - a.count);\n\n const distinctPalette = [];\n\n for (const candidate of sortedRawColors) {\n if (distinctPalette.length >= maxColors) break;\n\n let isSimilar = false;\n\n for (const existing of distinctPalette) {\n const dist = Math.sqrt(Math.pow(candidate.r - existing.r, 2) + Math.pow(candidate.g - existing.g, 2) + Math.pow(candidate.b - existing.b, 2));\n\n if (dist < threshold) {\n existing.count += candidate.count;\n isSimilar = true;\n break;\n }\n }\n\n if (!isSimilar) {\n distinctPalette.push({ ...candidate });\n }\n }\n\n const palette = distinctPalette.map((item) => {\n const percentage = parseFloat((item.count / totalSampledPixels).toFixed(3));\n const lum = 0.2126 * item.r + 0.7152 * item.g + 0.0722 * item.b;\n\n return {\n color: rgbToHex(item.r, item.g, item.b),\n area: percentage,\n isDark: lum <= 128,\n saturation: getSaturation(item.r, item.g, item.b),\n };\n });\n\n self.postMessage({\n dominantColors: palette,\n averageColor,\n isDark: palette[0]?.isDark || false,\n isTransparent: internalTransparent || Object.values(corners).some((v) => v) || Object.values(sides).some((v) => v),\n transparencyInfo: {\n any: internalTransparent,\n left: sides.left,\n right: sides.right,\n top: sides.top,\n bottom: sides.bottom,\n topLeftCorner: corners.topLeft,\n topRightCorner: corners.topRight,\n bottomLeftCorner: corners.bottomLeft,\n bottomRightCorner: corners.bottomRight,\n },\n });\n};\n";
|
|
10
|
+
/**
|
|
11
|
+
* @typedef {Object} CustomImageProps
|
|
12
|
+
* @property {JSX.Element} [props.renderError] - Component to render if image analysis fails. `(error) => JSX:Element`.
|
|
13
|
+
* @property {string} [props.errorClassName] - Classes to pass to the default error view.
|
|
14
|
+
* @property {string} [props.processingClassName] - Classes to apply while the image is loading / being processed.
|
|
15
|
+
* @property {boolean} [props.hidden] - If `true`, the component is not rendered.
|
|
16
|
+
* @property {boolean} [props.verbose] - If `true`, extra debug info is logged in case of errors.
|
|
17
|
+
* @property {import('../../utilities/general.js').ImageAnalysisSettings} [imageAnalysisSettings] - Settings to pass to the image analysis function.
|
|
18
|
+
* @property {import('../../utilities/general.js').ImageAnalysisResult} [analysisData] - Previous analysis result to pass in directly, skipping analysis.
|
|
19
|
+
*
|
|
20
|
+
* @preserve
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* @typedef {Omit<JSX.IntrinsicElements['img'], 'crossOrigin'>} BaseImageProps
|
|
24
|
+
*
|
|
25
|
+
* @preserve
|
|
26
|
+
*/
|
|
27
|
+
/**
|
|
28
|
+
* @typedef {CustomImageProps & BaseImageProps} ImageProps
|
|
29
|
+
*
|
|
30
|
+
* @preserve
|
|
31
|
+
*/
|
|
32
|
+
function isValidUrl(url) {
|
|
33
|
+
try {
|
|
34
|
+
new URL(url);
|
|
35
|
+
return true;
|
|
36
|
+
} catch {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
async function urlExists(url) {
|
|
41
|
+
if (!isValidUrl(url)) return false;
|
|
42
|
+
try {
|
|
43
|
+
await fetch(url, { method: "HEAD", mode: "no-cors" });
|
|
44
|
+
return true;
|
|
45
|
+
} catch {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Image that analyzes its contents and can apply different classes based on image transparency.
|
|
51
|
+
* It also provides a CSS variable with the image's dominant color, and optionally custom child rendering with all the data exposed.
|
|
52
|
+
*
|
|
53
|
+
* @component
|
|
54
|
+
* @param {ImageProps} props - Component props.
|
|
55
|
+
*
|
|
56
|
+
* @returns {JSX.Element} The __SmartImageNext component.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* <__SmartImageNext src='https://picsum.photos/600/400' />
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* <__SmartImageNext src='https://picsum.photos/600/400'>
|
|
63
|
+
* {({ image, dominantColors, isDark }) => (
|
|
64
|
+
* <div style={{ backgroundColor: dominantColors[0].color }}>
|
|
65
|
+
* {image}
|
|
66
|
+
* <p style={{ color: isDark ? '#000000' : '#FFFFFF' }}>Lorem ipsum</p>
|
|
67
|
+
* </div>
|
|
68
|
+
* )}
|
|
69
|
+
* </__SmartImageNext>
|
|
70
|
+
*
|
|
71
|
+
* @preserve
|
|
72
|
+
*/
|
|
73
|
+
const __SmartImageNext = (props) => {
|
|
74
|
+
const { onAnalysisComplete, colorCount = 3, similarityThreshold = 10 } = props;
|
|
75
|
+
const { imageAnalysisSettings, errorClassName, processingClassName = "es:opacity-0 es:fixed", hidden, renderError, analysisData, children, verbose, ...imageProps } = props;
|
|
76
|
+
const { src } = imageProps;
|
|
77
|
+
const [analysis, setAnalysis] = useState(analysisData);
|
|
78
|
+
const [error, setError] = useState(null);
|
|
79
|
+
const [objectUrl, setObjectUrl] = useState(null);
|
|
80
|
+
const workerRef = useRef(null);
|
|
81
|
+
useEffect(() => {
|
|
82
|
+
const blob = new Blob([WORKER_CODE], { type: "application/javascript" });
|
|
83
|
+
workerRef.current = new Worker(URL.createObjectURL(blob));
|
|
84
|
+
return () => workerRef.current.terminate();
|
|
85
|
+
}, []);
|
|
86
|
+
useEffect(() => {
|
|
87
|
+
if (!src) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
if (analysisData) {
|
|
91
|
+
setObjectUrl(src);
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
const cacheKey = `es-uic-img-data-${cyrb64Hash(src)}`;
|
|
95
|
+
if (localStorage?.getItem(cacheKey)) {
|
|
96
|
+
const cachedAnalysis = JSON.parse(localStorage.getItem(cacheKey));
|
|
97
|
+
if (cachedAnalysis) {
|
|
98
|
+
setAnalysis(cachedAnalysis);
|
|
99
|
+
setObjectUrl(src);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
let isActive = true;
|
|
104
|
+
const abortController = new AbortController();
|
|
105
|
+
const processImage = async () => {
|
|
106
|
+
try {
|
|
107
|
+
const response = await fetch(src, {
|
|
108
|
+
signal: abortController.signal,
|
|
109
|
+
mode: "cors"
|
|
110
|
+
});
|
|
111
|
+
if (src.includes("uikit")) {
|
|
112
|
+
console.log("tusam?", src, response);
|
|
113
|
+
}
|
|
114
|
+
if (!response.ok) {
|
|
115
|
+
if (verbose) {
|
|
116
|
+
console.error(`[SmartImageNext]: Failed to fetch (${response.status}) image from ${src}`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
const blob = await response.clone().blob();
|
|
120
|
+
if (blob.size === 0) {
|
|
121
|
+
if (verbose) {
|
|
122
|
+
console.error(`[SmartImageNext]: Empty image (${src})`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
const url = URL.createObjectURL(blob);
|
|
126
|
+
if (isActive) {
|
|
127
|
+
setObjectUrl(url);
|
|
128
|
+
}
|
|
129
|
+
let imageSource, width, height;
|
|
130
|
+
const isSVG = blob.type.includes("svg");
|
|
131
|
+
if (isSVG) {
|
|
132
|
+
const img = new Image();
|
|
133
|
+
img.src = url;
|
|
134
|
+
await new Promise((resolve, reject) => {
|
|
135
|
+
img.onload = resolve;
|
|
136
|
+
img.onerror = reject;
|
|
137
|
+
});
|
|
138
|
+
width = img.width || 500;
|
|
139
|
+
height = img.height || 500;
|
|
140
|
+
imageSource = img;
|
|
141
|
+
} else {
|
|
142
|
+
try {
|
|
143
|
+
imageSource = await createImageBitmap(blob);
|
|
144
|
+
width = imageSource.width;
|
|
145
|
+
height = imageSource.height;
|
|
146
|
+
} catch (e) {
|
|
147
|
+
if (verbose) {
|
|
148
|
+
console.warn("[SmartImageNext]: createImageBitmap failed, falling back to HTML Image method.", e);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
let buffer, arrayBuffer;
|
|
153
|
+
if (typeof OffscreenCanvas !== "undefined") {
|
|
154
|
+
const canvas = new OffscreenCanvas(width, height);
|
|
155
|
+
const ctx = canvas.getContext("2d", { willReadFrequently: true });
|
|
156
|
+
ctx.clearRect(0, 0, width, height);
|
|
157
|
+
ctx.drawImage(imageSource, 0, 0, width, height);
|
|
158
|
+
buffer = ctx.getImageData(0, 0, width, height).data;
|
|
159
|
+
arrayBuffer = buffer.buffer;
|
|
160
|
+
} else {
|
|
161
|
+
const canvas = document.createElement("canvas");
|
|
162
|
+
canvas.width = width;
|
|
163
|
+
canvas.height = height;
|
|
164
|
+
const ctx = canvas.getContext("2d");
|
|
165
|
+
ctx.clearRect(0, 0, width, height);
|
|
166
|
+
ctx.drawImage(imageSource, 0, 0, width, height);
|
|
167
|
+
buffer = ctx.getImageData(0, 0, width, height).data;
|
|
168
|
+
arrayBuffer = buffer.buffer;
|
|
169
|
+
}
|
|
170
|
+
if (imageSource.close) {
|
|
171
|
+
imageSource.close();
|
|
172
|
+
}
|
|
173
|
+
if (workerRef.current) {
|
|
174
|
+
workerRef.current.onmessage = (e) => {
|
|
175
|
+
if (!isActive) {
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
setAnalysis(e.data);
|
|
179
|
+
localStorage?.setItem(cacheKey, JSON.stringify(e.data));
|
|
180
|
+
if (onAnalysisComplete) {
|
|
181
|
+
onAnalysisComplete(e.data);
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
try {
|
|
185
|
+
workerRef.current.postMessage(
|
|
186
|
+
{
|
|
187
|
+
buffer,
|
|
188
|
+
width,
|
|
189
|
+
height,
|
|
190
|
+
config: {
|
|
191
|
+
// TODO
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
[arrayBuffer]
|
|
195
|
+
);
|
|
196
|
+
} catch (msgErr) {
|
|
197
|
+
workerRef.current.postMessage({
|
|
198
|
+
buffer,
|
|
199
|
+
width,
|
|
200
|
+
height,
|
|
201
|
+
config: { maxColors: colorCount, threshold: similarityThreshold }
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
} catch (err) {
|
|
206
|
+
if (isActive) {
|
|
207
|
+
if (verbose) {
|
|
208
|
+
console.error("[SmartImageNext] Error:", err);
|
|
209
|
+
}
|
|
210
|
+
const exists = await urlExists(src);
|
|
211
|
+
if (exists) {
|
|
212
|
+
setError(err.message);
|
|
213
|
+
} else {
|
|
214
|
+
setError("failedToFetch");
|
|
215
|
+
}
|
|
216
|
+
setObjectUrl(null);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
};
|
|
220
|
+
processImage();
|
|
221
|
+
return () => {
|
|
222
|
+
isActive = false;
|
|
223
|
+
abortController.abort();
|
|
224
|
+
};
|
|
225
|
+
}, [src, colorCount, similarityThreshold]);
|
|
226
|
+
const hasAnalysed = Boolean(analysis) && Boolean(objectUrl);
|
|
227
|
+
const { dominantColors, isDark, isTransparent, transparencyInfo, averageColor } = analysis || {};
|
|
228
|
+
const classFetchProps = {
|
|
229
|
+
isLoaded: true,
|
|
230
|
+
dominantColors,
|
|
231
|
+
isDark,
|
|
232
|
+
hasAnalysed: Boolean(error) || hasAnalysed,
|
|
233
|
+
isTransparent,
|
|
234
|
+
transparencyInfo,
|
|
235
|
+
averageColor,
|
|
236
|
+
hasError: error === "failedToFetch"
|
|
237
|
+
};
|
|
238
|
+
if (hidden) {
|
|
239
|
+
return null;
|
|
240
|
+
}
|
|
241
|
+
const colorfulDominantColor = dominantColors?.find((c) => c.saturation > 0.25 && c.area >= 0.1) || dominantColors?.[0];
|
|
242
|
+
const imageElement = /* @__PURE__ */ jsx(
|
|
243
|
+
"img",
|
|
244
|
+
{
|
|
245
|
+
decoding: "async",
|
|
246
|
+
...imageProps,
|
|
247
|
+
src: analysis && objectUrl && !error ? objectUrl : imageProps?.src,
|
|
248
|
+
style: {
|
|
249
|
+
...imageProps.style || {},
|
|
250
|
+
"--es-img-dominant-color": dominantColors?.[0]?.color ?? "",
|
|
251
|
+
"--es-img-colorful-dominant-color": colorfulDominantColor?.color ?? "",
|
|
252
|
+
"--es-img-average-color": averageColor?.color ?? ""
|
|
253
|
+
},
|
|
254
|
+
className: clsx(
|
|
255
|
+
"es:transition-opacity",
|
|
256
|
+
!hasAnalysed && !error && processingClassName,
|
|
257
|
+
typeof imageProps.className === "function" ? imageProps.className(classFetchProps) : imageProps.className
|
|
258
|
+
),
|
|
259
|
+
"data-is-transparent": isTransparent,
|
|
260
|
+
"data-is-dark": isDark
|
|
261
|
+
}
|
|
262
|
+
);
|
|
263
|
+
if (error && renderError) {
|
|
264
|
+
return renderError(error);
|
|
265
|
+
} else if (error === "failedToFetch") {
|
|
266
|
+
return /* @__PURE__ */ jsxs(
|
|
267
|
+
"div",
|
|
268
|
+
{
|
|
269
|
+
className: clsx(
|
|
270
|
+
typeof children !== "function" && "es:flex es:flex-col es:gap-2 es:items-center-safe es:justify-center-safe es:p-2",
|
|
271
|
+
"es:motion-preset-fade",
|
|
272
|
+
errorClassName
|
|
273
|
+
),
|
|
274
|
+
children: [
|
|
275
|
+
typeof children !== "function" && /* @__PURE__ */ jsx(DecorativeTooltip, { text: __("Error loading image", "eightshift-ui-components"), children: cloneElement(icons.imageError, { className: "es:text-surface-600 es:size-8" }) }),
|
|
276
|
+
typeof children === "function" ? children({
|
|
277
|
+
image: cloneElement(imageElement, { crossOrigin: null }),
|
|
278
|
+
hasAnalysed,
|
|
279
|
+
isTransparent: false,
|
|
280
|
+
hasError: true,
|
|
281
|
+
errorBadge: /* @__PURE__ */ jsx("div", { className: "es:size-full es:flex es:items-center es:justify-center", children: /* @__PURE__ */ jsx(DecorativeTooltip, { text: __("Error loading image", "eightshift-ui-components"), children: cloneElement(icons.imageError, { className: "es:text-surface-600 es:size-8" }) }) })
|
|
282
|
+
}) : cloneElement(imageElement, { crossOrigin: null })
|
|
283
|
+
]
|
|
284
|
+
}
|
|
285
|
+
);
|
|
286
|
+
}
|
|
287
|
+
return children && typeof children === "function" ? children({
|
|
288
|
+
image: imageElement,
|
|
289
|
+
...classFetchProps
|
|
290
|
+
}) : imageElement;
|
|
291
|
+
};
|
|
292
|
+
export {
|
|
293
|
+
__SmartImageNext
|
|
294
|
+
};
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import { e as $880e95eb8b93ba9a$export$ecf600387e221c37, m as $ae20dd8cbca75726$export$d6daf82dcd84e87c, f as $e1995378a142960e$export$18af5c7a9e9b3664, h as $e1995378a142960e$export$fb8073518f34e6ec, g as $e1995378a142960e$export$bf788dd355e3a401, n as $23b9f4fcf0fe224b$export$d68d59712b04d9d1, j as $7135fc7d473fd974$export$4feb769f8ddf26c5, o as $7135fc7d473fd974$export$90e00781bc59d8f9, p as $7135fc7d473fd974$export$a164736487e3f0ae } from "../../SelectionManager-
|
|
2
|
+
import { c as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, b as $3ef42575df84b30b$export$9d1611c77c2fe928, d as $bdb11010cef70236$export$f680877a34711e37, k as $df56164dff5785e2$export$4338b53315abf666, h as $64fa3d84918910a7$export$4d86445c2cf5e3, a as $64fa3d84918910a7$export$df3a06d6289f983e, $ as $64fa3d84918910a7$export$29f1550f4b0d4415, e as $64fa3d84918910a7$export$fabf2dc03a41866e, i as $64fa3d84918910a7$export$2881499e37b75b9a } from "../../utils-Cr3pLd9c.js";
|
|
3
|
+
import { e as $880e95eb8b93ba9a$export$ecf600387e221c37, m as $ae20dd8cbca75726$export$d6daf82dcd84e87c, f as $e1995378a142960e$export$18af5c7a9e9b3664, h as $e1995378a142960e$export$fb8073518f34e6ec, g as $e1995378a142960e$export$bf788dd355e3a401, n as $23b9f4fcf0fe224b$export$d68d59712b04d9d1, j as $7135fc7d473fd974$export$4feb769f8ddf26c5, o as $7135fc7d473fd974$export$90e00781bc59d8f9, p as $7135fc7d473fd974$export$a164736487e3f0ae } from "../../SelectionManager-VgpR-1Ri.js";
|
|
4
4
|
import { $ as $1d5b8b8664671ef2$export$c9549807523555e0 } from "../../SelectionIndicator-D7WMzeAW.js";
|
|
5
5
|
import { $ as $c8a5a149f625efcf$export$758399f318e6385a } from "../../SharedElementTransition-B_vnQ1uR.js";
|
|
6
6
|
import { $ as $f39a9eba43920ace$export$86427a43e3e48ebb } from "../../Hidden-Rfj-STx7.js";
|
|
7
7
|
import { $ as $65484d02dcb7eb3e$export$457c3d6518dd4c6f } from "../../filterDOMProps-eGTqWSTd.js";
|
|
8
|
-
import { b as $cdc5a6778b766db2$export$a9d04c5684123369 } from "../../useListState-
|
|
9
|
-
import { $ as $d3f049242431219c$export$45fda7c47f93fd48, a as $d3f049242431219c$export$6d3443f2c48bfc20 } from "../../animation-
|
|
8
|
+
import { b as $cdc5a6778b766db2$export$a9d04c5684123369 } from "../../useListState-jHobZH6F.js";
|
|
9
|
+
import { $ as $d3f049242431219c$export$45fda7c47f93fd48, a as $d3f049242431219c$export$6d3443f2c48bfc20 } from "../../animation-B2sADg3I.js";
|
|
10
10
|
import $dbSRa$react__default, { useState, useMemo, useRef, useEffect, forwardRef, useContext, createContext, isValidElement, useId, cloneElement } from "react";
|
|
11
|
-
import { E as $ea8dcbcb9ea1b556$export$7e924b3091a3bd18, $ as $f645667febf57a63$export$4c014de7c8940b4c, x as $6179b936705e76d3$export$ae780daf29e6d456 } from "../../useHover-
|
|
12
|
-
import { $ as $313b98861ee5dd6c$export$d6875122194c7b44 } from "../../useLabels-
|
|
13
|
-
import { a as $9bf71ea28793e738$export$2d6ec8fc375ceafa } from "../../FocusScope-
|
|
14
|
-
import { $ as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 } from "../../context-
|
|
15
|
-
import { a as $f7dceffc5ad7768b$export$4e328f61c538687f } from "../../useFocusRing-
|
|
16
|
-
import { $ as $a0d645289fe9b86b$export$e7f05e985daf4b5f } from "../../useSingleSelectListState-
|
|
11
|
+
import { E as $ea8dcbcb9ea1b556$export$7e924b3091a3bd18, $ as $f645667febf57a63$export$4c014de7c8940b4c, x as $6179b936705e76d3$export$ae780daf29e6d456 } from "../../useHover-VPZwb-1l.js";
|
|
12
|
+
import { $ as $313b98861ee5dd6c$export$d6875122194c7b44 } from "../../useLabels-D8O3gOdV.js";
|
|
13
|
+
import { a as $9bf71ea28793e738$export$2d6ec8fc375ceafa } from "../../FocusScope-BxT4xfe9.js";
|
|
14
|
+
import { $ as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 } from "../../context-iUFQCK8m.js";
|
|
15
|
+
import { a as $f7dceffc5ad7768b$export$4e328f61c538687f } from "../../useFocusRing-Ct2N5S1b.js";
|
|
16
|
+
import { $ as $a0d645289fe9b86b$export$e7f05e985daf4b5f } from "../../useSingleSelectListState-sLg_MnX8.js";
|
|
17
17
|
import { s as sprintf } from "../../sprintf-DmNrJSYG.js";
|
|
18
18
|
import { _ as __ } from "../../default-i18n-CnQeC5Pl.js";
|
|
19
19
|
import { c as clsx } from "../../clsx-DgYk2OaC.js";
|
|
@@ -83,6 +83,7 @@ function $0175d55c2a017ebc$export$fdf4756d5b8ef90a(props, state, ref) {
|
|
|
83
83
|
delete domProps.id;
|
|
84
84
|
let linkProps = $ea8dcbcb9ea1b556$export$7e924b3091a3bd18(item === null || item === void 0 ? void 0 : item.props);
|
|
85
85
|
let { focusableProps } = $f645667febf57a63$export$4c014de7c8940b4c({
|
|
86
|
+
...item === null || item === void 0 ? void 0 : item.props,
|
|
86
87
|
isDisabled
|
|
87
88
|
}, ref);
|
|
88
89
|
return {
|
|
@@ -292,7 +293,7 @@ function $5e8ad37a45e1c704$var$TabsInner({ props, tabsRef: ref, collection }) {
|
|
|
292
293
|
let DOMProps = $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props, {
|
|
293
294
|
global: true
|
|
294
295
|
});
|
|
295
|
-
return /* @__PURE__ */ $dbSRa$react__default.createElement(
|
|
296
|
+
return /* @__PURE__ */ $dbSRa$react__default.createElement($64fa3d84918910a7$export$df3a06d6289f983e.div, {
|
|
296
297
|
...$3ef42575df84b30b$export$9d1611c77c2fe928(DOMProps, renderProps, focusProps),
|
|
297
298
|
ref,
|
|
298
299
|
slot: props.slot || void 0,
|
|
@@ -343,7 +344,7 @@ function $5e8ad37a45e1c704$var$TabListInner({ props, forwardedRef: ref }) {
|
|
|
343
344
|
global: true
|
|
344
345
|
});
|
|
345
346
|
delete DOMProps.id;
|
|
346
|
-
return /* @__PURE__ */ $dbSRa$react__default.createElement(
|
|
347
|
+
return /* @__PURE__ */ $dbSRa$react__default.createElement($64fa3d84918910a7$export$df3a06d6289f983e.div, {
|
|
347
348
|
...$3ef42575df84b30b$export$9d1611c77c2fe928(DOMProps, renderProps, tabListProps),
|
|
348
349
|
ref: objectRef,
|
|
349
350
|
"data-orientation": orientation || void 0
|
|
@@ -383,7 +384,7 @@ const $5e8ad37a45e1c704$export$3e41faf802a29e71 = /* @__PURE__ */ $e1995378a1429
|
|
|
383
384
|
isHovered
|
|
384
385
|
}
|
|
385
386
|
});
|
|
386
|
-
let ElementType = item.props.href ?
|
|
387
|
+
let ElementType = item.props.href ? $64fa3d84918910a7$export$df3a06d6289f983e.a : $64fa3d84918910a7$export$df3a06d6289f983e.div;
|
|
387
388
|
let DOMProps = $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props, {
|
|
388
389
|
global: true
|
|
389
390
|
});
|
|
@@ -445,7 +446,7 @@ function $5e8ad37a45e1c704$var$TabPanelInner(props) {
|
|
|
445
446
|
});
|
|
446
447
|
delete DOMProps.id;
|
|
447
448
|
let domProps = isSelected ? $3ef42575df84b30b$export$9d1611c77c2fe928(DOMProps, tabPanelProps, focusProps, renderProps) : $3ef42575df84b30b$export$9d1611c77c2fe928(DOMProps, renderProps);
|
|
448
|
-
return /* @__PURE__ */ $dbSRa$react__default.createElement(
|
|
449
|
+
return /* @__PURE__ */ $dbSRa$react__default.createElement($64fa3d84918910a7$export$df3a06d6289f983e.div, {
|
|
449
450
|
...domProps,
|
|
450
451
|
ref,
|
|
451
452
|
"data-focused": isFocused || void 0,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import { $ as $64fa3d84918910a7$export$29f1550f4b0d4415,
|
|
2
|
+
import { $ as $64fa3d84918910a7$export$29f1550f4b0d4415, k as $df56164dff5785e2$export$4338b53315abf666, l as $5dc95899b306f630$export$c9058316764c140e, g as $64fa3d84918910a7$export$ef03459518577ad4, h as $64fa3d84918910a7$export$4d86445c2cf5e3, a as $64fa3d84918910a7$export$df3a06d6289f983e, b as $3ef42575df84b30b$export$9d1611c77c2fe928 } from "../../utils-Cr3pLd9c.js";
|
|
3
3
|
import { $ as $65484d02dcb7eb3e$export$457c3d6518dd4c6f } from "../../filterDOMProps-eGTqWSTd.js";
|
|
4
4
|
import $dbSRa$react__default, { forwardRef, createContext } from "react";
|
|
5
|
-
import { $ as $3017fa7ffdddec74$export$8042c6c013fd5226 } from "../../useToggleState-
|
|
6
|
-
import { $ as $d2c8e2b0480f3f34$export$cbe85ee05b554577 } from "../../useToggle-
|
|
7
|
-
import { a as $f7dceffc5ad7768b$export$4e328f61c538687f } from "../../useFocusRing-
|
|
8
|
-
import { x as $6179b936705e76d3$export$ae780daf29e6d456 } from "../../useHover-
|
|
9
|
-
import { $ as $5c3e21d68f1c4674$export$439d29a4e110a164 } from "../../VisuallyHidden-
|
|
5
|
+
import { $ as $3017fa7ffdddec74$export$8042c6c013fd5226 } from "../../useToggleState-BhJn-Dz7.js";
|
|
6
|
+
import { $ as $d2c8e2b0480f3f34$export$cbe85ee05b554577 } from "../../useToggle-D0-c9HPm.js";
|
|
7
|
+
import { a as $f7dceffc5ad7768b$export$4e328f61c538687f } from "../../useFocusRing-Ct2N5S1b.js";
|
|
8
|
+
import { x as $6179b936705e76d3$export$ae780daf29e6d456 } from "../../useHover-VPZwb-1l.js";
|
|
9
|
+
import { $ as $5c3e21d68f1c4674$export$439d29a4e110a164 } from "../../VisuallyHidden-DXVaR_RC.js";
|
|
10
10
|
import { c as cva } from "../../index-BHpUy2Ix.js";
|
|
11
11
|
function $b418ec0c85c52f27$export$d853f7095ae95f88(props, state, ref) {
|
|
12
12
|
let { labelProps, inputProps, isSelected, isPressed, isDisabled, isReadOnly } = $d2c8e2b0480f3f34$export$cbe85ee05b554577(props, state, ref);
|
|
@@ -59,7 +59,7 @@ const $8e59e948500a8fe1$export$b5d5cf8927ab7262 = /* @__PURE__ */ forwardRef(fun
|
|
|
59
59
|
});
|
|
60
60
|
delete DOMProps.id;
|
|
61
61
|
delete DOMProps.onClick;
|
|
62
|
-
return /* @__PURE__ */ $dbSRa$react__default.createElement(
|
|
62
|
+
return /* @__PURE__ */ $dbSRa$react__default.createElement($64fa3d84918910a7$export$df3a06d6289f983e.label, {
|
|
63
63
|
...$3ef42575df84b30b$export$9d1611c77c2fe928(DOMProps, labelProps, hoverProps, renderProps),
|
|
64
64
|
ref,
|
|
65
65
|
slot: props.slot || void 0,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { $ as $01b77f81d0f07f68$export$b04be29aa201d4f5 } from "../../Label-
|
|
2
|
+
import { $ as $01b77f81d0f07f68$export$b04be29aa201d4f5 } from "../../Label-BDlf9vIY.js";
|
|
3
3
|
import { Switch } from "./switch.js";
|
|
4
4
|
import { RichLabel } from "../rich-label/rich-label.js";
|
|
5
5
|
import { c as clsx } from "../../clsx-DgYk2OaC.js";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { o as $ff5963eb1fccf552$export$e08e3b67e392101e, b as $3ef42575df84b30b$export$9d1611c77c2fe928, $ as $64fa3d84918910a7$export$29f1550f4b0d4415, h as $64fa3d84918910a7$export$4d86445c2cf5e3, a as $64fa3d84918910a7$export$df3a06d6289f983e } from "../../utils-Cr3pLd9c.js";
|
|
3
3
|
import { $ as $1d5b8b8664671ef2$export$c9549807523555e0 } from "../../SelectionIndicator-D7WMzeAW.js";
|
|
4
4
|
import $dbSRa$react__default, { createContext, forwardRef, useContext } from "react";
|
|
5
5
|
import { $ as $65484d02dcb7eb3e$export$457c3d6518dd4c6f } from "../../filterDOMProps-eGTqWSTd.js";
|
|
6
|
-
import { $ as $3017fa7ffdddec74$export$8042c6c013fd5226 } from "../../useToggleState-
|
|
7
|
-
import { $ as $701a24aa0da5b062$export$ea18c227d4417cc3 } from "../../useButton-
|
|
8
|
-
import { a as $f7dceffc5ad7768b$export$4e328f61c538687f } from "../../useFocusRing-
|
|
9
|
-
import { x as $6179b936705e76d3$export$ae780daf29e6d456 } from "../../useHover-
|
|
6
|
+
import { $ as $3017fa7ffdddec74$export$8042c6c013fd5226 } from "../../useToggleState-BhJn-Dz7.js";
|
|
7
|
+
import { $ as $701a24aa0da5b062$export$ea18c227d4417cc3 } from "../../useButton-DofKjCES.js";
|
|
8
|
+
import { a as $f7dceffc5ad7768b$export$4e328f61c538687f } from "../../useFocusRing-Ct2N5S1b.js";
|
|
9
|
+
import { x as $6179b936705e76d3$export$ae780daf29e6d456 } from "../../useHover-VPZwb-1l.js";
|
|
10
10
|
import { c as cva } from "../../index-BHpUy2Ix.js";
|
|
11
11
|
import { Tooltip } from "../tooltip/tooltip.js";
|
|
12
12
|
function $55f54f7887471b58$export$51e84d46ca0bc451(props, state, ref) {
|
|
@@ -71,7 +71,10 @@ const $efde0372d7a700fe$export$d2b052e7b4be1756 = /* @__PURE__ */ forwardRef(fun
|
|
|
71
71
|
id: props.id != null ? String(props.id) : void 0
|
|
72
72
|
}, state, ref);
|
|
73
73
|
let { focusProps, isFocused, isFocusVisible } = $f7dceffc5ad7768b$export$4e328f61c538687f(props);
|
|
74
|
-
let { hoverProps, isHovered } = $6179b936705e76d3$export$ae780daf29e6d456(
|
|
74
|
+
let { hoverProps, isHovered } = $6179b936705e76d3$export$ae780daf29e6d456({
|
|
75
|
+
...props,
|
|
76
|
+
isDisabled
|
|
77
|
+
});
|
|
75
78
|
let renderProps = $64fa3d84918910a7$export$4d86445c2cf5e3({
|
|
76
79
|
...props,
|
|
77
80
|
id: void 0,
|
|
@@ -91,7 +94,7 @@ const $efde0372d7a700fe$export$d2b052e7b4be1756 = /* @__PURE__ */ forwardRef(fun
|
|
|
91
94
|
});
|
|
92
95
|
delete DOMProps.id;
|
|
93
96
|
delete DOMProps.onClick;
|
|
94
|
-
return /* @__PURE__ */ $dbSRa$react__default.createElement(
|
|
97
|
+
return /* @__PURE__ */ $dbSRa$react__default.createElement($64fa3d84918910a7$export$df3a06d6289f983e.button, {
|
|
95
98
|
...$3ef42575df84b30b$export$9d1611c77c2fe928(DOMProps, renderProps, buttonProps, focusProps, hoverProps),
|
|
96
99
|
ref,
|
|
97
100
|
slot: props.slot || void 0,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
-
import { $ as $fc909762b330b746$export$61c6a8c84e605fb6, a as $2a41e45df1593e64$export$d39e1813b3bdd0e1, b as $44f671af83e7d9e0$export$2de4954e8ae13b9f, c as $44f671af83e7d9e0$export$746d02f47f4d381 } from "../../OverlayArrow-
|
|
3
|
-
import {
|
|
2
|
+
import { $ as $fc909762b330b746$export$61c6a8c84e605fb6, a as $2a41e45df1593e64$export$d39e1813b3bdd0e1, b as $44f671af83e7d9e0$export$2de4954e8ae13b9f, c as $44f671af83e7d9e0$export$746d02f47f4d381 } from "../../OverlayArrow-NzRV9wsn.js";
|
|
3
|
+
import { m as $b5e257d569688ac6$export$535bd6ca7f90a273, b as $3ef42575df84b30b$export$9d1611c77c2fe928, d as $bdb11010cef70236$export$f680877a34711e37, i as $64fa3d84918910a7$export$2881499e37b75b9a, $ as $64fa3d84918910a7$export$29f1550f4b0d4415, h as $64fa3d84918910a7$export$4d86445c2cf5e3, a as $64fa3d84918910a7$export$df3a06d6289f983e } from "../../utils-Cr3pLd9c.js";
|
|
4
4
|
import { $ as $65484d02dcb7eb3e$export$457c3d6518dd4c6f } from "../../filterDOMProps-eGTqWSTd.js";
|
|
5
|
-
import { $ as $d3f049242431219c$export$45fda7c47f93fd48, a as $d3f049242431219c$export$6d3443f2c48bfc20 } from "../../animation-
|
|
6
|
-
import { x as $6179b936705e76d3$export$ae780daf29e6d456, $ as $f645667febf57a63$export$4c014de7c8940b4c, v as $507fabe10e71c6fb$export$630ff653c5ada6a9, m as $507fabe10e71c6fb$export$b9b3dfddab17db27, z as $f645667febf57a63$export$13f3202a3e5ddd5 } from "../../useHover-
|
|
5
|
+
import { $ as $d3f049242431219c$export$45fda7c47f93fd48, a as $d3f049242431219c$export$6d3443f2c48bfc20 } from "../../animation-B2sADg3I.js";
|
|
6
|
+
import { x as $6179b936705e76d3$export$ae780daf29e6d456, $ as $f645667febf57a63$export$4c014de7c8940b4c, v as $507fabe10e71c6fb$export$630ff653c5ada6a9, m as $507fabe10e71c6fb$export$b9b3dfddab17db27, z as $f645667febf57a63$export$13f3202a3e5ddd5 } from "../../useHover-VPZwb-1l.js";
|
|
7
7
|
import $dbSRa$react__default, { useContext, useState, useMemo, useRef, useEffect, forwardRef, createContext } from "react";
|
|
8
8
|
import { a as $96b38030c423d352$export$9fc1347d4195ccb3 } from "../../PortalProvider-CHPnqDSH.js";
|
|
9
9
|
import { $ as $dbSRa$reactdom } from "../../index-sSixe2j_.js";
|
|
@@ -328,7 +328,7 @@ function $4e3b923658d69c60$var$TooltipInner(props) {
|
|
|
328
328
|
let DOMProps = $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props, {
|
|
329
329
|
global: true
|
|
330
330
|
});
|
|
331
|
-
return /* @__PURE__ */ $dbSRa$react__default.createElement(
|
|
331
|
+
return /* @__PURE__ */ $dbSRa$react__default.createElement($64fa3d84918910a7$export$df3a06d6289f983e.div, {
|
|
332
332
|
...$3ef42575df84b30b$export$9d1611c77c2fe928(DOMProps, renderProps, tooltipProps),
|
|
333
333
|
ref: props.tooltipRef,
|
|
334
334
|
style: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import $dbSRa$react__default, { useState, useEffect, useContext } from "react";
|
|
2
|
-
import {
|
|
2
|
+
import { m as $b5e257d569688ac6$export$535bd6ca7f90a273 } from "./utils-Cr3pLd9c.js";
|
|
3
3
|
const $148a7a147e38ea7f$var$RTL_SCRIPTS = /* @__PURE__ */ new Set([
|
|
4
4
|
"Arab",
|
|
5
5
|
"Syrc",
|
package/dist/icons/icons.js
CHANGED
|
@@ -3418,7 +3418,7 @@ const icons = {
|
|
|
3418
3418
|
/* @__PURE__ */ jsx("rect", { x: "11.75", y: "3", width: "4.5", height: "14", rx: "1.5", fill: "currentColor", fillOpacity: "0.5" }),
|
|
3419
3419
|
/* @__PURE__ */ jsx("path", { d: "M1 1h18M1 19h18", stroke: "currentColor", strokeLinecap: "round", fill: "none" })
|
|
3420
3420
|
] }),
|
|
3421
|
-
|
|
3421
|
+
verticalAlignBetweenAlt: /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", width: "20", height: "20", fill: "none", children: [
|
|
3422
3422
|
/* @__PURE__ */ jsx("rect", { x: "0.75", y: "3", width: "4.5", height: "14", rx: "1.5", fill: "currentColor", fillOpacity: "0.5" }),
|
|
3423
3423
|
/* @__PURE__ */ jsx("rect", { x: "14.75", y: "3", width: "4.5", height: "14", rx: "1.5", fill: "currentColor", fillOpacity: "0.5" }),
|
|
3424
3424
|
/* @__PURE__ */ jsx("path", { d: "M1 1h18M1 19h18", stroke: "currentColor", strokeLinecap: "round", fill: "none" })
|
|
@@ -3433,7 +3433,7 @@ const icons = {
|
|
|
3433
3433
|
/* @__PURE__ */ jsx("rect", { width: "4.5", height: "14", rx: "1.5", transform: "matrix(0 1 1 0 3 11.75)", fill: "currentColor", fillOpacity: "0.5" }),
|
|
3434
3434
|
/* @__PURE__ */ jsx("path", { d: "M1 1v18M19 1v18", stroke: "currentColor", strokeLinecap: "round", fill: "none" })
|
|
3435
3435
|
] }),
|
|
3436
|
-
|
|
3436
|
+
horizontalAlignBetweenAlt: /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 20 20", width: "20", height: "20", fill: "none", children: [
|
|
3437
3437
|
/* @__PURE__ */ jsx("rect", { width: "4.5", height: "14", rx: "1.5", transform: "matrix(0 1 1 0 3 .75)", fill: "currentColor", fillOpacity: "0.5" }),
|
|
3438
3438
|
/* @__PURE__ */ jsx("rect", { width: "4.5", height: "14", rx: "1.5", transform: "matrix(0 1 1 0 3 14.75)", fill: "currentColor", fillOpacity: "0.5" }),
|
|
3439
3439
|
/* @__PURE__ */ jsx("path", { d: "M1 1v18M19 1v18", stroke: "currentColor", strokeLinecap: "round", fill: "none" })
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { Button, ButtonGroup } from "./components/button/button.js";
|
|
|
5
5
|
import { Checkbox } from "./components/checkbox/checkbox.js";
|
|
6
6
|
import { ComponentToggle } from "./components/component-toggle/component-toggle.js";
|
|
7
7
|
import { ContainerPanel } from "./components/container-panel/container-panel.js";
|
|
8
|
-
import { C } from "./color-swatch-
|
|
8
|
+
import { C } from "./color-swatch-DtaLObbd.js";
|
|
9
9
|
import { ColorPicker } from "./components/color-pickers/color-picker.js";
|
|
10
10
|
import { ColumnConfigSlider, ColumnConfigSliderOutput } from "./components/slider/column-config-slider.js";
|
|
11
11
|
import { Container, ContainerGroup } from "./components/base-control/container.js";
|
|
@@ -47,6 +47,7 @@ import { OptionsPanel, OptionsPanelHeader, OptionsPanelIntro, OptionsPanelSectio
|
|
|
47
47
|
import { Select } from "./components/select/single-select.js";
|
|
48
48
|
import { Slider } from "./components/slider/slider.js";
|
|
49
49
|
import { SmartImage } from "./components/smart-image/smart-image.js";
|
|
50
|
+
import { __SmartImageNext } from "./components/smart-image/smart-image-next.js";
|
|
50
51
|
import { SolidColorPicker } from "./components/color-pickers/solid-color-picker.js";
|
|
51
52
|
import { Spacer } from "./components/spacer/spacer.js";
|
|
52
53
|
import { Tab, TabList, TabPanel, Tabs } from "./components/tabs/tabs.js";
|
|
@@ -132,5 +133,6 @@ export {
|
|
|
132
133
|
Tooltip,
|
|
133
134
|
TriggeredPopover,
|
|
134
135
|
VStack,
|
|
136
|
+
__SmartImageNext,
|
|
135
137
|
getColumnConfigOutputText
|
|
136
138
|
};
|