@pega/cosmos-react-build 10.0.0-build.5.2 → 10.0.0-build.5.20

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.
@@ -566,7 +566,7 @@ export declare const StyledPrimaryTextButton: import("styled-components/dist/typ
566
566
  export declare const StyledPrimaryTextLink: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<Omit<import("@pega/cosmos-react-core").LinkProps, "ref"> & import("react").RefAttributes<HTMLAnchorElement>, "ref"> & {
567
567
  ref?: ((instance: HTMLAnchorElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLAnchorElement> | null | undefined;
568
568
  }, never>> & string & Omit<import("react").ForwardRefExoticComponent<Omit<import("@pega/cosmos-react-core").LinkProps, "ref"> & import("react").RefAttributes<HTMLAnchorElement>> & {
569
- getTestIds: (testIdProp?: import("@pega/cosmos-react-core").TestIdProp["testId"]) => import("@pega/cosmos-react-core").TestIdsRecord<readonly ["preview-popover", "preview", "new-tab"]>;
569
+ getTestIds: (testIdProp?: import("@pega/cosmos-react-core").TestIdProp["testId"]) => import("@pega/cosmos-react-core").TestIdsRecord<readonly ["preview-popover", "preview", "new-tab", "open"]>;
570
570
  }, keyof import("react").Component<any, {}, any>>;
571
571
  export declare const StyledTitlesContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<(Omit<Omit<Pick<import("@pega/cosmos-react-core/lib/components/Flex/Flex").BaseFlexProps & import("@pega/cosmos-react-core").BaseProps & import("@pega/cosmos-react-core").AsProp & {
572
572
  children?: import("react").ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthoringPanel.styles.d.ts","sourceRoot":"","sources":["../../../src/components/AuthoringPanel/AuthoringPanel.styles.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE,eAAO,MAAM,eAAe;;;;mBAoC1B,CAAC;AAGH,eAAO,MAAM,oBAAoB,sQAchC,CAAC;AAGF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAE/B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAEhC,CAAC;AAEF,eAAO,MAAM,uBAAuB,6NAQlC,CAAC;AAGH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAIzB,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;aAA2B,OAAO;kLAanE,CAAC;AAGH,eAAO,MAAM,uBAAuB;;2LAYlC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;2BAkCpB,CAAC;iDAvBb,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAEjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,6NAIjC,CAAC;AAGH,eAAO,MAAM,mBAAmB,6NAsB9B,CAAC"}
1
+ {"version":3,"file":"AuthoringPanel.styles.d.ts","sourceRoot":"","sources":["../../../src/components/AuthoringPanel/AuthoringPanel.styles.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE,eAAO,MAAM,eAAe;;;;mBAoC1B,CAAC;AAGH,eAAO,MAAM,oBAAoB,sQAchC,CAAC;AAGF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAE/B,CAAC;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAEhC,CAAC;AAEF,eAAO,MAAM,uBAAuB,6NAQlC,CAAC;AAGH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAIzB,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;aAA2B,OAAO;kLAanE,CAAC;AAGH,eAAO,MAAM,uBAAuB;;2LAYlC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;2BAoCjB,CAAC;iDAzBhB,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sOAEjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,6NAIjC,CAAC;AAGH,eAAO,MAAM,mBAAmB,6NAsB9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"BackgroundPicker.d.ts","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.tsx"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EACV,qBAAqB,EAGtB,MAAM,0BAA0B,CAAC;;;;AAelC,wBA4ME"}
1
+ {"version":3,"file":"BackgroundPicker.d.ts","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.tsx"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EACV,qBAAqB,EAGtB,MAAM,0BAA0B,CAAC;;;;AAelC,wBAoNE"}
@@ -12,8 +12,7 @@ import { getBackgroundImageDetails, getBackgroundType, getParsedGradientDetails,
12
12
  registerIcon(layersIcon);
13
13
  export default withTestIds(forwardRef(function BackgroundPicker(props, ref) {
14
14
  const uid = useUID();
15
- const { testId, id = uid, value, label, info, disabled, status, required, readOnly, labelHidden, swatchOnly = false, inline, onBeforeClose, onSubmit, additionalInfo, backgroundOptions, ...restProps } = props;
16
- const t = useI18n();
15
+ const { testId, id = uid, value, label, info, disabled, status, required, readOnly, labelHidden, swatchOnly = false, inline, onBeforeClose, onSubmit, additionalInfo, backgroundOptions, normalizeImageUrl, isValidImageUrl, ...restProps } = props;
17
16
  const backgrounds = backgroundOptions ?? supportedBackgroundOptions;
18
17
  const bgType = useMemo(() => {
19
18
  return getBackgroundType(value, backgrounds) ?? backgrounds[0];
@@ -23,6 +22,7 @@ export default withTestIds(forwardRef(function BackgroundPicker(props, ref) {
23
22
  const [showDialog, setShowDialog] = useState(false);
24
23
  const [backgroundType, setBackgroundType] = useState(bgType);
25
24
  const testIds = useTestIds(testId, getBackgroundPickerTestIds);
25
+ const t = useI18n();
26
26
  const solidColorRef = useRef(null);
27
27
  const imageRef = useRef(null);
28
28
  const gradientRef = useRef(null);
@@ -77,6 +77,6 @@ export default withTestIds(forwardRef(function BackgroundPicker(props, ref) {
77
77
  setBackgroundType(e.target.value);
78
78
  }, children: backgrounds.map(option => {
79
79
  return (_jsx(Option, { value: option, children: t(backgroundTypeTranslationKeyMap[option]) }, option));
80
- }) }), backgroundType.includes('gradient') && (_jsx(GradientConfig, { testId: testIds.root, type: backgroundType, value: value, ref: gradientRef })), backgroundType === 'image' && (_jsx(ImageConfig, { testId: testIds.root, value: value, ref: imageRef })), backgroundType === 'solid-color' && (_jsx(SolidColorConfig, { testId: testIds.root, value: value, ref: solidColorRef, disableOpacity: !backgrounds.includes('transparent') }))] }) })), tooltipEl && (_jsx(Tooltip, { target: tooltipEl, showDelay: 'none', hideDelay: 'none', children: tooltipText }))] }));
80
+ }) }), backgroundType.includes('gradient') && (_jsx(GradientConfig, { testId: testIds.root, type: backgroundType, value: value, ref: gradientRef })), backgroundType === 'image' && (_jsx(ImageConfig, { testId: testIds.root, value: value, ref: imageRef, normalizeImageUrl: normalizeImageUrl, isValidImageUrl: isValidImageUrl })), backgroundType === 'solid-color' && (_jsx(SolidColorConfig, { testId: testIds.root, value: value, ref: solidColorRef, disableOpacity: !backgrounds.includes('transparent') }))] }) })), tooltipEl && (_jsx(Tooltip, { target: tooltipEl, showDelay: 'none', hideDelay: 'none', children: tooltipText }))] }));
81
81
  }), getBackgroundPickerTestIds);
