@makeswift/runtime 0.20.3 → 0.20.4-canary.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/cjs/next/api-handler/handlers/manifest.js +1 -1
  2. package/dist/cjs/runtimes/react/controls.js +59 -475
  3. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  4. package/dist/cjs/runtimes/react/legacy-controls.js +344 -0
  5. package/dist/cjs/runtimes/react/legacy-controls.js.map +1 -0
  6. package/dist/cjs/utils/deepEqual.js +2 -29
  7. package/dist/cjs/utils/deepEqual.js.map +1 -1
  8. package/dist/cjs/utils/is.js +3 -6
  9. package/dist/cjs/utils/is.js.map +1 -1
  10. package/dist/cjs/utils/partition.js +48 -0
  11. package/dist/cjs/utils/partition.js.map +1 -0
  12. package/dist/cjs/utils/shallowEqual.js +2 -28
  13. package/dist/cjs/utils/shallowEqual.js.map +1 -1
  14. package/dist/esm/next/api-handler/handlers/manifest.js +1 -1
  15. package/dist/esm/runtimes/react/controls.js +58 -507
  16. package/dist/esm/runtimes/react/controls.js.map +1 -1
  17. package/dist/esm/runtimes/react/legacy-controls.js +356 -0
  18. package/dist/esm/runtimes/react/legacy-controls.js.map +1 -0
  19. package/dist/esm/utils/deepEqual.js +1 -18
  20. package/dist/esm/utils/deepEqual.js.map +1 -1
  21. package/dist/esm/utils/is.js +3 -6
  22. package/dist/esm/utils/is.js.map +1 -1
  23. package/dist/esm/utils/partition.js +23 -0
  24. package/dist/esm/utils/partition.js.map +1 -0
  25. package/dist/esm/utils/shallowEqual.js +1 -17
  26. package/dist/esm/utils/shallowEqual.js.map +1 -1
  27. package/dist/types/runtimes/react/controls.d.ts +0 -6
  28. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  29. package/dist/types/runtimes/react/legacy-controls.d.ts +7 -0
  30. package/dist/types/runtimes/react/legacy-controls.d.ts.map +1 -0
  31. package/dist/types/utils/__tests__/partition.test.d.ts +2 -0
  32. package/dist/types/utils/__tests__/partition.test.d.ts.map +1 -0
  33. package/dist/types/utils/deepEqual.d.ts +1 -1
  34. package/dist/types/utils/deepEqual.d.ts.map +1 -1
  35. package/dist/types/utils/is.d.ts +2 -1
  36. package/dist/types/utils/is.d.ts.map +1 -1
  37. package/dist/types/utils/partition.d.ts +19 -0
  38. package/dist/types/utils/partition.d.ts.map +1 -0
  39. package/dist/types/utils/shallowEqual.d.ts +1 -1
  40. package/dist/types/utils/shallowEqual.d.ts.map +1 -1
  41. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/controls.tsx"],"sourcesContent":["import { useRef } from 'react'\n\nimport * as ReactPage from '../../state/react-page'\n\nimport {\n useBoxShadow,\n useBorder as useBorderData,\n useLinkPropControllerData,\n useCheckboxPropControllerData,\n useDatePropControllerData,\n useFontPropControllerData,\n useVideoPropControllerData,\n useTablePropControllerData,\n} from '../../components/hooks'\nimport type { ColorValue } from '../../components/utils/types'\nimport {\n useResponsiveBorder,\n useResponsiveBorderRadius,\n useResponsiveMargin,\n useResponsivePadding,\n useResponsiveShadow,\n useResponsiveWidth,\n} from '../../components/utils/responsive-style'\n\nimport {\n CheckboxDefinition,\n NumberDefinition,\n RichTextV2Definition,\n RichTextV2Control,\n ColorDefinition,\n ComboboxDefinition,\n IconRadioGroupDefinition,\n ImageDefinition,\n LinkDefinition,\n ListDefinition,\n RichTextV1Definition,\n RichTextV1Control,\n SelectDefinition,\n ShapeDefinition,\n SlotDefinition,\n SlotControl,\n StyleDefinition,\n StyleControl,\n StyleV2Definition,\n TextAreaDefinition,\n TextInputDefinition,\n unstable_TypographyDefinition,\n} from '../../controls'\n\nimport { useFormattedStyle } from './controls/style'\nimport { ControlValue } from './controls/control'\nimport { RenderHook } from './components'\nimport { useSlot } from './controls/slot'\nimport { useStyle } from './use-style'\nimport { useRichText } from './controls/rich-text/rich-text'\nimport { useRichTextV2 } from './controls/rich-text-v2'\nimport { useStore } from './hooks/use-store'\nimport { useDocumentKey } from './hooks/use-document-key'\nimport { useSelector } from './hooks/use-selector'\nimport {\n Types as PropControllerTypes,\n getShadowsPropControllerDataResponsiveShadowsData,\n ShadowsPropControllerData,\n Shadows,\n ResponsiveValue,\n BorderPropControllerFormat,\n ResponsiveBorderData,\n BorderPropControllerData,\n getBorderPropControllerDataResponsiveBorderData,\n getBorderRadiusPropControllerDataResponsiveBorderRadiusData,\n BorderRadiusPropControllerData,\n BorderRadiusPropControllerFormat,\n MarginPropControllerFormat,\n MarginPropControllerData,\n getMarginPropControllerDataResponsiveMarginData,\n PaddingPropControllerData,\n getPaddingPropControllerDataResponsivePaddingData,\n PaddingPropControllerFormat,\n WidthPropControllerData,\n getWidthPropControllerDataResponsiveLengthData,\n WidthPropControllerFormat,\n WidthDescriptor,\n GapX,\n ResponsiveNumber,\n ResponsiveIconRadioGroup,\n ResponsiveSelect,\n ResponsiveOpacity,\n getSocialLinksPropControllerDataSocialLinksData,\n} from '@makeswift/prop-controllers'\n\nimport { isLegacyDescriptor } from '../../prop-controllers/descriptors'\nimport { useResponsiveLengthPropControllerData } from '../../components/hooks/useResponsiveLengthPropControllerData'\nimport { useNumberPropControllerData } from '../../components/hooks/useNumberPropControllerData'\nimport { useResponsiveColorPropControllerData } from '../../components/hooks/useResponsiveColorPropControllerData'\nimport { useTextStylePropControllerData } from '../../components/hooks/useTextStylePropControllerData'\nimport { useNavigationLinksPropControllerData } from '../../components/hooks/useNavigationLinksPropControllerData'\nimport { useTextAreaPropControllerData } from '../../components/hooks/useTextAreaPropControllerData'\nimport { usePropValue } from '../../components/hooks/usePropValue'\nimport { useGapYPropControllerData } from '../../components/hooks/useGapYPropControllerData'\nimport { useElementIDPropControllerData } from '../../components/hooks/useElementIDPropControllerData'\nimport { useTableFormFieldsPropControllerData } from '../../components/hooks/useTableFormFieldsPropControllerData'\nimport { useGridPropControllerData } from '../../components/hooks/useGridPropControllerData'\nimport { useImagePropControllerData } from '../../components/hooks/useImagePropControllerData'\nimport { useImagesPropControllerData } from '../../components/hooks/useImagesPropControllerData'\nimport { useBackgroundsPropControllerData } from '../../components/hooks/useBackgroundsPropControllerData'\nimport { useTextInputPropControllerData } from '../../components/hooks/useTextInputPropControllerData'\n\nexport type ResponsiveColor = ResponsiveValue<ColorValue>\n\nfunction useWidthStyle(\n data: WidthPropControllerData | undefined,\n descriptor: WidthDescriptor,\n): string {\n const value = getWidthPropControllerDataResponsiveLengthData(data)\n\n return useStyle(useResponsiveWidth(value, descriptor.options.defaultValue))\n}\n\nfunction usePaddingStyle(data: PaddingPropControllerData | undefined): string {\n const value = getPaddingPropControllerDataResponsivePaddingData(data)\n\n return useStyle(useResponsivePadding(value))\n}\n\nfunction useMarginStyle(data: MarginPropControllerData | undefined): string {\n const value = getMarginPropControllerDataResponsiveMarginData(data)\n\n return useStyle(useResponsiveMargin(value))\n}\n\nexport function useBorderRadiusStyle(data: BorderRadiusPropControllerData | undefined): string {\n const value = getBorderRadiusPropControllerDataResponsiveBorderRadiusData(data)\n\n return useStyle(useResponsiveBorderRadius(value))\n}\n\nexport function useShadowsStyle(data: ShadowsPropControllerData | undefined): string {\n return useStyle(useResponsiveShadow(useBoxShadow(data) ?? undefined))\n}\n\nexport function useBorderStyle(\n data: BorderPropControllerData | undefined,\n): string | ResponsiveBorderData | undefined {\n const value = getBorderPropControllerDataResponsiveBorderData(data)\n const borderData = useBorderData(value)\n\n return useStyle(useResponsiveBorder(borderData ?? undefined))\n}\n\ntype PropsValueProps = {\n element: ReactPage.ElementData\n children(props: Record<string, unknown>): JSX.Element\n}\n\nexport function PropsValue({ element, children }: PropsValueProps): JSX.Element {\n const store = useStore()\n const propControllerDescriptorsRef = useRef(\n ReactPage.getComponentPropControllerDescriptors(store.getState(), element.type) ?? {},\n )\n const props = element.props as Record<string, any>\n const documentKey = useDocumentKey()\n\n const propControllers = useSelector(state => {\n if (documentKey == null) return null\n\n return ReactPage.getPropControllers(state, documentKey, element.key)\n })\n\n return Object.entries(propControllerDescriptorsRef.current).reduceRight(\n (renderFn, [propName, descriptor]) =>\n propsValue => {\n if (!isLegacyDescriptor(descriptor)) {\n switch (descriptor.controlType) {\n case CheckboxDefinition.type:\n case NumberDefinition.type:\n case TextInputDefinition.type:\n case TextAreaDefinition.type:\n case SelectDefinition.type:\n case ColorDefinition.type:\n case IconRadioGroupDefinition.type:\n case ImageDefinition.type:\n case ComboboxDefinition.type:\n case ShapeDefinition.type:\n case ListDefinition.type:\n case LinkDefinition.type:\n case StyleV2Definition.type:\n case unstable_TypographyDefinition.type:\n return (\n <ControlValue\n definition={descriptor}\n data={props[propName]}\n control={propControllers?.[propName]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </ControlValue>\n )\n\n case StyleDefinition.type: {\n const control = (propControllers?.[propName] ?? null) as StyleControl | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useFormattedStyle}\n parameters={[props[propName], descriptor as StyleDefinition, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextV1Definition.type: {\n const control = (propControllers?.[propName] ?? null) as RichTextV1Control | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useRichText}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextV2Definition.type: {\n const control = (propControllers?.[propName] ?? null) as RichTextV2Control | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useRichTextV2}\n parameters={[props[propName], descriptor as RichTextV2Definition, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case SlotDefinition.type: {\n const control = (propControllers?.[propName] ?? null) as SlotControl | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useSlot}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n }\n\n console.error(`Unknown control type: ${descriptor.controlType}`)\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Width:\n switch (descriptor.options.format) {\n case WidthPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useWidthStyle}\n parameters={[props[propName], descriptor]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case WidthPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...propsValue,\n [propName]: getWidthPropControllerDataResponsiveLengthData(props[propName]),\n })\n }\n\n case PropControllerTypes.Padding:\n switch (descriptor.options.format) {\n case PaddingPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={usePaddingStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PaddingPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...propsValue,\n [propName]: getPaddingPropControllerDataResponsivePaddingData(props[propName]),\n })\n }\n\n case PropControllerTypes.Margin:\n switch (descriptor.options.format) {\n case MarginPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useMarginStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case MarginPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...propsValue,\n [propName]: getMarginPropControllerDataResponsiveMarginData(props[propName]),\n })\n }\n\n case PropControllerTypes.BorderRadius:\n switch (descriptor.options.format) {\n case BorderRadiusPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBorderRadiusStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case BorderRadiusPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...propsValue,\n [propName]: getBorderRadiusPropControllerDataResponsiveBorderRadiusData(\n props[propName],\n ),\n })\n }\n\n case PropControllerTypes.Backgrounds:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBackgroundsPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Image:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useImagePropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Images:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useImagesPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Number:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useNumberPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveNumber:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveNumber, data)}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveIconRadioGroup:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveIconRadioGroup, data)}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveSelect:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveSelect, data)}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveOpacity:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveOpacity, data)}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveLength:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveLengthPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Shadows:\n switch (descriptor.options.format) {\n case Shadows.Format.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useShadowsStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case Shadows.Format.ResponsiveValue:\n default:\n return renderFn({\n ...propsValue,\n [propName]: getShadowsPropControllerDataResponsiveShadowsData(props[propName]),\n })\n }\n\n case PropControllerTypes.Border:\n switch (descriptor.options.format) {\n case BorderPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBorderStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case BorderPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...propsValue,\n [propName]: getBorderPropControllerDataResponsiveBorderData(props[propName]),\n })\n }\n\n case PropControllerTypes.ResponsiveColor:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveColorPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Link:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useLinkPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Checkbox:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useCheckboxPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Date:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useDatePropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Font:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useFontPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Video:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useVideoPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Table:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTablePropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextStyle:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextStylePropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.NavigationLinks:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useNavigationLinksPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextInput:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextInputPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextArea:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextAreaPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.GapX:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(GapX, data)}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.GapY:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useGapYPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ElementID:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useElementIDPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TableFormFields:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTableFormFieldsPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.SocialLinks:\n return renderFn({\n ...propsValue,\n [propName]: getSocialLinksPropControllerDataSocialLinksData(props[propName]),\n })\n\n case PropControllerTypes.Grid:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useGridPropControllerData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n },\n children,\n )({})\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/controls.tsx"],"sourcesContent":["import { useRef } from 'react'\n\nimport * as ReactPage from '../../state/react-page'\n\nimport {\n CheckboxDefinition,\n NumberDefinition,\n RichTextV2Definition,\n RichTextV2Control,\n ColorDefinition,\n ComboboxDefinition,\n IconRadioGroupDefinition,\n ImageDefinition,\n LinkDefinition,\n ListDefinition,\n RichTextV1Definition,\n RichTextV1Control,\n SelectDefinition,\n ShapeDefinition,\n SlotDefinition,\n SlotControl,\n StyleDefinition,\n StyleControl,\n StyleV2Definition,\n TextAreaDefinition,\n TextInputDefinition,\n unstable_TypographyDefinition,\n} from '../../controls'\n\nimport { isLegacyDescriptor } from '../../prop-controllers/descriptors'\n\nimport { useFormattedStyle } from './controls/style'\nimport { ControlValue } from './controls/control'\nimport { useSlot } from './controls/slot'\nimport { useRichText } from './controls/rich-text/rich-text'\nimport { useRichTextV2 } from './controls/rich-text-v2'\n\nimport { useStore } from './hooks/use-store'\nimport { useDocumentKey } from './hooks/use-document-key'\nimport { useSelector } from './hooks/use-selector'\n\nimport { RenderHook } from './components'\nimport { resolveLegacyDescriptorProp } from './legacy-controls'\n\ntype PropsValueProps = {\n element: ReactPage.ElementData\n children(props: Record<string, unknown>): JSX.Element\n}\n\nexport function PropsValue({ element, children }: PropsValueProps): JSX.Element {\n const store = useStore()\n const propControllerDescriptorsRef = useRef(\n ReactPage.getComponentPropControllerDescriptors(store.getState(), element.type) ?? {},\n )\n const props = element.props as Record<string, any>\n const documentKey = useDocumentKey()\n\n const propControllers = useSelector(state => {\n if (documentKey == null) return null\n\n return ReactPage.getPropControllers(state, documentKey, element.key)\n })\n\n return Object.entries(propControllerDescriptorsRef.current).reduceRight(\n (renderFn, [propName, descriptor]) =>\n propsValue => {\n if (isLegacyDescriptor(descriptor)) {\n return resolveLegacyDescriptorProp(\n descriptor,\n propName,\n props[propName],\n propsValue,\n renderFn,\n )\n }\n\n switch (descriptor.controlType) {\n case CheckboxDefinition.type:\n case NumberDefinition.type:\n case TextInputDefinition.type:\n case TextAreaDefinition.type:\n case SelectDefinition.type:\n case ColorDefinition.type:\n case IconRadioGroupDefinition.type:\n case ImageDefinition.type:\n case ComboboxDefinition.type:\n case ShapeDefinition.type:\n case ListDefinition.type:\n case LinkDefinition.type:\n case StyleV2Definition.type:\n case unstable_TypographyDefinition.type:\n return (\n <ControlValue\n definition={descriptor}\n data={props[propName]}\n control={propControllers?.[propName]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </ControlValue>\n )\n\n case StyleDefinition.type: {\n const control = (propControllers?.[propName] ?? null) as StyleControl | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useFormattedStyle}\n parameters={[props[propName], descriptor as StyleDefinition, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextV1Definition.type: {\n const control = (propControllers?.[propName] ?? null) as RichTextV1Control | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useRichText}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextV2Definition.type: {\n const control = (propControllers?.[propName] ?? null) as RichTextV2Control | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useRichTextV2}\n parameters={[props[propName], descriptor as RichTextV2Definition, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case SlotDefinition.type: {\n const control = (propControllers?.[propName] ?? null) as SlotControl | null\n\n return (\n <RenderHook\n key={descriptor.controlType}\n hook={useSlot}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n }\n\n console.error(`Unknown control type: ${descriptor.controlType}`)\n return renderFn({ ...propsValue, [propName]: props[propName] })\n },\n children,\n )({})\n}\n"],"mappings":"AA4Fc;AA5Fd,SAAS,cAAc;AAEvB,YAAY,eAAe;AAE3B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,0BAA0B;AAEnC,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;AAC7B,SAAS,eAAe;AACxB,SAAS,mBAAmB;AAC5B,SAAS,qBAAqB;AAE9B,SAAS,gBAAgB;AACzB,SAAS,sBAAsB;AAC/B,SAAS,mBAAmB;AAE5B,SAAS,kBAAkB;AAC3B,SAAS,mCAAmC;AAOrC,SAAS,WAAW,EAAE,SAAS,SAAS,GAAiC;AAC9E,QAAM,QAAQ,SAAS;AACvB,QAAM,+BAA+B;AAAA,IACnC,UAAU,sCAAsC,MAAM,SAAS,GAAG,QAAQ,IAAI,KAAK,CAAC;AAAA,EACtF;AACA,QAAM,QAAQ,QAAQ;AACtB,QAAM,cAAc,eAAe;AAEnC,QAAM,kBAAkB,YAAY,WAAS;AAC3C,QAAI,eAAe;AAAM,aAAO;AAEhC,WAAO,UAAU,mBAAmB,OAAO,aAAa,QAAQ,GAAG;AAAA,EACrE,CAAC;AAED,SAAO,OAAO,QAAQ,6BAA6B,OAAO,EAAE;AAAA,IAC1D,CAAC,UAAU,CAAC,UAAU,UAAU,MAC9B,gBAAc;AACZ,UAAI,mBAAmB,UAAU,GAAG;AAClC,eAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA,MAAM,QAAQ;AAAA,UACd;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAEA,cAAQ,WAAW,aAAa;AAAA,QAC9B,KAAK,mBAAmB;AAAA,QACxB,KAAK,iBAAiB;AAAA,QACtB,KAAK,oBAAoB;AAAA,QACzB,KAAK,mBAAmB;AAAA,QACxB,KAAK,iBAAiB;AAAA,QACtB,KAAK,gBAAgB;AAAA,QACrB,KAAK,yBAAyB;AAAA,QAC9B,KAAK,gBAAgB;AAAA,QACrB,KAAK,mBAAmB;AAAA,QACxB,KAAK,gBAAgB;AAAA,QACrB,KAAK,eAAe;AAAA,QACpB,KAAK,eAAe;AAAA,QACpB,KAAK,kBAAkB;AAAA,QACvB,KAAK,8BAA8B;AACjC,iBACE;AAAA,YAAC;AAAA;AAAA,cACC,YAAY;AAAA,cACZ,MAAM,MAAM,QAAQ;AAAA,cACpB,SAAS,kBAAkB,QAAQ;AAAA,cAElC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,UACzD;AAAA,QAGJ,KAAK,gBAAgB,MAAM;AACzB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,YAA+B,OAAO;AAAA,cAEnE,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,qBAAqB,MAAM;AAC9B,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,OAAO;AAAA,cAEpC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,qBAAqB,MAAM;AAC9B,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,YAAoC,OAAO;AAAA,cAExE,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,eAAe,MAAM;AACxB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,OAAO;AAAA,cAEpC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,MACF;AAEA,cAAQ,MAAM,yBAAyB,WAAW,WAAW,EAAE;AAC/D,aAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,IAChE;AAAA,IACF;AAAA,EACF,EAAE,CAAC,CAAC;AACN;","names":[]}
@@ -0,0 +1,356 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import {
3
+ useBoxShadow,
4
+ useBorder as useBorderData,
5
+ useLinkPropControllerData,
6
+ useCheckboxPropControllerData,
7
+ useDatePropControllerData,
8
+ useFontPropControllerData,
9
+ useVideoPropControllerData,
10
+ useTablePropControllerData
11
+ } from "../../components/hooks";
12
+ import {
13
+ useResponsiveBorder,
14
+ useResponsiveBorderRadius,
15
+ useResponsiveMargin,
16
+ useResponsivePadding,
17
+ useResponsiveShadow,
18
+ useResponsiveWidth
19
+ } from "../../components/utils/responsive-style";
20
+ import { RenderHook } from "./components";
21
+ import { useStyle } from "./use-style";
22
+ import {
23
+ Types as PropControllerTypes,
24
+ getShadowsPropControllerDataResponsiveShadowsData,
25
+ Shadows,
26
+ BorderPropControllerFormat,
27
+ getBorderPropControllerDataResponsiveBorderData,
28
+ getBorderRadiusPropControllerDataResponsiveBorderRadiusData,
29
+ BorderRadiusPropControllerFormat,
30
+ MarginPropControllerFormat,
31
+ getMarginPropControllerDataResponsiveMarginData,
32
+ getPaddingPropControllerDataResponsivePaddingData,
33
+ PaddingPropControllerFormat,
34
+ getWidthPropControllerDataResponsiveLengthData,
35
+ WidthPropControllerFormat,
36
+ GapX,
37
+ ResponsiveNumber,
38
+ ResponsiveIconRadioGroup,
39
+ ResponsiveSelect,
40
+ ResponsiveOpacity,
41
+ getSocialLinksPropControllerDataSocialLinksData
42
+ } from "@makeswift/prop-controllers";
43
+ import { useResponsiveLengthPropControllerData } from "../../components/hooks/useResponsiveLengthPropControllerData";
44
+ import { useNumberPropControllerData } from "../../components/hooks/useNumberPropControllerData";
45
+ import { useResponsiveColorPropControllerData } from "../../components/hooks/useResponsiveColorPropControllerData";
46
+ import { useTextStylePropControllerData } from "../../components/hooks/useTextStylePropControllerData";
47
+ import { useNavigationLinksPropControllerData } from "../../components/hooks/useNavigationLinksPropControllerData";
48
+ import { useTextAreaPropControllerData } from "../../components/hooks/useTextAreaPropControllerData";
49
+ import { usePropValue } from "../../components/hooks/usePropValue";
50
+ import { useGapYPropControllerData } from "../../components/hooks/useGapYPropControllerData";
51
+ import { useElementIDPropControllerData } from "../../components/hooks/useElementIDPropControllerData";
52
+ import { useTableFormFieldsPropControllerData } from "../../components/hooks/useTableFormFieldsPropControllerData";
53
+ import { useGridPropControllerData } from "../../components/hooks/useGridPropControllerData";
54
+ import { useImagePropControllerData } from "../../components/hooks/useImagePropControllerData";
55
+ import { useImagesPropControllerData } from "../../components/hooks/useImagesPropControllerData";
56
+ import { useBackgroundsPropControllerData } from "../../components/hooks/useBackgroundsPropControllerData";
57
+ import { useTextInputPropControllerData } from "../../components/hooks/useTextInputPropControllerData";
58
+ function useWidthStyle(data, descriptor) {
59
+ const value = getWidthPropControllerDataResponsiveLengthData(data);
60
+ return useStyle(useResponsiveWidth(value, descriptor.options.defaultValue));
61
+ }
62
+ function usePaddingStyle(data) {
63
+ const value = getPaddingPropControllerDataResponsivePaddingData(data);
64
+ return useStyle(useResponsivePadding(value));
65
+ }
66
+ function useMarginStyle(data) {
67
+ const value = getMarginPropControllerDataResponsiveMarginData(data);
68
+ return useStyle(useResponsiveMargin(value));
69
+ }
70
+ function useBorderRadiusStyle(data) {
71
+ const value = getBorderRadiusPropControllerDataResponsiveBorderRadiusData(data);
72
+ return useStyle(useResponsiveBorderRadius(value));
73
+ }
74
+ function useShadowsStyle(data) {
75
+ return useStyle(useResponsiveShadow(useBoxShadow(data) ?? void 0));
76
+ }
77
+ function useBorderStyle(data) {
78
+ const value = getBorderPropControllerDataResponsiveBorderData(data);
79
+ const borderData = useBorderData(value);
80
+ return useStyle(useResponsiveBorder(borderData ?? void 0));
81
+ }
82
+ function resolveLegacyDescriptorProp(descriptor, propName, propData, props, renderFn) {
83
+ switch (descriptor.type) {
84
+ case PropControllerTypes.Width:
85
+ switch (descriptor.options.format) {
86
+ case WidthPropControllerFormat.ClassName:
87
+ return /* @__PURE__ */ jsx(
88
+ RenderHook,
89
+ {
90
+ hook: useWidthStyle,
91
+ parameters: [propData, descriptor],
92
+ children: (value) => renderFn({ ...props, [propName]: value })
93
+ },
94
+ descriptor.type
95
+ );
96
+ case WidthPropControllerFormat.ResponsiveValue:
97
+ default:
98
+ return renderFn({
99
+ ...props,
100
+ [propName]: getWidthPropControllerDataResponsiveLengthData(propData)
101
+ });
102
+ }
103
+ case PropControllerTypes.Padding:
104
+ switch (descriptor.options.format) {
105
+ case PaddingPropControllerFormat.ClassName:
106
+ return /* @__PURE__ */ jsx(RenderHook, { hook: usePaddingStyle, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
107
+ case PaddingPropControllerFormat.ResponsiveValue:
108
+ default:
109
+ return renderFn({
110
+ ...props,
111
+ [propName]: getPaddingPropControllerDataResponsivePaddingData(propData)
112
+ });
113
+ }
114
+ case PropControllerTypes.Margin:
115
+ switch (descriptor.options.format) {
116
+ case MarginPropControllerFormat.ClassName:
117
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useMarginStyle, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
118
+ case MarginPropControllerFormat.ResponsiveValue:
119
+ default:
120
+ return renderFn({
121
+ ...props,
122
+ [propName]: getMarginPropControllerDataResponsiveMarginData(propData)
123
+ });
124
+ }
125
+ case PropControllerTypes.BorderRadius:
126
+ switch (descriptor.options.format) {
127
+ case BorderRadiusPropControllerFormat.ClassName:
128
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useBorderRadiusStyle, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
129
+ case BorderRadiusPropControllerFormat.ResponsiveValue:
130
+ default:
131
+ return renderFn({
132
+ ...props,
133
+ [propName]: getBorderRadiusPropControllerDataResponsiveBorderRadiusData(propData)
134
+ });
135
+ }
136
+ case PropControllerTypes.Backgrounds:
137
+ return /* @__PURE__ */ jsx(
138
+ RenderHook,
139
+ {
140
+ hook: useBackgroundsPropControllerData,
141
+ parameters: [propData],
142
+ children: (value) => renderFn({ ...props, [propName]: value })
143
+ },
144
+ descriptor.type
145
+ );
146
+ case PropControllerTypes.Image:
147
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useImagePropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
148
+ case PropControllerTypes.Images:
149
+ return /* @__PURE__ */ jsx(
150
+ RenderHook,
151
+ {
152
+ hook: useImagesPropControllerData,
153
+ parameters: [propData],
154
+ children: (value) => renderFn({ ...props, [propName]: value })
155
+ },
156
+ descriptor.type
157
+ );
158
+ case PropControllerTypes.Number:
159
+ return /* @__PURE__ */ jsx(
160
+ RenderHook,
161
+ {
162
+ hook: useNumberPropControllerData,
163
+ parameters: [propData],
164
+ children: (value) => renderFn({ ...props, [propName]: value })
165
+ },
166
+ descriptor.type
167
+ );
168
+ case PropControllerTypes.ResponsiveNumber:
169
+ return /* @__PURE__ */ jsx(
170
+ RenderHook,
171
+ {
172
+ hook: (data) => usePropValue(ResponsiveNumber, data),
173
+ parameters: [propData],
174
+ children: (value) => renderFn({ ...props, [propName]: value })
175
+ },
176
+ descriptor.type
177
+ );
178
+ case PropControllerTypes.ResponsiveIconRadioGroup:
179
+ return /* @__PURE__ */ jsx(
180
+ RenderHook,
181
+ {
182
+ hook: (data) => usePropValue(ResponsiveIconRadioGroup, data),
183
+ parameters: [propData],
184
+ children: (value) => renderFn({ ...props, [propName]: value })
185
+ },
186
+ descriptor.type
187
+ );
188
+ case PropControllerTypes.ResponsiveSelect:
189
+ return /* @__PURE__ */ jsx(
190
+ RenderHook,
191
+ {
192
+ hook: (data) => usePropValue(ResponsiveSelect, data),
193
+ parameters: [propData],
194
+ children: (value) => renderFn({ ...props, [propName]: value })
195
+ },
196
+ descriptor.type
197
+ );
198
+ case PropControllerTypes.ResponsiveOpacity:
199
+ return /* @__PURE__ */ jsx(
200
+ RenderHook,
201
+ {
202
+ hook: (data) => usePropValue(ResponsiveOpacity, data),
203
+ parameters: [propData],
204
+ children: (value) => renderFn({ ...props, [propName]: value })
205
+ },
206
+ descriptor.type
207
+ );
208
+ case PropControllerTypes.ResponsiveLength:
209
+ return /* @__PURE__ */ jsx(
210
+ RenderHook,
211
+ {
212
+ hook: useResponsiveLengthPropControllerData,
213
+ parameters: [propData],
214
+ children: (value) => renderFn({ ...props, [propName]: value })
215
+ },
216
+ descriptor.type
217
+ );
218
+ case PropControllerTypes.Shadows:
219
+ switch (descriptor.options.format) {
220
+ case Shadows.Format.ClassName:
221
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useShadowsStyle, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
222
+ case Shadows.Format.ResponsiveValue:
223
+ default:
224
+ return renderFn({
225
+ ...props,
226
+ [propName]: getShadowsPropControllerDataResponsiveShadowsData(propData)
227
+ });
228
+ }
229
+ case PropControllerTypes.Border:
230
+ switch (descriptor.options.format) {
231
+ case BorderPropControllerFormat.ClassName:
232
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useBorderStyle, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
233
+ case BorderPropControllerFormat.ResponsiveValue:
234
+ default:
235
+ return renderFn({
236
+ ...props,
237
+ [propName]: getBorderPropControllerDataResponsiveBorderData(propData)
238
+ });
239
+ }
240
+ case PropControllerTypes.ResponsiveColor:
241
+ return /* @__PURE__ */ jsx(
242
+ RenderHook,
243
+ {
244
+ hook: useResponsiveColorPropControllerData,
245
+ parameters: [propData],
246
+ children: (value) => renderFn({ ...props, [propName]: value })
247
+ },
248
+ descriptor.type
249
+ );
250
+ case PropControllerTypes.Link:
251
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useLinkPropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
252
+ case PropControllerTypes.Checkbox:
253
+ return /* @__PURE__ */ jsx(
254
+ RenderHook,
255
+ {
256
+ hook: useCheckboxPropControllerData,
257
+ parameters: [propData],
258
+ children: (value) => renderFn({ ...props, [propName]: value })
259
+ },
260
+ descriptor.type
261
+ );
262
+ case PropControllerTypes.Date:
263
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useDatePropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
264
+ case PropControllerTypes.Font:
265
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useFontPropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
266
+ case PropControllerTypes.Video:
267
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useVideoPropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
268
+ case PropControllerTypes.Table:
269
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useTablePropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
270
+ case PropControllerTypes.TextStyle:
271
+ return /* @__PURE__ */ jsx(
272
+ RenderHook,
273
+ {
274
+ hook: useTextStylePropControllerData,
275
+ parameters: [propData],
276
+ children: (value) => renderFn({ ...props, [propName]: value })
277
+ },
278
+ descriptor.type
279
+ );
280
+ case PropControllerTypes.NavigationLinks:
281
+ return /* @__PURE__ */ jsx(
282
+ RenderHook,
283
+ {
284
+ hook: useNavigationLinksPropControllerData,
285
+ parameters: [propData],
286
+ children: (value) => renderFn({ ...props, [propName]: value })
287
+ },
288
+ descriptor.type
289
+ );
290
+ case PropControllerTypes.TextInput:
291
+ return /* @__PURE__ */ jsx(
292
+ RenderHook,
293
+ {
294
+ hook: useTextInputPropControllerData,
295
+ parameters: [propData],
296
+ children: (value) => renderFn({ ...props, [propName]: value })
297
+ },
298
+ descriptor.type
299
+ );
300
+ case PropControllerTypes.TextArea:
301
+ return /* @__PURE__ */ jsx(
302
+ RenderHook,
303
+ {
304
+ hook: useTextAreaPropControllerData,
305
+ parameters: [propData],
306
+ children: (value) => renderFn({ ...props, [propName]: value })
307
+ },
308
+ descriptor.type
309
+ );
310
+ case PropControllerTypes.GapX:
311
+ return /* @__PURE__ */ jsx(
312
+ RenderHook,
313
+ {
314
+ hook: (data) => usePropValue(GapX, data),
315
+ parameters: [propData],
316
+ children: (value) => renderFn({ ...props, [propName]: value })
317
+ },
318
+ descriptor.type
319
+ );
320
+ case PropControllerTypes.GapY:
321
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useGapYPropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
322
+ case PropControllerTypes.ElementID:
323
+ return /* @__PURE__ */ jsx(
324
+ RenderHook,
325
+ {
326
+ hook: useElementIDPropControllerData,
327
+ parameters: [propData],
328
+ children: (value) => renderFn({ ...props, [propName]: value })
329
+ },
330
+ descriptor.type
331
+ );
332
+ case PropControllerTypes.TableFormFields:
333
+ return /* @__PURE__ */ jsx(
334
+ RenderHook,
335
+ {
336
+ hook: useTableFormFieldsPropControllerData,
337
+ parameters: [propData],
338
+ children: (value) => renderFn({ ...props, [propName]: value })
339
+ },
340
+ descriptor.type
341
+ );
342
+ case PropControllerTypes.SocialLinks:
343
+ return renderFn({
344
+ ...props,
345
+ [propName]: getSocialLinksPropControllerDataSocialLinksData(propData)
346
+ });
347
+ case PropControllerTypes.Grid:
348
+ return /* @__PURE__ */ jsx(RenderHook, { hook: useGridPropControllerData, parameters: [propData], children: (value) => renderFn({ ...props, [propName]: value }) }, descriptor.type);
349
+ default:
350
+ return renderFn({ ...props, [propName]: propData });
351
+ }
352
+ }
353
+ export {
354
+ resolveLegacyDescriptorProp
355
+ };
356
+ //# sourceMappingURL=legacy-controls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/runtimes/react/legacy-controls.tsx"],"sourcesContent":["import {\n useBoxShadow,\n useBorder as useBorderData,\n useLinkPropControllerData,\n useCheckboxPropControllerData,\n useDatePropControllerData,\n useFontPropControllerData,\n useVideoPropControllerData,\n useTablePropControllerData,\n} from '../../components/hooks'\nimport type { ColorValue } from '../../components/utils/types'\nimport {\n useResponsiveBorder,\n useResponsiveBorderRadius,\n useResponsiveMargin,\n useResponsivePadding,\n useResponsiveShadow,\n useResponsiveWidth,\n} from '../../components/utils/responsive-style'\n\nimport { RenderHook } from './components'\nimport { useStyle } from './use-style'\n\nimport {\n Types as PropControllerTypes,\n getShadowsPropControllerDataResponsiveShadowsData,\n ShadowsPropControllerData,\n Shadows,\n ResponsiveValue,\n BorderPropControllerFormat,\n ResponsiveBorderData,\n BorderPropControllerData,\n getBorderPropControllerDataResponsiveBorderData,\n getBorderRadiusPropControllerDataResponsiveBorderRadiusData,\n BorderRadiusPropControllerData,\n BorderRadiusPropControllerFormat,\n MarginPropControllerFormat,\n MarginPropControllerData,\n getMarginPropControllerDataResponsiveMarginData,\n PaddingPropControllerData,\n getPaddingPropControllerDataResponsivePaddingData,\n PaddingPropControllerFormat,\n WidthPropControllerData,\n getWidthPropControllerDataResponsiveLengthData,\n WidthPropControllerFormat,\n WidthDescriptor,\n GapX,\n ResponsiveNumber,\n ResponsiveIconRadioGroup,\n ResponsiveSelect,\n ResponsiveOpacity,\n getSocialLinksPropControllerDataSocialLinksData,\n} from '@makeswift/prop-controllers'\n\nimport { LegacyDescriptor } from '../../prop-controllers/descriptors'\nimport { useResponsiveLengthPropControllerData } from '../../components/hooks/useResponsiveLengthPropControllerData'\nimport { useNumberPropControllerData } from '../../components/hooks/useNumberPropControllerData'\nimport { useResponsiveColorPropControllerData } from '../../components/hooks/useResponsiveColorPropControllerData'\nimport { useTextStylePropControllerData } from '../../components/hooks/useTextStylePropControllerData'\nimport { useNavigationLinksPropControllerData } from '../../components/hooks/useNavigationLinksPropControllerData'\nimport { useTextAreaPropControllerData } from '../../components/hooks/useTextAreaPropControllerData'\nimport { usePropValue } from '../../components/hooks/usePropValue'\nimport { useGapYPropControllerData } from '../../components/hooks/useGapYPropControllerData'\nimport { useElementIDPropControllerData } from '../../components/hooks/useElementIDPropControllerData'\nimport { useTableFormFieldsPropControllerData } from '../../components/hooks/useTableFormFieldsPropControllerData'\nimport { useGridPropControllerData } from '../../components/hooks/useGridPropControllerData'\nimport { useImagePropControllerData } from '../../components/hooks/useImagePropControllerData'\nimport { useImagesPropControllerData } from '../../components/hooks/useImagesPropControllerData'\nimport { useBackgroundsPropControllerData } from '../../components/hooks/useBackgroundsPropControllerData'\nimport { useTextInputPropControllerData } from '../../components/hooks/useTextInputPropControllerData'\n\nexport type ResponsiveColor = ResponsiveValue<ColorValue>\n\nfunction useWidthStyle(\n data: WidthPropControllerData | undefined,\n descriptor: WidthDescriptor,\n): string {\n const value = getWidthPropControllerDataResponsiveLengthData(data)\n\n return useStyle(useResponsiveWidth(value, descriptor.options.defaultValue))\n}\n\nfunction usePaddingStyle(data: PaddingPropControllerData | undefined): string {\n const value = getPaddingPropControllerDataResponsivePaddingData(data)\n\n return useStyle(useResponsivePadding(value))\n}\n\nfunction useMarginStyle(data: MarginPropControllerData | undefined): string {\n const value = getMarginPropControllerDataResponsiveMarginData(data)\n\n return useStyle(useResponsiveMargin(value))\n}\n\nfunction useBorderRadiusStyle(data: BorderRadiusPropControllerData | undefined): string {\n const value = getBorderRadiusPropControllerDataResponsiveBorderRadiusData(data)\n\n return useStyle(useResponsiveBorderRadius(value))\n}\n\nfunction useShadowsStyle(data: ShadowsPropControllerData | undefined): string {\n return useStyle(useResponsiveShadow(useBoxShadow(data) ?? undefined))\n}\n\nfunction useBorderStyle(\n data: BorderPropControllerData | undefined,\n): string | ResponsiveBorderData | undefined {\n const value = getBorderPropControllerDataResponsiveBorderData(data)\n const borderData = useBorderData(value)\n\n return useStyle(useResponsiveBorder(borderData ?? undefined))\n}\n\nexport function resolveLegacyDescriptorProp(\n descriptor: LegacyDescriptor,\n propName: string,\n propData: any,\n props: Record<string, any>,\n renderFn: (props: Record<string, unknown>) => JSX.Element,\n) {\n switch (descriptor.type) {\n case PropControllerTypes.Width:\n switch (descriptor.options.format) {\n case WidthPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useWidthStyle}\n parameters={[propData, descriptor]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case WidthPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getWidthPropControllerDataResponsiveLengthData(propData),\n })\n }\n\n case PropControllerTypes.Padding:\n switch (descriptor.options.format) {\n case PaddingPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={usePaddingStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PaddingPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getPaddingPropControllerDataResponsivePaddingData(propData),\n })\n }\n\n case PropControllerTypes.Margin:\n switch (descriptor.options.format) {\n case MarginPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useMarginStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case MarginPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getMarginPropControllerDataResponsiveMarginData(propData),\n })\n }\n\n case PropControllerTypes.BorderRadius:\n switch (descriptor.options.format) {\n case BorderRadiusPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useBorderRadiusStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case BorderRadiusPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getBorderRadiusPropControllerDataResponsiveBorderRadiusData(propData),\n })\n }\n\n case PropControllerTypes.Backgrounds:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBackgroundsPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Image:\n return (\n <RenderHook key={descriptor.type} hook={useImagePropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Images:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useImagesPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Number:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useNumberPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveNumber:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveNumber, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveIconRadioGroup:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveIconRadioGroup, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveSelect:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveSelect, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveOpacity:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveOpacity, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveLength:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveLengthPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Shadows:\n switch (descriptor.options.format) {\n case Shadows.Format.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useShadowsStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case Shadows.Format.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getShadowsPropControllerDataResponsiveShadowsData(propData),\n })\n }\n\n case PropControllerTypes.Border:\n switch (descriptor.options.format) {\n case BorderPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useBorderStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case BorderPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getBorderPropControllerDataResponsiveBorderData(propData),\n })\n }\n\n case PropControllerTypes.ResponsiveColor:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveColorPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Link:\n return (\n <RenderHook key={descriptor.type} hook={useLinkPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Checkbox:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useCheckboxPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Date:\n return (\n <RenderHook key={descriptor.type} hook={useDatePropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Font:\n return (\n <RenderHook key={descriptor.type} hook={useFontPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Video:\n return (\n <RenderHook key={descriptor.type} hook={useVideoPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Table:\n return (\n <RenderHook key={descriptor.type} hook={useTablePropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextStyle:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextStylePropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.NavigationLinks:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useNavigationLinksPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextInput:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextInputPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextArea:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextAreaPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.GapX:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(GapX, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.GapY:\n return (\n <RenderHook key={descriptor.type} hook={useGapYPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ElementID:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useElementIDPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TableFormFields:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTableFormFieldsPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.SocialLinks:\n return renderFn({\n ...props,\n [propName]: getSocialLinksPropControllerDataSocialLinksData(propData),\n })\n\n case PropControllerTypes.Grid:\n return (\n <RenderHook key={descriptor.type} hook={useGridPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...props, [propName]: propData })\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,21 +1,4 @@
1
- import shallowEqual from "./shallowEqual";
2
- const { hasOwnProperty } = Object.prototype;
3
- const deepEqual = (a, b) => {
4
- if (shallowEqual(a, b))
5
- return true;
6
- if (typeof a !== "object" || a === null || typeof b !== "object" || b === null)
7
- return false;
8
- const keysA = Object.keys(a);
9
- const keysB = Object.keys(b);
10
- if (keysA.length !== keysB.length)
11
- return false;
12
- for (let i = 0; i < keysA.length; i += 1) {
13
- if (!hasOwnProperty.call(b, keysA[i]) || // @ts-expect-error: {}[string] is OK.
14
- !deepEqual(a[keysA[i]], b[keysA[i]]))
15
- return false;
16
- }
17
- return true;
18
- };
1
+ import { deepEqual } from "@makeswift/controls";
19
2
  var deepEqual_default = deepEqual;
20
3
  export {
21
4
  deepEqual_default as default
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/deepEqual.ts"],"sourcesContent":["import shallowEqual from './shallowEqual'\n\nconst { hasOwnProperty } = Object.prototype\n\nconst deepEqual = (a: unknown, b: unknown): boolean => {\n if (shallowEqual(a, b)) return true\n\n if (typeof a !== 'object' || a === null || typeof b !== 'object' || b === null) return false\n\n const keysA = Object.keys(a)\n const keysB = Object.keys(b)\n\n if (keysA.length !== keysB.length) return false\n\n for (let i = 0; i < keysA.length; i += 1) {\n if (\n !hasOwnProperty.call(b, keysA[i]) ||\n // @ts-expect-error: {}[string] is OK.\n !deepEqual(a[keysA[i]], b[keysA[i]])\n )\n return false\n }\n\n return true\n}\n\nexport default deepEqual\n"],"mappings":"AAAA,OAAO,kBAAkB;AAEzB,MAAM,EAAE,eAAe,IAAI,OAAO;AAElC,MAAM,YAAY,CAAC,GAAY,MAAwB;AACrD,MAAI,aAAa,GAAG,CAAC;AAAG,WAAO;AAE/B,MAAI,OAAO,MAAM,YAAY,MAAM,QAAQ,OAAO,MAAM,YAAY,MAAM;AAAM,WAAO;AAEvF,QAAM,QAAQ,OAAO,KAAK,CAAC;AAC3B,QAAM,QAAQ,OAAO,KAAK,CAAC;AAE3B,MAAI,MAAM,WAAW,MAAM;AAAQ,WAAO;AAE1C,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK,GAAG;AACxC,QACE,CAAC,eAAe,KAAK,GAAG,MAAM,CAAC,CAAC;AAAA,IAEhC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;AAEnC,aAAO;AAAA,EACX;AAEA,SAAO;AACT;AAEA,IAAO,oBAAQ;","names":[]}
1
+ {"version":3,"sources":["../../../src/utils/deepEqual.ts"],"sourcesContent":["import { deepEqual } from '@makeswift/controls'\n\nexport default deepEqual\n"],"mappings":"AAAA,SAAS,iBAAiB;AAE1B,IAAO,oBAAQ;","names":[]}
@@ -1,9 +1,6 @@
1
- function is(x, y) {
2
- if (x === y)
3
- return x !== 0 || y !== 0 || 1 / x === 1 / y;
4
- return x !== x && y !== y;
5
- }
1
+ import { is } from "@makeswift/controls";
2
+ var is_default = is;
6
3
  export {
7
- is as default
4
+ is_default as default
8
5
  };
9
6
  //# sourceMappingURL=is.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/is.ts"],"sourcesContent":["export default function is(x: unknown, y: unknown): boolean {\n if (x === y) return x !== 0 || y !== 0 || 1 / x === 1 / y\n\n return x !== x && y !== y\n}\n"],"mappings":"AAAe,SAAR,GAAoB,GAAY,GAAqB;AAC1D,MAAI,MAAM;AAAG,WAAO,MAAM,KAAK,MAAM,KAAK,IAAI,MAAM,IAAI;AAExD,SAAO,MAAM,KAAK,MAAM;AAC1B;","names":[]}
1
+ {"version":3,"sources":["../../../src/utils/is.ts"],"sourcesContent":["import { is } from '@makeswift/controls'\n\nexport default is\n"],"mappings":"AAAA,SAAS,UAAU;AAEnB,IAAO,aAAQ;","names":[]}
@@ -0,0 +1,23 @@
1
+ function partition(array, predicate) {
2
+ return array.reduce(
3
+ (result, value) => {
4
+ result[predicate(value) ? 0 : 1].push(value);
5
+ return result;
6
+ },
7
+ [[], []]
8
+ );
9
+ }
10
+ function partitionRecord(obj, predicate) {
11
+ return Object.entries(obj).reduce(
12
+ (result, [key, value]) => {
13
+ result[predicate(value) ? 0 : 1][key] = value;
14
+ return result;
15
+ },
16
+ [{}, {}]
17
+ );
18
+ }
19
+ export {
20
+ partition,
21
+ partitionRecord
22
+ };
23
+ //# sourceMappingURL=partition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/partition.ts"],"sourcesContent":["type Predicate<T, U extends T> = (value: T) => value is U\n\n/**\n * Splits the array into two based on the predicate's result. Returns a tuple of arrays with\n * matching and non-matching elements, maintaining the original order within each group.\n *\n * If the predicate includes a type assertion, the resulting arrays will be typed accordingly.\n */\nexport function partition<T, U extends T>(\n array: readonly T[],\n predicate: Predicate<T, U>,\n): [U[], Exclude<T, U>[]]\n\nexport function partition<T>(array: readonly T[], predicate: (value: T) => boolean): [T[], T[]]\n\nexport function partition(\n array: readonly unknown[],\n predicate: (value: unknown) => boolean,\n): [unknown[], unknown[]] {\n return array.reduce(\n (result: [unknown[], unknown[]], value) => {\n result[predicate(value) ? 0 : 1].push(value)\n return result\n },\n [[], []],\n )\n}\n\ntype R = Record<string, unknown>\n\n/**\n * Splits the record into two based on the predicate's result. Returns a tuple of records with\n * matching and non-matching elements.\n *\n * If the predicate includes a type assertion, the resulting records will be typed accordingly.\n */\nexport function partitionRecord<T, U extends T>(\n obj: Record<string, T>,\n predicate: Predicate<T, U>,\n): [Record<string, U>, Record<string, Exclude<T, U>>]\n\nexport function partitionRecord<T>(\n obj: Record<string, T>,\n predicate: (value: T) => boolean,\n): [Record<string, T>, Record<string, T>]\n\nexport function partitionRecord(obj: R, predicate: (value: unknown) => boolean): [R, R] {\n return Object.entries(obj).reduce(\n (result, [key, value]) => {\n result[predicate(value) ? 0 : 1][key] = value\n return result\n },\n [{}, {}] as [R, R],\n )\n}\n"],"mappings":"AAeO,SAAS,UACd,OACA,WACwB;AACxB,SAAO,MAAM;AAAA,IACX,CAAC,QAAgC,UAAU;AACzC,aAAO,UAAU,KAAK,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK;AAC3C,aAAO;AAAA,IACT;AAAA,IACA,CAAC,CAAC,GAAG,CAAC,CAAC;AAAA,EACT;AACF;AAoBO,SAAS,gBAAgB,KAAQ,WAAgD;AACtF,SAAO,OAAO,QAAQ,GAAG,EAAE;AAAA,IACzB,CAAC,QAAQ,CAAC,KAAK,KAAK,MAAM;AACxB,aAAO,UAAU,KAAK,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI;AACxC,aAAO;AAAA,IACT;AAAA,IACA,CAAC,CAAC,GAAG,CAAC,CAAC;AAAA,EACT;AACF;","names":[]}
@@ -1,20 +1,4 @@
1
- import is from "./is";
2
- const { hasOwnProperty } = Object.prototype;
3
- const shallowEqual = (a, b) => {
4
- if (is(a, b))
5
- return true;
6
- if (typeof a !== "object" || a === null || typeof b !== "object" || b === null)
7
- return false;
8
- const keysA = Object.keys(a);
9
- const keysB = Object.keys(b);
10
- if (keysA.length !== keysB.length)
11
- return false;
12
- for (let i = 0; i < keysA.length; i += 1) {
13
- if (!hasOwnProperty.call(b, keysA[i]) || !is(a[keysA[i]], b[keysA[i]]))
14
- return false;
15
- }
16
- return true;
17
- };
1
+ import { shallowEqual } from "@makeswift/controls";
18
2
  var shallowEqual_default = shallowEqual;
19
3
  export {
20
4
  shallowEqual_default as default
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/shallowEqual.ts"],"sourcesContent":["import is from './is'\n\nconst { hasOwnProperty } = Object.prototype\n\nconst shallowEqual = (a: unknown, b: unknown): boolean => {\n if (is(a, b)) return true\n\n if (typeof a !== 'object' || a === null || typeof b !== 'object' || b === null) return false\n\n const keysA = Object.keys(a)\n const keysB = Object.keys(b)\n\n if (keysA.length !== keysB.length) return false\n\n for (let i = 0; i < keysA.length; i += 1) {\n // @ts-expect-error: {}[string] is OK.\n if (!hasOwnProperty.call(b, keysA[i]) || !is(a[keysA[i]], b[keysA[i]])) return false\n }\n\n return true\n}\n\nexport default shallowEqual\n"],"mappings":"AAAA,OAAO,QAAQ;AAEf,MAAM,EAAE,eAAe,IAAI,OAAO;AAElC,MAAM,eAAe,CAAC,GAAY,MAAwB;AACxD,MAAI,GAAG,GAAG,CAAC;AAAG,WAAO;AAErB,MAAI,OAAO,MAAM,YAAY,MAAM,QAAQ,OAAO,MAAM,YAAY,MAAM;AAAM,WAAO;AAEvF,QAAM,QAAQ,OAAO,KAAK,CAAC;AAC3B,QAAM,QAAQ,OAAO,KAAK,CAAC;AAE3B,MAAI,MAAM,WAAW,MAAM;AAAQ,WAAO;AAE1C,WAAS,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK,GAAG;AAExC,QAAI,CAAC,eAAe,KAAK,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;AAAG,aAAO;AAAA,EACjF;AAEA,SAAO;AACT;AAEA,IAAO,uBAAQ;","names":[]}
1
+ {"version":3,"sources":["../../../src/utils/shallowEqual.ts"],"sourcesContent":["import { shallowEqual } from '@makeswift/controls'\n\nexport default shallowEqual\n"],"mappings":"AAAA,SAAS,oBAAoB;AAE7B,IAAO,uBAAQ;","names":[]}
@@ -1,11 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import * as ReactPage from '../../state/react-page';
3
- import type { ColorValue } from '../../components/utils/types';
4
- import { ShadowsPropControllerData, ResponsiveValue, ResponsiveBorderData, BorderPropControllerData, BorderRadiusPropControllerData } from '@makeswift/prop-controllers';
5
- export type ResponsiveColor = ResponsiveValue<ColorValue>;
6
- export declare function useBorderRadiusStyle(data: BorderRadiusPropControllerData | undefined): string;
7
- export declare function useShadowsStyle(data: ShadowsPropControllerData | undefined): string;
8
- export declare function useBorderStyle(data: BorderPropControllerData | undefined): string | ResponsiveBorderData | undefined;
9
3
  type PropsValueProps = {
10
4
  element: ReactPage.ElementData;
11
5
  children(props: Record<string, unknown>): JSX.Element;