@aokiapp/rjsf-mantine-theme
Version:
Mantine theme, fields and widgets for react-jsonschema-form
1 lines • 4.01 kB
Source Map (JSON)
{"version":3,"file":"IconButton.mjs","sources":["../../../src/templates/ButtonTemplates/IconButton.tsx"],"sourcesContent":["import { ActionIcon, ButtonProps } from '@mantine/core';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\nimport { IconChevronDown, IconChevronUp, IconCopy, IconTrash } from '@tabler/icons-react';\n\nfunction IconButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n // eliminate uiSchema and registry from props, which are not accepted by ActionIcon\n const { iconType, icon, uiSchema: _uiSchema, registry: _registry, color, title, ...rest } = props;\n return (\n <ActionIcon\n size={iconType as ButtonProps['size']}\n variant='light'\n color={color as ButtonProps['color']}\n aria-label={title}\n title={title}\n role='button'\n {...rest}\n >\n {icon}\n </ActionIcon>\n );\n}\n\nexport default IconButton;\n\nexport function CopyButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.CopyButton)} {...props} icon={<IconCopy />} />;\n}\n\nexport function MoveDownButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton title={translateString(TranslatableString.MoveDownButton)} {...props} icon={<IconChevronDown />} />\n );\n}\n\nexport function MoveUpButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.MoveUpButton)} {...props} icon={<IconChevronUp />} />;\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton title={translateString(TranslatableString.RemoveButton)} color='red' {...props} icon={<IconTrash />} />\n );\n}\n"],"names":[],"mappings":";;;;;AAKA,SAAS,UAAU,CAAC,KAAK,EAAE;AAC3B,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;AACpG,EAAE,uBAAuB,GAAG;AAC5B,IAAI,UAAU;AACd,IAAI;AACJ,MAAM,IAAI,EAAE,QAAQ;AACpB,MAAM,OAAO,EAAE,OAAO;AACtB,MAAM,KAAK;AACX,MAAM,YAAY,EAAE,KAAK;AACzB,MAAM,KAAK;AACX,MAAM,IAAI,EAAE,QAAQ;AACpB,MAAM,GAAG,IAAI;AACb,MAAM,QAAQ,EAAE,IAAI;AACpB,KAAK;AACL,GAAG,CAAC;AACJ,CAAC;AAEM,SAAS,UAAU,CAAC,KAAK,EAAE;AAClC,EAAE,MAAM;AACR,IAAI,QAAQ,EAAE,EAAE,eAAe,EAAE;AACjC,GAAG,GAAG,KAAK,CAAC;AACZ,EAAE,uBAAuB,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,kBAAkB,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AACvJ,CAAC;AACM,SAAS,cAAc,CAAC,KAAK,EAAE;AACtC,EAAE,MAAM;AACR,IAAI,QAAQ,EAAE,EAAE,eAAe,EAAE;AACjC,GAAG,GAAG,KAAK,CAAC;AACZ,EAAE,uBAAuB,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,kBAAkB,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AAClK,CAAC;AACM,SAAS,YAAY,CAAC,KAAK,EAAE;AACpC,EAAE,MAAM;AACR,IAAI,QAAQ,EAAE,EAAE,eAAe,EAAE;AACjC,GAAG,GAAG,KAAK,CAAC;AACZ,EAAE,uBAAuB,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,kBAAkB,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AAC9J,CAAC;AACM,SAAS,YAAY,CAAC,KAAK,EAAE;AACpC,EAAE,MAAM;AACR,IAAI,QAAQ,EAAE,EAAE,eAAe,EAAE;AACjC,GAAG,GAAG,KAAK,CAAC;AACZ,EAAE,uBAAuB,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,IAAI,kBAAkB,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AACxK;;;;"}