82
82
  //# sourceMappingURL=BackgroundPicker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackgroundPicker.js","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { forwardRef, useState, useRef, useMemo } from 'react';\nimport type { PropsWithoutRef } from 'react';\n\nimport {\n Flex,\n FormDialog,\n FormField,\n Select,\n Option,\n StyledFormControl,\n Tooltip,\n useConsolidatedRef,\n useElement,\n useI18n,\n useOuterEvent,\n useTestIds,\n useUID,\n withTestIds,\n type RefElement,\n Icon,\n registerIcon\n} from '@pega/cosmos-react-core';\nimport * as layersIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/layers.icon';\n\nimport {\n backgroundTypeTranslationKeyMap,\n positionTranslationKeyMap\n} from './BackgroundPicker.types';\nimport type {\n BackgroundPickerProps,\n BackgroundType,\n ComputedBackgroundRef\n} from './BackgroundPicker.types';\nimport { getBackgroundPickerTestIds } from './BackgroundPicker.test-ids';\nimport { ColorSwatchPreview, StyledBackgroundPicker, StyledText } from './BackgroundPicker.styles';\nimport GradientConfig from './GradientConfig';\nimport ImageConfig from './ImageConfig';\nimport SolidColorConfig from './SolidColorConfig';\nimport {\n getBackgroundImageDetails,\n getBackgroundType,\n getParsedGradientDetails,\n supportedBackgroundOptions\n} from './utils';\n\nregisterIcon(layersIcon);\n\nexport default withTestIds(\n forwardRef<RefElement<BackgroundPickerProps>, PropsWithoutRef<BackgroundPickerProps>>(\n function BackgroundPicker(props, ref) {\n const uid = useUID();\n const {\n testId,\n id = uid,\n value,\n label,\n info,\n disabled,\n status,\n required,\n readOnly,\n labelHidden,\n swatchOnly = false,\n inline,\n onBeforeClose,\n onSubmit,\n additionalInfo,\n backgroundOptions,\n ...restProps\n } = props;\n\n const t = useI18n();\n const backgrounds: BackgroundType[] = backgroundOptions ?? supportedBackgroundOptions;\n\n const bgType = useMemo(() => {\n return getBackgroundType(value, backgrounds) ?? backgrounds[0];\n }, [value, backgrounds]);\n\n const dialogRef = useConsolidatedRef(ref);\n const swatchRef = useRef(null);\n const [showDialog, setShowDialog] = useState(false);\n const [backgroundType, setBackgroundType] = useState<BackgroundType>(bgType);\n const testIds = useTestIds(testId, getBackgroundPickerTestIds);\n const solidColorRef = useRef<ComputedBackgroundRef>(null);\n const imageRef = useRef<ComputedBackgroundRef>(null);\n const gradientRef = useRef<ComputedBackgroundRef>(null);\n const [tooltipEl, setTooltipEl] = useElement();\n\n const hideBackgroundPicker = () => {\n if (showDialog) {\n onBeforeClose?.();\n }\n\n setShowDialog(false);\n };\n\n useOuterEvent('mousedown', [dialogRef], hideBackgroundPicker);\n\n const handleSubmit = () => {\n if (backgroundType === 'solid-color' && solidColorRef.current) {\n onSubmit(solidColorRef.current.getValue());\n } else if (backgroundType === 'image' && imageRef.current) {\n onSubmit(imageRef.current.getValue());\n } else if (backgroundType.includes('gradient') && gradientRef.current) {\n onSubmit(gradientRef.current.getValue());\n } else if (backgroundType === 'transparent') {\n onSubmit('transparent');\n } else if (backgroundType === 'automatic') {\n onSubmit('auto');\n }\n };\n\n const openDialog = () => {\n setShowDialog(true);\n setBackgroundType(bgType);\n };\n\n const tooltipText = useMemo(() => {\n if (bgType === 'automatic') {\n return `${t('color')}: ${t('automatic')}`;\n }\n if (['transparent', 'solid-color'].includes(bgType)) {\n return `${t('color')}: ${value}`;\n }\n if (bgType === 'image') {\n return `${t('image')}: ${t(positionTranslationKeyMap[getBackgroundImageDetails(value).backgroundPosition])}`;\n }\n if (bgType.includes('gradient')) {\n const stops = getParsedGradientDetails(bgType, value).stops;\n return `${t(backgroundTypeTranslationKeyMap[bgType])}: ${stops[0].color} - ${stops[stops.length - 1].color}`;\n }\n }, [t, value, bgType]);\n\n return (\n <>\n <FormField\n testId={testIds}\n inline={inline}\n container={inline ? { justify: 'between' } : undefined}\n as={StyledBackgroundPicker}\n id={id}\n label={label}\n labelHidden={labelHidden}\n swatchOnly={swatchOnly}\n info={info}\n disabled={disabled}\n status={status}\n required={required}\n additionalInfo={additionalInfo}\n value={value}\n >\n <Flex\n container={{ alignItems: 'center' }}\n item={swatchOnly ? { alignSelf: 'start' } : undefined}\n as={StyledFormControl}\n disabled={disabled}\n status={status}\n required={required}\n readOnly={readOnly}\n ref={swatchRef}\n onClick={readOnly || disabled ? undefined : openDialog}\n >\n <input\n data-testid={testIds.control}\n {...restProps}\n id={id}\n type={readOnly ? undefined : 'color'}\n value={value}\n disabled={disabled}\n required={required}\n readOnly={readOnly}\n onClick={e => e.preventDefault()}\n onChange={() => {}}\n />\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={ColorSwatchPreview}\n data-testid={testIds.swatchPreview}\n value={value}\n ref={setTooltipEl}\n >\n {bgType === 'automatic' && <Icon name='layers' />}\n </Flex>\n {!swatchOnly && <StyledText>{value}</StyledText>}\n </Flex>\n </FormField>\n {swatchRef.current && showDialog && (\n <FormDialog\n ref={dialogRef}\n data-testid={testIds.overlay}\n heading={t(\n 'edit_background_picker_label',\n typeof label === 'string' ? [label.toLocaleLowerCase()] : []\n )}\n target={swatchRef.current}\n onCancel={hideBackgroundPicker}\n onSubmit={() => {\n hideBackgroundPicker();\n handleSubmit();\n }}\n placement='auto-end'\n >\n <>\n <Select\n testId={testIds.style}\n value={backgroundType}\n label={t('style')}\n onChange={e => {\n setBackgroundType(e.target.value as BackgroundType);\n }}\n >\n {backgrounds.map(option => {\n return (\n <Option key={option} value={option}>\n {t(backgroundTypeTranslationKeyMap[option])}\n </Option>\n );\n })}\n </Select>\n {backgroundType.includes('gradient') && (\n <GradientConfig\n testId={testIds.root}\n type={backgroundType}\n value={value}\n ref={gradientRef}\n />\n )}\n {backgroundType === 'image' && (\n <ImageConfig testId={testIds.root} value={value} ref={imageRef} />\n )}\n {backgroundType === 'solid-color' && (\n <SolidColorConfig\n testId={testIds.root}\n value={value}\n ref={solidColorRef}\n disableOpacity={!backgrounds.includes('transparent')}\n />\n )}\n </>\n </FormDialog>\n )}\n {tooltipEl && (\n <Tooltip target={tooltipEl} showDelay='none' hideDelay='none'>\n {tooltipText}\n </Tooltip>\n )}\n </>\n );\n }\n ),\n getBackgroundPickerTestIds\n);\n"]}
1
+ {"version":3,"file":"BackgroundPicker.js","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { forwardRef, useState, useRef, useMemo } from 'react';\nimport type { PropsWithoutRef } from 'react';\n\nimport {\n Flex,\n FormDialog,\n FormField,\n Select,\n Option,\n StyledFormControl,\n Tooltip,\n useConsolidatedRef,\n useElement,\n useI18n,\n useOuterEvent,\n useTestIds,\n useUID,\n withTestIds,\n type RefElement,\n Icon,\n registerIcon\n} from '@pega/cosmos-react-core';\nimport * as layersIcon from '@pega/cosmos-react-core/lib/components/Icon/icons/layers.icon';\n\nimport {\n backgroundTypeTranslationKeyMap,\n positionTranslationKeyMap\n} from './BackgroundPicker.types';\nimport type {\n BackgroundPickerProps,\n BackgroundType,\n ComputedBackgroundRef\n} from './BackgroundPicker.types';\nimport { getBackgroundPickerTestIds } from './BackgroundPicker.test-ids';\nimport { ColorSwatchPreview, StyledBackgroundPicker, StyledText } from './BackgroundPicker.styles';\nimport GradientConfig from './GradientConfig';\nimport ImageConfig from './ImageConfig';\nimport SolidColorConfig from './SolidColorConfig';\nimport {\n getBackgroundImageDetails,\n getBackgroundType,\n getParsedGradientDetails,\n supportedBackgroundOptions\n} from './utils';\n\nregisterIcon(layersIcon);\n\nexport default withTestIds(\n forwardRef<RefElement<BackgroundPickerProps>, PropsWithoutRef<BackgroundPickerProps>>(\n function BackgroundPicker(props, ref) {\n const uid = useUID();\n const {\n testId,\n id = uid,\n value,\n label,\n info,\n disabled,\n status,\n required,\n readOnly,\n labelHidden,\n swatchOnly = false,\n inline,\n onBeforeClose,\n onSubmit,\n additionalInfo,\n backgroundOptions,\n normalizeImageUrl,\n isValidImageUrl,\n ...restProps\n } = props;\n\n const backgrounds: BackgroundType[] = backgroundOptions ?? supportedBackgroundOptions;\n\n const bgType = useMemo(() => {\n return getBackgroundType(value, backgrounds) ?? backgrounds[0];\n }, [value, backgrounds]);\n\n const dialogRef = useConsolidatedRef(ref);\n const swatchRef = useRef(null);\n const [showDialog, setShowDialog] = useState(false);\n const [backgroundType, setBackgroundType] = useState<BackgroundType>(bgType);\n const testIds = useTestIds(testId, getBackgroundPickerTestIds);\n const t = useI18n();\n const solidColorRef = useRef<ComputedBackgroundRef>(null);\n const imageRef = useRef<ComputedBackgroundRef>(null);\n const gradientRef = useRef<ComputedBackgroundRef>(null);\n const [tooltipEl, setTooltipEl] = useElement();\n\n const hideBackgroundPicker = () => {\n if (showDialog) {\n onBeforeClose?.();\n }\n\n setShowDialog(false);\n };\n\n useOuterEvent('mousedown', [dialogRef], hideBackgroundPicker);\n\n const handleSubmit = () => {\n if (backgroundType === 'solid-color' && solidColorRef.current) {\n onSubmit(solidColorRef.current.getValue());\n } else if (backgroundType === 'image' && imageRef.current) {\n onSubmit(imageRef.current.getValue());\n } else if (backgroundType.includes('gradient') && gradientRef.current) {\n onSubmit(gradientRef.current.getValue());\n } else if (backgroundType === 'transparent') {\n onSubmit('transparent');\n } else if (backgroundType === 'automatic') {\n onSubmit('auto');\n }\n };\n\n const openDialog = () => {\n setShowDialog(true);\n setBackgroundType(bgType);\n };\n\n const tooltipText = useMemo(() => {\n if (bgType === 'automatic') {\n return `${t('color')}: ${t('automatic')}`;\n }\n if (['transparent', 'solid-color'].includes(bgType)) {\n return `${t('color')}: ${value}`;\n }\n if (bgType === 'image') {\n return `${t('image')}: ${t(positionTranslationKeyMap[getBackgroundImageDetails(value).backgroundPosition])}`;\n }\n if (bgType.includes('gradient')) {\n const stops = getParsedGradientDetails(bgType, value).stops;\n return `${t(backgroundTypeTranslationKeyMap[bgType])}: ${stops[0].color} - ${stops[stops.length - 1].color}`;\n }\n }, [t, value, bgType]);\n\n return (\n <>\n <FormField\n testId={testIds}\n inline={inline}\n container={inline ? { justify: 'between' } : undefined}\n as={StyledBackgroundPicker}\n id={id}\n label={label}\n labelHidden={labelHidden}\n swatchOnly={swatchOnly}\n info={info}\n disabled={disabled}\n status={status}\n required={required}\n additionalInfo={additionalInfo}\n value={value}\n >\n <Flex\n container={{ alignItems: 'center' }}\n item={swatchOnly ? { alignSelf: 'start' } : undefined}\n as={StyledFormControl}\n disabled={disabled}\n status={status}\n required={required}\n readOnly={readOnly}\n ref={swatchRef}\n onClick={readOnly || disabled ? undefined : openDialog}\n >\n <input\n data-testid={testIds.control}\n {...restProps}\n id={id}\n type={readOnly ? undefined : 'color'}\n value={value}\n disabled={disabled}\n required={required}\n readOnly={readOnly}\n onClick={e => e.preventDefault()}\n onChange={() => {}}\n />\n <Flex\n container={{ justify: 'center', alignItems: 'center' }}\n as={ColorSwatchPreview}\n data-testid={testIds.swatchPreview}\n value={value}\n ref={setTooltipEl}\n >\n {bgType === 'automatic' && <Icon name='layers' />}\n </Flex>\n {!swatchOnly && <StyledText>{value}</StyledText>}\n </Flex>\n </FormField>\n {swatchRef.current && showDialog && (\n <FormDialog\n ref={dialogRef}\n data-testid={testIds.overlay}\n heading={t(\n 'edit_background_picker_label',\n typeof label === 'string' ? [label.toLocaleLowerCase()] : []\n )}\n target={swatchRef.current}\n onCancel={hideBackgroundPicker}\n onSubmit={() => {\n hideBackgroundPicker();\n handleSubmit();\n }}\n placement='auto-end'\n >\n <>\n <Select\n testId={testIds.style}\n value={backgroundType}\n label={t('style')}\n onChange={e => {\n setBackgroundType(e.target.value as BackgroundType);\n }}\n >\n {backgrounds.map(option => {\n return (\n <Option key={option} value={option}>\n {t(backgroundTypeTranslationKeyMap[option])}\n </Option>\n );\n })}\n </Select>\n {backgroundType.includes('gradient') && (\n <GradientConfig\n testId={testIds.root}\n type={backgroundType}\n value={value}\n ref={gradientRef}\n />\n )}\n {backgroundType === 'image' && (\n <ImageConfig\n testId={testIds.root}\n value={value}\n ref={imageRef}\n normalizeImageUrl={normalizeImageUrl}\n isValidImageUrl={isValidImageUrl}\n />\n )}\n {backgroundType === 'solid-color' && (\n <SolidColorConfig\n testId={testIds.root}\n value={value}\n ref={solidColorRef}\n disableOpacity={!backgrounds.includes('transparent')}\n />\n )}\n </>\n </FormDialog>\n )}\n {tooltipEl && (\n <Tooltip target={tooltipEl} showDelay='none' hideDelay='none'>\n {tooltipText}\n </Tooltip>\n )}\n </>\n );\n }\n ),\n getBackgroundPickerTestIds\n);\n"]}
@@ -29,6 +29,10 @@ export type BackgroundPickerProps = WithAttributes<'input', TestIdProp & NoChild
29
29
  onSubmit: (background: string) => void;
