@inventreedb/ui 0.5.1 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/components/ActionButton.js.map +1 -1
- package/dist/components/AddItemButton.js.map +1 -1
- package/dist/components/ButtonMenu.js.map +1 -1
- package/dist/components/ProgressBar.js.map +1 -1
- package/dist/components/RowActions.js.map +1 -1
- package/dist/components/SearchInput.js.map +1 -1
- package/dist/components/YesNoButton.js.map +1 -1
- package/dist/enums/ApiEndpoints.js.map +1 -1
- package/dist/enums/ModelInformation.js.map +1 -1
- package/dist/enums/ModelType.js.map +1 -1
- package/dist/enums/Roles.js.map +1 -1
- package/dist/functions/Api.js.map +1 -1
- package/dist/functions/Conversion.js.map +1 -1
- package/dist/functions/Formatting.js.map +1 -1
- package/dist/functions/Navigation.js.map +1 -1
- package/dist/functions/Plugins.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/node_modules/@mantine/hooks/esm/use-debounced-value/use-debounced-value.js +2 -1
- package/dist/node_modules/@mantine/hooks/esm/use-debounced-value/use-debounced-value.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/createReactComponent.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/defaultAttributes.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconArrowRight.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconCircleX.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconCopy.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconDots.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconEdit.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconPlus.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.js.map +1 -1
- package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconTrash.js.map +1 -1
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.js +2 -2
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -1
- package/dist/node_modules/react/cjs/react-jsx-runtime.production.js.map +1 -1
- package/dist/node_modules/react/jsx-runtime.js.map +1 -1
- package/dist/types/Auth.d.ts +11 -0
- package/dist/types/Core.d.ts +2 -2
- package/dist/types/Forms.d.ts +7 -0
- package/dist/types/Plugins.d.ts +13 -1
- package/dist/types/Plugins.js +2 -2
- package/dist/types/Plugins.js.map +1 -1
- package/lib/index.ts +11 -1
- package/lib/types/Auth.tsx +11 -0
- package/lib/types/Core.tsx +2 -2
- package/lib/types/Forms.tsx +8 -0
- package/lib/types/Plugins.tsx +18 -1
- package/package.json +36 -36
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
This file contains historical changelog information for the InvenTree UI components library.
|
|
4
4
|
|
|
5
|
+
### 0.7.0 - October 2025
|
|
6
|
+
|
|
7
|
+
Exposes stock adjustment forms to plugins, allowing plugins to adjust stock adjustments using the common InvenTree UI form components.
|
|
8
|
+
|
|
9
|
+
### 0.6.0 - September 2025
|
|
10
|
+
|
|
11
|
+
Updated underlying Mantine library versions.
|
|
12
|
+
|
|
5
13
|
### 0.5.0 - August 2025
|
|
6
14
|
|
|
7
15
|
This release updates the base `react` major version from `18.3.1` to `19.1.1`. This change may introduce breaking changes for plugins that rely on the InvenTree UI components library (plugin developers should test their plugins against this new version).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionButton.js","sources":["../../lib/components/ActionButton.tsx"],"sourcesContent":["import {\n ActionIcon,\n type FloatingPosition,\n Group,\n Tooltip\n} from '@mantine/core';\nimport type { ReactNode } from 'react';\n\nimport { identifierString } from '../functions/Conversion';\n\nexport type ActionButtonProps = {\n icon?: ReactNode;\n text?: string;\n color?: string;\n tooltip?: string;\n variant?: string;\n size?: number | string;\n radius?: number | string;\n disabled?: boolean;\n onClick: (event?: any) => void;\n hidden?: boolean;\n tooltipAlignment?: FloatingPosition;\n};\n\n/**\n * Construct a simple action button with consistent styling\n */\nexport function ActionButton(props: ActionButtonProps) {\n const hidden = props.hidden ?? false;\n\n return (\n !hidden && (\n <Tooltip\n key={`tooltip-${props.tooltip ?? props.text}`}\n disabled={!props.tooltip && !props.text}\n label={props.tooltip ?? props.text}\n position={props.tooltipAlignment ?? 'left'}\n >\n <ActionIcon\n key={`action-icon-${props.tooltip ?? props.text}`}\n disabled={props.disabled}\n p={17}\n radius={props.radius ?? 'xs'}\n color={props.color}\n size={props.size}\n aria-label={`action-button-${identifierString(\n props.tooltip ?? props.text ?? ''\n )}`}\n onClick={(event: any) => {\n props.onClick(event);\n }}\n variant={props.variant ?? 'transparent'}\n >\n <Group gap='xs' wrap='nowrap'>\n {props.icon}\n </Group>\n </ActionIcon>\n </Tooltip>\n )\n );\n}\n"],"names":["ActionButton","props","hidden","jsx","tooltip","text","tooltipAlignment","disabled","radius","color","size","identifierString","event","onClick","variant","icon"],"mappings":";;AAAA,MAAA,aAAA,OAAA,aAAA,EAAA;;;AA2BO,SAASA,aAAaC,OAA0B;
|
|
1
|
+
{"version":3,"file":"ActionButton.js","sources":["../../lib/components/ActionButton.tsx"],"sourcesContent":["import {\n ActionIcon,\n type FloatingPosition,\n Group,\n Tooltip\n} from '@mantine/core';\nimport type { ReactNode } from 'react';\n\nimport { identifierString } from '../functions/Conversion';\n\nexport type ActionButtonProps = {\n icon?: ReactNode;\n text?: string;\n color?: string;\n tooltip?: string;\n variant?: string;\n size?: number | string;\n radius?: number | string;\n disabled?: boolean;\n onClick: (event?: any) => void;\n hidden?: boolean;\n tooltipAlignment?: FloatingPosition;\n};\n\n/**\n * Construct a simple action button with consistent styling\n */\nexport function ActionButton(props: ActionButtonProps) {\n const hidden = props.hidden ?? false;\n\n return (\n !hidden && (\n <Tooltip\n key={`tooltip-${props.tooltip ?? props.text}`}\n disabled={!props.tooltip && !props.text}\n label={props.tooltip ?? props.text}\n position={props.tooltipAlignment ?? 'left'}\n >\n <ActionIcon\n key={`action-icon-${props.tooltip ?? props.text}`}\n disabled={props.disabled}\n p={17}\n radius={props.radius ?? 'xs'}\n color={props.color}\n size={props.size}\n aria-label={`action-button-${identifierString(\n props.tooltip ?? props.text ?? ''\n )}`}\n onClick={(event: any) => {\n props.onClick(event);\n }}\n variant={props.variant ?? 'transparent'}\n >\n <Group gap='xs' wrap='nowrap'>\n {props.icon}\n </Group>\n </ActionIcon>\n </Tooltip>\n )\n );\n}\n"],"names":["ActionButton","props","hidden","jsx","tooltip","text","tooltipAlignment","disabled","radius","color","size","identifierString","event","onClick","variant","icon"],"mappings":";;AAAA,MAAA,aAAA,OAAA,aAAA,EAAA;;;AA2BO,SAASA,aAAaC,OAA0B;AACrD,QAAMC,SAASD,MAAMC,UAAU;AAE/B,SACE,CAACA,UACCC,sCAAC,SAAA,EAEC,UAAU,CAACF,MAAMG,WAAW,CAACH,MAAMI,MACnC,OAAOJ,MAAMG,WAAWH,MAAMI,MAC9B,UAAUJ,MAAMK,oBAAoB,QAEpC,UAAAH,kCAAAA,IAAC,YAAA,EAEC,UAAUF,MAAMM,UAChB,GAAG,IACH,QAAQN,MAAMO,UAAU,MACxB,OAAOP,MAAMQ,OACb,MAAMR,MAAMS,MACZ,cAAY,iBAAiBC,iBAC3BV,MAAMG,WAAWH,MAAMI,QAAQ,EACjC,CAAC,IACD,SAAS,CAACO,UAAe;AACvBX,UAAMY,QAAQD,KAAK;AAAA,EACrB,GACA,SAASX,MAAMa,WAAW,eAE1B,UAAAX,kCAAAA,IAAC,OAAA,EAAM,KAAI,MAAK,MAAK,UAClBF,UAAAA,MAAMc,KAAAA,CACT,KAhBK,eAAed,MAAMG,WAAWH,MAAMI,IAAI,EAiBjD,EAAA,GAvBK,WAAWJ,MAAMG,WAAWH,MAAMI,IAAI,EAwB7C;AAGN;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddItemButton.js","sources":["../../lib/components/AddItemButton.tsx"],"sourcesContent":["import { IconPlus } from '@tabler/icons-react';\n\nimport { ActionButton, type ActionButtonProps } from './ActionButton';\n\n/**\n * A generic icon button which is used to add or create a new item\n */\nexport function AddItemButton(props: Readonly<ActionButtonProps>) {\n return <ActionButton {...props} color='green' icon={<IconPlus />} />;\n}\n"],"names":["AddItemButton","props","jsx"],"mappings":";;;AAOO,SAASA,cAAcC,OAAoC;
|
|
1
|
+
{"version":3,"file":"AddItemButton.js","sources":["../../lib/components/AddItemButton.tsx"],"sourcesContent":["import { IconPlus } from '@tabler/icons-react';\n\nimport { ActionButton, type ActionButtonProps } from './ActionButton';\n\n/**\n * A generic icon button which is used to add or create a new item\n */\nexport function AddItemButton(props: Readonly<ActionButtonProps>) {\n return <ActionButton {...props} color='green' icon={<IconPlus />} />;\n}\n"],"names":["AddItemButton","props","jsx"],"mappings":";;;AAOO,SAASA,cAAcC,OAAoC;AAChE,SAAOC,sCAAC,mBAAiBD,OAAO,OAAM,SAAQ,MAAMC,kCAAAA,IAAC,UAAA,CAAA,CAAQ,EAAA,CAAI;AACnE;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonMenu.js","sources":["../../lib/components/ButtonMenu.tsx"],"sourcesContent":["import { ActionIcon, Menu, Tooltip } from '@mantine/core';\n\n/**\n * A ButtonMenu is a button that opens a menu when clicked.\n * It features a number of actions, which can be selected by the user.\n */\nexport function ButtonMenu({\n icon,\n actions,\n tooltip = '',\n label = ''\n}: Readonly<{\n icon: any;\n actions: React.ReactNode[];\n label?: string;\n tooltip?: string;\n}>) {\n return (\n <Menu shadow='xs'>\n <Menu.Target>\n <ActionIcon variant='default'>\n <Tooltip label={tooltip}>{icon}</Tooltip>\n </ActionIcon>\n </Menu.Target>\n <Menu.Dropdown>\n {label && <Menu.Label>{label}</Menu.Label>}\n {actions.map((action, i) => (\n <Menu.Item key={`${i}-${action}`}>{action}</Menu.Item>\n ))}\n </Menu.Dropdown>\n </Menu>\n );\n}\n"],"names":["ButtonMenu","icon","actions","tooltip","label","jsxs","jsx","map","action","i"],"mappings":";AAAA,MAAA,aAAA,OAAA,aAAA,EAAA;;;AAMO,SAASA,WAAW;AAAA,EACzBC;AAAAA,EACAC;AAAAA,EACAC,UAAU;AAAA,EACVC,QAAQ;AAMT,GAAG;
|
|
1
|
+
{"version":3,"file":"ButtonMenu.js","sources":["../../lib/components/ButtonMenu.tsx"],"sourcesContent":["import { ActionIcon, Menu, Tooltip } from '@mantine/core';\n\n/**\n * A ButtonMenu is a button that opens a menu when clicked.\n * It features a number of actions, which can be selected by the user.\n */\nexport function ButtonMenu({\n icon,\n actions,\n tooltip = '',\n label = ''\n}: Readonly<{\n icon: any;\n actions: React.ReactNode[];\n label?: string;\n tooltip?: string;\n}>) {\n return (\n <Menu shadow='xs'>\n <Menu.Target>\n <ActionIcon variant='default'>\n <Tooltip label={tooltip}>{icon}</Tooltip>\n </ActionIcon>\n </Menu.Target>\n <Menu.Dropdown>\n {label && <Menu.Label>{label}</Menu.Label>}\n {actions.map((action, i) => (\n <Menu.Item key={`${i}-${action}`}>{action}</Menu.Item>\n ))}\n </Menu.Dropdown>\n </Menu>\n );\n}\n"],"names":["ButtonMenu","icon","actions","tooltip","label","jsxs","jsx","map","action","i"],"mappings":";AAAA,MAAA,aAAA,OAAA,aAAA,EAAA;;;AAMO,SAASA,WAAW;AAAA,EACzBC;AAAAA,EACAC;AAAAA,EACAC,UAAU;AAAA,EACVC,QAAQ;AAMT,GAAG;AACF,SACEC,kCAAAA,KAAC,MAAA,EAAK,QAAO,MACX,UAAA;AAAA,IAAAC,sCAAC,KAAK,QAAL,EACC,UAAAA,kCAAAA,IAAC,YAAA,EAAW,SAAQ,WAClB,UAAAA,sCAAC,SAAA,EAAQ,OAAOH,SAAUF,UAAAA,KAAAA,CAAK,GACjC,GACF;AAAA,IACAI,kCAAAA,KAAC,KAAK,UAAL,EACED,UAAAA;AAAAA,MAAAA,SAASE,kCAAAA,IAAC,KAAK,OAAL,EAAYF,UAAAA,OAAM;AAAA,MAC5BF,QAAQK,IAAI,CAACC,QAAQC,MACpBH,kCAAAA,IAAC,KAAK,MAAL,EAAkCE,oBAAnB,GAAGC,CAAC,IAAID,MAAM,EAAY,CAC3C;AAAA,IAAA,EAAA,CACH;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProgressBar.js","sources":["../../lib/components/ProgressBar.tsx"],"sourcesContent":["import { Progress, Stack, Text } from '@mantine/core';\nimport { useMemo } from 'react';\nimport { formatDecimal } from '../functions/Formatting';\n\nexport type ProgressBarProps = {\n value: number;\n maximum?: number;\n label?: string;\n progressLabel?: boolean;\n animated?: boolean;\n size?: string;\n};\n\n/**\n * A progress bar element, built on mantine.Progress\n * The color of the bar is determined based on the value\n */\nexport function ProgressBar(props: Readonly<ProgressBarProps>) {\n const progress = useMemo(() => {\n const maximum = props.maximum ?? 100;\n const value = Math.max(props.value, 0);\n\n if (maximum == 0) {\n return 0;\n }\n\n return (value / maximum) * 100;\n }, [props]);\n\n return (\n <Stack gap={2} style={{ flexGrow: 1, minWidth: '100px' }}>\n {props.progressLabel && (\n <Text ta='center' size='xs'>\n {formatDecimal(props.value)} / {formatDecimal(props.maximum)}\n </Text>\n )}\n <Progress\n value={progress}\n color={progress < 100 ? 'orange' : progress > 100 ? 'blue' : 'green'}\n size={props.size ?? 'md'}\n radius='sm'\n animated={props.animated}\n />\n </Stack>\n );\n}\n"],"names":["ProgressBar","props","progress","useMemo","maximum","value","Math","max","jsxs","flexGrow","minWidth","progressLabel","formatDecimal","jsx","size","animated"],"mappings":";;AAAA,MAAA,WAAA,OAAA,aAAA,EAAA;;;AACA,MAAA,UAAA,OAAA,OAAA,EAAA;AAgBO,SAASA,YAAYC,OAAmC;
|
|
1
|
+
{"version":3,"file":"ProgressBar.js","sources":["../../lib/components/ProgressBar.tsx"],"sourcesContent":["import { Progress, Stack, Text } from '@mantine/core';\nimport { useMemo } from 'react';\nimport { formatDecimal } from '../functions/Formatting';\n\nexport type ProgressBarProps = {\n value: number;\n maximum?: number;\n label?: string;\n progressLabel?: boolean;\n animated?: boolean;\n size?: string;\n};\n\n/**\n * A progress bar element, built on mantine.Progress\n * The color of the bar is determined based on the value\n */\nexport function ProgressBar(props: Readonly<ProgressBarProps>) {\n const progress = useMemo(() => {\n const maximum = props.maximum ?? 100;\n const value = Math.max(props.value, 0);\n\n if (maximum == 0) {\n return 0;\n }\n\n return (value / maximum) * 100;\n }, [props]);\n\n return (\n <Stack gap={2} style={{ flexGrow: 1, minWidth: '100px' }}>\n {props.progressLabel && (\n <Text ta='center' size='xs'>\n {formatDecimal(props.value)} / {formatDecimal(props.maximum)}\n </Text>\n )}\n <Progress\n value={progress}\n color={progress < 100 ? 'orange' : progress > 100 ? 'blue' : 'green'}\n size={props.size ?? 'md'}\n radius='sm'\n animated={props.animated}\n />\n </Stack>\n );\n}\n"],"names":["ProgressBar","props","progress","useMemo","maximum","value","Math","max","jsxs","flexGrow","minWidth","progressLabel","formatDecimal","jsx","size","animated"],"mappings":";;AAAA,MAAA,WAAA,OAAA,aAAA,EAAA;;;AACA,MAAA,UAAA,OAAA,OAAA,EAAA;AAgBO,SAASA,YAAYC,OAAmC;AAC7D,QAAMC,WAAWC,QAAQ,MAAM;AAC7B,UAAMC,UAAUH,MAAMG,WAAW;AACjC,UAAMC,QAAQC,KAAKC,IAAIN,MAAMI,OAAO,CAAC;AAErC,QAAID,WAAW,GAAG;AAChB,aAAO;AAAA,IACT;AAEA,WAAQC,QAAQD,UAAW;AAAA,EAC7B,GAAG,CAACH,KAAK,CAAC;AAEV,SACEO,kCAAAA,KAAC,OAAA,EAAM,KAAK,GAAG,OAAO;AAAA,IAAEC,UAAU;AAAA,IAAGC,UAAU;AAAA,EAAA,GAC5CT,UAAAA;AAAAA,IAAAA,MAAMU,iBACLH,kCAAAA,KAAC,MAAA,EAAK,IAAG,UAAS,MAAK,MACpBI,UAAAA;AAAAA,MAAAA,cAAcX,MAAMI,KAAK;AAAA,MAAE;AAAA,MAAIO,cAAcX,MAAMG,OAAO;AAAA,IAAA,GAC7D;AAAA,IAEFS,sCAAC,YACC,OAAOX,UACP,OAAOA,WAAW,MAAM,WAAWA,WAAW,MAAM,SAAS,SAC7D,MAAMD,MAAMa,QAAQ,MACpB,QAAO,MACP,UAAUb,MAAMc,SAAAA,CAAS;AAAA,EAAA,GAE7B;AAEJ;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RowActions.js","sources":["../../lib/components/RowActions.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport { ActionIcon, Menu, Tooltip } from '@mantine/core';\nimport {\n IconArrowRight,\n IconCircleX,\n IconCopy,\n IconDots,\n IconEdit,\n IconTrash\n} from '@tabler/icons-react';\nimport { type ReactNode, useMemo, useState } from 'react';\nimport { cancelEvent } from '../functions/Events';\nimport { getDetailUrl } from '../functions/Navigation';\nimport { navigateToLink } from '../functions/Navigation';\nimport type { RowAction, RowViewProps } from '../types/Tables';\n\nexport type { RowAction, RowViewProps } from '../types/Tables';\n\n// Component for viewing a row in a table\nexport function RowViewAction(props: RowViewProps): RowAction {\n return {\n ...props,\n color: undefined,\n icon: <IconArrowRight />,\n onClick: (event: any) => {\n const url = getDetailUrl(props.modelType, props.modelId);\n navigateToLink(url, props.navigate, event);\n }\n };\n}\n\n// Component for duplicating a row in a table\nexport function RowDuplicateAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Duplicate`,\n color: 'green',\n icon: <IconCopy />\n };\n}\n\n// Component for editing a row in a table\nexport function RowEditAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Edit`,\n color: 'blue',\n icon: <IconEdit />\n };\n}\n\n// Component for deleting a row in a table\nexport function RowDeleteAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Delete`,\n color: 'red',\n icon: <IconTrash />\n };\n}\n\n// Component for cancelling a row in a table\nexport function RowCancelAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Cancel`,\n color: 'red',\n icon: <IconCircleX />\n };\n}\n\n/**\n * Component for displaying actions for a row in a table.\n * Displays a simple dropdown menu with a list of actions.\n */\nexport function RowActions({\n title,\n actions,\n disabled = false,\n index\n}: {\n title?: string;\n disabled?: boolean;\n actions: RowAction[];\n index?: number;\n}): ReactNode {\n // Prevent default event handling\n // Ref: https://icflorescu.github.io/mantine-datatable/examples/links-or-buttons-inside-clickable-rows-or-cells\n function openMenu(event: any) {\n cancelEvent(event);\n setOpened(!opened);\n }\n\n const [opened, setOpened] = useState(false);\n\n const visibleActions = useMemo(() => {\n return actions.filter((action) => !action.hidden);\n }, [actions]);\n\n // Render a single action icon\n function RowActionIcon(action: Readonly<RowAction>) {\n return (\n <Tooltip\n withinPortal={true}\n label={action.tooltip ?? action.title}\n key={action.title}\n position='left'\n >\n <Menu.Item\n color={action.color}\n leftSection={action.icon}\n onClick={(event) => {\n // Prevent clicking on the action from selecting the row itself\n cancelEvent(event);\n action.onClick?.(event);\n setOpened(false);\n }}\n disabled={action.disabled || false}\n >\n {action.title}\n </Menu.Item>\n </Tooltip>\n );\n }\n\n return (\n visibleActions.length > 0 && (\n <Menu\n withinPortal={true}\n disabled={disabled}\n position='bottom-end'\n opened={opened}\n onChange={setOpened}\n >\n <Menu.Target>\n <Tooltip withinPortal={true} label={title || t`Actions`}>\n <ActionIcon\n key={`row-action-menu-${index ?? ''}`}\n aria-label={`row-action-menu-${index ?? ''}`}\n onClick={openMenu}\n disabled={disabled}\n variant='subtle'\n color='gray'\n >\n <IconDots />\n </ActionIcon>\n </Tooltip>\n </Menu.Target>\n <Menu.Dropdown>\n {visibleActions.map((action) => (\n <RowActionIcon key={action.title} {...action} />\n ))}\n </Menu.Dropdown>\n </Menu>\n )\n );\n}\n"],"names":["RowViewAction","props","color","undefined","icon","onClick","event","url","getDetailUrl","modelType","modelId","navigate","RowDuplicateAction","title","_i18n","_","id","RowEditAction","RowDeleteAction","RowCancelAction","RowActions","actions","disabled","index","openMenu","cancelEvent","setOpened","opened","useState","visibleActions","useMemo","filter","action","hidden","RowActionIcon","jsx","tooltip","length","jsxs","map"],"mappings":";;;;;;;;;AAAA,MAAA,QAAA,OAAA,YAAA,EAAA;AACA,MAAA,aAAA,OAAA,aAAA,EAAA;;;AASA,MAAA,UAAA,OAAA,OAAA,EAAA;;AASO,SAASA,cAAcC,OAAgC;
|
|
1
|
+
{"version":3,"file":"RowActions.js","sources":["../../lib/components/RowActions.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport { ActionIcon, Menu, Tooltip } from '@mantine/core';\nimport {\n IconArrowRight,\n IconCircleX,\n IconCopy,\n IconDots,\n IconEdit,\n IconTrash\n} from '@tabler/icons-react';\nimport { type ReactNode, useMemo, useState } from 'react';\nimport { cancelEvent } from '../functions/Events';\nimport { getDetailUrl } from '../functions/Navigation';\nimport { navigateToLink } from '../functions/Navigation';\nimport type { RowAction, RowViewProps } from '../types/Tables';\n\nexport type { RowAction, RowViewProps } from '../types/Tables';\n\n// Component for viewing a row in a table\nexport function RowViewAction(props: RowViewProps): RowAction {\n return {\n ...props,\n color: undefined,\n icon: <IconArrowRight />,\n onClick: (event: any) => {\n const url = getDetailUrl(props.modelType, props.modelId);\n navigateToLink(url, props.navigate, event);\n }\n };\n}\n\n// Component for duplicating a row in a table\nexport function RowDuplicateAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Duplicate`,\n color: 'green',\n icon: <IconCopy />\n };\n}\n\n// Component for editing a row in a table\nexport function RowEditAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Edit`,\n color: 'blue',\n icon: <IconEdit />\n };\n}\n\n// Component for deleting a row in a table\nexport function RowDeleteAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Delete`,\n color: 'red',\n icon: <IconTrash />\n };\n}\n\n// Component for cancelling a row in a table\nexport function RowCancelAction(props: RowAction): RowAction {\n return {\n ...props,\n title: t`Cancel`,\n color: 'red',\n icon: <IconCircleX />\n };\n}\n\n/**\n * Component for displaying actions for a row in a table.\n * Displays a simple dropdown menu with a list of actions.\n */\nexport function RowActions({\n title,\n actions,\n disabled = false,\n index\n}: {\n title?: string;\n disabled?: boolean;\n actions: RowAction[];\n index?: number;\n}): ReactNode {\n // Prevent default event handling\n // Ref: https://icflorescu.github.io/mantine-datatable/examples/links-or-buttons-inside-clickable-rows-or-cells\n function openMenu(event: any) {\n cancelEvent(event);\n setOpened(!opened);\n }\n\n const [opened, setOpened] = useState(false);\n\n const visibleActions = useMemo(() => {\n return actions.filter((action) => !action.hidden);\n }, [actions]);\n\n // Render a single action icon\n function RowActionIcon(action: Readonly<RowAction>) {\n return (\n <Tooltip\n withinPortal={true}\n label={action.tooltip ?? action.title}\n key={action.title}\n position='left'\n >\n <Menu.Item\n color={action.color}\n leftSection={action.icon}\n onClick={(event) => {\n // Prevent clicking on the action from selecting the row itself\n cancelEvent(event);\n action.onClick?.(event);\n setOpened(false);\n }}\n disabled={action.disabled || false}\n >\n {action.title}\n </Menu.Item>\n </Tooltip>\n );\n }\n\n return (\n visibleActions.length > 0 && (\n <Menu\n withinPortal={true}\n disabled={disabled}\n position='bottom-end'\n opened={opened}\n onChange={setOpened}\n >\n <Menu.Target>\n <Tooltip withinPortal={true} label={title || t`Actions`}>\n <ActionIcon\n key={`row-action-menu-${index ?? ''}`}\n aria-label={`row-action-menu-${index ?? ''}`}\n onClick={openMenu}\n disabled={disabled}\n variant='subtle'\n color='gray'\n >\n <IconDots />\n </ActionIcon>\n </Tooltip>\n </Menu.Target>\n <Menu.Dropdown>\n {visibleActions.map((action) => (\n <RowActionIcon key={action.title} {...action} />\n ))}\n </Menu.Dropdown>\n </Menu>\n )\n );\n}\n"],"names":["RowViewAction","props","color","undefined","icon","onClick","event","url","getDetailUrl","modelType","modelId","navigateToLink","navigate","RowDuplicateAction","title","_i18n","_","id","RowEditAction","RowDeleteAction","RowCancelAction","RowActions","actions","disabled","index","openMenu","cancelEvent","setOpened","opened","useState","visibleActions","useMemo","filter","action","hidden","RowActionIcon","jsx","tooltip","length","jsxs","map"],"mappings":";;;;;;;;;AAAA,MAAA,QAAA,OAAA,YAAA,EAAA;AACA,MAAA,aAAA,OAAA,aAAA,EAAA;;;AASA,MAAA,UAAA,OAAA,OAAA,EAAA;;AASO,SAASA,cAAcC,OAAgC;AAC5D,SAAO;AAAA,IACL,GAAGA;AAAAA,IACHC,OAAOC;AAAAA,IACPC,4CAAO,gBAAA,EAAc;AAAA,IACrBC,SAASA,CAACC,UAAe;AACvB,YAAMC,MAAMC,aAAaP,MAAMQ,WAAWR,MAAMS,OAAO;AACvDC,qBAAeJ,KAAKN,MAAMW,UAAUN,KAAK;AAAA,IAC3C;AAAA,EAAA;AAEJ;AAGO,SAASO,mBAAmBZ,OAA6B;AAC9D,SAAO;AAAA,IACL,GAAGA;AAAAA,IACHa,OAAKC,MAAAC;AAAAA;AAAAA,MAAE;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAW;AAAA,IAClBf,OAAO;AAAA,IACPE,4CAAO,UAAA,CAAA,CAAQ;AAAA,EAAA;AAEnB;AAGO,SAASc,cAAcjB,OAA6B;AACzD,SAAO;AAAA,IACL,GAAGA;AAAAA,IACHa,OAAKC,MAAAC;AAAAA;AAAAA,MAAE;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAM;AAAA,IACbf,OAAO;AAAA,IACPE,4CAAO,UAAA,CAAA,CAAQ;AAAA,EAAA;AAEnB;AAGO,SAASe,gBAAgBlB,OAA6B;AAC3D,SAAO;AAAA,IACL,GAAGA;AAAAA,IACHa,OAAKC,MAAAC;AAAAA;AAAAA,MAAE;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAQ;AAAA,IACff,OAAO;AAAA,IACPE,4CAAO,WAAA,CAAA,CAAS;AAAA,EAAA;AAEpB;AAGO,SAASgB,gBAAgBnB,OAA6B;AAC3D,SAAO;AAAA,IACL,GAAGA;AAAAA,IACHa,OAAKC,MAAAC;AAAAA;AAAAA,MAAE;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAQ;AAAA,IACff,OAAO;AAAA,IACPE,4CAAO,aAAA,CAAA,CAAW;AAAA,EAAA;AAEtB;AAMO,SAASiB,WAAW;AAAA,EACzBP;AAAAA,EACAQ;AAAAA,EACAC,WAAW;AAAA,EACXC;AAMF,GAAc;AAGZ,WAASC,SAASnB,OAAY;AAC5BoB,gBAAYpB,KAAK;AACjBqB,cAAU,CAACC,MAAM;AAAA,EACnB;AAEA,QAAM,CAACA,QAAQD,SAAS,IAAIE,SAAS,KAAK;AAE1C,QAAMC,iBAAiBC,QAAQ,MAAM;AACnC,WAAOT,QAAQU,OAAQC,CAAAA,WAAW,CAACA,OAAOC,MAAM;AAAA,EAClD,GAAG,CAACZ,OAAO,CAAC;AAGZ,WAASa,cAAcF,QAA6B;AAClD,WACEG,sCAAC,WACC,cAAc,MACd,OAAOH,OAAOI,WAAWJ,OAAOnB,OAEhC,UAAS,QAET,gDAAC,KAAK,MAAL,EACC,OAAOmB,OAAO/B,OACd,aAAa+B,OAAO7B,MACpB,SAAUE,CAAAA,UAAU;;AAElBoB,kBAAYpB,KAAK;AACjB2B,mBAAO5B,YAAP4B,gCAAiB3B;AACjBqB,gBAAU,KAAK;AAAA,IACjB,GACA,UAAUM,OAAOV,YAAY,OAE5BU,UAAAA,OAAOnB,MAAAA,CACV,KAfKmB,OAAOnB,KAgBd;AAAA,EAEJ;AAEA,SACEgB,eAAeQ,SAAS,KACtBC,kCAAAA,KAAC,MAAA,EACC,cAAc,MACd,UACA,UAAS,cACT,QACA,UAAUZ,WAEV,UAAA;AAAA,IAAAS,kCAAAA,IAAC,KAAK,QAAL,EACC,UAAAA,kCAAAA,IAAC,WAAQ,cAAc,MAAM,OAAOtB,SAAKC,MAAAC;AAAAA;AAAAA,MAAI;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAS,GACpD,gDAAC,YAAA,EAEC,cAAY,mBAAmBO,SAAS,EAAE,IAC1C,SAASC,UACT,UACA,SAAQ,UACR,OAAM,QAEN,UAAAW,kCAAAA,IAAC,UAAA,CAAA,CAAQ,EAAA,GAPJ,mBAAmBZ,SAAS,EAAE,EAQrC,EAAA,CACF,EAAA,CACF;AAAA,IACAY,kCAAAA,IAAC,KAAK,UAAL,EACEN,yBAAeU,IAAKP,CAAAA,WACnBG,kCAAAA,IAAC,eAAA,EAAiC,GAAIH,OAAAA,GAAlBA,OAAOnB,KAAkB,CAC9C,EAAA,CACH;AAAA,EAAA,GACF;AAGN;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchInput.js","sources":["../../lib/components/SearchInput.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport { CloseButton, TextInput } from '@mantine/core';\nimport { useDebouncedValue } from '@mantine/hooks';\nimport { IconSearch } from '@tabler/icons-react';\nimport { useEffect, useState } from 'react';\n\n/**\n * A search input component that debounces user input\n */\nexport function SearchInput({\n disabled,\n debounce,\n placeholder,\n searchCallback\n}: Readonly<{\n disabled?: boolean;\n debounce?: number;\n placeholder?: string;\n searchCallback: (searchTerm: string) => void;\n}>) {\n const [value, setValue] = useState<string>('');\n const [searchText] = useDebouncedValue(value, debounce ?? 500);\n\n useEffect(() => {\n searchCallback(searchText);\n }, [searchText]);\n\n return (\n <TextInput\n value={value}\n disabled={disabled}\n aria-label='table-search-input'\n leftSection={<IconSearch />}\n placeholder={placeholder ?? t`Search`}\n onChange={(event) => setValue(event.target.value)}\n rightSection={\n value.length > 0 ? (\n <CloseButton\n size='xs'\n onClick={() => {\n setValue('');\n searchCallback('');\n }}\n />\n ) : null\n }\n />\n );\n}\n"],"names":["SearchInput","disabled","debounce","placeholder","searchCallback","value","setValue","useState","searchText","useDebouncedValue","useEffect","jsx","_i18n","_","id","event","target","length"],"mappings":";;;AAAA,MAAA,QAAA,OAAA,YAAA,EAAA;AACA,MAAA,cAAA,OAAA,aAAA,EAAA;;AAGA,MAAA,YAAA,OAAA,OAAA,EAAA;;AAKO,SAASA,YAAY;AAAA,EAC1BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAMD,GAAG;AACF,QAAM,CAACC,OAAOC,QAAQ,IAAIC,SAAiB,EAAE;AAC7C,QAAM,CAACC,UAAU,IAAIC,kBAAkBJ,OAAOH,YAAY,GAAG;AAE7DQ,YAAU,MAAM;AACdN,mBAAeI,UAAU;AAAA,
|
|
1
|
+
{"version":3,"file":"SearchInput.js","sources":["../../lib/components/SearchInput.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport { CloseButton, TextInput } from '@mantine/core';\nimport { useDebouncedValue } from '@mantine/hooks';\nimport { IconSearch } from '@tabler/icons-react';\nimport { useEffect, useState } from 'react';\n\n/**\n * A search input component that debounces user input\n */\nexport function SearchInput({\n disabled,\n debounce,\n placeholder,\n searchCallback\n}: Readonly<{\n disabled?: boolean;\n debounce?: number;\n placeholder?: string;\n searchCallback: (searchTerm: string) => void;\n}>) {\n const [value, setValue] = useState<string>('');\n const [searchText] = useDebouncedValue(value, debounce ?? 500);\n\n useEffect(() => {\n searchCallback(searchText);\n }, [searchText]);\n\n return (\n <TextInput\n value={value}\n disabled={disabled}\n aria-label='table-search-input'\n leftSection={<IconSearch />}\n placeholder={placeholder ?? t`Search`}\n onChange={(event) => setValue(event.target.value)}\n rightSection={\n value.length > 0 ? (\n <CloseButton\n size='xs'\n onClick={() => {\n setValue('');\n searchCallback('');\n }}\n />\n ) : null\n }\n />\n );\n}\n"],"names":["SearchInput","disabled","debounce","placeholder","searchCallback","value","setValue","useState","searchText","useDebouncedValue","useEffect","jsx","_i18n","_","id","event","target","length"],"mappings":";;;AAAA,MAAA,QAAA,OAAA,YAAA,EAAA;AACA,MAAA,cAAA,OAAA,aAAA,EAAA;;AAGA,MAAA,YAAA,OAAA,OAAA,EAAA;;AAKO,SAASA,YAAY;AAAA,EAC1BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAMD,GAAG;AACF,QAAM,CAACC,OAAOC,QAAQ,IAAIC,SAAiB,EAAE;AAC7C,QAAM,CAACC,UAAU,IAAIC,kBAAkBJ,OAAOH,YAAY,GAAG;AAE7DQ,YAAU,MAAM;AACdN,mBAAeI,UAAU;AAAA,EAC3B,GAAG,CAACA,UAAU,CAAC;AAEf,SACEG,kCAAAA,IAAC,WAAA,EACC,OACA,UACA,cAAW,sBACX,aAAaA,kCAAAA,IAAC,YAAA,CAAA,CAAU,GACxB,aAAaR,eAAWS,MAAAC;AAAAA;AAAAA,IAAI;AAAA,MAAAC,IAAA;AAAA,IAAA;AAAA,EAAQ,GACpC,UAAWC,CAAAA,UAAUT,SAASS,MAAMC,OAAOX,KAAK,GAChD,cACEA,MAAMY,SAAS,IACbN,sCAAC,eACC,MAAK,MACL,SAAS,MAAM;AACbL,aAAS,EAAE;AACXF,mBAAe,EAAE;AAAA,EACnB,EAAA,CAAE,IAEF,MACL;AAGP;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YesNoButton.js","sources":["../../lib/components/YesNoButton.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport { Badge, type MantineColor, Skeleton } from '@mantine/core';\n\nimport { isTrue } from '../functions/Conversion';\n\nexport function PassFailButton({\n value,\n passText,\n failText,\n passColor,\n failColor\n}: Readonly<{\n value: any;\n passText?: string;\n failText?: string;\n passColor?: MantineColor;\n failColor?: MantineColor;\n}>) {\n const v = isTrue(value);\n const pass = passText ?? t`Pass`;\n const fail = failText ?? t`Fail`;\n\n const pColor = passColor ?? 'green';\n const fColor = failColor ?? 'red';\n\n return (\n <Badge\n color={v ? pColor : fColor}\n variant='filled'\n radius='lg'\n size='sm'\n style={{ maxWidth: '50px' }}\n >\n {v ? pass : fail}\n </Badge>\n );\n}\n\nexport function YesNoButton({ value }: Readonly<{ value: any }>) {\n return (\n <PassFailButton\n value={value}\n passText={t`Yes`}\n failText={t`No`}\n failColor={'orange.6'}\n />\n );\n}\n\nexport function YesNoUndefinedButton({ value }: Readonly<{ value?: boolean }>) {\n if (value === undefined) {\n return <Skeleton height={15} width={32} />;\n } else {\n return <YesNoButton value={value} />;\n }\n}\n"],"names":["PassFailButton","value","passText","failText","passColor","failColor","v","isTrue","pass","_i18n","_","id","fail","pColor","fColor","jsx","maxWidth","YesNoButton"],"mappings":";;AAAA,MAAA,QAAA,OAAA,YAAA,EAAA;AACA,MAAA,QAAA,OAAA,aAAA,EAAA;;AAIO,SAASA,eAAe;AAAA,EAC7BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAOD,GAAG;
|
|
1
|
+
{"version":3,"file":"YesNoButton.js","sources":["../../lib/components/YesNoButton.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport { Badge, type MantineColor, Skeleton } from '@mantine/core';\n\nimport { isTrue } from '../functions/Conversion';\n\nexport function PassFailButton({\n value,\n passText,\n failText,\n passColor,\n failColor\n}: Readonly<{\n value: any;\n passText?: string;\n failText?: string;\n passColor?: MantineColor;\n failColor?: MantineColor;\n}>) {\n const v = isTrue(value);\n const pass = passText ?? t`Pass`;\n const fail = failText ?? t`Fail`;\n\n const pColor = passColor ?? 'green';\n const fColor = failColor ?? 'red';\n\n return (\n <Badge\n color={v ? pColor : fColor}\n variant='filled'\n radius='lg'\n size='sm'\n style={{ maxWidth: '50px' }}\n >\n {v ? pass : fail}\n </Badge>\n );\n}\n\nexport function YesNoButton({ value }: Readonly<{ value: any }>) {\n return (\n <PassFailButton\n value={value}\n passText={t`Yes`}\n failText={t`No`}\n failColor={'orange.6'}\n />\n );\n}\n\nexport function YesNoUndefinedButton({ value }: Readonly<{ value?: boolean }>) {\n if (value === undefined) {\n return <Skeleton height={15} width={32} />;\n } else {\n return <YesNoButton value={value} />;\n }\n}\n"],"names":["PassFailButton","value","passText","failText","passColor","failColor","v","isTrue","pass","_i18n","_","id","fail","pColor","fColor","jsx","maxWidth","YesNoButton"],"mappings":";;AAAA,MAAA,QAAA,OAAA,YAAA,EAAA;AACA,MAAA,QAAA,OAAA,aAAA,EAAA;;AAIO,SAASA,eAAe;AAAA,EAC7BC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAAAA,EACAC;AAOD,GAAG;AACF,QAAMC,IAAIC,OAAON,KAAK;AACtB,QAAMO,OAAON,YAAQO,MAAAC;AAAAA;AAAAA,IAAI;AAAA,MAAAC,IAAA;AAAA,IAAA;AAAA,EAAM;AAC/B,QAAMC,OAAOT,YAAQM,MAAAC;AAAAA;AAAAA,IAAI;AAAA,MAAAC,IAAA;AAAA,IAAA;AAAA,EAAM;AAE/B,QAAME,SAAST,aAAa;AAC5B,QAAMU,SAAST,aAAa;AAE5B,SACEU,kCAAAA,IAAC,OAAA,EACC,OAAOT,IAAIO,SAASC,QACpB,SAAQ,UACR,QAAO,MACP,MAAK,MACL,OAAO;AAAA,IAAEE,UAAU;AAAA,EAAA,GAElBV,UAAAA,IAAIE,OAAOI,KAAAA,CACd;AAEJ;AAEO,SAASK,YAAY;AAAA,EAAEhB;AAAgC,GAAG;AAC/D,SACEc,kCAAAA,IAAC,gBAAA,EACC,OACA,UAASN,MAAAC;AAAAA;AAAAA,IAAC;AAAA,MAAAC,IAAA;AAAA,IAAA;AAAA,EAAK,GACf,UAASF,MAAAC;AAAAA;AAAAA,IAAC;AAAA,MAAAC,IAAA;AAAA,IAAA;AAAA,EAAI,GACd,WAAW,YAAW;AAG5B;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiEndpoints.js","sources":["../../lib/enums/ApiEndpoints.tsx"],"sourcesContent":["/*\n * Enumeration of available API endpoints.\n *\n * In the cases where endpoints can be accessed with a primary key,\n * the primary key should be appended to the endpoint.\n * The exception to this is when the endpoint provides an :id parameter.\n */\n\nexport enum ApiEndpoints {\n api_server_info = '',\n\n // User API endpoints\n user_list = 'user/',\n user_set_password = 'user/:id/set-password/',\n user_me = 'user/me/',\n user_profile = 'user/profile/',\n user_roles = 'user/roles/',\n user_token = 'user/token/',\n user_tokens = 'user/tokens/',\n user_simple_login = 'email/generate/',\n\n // User auth endpoints\n user_reset = 'auth/v1/auth/password/request',\n user_reset_set = 'auth/v1/auth/password/reset',\n auth_pwd_change = 'auth/v1/account/password/change',\n auth_login = 'auth/v1/auth/login',\n auth_login_2fa = 'auth/v1/auth/2fa/authenticate',\n auth_session = 'auth/v1/auth/session',\n auth_signup = 'auth/v1/auth/signup',\n auth_authenticators = 'auth/v1/account/authenticators',\n auth_recovery = 'auth/v1/account/authenticators/recovery-codes',\n auth_mfa_reauthenticate = 'auth/v1/auth/2fa/reauthenticate',\n auth_totp = 'auth/v1/account/authenticators/totp',\n auth_trust = 'auth/v1/auth/2fa/trust',\n auth_reauthenticate = 'auth/v1/auth/reauthenticate',\n auth_email = 'auth/v1/account/email',\n auth_email_verify = 'auth/v1/auth/email/verify',\n auth_providers = 'auth/v1/account/providers',\n auth_provider_redirect = 'auth/v1/auth/provider/redirect',\n auth_config = 'auth/v1/config',\n\n // Generic API endpoints\n currency_list = 'currency/exchange/',\n currency_refresh = 'currency/refresh/',\n all_units = 'units/all/',\n task_overview = 'background-task/',\n task_pending_list = 'background-task/pending/',\n task_scheduled_list = 'background-task/scheduled/',\n task_failed_list = 'background-task/failed/',\n api_search = 'search/',\n settings_global_list = 'settings/global/',\n settings_user_list = 'settings/user/',\n news = 'news/',\n global_status = 'generic/status/',\n custom_state_list = 'generic/status/custom/',\n version = 'version/',\n license = 'license/',\n group_list = 'user/group/',\n owner_list = 'user/owner/',\n ruleset_list = 'user/ruleset/',\n content_type_list = 'contenttype/',\n icons = 'icons/',\n selectionlist_list = 'selection/',\n selectionlist_detail = 'selection/:id/',\n\n // Barcode API endpoints\n barcode = 'barcode/',\n barcode_history = 'barcode/history/',\n barcode_link = 'barcode/link/',\n barcode_unlink = 'barcode/unlink/',\n barcode_generate = 'barcode/generate/',\n\n // Data output endpoints\n data_output = 'data-output/',\n\n // Data import endpoints\n import_session_list = 'importer/session/',\n import_session_accept_fields = 'importer/session/:id/accept_fields/',\n import_session_accept_rows = 'importer/session/:id/accept_rows/',\n import_session_column_mapping_list = 'importer/column-mapping/',\n import_session_row_list = 'importer/row/',\n\n // Notification endpoints\n notifications_list = 'notifications/',\n notifications_readall = 'notifications/readall/',\n\n // Build API endpoints\n build_order_list = 'build/',\n build_order_issue = 'build/:id/issue/',\n build_order_cancel = 'build/:id/cancel/',\n build_order_hold = 'build/:id/hold/',\n build_order_complete = 'build/:id/finish/',\n build_output_complete = 'build/:id/complete/',\n build_output_create = 'build/:id/create-output/',\n build_output_scrap = 'build/:id/scrap-outputs/',\n build_output_delete = 'build/:id/delete-outputs/',\n build_order_auto_allocate = 'build/:id/auto-allocate/',\n build_order_allocate = 'build/:id/allocate/',\n build_order_consume = 'build/:id/consume/',\n build_order_deallocate = 'build/:id/unallocate/',\n\n build_line_list = 'build/line/',\n build_item_list = 'build/item/',\n\n bom_list = 'bom/',\n bom_item_validate = 'bom/:id/validate/',\n bom_validate = 'part/:id/bom-validate/',\n bom_substitute_list = 'bom/substitute/',\n\n // Part API endpoints\n part_list = 'part/',\n part_parameter_list = 'part/parameter/',\n part_parameter_template_list = 'part/parameter/template/',\n part_thumbs_list = 'part/thumbs/',\n part_pricing = 'part/:id/pricing/',\n part_requirements = 'part/:id/requirements/',\n part_serial_numbers = 'part/:id/serial-numbers/',\n part_scheduling = 'part/:id/scheduling/',\n part_pricing_internal = 'part/internal-price/',\n part_pricing_sale = 'part/sale-price/',\n part_stocktake_list = 'part/stocktake/',\n category_list = 'part/category/',\n category_tree = 'part/category/tree/',\n category_parameter_list = 'part/category/parameters/',\n related_part_list = 'part/related/',\n part_test_template_list = 'part/test-template/',\n\n // Company API endpoints\n company_list = 'company/',\n contact_list = 'company/contact/',\n address_list = 'company/address/',\n supplier_part_list = 'company/part/',\n supplier_part_pricing_list = 'company/price-break/',\n manufacturer_part_list = 'company/part/manufacturer/',\n manufacturer_part_parameter_list = 'company/part/manufacturer/parameter/',\n\n // Stock location endpoints\n stock_location_list = 'stock/location/',\n stock_location_type_list = 'stock/location-type/',\n stock_location_tree = 'stock/location/tree/',\n\n // Stock item API endpoints\n stock_item_list = 'stock/',\n stock_tracking_list = 'stock/track/',\n stock_test_result_list = 'stock/test/',\n stock_transfer = 'stock/transfer/',\n stock_remove = 'stock/remove/',\n stock_return = 'stock/return/',\n stock_add = 'stock/add/',\n stock_count = 'stock/count/',\n stock_change_status = 'stock/change_status/',\n stock_merge = 'stock/merge/',\n stock_assign = 'stock/assign/',\n stock_status = 'stock/status/',\n stock_install = 'stock/:id/install/',\n stock_uninstall = 'stock/:id/uninstall/',\n stock_serialize = 'stock/:id/serialize/',\n stock_serial_info = 'stock/:id/serial-numbers/',\n\n // Generator API endpoints\n generate_batch_code = 'generate/batch-code/',\n generate_serial_number = 'generate/serial-number/',\n\n // Order API endpoints\n purchase_order_list = 'order/po/',\n purchase_order_issue = 'order/po/:id/issue/',\n purchase_order_hold = 'order/po/:id/hold/',\n purchase_order_cancel = 'order/po/:id/cancel/',\n purchase_order_complete = 'order/po/:id/complete/',\n purchase_order_line_list = 'order/po-line/',\n purchase_order_extra_line_list = 'order/po-extra-line/',\n purchase_order_receive = 'order/po/:id/receive/',\n\n sales_order_list = 'order/so/',\n sales_order_issue = 'order/so/:id/issue/',\n sales_order_hold = 'order/so/:id/hold/',\n sales_order_cancel = 'order/so/:id/cancel/',\n sales_order_ship = 'order/so/:id/ship/',\n sales_order_complete = 'order/so/:id/complete/',\n sales_order_allocate = 'order/so/:id/allocate/',\n sales_order_allocate_serials = 'order/so/:id/allocate-serials/',\n\n sales_order_line_list = 'order/so-line/',\n sales_order_extra_line_list = 'order/so-extra-line/',\n sales_order_allocation_list = 'order/so-allocation/',\n\n sales_order_shipment_list = 'order/so/shipment/',\n sales_order_shipment_complete = 'order/so/shipment/:id/ship/',\n\n return_order_list = 'order/ro/',\n return_order_issue = 'order/ro/:id/issue/',\n return_order_hold = 'order/ro/:id/hold/',\n return_order_cancel = 'order/ro/:id/cancel/',\n return_order_complete = 'order/ro/:id/complete/',\n return_order_receive = 'order/ro/:id/receive/',\n return_order_line_list = 'order/ro-line/',\n return_order_extra_line_list = 'order/ro-extra-line/',\n\n // Template API endpoints\n label_list = 'label/template/',\n label_print = 'label/print/',\n report_list = 'report/template/',\n report_print = 'report/print/',\n report_snippet = 'report/snippet/',\n report_asset = 'report/asset/',\n\n // Plugin API endpoints\n plugin_list = 'plugins/',\n plugin_setting_list = 'plugins/:plugin/settings/',\n plugin_user_setting_list = 'plugins/:plugin/user-settings/',\n plugin_registry_status = 'plugins/status/',\n plugin_install = 'plugins/install/',\n plugin_reload = 'plugins/reload/',\n plugin_activate = 'plugins/:key/activate/',\n plugin_uninstall = 'plugins/:key/uninstall/',\n plugin_admin = 'plugins/:key/admin/',\n\n // User interface plugin endpoints\n plugin_ui_features_list = 'plugins/ui/features/:feature_type/',\n\n // Special plugin endpoints\n plugin_locate_item = 'locate/',\n\n // Machine API endpoints\n machine_types_list = 'machine/types/',\n machine_driver_list = 'machine/drivers/',\n machine_registry_status = 'machine/status/',\n machine_list = 'machine/',\n machine_restart = 'machine/:machine/restart/',\n machine_setting_list = 'machine/:machine/settings/',\n machine_setting_detail = 'machine/:machine/settings/:config_type/',\n\n // Miscellaneous API endpoints\n attachment_list = 'attachment/',\n error_report_list = 'error-report/',\n project_code_list = 'project-code/',\n custom_unit_list = 'units/',\n notes_image_upload = 'notes-image-upload/',\n email_list = 'admin/email/',\n email_test = 'admin/email/test/',\n config_list = 'admin/config/'\n}\n"],"names":["ApiEndpoints","api_server_info","user_list","user_set_password","user_me","user_profile","user_roles","user_token","user_tokens","user_simple_login","user_reset","user_reset_set","auth_pwd_change","auth_login","auth_login_2fa","auth_session","auth_signup","auth_authenticators","auth_recovery","auth_mfa_reauthenticate","auth_totp","auth_trust","auth_reauthenticate","auth_email","auth_email_verify","auth_providers","auth_provider_redirect","auth_config","currency_list","currency_refresh","all_units","task_overview","task_pending_list","task_scheduled_list","task_failed_list","api_search","settings_global_list","settings_user_list","news","global_status","custom_state_list","version","license","group_list","owner_list","ruleset_list","content_type_list","icons","selectionlist_list","selectionlist_detail","barcode","barcode_history","barcode_link","barcode_unlink","barcode_generate","data_output","import_session_list","import_session_accept_fields","import_session_accept_rows","import_session_column_mapping_list","import_session_row_list","notifications_list","notifications_readall","build_order_list","build_order_issue","build_order_cancel","build_order_hold","build_order_complete","build_output_complete","build_output_create","build_output_scrap","build_output_delete","build_order_auto_allocate","build_order_allocate","build_order_consume","build_order_deallocate","build_line_list","build_item_list","bom_list","bom_item_validate","bom_validate","bom_substitute_list","part_list","part_parameter_list","part_parameter_template_list","part_thumbs_list","part_pricing","part_requirements","part_serial_numbers","part_scheduling","part_pricing_internal","part_pricing_sale","part_stocktake_list","category_list","category_tree","category_parameter_list","related_part_list","part_test_template_list","company_list","contact_list","address_list","supplier_part_list","supplier_part_pricing_list","manufacturer_part_list","manufacturer_part_parameter_list","stock_location_list","stock_location_type_list","stock_location_tree","stock_item_list","stock_tracking_list","stock_test_result_list","stock_transfer","stock_remove","stock_return","stock_add","stock_count","stock_change_status","stock_merge","stock_assign","stock_status","stock_install","stock_uninstall","stock_serialize","stock_serial_info","generate_batch_code","generate_serial_number","purchase_order_list","purchase_order_issue","purchase_order_hold","purchase_order_cancel","purchase_order_complete","purchase_order_line_list","purchase_order_extra_line_list","purchase_order_receive","sales_order_list","sales_order_issue","sales_order_hold","sales_order_cancel","sales_order_ship","sales_order_complete","sales_order_allocate","sales_order_allocate_serials","sales_order_line_list","sales_order_extra_line_list","sales_order_allocation_list","sales_order_shipment_list","sales_order_shipment_complete","return_order_list","return_order_issue","return_order_hold","return_order_cancel","return_order_complete","return_order_receive","return_order_line_list","return_order_extra_line_list","label_list","label_print","report_list","report_print","report_snippet","report_asset","plugin_list","plugin_setting_list","plugin_user_setting_list","plugin_registry_status","plugin_install","plugin_reload","plugin_activate","plugin_uninstall","plugin_admin","plugin_ui_features_list","plugin_locate_item","machine_types_list","machine_driver_list","machine_registry_status","machine_list","machine_restart","machine_setting_list","machine_setting_detail","attachment_list","error_report_list","project_code_list","custom_unit_list","notes_image_upload","email_list","email_test","config_list"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ApiEndpoints.js","sources":["../../lib/enums/ApiEndpoints.tsx"],"sourcesContent":["/*\n * Enumeration of available API endpoints.\n *\n * In the cases where endpoints can be accessed with a primary key,\n * the primary key should be appended to the endpoint.\n * The exception to this is when the endpoint provides an :id parameter.\n */\n\nexport enum ApiEndpoints {\n api_server_info = '',\n\n // User API endpoints\n user_list = 'user/',\n user_set_password = 'user/:id/set-password/',\n user_me = 'user/me/',\n user_profile = 'user/profile/',\n user_roles = 'user/roles/',\n user_token = 'user/token/',\n user_tokens = 'user/tokens/',\n user_simple_login = 'email/generate/',\n\n // User auth endpoints\n user_reset = 'auth/v1/auth/password/request',\n user_reset_set = 'auth/v1/auth/password/reset',\n auth_pwd_change = 'auth/v1/account/password/change',\n auth_login = 'auth/v1/auth/login',\n auth_login_2fa = 'auth/v1/auth/2fa/authenticate',\n auth_session = 'auth/v1/auth/session',\n auth_signup = 'auth/v1/auth/signup',\n auth_authenticators = 'auth/v1/account/authenticators',\n auth_recovery = 'auth/v1/account/authenticators/recovery-codes',\n auth_mfa_reauthenticate = 'auth/v1/auth/2fa/reauthenticate',\n auth_totp = 'auth/v1/account/authenticators/totp',\n auth_trust = 'auth/v1/auth/2fa/trust',\n auth_reauthenticate = 'auth/v1/auth/reauthenticate',\n auth_email = 'auth/v1/account/email',\n auth_email_verify = 'auth/v1/auth/email/verify',\n auth_providers = 'auth/v1/account/providers',\n auth_provider_redirect = 'auth/v1/auth/provider/redirect',\n auth_config = 'auth/v1/config',\n\n // Generic API endpoints\n currency_list = 'currency/exchange/',\n currency_refresh = 'currency/refresh/',\n all_units = 'units/all/',\n task_overview = 'background-task/',\n task_pending_list = 'background-task/pending/',\n task_scheduled_list = 'background-task/scheduled/',\n task_failed_list = 'background-task/failed/',\n api_search = 'search/',\n settings_global_list = 'settings/global/',\n settings_user_list = 'settings/user/',\n news = 'news/',\n global_status = 'generic/status/',\n custom_state_list = 'generic/status/custom/',\n version = 'version/',\n license = 'license/',\n group_list = 'user/group/',\n owner_list = 'user/owner/',\n ruleset_list = 'user/ruleset/',\n content_type_list = 'contenttype/',\n icons = 'icons/',\n selectionlist_list = 'selection/',\n selectionlist_detail = 'selection/:id/',\n\n // Barcode API endpoints\n barcode = 'barcode/',\n barcode_history = 'barcode/history/',\n barcode_link = 'barcode/link/',\n barcode_unlink = 'barcode/unlink/',\n barcode_generate = 'barcode/generate/',\n\n // Data output endpoints\n data_output = 'data-output/',\n\n // Data import endpoints\n import_session_list = 'importer/session/',\n import_session_accept_fields = 'importer/session/:id/accept_fields/',\n import_session_accept_rows = 'importer/session/:id/accept_rows/',\n import_session_column_mapping_list = 'importer/column-mapping/',\n import_session_row_list = 'importer/row/',\n\n // Notification endpoints\n notifications_list = 'notifications/',\n notifications_readall = 'notifications/readall/',\n\n // Build API endpoints\n build_order_list = 'build/',\n build_order_issue = 'build/:id/issue/',\n build_order_cancel = 'build/:id/cancel/',\n build_order_hold = 'build/:id/hold/',\n build_order_complete = 'build/:id/finish/',\n build_output_complete = 'build/:id/complete/',\n build_output_create = 'build/:id/create-output/',\n build_output_scrap = 'build/:id/scrap-outputs/',\n build_output_delete = 'build/:id/delete-outputs/',\n build_order_auto_allocate = 'build/:id/auto-allocate/',\n build_order_allocate = 'build/:id/allocate/',\n build_order_consume = 'build/:id/consume/',\n build_order_deallocate = 'build/:id/unallocate/',\n\n build_line_list = 'build/line/',\n build_item_list = 'build/item/',\n\n bom_list = 'bom/',\n bom_item_validate = 'bom/:id/validate/',\n bom_validate = 'part/:id/bom-validate/',\n bom_substitute_list = 'bom/substitute/',\n\n // Part API endpoints\n part_list = 'part/',\n part_parameter_list = 'part/parameter/',\n part_parameter_template_list = 'part/parameter/template/',\n part_thumbs_list = 'part/thumbs/',\n part_pricing = 'part/:id/pricing/',\n part_requirements = 'part/:id/requirements/',\n part_serial_numbers = 'part/:id/serial-numbers/',\n part_scheduling = 'part/:id/scheduling/',\n part_pricing_internal = 'part/internal-price/',\n part_pricing_sale = 'part/sale-price/',\n part_stocktake_list = 'part/stocktake/',\n category_list = 'part/category/',\n category_tree = 'part/category/tree/',\n category_parameter_list = 'part/category/parameters/',\n related_part_list = 'part/related/',\n part_test_template_list = 'part/test-template/',\n\n // Company API endpoints\n company_list = 'company/',\n contact_list = 'company/contact/',\n address_list = 'company/address/',\n supplier_part_list = 'company/part/',\n supplier_part_pricing_list = 'company/price-break/',\n manufacturer_part_list = 'company/part/manufacturer/',\n manufacturer_part_parameter_list = 'company/part/manufacturer/parameter/',\n\n // Stock location endpoints\n stock_location_list = 'stock/location/',\n stock_location_type_list = 'stock/location-type/',\n stock_location_tree = 'stock/location/tree/',\n\n // Stock item API endpoints\n stock_item_list = 'stock/',\n stock_tracking_list = 'stock/track/',\n stock_test_result_list = 'stock/test/',\n stock_transfer = 'stock/transfer/',\n stock_remove = 'stock/remove/',\n stock_return = 'stock/return/',\n stock_add = 'stock/add/',\n stock_count = 'stock/count/',\n stock_change_status = 'stock/change_status/',\n stock_merge = 'stock/merge/',\n stock_assign = 'stock/assign/',\n stock_status = 'stock/status/',\n stock_install = 'stock/:id/install/',\n stock_uninstall = 'stock/:id/uninstall/',\n stock_serialize = 'stock/:id/serialize/',\n stock_serial_info = 'stock/:id/serial-numbers/',\n\n // Generator API endpoints\n generate_batch_code = 'generate/batch-code/',\n generate_serial_number = 'generate/serial-number/',\n\n // Order API endpoints\n purchase_order_list = 'order/po/',\n purchase_order_issue = 'order/po/:id/issue/',\n purchase_order_hold = 'order/po/:id/hold/',\n purchase_order_cancel = 'order/po/:id/cancel/',\n purchase_order_complete = 'order/po/:id/complete/',\n purchase_order_line_list = 'order/po-line/',\n purchase_order_extra_line_list = 'order/po-extra-line/',\n purchase_order_receive = 'order/po/:id/receive/',\n\n sales_order_list = 'order/so/',\n sales_order_issue = 'order/so/:id/issue/',\n sales_order_hold = 'order/so/:id/hold/',\n sales_order_cancel = 'order/so/:id/cancel/',\n sales_order_ship = 'order/so/:id/ship/',\n sales_order_complete = 'order/so/:id/complete/',\n sales_order_allocate = 'order/so/:id/allocate/',\n sales_order_allocate_serials = 'order/so/:id/allocate-serials/',\n\n sales_order_line_list = 'order/so-line/',\n sales_order_extra_line_list = 'order/so-extra-line/',\n sales_order_allocation_list = 'order/so-allocation/',\n\n sales_order_shipment_list = 'order/so/shipment/',\n sales_order_shipment_complete = 'order/so/shipment/:id/ship/',\n\n return_order_list = 'order/ro/',\n return_order_issue = 'order/ro/:id/issue/',\n return_order_hold = 'order/ro/:id/hold/',\n return_order_cancel = 'order/ro/:id/cancel/',\n return_order_complete = 'order/ro/:id/complete/',\n return_order_receive = 'order/ro/:id/receive/',\n return_order_line_list = 'order/ro-line/',\n return_order_extra_line_list = 'order/ro-extra-line/',\n\n // Template API endpoints\n label_list = 'label/template/',\n label_print = 'label/print/',\n report_list = 'report/template/',\n report_print = 'report/print/',\n report_snippet = 'report/snippet/',\n report_asset = 'report/asset/',\n\n // Plugin API endpoints\n plugin_list = 'plugins/',\n plugin_setting_list = 'plugins/:plugin/settings/',\n plugin_user_setting_list = 'plugins/:plugin/user-settings/',\n plugin_registry_status = 'plugins/status/',\n plugin_install = 'plugins/install/',\n plugin_reload = 'plugins/reload/',\n plugin_activate = 'plugins/:key/activate/',\n plugin_uninstall = 'plugins/:key/uninstall/',\n plugin_admin = 'plugins/:key/admin/',\n\n // User interface plugin endpoints\n plugin_ui_features_list = 'plugins/ui/features/:feature_type/',\n\n // Special plugin endpoints\n plugin_locate_item = 'locate/',\n\n // Machine API endpoints\n machine_types_list = 'machine/types/',\n machine_driver_list = 'machine/drivers/',\n machine_registry_status = 'machine/status/',\n machine_list = 'machine/',\n machine_restart = 'machine/:machine/restart/',\n machine_setting_list = 'machine/:machine/settings/',\n machine_setting_detail = 'machine/:machine/settings/:config_type/',\n\n // Miscellaneous API endpoints\n attachment_list = 'attachment/',\n error_report_list = 'error-report/',\n project_code_list = 'project-code/',\n custom_unit_list = 'units/',\n notes_image_upload = 'notes-image-upload/',\n email_list = 'admin/email/',\n email_test = 'admin/email/test/',\n config_list = 'admin/config/'\n}\n"],"names":["ApiEndpoints","api_server_info","user_list","user_set_password","user_me","user_profile","user_roles","user_token","user_tokens","user_simple_login","user_reset","user_reset_set","auth_pwd_change","auth_login","auth_login_2fa","auth_session","auth_signup","auth_authenticators","auth_recovery","auth_mfa_reauthenticate","auth_totp","auth_trust","auth_reauthenticate","auth_email","auth_email_verify","auth_providers","auth_provider_redirect","auth_config","currency_list","currency_refresh","all_units","task_overview","task_pending_list","task_scheduled_list","task_failed_list","api_search","settings_global_list","settings_user_list","news","global_status","custom_state_list","version","license","group_list","owner_list","ruleset_list","content_type_list","icons","selectionlist_list","selectionlist_detail","barcode","barcode_history","barcode_link","barcode_unlink","barcode_generate","data_output","import_session_list","import_session_accept_fields","import_session_accept_rows","import_session_column_mapping_list","import_session_row_list","notifications_list","notifications_readall","build_order_list","build_order_issue","build_order_cancel","build_order_hold","build_order_complete","build_output_complete","build_output_create","build_output_scrap","build_output_delete","build_order_auto_allocate","build_order_allocate","build_order_consume","build_order_deallocate","build_line_list","build_item_list","bom_list","bom_item_validate","bom_validate","bom_substitute_list","part_list","part_parameter_list","part_parameter_template_list","part_thumbs_list","part_pricing","part_requirements","part_serial_numbers","part_scheduling","part_pricing_internal","part_pricing_sale","part_stocktake_list","category_list","category_tree","category_parameter_list","related_part_list","part_test_template_list","company_list","contact_list","address_list","supplier_part_list","supplier_part_pricing_list","manufacturer_part_list","manufacturer_part_parameter_list","stock_location_list","stock_location_type_list","stock_location_tree","stock_item_list","stock_tracking_list","stock_test_result_list","stock_transfer","stock_remove","stock_return","stock_add","stock_count","stock_change_status","stock_merge","stock_assign","stock_status","stock_install","stock_uninstall","stock_serialize","stock_serial_info","generate_batch_code","generate_serial_number","purchase_order_list","purchase_order_issue","purchase_order_hold","purchase_order_cancel","purchase_order_complete","purchase_order_line_list","purchase_order_extra_line_list","purchase_order_receive","sales_order_list","sales_order_issue","sales_order_hold","sales_order_cancel","sales_order_ship","sales_order_complete","sales_order_allocate","sales_order_allocate_serials","sales_order_line_list","sales_order_extra_line_list","sales_order_allocation_list","sales_order_shipment_list","sales_order_shipment_complete","return_order_list","return_order_issue","return_order_hold","return_order_cancel","return_order_complete","return_order_receive","return_order_line_list","return_order_extra_line_list","label_list","label_print","report_list","report_print","report_snippet","report_asset","plugin_list","plugin_setting_list","plugin_user_setting_list","plugin_registry_status","plugin_install","plugin_reload","plugin_activate","plugin_uninstall","plugin_admin","plugin_ui_features_list","plugin_locate_item","machine_types_list","machine_driver_list","machine_registry_status","machine_list","machine_restart","machine_setting_list","machine_setting_detail","attachment_list","error_report_list","project_code_list","custom_unit_list","notes_image_upload","email_list","email_test","config_list"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelInformation.js","sources":["../../lib/enums/ModelInformation.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport type { InvenTreeIconType } from '../types/Icons';\nimport { ApiEndpoints } from './ApiEndpoints';\nimport type { ModelType } from './ModelType';\n\nexport interface ModelInformationInterface {\n label: string;\n label_multiple: string;\n url_overview?: string;\n url_detail?: string;\n api_endpoint: ApiEndpoints;\n admin_url?: string;\n icon: keyof InvenTreeIconType;\n}\n\nexport interface TranslatableModelInformationInterface\n extends Omit<ModelInformationInterface, 'label' | 'label_multiple'> {\n label: () => string;\n label_multiple: () => string;\n}\n\nexport type ModelDict = {\n [key in keyof typeof ModelType]: TranslatableModelInformationInterface;\n};\n\nexport const ModelInformationDict: ModelDict = {\n part: {\n label: () => t`Part`,\n label_multiple: () => t`Parts`,\n url_overview: '/part/category/index/parts',\n url_detail: '/part/:pk/',\n api_endpoint: ApiEndpoints.part_list,\n admin_url: '/part/part/',\n icon: 'part'\n },\n partparametertemplate: {\n label: () => t`Part Parameter Template`,\n label_multiple: () => t`Part Parameter Templates`,\n url_overview: '/settings/admin/part-parameters',\n url_detail: '/partparametertemplate/:pk/',\n api_endpoint: ApiEndpoints.part_parameter_template_list,\n icon: 'test_templates'\n },\n parttesttemplate: {\n label: () => t`Part Test Template`,\n label_multiple: () => t`Part Test Templates`,\n url_detail: '/parttesttemplate/:pk/',\n api_endpoint: ApiEndpoints.part_test_template_list,\n icon: 'test'\n },\n supplierpart: {\n label: () => t`Supplier Part`,\n label_multiple: () => t`Supplier Parts`,\n url_overview: '/purchasing/index/supplier-parts',\n url_detail: '/purchasing/supplier-part/:pk/',\n api_endpoint: ApiEndpoints.supplier_part_list,\n admin_url: '/company/supplierpart/',\n icon: 'supplier_part'\n },\n manufacturerpart: {\n label: () => t`Manufacturer Part`,\n label_multiple: () => t`Manufacturer Parts`,\n url_overview: '/purchasing/index/manufacturer-parts',\n url_detail: '/purchasing/manufacturer-part/:pk/',\n api_endpoint: ApiEndpoints.manufacturer_part_list,\n admin_url: '/company/manufacturerpart/',\n icon: 'manufacturers'\n },\n partcategory: {\n label: () => t`Part Category`,\n label_multiple: () => t`Part Categories`,\n url_overview: '/part/category/parts/subcategories',\n url_detail: '/part/category/:pk/',\n api_endpoint: ApiEndpoints.category_list,\n admin_url: '/part/partcategory/',\n icon: 'category'\n },\n stockitem: {\n label: () => t`Stock Item`,\n label_multiple: () => t`Stock Items`,\n url_overview: '/stock/location/index/stock-items',\n url_detail: '/stock/item/:pk/',\n api_endpoint: ApiEndpoints.stock_item_list,\n admin_url: '/stock/stockitem/',\n icon: 'stock'\n },\n stocklocation: {\n label: () => t`Stock Location`,\n label_multiple: () => t`Stock Locations`,\n url_overview: '/stock/location',\n url_detail: '/stock/location/:pk/',\n api_endpoint: ApiEndpoints.stock_location_list,\n admin_url: '/stock/stocklocation/',\n icon: 'location'\n },\n stocklocationtype: {\n label: () => t`Stock Location Type`,\n label_multiple: () => t`Stock Location Types`,\n api_endpoint: ApiEndpoints.stock_location_type_list,\n icon: 'location'\n },\n stockhistory: {\n label: () => t`Stock History`,\n label_multiple: () => t`Stock Histories`,\n api_endpoint: ApiEndpoints.stock_tracking_list,\n icon: 'history'\n },\n build: {\n label: () => t`Build`,\n label_multiple: () => t`Builds`,\n url_overview: '/manufacturing/index/buildorders/',\n url_detail: '/manufacturing/build-order/:pk/',\n api_endpoint: ApiEndpoints.build_order_list,\n admin_url: '/build/build/',\n icon: 'build_order'\n },\n buildline: {\n label: () => t`Build Line`,\n label_multiple: () => t`Build Lines`,\n url_overview: '/build/line',\n url_detail: '/build/line/:pk/',\n api_endpoint: ApiEndpoints.build_line_list,\n icon: 'build_order'\n },\n builditem: {\n label: () => t`Build Item`,\n label_multiple: () => t`Build Items`,\n api_endpoint: ApiEndpoints.build_item_list,\n icon: 'build_order'\n },\n company: {\n label: () => t`Company`,\n label_multiple: () => t`Companies`,\n url_detail: '/company/:pk/',\n api_endpoint: ApiEndpoints.company_list,\n admin_url: '/company/company/',\n icon: 'building'\n },\n projectcode: {\n label: () => t`Project Code`,\n label_multiple: () => t`Project Codes`,\n url_detail: '/project-code/:pk/',\n api_endpoint: ApiEndpoints.project_code_list,\n icon: 'list_details'\n },\n purchaseorder: {\n label: () => t`Purchase Order`,\n label_multiple: () => t`Purchase Orders`,\n url_overview: '/purchasing/index/purchaseorders',\n url_detail: '/purchasing/purchase-order/:pk/',\n api_endpoint: ApiEndpoints.purchase_order_list,\n admin_url: '/order/purchaseorder/',\n icon: 'purchase_orders'\n },\n purchaseorderlineitem: {\n label: () => t`Purchase Order Line`,\n label_multiple: () => t`Purchase Order Lines`,\n api_endpoint: ApiEndpoints.purchase_order_line_list,\n icon: 'purchase_orders'\n },\n salesorder: {\n label: () => t`Sales Order`,\n label_multiple: () => t`Sales Orders`,\n url_overview: '/sales/index/salesorders',\n url_detail: '/sales/sales-order/:pk/',\n api_endpoint: ApiEndpoints.sales_order_list,\n admin_url: '/order/salesorder/',\n icon: 'sales_orders'\n },\n salesordershipment: {\n label: () => t`Sales Order Shipment`,\n label_multiple: () => t`Sales Order Shipments`,\n url_detail: '/sales/shipment/:pk/',\n api_endpoint: ApiEndpoints.sales_order_shipment_list,\n icon: 'sales_orders'\n },\n returnorder: {\n label: () => t`Return Order`,\n label_multiple: () => t`Return Orders`,\n url_overview: '/sales/index/returnorders',\n url_detail: '/sales/return-order/:pk/',\n api_endpoint: ApiEndpoints.return_order_list,\n admin_url: '/order/returnorder/',\n icon: 'return_orders'\n },\n returnorderlineitem: {\n label: () => t`Return Order Line Item`,\n label_multiple: () => t`Return Order Line Items`,\n api_endpoint: ApiEndpoints.return_order_line_list,\n icon: 'return_orders'\n },\n address: {\n label: () => t`Address`,\n label_multiple: () => t`Addresses`,\n url_detail: '/address/:pk/',\n api_endpoint: ApiEndpoints.address_list,\n icon: 'address'\n },\n contact: {\n label: () => t`Contact`,\n label_multiple: () => t`Contacts`,\n url_detail: '/contact/:pk/',\n api_endpoint: ApiEndpoints.contact_list,\n icon: 'group'\n },\n owner: {\n label: () => t`Owner`,\n label_multiple: () => t`Owners`,\n url_detail: '/owner/:pk/',\n api_endpoint: ApiEndpoints.owner_list,\n icon: 'group'\n },\n user: {\n label: () => t`User`,\n label_multiple: () => t`Users`,\n url_detail: '/core/user/:pk/',\n api_endpoint: ApiEndpoints.user_list,\n icon: 'user'\n },\n group: {\n label: () => t`Group`,\n label_multiple: () => t`Groups`,\n url_detail: '/core/group/:pk/',\n api_endpoint: ApiEndpoints.group_list,\n admin_url: '/auth/group/',\n icon: 'group'\n },\n importsession: {\n label: () => t`Import Session`,\n label_multiple: () => t`Import Sessions`,\n url_overview: '/settings/admin/import',\n url_detail: '/import/:pk/',\n api_endpoint: ApiEndpoints.import_session_list,\n icon: 'import'\n },\n labeltemplate: {\n label: () => t`Label Template`,\n label_multiple: () => t`Label Templates`,\n url_overview: '/settings/admin/labels',\n url_detail: '/settings/admin/labels/:pk/',\n api_endpoint: ApiEndpoints.label_list,\n icon: 'labels'\n },\n reporttemplate: {\n label: () => t`Report Template`,\n label_multiple: () => t`Report Templates`,\n url_overview: '/settings/admin/reports',\n url_detail: '/settings/admin/reports/:pk/',\n api_endpoint: ApiEndpoints.report_list,\n icon: 'reports'\n },\n pluginconfig: {\n label: () => t`Plugin Configuration`,\n label_multiple: () => t`Plugin Configurations`,\n url_overview: '/settings/admin/plugin',\n url_detail: '/settings/admin/plugin/:pk/',\n api_endpoint: ApiEndpoints.plugin_list,\n icon: 'plugin'\n },\n contenttype: {\n label: () => t`Content Type`,\n label_multiple: () => t`Content Types`,\n api_endpoint: ApiEndpoints.content_type_list,\n icon: 'list_details'\n },\n selectionlist: {\n label: () => t`Selection List`,\n label_multiple: () => t`Selection Lists`,\n url_overview: '/settings/admin/part-parameters',\n api_endpoint: ApiEndpoints.selectionlist_list,\n icon: 'list_details'\n },\n error: {\n label: () => t`Error`,\n label_multiple: () => t`Errors`,\n api_endpoint: ApiEndpoints.error_report_list,\n url_overview: '/settings/admin/errors',\n url_detail: '/settings/admin/errors/:pk/',\n icon: 'exclamation'\n }\n};\n"],"names":["ModelInformationDict","part","label","_i18n","_","id","label_multiple","url_overview","url_detail","api_endpoint","ApiEndpoints","part_list","admin_url","icon","partparametertemplate","part_parameter_template_list","parttesttemplate","part_test_template_list","supplierpart","supplier_part_list","manufacturerpart","manufacturer_part_list","partcategory","category_list","stockitem","stock_item_list","stocklocation","stock_location_list","stocklocationtype","stock_location_type_list","stockhistory","stock_tracking_list","build","build_order_list","buildline","build_line_list","builditem","build_item_list","company","company_list","projectcode","project_code_list","purchaseorder","purchase_order_list","purchaseorderlineitem","purchase_order_line_list","salesorder","sales_order_list","salesordershipment","sales_order_shipment_list","returnorder","return_order_list","returnorderlineitem","return_order_line_list","address","address_list","contact","contact_list","owner","owner_list","user","user_list","group","group_list","importsession","import_session_list","labeltemplate","label_list","reporttemplate","report_list","pluginconfig","plugin_list","contenttype","content_type_list","selectionlist","selectionlist_list","error","error_report_list"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ModelInformation.js","sources":["../../lib/enums/ModelInformation.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport type { InvenTreeIconType } from '../types/Icons';\nimport { ApiEndpoints } from './ApiEndpoints';\nimport type { ModelType } from './ModelType';\n\nexport interface ModelInformationInterface {\n label: string;\n label_multiple: string;\n url_overview?: string;\n url_detail?: string;\n api_endpoint: ApiEndpoints;\n admin_url?: string;\n icon: keyof InvenTreeIconType;\n}\n\nexport interface TranslatableModelInformationInterface\n extends Omit<ModelInformationInterface, 'label' | 'label_multiple'> {\n label: () => string;\n label_multiple: () => string;\n}\n\nexport type ModelDict = {\n [key in keyof typeof ModelType]: TranslatableModelInformationInterface;\n};\n\nexport const ModelInformationDict: ModelDict = {\n part: {\n label: () => t`Part`,\n label_multiple: () => t`Parts`,\n url_overview: '/part/category/index/parts',\n url_detail: '/part/:pk/',\n api_endpoint: ApiEndpoints.part_list,\n admin_url: '/part/part/',\n icon: 'part'\n },\n partparametertemplate: {\n label: () => t`Part Parameter Template`,\n label_multiple: () => t`Part Parameter Templates`,\n url_overview: '/settings/admin/part-parameters',\n url_detail: '/partparametertemplate/:pk/',\n api_endpoint: ApiEndpoints.part_parameter_template_list,\n icon: 'test_templates'\n },\n parttesttemplate: {\n label: () => t`Part Test Template`,\n label_multiple: () => t`Part Test Templates`,\n url_detail: '/parttesttemplate/:pk/',\n api_endpoint: ApiEndpoints.part_test_template_list,\n icon: 'test'\n },\n supplierpart: {\n label: () => t`Supplier Part`,\n label_multiple: () => t`Supplier Parts`,\n url_overview: '/purchasing/index/supplier-parts',\n url_detail: '/purchasing/supplier-part/:pk/',\n api_endpoint: ApiEndpoints.supplier_part_list,\n admin_url: '/company/supplierpart/',\n icon: 'supplier_part'\n },\n manufacturerpart: {\n label: () => t`Manufacturer Part`,\n label_multiple: () => t`Manufacturer Parts`,\n url_overview: '/purchasing/index/manufacturer-parts',\n url_detail: '/purchasing/manufacturer-part/:pk/',\n api_endpoint: ApiEndpoints.manufacturer_part_list,\n admin_url: '/company/manufacturerpart/',\n icon: 'manufacturers'\n },\n partcategory: {\n label: () => t`Part Category`,\n label_multiple: () => t`Part Categories`,\n url_overview: '/part/category/parts/subcategories',\n url_detail: '/part/category/:pk/',\n api_endpoint: ApiEndpoints.category_list,\n admin_url: '/part/partcategory/',\n icon: 'category'\n },\n stockitem: {\n label: () => t`Stock Item`,\n label_multiple: () => t`Stock Items`,\n url_overview: '/stock/location/index/stock-items',\n url_detail: '/stock/item/:pk/',\n api_endpoint: ApiEndpoints.stock_item_list,\n admin_url: '/stock/stockitem/',\n icon: 'stock'\n },\n stocklocation: {\n label: () => t`Stock Location`,\n label_multiple: () => t`Stock Locations`,\n url_overview: '/stock/location',\n url_detail: '/stock/location/:pk/',\n api_endpoint: ApiEndpoints.stock_location_list,\n admin_url: '/stock/stocklocation/',\n icon: 'location'\n },\n stocklocationtype: {\n label: () => t`Stock Location Type`,\n label_multiple: () => t`Stock Location Types`,\n api_endpoint: ApiEndpoints.stock_location_type_list,\n icon: 'location'\n },\n stockhistory: {\n label: () => t`Stock History`,\n label_multiple: () => t`Stock Histories`,\n api_endpoint: ApiEndpoints.stock_tracking_list,\n icon: 'history'\n },\n build: {\n label: () => t`Build`,\n label_multiple: () => t`Builds`,\n url_overview: '/manufacturing/index/buildorders/',\n url_detail: '/manufacturing/build-order/:pk/',\n api_endpoint: ApiEndpoints.build_order_list,\n admin_url: '/build/build/',\n icon: 'build_order'\n },\n buildline: {\n label: () => t`Build Line`,\n label_multiple: () => t`Build Lines`,\n url_overview: '/build/line',\n url_detail: '/build/line/:pk/',\n api_endpoint: ApiEndpoints.build_line_list,\n icon: 'build_order'\n },\n builditem: {\n label: () => t`Build Item`,\n label_multiple: () => t`Build Items`,\n api_endpoint: ApiEndpoints.build_item_list,\n icon: 'build_order'\n },\n company: {\n label: () => t`Company`,\n label_multiple: () => t`Companies`,\n url_detail: '/company/:pk/',\n api_endpoint: ApiEndpoints.company_list,\n admin_url: '/company/company/',\n icon: 'building'\n },\n projectcode: {\n label: () => t`Project Code`,\n label_multiple: () => t`Project Codes`,\n url_detail: '/project-code/:pk/',\n api_endpoint: ApiEndpoints.project_code_list,\n icon: 'list_details'\n },\n purchaseorder: {\n label: () => t`Purchase Order`,\n label_multiple: () => t`Purchase Orders`,\n url_overview: '/purchasing/index/purchaseorders',\n url_detail: '/purchasing/purchase-order/:pk/',\n api_endpoint: ApiEndpoints.purchase_order_list,\n admin_url: '/order/purchaseorder/',\n icon: 'purchase_orders'\n },\n purchaseorderlineitem: {\n label: () => t`Purchase Order Line`,\n label_multiple: () => t`Purchase Order Lines`,\n api_endpoint: ApiEndpoints.purchase_order_line_list,\n icon: 'purchase_orders'\n },\n salesorder: {\n label: () => t`Sales Order`,\n label_multiple: () => t`Sales Orders`,\n url_overview: '/sales/index/salesorders',\n url_detail: '/sales/sales-order/:pk/',\n api_endpoint: ApiEndpoints.sales_order_list,\n admin_url: '/order/salesorder/',\n icon: 'sales_orders'\n },\n salesordershipment: {\n label: () => t`Sales Order Shipment`,\n label_multiple: () => t`Sales Order Shipments`,\n url_detail: '/sales/shipment/:pk/',\n api_endpoint: ApiEndpoints.sales_order_shipment_list,\n icon: 'sales_orders'\n },\n returnorder: {\n label: () => t`Return Order`,\n label_multiple: () => t`Return Orders`,\n url_overview: '/sales/index/returnorders',\n url_detail: '/sales/return-order/:pk/',\n api_endpoint: ApiEndpoints.return_order_list,\n admin_url: '/order/returnorder/',\n icon: 'return_orders'\n },\n returnorderlineitem: {\n label: () => t`Return Order Line Item`,\n label_multiple: () => t`Return Order Line Items`,\n api_endpoint: ApiEndpoints.return_order_line_list,\n icon: 'return_orders'\n },\n address: {\n label: () => t`Address`,\n label_multiple: () => t`Addresses`,\n url_detail: '/address/:pk/',\n api_endpoint: ApiEndpoints.address_list,\n icon: 'address'\n },\n contact: {\n label: () => t`Contact`,\n label_multiple: () => t`Contacts`,\n url_detail: '/contact/:pk/',\n api_endpoint: ApiEndpoints.contact_list,\n icon: 'group'\n },\n owner: {\n label: () => t`Owner`,\n label_multiple: () => t`Owners`,\n url_detail: '/owner/:pk/',\n api_endpoint: ApiEndpoints.owner_list,\n icon: 'group'\n },\n user: {\n label: () => t`User`,\n label_multiple: () => t`Users`,\n url_detail: '/core/user/:pk/',\n api_endpoint: ApiEndpoints.user_list,\n icon: 'user'\n },\n group: {\n label: () => t`Group`,\n label_multiple: () => t`Groups`,\n url_detail: '/core/group/:pk/',\n api_endpoint: ApiEndpoints.group_list,\n admin_url: '/auth/group/',\n icon: 'group'\n },\n importsession: {\n label: () => t`Import Session`,\n label_multiple: () => t`Import Sessions`,\n url_overview: '/settings/admin/import',\n url_detail: '/import/:pk/',\n api_endpoint: ApiEndpoints.import_session_list,\n icon: 'import'\n },\n labeltemplate: {\n label: () => t`Label Template`,\n label_multiple: () => t`Label Templates`,\n url_overview: '/settings/admin/labels',\n url_detail: '/settings/admin/labels/:pk/',\n api_endpoint: ApiEndpoints.label_list,\n icon: 'labels'\n },\n reporttemplate: {\n label: () => t`Report Template`,\n label_multiple: () => t`Report Templates`,\n url_overview: '/settings/admin/reports',\n url_detail: '/settings/admin/reports/:pk/',\n api_endpoint: ApiEndpoints.report_list,\n icon: 'reports'\n },\n pluginconfig: {\n label: () => t`Plugin Configuration`,\n label_multiple: () => t`Plugin Configurations`,\n url_overview: '/settings/admin/plugin',\n url_detail: '/settings/admin/plugin/:pk/',\n api_endpoint: ApiEndpoints.plugin_list,\n icon: 'plugin'\n },\n contenttype: {\n label: () => t`Content Type`,\n label_multiple: () => t`Content Types`,\n api_endpoint: ApiEndpoints.content_type_list,\n icon: 'list_details'\n },\n selectionlist: {\n label: () => t`Selection List`,\n label_multiple: () => t`Selection Lists`,\n url_overview: '/settings/admin/part-parameters',\n api_endpoint: ApiEndpoints.selectionlist_list,\n icon: 'list_details'\n },\n error: {\n label: () => t`Error`,\n label_multiple: () => t`Errors`,\n api_endpoint: ApiEndpoints.error_report_list,\n url_overview: '/settings/admin/errors',\n url_detail: '/settings/admin/errors/:pk/',\n icon: 'exclamation'\n }\n};\n"],"names":["ModelInformationDict","part","label","_i18n","_","id","label_multiple","url_overview","url_detail","api_endpoint","ApiEndpoints","part_list","admin_url","icon","partparametertemplate","part_parameter_template_list","parttesttemplate","part_test_template_list","supplierpart","supplier_part_list","manufacturerpart","manufacturer_part_list","partcategory","category_list","stockitem","stock_item_list","stocklocation","stock_location_list","stocklocationtype","stock_location_type_list","stockhistory","stock_tracking_list","build","build_order_list","buildline","build_line_list","builditem","build_item_list","company","company_list","projectcode","project_code_list","purchaseorder","purchase_order_list","purchaseorderlineitem","purchase_order_line_list","salesorder","sales_order_list","salesordershipment","sales_order_shipment_list","returnorder","return_order_list","returnorderlineitem","return_order_line_list","address","address_list","contact","contact_list","owner","owner_list","user","user_list","group","group_list","importsession","import_session_list","labeltemplate","label_list","reporttemplate","report_list","pluginconfig","plugin_list","contenttype","content_type_list","selectionlist","selectionlist_list","error","error_report_list"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelType.js","sources":["../../lib/enums/ModelType.tsx"],"sourcesContent":["/*\n * Enumeration of available API model types\n */\nexport enum ModelType {\n part = 'part',\n supplierpart = 'supplierpart',\n manufacturerpart = 'manufacturerpart',\n partcategory = 'partcategory',\n partparametertemplate = 'partparametertemplate',\n parttesttemplate = 'parttesttemplate',\n projectcode = 'projectcode',\n stockitem = 'stockitem',\n stocklocation = 'stocklocation',\n stocklocationtype = 'stocklocationtype',\n stockhistory = 'stockhistory',\n build = 'build',\n buildline = 'buildline',\n builditem = 'builditem',\n company = 'company',\n purchaseorder = 'purchaseorder',\n purchaseorderlineitem = 'purchaseorderlineitem',\n salesorder = 'salesorder',\n salesordershipment = 'salesordershipment',\n returnorder = 'returnorder',\n returnorderlineitem = 'returnorderlineitem',\n importsession = 'importsession',\n address = 'address',\n contact = 'contact',\n owner = 'owner',\n user = 'user',\n group = 'group',\n reporttemplate = 'reporttemplate',\n labeltemplate = 'labeltemplate',\n pluginconfig = 'pluginconfig',\n contenttype = 'contenttype',\n selectionlist = 'selectionlist',\n error = 'error'\n}\n"],"names":["ModelType","part","supplierpart","manufacturerpart","partcategory","partparametertemplate","parttesttemplate","projectcode","stockitem","stocklocation","stocklocationtype","stockhistory","build","buildline","builditem","company","purchaseorder","purchaseorderlineitem","salesorder","salesordershipment","returnorder","returnorderlineitem","importsession","address","contact","owner","user","group","reporttemplate","labeltemplate","pluginconfig","contenttype","selectionlist","error"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ModelType.js","sources":["../../lib/enums/ModelType.tsx"],"sourcesContent":["/*\n * Enumeration of available API model types\n */\nexport enum ModelType {\n part = 'part',\n supplierpart = 'supplierpart',\n manufacturerpart = 'manufacturerpart',\n partcategory = 'partcategory',\n partparametertemplate = 'partparametertemplate',\n parttesttemplate = 'parttesttemplate',\n projectcode = 'projectcode',\n stockitem = 'stockitem',\n stocklocation = 'stocklocation',\n stocklocationtype = 'stocklocationtype',\n stockhistory = 'stockhistory',\n build = 'build',\n buildline = 'buildline',\n builditem = 'builditem',\n company = 'company',\n purchaseorder = 'purchaseorder',\n purchaseorderlineitem = 'purchaseorderlineitem',\n salesorder = 'salesorder',\n salesordershipment = 'salesordershipment',\n returnorder = 'returnorder',\n returnorderlineitem = 'returnorderlineitem',\n importsession = 'importsession',\n address = 'address',\n contact = 'contact',\n owner = 'owner',\n user = 'user',\n group = 'group',\n reporttemplate = 'reporttemplate',\n labeltemplate = 'labeltemplate',\n pluginconfig = 'pluginconfig',\n contenttype = 'contenttype',\n selectionlist = 'selectionlist',\n error = 'error'\n}\n"],"names":["ModelType","part","supplierpart","manufacturerpart","partcategory","partparametertemplate","parttesttemplate","projectcode","stockitem","stocklocation","stocklocationtype","stockhistory","build","buildline","builditem","company","purchaseorder","purchaseorderlineitem","salesorder","salesordershipment","returnorder","returnorderlineitem","importsession","address","contact","owner","user","group","reporttemplate","labeltemplate","pluginconfig","contenttype","selectionlist","error"],"mappings":"AAGO,IAAKA,8BAAAA,eAAL;AACLC,aAAAA,MAAAA,IAAO;AACPC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,kBAAAA,IAAmB;AACnBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,uBAAAA,IAAwB;AACxBC,aAAAA,kBAAAA,IAAmB;AACnBC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,mBAAAA,IAAoB;AACpBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,uBAAAA,IAAwB;AACxBC,aAAAA,YAAAA,IAAa;AACbC,aAAAA,oBAAAA,IAAqB;AACrBC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,qBAAAA,IAAsB;AACtBC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,MAAAA,IAAO;AACPC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,gBAAAA,IAAiB;AACjBC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,OAAAA,IAAQ;AAjCEjC,SAAAA;AAAAA,GAAAA,aAAAA,CAAAA,CAAAA;"}
|
package/dist/enums/Roles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Roles.js","sources":["../../lib/enums/Roles.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\n\n/*\n * Enumeration of available user role groups\n */\nexport enum UserRoles {\n admin = 'admin',\n build = 'build',\n part = 'part',\n part_category = 'part_category',\n purchase_order = 'purchase_order',\n return_order = 'return_order',\n sales_order = 'sales_order',\n stock = 'stock',\n stock_location = 'stock_location'\n}\n\n/*\n * Enumeration of available user permissions within each role group\n */\nexport enum UserPermissions {\n view = 'view',\n add = 'add',\n change = 'change',\n delete = 'delete'\n}\n\nexport function userRoleLabel(role: UserRoles): string {\n switch (role) {\n case UserRoles.admin:\n return t`Admin`;\n case UserRoles.build:\n return t`Build Orders`;\n case UserRoles.part:\n return t`Parts`;\n case UserRoles.part_category:\n return t`Part Categories`;\n case UserRoles.purchase_order:\n return t`Purchase Orders`;\n case UserRoles.return_order:\n return t`Return Orders`;\n case UserRoles.sales_order:\n return t`Sales Orders`;\n case UserRoles.stock:\n return t`Stock Items`;\n case UserRoles.stock_location:\n return t`Stock Location`;\n default:\n return role as string;\n }\n}\n"],"names":["UserRoles","admin","build","part","part_category","purchase_order","return_order","sales_order","stock","stock_location","UserPermissions","view","add","change","delete"],"mappings":"AAAA,OAAA,YAAA,EAAA;
|
|
1
|
+
{"version":3,"file":"Roles.js","sources":["../../lib/enums/Roles.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\n\n/*\n * Enumeration of available user role groups\n */\nexport enum UserRoles {\n admin = 'admin',\n build = 'build',\n part = 'part',\n part_category = 'part_category',\n purchase_order = 'purchase_order',\n return_order = 'return_order',\n sales_order = 'sales_order',\n stock = 'stock',\n stock_location = 'stock_location'\n}\n\n/*\n * Enumeration of available user permissions within each role group\n */\nexport enum UserPermissions {\n view = 'view',\n add = 'add',\n change = 'change',\n delete = 'delete'\n}\n\nexport function userRoleLabel(role: UserRoles): string {\n switch (role) {\n case UserRoles.admin:\n return t`Admin`;\n case UserRoles.build:\n return t`Build Orders`;\n case UserRoles.part:\n return t`Parts`;\n case UserRoles.part_category:\n return t`Part Categories`;\n case UserRoles.purchase_order:\n return t`Purchase Orders`;\n case UserRoles.return_order:\n return t`Return Orders`;\n case UserRoles.sales_order:\n return t`Sales Orders`;\n case UserRoles.stock:\n return t`Stock Items`;\n case UserRoles.stock_location:\n return t`Stock Location`;\n default:\n return role as string;\n }\n}\n"],"names":["UserRoles","admin","build","part","part_category","purchase_order","return_order","sales_order","stock","stock_location","UserPermissions","view","add","change","delete"],"mappings":"AAAA,OAAA,YAAA,EAAA;AAKO,IAAKA,8BAAAA,eAAL;AACLC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,MAAAA,IAAO;AACPC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,gBAAAA,IAAiB;AACjBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,gBAAAA,IAAiB;AATPT,SAAAA;AAAAA,GAAAA,aAAAA,CAAAA,CAAAA;AAeL,IAAKU,oCAAAA,qBAAL;AACLC,mBAAAA,MAAAA,IAAO;AACPC,mBAAAA,KAAAA,IAAM;AACNC,mBAAAA,QAAAA,IAAS;AACTC,mBAAAA,QAAAA,IAAS;AAJCJ,SAAAA;AAAAA,GAAAA,mBAAAA,CAAAA,CAAAA;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Api.js","sources":["../../lib/functions/Api.tsx"],"sourcesContent":["import type { ApiEndpoints } from '../enums/ApiEndpoints';\nimport type { PathParams } from '../types/Core';\n\n/**\n * Function to return the API prefix.\n * For now it is fixed, but may be configurable in the future.\n */\nexport function apiPrefix(): string {\n return '/api/';\n}\n\n/**\n * Construct an API URL with an endpoint and (optional) pk value\n */\nexport function apiUrl(\n endpoint: ApiEndpoints | string,\n pk?: any,\n pathParams?: PathParams\n): string {\n let _url = endpoint;\n\n // If the URL does not start with a '/', add the API prefix\n if (!_url.startsWith('/')) {\n _url = apiPrefix() + _url;\n }\n\n if (_url && pk) {\n if (_url.indexOf(':id') >= 0) {\n _url = _url.replace(':id', `${pk}`);\n } else {\n _url += `${pk}/`;\n }\n }\n\n if (_url && pathParams) {\n for (const key in pathParams) {\n _url = _url.replace(`:${key}`, `${pathParams[key]}`);\n }\n }\n\n return _url;\n}\n"],"names":["apiPrefix","apiUrl","endpoint","pk","pathParams","_url","startsWith","indexOf","replace","key"],"mappings":"AAOO,SAASA,YAAoB;
|
|
1
|
+
{"version":3,"file":"Api.js","sources":["../../lib/functions/Api.tsx"],"sourcesContent":["import type { ApiEndpoints } from '../enums/ApiEndpoints';\nimport type { PathParams } from '../types/Core';\n\n/**\n * Function to return the API prefix.\n * For now it is fixed, but may be configurable in the future.\n */\nexport function apiPrefix(): string {\n return '/api/';\n}\n\n/**\n * Construct an API URL with an endpoint and (optional) pk value\n */\nexport function apiUrl(\n endpoint: ApiEndpoints | string,\n pk?: any,\n pathParams?: PathParams\n): string {\n let _url = endpoint;\n\n // If the URL does not start with a '/', add the API prefix\n if (!_url.startsWith('/')) {\n _url = apiPrefix() + _url;\n }\n\n if (_url && pk) {\n if (_url.indexOf(':id') >= 0) {\n _url = _url.replace(':id', `${pk}`);\n } else {\n _url += `${pk}/`;\n }\n }\n\n if (_url && pathParams) {\n for (const key in pathParams) {\n _url = _url.replace(`:${key}`, `${pathParams[key]}`);\n }\n }\n\n return _url;\n}\n"],"names":["apiPrefix","apiUrl","endpoint","pk","pathParams","_url","startsWith","indexOf","replace","key"],"mappings":"AAOO,SAASA,YAAoB;AAClC,SAAO;AACT;AAKO,SAASC,OACdC,UACAC,IACAC,YACQ;AACR,MAAIC,OAAOH;AAGX,MAAI,CAACG,KAAKC,WAAW,GAAG,GAAG;AACzBD,WAAOL,cAAcK;AAAAA,EACvB;AAEA,MAAIA,QAAQF,IAAI;AACd,QAAIE,KAAKE,QAAQ,KAAK,KAAK,GAAG;AAC5BF,aAAOA,KAAKG,QAAQ,OAAO,GAAGL,EAAE,EAAE;AAAA,IACpC,OAAO;AACLE,cAAQ,GAAGF,EAAE;AAAA,IACf;AAAA,EACF;AAEA,MAAIE,QAAQD,YAAY;AACtB,eAAWK,OAAOL,YAAY;AAC5BC,aAAOA,KAAKG,QAAQ,IAAIC,GAAG,IAAI,GAAGL,WAAWK,GAAG,CAAC,EAAE;AAAA,IACrD;AAAA,EACF;AAEA,SAAOJ;AACT;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Conversion.js","sources":["../../lib/functions/Conversion.tsx"],"sourcesContent":["/*\n * Determine if the provided value is \"true\":\n *\n * Many settings stored on the server are true/false,\n * but stored as string values, \"true\" / \"false\".\n *\n * This function provides a wrapper to ensure that the return type is boolean\n */\nexport function isTrue(value: any): boolean {\n if (value === true) {\n return true;\n }\n\n if (value === false) {\n return false;\n }\n\n const s = String(value).trim().toLowerCase();\n\n return ['true', 'yes', '1', 'on', 't', 'y'].includes(s);\n}\n\n/*\n * Resolve a nested item in an object.\n * Returns the resolved item, if it exists.\n *\n * e.g. resolveItem(data, \"sub.key.accessor\")\n *\n * Allows for retrieval of nested items in an object.\n */\nexport function resolveItem(obj: any, path: string): any {\n const properties = path.split('.');\n return properties.reduce((prev, curr) => prev?.[curr], obj);\n}\n\nexport function identifierString(value: string): string {\n // Convert an input string e.g. \"Hello World\" into a string that can be used as an identifier, e.g. \"hello-world\"\n\n value = value || '-';\n\n return value.toLowerCase().replace(/[^a-z0-9]/g, '-');\n}\n"],"names":["isTrue","value","s","String","trim","toLowerCase","includes","identifierString","replace"],"mappings":"AAQO,SAASA,OAAOC,OAAqB;AAC1C,MAAIA,UAAU,MAAM;
|
|
1
|
+
{"version":3,"file":"Conversion.js","sources":["../../lib/functions/Conversion.tsx"],"sourcesContent":["/*\n * Determine if the provided value is \"true\":\n *\n * Many settings stored on the server are true/false,\n * but stored as string values, \"true\" / \"false\".\n *\n * This function provides a wrapper to ensure that the return type is boolean\n */\nexport function isTrue(value: any): boolean {\n if (value === true) {\n return true;\n }\n\n if (value === false) {\n return false;\n }\n\n const s = String(value).trim().toLowerCase();\n\n return ['true', 'yes', '1', 'on', 't', 'y'].includes(s);\n}\n\n/*\n * Resolve a nested item in an object.\n * Returns the resolved item, if it exists.\n *\n * e.g. resolveItem(data, \"sub.key.accessor\")\n *\n * Allows for retrieval of nested items in an object.\n */\nexport function resolveItem(obj: any, path: string): any {\n const properties = path.split('.');\n return properties.reduce((prev, curr) => prev?.[curr], obj);\n}\n\nexport function identifierString(value: string): string {\n // Convert an input string e.g. \"Hello World\" into a string that can be used as an identifier, e.g. \"hello-world\"\n\n value = value || '-';\n\n return value.toLowerCase().replace(/[^a-z0-9]/g, '-');\n}\n"],"names":["isTrue","value","s","String","trim","toLowerCase","includes","identifierString","replace"],"mappings":"AAQO,SAASA,OAAOC,OAAqB;AAC1C,MAAIA,UAAU,MAAM;AAClB,WAAO;AAAA,EACT;AAEA,MAAIA,UAAU,OAAO;AACnB,WAAO;AAAA,EACT;AAEA,QAAMC,IAAIC,OAAOF,KAAK,EAAEG,KAAAA,EAAOC,YAAAA;AAE/B,SAAO,CAAC,QAAQ,OAAO,KAAK,MAAM,KAAK,GAAG,EAAEC,SAASJ,CAAC;AACxD;AAeO,SAASK,iBAAiBN,OAAuB;AAGtDA,UAAQA,SAAS;AAEjB,SAAOA,MAAMI,YAAAA,EAAcG,QAAQ,cAAc,GAAG;AACtD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Formatting.js","sources":["../../lib/functions/Formatting.tsx"],"sourcesContent":["export interface FormatDecmimalOptionsInterface {\n digits?: number;\n minDigits?: number;\n locale?: string;\n}\n\nexport interface FormatCurrencyOptionsInterface {\n digits?: number;\n minDigits?: number;\n currency?: string;\n locale?: string;\n multiplier?: number;\n}\n\nexport function formatDecimal(\n value: number | null | undefined,\n options: FormatDecmimalOptionsInterface = {}\n) {\n const locale = options.locale || navigator.language || 'en-US';\n\n if (value === null || value === undefined) {\n return value;\n }\n\n try {\n const formatter = new Intl.NumberFormat(locale, {\n style: 'decimal',\n maximumFractionDigits: options.digits ?? 6,\n minimumFractionDigits: options.minDigits ?? 0\n });\n\n return formatter.format(value);\n } catch (e) {\n console.error('Error formatting decimal:', e);\n // Return the unformatted value if formatting fails\n return value;\n }\n}\n\n/*\n * format currency (money) value based on current settings\n *\n * Options:\n * - currency: Currency code (uses default value if none provided)\n * - locale: Locale specified (uses default value if none provided)\n * - digits: Maximum number of significant digits (default = 10)\n */\nexport function formatCurrencyValue(\n value: number | string | null | undefined,\n options: FormatCurrencyOptionsInterface = {}\n) {\n if (value == null || value == undefined) {\n return null;\n }\n\n value = Number.parseFloat(value.toString());\n\n if (Number.isNaN(value) || !Number.isFinite(value)) {\n return null;\n }\n\n value *= options.multiplier ?? 1;\n\n // Extract locale information\n const locale = options.locale || navigator.language || 'en-US';\n\n const minDigits = options.minDigits ?? 0;\n const maxDigits = options.digits ?? 6;\n\n try {\n const formatter = new Intl.NumberFormat(locale, {\n style: 'currency',\n currency: options.currency || 'USD',\n maximumFractionDigits: Math.max(minDigits, maxDigits),\n minimumFractionDigits: Math.min(minDigits, maxDigits)\n });\n\n return formatter.format(value);\n } catch (e) {\n console.error('Error formatting currency:', e);\n // Return the unformatted value if formatting fails\n return value;\n }\n}\n\n/*\n * Format a file size (in bytes) into a human-readable format\n */\nexport function formatFileSize(size: number) {\n const suffixes: string[] = ['B', 'KB', 'MB', 'GB'];\n\n let idx = 0;\n\n while (size > 1024 && idx < suffixes.length) {\n size /= 1024;\n idx++;\n }\n\n return `${size.toFixed(2)} ${suffixes[idx]}`;\n}\n"],"names":["formatDecimal","value","options","locale","navigator","language","undefined","formatter","Intl","NumberFormat","style","maximumFractionDigits","digits","minimumFractionDigits","minDigits","format","e","error","formatCurrencyValue","Number","parseFloat","toString","isNaN","isFinite","multiplier","maxDigits","currency","Math","max","min","formatFileSize","size","suffixes","idx","length","toFixed"],"mappings":"AAcO,SAASA,cACdC,OACAC,UAA0C,IAC1C;AACA,QAAMC,SAASD,QAAQC,UAAUC,UAAUC,YAAY;
|
|
1
|
+
{"version":3,"file":"Formatting.js","sources":["../../lib/functions/Formatting.tsx"],"sourcesContent":["export interface FormatDecmimalOptionsInterface {\n digits?: number;\n minDigits?: number;\n locale?: string;\n}\n\nexport interface FormatCurrencyOptionsInterface {\n digits?: number;\n minDigits?: number;\n currency?: string;\n locale?: string;\n multiplier?: number;\n}\n\nexport function formatDecimal(\n value: number | null | undefined,\n options: FormatDecmimalOptionsInterface = {}\n) {\n const locale = options.locale || navigator.language || 'en-US';\n\n if (value === null || value === undefined) {\n return value;\n }\n\n try {\n const formatter = new Intl.NumberFormat(locale, {\n style: 'decimal',\n maximumFractionDigits: options.digits ?? 6,\n minimumFractionDigits: options.minDigits ?? 0\n });\n\n return formatter.format(value);\n } catch (e) {\n console.error('Error formatting decimal:', e);\n // Return the unformatted value if formatting fails\n return value;\n }\n}\n\n/*\n * format currency (money) value based on current settings\n *\n * Options:\n * - currency: Currency code (uses default value if none provided)\n * - locale: Locale specified (uses default value if none provided)\n * - digits: Maximum number of significant digits (default = 10)\n */\nexport function formatCurrencyValue(\n value: number | string | null | undefined,\n options: FormatCurrencyOptionsInterface = {}\n) {\n if (value == null || value == undefined) {\n return null;\n }\n\n value = Number.parseFloat(value.toString());\n\n if (Number.isNaN(value) || !Number.isFinite(value)) {\n return null;\n }\n\n value *= options.multiplier ?? 1;\n\n // Extract locale information\n const locale = options.locale || navigator.language || 'en-US';\n\n const minDigits = options.minDigits ?? 0;\n const maxDigits = options.digits ?? 6;\n\n try {\n const formatter = new Intl.NumberFormat(locale, {\n style: 'currency',\n currency: options.currency || 'USD',\n maximumFractionDigits: Math.max(minDigits, maxDigits),\n minimumFractionDigits: Math.min(minDigits, maxDigits)\n });\n\n return formatter.format(value);\n } catch (e) {\n console.error('Error formatting currency:', e);\n // Return the unformatted value if formatting fails\n return value;\n }\n}\n\n/*\n * Format a file size (in bytes) into a human-readable format\n */\nexport function formatFileSize(size: number) {\n const suffixes: string[] = ['B', 'KB', 'MB', 'GB'];\n\n let idx = 0;\n\n while (size > 1024 && idx < suffixes.length) {\n size /= 1024;\n idx++;\n }\n\n return `${size.toFixed(2)} ${suffixes[idx]}`;\n}\n"],"names":["formatDecimal","value","options","locale","navigator","language","undefined","formatter","Intl","NumberFormat","style","maximumFractionDigits","digits","minimumFractionDigits","minDigits","format","e","console","error","formatCurrencyValue","Number","parseFloat","toString","isNaN","isFinite","multiplier","maxDigits","currency","Math","max","min","formatFileSize","size","suffixes","idx","length","toFixed"],"mappings":"AAcO,SAASA,cACdC,OACAC,UAA0C,IAC1C;AACA,QAAMC,SAASD,QAAQC,UAAUC,UAAUC,YAAY;AAEvD,MAAIJ,UAAU,QAAQA,UAAUK,QAAW;AACzC,WAAOL;AAAAA,EACT;AAEA,MAAI;AACF,UAAMM,YAAY,IAAIC,KAAKC,aAAaN,QAAQ;AAAA,MAC9CO,OAAO;AAAA,MACPC,uBAAuBT,QAAQU,UAAU;AAAA,MACzCC,uBAAuBX,QAAQY,aAAa;AAAA,IAAA,CAC7C;AAED,WAAOP,UAAUQ,OAAOd,KAAK;AAAA,EAC/B,SAASe,GAAG;AACVC,YAAQC,MAAM,6BAA6BF,CAAC;AAE5C,WAAOf;AAAAA,EACT;AACF;AAUO,SAASkB,oBACdlB,OACAC,UAA0C,IAC1C;AACA,MAAID,SAAS,QAAQA,SAASK,QAAW;AACvC,WAAO;AAAA,EACT;AAEAL,UAAQmB,OAAOC,WAAWpB,MAAMqB,SAAAA,CAAU;AAE1C,MAAIF,OAAOG,MAAMtB,KAAK,KAAK,CAACmB,OAAOI,SAASvB,KAAK,GAAG;AAClD,WAAO;AAAA,EACT;AAEAA,WAASC,QAAQuB,cAAc;AAG/B,QAAMtB,SAASD,QAAQC,UAAUC,UAAUC,YAAY;AAEvD,QAAMS,YAAYZ,QAAQY,aAAa;AACvC,QAAMY,YAAYxB,QAAQU,UAAU;AAEpC,MAAI;AACF,UAAML,YAAY,IAAIC,KAAKC,aAAaN,QAAQ;AAAA,MAC9CO,OAAO;AAAA,MACPiB,UAAUzB,QAAQyB,YAAY;AAAA,MAC9BhB,uBAAuBiB,KAAKC,IAAIf,WAAWY,SAAS;AAAA,MACpDb,uBAAuBe,KAAKE,IAAIhB,WAAWY,SAAS;AAAA,IAAA,CACrD;AAED,WAAOnB,UAAUQ,OAAOd,KAAK;AAAA,EAC/B,SAASe,GAAG;AACVC,YAAQC,MAAM,8BAA8BF,CAAC;AAE7C,WAAOf;AAAAA,EACT;AACF;AAKO,SAAS8B,eAAeC,MAAc;AAC3C,QAAMC,WAAqB,CAAC,KAAK,MAAM,MAAM,IAAI;AAEjD,MAAIC,MAAM;AAEV,SAAOF,OAAO,QAAQE,MAAMD,SAASE,QAAQ;AAC3CH,YAAQ;AACRE;AAAAA,EACF;AAEA,SAAO,GAAGF,KAAKI,QAAQ,CAAC,CAAC,IAAIH,SAASC,GAAG,CAAC;AAC5C;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Navigation.js","sources":["../../lib/functions/Navigation.tsx"],"sourcesContent":["import type { NavigateFunction } from 'react-router-dom';\nimport { ModelInformationDict } from '../enums/ModelInformation';\nimport type { ModelType } from '../enums/ModelType';\nimport { apiUrl } from './Api';\nimport { cancelEvent } from './Events';\n\nexport const getBaseUrl = (): string =>\n (window as any).INVENTREE_SETTINGS?.base_url || 'web';\n\n/**\n * Returns the detail view URL for a given model type.\n * This is the UI URL, not the API URL.\n */\nexport function getDetailUrl(\n model: ModelType,\n pk: number | string,\n absolute?: boolean\n): string {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.url_detail) {\n const url = modelInfo.url_detail.replace(':pk', pk.toString());\n const base = getBaseUrl();\n\n if (absolute && base) {\n return `/${base}${url}`;\n } else {\n return url;\n }\n }\n\n console.error(`No detail URL found for model ${model} <${pk}>`);\n return '';\n}\n\n/**\n * Returns the API detail URL for a given model type.\n */\nexport function getApiUrl(\n model: ModelType,\n pk: number | string\n): string | undefined {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.api_endpoint) {\n return apiUrl(modelInfo.api_endpoint, pk);\n }\n\n console.error(`No API detail URL found for model ${model} <${pk}>`);\n return undefined;\n}\n\n/*\n * Navigate to a provided link.\n * - If the link is to be opened externally, open it in a new tab.\n * - Otherwise, navigate using the provided navigate function.\n */\nexport const navigateToLink = (\n link: string,\n navigate: NavigateFunction,\n event: any\n) => {\n cancelEvent(event);\n\n const base = `/${getBaseUrl()}`;\n\n if (eventModified(event)) {\n // Open the link in a new tab\n let url = link;\n if (link.startsWith('/') && !link.startsWith(base)) {\n url = `${base}${link}`;\n }\n window.open(url, '_blank');\n } else {\n // Navigate internally\n let url = link;\n\n if (link.startsWith(base)) {\n // Strip the base URL from the link\n url = link.replace(base, '');\n }\n\n navigate(url);\n }\n};\n\n/**\n * Check if the event is modified (e.g. ctrl, shift, or meta key pressed)\n * @param event - The event to check\n * @returns true if the event was modified\n */\nexport const eventModified = (\n event: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n) => {\n return event?.ctrlKey || event?.shiftKey || event?.metaKey;\n};\n"],"names":["getBaseUrl","window","INVENTREE_SETTINGS","base_url","getDetailUrl","model","pk","absolute","modelInfo","ModelInformationDict","undefined","url_detail","url","replace","toString","base","console","error","navigateToLink","link","navigate","event","cancelEvent","eventModified","startsWith","open","ctrlKey","shiftKey","metaKey"],"mappings":";;AAMO,MAAMA,aAAaA,
|
|
1
|
+
{"version":3,"file":"Navigation.js","sources":["../../lib/functions/Navigation.tsx"],"sourcesContent":["import type { NavigateFunction } from 'react-router-dom';\nimport { ModelInformationDict } from '../enums/ModelInformation';\nimport type { ModelType } from '../enums/ModelType';\nimport { apiUrl } from './Api';\nimport { cancelEvent } from './Events';\n\nexport const getBaseUrl = (): string =>\n (window as any).INVENTREE_SETTINGS?.base_url || 'web';\n\n/**\n * Returns the detail view URL for a given model type.\n * This is the UI URL, not the API URL.\n */\nexport function getDetailUrl(\n model: ModelType,\n pk: number | string,\n absolute?: boolean\n): string {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.url_detail) {\n const url = modelInfo.url_detail.replace(':pk', pk.toString());\n const base = getBaseUrl();\n\n if (absolute && base) {\n return `/${base}${url}`;\n } else {\n return url;\n }\n }\n\n console.error(`No detail URL found for model ${model} <${pk}>`);\n return '';\n}\n\n/**\n * Returns the API detail URL for a given model type.\n */\nexport function getApiUrl(\n model: ModelType,\n pk: number | string\n): string | undefined {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.api_endpoint) {\n return apiUrl(modelInfo.api_endpoint, pk);\n }\n\n console.error(`No API detail URL found for model ${model} <${pk}>`);\n return undefined;\n}\n\n/*\n * Navigate to a provided link.\n * - If the link is to be opened externally, open it in a new tab.\n * - Otherwise, navigate using the provided navigate function.\n */\nexport const navigateToLink = (\n link: string,\n navigate: NavigateFunction,\n event: any\n) => {\n cancelEvent(event);\n\n const base = `/${getBaseUrl()}`;\n\n if (eventModified(event)) {\n // Open the link in a new tab\n let url = link;\n if (link.startsWith('/') && !link.startsWith(base)) {\n url = `${base}${link}`;\n }\n window.open(url, '_blank');\n } else {\n // Navigate internally\n let url = link;\n\n if (link.startsWith(base)) {\n // Strip the base URL from the link\n url = link.replace(base, '');\n }\n\n navigate(url);\n }\n};\n\n/**\n * Check if the event is modified (e.g. ctrl, shift, or meta key pressed)\n * @param event - The event to check\n * @returns true if the event was modified\n */\nexport const eventModified = (\n event: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n) => {\n return event?.ctrlKey || event?.shiftKey || event?.metaKey;\n};\n"],"names":["getBaseUrl","window","INVENTREE_SETTINGS","base_url","getDetailUrl","model","pk","absolute","modelInfo","ModelInformationDict","undefined","url_detail","url","replace","toString","base","console","error","navigateToLink","link","navigate","event","cancelEvent","eventModified","startsWith","open","ctrlKey","shiftKey","metaKey"],"mappings":";;AAMO,MAAMA,aAAaA,MAAAA;;AACvBC,uBAAeC,uBAAfD,mBAAmCE,aAAY;AAAA;AAM3C,SAASC,aACdC,OACAC,IACAC,UACQ;AACR,QAAMC,YAAYC,qBAAqBJ,KAAK;AAE5C,MAAIC,OAAOI,UAAaJ,OAAO,MAAM;AACnC,WAAO;AAAA,EACT;AAEA,MAAI,CAAC,CAACA,MAAME,aAAaA,UAAUG,YAAY;AAC7C,UAAMC,MAAMJ,UAAUG,WAAWE,QAAQ,OAAOP,GAAGQ,UAAU;AAC7D,UAAMC,OAAOf,WAAAA;AAEb,QAAIO,YAAYQ,MAAM;AACpB,aAAO,IAAIA,IAAI,GAAGH,GAAG;AAAA,IACvB,OAAO;AACL,aAAOA;AAAAA,IACT;AAAA,EACF;AAEAI,UAAQC,MAAM,iCAAiCZ,KAAK,KAAKC,EAAE,GAAG;AAC9D,SAAO;AACT;AA4BO,MAAMY,iBAAiBA,CAC5BC,MACAC,UACAC,UACG;AACHC,cAAYD,KAAK;AAEjB,QAAMN,OAAO,IAAIf,WAAAA,CAAY;AAE7B,MAAIuB,cAAcF,KAAK,GAAG;AAExB,QAAIT,MAAMO;AACV,QAAIA,KAAKK,WAAW,GAAG,KAAK,CAACL,KAAKK,WAAWT,IAAI,GAAG;AAClDH,YAAM,GAAGG,IAAI,GAAGI,IAAI;AAAA,IACtB;AACAlB,WAAOwB,KAAKb,KAAK,QAAQ;AAAA,EAC3B,OAAO;AAEL,QAAIA,MAAMO;AAEV,QAAIA,KAAKK,WAAWT,IAAI,GAAG;AAEzBH,YAAMO,KAAKN,QAAQE,MAAM,EAAE;AAAA,IAC7B;AAEAK,aAASR,GAAG;AAAA,EACd;AACF;AAOO,MAAMW,gBAAgBA,CAC3BF,UACG;AACH,UAAOA,+BAAOK,aAAWL,+BAAOM,cAAYN,+BAAOO;AACrD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Plugins.js","sources":["../../lib/functions/Plugins.tsx"],"sourcesContent":["import {\n INVENTREE_PLUGIN_VERSION,\n type InvenTreePluginContext\n} from '../types/Plugins';\n\n/**\n * Check that the plugin version matches the expected version.\n * This is a helper function which only generates a warning if there is a mismatch.\n */\nexport function checkPluginVersion(context: InvenTreePluginContext) {\n const systemVersion: string = context?.version?.inventree || '';\n\n if (INVENTREE_PLUGIN_VERSION != systemVersion) {\n console.info(\n `Plugin version mismatch! Expected version ${INVENTREE_PLUGIN_VERSION}, got ${systemVersion}`\n );\n }\n}\n\n/**\n * Helper function to initialize the plugin context.\n */\nexport function initPlugin(context: InvenTreePluginContext) {\n // Check that the plugin version matches the expected version\n checkPluginVersion(context);\n\n // Activate the i18n context for the current locale\n context.i18n?.activate?.(context.locale);\n}\n"],"names":["checkPluginVersion","context","systemVersion","version","inventree","INVENTREE_PLUGIN_VERSION","console","info","initPlugin","i18n","activate","locale"],"mappings":";AASO,SAASA,mBAAmBC,SAAiC;;
|
|
1
|
+
{"version":3,"file":"Plugins.js","sources":["../../lib/functions/Plugins.tsx"],"sourcesContent":["import {\n INVENTREE_PLUGIN_VERSION,\n type InvenTreePluginContext\n} from '../types/Plugins';\n\n/**\n * Check that the plugin version matches the expected version.\n * This is a helper function which only generates a warning if there is a mismatch.\n */\nexport function checkPluginVersion(context: InvenTreePluginContext) {\n const systemVersion: string = context?.version?.inventree || '';\n\n if (INVENTREE_PLUGIN_VERSION != systemVersion) {\n console.info(\n `Plugin version mismatch! Expected version ${INVENTREE_PLUGIN_VERSION}, got ${systemVersion}`\n );\n }\n}\n\n/**\n * Helper function to initialize the plugin context.\n */\nexport function initPlugin(context: InvenTreePluginContext) {\n // Check that the plugin version matches the expected version\n checkPluginVersion(context);\n\n // Activate the i18n context for the current locale\n context.i18n?.activate?.(context.locale);\n}\n"],"names":["checkPluginVersion","context","systemVersion","version","inventree","INVENTREE_PLUGIN_VERSION","console","info","initPlugin","i18n","activate","locale"],"mappings":";AASO,SAASA,mBAAmBC,SAAiC;;AAClE,QAAMC,kBAAwBD,wCAASE,YAATF,mBAAkBG,cAAa;AAE7D,MAAIC,4BAA4BH,eAAe;AAC7CI,YAAQC,KACN,6CAA6CF,wBAAwB,SAASH,aAAa,EAC7F;AAAA,EACF;AACF;AAKO,SAASM,WAAWP,SAAiC;;AAE1DD,qBAAmBC,OAAO;AAG1BA,sBAAQQ,SAARR,mBAAcS,aAAdT,4BAAyBA,QAAQU;AACnC;"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,9 +3,10 @@ export { ApiEndpoints } from './enums/ApiEndpoints';
|
|
|
3
3
|
export { ModelType } from './enums/ModelType';
|
|
4
4
|
export type { ModelDict } from './enums/ModelInformation';
|
|
5
5
|
export { UserRoles, UserPermissions } from './enums/Roles';
|
|
6
|
-
export type { InvenTreePluginContext } from './types/Plugins';
|
|
6
|
+
export type { InvenTreePluginContext, InvenTreeFormsContext, PluginVersion, StockAdjustmentFormsContext } from './types/Plugins';
|
|
7
7
|
export type { RowAction, RowViewProps } from './types/Tables';
|
|
8
8
|
export type { ApiFormFieldChoice, ApiFormFieldHeader, ApiFormFieldType, ApiFormFieldSet, ApiFormProps, ApiFormModalProps, BulkEditApiFormModalProps } from './types/Forms';
|
|
9
|
+
export type { UseModalProps, UseModalReturn } from './types/Modals';
|
|
9
10
|
export { apiUrl } from './functions/Api';
|
|
10
11
|
export { getBaseUrl, getDetailUrl, navigateToLink } from './functions/Navigation';
|
|
11
12
|
export { checkPluginVersion, initPlugin } from './functions/Plugins';
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
const useState = window["React"].useState;
|
|
2
2
|
const useRef = window["React"].useRef;
|
|
3
|
+
const useCallback = window["React"].useCallback;
|
|
3
4
|
const useEffect = window["React"].useEffect;
|
|
4
5
|
function useDebouncedValue(value, wait, options = { leading: false }) {
|
|
5
6
|
const [_value, setValue] = useState(value);
|
|
6
7
|
const mountedRef = useRef(false);
|
|
7
8
|
const timeoutRef = useRef(null);
|
|
8
9
|
const cooldownRef = useRef(false);
|
|
9
|
-
const cancel = () => window.clearTimeout(timeoutRef.current);
|
|
10
|
+
const cancel = useCallback(() => window.clearTimeout(timeoutRef.current), []);
|
|
10
11
|
useEffect(() => {
|
|
11
12
|
if (mountedRef.current) {
|
|
12
13
|
if (!cooldownRef.current && options.leading) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-debounced-value.js","sources":["../../../../../../node_modules/@mantine/hooks/esm/use-debounced-value/use-debounced-value.mjs"],"sourcesContent":["'use client';\nimport { useState, useRef, useEffect } from 'react';\n\nfunction useDebouncedValue(value, wait, options = { leading: false }) {\n const [_value, setValue] = useState(value);\n const mountedRef = useRef(false);\n const timeoutRef = useRef(null);\n const cooldownRef = useRef(false);\n const cancel = () => window.clearTimeout(timeoutRef.current);\n useEffect(() => {\n if (mountedRef.current) {\n if (!cooldownRef.current && options.leading) {\n cooldownRef.current = true;\n setValue(value);\n } else {\n cancel();\n timeoutRef.current = window.setTimeout(() => {\n cooldownRef.current = false;\n setValue(value);\n }, wait);\n }\n }\n }, [value, options.leading, wait]);\n useEffect(() => {\n mountedRef.current = true;\n return cancel;\n }, []);\n return [_value, cancel];\n}\n\nexport { useDebouncedValue };\n//# sourceMappingURL=use-debounced-value.mjs.map\n"],"names":[],"mappings":"AACA,MAAA,WAAA,OAAA,OAAA,EAAA
|
|
1
|
+
{"version":3,"file":"use-debounced-value.js","sources":["../../../../../../node_modules/@mantine/hooks/esm/use-debounced-value/use-debounced-value.mjs"],"sourcesContent":["'use client';\nimport { useState, useRef, useCallback, useEffect } from 'react';\n\nfunction useDebouncedValue(value, wait, options = { leading: false }) {\n const [_value, setValue] = useState(value);\n const mountedRef = useRef(false);\n const timeoutRef = useRef(null);\n const cooldownRef = useRef(false);\n const cancel = useCallback(() => window.clearTimeout(timeoutRef.current), []);\n useEffect(() => {\n if (mountedRef.current) {\n if (!cooldownRef.current && options.leading) {\n cooldownRef.current = true;\n setValue(value);\n } else {\n cancel();\n timeoutRef.current = window.setTimeout(() => {\n cooldownRef.current = false;\n setValue(value);\n }, wait);\n }\n }\n }, [value, options.leading, wait]);\n useEffect(() => {\n mountedRef.current = true;\n return cancel;\n }, []);\n return [_value, cancel];\n}\n\nexport { useDebouncedValue };\n//# sourceMappingURL=use-debounced-value.mjs.map\n"],"names":[],"mappings":"AACA,MAAA,WAAA,OAAA,OAAA,EAAA;;;;AAEA,SAAS,kBAAkB,OAAO,MAAM,UAAU,EAAE,SAAS,SAAS;AACpE,QAAM,CAAC,QAAQ,QAAQ,IAAI,SAAS,KAAK;AACzC,QAAM,aAAa,OAAO,KAAK;AAC/B,QAAM,aAAa,OAAO,IAAI;AAC9B,QAAM,cAAc,OAAO,KAAK;AAChC,QAAM,SAAS,YAAY,MAAM,OAAO,aAAa,WAAW,OAAO,GAAG,EAAE;AAC5E,YAAU,MAAM;AACd,QAAI,WAAW,SAAS;AACtB,UAAI,CAAC,YAAY,WAAW,QAAQ,SAAS;AAC3C,oBAAY,UAAU;AACtB,iBAAS,KAAK;AAAA,MAChB,OAAO;AACL,eAAM;AACN,mBAAW,UAAU,OAAO,WAAW,MAAM;AAC3C,sBAAY,UAAU;AACtB,mBAAS,KAAK;AAAA,QAChB,GAAG,IAAI;AAAA,MACT;AAAA,IACF;AAAA,EACF,GAAG,CAAC,OAAO,QAAQ,SAAS,IAAI,CAAC;AACjC,YAAU,MAAM;AACd,eAAW,UAAU;AACrB,WAAO;AAAA,EACT,GAAG,CAAA,CAAE;AACL,SAAO,CAAC,QAAQ,MAAM;AACxB;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createReactComponent.js","sources":["../../../../../../node_modules/@tabler/icons-react/dist/esm/createReactComponent.mjs"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.34.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.mjs';\n\nconst createReactComponent = (type, iconName, iconNamePascal, iconNode) => {\n const Component = forwardRef(\n ({ color = \"currentColor\", size = 24, stroke = 2, title, className, children, ...rest }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes[type],\n width: size,\n height: size,\n className: [`tabler-icon`, `tabler-icon-${iconName}`, className].join(\" \"),\n ...type === \"filled\" ? {\n fill: color\n } : {\n strokeWidth: stroke,\n stroke: color\n },\n ...rest\n },\n [\n title && createElement(\"title\", { key: \"svg-title\" }, title),\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n );\n Component.displayName = `${iconNamePascal}`;\n return Component;\n};\n\nexport { createReactComponent as default };\n//# sourceMappingURL=createReactComponent.mjs.map\n"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,MAAA,aAAA,OAAA,OAAA,EAAA;;AAGK,MAAC,uBAAuB,CAAC,MAAM,UAAU,gBAAgB,aAAa;AACzE,QAAM,YAAY;AAAA,IAChB,CAAC,EAAE,QAAQ,gBAAgB,OAAO,IAAI,SAAS,GAAG,OAAO,WAAW,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"createReactComponent.js","sources":["../../../../../../node_modules/@tabler/icons-react/dist/esm/createReactComponent.mjs"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.34.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.mjs';\n\nconst createReactComponent = (type, iconName, iconNamePascal, iconNode) => {\n const Component = forwardRef(\n ({ color = \"currentColor\", size = 24, stroke = 2, title, className, children, ...rest }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes[type],\n width: size,\n height: size,\n className: [`tabler-icon`, `tabler-icon-${iconName}`, className].join(\" \"),\n ...type === \"filled\" ? {\n fill: color\n } : {\n strokeWidth: stroke,\n stroke: color\n },\n ...rest\n },\n [\n title && createElement(\"title\", { key: \"svg-title\" }, title),\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n );\n Component.displayName = `${iconNamePascal}`;\n return Component;\n};\n\nexport { createReactComponent as default };\n//# sourceMappingURL=createReactComponent.mjs.map\n"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,MAAA,aAAA,OAAA,OAAA,EAAA;;AAGK,MAAC,uBAAuB,CAAC,MAAM,UAAU,gBAAgB,aAAa;AACzE,QAAM,YAAY;AAAA,IAChB,CAAC,EAAE,QAAQ,gBAAgB,OAAO,IAAI,SAAS,GAAG,OAAO,WAAW,UAAU,GAAG,KAAI,GAAI,QAAQ;AAAA,MAC/F;AAAA,MACA;AAAA,QACE;AAAA,QACA,GAAG,kBAAkB,IAAI;AAAA,QACzB,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,WAAW,CAAC,eAAe,eAAe,QAAQ,IAAI,SAAS,EAAE,KAAK,GAAG;AAAA,QACzE,GAEI;AAAA,UACF,aAAa;AAAA,UACb,QAAQ;AAAA,QAClB;AAAA,QACQ,GAAG;AAAA,MACX;AAAA,MACM;AAAA,QACE,SAAS,cAAc,SAAS,EAAE,KAAK,YAAW,GAAI,KAAK;AAAA,QAC3D,GAAG,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,cAAc,KAAK,KAAK,CAAC;AAAA,QAC3D,GAAG,MAAM,QAAQ,QAAQ,IAAI,WAAW,CAAC,QAAQ;AAAA,MACzD;AAAA,IACA;AAAA,EACA;AACE,YAAU,cAAc,GAAG,cAAc;AACzC,SAAO;AACT;","x_google_ignoreList":[0]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultAttributes.js","sources":["../../../../../../node_modules/@tabler/icons-react/dist/esm/defaultAttributes.mjs"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.34.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n outline: {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n },\n filled: {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\",\n stroke: \"none\"\n }\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.mjs.map\n"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOG,IAAC,oBAAoB;AAAA,EACtB,SAAS;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,eAAe;AAAA,IACf,gBAAgB;AAAA,
|
|
1
|
+
{"version":3,"file":"defaultAttributes.js","sources":["../../../../../../node_modules/@tabler/icons-react/dist/esm/defaultAttributes.mjs"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.34.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n outline: {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n },\n filled: {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\",\n stroke: \"none\"\n }\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.mjs.map\n"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOG,IAAC,oBAAoB;AAAA,EACtB,SAAS;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,eAAe;AAAA,IACf,gBAAgB;AAAA,EACpB;AAAA,EACE,QAAQ;AAAA,IACN,OAAO;AAAA,IACP,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,MAAM;AAAA,IACN,QAAQ;AAAA,EACZ;AACA;","x_google_ignoreList":[0]}
|