@uniformdev/design-system 20.72.1 → 20.72.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/index.js +177 -65
- package/dist/index.d.mts +16 -2
- package/dist/index.d.ts +16 -2
- package/dist/index.js +133 -21
- package/package.json +4 -4
package/dist/esm/index.js
CHANGED
|
@@ -3530,6 +3530,87 @@ var inputError = css15`
|
|
|
3530
3530
|
border-color: var(--action-destructive-hover);
|
|
3531
3531
|
}
|
|
3532
3532
|
`;
|
|
3533
|
+
var inputPrefixGroup = css15`
|
|
3534
|
+
align-items: center;
|
|
3535
|
+
background-color: var(--white);
|
|
3536
|
+
border: 1px solid var(--gray-200);
|
|
3537
|
+
border-radius: var(--rounded-sm);
|
|
3538
|
+
display: flex;
|
|
3539
|
+
min-height: 50px;
|
|
3540
|
+
padding-left: var(--spacing-sm);
|
|
3541
|
+
position: relative;
|
|
3542
|
+
transition:
|
|
3543
|
+
background var(--duration-fast) var(--timing-ease-out),
|
|
3544
|
+
border-color var(--duration-fast) var(--timing-ease-out),
|
|
3545
|
+
box-shadow var(--duration-fast) var(--timing-ease-out);
|
|
3546
|
+
|
|
3547
|
+
&:hover {
|
|
3548
|
+
border-color: var(--accent-dark-hover);
|
|
3549
|
+
}
|
|
3550
|
+
|
|
3551
|
+
&:focus-within {
|
|
3552
|
+
border-color: var(--accent-dark-active);
|
|
3553
|
+
box-shadow: var(--elevation-100);
|
|
3554
|
+
outline: none;
|
|
3555
|
+
}
|
|
3556
|
+
|
|
3557
|
+
&:has(input:disabled) {
|
|
3558
|
+
border-color: var(--gray-200);
|
|
3559
|
+
}
|
|
3560
|
+
|
|
3561
|
+
&:has(input:disabled) [data-input-prefix] {
|
|
3562
|
+
color: var(--gray-300);
|
|
3563
|
+
}
|
|
3564
|
+
`;
|
|
3565
|
+
var inputPrefixGroupError = css15`
|
|
3566
|
+
border-color: var(--action-destructive-default);
|
|
3567
|
+
box-shadow: var(--elevation-100);
|
|
3568
|
+
|
|
3569
|
+
&:hover {
|
|
3570
|
+
border-color: var(--action-destructive-hover);
|
|
3571
|
+
}
|
|
3572
|
+
`;
|
|
3573
|
+
var inputPrefixSlot = css15`
|
|
3574
|
+
color: var(--gray-300);
|
|
3575
|
+
flex: none;
|
|
3576
|
+
font-size: 1rem;
|
|
3577
|
+
padding-right: var(--spacing-sm);
|
|
3578
|
+
pointer-events: none;
|
|
3579
|
+
white-space: nowrap;
|
|
3580
|
+
`;
|
|
3581
|
+
var inputInPrefixGroup = css15`
|
|
3582
|
+
appearance: none;
|
|
3583
|
+
background: transparent;
|
|
3584
|
+
border: 0;
|
|
3585
|
+
box-shadow: none;
|
|
3586
|
+
color: var(--gray-700);
|
|
3587
|
+
flex: 1;
|
|
3588
|
+
min-height: 50px;
|
|
3589
|
+
min-width: 0;
|
|
3590
|
+
padding: 12px var(--spacing-base) 12px 0;
|
|
3591
|
+
width: 100%;
|
|
3592
|
+
|
|
3593
|
+
&::placeholder {
|
|
3594
|
+
color: var(--gray-400);
|
|
3595
|
+
}
|
|
3596
|
+
|
|
3597
|
+
&:hover,
|
|
3598
|
+
&:focus,
|
|
3599
|
+
&:focus-visible {
|
|
3600
|
+
border: 0;
|
|
3601
|
+
box-shadow: none;
|
|
3602
|
+
outline: none;
|
|
3603
|
+
}
|
|
3604
|
+
|
|
3605
|
+
&:disabled,
|
|
3606
|
+
&:disabled::placeholder {
|
|
3607
|
+
cursor: not-allowed;
|
|
3608
|
+
color: var(--gray-300);
|
|
3609
|
+
}
|
|
3610
|
+
`;
|
|
3611
|
+
var inputInPrefixGroupWithIcon = css15`
|
|
3612
|
+
padding-right: var(--spacing-2xl);
|
|
3613
|
+
`;
|
|
3533
3614
|
var inputIcon = css15`
|
|
3534
3615
|
align-items: center;
|
|
3535
3616
|
display: flex;
|
|
@@ -5715,11 +5796,12 @@ var Label = ({ children, className, testId, ...props }) => {
|
|
|
5715
5796
|
};
|
|
5716
5797
|
|
|
5717
5798
|
// src/components/Input/Input.tsx
|
|
5718
|
-
import { jsx as jsx39, jsxs as jsxs25 } from "@emotion/react/jsx-runtime";
|
|
5799
|
+
import { Fragment as Fragment4, jsx as jsx39, jsxs as jsxs25 } from "@emotion/react/jsx-runtime";
|
|
5719
5800
|
var Input = forwardRef9(
|
|
5720
5801
|
({
|
|
5721
5802
|
label: label2,
|
|
5722
5803
|
icon,
|
|
5804
|
+
prefix,
|
|
5723
5805
|
id,
|
|
5724
5806
|
caption,
|
|
5725
5807
|
showLabel = true,
|
|
@@ -5737,6 +5819,24 @@ var Input = forwardRef9(
|
|
|
5737
5819
|
...props
|
|
5738
5820
|
}, ref) => {
|
|
5739
5821
|
const isNumberInputAndMouseWheelDisabled = enableMouseWheel !== true && props.type === "number";
|
|
5822
|
+
const inputElement = /* @__PURE__ */ jsx39(
|
|
5823
|
+
"input",
|
|
5824
|
+
{
|
|
5825
|
+
id,
|
|
5826
|
+
css: [
|
|
5827
|
+
prefix ? inputInPrefixGroup : input("nowrap"),
|
|
5828
|
+
prefix && icon ? inputInPrefixGroupWithIcon : void 0,
|
|
5829
|
+
!prefix && errorMessage ? inputError : void 0,
|
|
5830
|
+
!prefix && icon ? inputWithIcon : "",
|
|
5831
|
+
typeof classNameControl === "object" ? classNameControl : void 0
|
|
5832
|
+
],
|
|
5833
|
+
"aria-label": showLabel || typeof label2 !== "string" ? void 0 : label2,
|
|
5834
|
+
className: typeof classNameControl === "string" ? classNameControl : "",
|
|
5835
|
+
onWheel: isNumberInputAndMouseWheelDisabled ? disableMouseWheelEvent : void 0,
|
|
5836
|
+
...props,
|
|
5837
|
+
ref
|
|
5838
|
+
}
|
|
5839
|
+
);
|
|
5740
5840
|
return /* @__PURE__ */ jsxs25(
|
|
5741
5841
|
"div",
|
|
5742
5842
|
{
|
|
@@ -5753,31 +5853,27 @@ var Input = forwardRef9(
|
|
|
5753
5853
|
children: label2
|
|
5754
5854
|
}
|
|
5755
5855
|
) : null,
|
|
5756
|
-
/* @__PURE__ */
|
|
5856
|
+
/* @__PURE__ */ jsx39(
|
|
5757
5857
|
"div",
|
|
5758
5858
|
{
|
|
5759
5859
|
css: [inputContainer, typeof classNameContainer === "object" ? classNameContainer : void 0],
|
|
5760
5860
|
className: typeof classNameContainer === "string" ? classNameContainer : "",
|
|
5761
|
-
children:
|
|
5762
|
-
|
|
5763
|
-
|
|
5764
|
-
|
|
5765
|
-
|
|
5766
|
-
|
|
5767
|
-
|
|
5768
|
-
|
|
5769
|
-
|
|
5770
|
-
|
|
5771
|
-
|
|
5772
|
-
|
|
5773
|
-
|
|
5774
|
-
|
|
5775
|
-
...props,
|
|
5776
|
-
ref
|
|
5777
|
-
}
|
|
5778
|
-
),
|
|
5861
|
+
children: prefix ? /* @__PURE__ */ jsxs25(
|
|
5862
|
+
"div",
|
|
5863
|
+
{
|
|
5864
|
+
css: [inputPrefixGroup, errorMessage ? inputPrefixGroupError : void 0],
|
|
5865
|
+
"data-input-prefix-group": true,
|
|
5866
|
+
"data-testid": "input-prefix-group",
|
|
5867
|
+
children: [
|
|
5868
|
+
/* @__PURE__ */ jsx39("span", { css: inputPrefixSlot, "aria-hidden": "true", "data-input-prefix": true, children: prefix }),
|
|
5869
|
+
inputElement,
|
|
5870
|
+
icon ? /* @__PURE__ */ jsx39("div", { css: inputIcon, children: icon }) : null
|
|
5871
|
+
]
|
|
5872
|
+
}
|
|
5873
|
+
) : /* @__PURE__ */ jsxs25(Fragment4, { children: [
|
|
5874
|
+
inputElement,
|
|
5779
5875
|
icon ? /* @__PURE__ */ jsx39("div", { css: inputIcon, children: icon }) : null
|
|
5780
|
-
]
|
|
5876
|
+
] })
|
|
5781
5877
|
}
|
|
5782
5878
|
),
|
|
5783
5879
|
/* @__PURE__ */ jsx39(
|
|
@@ -6294,7 +6390,7 @@ var DebouncedInputKeywordSearch = forwardRef10(
|
|
|
6294
6390
|
|
|
6295
6391
|
// src/components/Input/InputSelect.tsx
|
|
6296
6392
|
import { forwardRef as forwardRef11 } from "react";
|
|
6297
|
-
import { Fragment as
|
|
6393
|
+
import { Fragment as Fragment5, jsx as jsx43, jsxs as jsxs27 } from "@emotion/react/jsx-runtime";
|
|
6298
6394
|
var InputSelect = forwardRef11(
|
|
6299
6395
|
({
|
|
6300
6396
|
label: label2,
|
|
@@ -6318,7 +6414,7 @@ var InputSelect = forwardRef11(
|
|
|
6318
6414
|
css: [inputContainer, typeof classNameContainer === "object" ? classNameContainer : void 0],
|
|
6319
6415
|
className: typeof classNameContainer === "string" ? classNameContainer : "",
|
|
6320
6416
|
children: [
|
|
6321
|
-
showLabel ? /* @__PURE__ */ jsx43(
|
|
6417
|
+
showLabel ? /* @__PURE__ */ jsx43(Fragment5, { children: /* @__PURE__ */ jsxs27(
|
|
6322
6418
|
Label,
|
|
6323
6419
|
{
|
|
6324
6420
|
htmlFor: props.id,
|
|
@@ -6754,10 +6850,10 @@ var SuccessMessage = ({ message, testId, ...props }) => {
|
|
|
6754
6850
|
|
|
6755
6851
|
// src/components/Input/Textarea.tsx
|
|
6756
6852
|
import { forwardRef as forwardRef14 } from "react";
|
|
6757
|
-
import { Fragment as
|
|
6853
|
+
import { Fragment as Fragment6, jsx as jsx49, jsxs as jsxs32 } from "@emotion/react/jsx-runtime";
|
|
6758
6854
|
var Textarea = forwardRef14(
|
|
6759
6855
|
({ label: label2, icon, id, caption, showLabel = true, errorMessage, warningMessage, ...props }, ref) => {
|
|
6760
|
-
return /* @__PURE__ */ jsxs32(
|
|
6856
|
+
return /* @__PURE__ */ jsxs32(Fragment6, { children: [
|
|
6761
6857
|
showLabel ? /* @__PURE__ */ jsx49("label", { htmlFor: id, css: [labelText], children: label2 }) : null,
|
|
6762
6858
|
/* @__PURE__ */ jsxs32("div", { css: [inputContainer], children: [
|
|
6763
6859
|
/* @__PURE__ */ jsx49(
|
|
@@ -7150,7 +7246,7 @@ var wholeButtonWithMenuIconOffset = css39`
|
|
|
7150
7246
|
`;
|
|
7151
7247
|
|
|
7152
7248
|
// src/components/ButtonWithMenu/ButtonWithMenu.tsx
|
|
7153
|
-
import { Fragment as
|
|
7249
|
+
import { Fragment as Fragment7, jsx as jsx52, jsxs as jsxs35 } from "@emotion/react/jsx-runtime";
|
|
7154
7250
|
var buttonTheme2 = {
|
|
7155
7251
|
primary: buttonPrimary2,
|
|
7156
7252
|
secondary: buttonSecondary2,
|
|
@@ -7263,7 +7359,7 @@ var ButtonWithMenu = ({
|
|
|
7263
7359
|
"data-testid": "multioptions-button",
|
|
7264
7360
|
"aria-disabled": isButtonDisabled,
|
|
7265
7361
|
children: [
|
|
7266
|
-
tip ? /* @__PURE__ */ jsx52(Tooltip, { title: /* @__PURE__ */ jsx52(
|
|
7362
|
+
tip ? /* @__PURE__ */ jsx52(Tooltip, { title: /* @__PURE__ */ jsx52(Fragment7, { children: tip }), children: /* @__PURE__ */ jsx52("span", { children: primaryButton }) }) : /* @__PURE__ */ jsx52("span", { children: primaryButton }),
|
|
7267
7363
|
isButtonDisabled ? menuButton : /* @__PURE__ */ jsx52(
|
|
7268
7364
|
Menu,
|
|
7269
7365
|
{
|
|
@@ -7748,7 +7844,7 @@ var paragraph = css44`
|
|
|
7748
7844
|
`;
|
|
7749
7845
|
|
|
7750
7846
|
// src/components/Typography/Paragraph.tsx
|
|
7751
|
-
import { Fragment as
|
|
7847
|
+
import { Fragment as Fragment8, jsx as jsx57 } from "@emotion/react/jsx-runtime";
|
|
7752
7848
|
import { createElement } from "@emotion/react";
|
|
7753
7849
|
var Paragraph = ({ className, htmlContent, children, ...pAttributes }) => {
|
|
7754
7850
|
if (htmlContent && Array.isArray(htmlContent)) {
|
|
@@ -7762,7 +7858,7 @@ var Paragraph = ({ className, htmlContent, children, ...pAttributes }) => {
|
|
|
7762
7858
|
dangerouslySetInnerHTML: { __html: html }
|
|
7763
7859
|
}
|
|
7764
7860
|
));
|
|
7765
|
-
return /* @__PURE__ */ jsx57(
|
|
7861
|
+
return /* @__PURE__ */ jsx57(Fragment8, { children: paragraphContent });
|
|
7766
7862
|
}
|
|
7767
7863
|
return htmlContent ? /* @__PURE__ */ jsx57(
|
|
7768
7864
|
"p",
|
|
@@ -8867,7 +8963,7 @@ var DateTimePickerVariant = /* @__PURE__ */ ((DateTimePickerVariant2) => {
|
|
|
8867
8963
|
})(DateTimePickerVariant || {});
|
|
8868
8964
|
|
|
8869
8965
|
// src/components/DateTimePicker/DateTimePicker.tsx
|
|
8870
|
-
import { Fragment as
|
|
8966
|
+
import { Fragment as Fragment9, jsx as jsx67, jsxs as jsxs45 } from "@emotion/react/jsx-runtime";
|
|
8871
8967
|
var timeZoneOptions = typeof Intl !== "undefined" && typeof Intl.supportedValuesOf === "function" ? Intl.supportedValuesOf("timeZone") : ["Etc/UTC"];
|
|
8872
8968
|
function getTimezoneOffset(tz) {
|
|
8873
8969
|
const now = /* @__PURE__ */ new Date();
|
|
@@ -8927,7 +9023,7 @@ var DateTimePickerPopoverContent = ({
|
|
|
8927
9023
|
handleTimezoneChange,
|
|
8928
9024
|
handleSelectClick,
|
|
8929
9025
|
setOpen
|
|
8930
|
-
}) => /* @__PURE__ */ jsxs45(
|
|
9026
|
+
}) => /* @__PURE__ */ jsxs45(Fragment9, { children: [
|
|
8931
9027
|
/* @__PURE__ */ jsxs45("div", { css: popoverInnerContent, children: [
|
|
8932
9028
|
/* @__PURE__ */ jsx67("div", { css: calendarSection, children: /* @__PURE__ */ jsx67(
|
|
8933
9029
|
Calendar,
|
|
@@ -9764,7 +9860,7 @@ var DrawerContent2 = ({ children, buttonGroup, noPadding = false, ...props }) =>
|
|
|
9764
9860
|
|
|
9765
9861
|
// src/components/Drawer/DrawerRenderer.tsx
|
|
9766
9862
|
import { useEffect as useEffect9, useMemo as useMemo4 } from "react";
|
|
9767
|
-
import { Fragment as
|
|
9863
|
+
import { Fragment as Fragment10, jsx as jsx74, jsxs as jsxs50 } from "@emotion/react/jsx-runtime";
|
|
9768
9864
|
var drawerWidth = {
|
|
9769
9865
|
narrow: "29rem",
|
|
9770
9866
|
medium: "43rem",
|
|
@@ -9857,7 +9953,7 @@ var DrawerWrapper = ({
|
|
|
9857
9953
|
offsetInPx = Math.round(maxLayeringInPx * relativeLevel);
|
|
9858
9954
|
}
|
|
9859
9955
|
const calculatedWidth = `calc(${width} - ${offsetInPx}px)`;
|
|
9860
|
-
return /* @__PURE__ */ jsxs50(
|
|
9956
|
+
return /* @__PURE__ */ jsxs50(Fragment10, { children: [
|
|
9861
9957
|
/* @__PURE__ */ jsx74("div", { css: drawerWrapperOverlayStyles, onClick: onOverlayClick }),
|
|
9862
9958
|
/* @__PURE__ */ jsx74(
|
|
9863
9959
|
"div",
|
|
@@ -10591,10 +10687,10 @@ var IntegrationLoadingFrame = css67`
|
|
|
10591
10687
|
`;
|
|
10592
10688
|
|
|
10593
10689
|
// src/components/Tiles/IntegrationLoadingTile.tsx
|
|
10594
|
-
import { Fragment as
|
|
10690
|
+
import { Fragment as Fragment11, jsx as jsx86, jsxs as jsxs59 } from "@emotion/react/jsx-runtime";
|
|
10595
10691
|
var IntegrationLoadingTile = ({ count = 1 }) => {
|
|
10596
10692
|
const componentCount = Array.from(Array(count).keys());
|
|
10597
|
-
return /* @__PURE__ */ jsx86(
|
|
10693
|
+
return /* @__PURE__ */ jsx86(Fragment11, { children: componentCount.map((i) => /* @__PURE__ */ jsxs59("div", { css: IntegrationLoadingTileContainer, children: [
|
|
10598
10694
|
/* @__PURE__ */ jsx86("div", { css: [IntegrationLoadingTileImg, IntegrationLoadingFrame], role: "presentation" }),
|
|
10599
10695
|
/* @__PURE__ */ jsx86("div", { css: [IntegrationLoadingTileText, IntegrationLoadingFrame] })
|
|
10600
10696
|
] }, i)) });
|
|
@@ -10934,7 +11030,7 @@ var IntegrationModalHeaderContentWrapper = css72`
|
|
|
10934
11030
|
`;
|
|
10935
11031
|
|
|
10936
11032
|
// src/components/IntegrationModalHeader/IntegrationModalHeader.tsx
|
|
10937
|
-
import { Fragment as
|
|
11033
|
+
import { Fragment as Fragment12, jsx as jsx93, jsxs as jsxs62 } from "@emotion/react/jsx-runtime";
|
|
10938
11034
|
var HexModalBackground = ({ ...props }) => {
|
|
10939
11035
|
return /* @__PURE__ */ jsxs62(
|
|
10940
11036
|
"svg",
|
|
@@ -10975,7 +11071,7 @@ var HexModalBackground = ({ ...props }) => {
|
|
|
10975
11071
|
);
|
|
10976
11072
|
};
|
|
10977
11073
|
var IntegrationModalHeader = ({ icon, name, menu, children }) => {
|
|
10978
|
-
return /* @__PURE__ */ jsxs62(
|
|
11074
|
+
return /* @__PURE__ */ jsxs62(Fragment12, { children: [
|
|
10979
11075
|
/* @__PURE__ */ jsx93(HexModalBackground, { css: IntegrationModalHeaderSVGBackground, role: "presentation" }),
|
|
10980
11076
|
/* @__PURE__ */ jsx93("div", { css: IntegrationModalHeaderGroup, children: /* @__PURE__ */ jsxs62("div", { css: IntegrationModalHeaderTitleGroup, children: [
|
|
10981
11077
|
icon ? /* @__PURE__ */ jsx93(IntegrationModalIcon, { icon, name: name || "" }) : null,
|
|
@@ -12112,7 +12208,7 @@ var QuickFilter = ({
|
|
|
12112
12208
|
};
|
|
12113
12209
|
|
|
12114
12210
|
// src/components/LabelsQuickFilter/LabelsQuickFilter.tsx
|
|
12115
|
-
import { Fragment as
|
|
12211
|
+
import { Fragment as Fragment13, jsx as jsx100, jsxs as jsxs67 } from "@emotion/react/jsx-runtime";
|
|
12116
12212
|
var LabelsQuickFilter = ({
|
|
12117
12213
|
buttonText,
|
|
12118
12214
|
addButtonText,
|
|
@@ -12328,7 +12424,7 @@ var LabelsQuickFilter = ({
|
|
|
12328
12424
|
}
|
|
12329
12425
|
return renderLabelItem(item);
|
|
12330
12426
|
}),
|
|
12331
|
-
canCreateLabel && onCreateLabel ? /* @__PURE__ */ jsxs67(
|
|
12427
|
+
canCreateLabel && onCreateLabel ? /* @__PURE__ */ jsxs67(Fragment13, { children: [
|
|
12332
12428
|
filteredItems.length > 0 ? /* @__PURE__ */ jsx100(MenuItemSeparator, {}) : null,
|
|
12333
12429
|
/* @__PURE__ */ jsx100(MenuItem, { hideOnClick: false, disabled: isCreateDisabled, onClick: () => onCreateLabel(searchTerm), children: /* @__PURE__ */ jsxs67(HorizontalRhythm, { align: "center", gap: "sm", css: { fontSize: "var(--fs-sm)" }, children: [
|
|
12334
12430
|
/* @__PURE__ */ jsx100("span", { css: { width: "var(--spacing-base)", flexShrink: 0 } }),
|
|
@@ -12383,7 +12479,7 @@ var PopoverBody2 = ({
|
|
|
12383
12479
|
};
|
|
12384
12480
|
|
|
12385
12481
|
// src/components/Popover/Popover.tsx
|
|
12386
|
-
import { Fragment as
|
|
12482
|
+
import { Fragment as Fragment14, jsx as jsx102, jsxs as jsxs68 } from "@emotion/react/jsx-runtime";
|
|
12387
12483
|
var PopoverComponentContext = createContext7(null);
|
|
12388
12484
|
var Popover2 = ({
|
|
12389
12485
|
iconColor = "action",
|
|
@@ -12473,7 +12569,7 @@ var Popover2 = ({
|
|
|
12473
12569
|
title: buttonText,
|
|
12474
12570
|
"data-testid": testId,
|
|
12475
12571
|
disabled: disabled2,
|
|
12476
|
-
children: trigger2 ? trigger2 : /* @__PURE__ */ jsxs68(
|
|
12572
|
+
children: trigger2 ? trigger2 : /* @__PURE__ */ jsxs68(Fragment14, { children: [
|
|
12477
12573
|
/* @__PURE__ */ jsx102(Icon, { icon, iconColor, size: iconSize2 }),
|
|
12478
12574
|
/* @__PURE__ */ jsx102("span", { hidden: true, children: buttonText })
|
|
12479
12575
|
] })
|
|
@@ -13382,7 +13478,7 @@ var CoverSelectedChip = css86`
|
|
|
13382
13478
|
`;
|
|
13383
13479
|
|
|
13384
13480
|
// src/components/Objects/ObjectGridItemCardCover.tsx
|
|
13385
|
-
import { Fragment as
|
|
13481
|
+
import { Fragment as Fragment15, jsx as jsx113, jsxs as jsxs78 } from "@emotion/react/jsx-runtime";
|
|
13386
13482
|
var ObjectGridItemCardCover = (props) => {
|
|
13387
13483
|
if ("imageUrl" in props && props.imageUrl) {
|
|
13388
13484
|
const { imageUrl, srcSet, alt, errorFallbackSrc } = props;
|
|
@@ -13416,7 +13512,7 @@ var ObjectGridItemCover = ({
|
|
|
13416
13512
|
coverSlotBottomRight,
|
|
13417
13513
|
...props
|
|
13418
13514
|
}) => {
|
|
13419
|
-
return /* @__PURE__ */ jsxs78(
|
|
13515
|
+
return /* @__PURE__ */ jsxs78(Fragment15, { children: [
|
|
13420
13516
|
coverSlotLeft ? /* @__PURE__ */ jsx113("div", { css: [CoverSlot, CoverSlotLeft], children: coverSlotLeft }) : null,
|
|
13421
13517
|
/* @__PURE__ */ jsx113(ObjectGridItemCardCover, { ...props }),
|
|
13422
13518
|
coverSlotRight ? /* @__PURE__ */ jsx113("div", { css: [CoverSlot, CoverSlotRight], children: coverSlotRight }) : null,
|
|
@@ -14443,7 +14539,7 @@ var previewModalImage = css97`
|
|
|
14443
14539
|
`;
|
|
14444
14540
|
|
|
14445
14541
|
// src/components/ParameterInputs/ParameterImagePreview.tsx
|
|
14446
|
-
import { Fragment as
|
|
14542
|
+
import { Fragment as Fragment16, jsx as jsx128, jsxs as jsxs88 } from "@emotion/react/jsx-runtime";
|
|
14447
14543
|
function ParameterImagePreview({ imageSrc }) {
|
|
14448
14544
|
const [showModal, setShowModal] = useState24(false);
|
|
14449
14545
|
return imageSrc ? /* @__PURE__ */ jsxs88("div", { css: previewWrapper, children: [
|
|
@@ -14462,7 +14558,7 @@ function ParameterImagePreview({ imageSrc }) {
|
|
|
14462
14558
|
] }) : null;
|
|
14463
14559
|
}
|
|
14464
14560
|
var PreviewImageModal = ({ open, onRequestClose, imageSrc }) => {
|
|
14465
|
-
return open ? /* @__PURE__ */ jsx128(
|
|
14561
|
+
return open ? /* @__PURE__ */ jsx128(Fragment16, { children: createPortal2(
|
|
14466
14562
|
/* @__PURE__ */ jsx128(
|
|
14467
14563
|
Modal,
|
|
14468
14564
|
{
|
|
@@ -15013,7 +15109,7 @@ var ParameterShellPlaceholder = ({ children }) => {
|
|
|
15013
15109
|
var ParameterOverrideMarker = (props) => /* @__PURE__ */ jsx131(Tooltip, { title: "The default value has been overridden", ...props.tooltipProps, children: /* @__PURE__ */ jsx131("button", { type: "button", css: overrideMarker, ...props, children: /* @__PURE__ */ jsx131("span", { hidden: true, children: "reset overridden value to default" }) }) });
|
|
15014
15110
|
|
|
15015
15111
|
// src/components/ParameterInputs/ParameterImage.tsx
|
|
15016
|
-
import { Fragment as
|
|
15112
|
+
import { Fragment as Fragment17, jsx as jsx132, jsxs as jsxs90 } from "@emotion/react/jsx-runtime";
|
|
15017
15113
|
var ParameterImage = forwardRef25(
|
|
15018
15114
|
({ children, ...props }, ref) => {
|
|
15019
15115
|
const { shellProps, innerProps } = extractParameterProps(props);
|
|
@@ -15027,7 +15123,7 @@ var ParameterImageInner = forwardRef25((props, ref) => {
|
|
|
15027
15123
|
const { value } = props;
|
|
15028
15124
|
const { id, label: label2, hiddenLabel, errorMessage } = useParameterShell();
|
|
15029
15125
|
const deferredValue = useDeferredValue(value);
|
|
15030
|
-
return /* @__PURE__ */ jsxs90(
|
|
15126
|
+
return /* @__PURE__ */ jsxs90(Fragment17, { children: [
|
|
15031
15127
|
/* @__PURE__ */ jsx132(
|
|
15032
15128
|
"input",
|
|
15033
15129
|
{
|
|
@@ -15366,7 +15462,7 @@ var ParameterMultiSelectInner = (props) => {
|
|
|
15366
15462
|
};
|
|
15367
15463
|
|
|
15368
15464
|
// src/components/ParameterInputs/ParameterNameAndPublicIdInput.tsx
|
|
15369
|
-
import { Fragment as
|
|
15465
|
+
import { Fragment as Fragment18, jsx as jsx137, jsxs as jsxs92 } from "@emotion/react/jsx-runtime";
|
|
15370
15466
|
var ParameterNameAndPublicIdInput = ({
|
|
15371
15467
|
id,
|
|
15372
15468
|
onBlur,
|
|
@@ -15392,7 +15488,7 @@ var ParameterNameAndPublicIdInput = ({
|
|
|
15392
15488
|
navigator.clipboard.writeText(values[publicIdFieldName]);
|
|
15393
15489
|
};
|
|
15394
15490
|
autoFocus == null ? void 0 : autoFocus();
|
|
15395
|
-
return /* @__PURE__ */ jsxs92(
|
|
15491
|
+
return /* @__PURE__ */ jsxs92(Fragment18, { children: [
|
|
15396
15492
|
/* @__PURE__ */ jsx137(
|
|
15397
15493
|
ParameterInput,
|
|
15398
15494
|
{
|
|
@@ -16677,7 +16773,7 @@ var normalizeStateForDeepEqualComparison = (editorState) => {
|
|
|
16677
16773
|
};
|
|
16678
16774
|
|
|
16679
16775
|
// src/components/ParameterInputs/rich-text/LinkNodePlugin.tsx
|
|
16680
|
-
import { Fragment as
|
|
16776
|
+
import { Fragment as Fragment19, jsx as jsx141, jsxs as jsxs94 } from "@emotion/react/jsx-runtime";
|
|
16681
16777
|
var isProjectMapLinkValue = (value) => {
|
|
16682
16778
|
return (value == null ? void 0 : value.type) === "projectMapNode" && Boolean(
|
|
16683
16779
|
value.nodeId && value.path && value.projectMapId
|
|
@@ -16750,12 +16846,28 @@ function convertAnchorElement(domNode) {
|
|
|
16750
16846
|
} else if (type === "tel" && path.startsWith("tel:")) {
|
|
16751
16847
|
path = path.replace("tel:", "");
|
|
16752
16848
|
}
|
|
16849
|
+
let attributes = void 0;
|
|
16850
|
+
if (linkFromAttribute && typeof linkFromAttribute === "object") {
|
|
16851
|
+
if ("attributes" in linkFromAttribute && linkFromAttribute.attributes !== null && typeof linkFromAttribute.attributes === "object") {
|
|
16852
|
+
const raw = linkFromAttribute.attributes;
|
|
16853
|
+
const parsed = {};
|
|
16854
|
+
for (const [k, v] of Object.entries(raw)) {
|
|
16855
|
+
if (typeof v === "string") {
|
|
16856
|
+
parsed[k] = v;
|
|
16857
|
+
}
|
|
16858
|
+
}
|
|
16859
|
+
if (Object.keys(parsed).length > 0) {
|
|
16860
|
+
attributes = parsed;
|
|
16861
|
+
}
|
|
16862
|
+
}
|
|
16863
|
+
}
|
|
16753
16864
|
const value = {
|
|
16754
16865
|
type,
|
|
16755
16866
|
path,
|
|
16756
16867
|
projectMapId,
|
|
16757
16868
|
nodeId,
|
|
16758
|
-
dynamicInputValues
|
|
16869
|
+
dynamicInputValues,
|
|
16870
|
+
attributes
|
|
16759
16871
|
};
|
|
16760
16872
|
if (isProjectMapLinkValue(value) || isNonProjectMapLinkValue(value)) {
|
|
16761
16873
|
node = $createLinkNode(value);
|
|
@@ -17165,7 +17277,7 @@ function LinkNodePlugin({
|
|
|
17165
17277
|
});
|
|
17166
17278
|
});
|
|
17167
17279
|
};
|
|
17168
|
-
return /* @__PURE__ */ jsxs94(
|
|
17280
|
+
return /* @__PURE__ */ jsxs94(Fragment19, { children: [
|
|
17169
17281
|
/* @__PURE__ */ jsx141(
|
|
17170
17282
|
NodeEventPlugin,
|
|
17171
17283
|
{
|
|
@@ -17699,7 +17811,7 @@ import { calculateZoomLevel } from "@lexical/utils";
|
|
|
17699
17811
|
import { $getNearestNodeFromDOMNode } from "lexical";
|
|
17700
17812
|
import { useCallback as useCallback15, useEffect as useEffect26, useMemo as useMemo11, useRef as useRef18, useState as useState29 } from "react";
|
|
17701
17813
|
import { createPortal as createPortal3 } from "react-dom";
|
|
17702
|
-
import { Fragment as
|
|
17814
|
+
import { Fragment as Fragment20, jsx as jsx143, jsxs as jsxs96 } from "@emotion/react/jsx-runtime";
|
|
17703
17815
|
var MIN_ROW_HEIGHT = 33;
|
|
17704
17816
|
var MIN_COLUMN_WIDTH = 50;
|
|
17705
17817
|
var tableResizer = css105`
|
|
@@ -18000,7 +18112,7 @@ function TableCellResizer({ editor, positioningAnchorEl }) {
|
|
|
18000
18112
|
};
|
|
18001
18113
|
}, [activeCell, draggingDirection, mouseCurrentPos, positioningAnchorEl]);
|
|
18002
18114
|
const resizerStyles = getResizers();
|
|
18003
|
-
return /* @__PURE__ */ jsx143("div", { ref: resizerRef, children: activeCell != null && !isMouseDown && /* @__PURE__ */ jsxs96(
|
|
18115
|
+
return /* @__PURE__ */ jsx143("div", { ref: resizerRef, children: activeCell != null && !isMouseDown && /* @__PURE__ */ jsxs96(Fragment20, { children: [
|
|
18004
18116
|
/* @__PURE__ */ jsx143(
|
|
18005
18117
|
"div",
|
|
18006
18118
|
{
|
|
@@ -18260,7 +18372,7 @@ var useRichTextToolbarState = ({ config }) => {
|
|
|
18260
18372
|
};
|
|
18261
18373
|
|
|
18262
18374
|
// src/components/ParameterInputs/rich-text/toolbar/RichTextToolbar.tsx
|
|
18263
|
-
import { Fragment as
|
|
18375
|
+
import { Fragment as Fragment21, jsx as jsx144, jsxs as jsxs97 } from "@emotion/react/jsx-runtime";
|
|
18264
18376
|
var toolbar = css106`
|
|
18265
18377
|
${scrollbarStyles}
|
|
18266
18378
|
background: var(--gray-50);
|
|
@@ -18517,7 +18629,7 @@ var RichTextToolbar = ({ config, customControls, onInsertTable, onInsertAsset })
|
|
|
18517
18629
|
children: /* @__PURE__ */ jsx144(RichTextToolbarIcon, { icon: "link" })
|
|
18518
18630
|
}
|
|
18519
18631
|
) }) : null,
|
|
18520
|
-
visibleLists.size > 0 ? /* @__PURE__ */ jsxs97(
|
|
18632
|
+
visibleLists.size > 0 ? /* @__PURE__ */ jsxs97(Fragment21, { children: [
|
|
18521
18633
|
visibleLists.has("unorderedList") ? /* @__PURE__ */ jsx144(Tooltip, { title: "Bullet List", placement: "top", children: /* @__PURE__ */ jsx144(
|
|
18522
18634
|
"button",
|
|
18523
18635
|
{
|
|
@@ -18700,7 +18812,7 @@ var editorInput = css107`
|
|
|
18700
18812
|
`;
|
|
18701
18813
|
|
|
18702
18814
|
// src/components/ParameterInputs/ParameterRichText.tsx
|
|
18703
|
-
import { Fragment as
|
|
18815
|
+
import { Fragment as Fragment22, jsx as jsx145, jsxs as jsxs98 } from "@emotion/react/jsx-runtime";
|
|
18704
18816
|
var ParameterRichText = ({
|
|
18705
18817
|
label: label2,
|
|
18706
18818
|
labelLeadingIcon,
|
|
@@ -18729,7 +18841,7 @@ var ParameterRichText = ({
|
|
|
18729
18841
|
menuItems,
|
|
18730
18842
|
children: [
|
|
18731
18843
|
/* @__PURE__ */ jsx145(ParameterRichTextInner, { ...innerProps, children }),
|
|
18732
|
-
menuItems ? /* @__PURE__ */ jsx145(ParameterMenuButton, { label: `${label2} menu`, children: /* @__PURE__ */ jsx145(
|
|
18844
|
+
menuItems ? /* @__PURE__ */ jsx145(ParameterMenuButton, { label: `${label2} menu`, children: /* @__PURE__ */ jsx145(Fragment22, { children: menuItems }) }) : null
|
|
18733
18845
|
]
|
|
18734
18846
|
}
|
|
18735
18847
|
);
|
|
@@ -18798,7 +18910,7 @@ var ParameterRichTextInner = ({
|
|
|
18798
18910
|
},
|
|
18799
18911
|
editable: !richTextProps.readOnly
|
|
18800
18912
|
};
|
|
18801
|
-
return /* @__PURE__ */ jsxs98(
|
|
18913
|
+
return /* @__PURE__ */ jsxs98(Fragment22, { children: [
|
|
18802
18914
|
/* @__PURE__ */ jsx145("div", { css: [editorWrapper, editorThemeStyles], className: editorWrapperClassName, children: /* @__PURE__ */ jsx145(LexicalComposer, { initialConfig: lexicalConfig, children: /* @__PURE__ */ jsx145(RichText, { ...richTextProps, children }) }) }),
|
|
18803
18915
|
editorFooter ? editorFooter : null
|
|
18804
18916
|
] });
|
|
@@ -18866,7 +18978,7 @@ var RichText = ({
|
|
|
18866
18978
|
setPortalContainerRef(_portalContainerRef);
|
|
18867
18979
|
}
|
|
18868
18980
|
};
|
|
18869
|
-
return /* @__PURE__ */ jsxs98(
|
|
18981
|
+
return /* @__PURE__ */ jsxs98(Fragment22, { children: [
|
|
18870
18982
|
readOnly || minimalInteractivity ? null : /* @__PURE__ */ jsx145(
|
|
18871
18983
|
RichTextToolbar_default,
|
|
18872
18984
|
{
|
|
@@ -18916,7 +19028,7 @@ var RichText = ({
|
|
|
18916
19028
|
]
|
|
18917
19029
|
}
|
|
18918
19030
|
),
|
|
18919
|
-
/* @__PURE__ */ jsx145(
|
|
19031
|
+
/* @__PURE__ */ jsx145(Fragment22, { children }),
|
|
18920
19032
|
editorContainerRef ? /* @__PURE__ */ jsx145(
|
|
18921
19033
|
LinkNodePlugin,
|
|
18922
19034
|
{
|
|
@@ -20341,9 +20453,9 @@ function AnimatedHeaderItem({ index, children }) {
|
|
|
20341
20453
|
}
|
|
20342
20454
|
|
|
20343
20455
|
// src/components/StackedModal/StackedModalStep.tsx
|
|
20344
|
-
import { Fragment as
|
|
20456
|
+
import { Fragment as Fragment23, jsx as jsx157, jsxs as jsxs104 } from "@emotion/react/jsx-runtime";
|
|
20345
20457
|
function StackedModalStep({ children, buttonGroup }) {
|
|
20346
|
-
return /* @__PURE__ */ jsxs104(
|
|
20458
|
+
return /* @__PURE__ */ jsxs104(Fragment23, { children: [
|
|
20347
20459
|
/* @__PURE__ */ jsx157("div", { css: stepContentStyles, children }),
|
|
20348
20460
|
buttonGroup ? /* @__PURE__ */ jsx157(
|
|
20349
20461
|
HorizontalRhythm,
|
|
@@ -20549,7 +20661,7 @@ var SwitchInputContainerAlignmentRight = css116`
|
|
|
20549
20661
|
`;
|
|
20550
20662
|
|
|
20551
20663
|
// src/components/Switch/Switch.tsx
|
|
20552
|
-
import { Fragment as
|
|
20664
|
+
import { Fragment as Fragment24, jsx as jsx160, jsxs as jsxs106 } from "@emotion/react/jsx-runtime";
|
|
20553
20665
|
var Switch = forwardRef35(
|
|
20554
20666
|
({
|
|
20555
20667
|
label: label2,
|
|
@@ -20578,7 +20690,7 @@ var Switch = forwardRef35(
|
|
|
20578
20690
|
if (infoText && toggleText) {
|
|
20579
20691
|
additionalText = inputProps.checked ? toggleText : infoText;
|
|
20580
20692
|
}
|
|
20581
|
-
return /* @__PURE__ */ jsxs106(
|
|
20693
|
+
return /* @__PURE__ */ jsxs106(Fragment24, { children: [
|
|
20582
20694
|
/* @__PURE__ */ jsxs106(
|
|
20583
20695
|
"label",
|
|
20584
20696
|
{
|
package/dist/index.d.mts
CHANGED
|
@@ -2283,13 +2283,20 @@ type InfoMessageProps = React.HTMLAttributes<HTMLSpanElement> & {
|
|
|
2283
2283
|
*/
|
|
2284
2284
|
declare const InfoMessage: ({ message, testId, icon, ...props }: InfoMessageProps) => _emotion_react_jsx_runtime.JSX.Element | null;
|
|
2285
2285
|
|
|
2286
|
-
type InputProps = React.InputHTMLAttributes<HTMLInputElement> & {
|
|
2286
|
+
type InputProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'prefix'> & {
|
|
2287
2287
|
/** (optional) sets the label value */
|
|
2288
2288
|
label?: string | ReactNode;
|
|
2289
2289
|
/** (optional) sets caption text value */
|
|
2290
2290
|
caption?: string | ReactNode;
|
|
2291
2291
|
/** (optional) add an input icon to the input field */
|
|
2292
2292
|
icon?: ReactElement;
|
|
2293
|
+
/**
|
|
2294
|
+
* Static leading text adornment inside the input border (e.g. "#", "$").
|
|
2295
|
+
* Decorative; not part of the input value. Intended for plain text inputs only —
|
|
2296
|
+
* the prefixed layout uses a separate inner input style, so `aria-invalid` on the
|
|
2297
|
+
* control alone won't apply error border styling; use `errorMessage` instead.
|
|
2298
|
+
*/
|
|
2299
|
+
prefix?: string;
|
|
2293
2300
|
/** (optional) sets whether to show the label or hide it and add a aria-label attributes to the input field directly */
|
|
2294
2301
|
showLabel?: boolean;
|
|
2295
2302
|
/** (optional) sets and shows the the error message value */
|
|
@@ -2330,13 +2337,20 @@ type InputProps = React.InputHTMLAttributes<HTMLInputElement> & {
|
|
|
2330
2337
|
* Input Component
|
|
2331
2338
|
* @example - <Input label="my label" id="some-id" name="some-name" caption="some help text" errorMessage={hasError ? 'something went wrong' : undefined} />
|
|
2332
2339
|
*/
|
|
2333
|
-
declare const Input: React$1.ForwardRefExoticComponent<React$1.InputHTMLAttributes<HTMLInputElement> & {
|
|
2340
|
+
declare const Input: React$1.ForwardRefExoticComponent<Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "prefix"> & {
|
|
2334
2341
|
/** (optional) sets the label value */
|
|
2335
2342
|
label?: string | ReactNode;
|
|
2336
2343
|
/** (optional) sets caption text value */
|
|
2337
2344
|
caption?: string | ReactNode;
|
|
2338
2345
|
/** (optional) add an input icon to the input field */
|
|
2339
2346
|
icon?: ReactElement;
|
|
2347
|
+
/**
|
|
2348
|
+
* Static leading text adornment inside the input border (e.g. "#", "$").
|
|
2349
|
+
* Decorative; not part of the input value. Intended for plain text inputs only —
|
|
2350
|
+
* the prefixed layout uses a separate inner input style, so `aria-invalid` on the
|
|
2351
|
+
* control alone won't apply error border styling; use `errorMessage` instead.
|
|
2352
|
+
*/
|
|
2353
|
+
prefix?: string;
|
|
2340
2354
|
/** (optional) sets whether to show the label or hide it and add a aria-label attributes to the input field directly */
|
|
2341
2355
|
showLabel?: boolean;
|
|
2342
2356
|
/** (optional) sets and shows the the error message value */
|
package/dist/index.d.ts
CHANGED
|
@@ -2283,13 +2283,20 @@ type InfoMessageProps = React.HTMLAttributes<HTMLSpanElement> & {
|
|
|
2283
2283
|
*/
|
|
2284
2284
|
declare const InfoMessage: ({ message, testId, icon, ...props }: InfoMessageProps) => _emotion_react_jsx_runtime.JSX.Element | null;
|
|
2285
2285
|
|
|
2286
|
-
type InputProps = React.InputHTMLAttributes<HTMLInputElement> & {
|
|
2286
|
+
type InputProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'prefix'> & {
|
|
2287
2287
|
/** (optional) sets the label value */
|
|
2288
2288
|
label?: string | ReactNode;
|
|
2289
2289
|
/** (optional) sets caption text value */
|
|
2290
2290
|
caption?: string | ReactNode;
|
|
2291
2291
|
/** (optional) add an input icon to the input field */
|
|
2292
2292
|
icon?: ReactElement;
|
|
2293
|
+
/**
|
|
2294
|
+
* Static leading text adornment inside the input border (e.g. "#", "$").
|
|
2295
|
+
* Decorative; not part of the input value. Intended for plain text inputs only —
|
|
2296
|
+
* the prefixed layout uses a separate inner input style, so `aria-invalid` on the
|
|
2297
|
+
* control alone won't apply error border styling; use `errorMessage` instead.
|
|
2298
|
+
*/
|
|
2299
|
+
prefix?: string;
|
|
2293
2300
|
/** (optional) sets whether to show the label or hide it and add a aria-label attributes to the input field directly */
|
|
2294
2301
|
showLabel?: boolean;
|
|
2295
2302
|
/** (optional) sets and shows the the error message value */
|
|
@@ -2330,13 +2337,20 @@ type InputProps = React.InputHTMLAttributes<HTMLInputElement> & {
|
|
|
2330
2337
|
* Input Component
|
|
2331
2338
|
* @example - <Input label="my label" id="some-id" name="some-name" caption="some help text" errorMessage={hasError ? 'something went wrong' : undefined} />
|
|
2332
2339
|
*/
|
|
2333
|
-
declare const Input: React$1.ForwardRefExoticComponent<React$1.InputHTMLAttributes<HTMLInputElement> & {
|
|
2340
|
+
declare const Input: React$1.ForwardRefExoticComponent<Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "prefix"> & {
|
|
2334
2341
|
/** (optional) sets the label value */
|
|
2335
2342
|
label?: string | ReactNode;
|
|
2336
2343
|
/** (optional) sets caption text value */
|
|
2337
2344
|
caption?: string | ReactNode;
|
|
2338
2345
|
/** (optional) add an input icon to the input field */
|
|
2339
2346
|
icon?: ReactElement;
|
|
2347
|
+
/**
|
|
2348
|
+
* Static leading text adornment inside the input border (e.g. "#", "$").
|
|
2349
|
+
* Decorative; not part of the input value. Intended for plain text inputs only —
|
|
2350
|
+
* the prefixed layout uses a separate inner input style, so `aria-invalid` on the
|
|
2351
|
+
* control alone won't apply error border styling; use `errorMessage` instead.
|
|
2352
|
+
*/
|
|
2353
|
+
prefix?: string;
|
|
2340
2354
|
/** (optional) sets whether to show the label or hide it and add a aria-label attributes to the input field directly */
|
|
2341
2355
|
showLabel?: boolean;
|
|
2342
2356
|
/** (optional) sets and shows the the error message value */
|
package/dist/index.js
CHANGED
|
@@ -5299,6 +5299,87 @@ var inputError = import_react22.css`
|
|
|
5299
5299
|
border-color: var(--action-destructive-hover);
|
|
5300
5300
|
}
|
|
5301
5301
|
`;
|
|
5302
|
+
var inputPrefixGroup = import_react22.css`
|
|
5303
|
+
align-items: center;
|
|
5304
|
+
background-color: var(--white);
|
|
5305
|
+
border: 1px solid var(--gray-200);
|
|
5306
|
+
border-radius: var(--rounded-sm);
|
|
5307
|
+
display: flex;
|
|
5308
|
+
min-height: 50px;
|
|
5309
|
+
padding-left: var(--spacing-sm);
|
|
5310
|
+
position: relative;
|
|
5311
|
+
transition:
|
|
5312
|
+
background var(--duration-fast) var(--timing-ease-out),
|
|
5313
|
+
border-color var(--duration-fast) var(--timing-ease-out),
|
|
5314
|
+
box-shadow var(--duration-fast) var(--timing-ease-out);
|
|
5315
|
+
|
|
5316
|
+
&:hover {
|
|
5317
|
+
border-color: var(--accent-dark-hover);
|
|
5318
|
+
}
|
|
5319
|
+
|
|
5320
|
+
&:focus-within {
|
|
5321
|
+
border-color: var(--accent-dark-active);
|
|
5322
|
+
box-shadow: var(--elevation-100);
|
|
5323
|
+
outline: none;
|
|
5324
|
+
}
|
|
5325
|
+
|
|
5326
|
+
&:has(input:disabled) {
|
|
5327
|
+
border-color: var(--gray-200);
|
|
5328
|
+
}
|
|
5329
|
+
|
|
5330
|
+
&:has(input:disabled) [data-input-prefix] {
|
|
5331
|
+
color: var(--gray-300);
|
|
5332
|
+
}
|
|
5333
|
+
`;
|
|
5334
|
+
var inputPrefixGroupError = import_react22.css`
|
|
5335
|
+
border-color: var(--action-destructive-default);
|
|
5336
|
+
box-shadow: var(--elevation-100);
|
|
5337
|
+
|
|
5338
|
+
&:hover {
|
|
5339
|
+
border-color: var(--action-destructive-hover);
|
|
5340
|
+
}
|
|
5341
|
+
`;
|
|
5342
|
+
var inputPrefixSlot = import_react22.css`
|
|
5343
|
+
color: var(--gray-300);
|
|
5344
|
+
flex: none;
|
|
5345
|
+
font-size: 1rem;
|
|
5346
|
+
padding-right: var(--spacing-sm);
|
|
5347
|
+
pointer-events: none;
|
|
5348
|
+
white-space: nowrap;
|
|
5349
|
+
`;
|
|
5350
|
+
var inputInPrefixGroup = import_react22.css`
|
|
5351
|
+
appearance: none;
|
|
5352
|
+
background: transparent;
|
|
5353
|
+
border: 0;
|
|
5354
|
+
box-shadow: none;
|
|
5355
|
+
color: var(--gray-700);
|
|
5356
|
+
flex: 1;
|
|
5357
|
+
min-height: 50px;
|
|
5358
|
+
min-width: 0;
|
|
5359
|
+
padding: 12px var(--spacing-base) 12px 0;
|
|
5360
|
+
width: 100%;
|
|
5361
|
+
|
|
5362
|
+
&::placeholder {
|
|
5363
|
+
color: var(--gray-400);
|
|
5364
|
+
}
|
|
5365
|
+
|
|
5366
|
+
&:hover,
|
|
5367
|
+
&:focus,
|
|
5368
|
+
&:focus-visible {
|
|
5369
|
+
border: 0;
|
|
5370
|
+
box-shadow: none;
|
|
5371
|
+
outline: none;
|
|
5372
|
+
}
|
|
5373
|
+
|
|
5374
|
+
&:disabled,
|
|
5375
|
+
&:disabled::placeholder {
|
|
5376
|
+
cursor: not-allowed;
|
|
5377
|
+
color: var(--gray-300);
|
|
5378
|
+
}
|
|
5379
|
+
`;
|
|
5380
|
+
var inputInPrefixGroupWithIcon = import_react22.css`
|
|
5381
|
+
padding-right: var(--spacing-2xl);
|
|
5382
|
+
`;
|
|
5302
5383
|
var inputIcon = import_react22.css`
|
|
5303
5384
|
align-items: center;
|
|
5304
5385
|
display: flex;
|
|
@@ -7553,6 +7634,7 @@ var Input = (0, import_react49.forwardRef)(
|
|
|
7553
7634
|
({
|
|
7554
7635
|
label: label2,
|
|
7555
7636
|
icon,
|
|
7637
|
+
prefix,
|
|
7556
7638
|
id,
|
|
7557
7639
|
caption,
|
|
7558
7640
|
showLabel = true,
|
|
@@ -7570,6 +7652,24 @@ var Input = (0, import_react49.forwardRef)(
|
|
|
7570
7652
|
...props
|
|
7571
7653
|
}, ref) => {
|
|
7572
7654
|
const isNumberInputAndMouseWheelDisabled = enableMouseWheel !== true && props.type === "number";
|
|
7655
|
+
const inputElement = /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
7656
|
+
"input",
|
|
7657
|
+
{
|
|
7658
|
+
id,
|
|
7659
|
+
css: [
|
|
7660
|
+
prefix ? inputInPrefixGroup : input("nowrap"),
|
|
7661
|
+
prefix && icon ? inputInPrefixGroupWithIcon : void 0,
|
|
7662
|
+
!prefix && errorMessage ? inputError : void 0,
|
|
7663
|
+
!prefix && icon ? inputWithIcon : "",
|
|
7664
|
+
typeof classNameControl === "object" ? classNameControl : void 0
|
|
7665
|
+
],
|
|
7666
|
+
"aria-label": showLabel || typeof label2 !== "string" ? void 0 : label2,
|
|
7667
|
+
className: typeof classNameControl === "string" ? classNameControl : "",
|
|
7668
|
+
onWheel: isNumberInputAndMouseWheelDisabled ? disableMouseWheelEvent : void 0,
|
|
7669
|
+
...props,
|
|
7670
|
+
ref
|
|
7671
|
+
}
|
|
7672
|
+
);
|
|
7573
7673
|
return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
|
|
7574
7674
|
"div",
|
|
7575
7675
|
{
|
|
@@ -7586,31 +7686,27 @@ var Input = (0, import_react49.forwardRef)(
|
|
|
7586
7686
|
children: label2
|
|
7587
7687
|
}
|
|
7588
7688
|
) : null,
|
|
7589
|
-
/* @__PURE__ */ (0, import_jsx_runtime39.
|
|
7689
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
7590
7690
|
"div",
|
|
7591
7691
|
{
|
|
7592
7692
|
css: [inputContainer, typeof classNameContainer === "object" ? classNameContainer : void 0],
|
|
7593
7693
|
className: typeof classNameContainer === "string" ? classNameContainer : "",
|
|
7594
|
-
children:
|
|
7595
|
-
|
|
7596
|
-
|
|
7597
|
-
|
|
7598
|
-
|
|
7599
|
-
|
|
7600
|
-
|
|
7601
|
-
|
|
7602
|
-
|
|
7603
|
-
|
|
7604
|
-
|
|
7605
|
-
|
|
7606
|
-
|
|
7607
|
-
|
|
7608
|
-
...props,
|
|
7609
|
-
ref
|
|
7610
|
-
}
|
|
7611
|
-
),
|
|
7694
|
+
children: prefix ? /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
|
|
7695
|
+
"div",
|
|
7696
|
+
{
|
|
7697
|
+
css: [inputPrefixGroup, errorMessage ? inputPrefixGroupError : void 0],
|
|
7698
|
+
"data-input-prefix-group": true,
|
|
7699
|
+
"data-testid": "input-prefix-group",
|
|
7700
|
+
children: [
|
|
7701
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { css: inputPrefixSlot, "aria-hidden": "true", "data-input-prefix": true, children: prefix }),
|
|
7702
|
+
inputElement,
|
|
7703
|
+
icon ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { css: inputIcon, children: icon }) : null
|
|
7704
|
+
]
|
|
7705
|
+
}
|
|
7706
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(import_jsx_runtime39.Fragment, { children: [
|
|
7707
|
+
inputElement,
|
|
7612
7708
|
icon ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { css: inputIcon, children: icon }) : null
|
|
7613
|
-
]
|
|
7709
|
+
] })
|
|
7614
7710
|
}
|
|
7615
7711
|
),
|
|
7616
7712
|
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
@@ -18763,12 +18859,28 @@ function convertAnchorElement(domNode) {
|
|
|
18763
18859
|
} else if (type === "tel" && path.startsWith("tel:")) {
|
|
18764
18860
|
path = path.replace("tel:", "");
|
|
18765
18861
|
}
|
|
18862
|
+
let attributes = void 0;
|
|
18863
|
+
if (linkFromAttribute && typeof linkFromAttribute === "object") {
|
|
18864
|
+
if ("attributes" in linkFromAttribute && linkFromAttribute.attributes !== null && typeof linkFromAttribute.attributes === "object") {
|
|
18865
|
+
const raw = linkFromAttribute.attributes;
|
|
18866
|
+
const parsed = {};
|
|
18867
|
+
for (const [k, v] of Object.entries(raw)) {
|
|
18868
|
+
if (typeof v === "string") {
|
|
18869
|
+
parsed[k] = v;
|
|
18870
|
+
}
|
|
18871
|
+
}
|
|
18872
|
+
if (Object.keys(parsed).length > 0) {
|
|
18873
|
+
attributes = parsed;
|
|
18874
|
+
}
|
|
18875
|
+
}
|
|
18876
|
+
}
|
|
18766
18877
|
const value = {
|
|
18767
18878
|
type,
|
|
18768
18879
|
path,
|
|
18769
18880
|
projectMapId,
|
|
18770
18881
|
nodeId,
|
|
18771
|
-
dynamicInputValues
|
|
18882
|
+
dynamicInputValues,
|
|
18883
|
+
attributes
|
|
18772
18884
|
};
|
|
18773
18885
|
if (isProjectMapLinkValue(value) || isNonProjectMapLinkValue(value)) {
|
|
18774
18886
|
node = $createLinkNode(value);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uniformdev/design-system",
|
|
3
|
-
"version": "20.72.
|
|
3
|
+
"version": "20.72.2",
|
|
4
4
|
"description": "Uniform design system components",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
6
6
|
"exports": {
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
"@storybook/react-vite": "10.4.6",
|
|
35
35
|
"@types/react": "19.2.17",
|
|
36
36
|
"@types/react-dom": "19.2.3",
|
|
37
|
-
"@uniformdev/canvas": "^20.72.
|
|
38
|
-
"@uniformdev/richtext": "^20.72.
|
|
37
|
+
"@uniformdev/canvas": "^20.72.2",
|
|
38
|
+
"@uniformdev/richtext": "^20.72.2",
|
|
39
39
|
"autoprefixer": "10.5.0",
|
|
40
40
|
"hygen": "6.2.11",
|
|
41
41
|
"jsdom": "29.1.1",
|
|
@@ -82,5 +82,5 @@
|
|
|
82
82
|
"publishConfig": {
|
|
83
83
|
"access": "public"
|
|
84
84
|
},
|
|
85
|
-
"gitHead": "
|
|
85
|
+
"gitHead": "8b65535fb3ec81e23f9eb8e0ed0b0be478f6e0e8"
|
|
86
86
|
}
|