30
30
  /** onBeforeClose of the color picker */
31
31
  onBeforeClose?: () => void;
32
+ /** Normalizes a typed image URL before validation (e.g. lowercases static content paths). */
33
+ normalizeImageUrl?: (value: string) => string;
34
+ /** Returns true when a typed image URL is renderable. Defaults to http/https only. */
35
+ isValidImageUrl?: (value: string) => boolean;
32
36
  }>;
33
37
  export type BackgroundPickerPropsWithDefaults = PropsWithDefaults<BackgroundPickerProps, 'value' | 'swatchOnly'>;
34
38
  export type BackgroundType = 'automatic' | 'transparent' | 'solid-color' | 'image' | 'linear-gradient' | 'radial-gradient' | 'conic-gradient';
@@ -73,6 +77,8 @@ export interface BackgroundImage {
73
77
  backgroundRepeat: Repeat;
74
78
  }
75
79
  export interface ImageConfigProps extends Pick<BackgroundPickerProps, 'value'>, TestIdProp {
80
+ normalizeImageUrl?: (value: string) => string;
81
+ isValidImageUrl?: (value: string) => boolean;
76
82
  }
77
83
  export interface ConicGradient {
78
84
  angle: string;
@@ -1 +1 @@
1
- {"version":3,"file":"BackgroundPicker.types.d.ts","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BackgroundPicker.types.d.ts","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BackgroundPicker.types.js","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.types.ts"],"names":[],"mappings":"AA6DA,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,aAAa,EAAE,aAAa;IAC5B,KAAK,EAAE,OAAO;IACd,iBAAiB,EAAE,iBAAiB;IACpC,iBAAiB,EAAE,iBAAiB;IACpC,gBAAgB,EAAE,gBAAgB;CAC6B,CAAC;AAmBlE,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,WAAW;IACxB,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,aAAa;CAG7B,CAAC;AAIF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,WAAW,EAAE,WAAW;IACxB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,UAAU;IACtB,UAAU,EAAE,UAAU;IACtB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CAGf,CAAC","sourcesContent":["import type { ColorStop } from 'css-gradient-parser';\n\nimport type {\n WithAttributes,\n TestIdProp,\n NoChildrenProp,\n FormControlProps,\n FormFieldProps,\n PropsWithDefaults,\n ReplaceString\n} from '@pega/cosmos-react-core';\n\nexport type BackgroundPickerProps = WithAttributes<\n 'input',\n TestIdProp &\n NoChildrenProp & {\n /** label for the color picker control */\n label: FormControlProps['label'];\n /**\n * Color picker value in hex\n * @default '#000000'\n */\n value: string;\n /** List of options to render as background type */\n backgroundOptions?: BackgroundType[];\n /**\n * Show color swatch without hex value display.\n * @default false\n */\n swatchOnly?: boolean;\n /** Visually hides the label region. */\n labelHidden?: FormControlProps['labelHidden'];\n /** It is recommended to pass a simple string to offer guidance. Text will be styled based on status prop. */\n info?: FormControlProps['info'];\n /** Set visual state based on a validation state. */\n status?: FormControlProps['status'];\n /** Layout field elements inline in a row. */\n inline?: FormFieldProps['inline'];\n /** Button when clicked will show additional information on the color picker */\n additionalInfo?: FormFieldProps['additionalInfo'];\n /** event handler that gets called on submit of picker. */\n onSubmit: (background: string) => void;\n /** onBeforeClose of the color picker */\n onBeforeClose?: () => void;\n }\n>;\n\nexport type BackgroundPickerPropsWithDefaults = PropsWithDefaults<\n BackgroundPickerProps,\n 'value' | 'swatchOnly'\n>;\n\nexport type BackgroundType =\n | 'automatic'\n | 'transparent'\n | 'solid-color'\n | 'image'\n | 'linear-gradient'\n | 'radial-gradient'\n | 'conic-gradient';\n\nexport const backgroundTypeTranslationKeyMap = {\n automatic: 'automatic',\n transparent: 'transparent',\n 'solid-color': 'solid_color',\n image: 'image',\n 'linear-gradient': 'linear_gradient',\n 'radial-gradient': 'radial_gradient',\n 'conic-gradient': 'conic_gradient'\n} satisfies { [K in BackgroundType]: ReplaceString<K, '-', '_'> };\n\nexport interface SolidColorConfigProps extends Pick<BackgroundPickerProps, 'value'>, TestIdProp {\n disableOpacity?: boolean;\n}\n\nexport type Size = 'auto' | 'cover' | 'contain';\n\nexport type Position =\n | 'center'\n | 'top'\n | 'right'\n | 'bottom'\n | 'left'\n | 'top left'\n | 'top right'\n | 'bottom right'\n | 'bottom left';\n\nexport const positionTranslationKeyMap = {\n center: 'center',\n top: 'top',\n right: 'right',\n bottom: 'bottom',\n left: 'left',\n 'top left': 'top_left',\n 'top right': 'top_right',\n 'bottom right': 'bottom_right',\n 'bottom left': 'bottom_left'\n} satisfies {\n [K in Position]: ReplaceString<K, ' ', '_'>;\n};\n\nexport type Repeat = 'no-repeat' | 'repeat' | 'repeat-x' | 'repeat-y' | 'space' | 'round';\n\nexport const repeatTranslationKeyMap = {\n 'no-repeat': 'no_repeat',\n repeat: 'repeat',\n 'repeat-x': 'repeat_x',\n 'repeat-y': 'repeat_y',\n space: 'space',\n round: 'round'\n} satisfies {\n [K in Repeat]: ReplaceString<K, '-', '_'>;\n};\n\nexport interface BackgroundImage {\n url: string;\n backgroundSize: Size;\n backgroundPosition: Position;\n backgroundRepeat: Repeat;\n}\n\nexport interface ImageConfigProps extends Pick<BackgroundPickerProps, 'value'>, TestIdProp {}\n\nexport interface ConicGradient {\n angle: string;\n repeating: boolean;\n position: string;\n stops: ColorStop[];\n}\n\nexport interface GradientConfigProps extends Pick<BackgroundPickerProps, 'value'>, TestIdProp {\n type: BackgroundType;\n}\n\nexport type TableData = {\n id: string;\n color: string;\n location: string;\n};\n\nexport interface GradientInputProps {\n data: TableData;\n onChange: (id: string, type: keyof TableData, value: string) => void;\n}\n\nexport interface ComputedBackgroundRef {\n getValue: () => string;\n}\n"]}
1
+ {"version":3,"file":"BackgroundPicker.types.js","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/BackgroundPicker.types.ts"],"names":[],"mappings":"AAiEA,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,aAAa,EAAE,aAAa;IAC5B,KAAK,EAAE,OAAO;IACd,iBAAiB,EAAE,iBAAiB;IACpC,iBAAiB,EAAE,iBAAiB;IACpC,gBAAgB,EAAE,gBAAgB;CAC6B,CAAC;AAmBlE,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,WAAW;IACxB,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,aAAa;CAG7B,CAAC;AAIF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,WAAW,EAAE,WAAW;IACxB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,UAAU;IACtB,UAAU,EAAE,UAAU;IACtB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CAGf,CAAC","sourcesContent":["import type { ColorStop } from 'css-gradient-parser';\n\nimport type {\n WithAttributes,\n TestIdProp,\n NoChildrenProp,\n FormControlProps,\n FormFieldProps,\n PropsWithDefaults,\n ReplaceString\n} from '@pega/cosmos-react-core';\n\nexport type BackgroundPickerProps = WithAttributes<\n 'input',\n TestIdProp &\n NoChildrenProp & {\n /** label for the color picker control */\n label: FormControlProps['label'];\n /**\n * Color picker value in hex\n * @default '#000000'\n */\n value: string;\n /** List of options to render as background type */\n backgroundOptions?: BackgroundType[];\n /**\n * Show color swatch without hex value display.\n * @default false\n */\n swatchOnly?: boolean;\n /** Visually hides the label region. */\n labelHidden?: FormControlProps['labelHidden'];\n /** It is recommended to pass a simple string to offer guidance. Text will be styled based on status prop. */\n info?: FormControlProps['info'];\n /** Set visual state based on a validation state. */\n status?: FormControlProps['status'];\n /** Layout field elements inline in a row. */\n inline?: FormFieldProps['inline'];\n /** Button when clicked will show additional information on the color picker */\n additionalInfo?: FormFieldProps['additionalInfo'];\n /** event handler that gets called on submit of picker. */\n onSubmit: (background: string) => void;\n /** onBeforeClose of the color picker */\n onBeforeClose?: () => void;\n /** Normalizes a typed image URL before validation (e.g. lowercases static content paths). */\n normalizeImageUrl?: (value: string) => string;\n /** Returns true when a typed image URL is renderable. Defaults to http/https only. */\n isValidImageUrl?: (value: string) => boolean;\n }\n>;\n\nexport type BackgroundPickerPropsWithDefaults = PropsWithDefaults<\n BackgroundPickerProps,\n 'value' | 'swatchOnly'\n>;\n\nexport type BackgroundType =\n | 'automatic'\n | 'transparent'\n | 'solid-color'\n | 'image'\n | 'linear-gradient'\n | 'radial-gradient'\n | 'conic-gradient';\n\nexport const backgroundTypeTranslationKeyMap = {\n automatic: 'automatic',\n transparent: 'transparent',\n 'solid-color': 'solid_color',\n image: 'image',\n 'linear-gradient': 'linear_gradient',\n 'radial-gradient': 'radial_gradient',\n 'conic-gradient': 'conic_gradient'\n} satisfies { [K in BackgroundType]: ReplaceString<K, '-', '_'> };\n\nexport interface SolidColorConfigProps extends Pick<BackgroundPickerProps, 'value'>, TestIdProp {\n disableOpacity?: boolean;\n}\n\nexport type Size = 'auto' | 'cover' | 'contain';\n\nexport type Position =\n | 'center'\n | 'top'\n | 'right'\n | 'bottom'\n | 'left'\n | 'top left'\n | 'top right'\n | 'bottom right'\n | 'bottom left';\n\nexport const positionTranslationKeyMap = {\n center: 'center',\n top: 'top',\n right: 'right',\n bottom: 'bottom',\n left: 'left',\n 'top left': 'top_left',\n 'top right': 'top_right',\n 'bottom right': 'bottom_right',\n 'bottom left': 'bottom_left'\n} satisfies {\n [K in Position]: ReplaceString<K, ' ', '_'>;\n};\n\nexport type Repeat = 'no-repeat' | 'repeat' | 'repeat-x' | 'repeat-y' | 'space' | 'round';\n\nexport const repeatTranslationKeyMap = {\n 'no-repeat': 'no_repeat',\n repeat: 'repeat',\n 'repeat-x': 'repeat_x',\n 'repeat-y': 'repeat_y',\n space: 'space',\n round: 'round'\n} satisfies {\n [K in Repeat]: ReplaceString<K, '-', '_'>;\n};\n\nexport interface BackgroundImage {\n url: string;\n backgroundSize: Size;\n backgroundPosition: Position;\n backgroundRepeat: Repeat;\n}\n\nexport interface ImageConfigProps extends Pick<BackgroundPickerProps, 'value'>, TestIdProp {\n normalizeImageUrl?: (value: string) => string;\n isValidImageUrl?: (value: string) => boolean;\n}\n\nexport interface ConicGradient {\n angle: string;\n repeating: boolean;\n position: string;\n stops: ColorStop[];\n}\n\nexport interface GradientConfigProps extends Pick<BackgroundPickerProps, 'value'>, TestIdProp {\n type: BackgroundType;\n}\n\nexport type TableData = {\n id: string;\n color: string;\n location: string;\n};\n\nexport interface GradientInputProps {\n data: TableData;\n onChange: (id: string, type: keyof TableData, value: string) => void;\n}\n\nexport interface ComputedBackgroundRef {\n getValue: () => string;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ImageConfig.d.ts","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/ImageConfig.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAKV,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;;;;AAyHlC,wBAA+D"}
1
+ {"version":3,"file":"ImageConfig.d.ts","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/ImageConfig.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAKV,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;;;;AAgIlC,wBAA+D"}
@@ -25,7 +25,18 @@ const repeatOptions = [
25
25
  'space',
26
26
  'round'
27
27
  ];
28
- const ImageConfig = forwardRef(function ImageConfig({ testId, value }, ref) {
28
+ const defaultIsValidImageUrl = (value) => {
29
+ if (!value)
30
+ return false;
31
+ try {
32
+ const url = new URL(value);
33
+ return url.protocol === 'http:' || url.protocol === 'https:';
34
+ }
35
+ catch {
36
+ return false;
37
+ }
38
+ };
39
+ const ImageConfig = forwardRef(function ImageConfig({ testId, value, normalizeImageUrl = (v) => v, isValidImageUrl = defaultIsValidImageUrl }, ref) {
29
40
  const backgroundObj = getBackgroundImageDetails(value);
30
41
  const [imageURL, setImageURL] = useState(backgroundObj.url);
31
42
  const [backgroundSize, setBackgroundSize] = useState(backgroundObj.backgroundSize);
@@ -37,25 +48,15 @@ const ImageConfig = forwardRef(function ImageConfig({ testId, value }, ref) {
37
48
  const t = useI18n();
38
49
  const background = useMemo(() => {
39
50
  return `url(${invalidURL ? '' : imageURL}) ${backgroundPosition} / ${backgroundSize} ${backgroundRepeat}`;
40
- }, [imageURL, backgroundPosition, backgroundRepeat, backgroundSize]);
51
+ }, [imageURL, invalidURL, backgroundPosition, backgroundRepeat, backgroundSize]);
41
52
  useImperativeHandle(ref, () => ({
42
53
  getValue: () => background
43
54
  }));
44
55
  return (_jsxs(Flex, { container: { direction: 'column', gap: 0.5 }, children: [_jsx(Input, { testId: testIds.fileUrl, type: 'url', value: imageURL, label: t('file_url'), info: showError ? t('file_url_error') : undefined, status: showError ? 'error' : undefined, onChange: e => {
56
+ const imageUrl = normalizeImageUrl(e.target.value);
45
57
  setShowError(false);
46
- setImageURL(e.target.value);
47
- try {
48
- const newUrl = new URL(e.target.value);
49
- if (['http:', 'https:'].includes(newUrl.protocol)) {
50
- setInvalidURL(false);
51
- }
52
- else {
53
- setInvalidURL(true);
54
- }
55
- }
56
- catch {
57
- setInvalidURL(true);
58
- }
58
+ setImageURL(imageUrl);
59
+ setInvalidURL(!isValidImageUrl(imageUrl));
59
60
  }, onBlur: () => {
60
61
  setShowError(invalidURL);
61
62
  } }), _jsx(Select, { testId: testIds.size, label: t('size'), value: backgroundSize, onChange: e => setBackgroundSize(e.target.value), children: sizeOptions.map(option => (_jsx(Option, { value: option, children: t(option) }, option))) }), _jsx(Select, { testId: testIds.position, label: t('position'), value: backgroundPosition, onChange: e => setBackgroundPosition(e.target.value), children: positionOptions.map(option => (_jsx(Option, { value: option, children: t(positionTranslationKeyMap[option]) }, option))) }), _jsx(Select, { testId: testIds.repeat, label: t('repeat'), value: backgroundRepeat, onChange: e => setBackgroundRepeat(e.target.value), children: repeatOptions.map(option => (_jsx(Option, { value: option, children: t(repeatTranslationKeyMap[option]) }, option))) }), _jsxs(Flex, { "data-testid": testIds.imagePreview, container: { direction: 'column', gap: 1 }, children: [_jsx(Text, { variant: 'h3', children: t('image_preview') }), _jsx(StyledPreviewContainer, { children: _jsx(StyledPreview, { background: background, "aria-label": t('image_preview') }) })] })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"ImageConfig.js","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/ImageConfig.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n forwardRef,\n useImperativeHandle,\n useMemo,\n useState,\n type PropsWithoutRef,\n type Ref\n} from 'react';\n\nimport {\n useTestIds,\n useI18n,\n Flex,\n Input,\n Select,\n Option,\n withTestIds,\n Text\n} from '@pega/cosmos-react-core';\n\nimport { getImageConfigTestIds } from './BackgroundPicker.test-ids';\nimport { repeatTranslationKeyMap, positionTranslationKeyMap } from './BackgroundPicker.types';\nimport type {\n BackgroundImage,\n Size,\n Repeat,\n Position,\n ImageConfigProps,\n ComputedBackgroundRef\n} from './BackgroundPicker.types';\nimport { StyledPreview, StyledPreviewContainer } from './BackgroundPicker.styles';\nimport { getBackgroundImageDetails } from './utils';\n\nconst sizeOptions = ['auto', 'cover', 'contain'] as const satisfies Size[];\nconst positionOptions = [\n 'center',\n 'top',\n 'right',\n 'bottom',\n 'left',\n 'top left',\n 'top right',\n 'bottom right',\n 'bottom left'\n] as const satisfies Position[];\nconst repeatOptions = [\n 'no-repeat',\n 'repeat',\n 'repeat-x',\n 'repeat-y',\n 'space',\n 'round'\n] as const satisfies Repeat[];\n\nconst ImageConfig = forwardRef(function ImageConfig(\n { testId, value }: PropsWithoutRef<ImageConfigProps>,\n ref: Ref<ComputedBackgroundRef>\n) {\n const backgroundObj: BackgroundImage = getBackgroundImageDetails(value);\n\n const [imageURL, setImageURL] = useState(backgroundObj.url);\n const [backgroundSize, setBackgroundSize] = useState(backgroundObj.backgroundSize);\n const [backgroundPosition, setBackgroundPosition] = useState(backgroundObj.backgroundPosition);\n const [backgroundRepeat, setBackgroundRepeat] = useState(backgroundObj.backgroundRepeat);\n const [invalidURL, setInvalidURL] = useState(false);\n const [showError, setShowError] = useState(false);\n const testIds = useTestIds(testId, getImageConfigTestIds);\n const t = useI18n();\n\n const background = useMemo(() => {\n return `url(${invalidURL ? '' : imageURL}) ${backgroundPosition} / ${backgroundSize} ${backgroundRepeat}`;\n }, [imageURL, backgroundPosition, backgroundRepeat, backgroundSize]);\n\n useImperativeHandle(ref, () => ({\n getValue: () => background\n }));\n\n return (\n <Flex container={{ direction: 'column', gap: 0.5 }}>\n <Input\n testId={testIds.fileUrl}\n type='url'\n value={imageURL}\n label={t('file_url')}\n info={showError ? t('file_url_error') : undefined}\n status={showError ? 'error' : undefined}\n onChange={e => {\n setShowError(false);\n setImageURL(e.target.value);\n try {\n const newUrl = new URL(e.target.value);\n if (['http:', 'https:'].includes(newUrl.protocol)) {\n setInvalidURL(false);\n } else {\n setInvalidURL(true);\n }\n } catch {\n setInvalidURL(true);\n }\n }}\n onBlur={() => {\n setShowError(invalidURL);\n }}\n />\n <Select\n testId={testIds.size}\n label={t('size')}\n value={backgroundSize}\n onChange={e => setBackgroundSize(e.target.value as Size)}\n >\n {sizeOptions.map(option => (\n <Option key={option} value={option}>\n {t(option)}\n </Option>\n ))}\n </Select>\n <Select\n testId={testIds.position}\n label={t('position')}\n value={backgroundPosition}\n onChange={e => setBackgroundPosition(e.target.value as Position)}\n >\n {positionOptions.map(option => (\n <Option key={option} value={option}>\n {t(positionTranslationKeyMap[option])}\n </Option>\n ))}\n </Select>\n <Select\n testId={testIds.repeat}\n label={t('repeat')}\n value={backgroundRepeat}\n onChange={e => setBackgroundRepeat(e.target.value as Repeat)}\n >\n {repeatOptions.map(option => (\n <Option key={option} value={option}>\n {t(repeatTranslationKeyMap[option])}\n </Option>\n ))}\n </Select>\n <Flex data-testid={testIds.imagePreview} container={{ direction: 'column', gap: 1 }}>\n <Text variant='h3'>{t('image_preview')}</Text>\n <StyledPreviewContainer>\n <StyledPreview background={background} aria-label={t('image_preview')} />\n </StyledPreviewContainer>\n </Flex>\n </Flex>\n );\n});\n\nexport default withTestIds(ImageConfig, getImageConfigTestIds);\n"]}
1
+ {"version":3,"file":"ImageConfig.js","sourceRoot":"","sources":["../../../src/components/BackgroundPicker/ImageConfig.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n forwardRef,\n useImperativeHandle,\n useMemo,\n useState,\n type PropsWithoutRef,\n type Ref\n} from 'react';\n\nimport {\n useTestIds,\n useI18n,\n Flex,\n Input,\n Select,\n Option,\n withTestIds,\n Text\n} from '@pega/cosmos-react-core';\n\nimport { getImageConfigTestIds } from './BackgroundPicker.test-ids';\nimport { repeatTranslationKeyMap, positionTranslationKeyMap } from './BackgroundPicker.types';\nimport type {\n BackgroundImage,\n Size,\n Repeat,\n Position,\n ImageConfigProps,\n ComputedBackgroundRef\n} from './BackgroundPicker.types';\nimport { StyledPreview, StyledPreviewContainer } from './BackgroundPicker.styles';\nimport { getBackgroundImageDetails } from './utils';\n\nconst sizeOptions = ['auto', 'cover', 'contain'] as const satisfies Size[];\nconst positionOptions = [\n 'center',\n 'top',\n 'right',\n 'bottom',\n 'left',\n 'top left',\n 'top right',\n 'bottom right',\n 'bottom left'\n] as const satisfies Position[];\nconst repeatOptions = [\n 'no-repeat',\n 'repeat',\n 'repeat-x',\n 'repeat-y',\n 'space',\n 'round'\n] as const satisfies Repeat[];\n\nconst defaultIsValidImageUrl = (value: string): boolean => {\n if (!value) return false;\n try {\n const url = new URL(value);\n return url.protocol === 'http:' || url.protocol === 'https:';\n } catch {\n return false;\n }\n};\n\nconst ImageConfig = forwardRef(function ImageConfig(\n {\n testId,\n value,\n normalizeImageUrl = (v: string) => v,\n isValidImageUrl = defaultIsValidImageUrl\n }: PropsWithoutRef<ImageConfigProps>,\n ref: Ref<ComputedBackgroundRef>\n) {\n const backgroundObj: BackgroundImage = getBackgroundImageDetails(value);\n\n const [imageURL, setImageURL] = useState(backgroundObj.url);\n const [backgroundSize, setBackgroundSize] = useState(backgroundObj.backgroundSize);\n const [backgroundPosition, setBackgroundPosition] = useState(backgroundObj.backgroundPosition);\n const [backgroundRepeat, setBackgroundRepeat] = useState(backgroundObj.backgroundRepeat);\n const [invalidURL, setInvalidURL] = useState(false);\n const [showError, setShowError] = useState(false);\n const testIds = useTestIds(testId, getImageConfigTestIds);\n const t = useI18n();\n\n const background = useMemo(() => {\n return `url(${invalidURL ? '' : imageURL}) ${backgroundPosition} / ${backgroundSize} ${backgroundRepeat}`;\n }, [imageURL, invalidURL, backgroundPosition, backgroundRepeat, backgroundSize]);\n\n useImperativeHandle(ref, () => ({\n getValue: () => background\n }));\n\n return (\n <Flex container={{ direction: 'column', gap: 0.5 }}>\n <Input\n testId={testIds.fileUrl}\n type='url'\n value={imageURL}\n label={t('file_url')}\n info={showError ? t('file_url_error') : undefined}\n status={showError ? 'error' : undefined}\n onChange={e => {\n const imageUrl = normalizeImageUrl(e.target.value);\n setShowError(false);\n setImageURL(imageUrl);\n setInvalidURL(!isValidImageUrl(imageUrl));\n }}\n onBlur={() => {\n setShowError(invalidURL);\n }}\n />\n <Select\n testId={testIds.size}\n label={t('size')}\n value={backgroundSize}\n onChange={e => setBackgroundSize(e.target.value as Size)}\n >\n {sizeOptions.map(option => (\n <Option key={option} value={option}>\n {t(option)}\n </Option>\n ))}\n </Select>\n <Select\n testId={testIds.position}\n label={t('position')}\n value={backgroundPosition}\n onChange={e => setBackgroundPosition(e.target.value as Position)}\n >\n {positionOptions.map(option => (\n <Option key={option} value={option}>\n {t(positionTranslationKeyMap[option])}\n </Option>\n ))}\n </Select>\n <Select\n testId={testIds.repeat}\n label={t('repeat')}\n value={backgroundRepeat}\n onChange={e => setBackgroundRepeat(e.target.value as Repeat)}\n >\n {repeatOptions.map(option => (\n <Option key={option} value={option}>\n {t(repeatTranslationKeyMap[option])}\n </Option>\n ))}\n </Select>\n <Flex data-testid={testIds.imagePreview} container={{ direction: 'column', gap: 1 }}>\n <Text variant='h3'>{t('image_preview')}</Text>\n <StyledPreviewContainer>\n <StyledPreview background={background} aria-label={t('image_preview')} />\n </StyledPreviewContainer>\n </Flex>\n </Flex>\n );\n});\n\nexport default withTestIds(ImageConfig, getImageConfigTestIds);\n"]}
@@ -17,21 +17,37 @@ export declare const StyledDeleteDialog: import("styled-components/dist/types").
17
17
  onDismiss?: () => void;
18
18
  onCancel: import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").FormAction;
19
19
  onSubmit: import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").FormAction;
20
+ } & {
21
+ compact: true;
22
+ } & {
23
+ 'aria-label': string;
24
+ heading?: never;
25
+ additionalInfo?: never;
26
+ } & Omit<import("@pega/cosmos-react-core").Attributes<"div">, "compact" | "aria-label" | "onSubmit" | "onCancel" | "heading" | keyof import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").BaseDialogProps | "onDismiss" | "additionalInfo">, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & {
27
+ ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
28
+ }) | (Omit<Omit<import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").BaseDialogProps & {
29
+ onDismiss?: () => void;
30
+ onCancel: import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").FormAction;
31
+ onSubmit: import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").FormAction;
32
+ } & {
33
+ compact?: false | undefined;
20
34
  } & {
21
35
  heading: string;
22
36
  additionalInfo?: import("@pega/cosmos-react-core").AdditionalInfoProps;
23
37
  'aria-label'?: never;
24
- } & Omit<import("@pega/cosmos-react-core").Attributes<"div">, "aria-label" | "onSubmit" | "onCancel" | "heading" | keyof import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").BaseDialogProps | "onDismiss" | "additionalInfo">, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & {
38
+ } & Omit<import("@pega/cosmos-react-core").Attributes<"div">, "compact" | "aria-label" | "onSubmit" | "onCancel" | "heading" | keyof import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").BaseDialogProps | "onDismiss" | "additionalInfo">, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & {
25
39
  ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
26
40
  }) | (Omit<Omit<import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").BaseDialogProps & {
27
41
  onDismiss?: () => void;
28
42
  onCancel: import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").FormAction;
29
43
  onSubmit: import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").FormAction;
30
44
  } & {
31
- heading?: never;
45
+ compact?: false | undefined;
46
+ } & {
32
47
  'aria-label': string;
48
+ heading?: never;
33
49
  additionalInfo?: never;
34
- } & Omit<import("@pega/cosmos-react-core").Attributes<"div">, "aria-label" | "onSubmit" | "onCancel" | "heading" | keyof import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").BaseDialogProps | "onDismiss" | "additionalInfo">, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & {
50
+ } & Omit<import("@pega/cosmos-react-core").Attributes<"div">, "compact" | "aria-label" | "onSubmit" | "onCancel" | "heading" | keyof import("@pega/cosmos-react-core/lib/components/Dialog/Dialog.types").BaseDialogProps | "onDismiss" | "additionalInfo">, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & {
35
51
  ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
36
52
  }), import("styled-components/dist/types").BaseObject>> & string & Omit<import("react").ForwardRefExoticComponent<PropsWithoutRef<FormDialogProps> & import("react").RefAttributes<HTMLDivElement>>, keyof import("react").Component<any, {}, any>>;
37
53
  declare const DeleteDialog: ({ target, flowGraphData, rendererGraphData, nodeId, onChange, onSubmit, onCancel }: PropsWithoutRef<DeleteDialogProps>) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteDialog.d.ts","sourceRoot":"","sources":["../../../src/components/FlowModeller/DeleteDialog.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAsB,WAAW,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAa9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EAElB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGnD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAClC,aAAa,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,iBAAiB,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CACT,aAAa,EAAE,cAAc,EAC7B,aAAa,EAAE,cAAc,GAAG,SAAS,EACzC,EAAE,CAAC,EAAE,WAAW,KACb,IAAI,CAAC;IACV,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,GAAG,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;mPAI7B,CAAC;AAIH,QAAA,MAAM,YAAY,GAAI,oFAQnB,eAAe,CAAC,iBAAiB,CAAC,4CA2NpC,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"DeleteDialog.d.ts","sourceRoot":"","sources":["../../../src/components/FlowModeller/DeleteDialog.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAsB,WAAW,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAc9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EAElB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGnD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAClC,aAAa,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,iBAAiB,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CACT,aAAa,EAAE,cAAc,EAC7B,aAAa,EAAE,cAAc,GAAG,SAAS,EACzC,EAAE,CAAC,EAAE,WAAW,KACb,IAAI,CAAC;IACV,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,GAAG,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mPAI7B,CAAC;AAIH,QAAA,MAAM,YAAY,GAAI,oFAQnB,eAAe,CAAC,iBAAiB,CAAC,4CA6NpC,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { useState, useEffect, useMemo } from 'react';
3
3
  import styled, { css } from 'styled-components';
4
- import { Select, Option, Text, Flex, useI18n, useElement, FormDialog, defaultThemeProp } from '@pega/cosmos-react-core';
4
+ import { Select, Option, Text, Flex, useI18n, useElement, FormDialog, defaultThemeProp, getResolvedTarget } from '@pega/cosmos-react-core';
5
5
  import { DirectedGraph } from './Renderer/Utils/Graph';
6
6
  import deleteNodeUtils from './Utils/deleteNodeUtils';
7
7
  import { getReferences } from './helper';
@@ -33,7 +33,7 @@ const DeleteDialog = ({ target, flowGraphData, rendererGraphData, nodeId, onChan
33
33
  : deleteOptions[currentSelection].restItems;
34
34
  // add the actual node to be deleted also, to the list
35
35
  itemsToDelete.nodes[nodeId] = graph.getNode(nodeId);
36
- setCurrNode(target);
36
+ setCurrNode(getResolvedTarget(target));
37
37
  onChange?.(itemsToDelete, deleteOptions[currentSelection].pathItems);
38
38
  }
39
39
  }, [rendererGraphData]);
@@ -147,7 +147,9 @@ const DeleteDialog = ({ target, flowGraphData, rendererGraphData, nodeId, onChan
147
147
  onSubmit?.(outcome);
148
148
  };
149
149
  const onCancelHandler = () => {
150
- currNode?.focus();
150
+ if (currNode instanceof HTMLElement) {
151
+ currNode.focus();
152
+ }
151
153
  onCancel?.();
152
154
  };
153
155
  return (_jsx(StyledDeleteDialog, { target: target, heading: t('delete_step_title'), onCancel: onCancelHandler, onSubmit: submitHandler, placement: 'right-end', children: _jsx(Flex, { container: { gap: 2, pad: 2, direction: 'column' }, children: nodeType === 'Decision' ? (_jsxs(_Fragment, { children: [_jsx(Text, { children: t('delete_decision_step') }), _jsxs(Select, { id: 'select-demo', label: t('delete_step_outcome'), value: selectedPath, required: true, onChange: onChangeHandler, children: [deleteOptions.map(item => {
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteDialog.js","sourceRoot":"","sources":["../../../src/components/FlowModeller/DeleteDialog.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect, useMemo } from 'react';\nimport type { ChangeEventHandler, ChangeEvent, PropsWithoutRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport {\n Select,\n Option,\n Text,\n Flex,\n useI18n,\n useElement,\n FormDialog,\n defaultThemeProp\n} from '@pega/cosmos-react-core';\nimport type { FormDialogProps } from '@pega/cosmos-react-core';\n\nimport { DirectedGraph } from './Renderer/Utils/Graph';\nimport type { GraphData } from './Renderer/Utils/Graph';\nimport type {\n GraphDataAsMap,\n DeleteNodeOutcome,\n DeleteNodeModalOption\n} from './Utils/deleteNodeUtils';\nimport deleteNodeUtils from './Utils/deleteNodeUtils';\nimport type { NodeProps } from './Node/Node.types';\nimport { getReferences } from './helper';\n\nexport interface DeleteDialogProps {\n target: FormDialogProps['target'];\n flowGraphData: GraphData<NodeProps>;\n rendererGraphData: GraphData<NodeProps>;\n nodeId: string;\n onChange?: (\n itemsToDelete: GraphDataAsMap,\n itemsToRetain: GraphDataAsMap | undefined,\n ev?: ChangeEvent\n ) => void;\n onSubmit?: (outcome: DeleteNodeOutcome) => void;\n onCancel?: () => void;\n ref?: FormDialogProps['ref'];\n}\n\nexport const StyledDeleteDialog = styled(FormDialog)(({ theme }) => {\n return css`\n min-width: calc(30 * ${theme.base.spacing});\n `;\n});\n\nStyledDeleteDialog.defaultProps = defaultThemeProp;\n\nconst DeleteDialog = ({\n target,\n flowGraphData,\n rendererGraphData,\n nodeId,\n onChange,\n onSubmit,\n onCancel\n}: PropsWithoutRef<DeleteDialogProps>) => {\n const [currentSelection, setCurrentSelection] = useState<number>(0);\n\n const [currNode, setCurrNode] = useElement<HTMLElement>();\n\n const t = useI18n();\n\n const graph = new DirectedGraph<NodeProps>(rendererGraphData);\n\n const deleteOptionsResult = deleteNodeUtils.getDeleteNodeOptions(graph, nodeId);\n\n const deleteOptions: DeleteNodeModalOption[] = deleteOptionsResult.options;\n\n const selectedPath: string = useMemo(() => {\n if (currentSelection === -1 || !deleteOptions[currentSelection]) {\n return 'none';\n }\n const option = deleteOptions[currentSelection];\n return option.connector.label || option.connector.id;\n }, [deleteOptions, currentSelection]);\n\n const nodeType = graph.getNode(nodeId).type.name;\n\n useEffect(() => {\n if (deleteOptionsResult && deleteOptions[currentSelection]) {\n const itemsToDelete: GraphDataAsMap =\n nodeType !== 'Decision'\n ? deleteOptionsResult.allItems\n : deleteOptions[currentSelection].restItems;\n\n // add the actual node to be deleted also, to the list\n itemsToDelete.nodes[nodeId] = graph.getNode(nodeId);\n setCurrNode(target);\n onChange?.(itemsToDelete, deleteOptions[currentSelection].pathItems);\n }\n }, [rendererGraphData]);\n\n const onChangeHandler: ChangeEventHandler = (ev: ChangeEvent<HTMLSelectElement>) => {\n const newSelection =\n ev.target.selectedIndex >= deleteOptions.length ? -1 : ev.target.selectedIndex;\n\n setCurrentSelection(newSelection);\n\n let itemsToDelete;\n if (deleteOptionsResult) {\n itemsToDelete = deleteOptionsResult.allItems;\n }\n\n let itemsToRetain;\n\n if (newSelection !== -1) {\n itemsToDelete = deleteOptions[newSelection].restItems;\n itemsToRetain = deleteOptions[newSelection].pathItems;\n }\n\n // add the actual node to be deleted also, to the list\n if (itemsToDelete) {\n itemsToDelete.nodes[nodeId] = graph.getNode(nodeId);\n }\n\n if (itemsToDelete) {\n onChange?.(itemsToDelete, itemsToRetain, ev);\n }\n };\n\n const submitHandler = () => {\n let error = true;\n const finalGraph = new DirectedGraph<NodeProps>(flowGraphData);\n const finalDeleteOptionsResult = deleteNodeUtils.getDeleteNodeOptions(finalGraph, nodeId);\n\n let newTargetNode = finalDeleteOptionsResult?.destinationNodeId\n ? finalGraph.getNode(finalDeleteOptionsResult.destinationNodeId)\n : undefined;\n let itemsToDelete = finalDeleteOptionsResult.allItems;\n\n const selectedOption =\n currentSelection === -1 || nodeType !== 'Decision'\n ? undefined\n : finalDeleteOptionsResult?.options[currentSelection];\n let finalMetaData = selectedOption;\n\n if (selectedOption) {\n const pathConnectors = selectedOption.pathItems.connectors;\n const connectors = Object.keys(pathConnectors);\n for (let i = 0; i < connectors.length; i += 1) {\n const connectorData = pathConnectors[connectors[i]];\n if (\n connectorData &&\n finalGraph.getNode(connectorData.fromNodeId).type?.minConnectors !== 0 &&\n connectorData.toNodeId === finalDeleteOptionsResult.destinationNodeId\n ) {\n error = false;\n break;\n }\n }\n\n const references = getReferences(Object.values(itemsToDelete.nodes), finalGraph);\n if (error || references.length > 0) {\n onSubmit?.({\n graphData: {\n nodes: [],\n connectors: []\n },\n updates: {\n connectors: []\n },\n deletes: { nodes: {}, connectors: {} },\n error: true,\n references\n });\n return;\n }\n\n finalMetaData = finalDeleteOptionsResult.options.find(\n current => selectedOption.connector.id === current.connector.id\n );\n\n if (finalMetaData) {\n // get the ref of the first node of the retaining path\n newTargetNode = finalGraph.getNode(finalMetaData.connector.toNodeId);\n itemsToDelete = finalMetaData.restItems;\n }\n }\n\n // get the in-connectors of the selected node\n const nodeInConnectors = finalGraph.getInConnectors(nodeId);\n\n // iterate and set the targetNode to the above first node instead of the selected node.\n if (newTargetNode) {\n nodeInConnectors.forEach(con => {\n finalGraph.setConnector(con.id, {\n toNodeId: newTargetNode.id\n });\n });\n } else {\n // if no retaining path, then remove the in connectors of the deleted node as well\n nodeInConnectors.forEach(con => {\n finalGraph.removeConnector(con.id);\n });\n }\n\n const resultGraphData = finalGraph.getGraphData();\n\n itemsToDelete.nodes[nodeId] = finalGraph.getNode(nodeId);\n\n // filter the highlighted nodes, including the selected node\n const nodes = resultGraphData.nodes.filter(item => {\n return itemsToDelete.nodes[item.id] === undefined;\n });\n\n if (finalMetaData) {\n itemsToDelete.connectors[finalMetaData.connector.id] = finalMetaData.connector;\n }\n\n // filter the highlighted connectors\n const connectors = resultGraphData.connectors.filter(item => {\n return itemsToDelete.connectors[item.id] === undefined;\n });\n\n const outcome: DeleteNodeOutcome = {\n graphData: {\n nodes,\n connectors\n },\n updates: {\n connectors: nodeInConnectors\n },\n deletes: itemsToDelete,\n error: false\n };\n onSubmit?.(outcome);\n };\n\n const onCancelHandler = () => {\n currNode?.focus();\n onCancel?.();\n };\n\n return (\n <StyledDeleteDialog\n target={target}\n heading={t('delete_step_title')}\n onCancel={onCancelHandler}\n onSubmit={submitHandler}\n placement='right-end'\n >\n <Flex container={{ gap: 2, pad: 2, direction: 'column' }}>\n {nodeType === 'Decision' ? (\n <>\n <Text>{t('delete_decision_step')}</Text>\n <Select\n id='select-demo'\n label={t('delete_step_outcome')}\n value={selectedPath}\n required\n onChange={onChangeHandler}\n >\n {deleteOptions.map(item => {\n return (\n <Option\n key={item.connector.id}\n value={item.connector.label ? item.connector.label : item.connector.id}\n >\n {item.connector.label ? item.connector.label : item.connector.id}\n </Option>\n );\n })}\n\n <Option key='none' value='none'>\n {t('delete_all_outcomes')}\n </Option>\n </Select>\n </>\n ) : (\n <Text>{t('delete_step')}</Text>\n )}\n </Flex>\n </StyledDeleteDialog>\n );\n};\n\nexport default DeleteDialog;\n"]}
1
+ {"version":3,"file":"DeleteDialog.js","sourceRoot":"","sources":["../../../src/components/FlowModeller/DeleteDialog.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useState, useEffect, useMemo } from 'react';\nimport type { ChangeEventHandler, ChangeEvent, PropsWithoutRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport {\n Select,\n Option,\n Text,\n Flex,\n useI18n,\n useElement,\n FormDialog,\n defaultThemeProp,\n getResolvedTarget\n} from '@pega/cosmos-react-core';\nimport type { FormDialogProps } from '@pega/cosmos-react-core';\n\nimport { DirectedGraph } from './Renderer/Utils/Graph';\nimport type { GraphData } from './Renderer/Utils/Graph';\nimport type {\n GraphDataAsMap,\n DeleteNodeOutcome,\n DeleteNodeModalOption\n} from './Utils/deleteNodeUtils';\nimport deleteNodeUtils from './Utils/deleteNodeUtils';\nimport type { NodeProps } from './Node/Node.types';\nimport { getReferences } from './helper';\n\nexport interface DeleteDialogProps {\n target: FormDialogProps['target'];\n flowGraphData: GraphData<NodeProps>;\n rendererGraphData: GraphData<NodeProps>;\n nodeId: string;\n onChange?: (\n itemsToDelete: GraphDataAsMap,\n itemsToRetain: GraphDataAsMap | undefined,\n ev?: ChangeEvent\n ) => void;\n onSubmit?: (outcome: DeleteNodeOutcome) => void;\n onCancel?: () => void;\n ref?: FormDialogProps['ref'];\n}\n\nexport const StyledDeleteDialog = styled(FormDialog)(({ theme }) => {\n return css`\n min-width: calc(30 * ${theme.base.spacing});\n `;\n});\n\nStyledDeleteDialog.defaultProps = defaultThemeProp;\n\nconst DeleteDialog = ({\n target,\n flowGraphData,\n rendererGraphData,\n nodeId,\n onChange,\n onSubmit,\n onCancel\n}: PropsWithoutRef<DeleteDialogProps>) => {\n const [currentSelection, setCurrentSelection] = useState<number>(0);\n\n const [currNode, setCurrNode] = useElement<Element>();\n\n const t = useI18n();\n\n const graph = new DirectedGraph<NodeProps>(rendererGraphData);\n\n const deleteOptionsResult = deleteNodeUtils.getDeleteNodeOptions(graph, nodeId);\n\n const deleteOptions: DeleteNodeModalOption[] = deleteOptionsResult.options;\n\n const selectedPath: string = useMemo(() => {\n if (currentSelection === -1 || !deleteOptions[currentSelection]) {\n return 'none';\n }\n const option = deleteOptions[currentSelection];\n return option.connector.label || option.connector.id;\n }, [deleteOptions, currentSelection]);\n\n const nodeType = graph.getNode(nodeId).type.name;\n\n useEffect(() => {\n if (deleteOptionsResult && deleteOptions[currentSelection]) {\n const itemsToDelete: GraphDataAsMap =\n nodeType !== 'Decision'\n ? deleteOptionsResult.allItems\n : deleteOptions[currentSelection].restItems;\n\n // add the actual node to be deleted also, to the list\n itemsToDelete.nodes[nodeId] = graph.getNode(nodeId);\n setCurrNode(getResolvedTarget(target));\n onChange?.(itemsToDelete, deleteOptions[currentSelection].pathItems);\n }\n }, [rendererGraphData]);\n\n const onChangeHandler: ChangeEventHandler = (ev: ChangeEvent<HTMLSelectElement>) => {\n const newSelection =\n ev.target.selectedIndex >= deleteOptions.length ? -1 : ev.target.selectedIndex;\n\n setCurrentSelection(newSelection);\n\n let itemsToDelete;\n if (deleteOptionsResult) {\n itemsToDelete = deleteOptionsResult.allItems;\n }\n\n let itemsToRetain;\n\n if (newSelection !== -1) {\n itemsToDelete = deleteOptions[newSelection].restItems;\n itemsToRetain = deleteOptions[newSelection].pathItems;\n }\n\n // add the actual node to be deleted also, to the list\n if (itemsToDelete) {\n itemsToDelete.nodes[nodeId] = graph.getNode(nodeId);\n }\n\n if (itemsToDelete) {\n onChange?.(itemsToDelete, itemsToRetain, ev);\n }\n };\n\n const submitHandler = () => {\n let error = true;\n const finalGraph = new DirectedGraph<NodeProps>(flowGraphData);\n const finalDeleteOptionsResult = deleteNodeUtils.getDeleteNodeOptions(finalGraph, nodeId);\n\n let newTargetNode = finalDeleteOptionsResult?.destinationNodeId\n ? finalGraph.getNode(finalDeleteOptionsResult.destinationNodeId)\n : undefined;\n let itemsToDelete = finalDeleteOptionsResult.allItems;\n\n const selectedOption =\n currentSelection === -1 || nodeType !== 'Decision'\n ? undefined\n : finalDeleteOptionsResult?.options[currentSelection];\n let finalMetaData = selectedOption;\n\n if (selectedOption) {\n const pathConnectors = selectedOption.pathItems.connectors;\n const connectors = Object.keys(pathConnectors);\n for (let i = 0; i < connectors.length; i += 1) {\n const connectorData = pathConnectors[connectors[i]];\n if (\n connectorData &&\n finalGraph.getNode(connectorData.fromNodeId).type?.minConnectors !== 0 &&\n connectorData.toNodeId === finalDeleteOptionsResult.destinationNodeId\n ) {\n error = false;\n break;\n }\n }\n\n const references = getReferences(Object.values(itemsToDelete.nodes), finalGraph);\n if (error || references.length > 0) {\n onSubmit?.({\n graphData: {\n nodes: [],\n connectors: []\n },\n updates: {\n connectors: []\n },\n deletes: { nodes: {}, connectors: {} },\n error: true,\n references\n });\n return;\n }\n\n finalMetaData = finalDeleteOptionsResult.options.find(\n current => selectedOption.connector.id === current.connector.id\n );\n\n if (finalMetaData) {\n // get the ref of the first node of the retaining path\n newTargetNode = finalGraph.getNode(finalMetaData.connector.toNodeId);\n itemsToDelete = finalMetaData.restItems;\n }\n }\n\n // get the in-connectors of the selected node\n const nodeInConnectors = finalGraph.getInConnectors(nodeId);\n\n // iterate and set the targetNode to the above first node instead of the selected node.\n if (newTargetNode) {\n nodeInConnectors.forEach(con => {\n finalGraph.setConnector(con.id, {\n toNodeId: newTargetNode.id\n });\n });\n } else {\n // if no retaining path, then remove the in connectors of the deleted node as well\n nodeInConnectors.forEach(con => {\n finalGraph.removeConnector(con.id);\n });\n }\n\n const resultGraphData = finalGraph.getGraphData();\n\n itemsToDelete.nodes[nodeId] = finalGraph.getNode(nodeId);\n\n // filter the highlighted nodes, including the selected node\n const nodes = resultGraphData.nodes.filter(item => {\n return itemsToDelete.nodes[item.id] === undefined;\n });\n\n if (finalMetaData) {\n itemsToDelete.connectors[finalMetaData.connector.id] = finalMetaData.connector;\n }\n\n // filter the highlighted connectors\n const connectors = resultGraphData.connectors.filter(item => {\n return itemsToDelete.connectors[item.id] === undefined;\n });\n\n const outcome: DeleteNodeOutcome = {\n graphData: {\n nodes,\n connectors\n },\n updates: {\n connectors: nodeInConnectors\n },\n deletes: itemsToDelete,\n error: false\n };\n onSubmit?.(outcome);\n };\n\n const onCancelHandler = () => {\n if (currNode instanceof HTMLElement) {\n currNode.focus();\n }\n onCancel?.();\n };\n\n return (\n <StyledDeleteDialog\n target={target}\n heading={t('delete_step_title')}\n onCancel={onCancelHandler}\n onSubmit={submitHandler}\n placement='right-end'\n >\n <Flex container={{ gap: 2, pad: 2, direction: 'column' }}>\n {nodeType === 'Decision' ? (\n <>\n <Text>{t('delete_decision_step')}</Text>\n <Select\n id='select-demo'\n label={t('delete_step_outcome')}\n value={selectedPath}\n required\n onChange={onChangeHandler}\n >\n {deleteOptions.map(item => {\n return (\n <Option\n key={item.connector.id}\n value={item.connector.label ? item.connector.label : item.connector.id}\n >\n {item.connector.label ? item.connector.label : item.connector.id}\n </Option>\n );\n })}\n\n <Option key='none' value='none'>\n {t('delete_all_outcomes')}\n </Option>\n </Select>\n </>\n ) : (\n <Text>{t('delete_step')}</Text>\n )}\n </Flex>\n </StyledDeleteDialog>\n );\n};\n\nexport default DeleteDialog;\n"]}
@@ -394,6 +394,7 @@ export declare const getStageInfo: (currentType: StageType, transitionType: Stag
394
394
  };
395
395
  readonly header: {
396
396
  readonly "app-name-color": string;
397
+ readonly "portal-name-color": string;
397
398
  readonly background: string;
398
399
  readonly "foreground-color": string;
399
400
  readonly "background-color": string;
@@ -404,6 +405,10 @@ export declare const getStageInfo: (currentType: StageType, transitionType: Stag
404
405
  readonly "border-color": string;
405
406
  };
406
407
  };
408
+ readonly "document-tabs": {
409
+ readonly variant: string;
410
+ readonly fill: string;
411
+ };
407
412
  };
408
413
  readonly "case-view": {
409
414
  readonly header: {
@@ -1 +1 @@
1
- {"version":3,"file":"LifeCycle.types.d.ts","sourceRoot":"","sources":["../../../src/components/LifeCycle/LifeCycle.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LifeCycle.types.d.ts","sourceRoot":"","sources":["../../../src/components/LifeCycle/LifeCycle.types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pega/cosmos-react-build",
3
- "version": "10.0.0-build.5.2",
3
+ "version": "10.0.0-build.5.20",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "author": "Pegasystems",
6
6
  "sideEffects": false,
@@ -15,9 +15,9 @@
15
15
  },
16
16
  "dependencies": {
17
17
  "@dagrejs/dagre": "^3.0.0",
18
- "@pega/cosmos-react-core": "10.0.0-build.5.2",
19
- "@pega/cosmos-react-dnd": "10.0.0-build.5.2",
20
- "@pega/cosmos-react-rte": "10.0.0-build.5.2",
18
+ "@pega/cosmos-react-core": "10.0.0-build.5.20",
19
+ "@pega/cosmos-react-dnd": "10.0.0-build.5.20",
20
+ "@pega/cosmos-react-rte": "10.0.0-build.5.20",
21
21
  "@types/codemirror": "^5.60.15",
22
22
  "@types/react": "^17.0.62 || ^18.3.3",
23
23
  "@types/react-dom": "^17.0.20 || ^18.3.0",