ece-docs-components 1.0.26 → 1.0.28

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.
@@ -1,38 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var jsxRuntime = require('react/jsx-runtime');
4
- var React = require('react');
5
4
  var material = require('@mui/material');
6
- var ThemeProvider = require('../ThemeProvider.js');
7
- var iconsMaterial = require('@mui/icons-material');
8
5
 
9
- const StyledWrapper = material.styled(material.Box)(({ theme, open }) => ({
10
- display: 'inline-block',
11
- position: 'relative',
12
- verticalAlign: 'top', // Prevents shifting
13
- }));
14
- const StyledParagraph = material.styled('span')(({ theme }) => ({
15
- color: theme.palette.dark.main,
16
- display: 'inline-flex',
17
- alignItems: 'center',
18
- }));
19
- const StyledTermWrapper = material.styled(material.Box)(({ theme, open }) => ({
20
- position: 'relative',
21
- display: 'inline-flex',
22
- alignItems: 'center',
23
- cursor: 'pointer',
24
- marginLeft: theme.spacing(0.5),
25
- paddingBottom: '1px',
26
- borderBottom: `2px solid ${theme.palette.dark.main}`,
27
- backgroundColor: theme.palette.background.default,
28
- }));
29
- const StyledIconWrapper = material.styled(material.Box)(({ theme }) => ({
30
- display: 'inline-flex',
31
- alignItems: 'center',
32
- justifyContent: 'center',
33
- marginLeft: theme.spacing(0.5),
34
- transition: 'color 0.2s',
35
- }));
36
6
  const StyledExpandingBox = material.styled(material.Box)(({ theme }) => ({
37
7
  marginTop: theme.spacing(2),
38
8
  padding: theme.spacing(2),
@@ -42,21 +12,11 @@ const StyledExpandingBox = material.styled(material.Box)(({ theme }) => ({
42
12
  border: `1px solid ${theme.palette.dark.main}`,
43
13
  backgroundColor: theme.palette.background.default,
44
14
  }));
45
- function ExpandingBox({ term, content }) {
46
- const theme = ThemeProvider.useTheme();
47
- const [open, setOpen] = React.useState(false);
48
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(StyledWrapper, { open: open, children: jsxRuntime.jsx(StyledParagraph, { children: jsxRuntime.jsxs(StyledTermWrapper, { onClick: () => setOpen(!open), open: open, children: [term, jsxRuntime.jsx(StyledIconWrapper, { children: open ? (jsxRuntime.jsx(iconsMaterial.IndeterminateCheckBoxRounded, { sx: {
49
- fontSize: 16,
50
- color: theme.palette.text.primary
51
- } })) : (jsxRuntime.jsx(iconsMaterial.AddBoxRounded, { sx: {
52
- fontSize: 16,
53
- color: theme.palette.text.primary,
54
- } })) })] }) }) }), open && (jsxRuntime.jsx(StyledExpandingBox, { children: jsxRuntime.jsx(material.Box, { sx: {
55
- fontSize: '14px',
56
- color: theme.palette.dark.main,
57
- lineHeight: 1.5,
58
- }, dangerouslySetInnerHTML: { __html: content } }) }))] }));
59
- }
15
+ const ExpandingBox = ({ open, content, }) => {
16
+ if (!open)
17
+ return null;
18
+ return jsxRuntime.jsx(StyledExpandingBox, { children: content });
19
+ };
60
20
 
61
21
  exports.ExpandingBox = ExpandingBox;
62
22
  //# sourceMappingURL=ExpandingBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExpandingBox.js","sources":["../../../../src/components/ExpandingBox.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { Box, styled, Typography } from '@mui/material';\nimport { useTheme } from '../ThemeProvider';\nimport { AddBoxRounded, IndeterminateCheckBoxRounded } from '@mui/icons-material';\n\ninterface ExpandingBoxProps {\n term: string;\n content: string;\n}\n\nconst StyledWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n display: 'inline-block',\n position: 'relative',\n verticalAlign: 'top', // Prevents shifting\n}));\n\nconst StyledParagraph = styled('span')(({ theme }) => ({\n color: theme.palette.dark.main,\n display: 'inline-flex',\n alignItems: 'center',\n}));\n\nconst StyledTermWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n marginLeft: theme.spacing(0.5),\n paddingBottom: '1px',\n borderBottom: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nconst StyledIconWrapper = styled(Box)(({ theme }) => ({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: theme.spacing(0.5),\n transition: 'color 0.2s',\n}));\n\nconst StyledExpandingBox = styled(Box)(({ theme }) => ({\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n border: `1px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nexport function ExpandingBox({ term, content }: ExpandingBoxProps) {\n const theme = useTheme();\n const [open, setOpen] = useState(false);\n\n return (\n <>\n <StyledWrapper open={open}>\n <StyledParagraph>\n <StyledTermWrapper onClick={() => setOpen(!open)} open={open}>\n {term}\n <StyledIconWrapper>\n {open ? (\n <IndeterminateCheckBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary\n }}\n />\n ) : (\n <AddBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary,\n }}\n />\n )}\n </StyledIconWrapper>\n </StyledTermWrapper>\n </StyledParagraph>\n </StyledWrapper>\n {open && (\n <StyledExpandingBox>\n <Box\n sx={{\n fontSize: '14px',\n color: theme.palette.dark.main,\n lineHeight: 1.5,\n }}\n dangerouslySetInnerHTML={{ __html: content }}\n />\n </StyledExpandingBox>\n )}\n </>\n );\n}\n"],"names":["styled","Box","useTheme","useState","_jsxs","_jsx","IndeterminateCheckBoxRounded","AddBoxRounded"],"mappings":"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"}
1
+ {"version":3,"file":"ExpandingBox.js","sources":["../../../../src/components/ExpandingBox.tsx"],"sourcesContent":["import { Box, styled } from '@mui/material';\ninterface ExpandingBoxProps {\n open: boolean;\n content: React.ReactNode | React.ReactNode[];\n}\n\nconst StyledExpandingBox = styled(Box)(({ theme }) => ({\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n border: `1px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nexport const ExpandingBox: React.FC<ExpandingBoxProps> = ({\n open,\n content,\n}) => {\n\n if (!open) return null;\n return <StyledExpandingBox>{content}</StyledExpandingBox>;\n}\n"],"names":["styled","Box","_jsx"],"mappings":";;;;;AAMA,MAAM,kBAAkB,GAAGA,eAAM,CAACC,YAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AACrD,IAAA,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC3B,IAAA,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACzB,YAAY,EAAE,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,YAAY,KAAK;UAC/C,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE;UACrC,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC;IACtC,MAAM,EAAE,aAAa,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,CAAE;AAC9C,IAAA,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO;AAClD,CAAA,CAAC,CAAC;AAEI,MAAM,YAAY,GAAgC,CAAC,EACxD,IAAI,EACJ,OAAO,GACR,KAAI;AAEH,IAAA,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,IAAI;AACtB,IAAA,OAAOC,cAAA,CAAC,kBAAkB,EAAA,EAAA,QAAA,EAAE,OAAO,GAAsB;AAC3D;;;;"}
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var material = require('@mui/material');
5
+ var ThemeProvider = require('../ThemeProvider.js');
6
+ var iconsMaterial = require('@mui/icons-material');
7
+
8
+ const StyledWrapper = material.styled(material.Box)(({ theme, open }) => ({
9
+ display: 'inline-block',
10
+ position: 'relative',
11
+ verticalAlign: 'top', // Prevents shifting
12
+ }));
13
+ const StyledParagraph = material.styled('span')(({ theme }) => ({
14
+ color: theme.palette.dark.main,
15
+ display: 'inline-flex',
16
+ alignItems: 'center',
17
+ }));
18
+ const StyledTermWrapper = material.styled(material.Box)(({ theme, open }) => ({
19
+ position: 'relative',
20
+ display: 'inline-flex',
21
+ alignItems: 'center',
22
+ cursor: 'pointer',
23
+ marginLeft: theme.spacing(0.5),
24
+ paddingBottom: '1px',
25
+ borderBottom: `2px solid ${theme.palette.dark.main}`,
26
+ backgroundColor: theme.palette.background.default,
27
+ }));
28
+ const StyledIconWrapper = material.styled(material.Box)(({ theme }) => ({
29
+ display: 'inline-flex',
30
+ alignItems: 'center',
31
+ justifyContent: 'center',
32
+ marginLeft: theme.spacing(0.5),
33
+ transition: 'color 0.2s',
34
+ }));
35
+ const ExpandingBoxToggle = ({ term, open, setOpen, }) => {
36
+ const theme = ThemeProvider.useTheme();
37
+ return (jsxRuntime.jsx(StyledWrapper, { open: open, children: jsxRuntime.jsx(StyledParagraph, { children: jsxRuntime.jsxs(StyledTermWrapper, { onClick: () => setOpen(!open), open: open, children: [term, jsxRuntime.jsx(StyledIconWrapper, { children: open ? (jsxRuntime.jsx(iconsMaterial.IndeterminateCheckBoxRounded, { sx: {
38
+ fontSize: 16,
39
+ color: theme.palette.text.primary
40
+ } })) : (jsxRuntime.jsx(iconsMaterial.AddBoxRounded, { sx: {
41
+ fontSize: 16,
42
+ color: theme.palette.text.primary,
43
+ } })) })] }) }) }));
44
+ };
45
+
46
+ exports.ExpandingBoxToggle = ExpandingBoxToggle;
47
+ //# sourceMappingURL=ExpandingBoxToggle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpandingBoxToggle.js","sources":["../../../../src/components/ExpandingBoxToggle.tsx"],"sourcesContent":["import { Box, styled } from '@mui/material';\nimport { useTheme } from '../ThemeProvider';\nimport { AddBoxRounded, IndeterminateCheckBoxRounded } from '@mui/icons-material';\n\ninterface ExpandingBoxToggleProps {\n term: string;\n open: boolean;\n setOpen: (open: boolean) => void;\n}\n\nconst StyledWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n display: 'inline-block',\n position: 'relative',\n verticalAlign: 'top', // Prevents shifting\n}));\n\nconst StyledParagraph = styled('span')(({ theme }) => ({\n color: theme.palette.dark.main,\n display: 'inline-flex',\n alignItems: 'center',\n}));\n\nconst StyledTermWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n marginLeft: theme.spacing(0.5),\n paddingBottom: '1px',\n borderBottom: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nconst StyledIconWrapper = styled(Box)(({ theme }) => ({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: theme.spacing(0.5),\n transition: 'color 0.2s',\n}));\n\nexport const ExpandingBoxToggle: React.FC<ExpandingBoxToggleProps> = ({\n term,\n open,\n setOpen,\n}) => { const theme = useTheme();\n\n return (\n <StyledWrapper open={open}>\n <StyledParagraph>\n <StyledTermWrapper onClick={() => setOpen(!open)} open={open}>\n {term}\n <StyledIconWrapper>\n {open ? (\n <IndeterminateCheckBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary\n }}\n />\n ) : (\n <AddBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary,\n }}\n />\n )}\n </StyledIconWrapper>\n </StyledTermWrapper>\n </StyledParagraph>\n </StyledWrapper>\n );\n}\n"],"names":["styled","Box","useTheme","_jsx","_jsxs","IndeterminateCheckBoxRounded","AddBoxRounded"],"mappings":";;;;;;;AAUA,MAAM,aAAa,GAAGA,eAAM,CAACC,YAAG,CAAC,CAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM;AACzE,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,KAAK;AACrB,CAAA,CAAC,CAAC;AAEH,MAAM,eAAe,GAAGD,eAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AACrD,IAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC9B,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,UAAU,EAAE,QAAQ;AACrB,CAAA,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAGA,eAAM,CAACC,YAAG,CAAC,CAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM;AAC7E,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,UAAU,EAAE,QAAQ;AACpB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AAC9B,IAAA,aAAa,EAAE,KAAK;IACpB,YAAY,EAAE,aAAa,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,CAAE;AACpD,IAAA,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO;AAClD,CAAA,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAGD,eAAM,CAACC,YAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AACpD,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,UAAU,EAAE,QAAQ;AACpB,IAAA,cAAc,EAAE,QAAQ;AACxB,IAAA,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AAC9B,IAAA,UAAU,EAAE,YAAY;AACzB,CAAA,CAAC,CAAC;AAEI,MAAM,kBAAkB,GAAsC,CAAC,EACpE,IAAI,EACJ,IAAI,EACJ,OAAO,GACR,KAAI;AAAI,IAAA,MAAM,KAAK,GAAGC,sBAAQ,EAAE;AAE/B,IAAA,QACEC,cAAA,CAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAA,QAAA,EACvBA,cAAA,CAAC,eAAe,EAAA,EAAA,QAAA,EACdC,eAAA,CAAC,iBAAiB,EAAA,EAAC,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAA,QAAA,EAAA,CACzD,IAAI,EACLD,cAAA,CAAC,iBAAiB,cACf,IAAI,IACHA,eAACE,0CAA4B,EAAA,EAC3B,EAAE,EAAE;AACF,gCAAA,QAAQ,EAAE,EAAE;AACZ,gCAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;6BAC3B,EAAA,CACD,KAEFF,cAAA,CAACG,2BAAa,EAAA,EACZ,EAAE,EAAE;AACF,gCAAA,QAAQ,EAAE,EAAE;AACZ,gCAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;AAClC,6BAAA,EAAA,CACD,CACH,EAAA,CACiB,CAAA,EAAA,CACF,EAAA,CACJ,EAAA,CACJ;AAEpB;;;;"}
@@ -12,8 +12,8 @@ var VariableState;
12
12
  (function (VariableState) {
13
13
  VariableState["Accepted"] = "Accepted";
14
14
  VariableState["Pending"] = "Pending";
15
- VariableState["Rejected"] = "Rejected";
16
- VariableState["NotAccepted"] = "Not Accepted";
15
+ VariableState["ActionRequired"] = "Action Required";
16
+ VariableState["Declined"] = "Declined";
17
17
  VariableState["Draft"] = "Draft";
18
18
  })(VariableState || (VariableState = {}));
19
19
  var RequirementType;
@@ -49,10 +49,10 @@ function mapStatusToVariableState(status) {
49
49
  return VariableState.Accepted;
50
50
  case "Pending":
51
51
  return VariableState.Pending;
52
- case "Rejected":
53
- return VariableState.Rejected;
54
- case "Not Accepted":
55
- return VariableState.NotAccepted;
52
+ case "Action Required":
53
+ return VariableState.ActionRequired;
54
+ case "Declined":
55
+ return VariableState.Declined;
56
56
  case "Draft":
57
57
  return VariableState.Draft;
58
58
  default:
@@ -120,9 +120,9 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
120
120
  const canSubmitSave = isLoading || variableState === VariableState.Pending;
121
121
  const statusConfig = {
122
122
  [VariableState.Pending]: { color: '#EBC7FF', label: 'Pending' },
123
- [VariableState.Draft]: { color: '#FFC365', label: 'Draft' },
124
- [VariableState.NotAccepted]: { color: '#DBF59A', label: 'Not Accepted' },
125
- [VariableState.Rejected]: { color: '#FFBCB3', label: 'Rejected' },
123
+ [VariableState.Draft]: { color: '#4D3019', label: 'Draft' },
124
+ [VariableState.Declined]: { color: '#4D3019', label: 'Declined' },
125
+ [VariableState.ActionRequired]: { color: '#FFBCB3', label: 'Action Required' },
126
126
  [VariableState.Accepted]: { color: '#DBF59A', label: 'Accepted' },
127
127
  };
128
128
  const reqTypeConfig = {
@@ -168,9 +168,9 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
168
168
  py: 1,
169
169
  borderRadius: 0,
170
170
  px: 2,
171
- } })] }), jsxRuntime.jsx(material.Typography, { sx: { mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }, children: description }), variableState === VariableState.Rejected && note && (jsxRuntime.jsx(Alert.Alert, { variant: "error", icon: jsxRuntime.jsx(iconsMaterial.InfoOutlineRounded, { sx: { fontSize: 20 } }), sx: {
171
+ } })] }), jsxRuntime.jsx(material.Typography, { sx: { mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }, children: description }), variableState === VariableState.ActionRequired && note && (jsxRuntime.jsx(Alert.Alert, { variant: "error", icon: jsxRuntime.jsx(iconsMaterial.InfoOutlineRounded, { sx: { fontSize: 20 } }), sx: {
172
172
  mb: 2
173
- }, children: note })), variableState !== VariableState.Rejected && note && (jsxRuntime.jsx(Alert.Alert, { variant: "info", icon: jsxRuntime.jsx(iconsMaterial.ArticleRounded, { sx: { fontSize: 20, color: '#4D3019' } }), sx: {
173
+ }, children: note })), variableState !== VariableState.ActionRequired && note && (jsxRuntime.jsx(Alert.Alert, { variant: "info", icon: jsxRuntime.jsx(iconsMaterial.ArticleRounded, { sx: { fontSize: 20, color: '#4D3019' } }), sx: {
174
174
  mb: 2,
175
175
  backgroundColor: '#00000000',
176
176
  borderColor: '#acacacff',
@@ -186,7 +186,7 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
186
186
  '&.Mui-checked': {
187
187
  color: '#AC46FF',
188
188
  },
189
- } }), label: "Use Default Value", sx: { mb: 3 } }), jsxRuntime.jsxs(material.Box, { sx: {
189
+ } }), label: "Use Default Wording", sx: { mb: 3 } }), jsxRuntime.jsxs(material.Box, { sx: {
190
190
  display: 'flex',
191
191
  flexDirection: { xs: 'column', sm: 'row' },
192
192
  alignItems: { xs: 'stretch', sm: 'center' },
@@ -195,19 +195,19 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
195
195
  pt: 3,
196
196
  borderTop: '1px solid',
197
197
  borderColor: 'divider',
198
- }, children: [jsxRuntime.jsxs(material.Box, { sx: { display: 'flex', gap: 1.5, flexWrap: 'wrap' }, children: [jsxRuntime.jsx(Button.Button, { onClick: handleSave, variant: "outline", size: "md", disabled: canSubmitSave, children: isSaving ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(material.CircularProgress, { size: 20 }), jsxRuntime.jsx(material.Typography, { sx: { paddingLeft: 2 }, children: "Saving..." })] }) : "Save" }), jsxRuntime.jsx(Button.Button, { onClick: handleSubmit, variant: "outline", size: "md", disabled: canSubmitSave, sx: {
198
+ }, children: [variableState !== VariableState.Declined ? (jsxRuntime.jsxs(material.Box, { sx: { display: 'flex', gap: 1.5, flexWrap: 'wrap' }, children: [useDefaultValue === false ?
199
+ (jsxRuntime.jsx(Button.Button, { onClick: handleSave, variant: "outline", size: "md", disabled: canSubmitSave, children: isSaving ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(material.CircularProgress, { size: 20 }), jsxRuntime.jsx(material.Typography, { sx: { paddingLeft: 2 }, children: "Saving..." })] }) : "Save" })) : (jsxRuntime.jsx(jsxRuntime.Fragment, {})), jsxRuntime.jsx(Button.Button, { onClick: handleSubmit, variant: "outline", size: "md", disabled: canSubmitSave, sx: {
199
200
  backgroundColor: '#ac46ff52',
200
201
  '&:hover': {
201
202
  backgroundColor: '#ac46ff80',
202
203
  },
203
- }, children: isSubmitting ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(material.CircularProgress, { size: 20 }), jsxRuntime.jsx(material.Typography, { sx: { paddingLeft: 2 }, children: "Submitting..." })] }) : "Submit for review" }), variableReqType === RequirementType.Optional ?
204
+ }, children: isSubmitting ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(material.CircularProgress, { size: 20 }), jsxRuntime.jsx(material.Typography, { sx: { paddingLeft: 2 }, children: "Submitting..." })] }) : "Submit for review" }), variableReqType === RequirementType.Optional || useDefaultValue === false &&
204
205
  (jsxRuntime.jsx(Button.Button, { onClick: onDeclineWording, variant: "outline", size: "md", sx: {
205
206
  backgroundColor: '#ff464652',
206
207
  '&:hover': {
207
208
  backgroundColor: '#ff464680', // Darker purple on hover
208
209
  }
209
- }, disabled: canSubmitSave, children: "Decline wording" })) :
210
- (jsxRuntime.jsx(jsxRuntime.Fragment, {}))] }), jsxRuntime.jsxs(material.Box, { sx: {
210
+ }, disabled: canSubmitSave, children: "Decline wording" }))] })) : (jsxRuntime.jsx(material.Box, { sx: { display: 'flex', gap: 1.5, flexWrap: 'wrap' } })), jsxRuntime.jsxs(material.Box, { sx: {
211
211
  display: 'flex',
212
212
  alignItems: 'center',
213
213
  gap: 1.5,
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sources":["../../../../src/components/Modal.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n Dialog,\n DialogContent,\n IconButton,\n Box,\n Typography,\n TextField,\n Checkbox,\n FormControlLabel,\n Alert as MuiAlert,\n Chip,\n styled,\n CircularProgress,\n useTheme,\n} from '@mui/material';\nimport { Button } from './Button';\nimport { ArrowBackIosRounded, ArrowForwardIosRounded, ArticleRounded, CloseRounded, ErrorOutlineRounded, InfoOutlineRounded, StickyNote2Rounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\nimport { toast } from 'react-toastify';\n\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n Rejected = \"Rejected\",\n NotAccepted = \"Not Accepted\",\n Draft = \"Draft\"\n}\n\nenum RequirementType {\n Default = \"Default\",\n Optional = \"Optional\"\n}\n\n\ninterface ModalProps {\n isOpen: boolean;\n onClose: () => void;\n status: string;\n requirementType: string,\n description: string;\n value: string;\n defaultText: string;\n note?: string;\n onSave?: (fieldValue: string, defaultChecked: boolean) => void;\n onSubmit?: (fieldValue: string, defaultChecked: boolean) => void;\n successMessage?: string;\n errorMessage?: string;\n onDeclineWording?: () => void;\n onPrevious?: () => void;\n onNext?: () => void;\n currentPage?: number;\n totalPages?: number;\n isLoading: boolean;\n}\n\n\nconst StyledDialog = styled(Dialog)(({ theme }) => ({\n '& .MuiDialog-paper': {\n color: theme.palette.background.default,\n borderRadius: theme.shape.borderRadius,\n maxWidth: '896px',\n width: '100%',\n maxHeight: '90vh',\n },\n}));\n\n\nconst NavButton = styled(IconButton)(({ theme }) => ({\n width: '40px',\n height: '40px',\n borderRadius: 999,\n border: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: '#fff',\n padding: theme.spacing(1, 2),\n '&:hover': {\n backgroundColor: theme.palette.grey[100], // Changed from dark.main to grey[100]\n color: theme.palette.dark.main, // Keep text dark instead of light\n borderColor: theme.palette.dark.main, // Keep border dark\n },\n}));\n\nfunction mapStatusToVariableState(status: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\":\n return VariableState.Accepted;\n case \"Pending\":\n return VariableState.Pending;\n case \"Rejected\":\n return VariableState.Rejected;\n case \"Not Accepted\":\n return VariableState.NotAccepted;\n case \"Draft\":\n return VariableState.Draft;\n default:\n return undefined;\n }\n}\n\n\nfunction mapRequirementTypeToState(reqType: string): RequirementType | undefined {\n switch (reqType) {\n case \"Default\":\n return RequirementType.Default;\n case \"Optional\":\n return RequirementType.Optional;\n default:\n return undefined;\n }\n}\n\nexport const Modal: React.FC<ModalProps> = ({\n isOpen,\n onClose,\n status,\n requirementType,\n description,\n value,\n defaultText,\n note,\n onSave,\n onSubmit,\n successMessage,\n errorMessage,\n onDeclineWording,\n onPrevious,\n onNext,\n currentPage = 1,\n totalPages = 1,\n isLoading\n}) => {\n const variableState = mapStatusToVariableState(status);\n const variableReqType = mapRequirementTypeToState(requirementType)\n\n const [textValue, setTextValue] = useState(value);\n const [prevTextValue, setPrevTextValue] = useState(value);\n\n const [useDefaultValue, setUseDefaultValue] = useState(true);\n const [isSaving, setIsSaving] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const theme = useTheme()\n\n useEffect(() => {\n if (variableState === (VariableState.Pending || VariableState.Draft)) {\n setUseDefaultValue(false);\n }\n }, [status]);\n\n useEffect(() => {\n if (!isOpen) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isOpen]);\n\n useEffect(() => {\n if (successMessage && successMessage !== '') {\n toast.success(successMessage);\n }\n }, [successMessage]);\n \n useEffect(() => {\n if (errorMessage && errorMessage !== '') {\n toast.error(errorMessage);\n }\n }, [errorMessage]);\n \n useEffect(() => {\n if (!isLoading) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isLoading]);\n\n useEffect(() => {\n if (useDefaultValue){\n setPrevTextValue(textValue);\n setTextValue(defaultText);\n } else {\n setTextValue(prevTextValue);\n }\n }, [useDefaultValue]);\n\n\n const handleUseDefaultValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setUseDefaultValue(event.target.checked);\n };\n\n\n const canSubmitSave = isLoading || variableState === VariableState.Pending\n\n const statusConfig = {\n [VariableState.Pending]: { color: '#EBC7FF', label: 'Pending' },\n [VariableState.Draft]: { color: '#FFC365', label: 'Draft' },\n [VariableState.NotAccepted]: { color: '#DBF59A', label: 'Not Accepted' },\n [VariableState.Rejected]: { color: '#FFBCB3', label: 'Rejected' },\n [VariableState.Accepted]: { color: '#DBF59A', label: 'Accepted' },\n };\n\n const reqTypeConfig = {\n [RequirementType.Default]: { color: '#F5A623', label: 'Mandatory' },\n [RequirementType.Optional]: { color: '#F5D76E', label: 'Optional' },\n };\n\n const statusStyle = variableState ? statusConfig[variableState] : { color: '#ccc', label: 'Unknown' };;\n const requirementTypeStyle = variableReqType ? reqTypeConfig[variableReqType] : { color: '#ccc', label: 'Unknown' };;\n\n\n const handleSave = () => {\n setIsSaving(true);\n onSave?.(textValue, useDefaultValue);\n };\n\n\n const handleSubmit = () => {\n setIsSubmitting(true);\n onSubmit?.(textValue, useDefaultValue);\n };\n\n\n return (\n <StyledDialog open={isOpen} onClose={onClose} maxWidth=\"md\" fullWidth>\n <IconButton\n onClick={onClose}\n disabled={isLoading}\n sx={{\n position: 'absolute',\n top: 16,\n right: 16,\n zIndex: 1,\n }}\n >\n <CloseRounded sx={{ fontSize: 24 }} />\n </IconButton>\n\n\n <DialogContent sx={{ p: { xs: 3, sm: 4, md: 6 } }}>\n {/* Status Chip */}\n <Box sx={{ mb: 3}}>\n <Chip\n label={requirementTypeStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: requirementTypeStyle.color,\n borderColor: requirementTypeStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n <Chip\n label={statusStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: '#FDFCEE',\n borderColor: statusStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n </Box>\n\n\n {/* Description */}\n <Typography sx={{ mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }}>\n {description}\n </Typography>\n\n\n {/* Error Alert with Custom Icon */}\n {variableState === VariableState.Rejected && note && (\n <Alert\n variant=\"error\"\n icon={<InfoOutlineRounded sx={{ fontSize: 20 }} />}\n sx={{\n mb: 2\n }}\n >\n {note}\n </Alert>\n )}\n\n {/* Info Alert with Custom Background and Icon */}\n {variableState !== VariableState.Rejected && note && (\n <Alert\n variant=\"info\"\n icon={<ArticleRounded sx={{ fontSize: 20, color: '#4D3019'}} />}\n sx={{\n mb: 2,\n backgroundColor: '#00000000',\n borderColor: '#acacacff',\n color: '#4D3019',\n }}\n >\n {note}\n </Alert>\n )}\n\n\n {/* Text Field */}\n <TextField\n multiline\n rows={6}\n fullWidth\n value={textValue}\n onChange={(e) => setTextValue(e.target.value)}\n disabled={useDefaultValue || canSubmitSave}\n sx={{\n mb: 2,\n '& .MuiOutlinedInput-root': {\n backgroundColor: useDefaultValue || canSubmitSave ? 'rgba(0, 0, 0, 0.05)' : '#fff',\n borderRadius: 2,\n },\n }}\n />\n\n\n {/* Checkbox */}\n <FormControlLabel\n control={\n <Checkbox\n checked={useDefaultValue}\n disabled={canSubmitSave}\n onChange={handleUseDefaultValueChange}\n sx={{\n color: '#AC46FF',\n '&.Mui-checked': {\n color: '#AC46FF',\n },\n }}\n />\n }\n label=\"Use Default Value\"\n sx={{ mb: 3 }}\n />\n\n\n {/* Footer with Buttons and Navigation */}\n <Box\n sx={{\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n alignItems: { xs: 'stretch', sm: 'center' },\n justifyContent: 'space-between',\n gap: 2,\n pt: 3,\n borderTop: '1px solid',\n borderColor: 'divider',\n }}\n >\n {/* Action Buttons */}\n <Box sx={{ display: 'flex', gap: 1.5, flexWrap: 'wrap' }}>\n <Button\n onClick={handleSave}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n >\n {isSaving ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Saving...</Typography></> : \"Save\"}\n </Button>\n <Button\n onClick={handleSubmit}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n sx={{\n backgroundColor: '#ac46ff52',\n '&:hover': {\n backgroundColor: '#ac46ff80',\n },\n }}\n >\n {isSubmitting ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Submitting...</Typography></> : \"Submit for review\"}\n </Button>\n {variableReqType === RequirementType.Optional? \n (\n <Button onClick={onDeclineWording} variant=\"outline\" size=\"md\" sx={{\n backgroundColor: '#ff464652',\n '&:hover': {\n backgroundColor: '#ff464680', // Darker purple on hover\n }\n }}\n disabled={canSubmitSave}\n >\n Decline wording\n </Button>\n ) : \n (\n <>\n </>\n )\n }\n </Box>\n \n\n {/* Navigation */}\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 1.5,\n justifyContent: { xs: 'space-between', sm: 'flex-end' },\n }}\n >\n {currentPage !== 1 && <NavButton onClick={onPrevious} aria-label=\"Previous\" disabled={isLoading}>\n <ArrowBackIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n {currentPage !== totalPages && <NavButton onClick={onNext} aria-label=\"Next\" disabled={isLoading}>\n <ArrowForwardIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n <Typography fontWeight={500} fontSize=\"1.125rem\">\n {currentPage}/{totalPages}\n </Typography>\n </Box>\n </Box>\n </DialogContent>\n </StyledDialog>\n );\n};\n"],"names":["styled","Dialog","IconButton","useState","useTheme","useEffect","toast","_jsxs","_jsx","CloseRounded","DialogContent","Box","Chip","Typography","Alert","InfoOutlineRounded","ArticleRounded","TextField","FormControlLabel","Checkbox","Button","_Fragment","CircularProgress","ArrowBackIosRounded","ArrowForwardIosRounded"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","sources":["../../../../src/components/Modal.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n Dialog,\n DialogContent,\n IconButton,\n Box,\n Typography,\n TextField,\n Checkbox,\n FormControlLabel,\n Alert as MuiAlert,\n Chip,\n styled,\n CircularProgress,\n useTheme,\n} from '@mui/material';\nimport { Button } from './Button';\nimport { ArrowBackIosRounded, ArrowForwardIosRounded, ArticleRounded, CloseRounded, ErrorOutlineRounded, InfoOutlineRounded, StickyNote2Rounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\nimport { toast } from 'react-toastify';\n\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n ActionRequired = \"Action Required\",\n Declined = \"Declined\",\n Draft = \"Draft\"\n}\n\nenum RequirementType {\n Default = \"Default\",\n Optional = \"Optional\"\n}\n\n\ninterface ModalProps {\n isOpen: boolean;\n onClose: () => void;\n status: string;\n requirementType: string,\n description: string;\n value: string;\n defaultText: string;\n note?: string;\n onSave?: (fieldValue: string, defaultChecked: boolean) => void;\n onSubmit?: (fieldValue: string, defaultChecked: boolean) => void;\n successMessage?: string;\n errorMessage?: string;\n onDeclineWording?: () => void;\n onPrevious?: () => void;\n onNext?: () => void;\n currentPage?: number;\n totalPages?: number;\n isLoading: boolean;\n}\n\n\nconst StyledDialog = styled(Dialog)(({ theme }) => ({\n '& .MuiDialog-paper': {\n color: theme.palette.background.default,\n borderRadius: theme.shape.borderRadius,\n maxWidth: '896px',\n width: '100%',\n maxHeight: '90vh',\n },\n}));\n\n\nconst NavButton = styled(IconButton)(({ theme }) => ({\n width: '40px',\n height: '40px',\n borderRadius: 999,\n border: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: '#fff',\n padding: theme.spacing(1, 2),\n '&:hover': {\n backgroundColor: theme.palette.grey[100], // Changed from dark.main to grey[100]\n color: theme.palette.dark.main, // Keep text dark instead of light\n borderColor: theme.palette.dark.main, // Keep border dark\n },\n}));\n\nfunction mapStatusToVariableState(status: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\":\n return VariableState.Accepted;\n case \"Pending\":\n return VariableState.Pending;\n case \"Action Required\":\n return VariableState.ActionRequired;\n case \"Declined\":\n return VariableState.Declined;\n case \"Draft\":\n return VariableState.Draft;\n default:\n return undefined;\n }\n}\n\n\nfunction mapRequirementTypeToState(reqType: string): RequirementType | undefined {\n switch (reqType) {\n case \"Default\":\n return RequirementType.Default;\n case \"Optional\":\n return RequirementType.Optional;\n default:\n return undefined;\n }\n}\n\nexport const Modal: React.FC<ModalProps> = ({\n isOpen,\n onClose,\n status,\n requirementType,\n description,\n value,\n defaultText,\n note,\n onSave,\n onSubmit,\n successMessage,\n errorMessage,\n onDeclineWording,\n onPrevious,\n onNext,\n currentPage = 1,\n totalPages = 1,\n isLoading\n}) => {\n const variableState = mapStatusToVariableState(status);\n const variableReqType = mapRequirementTypeToState(requirementType)\n\n const [textValue, setTextValue] = useState(value);\n const [prevTextValue, setPrevTextValue] = useState(value);\n\n const [useDefaultValue, setUseDefaultValue] = useState(true);\n const [isSaving, setIsSaving] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const theme = useTheme()\n\n useEffect(() => {\n if (variableState === (VariableState.Pending || VariableState.Draft)) {\n setUseDefaultValue(false);\n }\n }, [status]);\n\n useEffect(() => {\n if (!isOpen) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isOpen]);\n\n useEffect(() => {\n if (successMessage && successMessage !== '') {\n toast.success(successMessage);\n }\n }, [successMessage]);\n \n useEffect(() => {\n if (errorMessage && errorMessage !== '') {\n toast.error(errorMessage);\n }\n }, [errorMessage]);\n \n useEffect(() => {\n if (!isLoading) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isLoading]);\n\n useEffect(() => {\n if (useDefaultValue){\n setPrevTextValue(textValue);\n setTextValue(defaultText);\n } else {\n setTextValue(prevTextValue);\n }\n }, [useDefaultValue]);\n\n\n const handleUseDefaultValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setUseDefaultValue(event.target.checked);\n };\n\n\n const canSubmitSave = isLoading || variableState === VariableState.Pending\n\n const statusConfig = {\n [VariableState.Pending]: { color: '#EBC7FF', label: 'Pending' },\n [VariableState.Draft]: { color: '#4D3019', label: 'Draft' },\n [VariableState.Declined]: { color: '#4D3019', label: 'Declined' },\n [VariableState.ActionRequired]: { color: '#FFBCB3', label: 'Action Required' },\n [VariableState.Accepted]: { color: '#DBF59A', label: 'Accepted' },\n };\n\n const reqTypeConfig = {\n [RequirementType.Default]: { color: '#F5A623', label: 'Mandatory' },\n [RequirementType.Optional]: { color: '#F5D76E', label: 'Optional' },\n };\n\n const statusStyle = variableState ? statusConfig[variableState] : { color: '#ccc', label: 'Unknown' };;\n const requirementTypeStyle = variableReqType ? reqTypeConfig[variableReqType] : { color: '#ccc', label: 'Unknown' };;\n\n\n const handleSave = () => {\n setIsSaving(true);\n onSave?.(textValue, useDefaultValue);\n };\n\n\n const handleSubmit = () => {\n setIsSubmitting(true);\n onSubmit?.(textValue, useDefaultValue);\n };\n\n\n return (\n <StyledDialog open={isOpen} onClose={onClose} maxWidth=\"md\" fullWidth>\n <IconButton\n onClick={onClose}\n disabled={isLoading}\n sx={{\n position: 'absolute',\n top: 16,\n right: 16,\n zIndex: 1,\n }}\n >\n <CloseRounded sx={{ fontSize: 24 }} />\n </IconButton>\n\n\n <DialogContent sx={{ p: { xs: 3, sm: 4, md: 6 } }}>\n {/* Status Chip */}\n <Box sx={{ mb: 3}}>\n <Chip\n label={requirementTypeStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: requirementTypeStyle.color,\n borderColor: requirementTypeStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n <Chip\n label={statusStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: '#FDFCEE',\n borderColor: statusStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n </Box>\n\n\n {/* Description */}\n <Typography sx={{ mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }}>\n {description}\n </Typography>\n\n\n {/* Error Alert with Custom Icon */}\n {variableState === VariableState.ActionRequired && note && (\n <Alert\n variant=\"error\"\n icon={<InfoOutlineRounded sx={{ fontSize: 20 }} />}\n sx={{\n mb: 2\n }}\n >\n {note}\n </Alert>\n )}\n\n {/* Info Alert with Custom Background and Icon */}\n {variableState !== VariableState.ActionRequired && note && (\n <Alert\n variant=\"info\"\n icon={<ArticleRounded sx={{ fontSize: 20, color: '#4D3019'}} />}\n sx={{\n mb: 2,\n backgroundColor: '#00000000',\n borderColor: '#acacacff',\n color: '#4D3019',\n }}\n >\n {note}\n </Alert>\n )}\n\n\n {/* Text Field */}\n <TextField\n multiline\n rows={6}\n fullWidth\n value={textValue}\n onChange={(e) => setTextValue(e.target.value)}\n disabled={useDefaultValue || canSubmitSave}\n sx={{\n mb: 2,\n '& .MuiOutlinedInput-root': {\n backgroundColor: useDefaultValue || canSubmitSave ? 'rgba(0, 0, 0, 0.05)' : '#fff',\n borderRadius: 2,\n },\n }}\n />\n\n\n {/* Checkbox */}\n <FormControlLabel\n control={\n <Checkbox\n checked={useDefaultValue}\n disabled={canSubmitSave}\n onChange={handleUseDefaultValueChange}\n sx={{\n color: '#AC46FF',\n '&.Mui-checked': {\n color: '#AC46FF',\n },\n }}\n />\n }\n label=\"Use Default Wording\"\n sx={{ mb: 3 }}\n />\n\n <Box\n sx={{\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n alignItems: { xs: 'stretch', sm: 'center' },\n justifyContent: 'space-between',\n gap: 2,\n pt: 3,\n borderTop: '1px solid',\n borderColor: 'divider',\n }}\n >\n {variableState !== VariableState.Declined ? (\n <Box sx={{ display: 'flex', gap: 1.5, flexWrap: 'wrap' }}>\n {useDefaultValue === false? \n (\n <Button\n onClick={handleSave}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n >\n {isSaving ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Saving...</Typography></> : \"Save\"}\n </Button>\n ) : (<></>)\n }\n <Button\n onClick={handleSubmit}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n sx={{\n backgroundColor: '#ac46ff52',\n '&:hover': {\n backgroundColor: '#ac46ff80',\n },\n }}\n >\n {isSubmitting ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Submitting...</Typography></> : \"Submit for review\"}\n </Button>\n {variableReqType === RequirementType.Optional || useDefaultValue === false &&\n (\n <Button onClick={onDeclineWording} variant=\"outline\" size=\"md\" sx={{\n backgroundColor: '#ff464652',\n '&:hover': {\n backgroundColor: '#ff464680', // Darker purple on hover\n }\n }}\n disabled={canSubmitSave}\n >\n Decline wording\n </Button>\n )}\n </Box>\n ) : (<Box sx={{ display: 'flex', gap: 1.5, flexWrap: 'wrap' }}></Box>)}\n \n\n {/* Navigation */}\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 1.5,\n justifyContent: { xs: 'space-between', sm: 'flex-end' },\n }}\n >\n {currentPage !== 1 && <NavButton onClick={onPrevious} aria-label=\"Previous\" disabled={isLoading}>\n <ArrowBackIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n {currentPage !== totalPages && <NavButton onClick={onNext} aria-label=\"Next\" disabled={isLoading}>\n <ArrowForwardIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n <Typography fontWeight={500} fontSize=\"1.125rem\">\n {currentPage}/{totalPages}\n </Typography>\n </Box>\n </Box>\n </DialogContent>\n </StyledDialog>\n );\n};\n"],"names":["styled","Dialog","IconButton","useState","useTheme","useEffect","toast","_jsxs","_jsx","CloseRounded","DialogContent","Box","Chip","Typography","Alert","InfoOutlineRounded","ArticleRounded","TextField","FormControlLabel","Checkbox","Button","_Fragment","CircularProgress","ArrowBackIosRounded","ArrowForwardIosRounded"],"mappings":"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"}
@@ -11,16 +11,16 @@ var VariableState;
11
11
  (function (VariableState) {
12
12
  VariableState["Accepted"] = "Accepted";
13
13
  VariableState["Pending"] = "Pending";
14
- VariableState["Rejected"] = "Rejected";
15
- VariableState["NotAccepted"] = "Not Accepted";
14
+ VariableState["ActionRequired"] = "Action Required";
15
+ VariableState["Declined"] = "Declined";
16
16
  VariableState["Draft"] = "Draft";
17
17
  })(VariableState || (VariableState = {}));
18
18
  function mapStatusToVariableState(status) {
19
19
  switch (status) {
20
20
  case "Accepted": return VariableState.Accepted;
21
21
  case "Pending": return VariableState.Pending;
22
- case "Rejected": return VariableState.Rejected;
23
- case "Not Accepted": return VariableState.NotAccepted;
22
+ case "Action Required": return VariableState.ActionRequired;
23
+ case "Declined": return VariableState.Declined;
24
24
  case "Draft": return VariableState.Draft;
25
25
  default: return undefined;
26
26
  }
@@ -44,19 +44,19 @@ const statusConfig = {
44
44
  chipTextColor: '#4D3019',
45
45
  alertVariant: 'info',
46
46
  },
47
- Rejected: {
47
+ 'Action Required': {
48
48
  highlight: '#FBEEEE',
49
49
  highlightSelected: '#FFBCB3',
50
- label: 'Rejected',
50
+ label: 'ActionRequired',
51
51
  labelColor: '#CC0000',
52
52
  chipColor: '#F56B6B',
53
53
  chipTextColor: '#fff',
54
54
  alertVariant: 'error',
55
55
  },
56
- 'Not Accepted': {
56
+ 'Declined': {
57
57
  highlight: '#FFF6D1',
58
58
  highlightSelected: '#FDE58E',
59
- label: 'Not Accepted',
59
+ label: 'Declined',
60
60
  labelColor: 'var(--color-secondary)',
61
61
  chipColor: '#A3D977',
62
62
  chipTextColor: '#4D3019',
@@ -1 +1 @@
1
- {"version":3,"file":"NoteBox.js","sources":["../../../../src/components/NoteBox.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Box, Typography, IconButton, styled, Chip } from '@mui/material';\nimport { CheckRounded, EditRounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\n\n// Status Enum\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n Rejected = \"Rejected\",\n NotAccepted = \"Not Accepted\",\n Draft = \"Draft\"\n}\n\ninterface NoteBoxProps {\n status?: string; // Use only status now\n label?: string;\n note?: string;\n children: React.ReactNode;\n className?: string;\n onEditClick?: () => void;\n}\n\nfunction mapStatusToVariableState(status?: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\": return VariableState.Accepted;\n case \"Pending\": return VariableState.Pending;\n case \"Rejected\": return VariableState.Rejected;\n case \"Not Accepted\": return VariableState.NotAccepted;\n case \"Draft\": return VariableState.Draft;\n default: return undefined;\n }\n}\n\n// Status based color configs (from Modal)\nconst statusConfig: {\n [key in VariableState]: {\n highlight: string;\n highlightSelected: string;\n label: string;\n labelColor: string;\n chipColor: string;\n chipTextColor: string;\n alertVariant?: \"error\" | \"info\";\n }\n} = {\n Accepted: {\n highlight: '#EDF9CD',\n highlightSelected: '#DBF59A',\n label: 'Accepted',\n labelColor: '#2D5016',\n chipColor: '#A3D977',\n chipTextColor: '#fff',\n },\n Pending: {\n highlight: '#F5E2FF',\n highlightSelected: '#EBC7FF',\n label: 'Pending',\n labelColor: 'var(--color-secondary)',\n chipColor: '#F5A623',\n chipTextColor: '#4D3019',\n alertVariant: 'info',\n },\n Rejected: {\n highlight: '#FBEEEE',\n highlightSelected: '#FFBCB3',\n label: 'Rejected',\n labelColor: '#CC0000',\n chipColor: '#F56B6B',\n chipTextColor: '#fff',\n alertVariant: 'error',\n },\n 'Not Accepted': {\n highlight: '#FFF6D1',\n highlightSelected: '#FDE58E',\n label: 'Not Accepted',\n labelColor: 'var(--color-secondary)',\n chipColor: '#A3D977',\n chipTextColor: '#4D3019',\n },\n Draft: {\n highlight: '#FFEACD',\n highlightSelected: '#FFC365',\n label: 'Draft',\n labelColor: 'rgba(0, 0, 0, 0.6)',\n chipColor: '#F5D76E',\n chipTextColor: '#fff',\n },\n};\n\nconst NoteContainer = styled(Box)({\n position: 'relative',\n maxWidth: '100%',\n});\n\n// Uses highlight colors driven by status exclusively\nconst HighlightWrapper = styled(Box, {\n shouldForwardProp: (prop) => \n prop !== 'isHovered' && \n prop !== 'highlightColor' && \n prop !== 'highlightSelectedColor'\n})<{\n isHovered: boolean;\n highlightColor: string;\n highlightSelectedColor: string;\n}>(({ isHovered, highlightColor, highlightSelectedColor }) => ({\n position: 'relative',\n display: 'inline-block',\n maxWidth: '100%',\n '&:hover .edit-button': {\n opacity: 1,\n },\n '& .highlight-span': {\n background: isHovered ? highlightSelectedColor : highlightColor,\n padding: '2px 4px',\n borderBottom: '2px solid rgba(77, 48, 25, 0.3)',\n boxDecorationBreak: 'clone',\n WebkitBoxDecorationBreak: 'clone',\n transition: 'background 0.2s ease',\n cursor: 'pointer',\n fontSize: '1rem',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n display: 'inline',\n color: '#4D3019',\n },\n}));\n\nconst EditButton = styled(IconButton)(({ theme }) => ({\n position: 'absolute',\n top: 0,\n right: 0,\n transform: 'translate(50%, -50%)',\n width: 20,\n height: 20,\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n backgroundColor: '#4D3019',\n opacity: 0,\n transition: 'all 0.2s ease',\n boxShadow: '0 1px 3px rgba(0,0,0,0.12)',\n '&:hover': {\n backgroundColor: '#4D3019',\n transform: 'translate(50%, -50%) scale(1.1)',\n },\n}));\n\nexport const NoteBox: React.FC<NoteBoxProps> = ({\n status,\n label,\n note,\n children,\n className = '',\n onEditClick,\n}) => {\n const [isHovered, setIsHovered] = useState(false);\n\n // Map current status\n const variableState = mapStatusToVariableState(status);\n const style = variableState\n ? statusConfig[variableState]\n : {\n highlight: '#EEE',\n highlightSelected: '#DDD',\n label: label || '',\n labelColor: 'rgba(0,0,0,0.6)',\n chipColor: '#ccc',\n chipTextColor: '#4D3019',\n };\n\n return (\n <NoteContainer className={className}>\n {/* Alert for note when status matches and note available */}\n {variableState && style.alertVariant && note && (\n <Alert variant={style.alertVariant} sx={{ mb: 1 }}>\n {note}\n </Alert>\n )}\n\n {/* Highlighted content box */}\n <HighlightWrapper\n isHovered={isHovered}\n highlightColor={style.highlight}\n highlightSelectedColor={style.highlightSelected}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n >\n <span className=\"highlight-span\">{children}</span>\n <EditButton\n className=\"edit-button\"\n onClick={(e) => {\n e.stopPropagation();\n if (onEditClick) {\n onEditClick();\n }\n }}\n title=\"Edit variable highlight\"\n size=\"small\"\n >\n {variableState === VariableState.Accepted \n ? <CheckRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> \n : <EditRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> }\n </EditButton>\n </HighlightWrapper>\n </NoteContainer>\n );\n};\n"],"names":["styled","Box","IconButton","useState","_jsxs","_jsx","Alert","CheckRounded","EditRounded"],"mappings":";;;;;;;;AAKA;AACA,IAAK,aAMJ;AAND,CAAA,UAAK,aAAa,EAAA;AAChB,IAAA,aAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,aAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,aAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,aAAA,CAAA,aAAA,CAAA,GAAA,cAA4B;AAC5B,IAAA,aAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EANI,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;AAiBlB,SAAS,wBAAwB,CAAC,MAAe,EAAA;IAC/C,QAAQ,MAAM;AACZ,QAAA,KAAK,UAAU,EAAE,OAAO,aAAa,CAAC,QAAQ;AAC9C,QAAA,KAAK,SAAS,EAAE,OAAO,aAAa,CAAC,OAAO;AAC5C,QAAA,KAAK,UAAU,EAAE,OAAO,aAAa,CAAC,QAAQ;AAC9C,QAAA,KAAK,cAAc,EAAE,OAAO,aAAa,CAAC,WAAW;AACrD,QAAA,KAAK,OAAO,EAAE,OAAO,aAAa,CAAC,KAAK;AACxC,QAAA,SAAS,OAAO,SAAS;;AAE7B;AAEA;AACA,MAAM,YAAY,GAUd;AACF,IAAA,QAAQ,EAAE;AACR,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,iBAAiB,EAAE,SAAS;AAC5B,QAAA,KAAK,EAAE,UAAU;AACjB,QAAA,UAAU,EAAE,SAAS;AACrB,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,aAAa,EAAE,MAAM;AACtB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,iBAAiB,EAAE,SAAS;AAC5B,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,UAAU,EAAE,wBAAwB;AACpC,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,aAAa,EAAE,SAAS;AACxB,QAAA,YAAY,EAAE,MAAM;AACrB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,iBAAiB,EAAE,SAAS;AAC5B,QAAA,KAAK,EAAE,UAAU;AACjB,QAAA,UAAU,EAAE,SAAS;AACrB,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,aAAa,EAAE,MAAM;AACrB,QAAA,YAAY,EAAE,OAAO;AACtB,KAAA;AACD,IAAA,cAAc,EAAE;AACd,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,iBAAiB,EAAE,SAAS;AAC5B,QAAA,KAAK,EAAE,cAAc;AACrB,QAAA,UAAU,EAAE,wBAAwB;AACpC,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,aAAa,EAAE,SAAS;AACzB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,iBAAiB,EAAE,SAAS;AAC5B,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,UAAU,EAAE,oBAAoB;AAChC,QAAA,SAAS,EAAE,SAAS;AACpB,QAAA,aAAa,EAAE,MAAM;AACtB,KAAA;CACF;AAED,MAAM,aAAa,GAAGA,eAAM,CAACC,YAAG,CAAC,CAAC;AAChC,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,QAAQ,EAAE,MAAM;AACjB,CAAA,CAAC;AAEF;AACA,MAAM,gBAAgB,GAAGD,eAAM,CAACC,YAAG,EAAE;IACnC,iBAAiB,EAAE,CAAC,IAAI,KACtB,IAAI,KAAK,WAAW;AACpB,QAAA,IAAI,KAAK,gBAAgB;AACzB,QAAA,IAAI,KAAK;AACZ,CAAA,CAAC,CAIC,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM;AAC7D,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,QAAQ,EAAE,MAAM;AAChB,IAAA,sBAAsB,EAAE;AACtB,QAAA,OAAO,EAAE,CAAC;AACX,KAAA;AACD,IAAA,mBAAmB,EAAE;QACnB,UAAU,EAAE,SAAS,GAAG,sBAAsB,GAAG,cAAc;AAC/D,QAAA,OAAO,EAAE,SAAS;AAClB,QAAA,YAAY,EAAE,iCAAiC;AAC/C,QAAA,kBAAkB,EAAE,OAAO;AAC3B,QAAA,wBAAwB,EAAE,OAAO;AACjC,QAAA,UAAU,EAAE,sBAAsB;AAClC,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,QAAQ,EAAE,MAAM;AAChB,QAAA,QAAQ,EAAE,YAAY;AACtB,QAAA,YAAY,EAAE,YAAY;AAC1B,QAAA,OAAO,EAAE,QAAQ;AACjB,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACF,CAAA,CAAC,CAAC;AAEH,MAAM,UAAU,GAAGD,eAAM,CAACE,mBAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AACpD,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,GAAG,EAAE,CAAC;AACN,IAAA,KAAK,EAAE,CAAC;AACR,IAAA,SAAS,EAAE,sBAAsB;AACjC,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,MAAM,EAAE,EAAE;IACV,YAAY,EAAE,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,YAAY,KAAK;UAC/C,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE;UACrC,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC;AACtC,IAAA,eAAe,EAAE,SAAS;AAC1B,IAAA,OAAO,EAAE,CAAC;AACV,IAAA,UAAU,EAAE,eAAe;AAC3B,IAAA,SAAS,EAAE,4BAA4B;AACvC,IAAA,SAAS,EAAE;AACT,QAAA,eAAe,EAAE,SAAS;AAC1B,QAAA,SAAS,EAAE,iCAAiC;AAC7C,KAAA;AACF,CAAA,CAAC,CAAC;MAEU,OAAO,GAA2B,CAAC,EAC9C,MAAM,EACN,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,SAAS,GAAG,EAAE,EACd,WAAW,GACZ,KAAI;IACH,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAGC,cAAQ,CAAC,KAAK,CAAC;;AAGjD,IAAA,MAAM,aAAa,GAAG,wBAAwB,CAAC,MAAM,CAAC;IACtD,MAAM,KAAK,GAAG;AACZ,UAAE,YAAY,CAAC,aAAa;AAC5B,UAAE;AACE,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,iBAAiB,EAAE,OAKpB;IAEL,QACEC,gBAAC,aAAa,EAAA,EAAC,SAAS,EAAE,SAAS,aAEhC,aAAa,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI,KAC1CC,cAAA,CAACC,WAAK,EAAA,EAAC,OAAO,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAA,QAAA,EAC9C,IAAI,GACC,CACT,EAGDF,gBAAC,gBAAgB,EAAA,EACf,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,KAAK,CAAC,SAAS,EAC/B,sBAAsB,EAAE,KAAK,CAAC,iBAAiB,EAC/C,YAAY,EAAE,MAAM,YAAY,CAAC,IAAI,CAAC,EACtC,YAAY,EAAE,MAAM,YAAY,CAAC,KAAK,CAAC,aAEvCC,cAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAC,gBAAgB,EAAA,QAAA,EAAE,QAAQ,EAAA,CAAQ,EAClDA,cAAA,CAAC,UAAU,EAAA,EACT,SAAS,EAAC,aAAa,EACvB,OAAO,EAAE,CAAC,CAAC,KAAI;4BACb,CAAC,CAAC,eAAe,EAAE;4BACnB,IAAI,WAAW,EAAE;AACf,gCAAA,WAAW,EAAE;4BACf;AACF,wBAAA,CAAC,EACD,KAAK,EAAC,yBAAyB,EAC/B,IAAI,EAAC,OAAO,EAAA,QAAA,EAEX,aAAa,KAAK,aAAa,CAAC;AAC/B,8BAAEA,cAAA,CAACE,0BAAY,IAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,EAAA;8BACpEF,cAAA,CAACG,yBAAW,EAAA,EAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,GAAI,EAAA,CAChE,CAAA,EAAA,CACI,CAAA,EAAA,CACL;AAEpB;;;;"}
1
+ {"version":3,"file":"NoteBox.js","sources":["../../../../src/components/NoteBox.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Box, Typography, IconButton, styled, Chip } from '@mui/material';\nimport { CheckRounded, EditRounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\n\n// Status Enum\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n ActionRequired = \"Action Required\",\n Declined = \"Declined\",\n Draft = \"Draft\"\n}\n\ninterface NoteBoxProps {\n status?: string; // Use only status now\n label?: string;\n note?: string;\n children: React.ReactNode;\n className?: string;\n onEditClick?: () => void;\n}\n\nfunction mapStatusToVariableState(status?: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\": return VariableState.Accepted;\n case \"Pending\": return VariableState.Pending;\n case \"Action Required\": return VariableState.ActionRequired;\n case \"Declined\": return VariableState.Declined;\n case \"Draft\": return VariableState.Draft;\n default: return undefined;\n }\n}\n\n// Status based color configs (from Modal)\nconst statusConfig: {\n [key in VariableState]: {\n highlight: string;\n highlightSelected: string;\n label: string;\n labelColor: string;\n chipColor: string;\n chipTextColor: string;\n alertVariant?: \"error\" | \"info\";\n }\n} = {\n Accepted: {\n highlight: '#EDF9CD',\n highlightSelected: '#DBF59A',\n label: 'Accepted',\n labelColor: '#2D5016',\n chipColor: '#A3D977',\n chipTextColor: '#fff',\n },\n Pending: {\n highlight: '#F5E2FF',\n highlightSelected: '#EBC7FF',\n label: 'Pending',\n labelColor: 'var(--color-secondary)',\n chipColor: '#F5A623',\n chipTextColor: '#4D3019',\n alertVariant: 'info',\n },\n 'Action Required': {\n highlight: '#FBEEEE',\n highlightSelected: '#FFBCB3',\n label: 'ActionRequired',\n labelColor: '#CC0000',\n chipColor: '#F56B6B',\n chipTextColor: '#fff',\n alertVariant: 'error',\n },\n 'Declined': {\n highlight: '#FFF6D1',\n highlightSelected: '#FDE58E',\n label: 'Declined',\n labelColor: 'var(--color-secondary)',\n chipColor: '#A3D977',\n chipTextColor: '#4D3019',\n },\n Draft: {\n highlight: '#FFEACD',\n highlightSelected: '#FFC365',\n label: 'Draft',\n labelColor: 'rgba(0, 0, 0, 0.6)',\n chipColor: '#F5D76E',\n chipTextColor: '#fff',\n },\n};\n\nconst NoteContainer = styled(Box)({\n position: 'relative',\n maxWidth: '100%',\n});\n\n// Uses highlight colors driven by status exclusively\nconst HighlightWrapper = styled(Box, {\n shouldForwardProp: (prop) => \n prop !== 'isHovered' && \n prop !== 'highlightColor' && \n prop !== 'highlightSelectedColor'\n})<{\n isHovered: boolean;\n highlightColor: string;\n highlightSelectedColor: string;\n}>(({ isHovered, highlightColor, highlightSelectedColor }) => ({\n position: 'relative',\n display: 'inline-block',\n maxWidth: '100%',\n '&:hover .edit-button': {\n opacity: 1,\n },\n '& .highlight-span': {\n background: isHovered ? highlightSelectedColor : highlightColor,\n padding: '2px 4px',\n borderBottom: '2px solid rgba(77, 48, 25, 0.3)',\n boxDecorationBreak: 'clone',\n WebkitBoxDecorationBreak: 'clone',\n transition: 'background 0.2s ease',\n cursor: 'pointer',\n fontSize: '1rem',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n display: 'inline',\n color: '#4D3019',\n },\n}));\n\nconst EditButton = styled(IconButton)(({ theme }) => ({\n position: 'absolute',\n top: 0,\n right: 0,\n transform: 'translate(50%, -50%)',\n width: 20,\n height: 20,\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n backgroundColor: '#4D3019',\n opacity: 0,\n transition: 'all 0.2s ease',\n boxShadow: '0 1px 3px rgba(0,0,0,0.12)',\n '&:hover': {\n backgroundColor: '#4D3019',\n transform: 'translate(50%, -50%) scale(1.1)',\n },\n}));\n\nexport const NoteBox: React.FC<NoteBoxProps> = ({\n status,\n label,\n note,\n children,\n className = '',\n onEditClick,\n}) => {\n const [isHovered, setIsHovered] = useState(false);\n\n // Map current status\n const variableState = mapStatusToVariableState(status);\n const style = variableState\n ? statusConfig[variableState]\n : {\n highlight: '#EEE',\n highlightSelected: '#DDD',\n label: label || '',\n labelColor: 'rgba(0,0,0,0.6)',\n chipColor: '#ccc',\n chipTextColor: '#4D3019',\n };\n\n return (\n <NoteContainer className={className}>\n {/* Alert for note when status matches and note available */}\n {variableState && style.alertVariant && note && (\n <Alert variant={style.alertVariant} sx={{ mb: 1 }}>\n {note}\n </Alert>\n )}\n\n {/* Highlighted content box */}\n <HighlightWrapper\n isHovered={isHovered}\n highlightColor={style.highlight}\n highlightSelectedColor={style.highlightSelected}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n >\n <span className=\"highlight-span\">{children}</span>\n <EditButton\n className=\"edit-button\"\n onClick={(e) => {\n e.stopPropagation();\n if (onEditClick) {\n onEditClick();\n }\n }}\n title=\"Edit variable highlight\"\n size=\"small\"\n >\n {variableState === VariableState.Accepted \n ? <CheckRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> \n : <EditRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> }\n </EditButton>\n </HighlightWrapper>\n </NoteContainer>\n );\n};\n"],"names":["styled","Box","IconButton","useState","_jsxs","_jsx","Alert","CheckRounded","EditRounded"],"mappings":"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"}
@@ -61,7 +61,7 @@ const TableOfContents = ({ sections, activeSection = 'current-section', onSectio
61
61
  fontWeight: 600,
62
62
  fontSize: '16px',
63
63
  mb: 3,
64
- }, children: "In this policy" }), jsxRuntime.jsx(material.Box, { component: "nav", sx: { display: 'flex', flexDirection: 'column', gap: 0.25 }, children: sections.map((section) => {
64
+ }, children: "In this policy" }), jsxRuntime.jsx(material.Box, { component: "nav", sx: { display: 'flex', flexDirection: 'column', gap: 0.25, overflowY: 'hidden' }, children: sections.map((section) => {
65
65
  const isActive = section.id === activeSection;
66
66
  return (jsxRuntime.jsx(NavLink, { onClick: () => handleClick(section.id), isActive: isActive, children: section.title }, section.id));
67
67
  }) })] }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"TableOfContents.js","sources":["../../../../src/components/TableOfContents.tsx"],"sourcesContent":["\n\nimport React from 'react';\nimport { Box, Typography, Link, styled } from '@mui/material';\n\ninterface Section {\n id: string;\n title: string;\n}\n\ninterface TableOfContentsProps {\n sections: Section[];\n activeSection?: string;\n onSectionClick?: (sectionId: string) => void;\n}\n\nconst Container = styled(Box)(({ theme }) => ({\n width: '100%',\n [theme.breakpoints.up('md')]: {\n position: 'sticky',\n right: 0,\n top: 0,\n width: '224px',\n float: 'right',\n marginLeft: theme.spacing(1.5),\n marginBottom: 0,\n },\n [theme.breakpoints.up('lg')]: {\n width: '256px',\n marginLeft: theme.spacing(2),\n },\n marginBottom: theme.spacing(2),\n}));\n\nconst ContentBox = styled(Box)(({ theme }) => ({\n backgroundColor: '#FEFDF7',\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n padding: theme.spacing(2.5),\n boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.1)',\n [theme.breakpoints.up('md')]: {\n padding: theme.spacing(3),\n },\n}));\n\nconst NavLink = styled(Box,{\n shouldForwardProp: (prop) => prop !== 'isActive'\n})<{ isActive: boolean }>(({ theme, isActive }) => ({\n display: 'block',\n padding: theme.spacing(1, 2),\n fontSize: '0.875rem',\n textDecoration: 'none',\n color: '#4D3019',\n transition: 'background-color 0.2s',\n borderLeft: isActive ? '4px solid #FFC365' : '4px solid transparent',\n backgroundColor: isActive ? '#FFEDD1' : 'transparent',\n fontWeight: isActive ? 700 : 400,\n cursor: 'pointer',\n '&:hover': {\n backgroundColor: '#FFEDD1',\n },\n}));\n\nexport const TableOfContents: React.FC<TableOfContentsProps> = ({\n sections,\n activeSection = 'current-section',\n onSectionClick\n}) => {\n const handleClick = (sectionId: string) => {\n const element = document.getElementById(sectionId);\n if (element) {\n element.scrollIntoView({ behavior: 'smooth', block: 'start' });\n onSectionClick?.(sectionId);\n }\n };\n\n return (\n <Container>\n <ContentBox>\n <Typography\n variant=\"h6\"\n sx={{\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '16px',\n mb: 3,\n }}\n >\n In this policy\n </Typography>\n <Box component=\"nav\" sx={{ display: 'flex', flexDirection: 'column', gap: 0.25 }}>\n {sections.map((section) => {\n const isActive = section.id === activeSection;\n return (\n <NavLink\n key={section.id}\n onClick={() => handleClick(section.id)}\n isActive={isActive}\n >\n {section.title}\n </NavLink>\n );\n })}\n </Box>\n </ContentBox>\n </Container>\n );\n};"],"names":["styled","Box","_jsx","_jsxs","Typography"],"mappings":"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"}
1
+ {"version":3,"file":"TableOfContents.js","sources":["../../../../src/components/TableOfContents.tsx"],"sourcesContent":["\n\nimport React from 'react';\nimport { Box, Typography, Link, styled } from '@mui/material';\n\ninterface Section {\n id: string;\n title: string;\n}\n\ninterface TableOfContentsProps {\n sections: Section[];\n activeSection?: string;\n onSectionClick?: (sectionId: string) => void;\n}\n\nconst Container = styled(Box)(({ theme }) => ({\n width: '100%',\n [theme.breakpoints.up('md')]: {\n position: 'sticky',\n right: 0,\n top: 0,\n width: '224px',\n float: 'right',\n marginLeft: theme.spacing(1.5),\n marginBottom: 0,\n },\n [theme.breakpoints.up('lg')]: {\n width: '256px',\n marginLeft: theme.spacing(2),\n },\n marginBottom: theme.spacing(2),\n}));\n\nconst ContentBox = styled(Box)(({ theme }) => ({\n backgroundColor: '#FEFDF7',\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n padding: theme.spacing(2.5),\n boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.1)',\n [theme.breakpoints.up('md')]: {\n padding: theme.spacing(3),\n },\n}));\n\nconst NavLink = styled(Box,{\n shouldForwardProp: (prop) => prop !== 'isActive'\n})<{ isActive: boolean }>(({ theme, isActive }) => ({\n display: 'block',\n padding: theme.spacing(1, 2),\n fontSize: '0.875rem',\n textDecoration: 'none',\n color: '#4D3019',\n transition: 'background-color 0.2s',\n borderLeft: isActive ? '4px solid #FFC365' : '4px solid transparent',\n backgroundColor: isActive ? '#FFEDD1' : 'transparent',\n fontWeight: isActive ? 700 : 400,\n cursor: 'pointer',\n '&:hover': {\n backgroundColor: '#FFEDD1',\n },\n}));\n\nexport const TableOfContents: React.FC<TableOfContentsProps> = ({\n sections,\n activeSection = 'current-section',\n onSectionClick\n}) => {\n const handleClick = (sectionId: string) => {\n const element = document.getElementById(sectionId);\n if (element) {\n element.scrollIntoView({ behavior: 'smooth', block: 'start' });\n onSectionClick?.(sectionId);\n }\n };\n\n return (\n <Container>\n <ContentBox>\n <Typography\n variant=\"h6\"\n sx={{\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '16px',\n mb: 3,\n }}\n >\n In this policy\n </Typography>\n <Box component=\"nav\" sx={{ display: 'flex', flexDirection: 'column', gap: 0.25, overflowY: 'hidden' }}>\n {sections.map((section) => {\n const isActive = section.id === activeSection;\n return (\n <NavLink\n key={section.id}\n onClick={() => handleClick(section.id)}\n isActive={isActive}\n >\n {section.title}\n </NavLink>\n );\n })}\n </Box>\n </ContentBox>\n </Container>\n );\n};"],"names":["styled","Box","_jsx","_jsxs","Typography"],"mappings":"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"}
package/dist/cjs/index.js CHANGED
@@ -22,6 +22,7 @@ var TableOfContents = require('./components/TableOfContents.js');
22
22
  var Toggle = require('./components/Toggle.js');
23
23
  var SimpleModal = require('./components/SimpleModal.js');
24
24
  var ActionButton = require('./components/ActionButton.js');
25
+ var ExpandingBoxToggle = require('./components/ExpandingBoxToggle.js');
25
26
  var ExpandingBox = require('./components/ExpandingBox.js');
26
27
  var Breadcrumb = require('./components/Breadcrumb.js');
27
28
  var AcknowledgementBox = require('./components/AcknowledgementBox.js');
@@ -54,6 +55,7 @@ exports.TableOfContents = TableOfContents.TableOfContents;
54
55
  exports.Toggle = Toggle.Toggle;
55
56
  exports.SimpleModal = SimpleModal.SimpleModal;
56
57
  exports.ActionButton = ActionButton.ActionButton;
58
+ exports.ExpandingBoxToggle = ExpandingBoxToggle.ExpandingBoxToggle;
57
59
  exports.ExpandingBox = ExpandingBox.ExpandingBox;
58
60
  exports.Breadcrumb = Breadcrumb.Breadcrumb;
59
61
  exports.AcknowledgementBox = AcknowledgementBox.AcknowledgementBox;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  interface ExpandingBoxProps {
2
- term: string;
3
- content: string;
2
+ open: boolean;
3
+ content: React.ReactNode | React.ReactNode[];
4
4
  }
5
- export declare function ExpandingBox({ term, content }: ExpandingBoxProps): import("react/jsx-runtime").JSX.Element;
5
+ export declare const ExpandingBox: React.FC<ExpandingBoxProps>;
6
6
  export {};
@@ -1,36 +1,6 @@
1
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
- import { useState } from 'react';
1
+ import { jsx } from 'react/jsx-runtime';
3
2
  import { styled, Box } from '@mui/material';
4
- import { useTheme } from '../ThemeProvider.js';
5
- import { IndeterminateCheckBoxRounded, AddBoxRounded } from '@mui/icons-material';
6
3
 
7
- const StyledWrapper = styled(Box)(({ theme, open }) => ({
8
- display: 'inline-block',
9
- position: 'relative',
10
- verticalAlign: 'top', // Prevents shifting
11
- }));
12
- const StyledParagraph = styled('span')(({ theme }) => ({
13
- color: theme.palette.dark.main,
14
- display: 'inline-flex',
15
- alignItems: 'center',
16
- }));
17
- const StyledTermWrapper = styled(Box)(({ theme, open }) => ({
18
- position: 'relative',
19
- display: 'inline-flex',
20
- alignItems: 'center',
21
- cursor: 'pointer',
22
- marginLeft: theme.spacing(0.5),
23
- paddingBottom: '1px',
24
- borderBottom: `2px solid ${theme.palette.dark.main}`,
25
- backgroundColor: theme.palette.background.default,
26
- }));
27
- const StyledIconWrapper = styled(Box)(({ theme }) => ({
28
- display: 'inline-flex',
29
- alignItems: 'center',
30
- justifyContent: 'center',
31
- marginLeft: theme.spacing(0.5),
32
- transition: 'color 0.2s',
33
- }));
34
4
  const StyledExpandingBox = styled(Box)(({ theme }) => ({
35
5
  marginTop: theme.spacing(2),
36
6
  padding: theme.spacing(2),
@@ -40,21 +10,11 @@ const StyledExpandingBox = styled(Box)(({ theme }) => ({
40
10
  border: `1px solid ${theme.palette.dark.main}`,
41
11
  backgroundColor: theme.palette.background.default,
42
12
  }));
43
- function ExpandingBox({ term, content }) {
44
- const theme = useTheme();
45
- const [open, setOpen] = useState(false);
46
- return (jsxs(Fragment, { children: [jsx(StyledWrapper, { open: open, children: jsx(StyledParagraph, { children: jsxs(StyledTermWrapper, { onClick: () => setOpen(!open), open: open, children: [term, jsx(StyledIconWrapper, { children: open ? (jsx(IndeterminateCheckBoxRounded, { sx: {
47
- fontSize: 16,
48
- color: theme.palette.text.primary
49
- } })) : (jsx(AddBoxRounded, { sx: {
50
- fontSize: 16,
51
- color: theme.palette.text.primary,
52
- } })) })] }) }) }), open && (jsx(StyledExpandingBox, { children: jsx(Box, { sx: {
53
- fontSize: '14px',
54
- color: theme.palette.dark.main,
55
- lineHeight: 1.5,
56
- }, dangerouslySetInnerHTML: { __html: content } }) }))] }));
57
- }
13
+ const ExpandingBox = ({ open, content, }) => {
14
+ if (!open)
15
+ return null;
16
+ return jsx(StyledExpandingBox, { children: content });
17
+ };
58
18
 
59
19
  export { ExpandingBox };
60
20
  //# sourceMappingURL=ExpandingBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExpandingBox.js","sources":["../../../../src/components/ExpandingBox.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { Box, styled, Typography } from '@mui/material';\nimport { useTheme } from '../ThemeProvider';\nimport { AddBoxRounded, IndeterminateCheckBoxRounded } from '@mui/icons-material';\n\ninterface ExpandingBoxProps {\n term: string;\n content: string;\n}\n\nconst StyledWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n display: 'inline-block',\n position: 'relative',\n verticalAlign: 'top', // Prevents shifting\n}));\n\nconst StyledParagraph = styled('span')(({ theme }) => ({\n color: theme.palette.dark.main,\n display: 'inline-flex',\n alignItems: 'center',\n}));\n\nconst StyledTermWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n marginLeft: theme.spacing(0.5),\n paddingBottom: '1px',\n borderBottom: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nconst StyledIconWrapper = styled(Box)(({ theme }) => ({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: theme.spacing(0.5),\n transition: 'color 0.2s',\n}));\n\nconst StyledExpandingBox = styled(Box)(({ theme }) => ({\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n border: `1px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nexport function ExpandingBox({ term, content }: ExpandingBoxProps) {\n const theme = useTheme();\n const [open, setOpen] = useState(false);\n\n return (\n <>\n <StyledWrapper open={open}>\n <StyledParagraph>\n <StyledTermWrapper onClick={() => setOpen(!open)} open={open}>\n {term}\n <StyledIconWrapper>\n {open ? (\n <IndeterminateCheckBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary\n }}\n />\n ) : (\n <AddBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary,\n }}\n />\n )}\n </StyledIconWrapper>\n </StyledTermWrapper>\n </StyledParagraph>\n </StyledWrapper>\n {open && (\n <StyledExpandingBox>\n <Box\n sx={{\n fontSize: '14px',\n color: theme.palette.dark.main,\n lineHeight: 1.5,\n }}\n dangerouslySetInnerHTML={{ __html: content }}\n />\n </StyledExpandingBox>\n )}\n </>\n );\n}\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"ExpandingBox.js","sources":["../../../../src/components/ExpandingBox.tsx"],"sourcesContent":["import { Box, styled } from '@mui/material';\ninterface ExpandingBoxProps {\n open: boolean;\n content: React.ReactNode | React.ReactNode[];\n}\n\nconst StyledExpandingBox = styled(Box)(({ theme }) => ({\n marginTop: theme.spacing(2),\n padding: theme.spacing(2),\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n border: `1px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nexport const ExpandingBox: React.FC<ExpandingBoxProps> = ({\n open,\n content,\n}) => {\n\n if (!open) return null;\n return <StyledExpandingBox>{content}</StyledExpandingBox>;\n}\n"],"names":["_jsx"],"mappings":";;;AAMA,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AACrD,IAAA,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC3B,IAAA,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACzB,YAAY,EAAE,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,YAAY,KAAK;UAC/C,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE;UACrC,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC;IACtC,MAAM,EAAE,aAAa,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,CAAE;AAC9C,IAAA,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO;AAClD,CAAA,CAAC,CAAC;AAEI,MAAM,YAAY,GAAgC,CAAC,EACxD,IAAI,EACJ,OAAO,GACR,KAAI;AAEH,IAAA,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,IAAI;AACtB,IAAA,OAAOA,GAAA,CAAC,kBAAkB,EAAA,EAAA,QAAA,EAAE,OAAO,GAAsB;AAC3D;;;;"}
@@ -0,0 +1,7 @@
1
+ interface ExpandingBoxToggleProps {
2
+ term: string;
3
+ open: boolean;
4
+ setOpen: (open: boolean) => void;
5
+ }
6
+ export declare const ExpandingBoxToggle: React.FC<ExpandingBoxToggleProps>;
7
+ export {};
@@ -0,0 +1,45 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { styled, Box } from '@mui/material';
3
+ import { useTheme } from '../ThemeProvider.js';
4
+ import { IndeterminateCheckBoxRounded, AddBoxRounded } from '@mui/icons-material';
5
+
6
+ const StyledWrapper = styled(Box)(({ theme, open }) => ({
7
+ display: 'inline-block',
8
+ position: 'relative',
9
+ verticalAlign: 'top', // Prevents shifting
10
+ }));
11
+ const StyledParagraph = styled('span')(({ theme }) => ({
12
+ color: theme.palette.dark.main,
13
+ display: 'inline-flex',
14
+ alignItems: 'center',
15
+ }));
16
+ const StyledTermWrapper = styled(Box)(({ theme, open }) => ({
17
+ position: 'relative',
18
+ display: 'inline-flex',
19
+ alignItems: 'center',
20
+ cursor: 'pointer',
21
+ marginLeft: theme.spacing(0.5),
22
+ paddingBottom: '1px',
23
+ borderBottom: `2px solid ${theme.palette.dark.main}`,
24
+ backgroundColor: theme.palette.background.default,
25
+ }));
26
+ const StyledIconWrapper = styled(Box)(({ theme }) => ({
27
+ display: 'inline-flex',
28
+ alignItems: 'center',
29
+ justifyContent: 'center',
30
+ marginLeft: theme.spacing(0.5),
31
+ transition: 'color 0.2s',
32
+ }));
33
+ const ExpandingBoxToggle = ({ term, open, setOpen, }) => {
34
+ const theme = useTheme();
35
+ return (jsx(StyledWrapper, { open: open, children: jsx(StyledParagraph, { children: jsxs(StyledTermWrapper, { onClick: () => setOpen(!open), open: open, children: [term, jsx(StyledIconWrapper, { children: open ? (jsx(IndeterminateCheckBoxRounded, { sx: {
36
+ fontSize: 16,
37
+ color: theme.palette.text.primary
38
+ } })) : (jsx(AddBoxRounded, { sx: {
39
+ fontSize: 16,
40
+ color: theme.palette.text.primary,
41
+ } })) })] }) }) }));
42
+ };
43
+
44
+ export { ExpandingBoxToggle };
45
+ //# sourceMappingURL=ExpandingBoxToggle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpandingBoxToggle.js","sources":["../../../../src/components/ExpandingBoxToggle.tsx"],"sourcesContent":["import { Box, styled } from '@mui/material';\nimport { useTheme } from '../ThemeProvider';\nimport { AddBoxRounded, IndeterminateCheckBoxRounded } from '@mui/icons-material';\n\ninterface ExpandingBoxToggleProps {\n term: string;\n open: boolean;\n setOpen: (open: boolean) => void;\n}\n\nconst StyledWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n display: 'inline-block',\n position: 'relative',\n verticalAlign: 'top', // Prevents shifting\n}));\n\nconst StyledParagraph = styled('span')(({ theme }) => ({\n color: theme.palette.dark.main,\n display: 'inline-flex',\n alignItems: 'center',\n}));\n\nconst StyledTermWrapper = styled(Box)<{ open: boolean }>(({ theme, open }) => ({\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'center',\n cursor: 'pointer',\n marginLeft: theme.spacing(0.5),\n paddingBottom: '1px',\n borderBottom: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: theme.palette.background.default,\n}));\n\nconst StyledIconWrapper = styled(Box)(({ theme }) => ({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n marginLeft: theme.spacing(0.5),\n transition: 'color 0.2s',\n}));\n\nexport const ExpandingBoxToggle: React.FC<ExpandingBoxToggleProps> = ({\n term,\n open,\n setOpen,\n}) => { const theme = useTheme();\n\n return (\n <StyledWrapper open={open}>\n <StyledParagraph>\n <StyledTermWrapper onClick={() => setOpen(!open)} open={open}>\n {term}\n <StyledIconWrapper>\n {open ? (\n <IndeterminateCheckBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary\n }}\n />\n ) : (\n <AddBoxRounded\n sx={{\n fontSize: 16,\n color: theme.palette.text.primary,\n }}\n />\n )}\n </StyledIconWrapper>\n </StyledTermWrapper>\n </StyledParagraph>\n </StyledWrapper>\n );\n}\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;AAUA,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM;AACzE,IAAA,OAAO,EAAE,cAAc;AACvB,IAAA,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,KAAK;AACrB,CAAA,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AACrD,IAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI;AAC9B,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,UAAU,EAAE,QAAQ;AACrB,CAAA,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM;AAC7E,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,UAAU,EAAE,QAAQ;AACpB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AAC9B,IAAA,aAAa,EAAE,KAAK;IACpB,YAAY,EAAE,aAAa,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,CAAE;AACpD,IAAA,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO;AAClD,CAAA,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;AACpD,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,UAAU,EAAE,QAAQ;AACpB,IAAA,cAAc,EAAE,QAAQ;AACxB,IAAA,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AAC9B,IAAA,UAAU,EAAE,YAAY;AACzB,CAAA,CAAC,CAAC;AAEI,MAAM,kBAAkB,GAAsC,CAAC,EACpE,IAAI,EACJ,IAAI,EACJ,OAAO,GACR,KAAI;AAAI,IAAA,MAAM,KAAK,GAAG,QAAQ,EAAE;AAE/B,IAAA,QACEA,GAAA,CAAC,aAAa,IAAC,IAAI,EAAE,IAAI,EAAA,QAAA,EACvBA,GAAA,CAAC,eAAe,EAAA,EAAA,QAAA,EACdC,IAAA,CAAC,iBAAiB,EAAA,EAAC,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAA,QAAA,EAAA,CACzD,IAAI,EACLD,GAAA,CAAC,iBAAiB,cACf,IAAI,IACHA,IAAC,4BAA4B,EAAA,EAC3B,EAAE,EAAE;AACF,gCAAA,QAAQ,EAAE,EAAE;AACZ,gCAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;6BAC3B,EAAA,CACD,KAEFA,GAAA,CAAC,aAAa,EAAA,EACZ,EAAE,EAAE;AACF,gCAAA,QAAQ,EAAE,EAAE;AACZ,gCAAA,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO;AAClC,6BAAA,EAAA,CACD,CACH,EAAA,CACiB,CAAA,EAAA,CACF,EAAA,CACJ,EAAA,CACJ;AAEpB;;;;"}
@@ -10,8 +10,8 @@ var VariableState;
10
10
  (function (VariableState) {
11
11
  VariableState["Accepted"] = "Accepted";
12
12
  VariableState["Pending"] = "Pending";
13
- VariableState["Rejected"] = "Rejected";
14
- VariableState["NotAccepted"] = "Not Accepted";
13
+ VariableState["ActionRequired"] = "Action Required";
14
+ VariableState["Declined"] = "Declined";
15
15
  VariableState["Draft"] = "Draft";
16
16
  })(VariableState || (VariableState = {}));
17
17
  var RequirementType;
@@ -47,10 +47,10 @@ function mapStatusToVariableState(status) {
47
47
  return VariableState.Accepted;
48
48
  case "Pending":
49
49
  return VariableState.Pending;
50
- case "Rejected":
51
- return VariableState.Rejected;
52
- case "Not Accepted":
53
- return VariableState.NotAccepted;
50
+ case "Action Required":
51
+ return VariableState.ActionRequired;
52
+ case "Declined":
53
+ return VariableState.Declined;
54
54
  case "Draft":
55
55
  return VariableState.Draft;
56
56
  default:
@@ -118,9 +118,9 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
118
118
  const canSubmitSave = isLoading || variableState === VariableState.Pending;
119
119
  const statusConfig = {
120
120
  [VariableState.Pending]: { color: '#EBC7FF', label: 'Pending' },
121
- [VariableState.Draft]: { color: '#FFC365', label: 'Draft' },
122
- [VariableState.NotAccepted]: { color: '#DBF59A', label: 'Not Accepted' },
123
- [VariableState.Rejected]: { color: '#FFBCB3', label: 'Rejected' },
121
+ [VariableState.Draft]: { color: '#4D3019', label: 'Draft' },
122
+ [VariableState.Declined]: { color: '#4D3019', label: 'Declined' },
123
+ [VariableState.ActionRequired]: { color: '#FFBCB3', label: 'Action Required' },
124
124
  [VariableState.Accepted]: { color: '#DBF59A', label: 'Accepted' },
125
125
  };
126
126
  const reqTypeConfig = {
@@ -166,9 +166,9 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
166
166
  py: 1,
167
167
  borderRadius: 0,
168
168
  px: 2,
169
- } })] }), jsx(Typography, { sx: { mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }, children: description }), variableState === VariableState.Rejected && note && (jsx(Alert, { variant: "error", icon: jsx(InfoOutlineRounded, { sx: { fontSize: 20 } }), sx: {
169
+ } })] }), jsx(Typography, { sx: { mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }, children: description }), variableState === VariableState.ActionRequired && note && (jsx(Alert, { variant: "error", icon: jsx(InfoOutlineRounded, { sx: { fontSize: 20 } }), sx: {
170
170
  mb: 2
171
- }, children: note })), variableState !== VariableState.Rejected && note && (jsx(Alert, { variant: "info", icon: jsx(ArticleRounded, { sx: { fontSize: 20, color: '#4D3019' } }), sx: {
171
+ }, children: note })), variableState !== VariableState.ActionRequired && note && (jsx(Alert, { variant: "info", icon: jsx(ArticleRounded, { sx: { fontSize: 20, color: '#4D3019' } }), sx: {
172
172
  mb: 2,
173
173
  backgroundColor: '#00000000',
174
174
  borderColor: '#acacacff',
@@ -184,7 +184,7 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
184
184
  '&.Mui-checked': {
185
185
  color: '#AC46FF',
186
186
  },
187
- } }), label: "Use Default Value", sx: { mb: 3 } }), jsxs(Box, { sx: {
187
+ } }), label: "Use Default Wording", sx: { mb: 3 } }), jsxs(Box, { sx: {
188
188
  display: 'flex',
189
189
  flexDirection: { xs: 'column', sm: 'row' },
190
190
  alignItems: { xs: 'stretch', sm: 'center' },
@@ -193,19 +193,19 @@ const Modal = ({ isOpen, onClose, status, requirementType, description, value, d
193
193
  pt: 3,
194
194
  borderTop: '1px solid',
195
195
  borderColor: 'divider',
196
- }, children: [jsxs(Box, { sx: { display: 'flex', gap: 1.5, flexWrap: 'wrap' }, children: [jsx(Button, { onClick: handleSave, variant: "outline", size: "md", disabled: canSubmitSave, children: isSaving ? jsxs(Fragment, { children: [jsx(CircularProgress, { size: 20 }), jsx(Typography, { sx: { paddingLeft: 2 }, children: "Saving..." })] }) : "Save" }), jsx(Button, { onClick: handleSubmit, variant: "outline", size: "md", disabled: canSubmitSave, sx: {
196
+ }, children: [variableState !== VariableState.Declined ? (jsxs(Box, { sx: { display: 'flex', gap: 1.5, flexWrap: 'wrap' }, children: [useDefaultValue === false ?
197
+ (jsx(Button, { onClick: handleSave, variant: "outline", size: "md", disabled: canSubmitSave, children: isSaving ? jsxs(Fragment, { children: [jsx(CircularProgress, { size: 20 }), jsx(Typography, { sx: { paddingLeft: 2 }, children: "Saving..." })] }) : "Save" })) : (jsx(Fragment, {})), jsx(Button, { onClick: handleSubmit, variant: "outline", size: "md", disabled: canSubmitSave, sx: {
197
198
  backgroundColor: '#ac46ff52',
198
199
  '&:hover': {
199
200
  backgroundColor: '#ac46ff80',
200
201
  },
201
- }, children: isSubmitting ? jsxs(Fragment, { children: [jsx(CircularProgress, { size: 20 }), jsx(Typography, { sx: { paddingLeft: 2 }, children: "Submitting..." })] }) : "Submit for review" }), variableReqType === RequirementType.Optional ?
202
+ }, children: isSubmitting ? jsxs(Fragment, { children: [jsx(CircularProgress, { size: 20 }), jsx(Typography, { sx: { paddingLeft: 2 }, children: "Submitting..." })] }) : "Submit for review" }), variableReqType === RequirementType.Optional || useDefaultValue === false &&
202
203
  (jsx(Button, { onClick: onDeclineWording, variant: "outline", size: "md", sx: {
203
204
  backgroundColor: '#ff464652',
204
205
  '&:hover': {
205
206
  backgroundColor: '#ff464680', // Darker purple on hover
206
207
  }
207
- }, disabled: canSubmitSave, children: "Decline wording" })) :
208
- (jsx(Fragment, {}))] }), jsxs(Box, { sx: {
208
+ }, disabled: canSubmitSave, children: "Decline wording" }))] })) : (jsx(Box, { sx: { display: 'flex', gap: 1.5, flexWrap: 'wrap' } })), jsxs(Box, { sx: {
209
209
  display: 'flex',
210
210
  alignItems: 'center',
211
211
  gap: 1.5,
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sources":["../../../../src/components/Modal.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n Dialog,\n DialogContent,\n IconButton,\n Box,\n Typography,\n TextField,\n Checkbox,\n FormControlLabel,\n Alert as MuiAlert,\n Chip,\n styled,\n CircularProgress,\n useTheme,\n} from '@mui/material';\nimport { Button } from './Button';\nimport { ArrowBackIosRounded, ArrowForwardIosRounded, ArticleRounded, CloseRounded, ErrorOutlineRounded, InfoOutlineRounded, StickyNote2Rounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\nimport { toast } from 'react-toastify';\n\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n Rejected = \"Rejected\",\n NotAccepted = \"Not Accepted\",\n Draft = \"Draft\"\n}\n\nenum RequirementType {\n Default = \"Default\",\n Optional = \"Optional\"\n}\n\n\ninterface ModalProps {\n isOpen: boolean;\n onClose: () => void;\n status: string;\n requirementType: string,\n description: string;\n value: string;\n defaultText: string;\n note?: string;\n onSave?: (fieldValue: string, defaultChecked: boolean) => void;\n onSubmit?: (fieldValue: string, defaultChecked: boolean) => void;\n successMessage?: string;\n errorMessage?: string;\n onDeclineWording?: () => void;\n onPrevious?: () => void;\n onNext?: () => void;\n currentPage?: number;\n totalPages?: number;\n isLoading: boolean;\n}\n\n\nconst StyledDialog = styled(Dialog)(({ theme }) => ({\n '& .MuiDialog-paper': {\n color: theme.palette.background.default,\n borderRadius: theme.shape.borderRadius,\n maxWidth: '896px',\n width: '100%',\n maxHeight: '90vh',\n },\n}));\n\n\nconst NavButton = styled(IconButton)(({ theme }) => ({\n width: '40px',\n height: '40px',\n borderRadius: 999,\n border: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: '#fff',\n padding: theme.spacing(1, 2),\n '&:hover': {\n backgroundColor: theme.palette.grey[100], // Changed from dark.main to grey[100]\n color: theme.palette.dark.main, // Keep text dark instead of light\n borderColor: theme.palette.dark.main, // Keep border dark\n },\n}));\n\nfunction mapStatusToVariableState(status: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\":\n return VariableState.Accepted;\n case \"Pending\":\n return VariableState.Pending;\n case \"Rejected\":\n return VariableState.Rejected;\n case \"Not Accepted\":\n return VariableState.NotAccepted;\n case \"Draft\":\n return VariableState.Draft;\n default:\n return undefined;\n }\n}\n\n\nfunction mapRequirementTypeToState(reqType: string): RequirementType | undefined {\n switch (reqType) {\n case \"Default\":\n return RequirementType.Default;\n case \"Optional\":\n return RequirementType.Optional;\n default:\n return undefined;\n }\n}\n\nexport const Modal: React.FC<ModalProps> = ({\n isOpen,\n onClose,\n status,\n requirementType,\n description,\n value,\n defaultText,\n note,\n onSave,\n onSubmit,\n successMessage,\n errorMessage,\n onDeclineWording,\n onPrevious,\n onNext,\n currentPage = 1,\n totalPages = 1,\n isLoading\n}) => {\n const variableState = mapStatusToVariableState(status);\n const variableReqType = mapRequirementTypeToState(requirementType)\n\n const [textValue, setTextValue] = useState(value);\n const [prevTextValue, setPrevTextValue] = useState(value);\n\n const [useDefaultValue, setUseDefaultValue] = useState(true);\n const [isSaving, setIsSaving] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const theme = useTheme()\n\n useEffect(() => {\n if (variableState === (VariableState.Pending || VariableState.Draft)) {\n setUseDefaultValue(false);\n }\n }, [status]);\n\n useEffect(() => {\n if (!isOpen) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isOpen]);\n\n useEffect(() => {\n if (successMessage && successMessage !== '') {\n toast.success(successMessage);\n }\n }, [successMessage]);\n \n useEffect(() => {\n if (errorMessage && errorMessage !== '') {\n toast.error(errorMessage);\n }\n }, [errorMessage]);\n \n useEffect(() => {\n if (!isLoading) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isLoading]);\n\n useEffect(() => {\n if (useDefaultValue){\n setPrevTextValue(textValue);\n setTextValue(defaultText);\n } else {\n setTextValue(prevTextValue);\n }\n }, [useDefaultValue]);\n\n\n const handleUseDefaultValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setUseDefaultValue(event.target.checked);\n };\n\n\n const canSubmitSave = isLoading || variableState === VariableState.Pending\n\n const statusConfig = {\n [VariableState.Pending]: { color: '#EBC7FF', label: 'Pending' },\n [VariableState.Draft]: { color: '#FFC365', label: 'Draft' },\n [VariableState.NotAccepted]: { color: '#DBF59A', label: 'Not Accepted' },\n [VariableState.Rejected]: { color: '#FFBCB3', label: 'Rejected' },\n [VariableState.Accepted]: { color: '#DBF59A', label: 'Accepted' },\n };\n\n const reqTypeConfig = {\n [RequirementType.Default]: { color: '#F5A623', label: 'Mandatory' },\n [RequirementType.Optional]: { color: '#F5D76E', label: 'Optional' },\n };\n\n const statusStyle = variableState ? statusConfig[variableState] : { color: '#ccc', label: 'Unknown' };;\n const requirementTypeStyle = variableReqType ? reqTypeConfig[variableReqType] : { color: '#ccc', label: 'Unknown' };;\n\n\n const handleSave = () => {\n setIsSaving(true);\n onSave?.(textValue, useDefaultValue);\n };\n\n\n const handleSubmit = () => {\n setIsSubmitting(true);\n onSubmit?.(textValue, useDefaultValue);\n };\n\n\n return (\n <StyledDialog open={isOpen} onClose={onClose} maxWidth=\"md\" fullWidth>\n <IconButton\n onClick={onClose}\n disabled={isLoading}\n sx={{\n position: 'absolute',\n top: 16,\n right: 16,\n zIndex: 1,\n }}\n >\n <CloseRounded sx={{ fontSize: 24 }} />\n </IconButton>\n\n\n <DialogContent sx={{ p: { xs: 3, sm: 4, md: 6 } }}>\n {/* Status Chip */}\n <Box sx={{ mb: 3}}>\n <Chip\n label={requirementTypeStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: requirementTypeStyle.color,\n borderColor: requirementTypeStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n <Chip\n label={statusStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: '#FDFCEE',\n borderColor: statusStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n </Box>\n\n\n {/* Description */}\n <Typography sx={{ mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }}>\n {description}\n </Typography>\n\n\n {/* Error Alert with Custom Icon */}\n {variableState === VariableState.Rejected && note && (\n <Alert\n variant=\"error\"\n icon={<InfoOutlineRounded sx={{ fontSize: 20 }} />}\n sx={{\n mb: 2\n }}\n >\n {note}\n </Alert>\n )}\n\n {/* Info Alert with Custom Background and Icon */}\n {variableState !== VariableState.Rejected && note && (\n <Alert\n variant=\"info\"\n icon={<ArticleRounded sx={{ fontSize: 20, color: '#4D3019'}} />}\n sx={{\n mb: 2,\n backgroundColor: '#00000000',\n borderColor: '#acacacff',\n color: '#4D3019',\n }}\n >\n {note}\n </Alert>\n )}\n\n\n {/* Text Field */}\n <TextField\n multiline\n rows={6}\n fullWidth\n value={textValue}\n onChange={(e) => setTextValue(e.target.value)}\n disabled={useDefaultValue || canSubmitSave}\n sx={{\n mb: 2,\n '& .MuiOutlinedInput-root': {\n backgroundColor: useDefaultValue || canSubmitSave ? 'rgba(0, 0, 0, 0.05)' : '#fff',\n borderRadius: 2,\n },\n }}\n />\n\n\n {/* Checkbox */}\n <FormControlLabel\n control={\n <Checkbox\n checked={useDefaultValue}\n disabled={canSubmitSave}\n onChange={handleUseDefaultValueChange}\n sx={{\n color: '#AC46FF',\n '&.Mui-checked': {\n color: '#AC46FF',\n },\n }}\n />\n }\n label=\"Use Default Value\"\n sx={{ mb: 3 }}\n />\n\n\n {/* Footer with Buttons and Navigation */}\n <Box\n sx={{\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n alignItems: { xs: 'stretch', sm: 'center' },\n justifyContent: 'space-between',\n gap: 2,\n pt: 3,\n borderTop: '1px solid',\n borderColor: 'divider',\n }}\n >\n {/* Action Buttons */}\n <Box sx={{ display: 'flex', gap: 1.5, flexWrap: 'wrap' }}>\n <Button\n onClick={handleSave}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n >\n {isSaving ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Saving...</Typography></> : \"Save\"}\n </Button>\n <Button\n onClick={handleSubmit}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n sx={{\n backgroundColor: '#ac46ff52',\n '&:hover': {\n backgroundColor: '#ac46ff80',\n },\n }}\n >\n {isSubmitting ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Submitting...</Typography></> : \"Submit for review\"}\n </Button>\n {variableReqType === RequirementType.Optional? \n (\n <Button onClick={onDeclineWording} variant=\"outline\" size=\"md\" sx={{\n backgroundColor: '#ff464652',\n '&:hover': {\n backgroundColor: '#ff464680', // Darker purple on hover\n }\n }}\n disabled={canSubmitSave}\n >\n Decline wording\n </Button>\n ) : \n (\n <>\n </>\n )\n }\n </Box>\n \n\n {/* Navigation */}\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 1.5,\n justifyContent: { xs: 'space-between', sm: 'flex-end' },\n }}\n >\n {currentPage !== 1 && <NavButton onClick={onPrevious} aria-label=\"Previous\" disabled={isLoading}>\n <ArrowBackIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n {currentPage !== totalPages && <NavButton onClick={onNext} aria-label=\"Next\" disabled={isLoading}>\n <ArrowForwardIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n <Typography fontWeight={500} fontSize=\"1.125rem\">\n {currentPage}/{totalPages}\n </Typography>\n </Box>\n </Box>\n </DialogContent>\n </StyledDialog>\n );\n};\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","sources":["../../../../src/components/Modal.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport {\n Dialog,\n DialogContent,\n IconButton,\n Box,\n Typography,\n TextField,\n Checkbox,\n FormControlLabel,\n Alert as MuiAlert,\n Chip,\n styled,\n CircularProgress,\n useTheme,\n} from '@mui/material';\nimport { Button } from './Button';\nimport { ArrowBackIosRounded, ArrowForwardIosRounded, ArticleRounded, CloseRounded, ErrorOutlineRounded, InfoOutlineRounded, StickyNote2Rounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\nimport { toast } from 'react-toastify';\n\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n ActionRequired = \"Action Required\",\n Declined = \"Declined\",\n Draft = \"Draft\"\n}\n\nenum RequirementType {\n Default = \"Default\",\n Optional = \"Optional\"\n}\n\n\ninterface ModalProps {\n isOpen: boolean;\n onClose: () => void;\n status: string;\n requirementType: string,\n description: string;\n value: string;\n defaultText: string;\n note?: string;\n onSave?: (fieldValue: string, defaultChecked: boolean) => void;\n onSubmit?: (fieldValue: string, defaultChecked: boolean) => void;\n successMessage?: string;\n errorMessage?: string;\n onDeclineWording?: () => void;\n onPrevious?: () => void;\n onNext?: () => void;\n currentPage?: number;\n totalPages?: number;\n isLoading: boolean;\n}\n\n\nconst StyledDialog = styled(Dialog)(({ theme }) => ({\n '& .MuiDialog-paper': {\n color: theme.palette.background.default,\n borderRadius: theme.shape.borderRadius,\n maxWidth: '896px',\n width: '100%',\n maxHeight: '90vh',\n },\n}));\n\n\nconst NavButton = styled(IconButton)(({ theme }) => ({\n width: '40px',\n height: '40px',\n borderRadius: 999,\n border: `2px solid ${theme.palette.dark.main}`,\n backgroundColor: '#fff',\n padding: theme.spacing(1, 2),\n '&:hover': {\n backgroundColor: theme.palette.grey[100], // Changed from dark.main to grey[100]\n color: theme.palette.dark.main, // Keep text dark instead of light\n borderColor: theme.palette.dark.main, // Keep border dark\n },\n}));\n\nfunction mapStatusToVariableState(status: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\":\n return VariableState.Accepted;\n case \"Pending\":\n return VariableState.Pending;\n case \"Action Required\":\n return VariableState.ActionRequired;\n case \"Declined\":\n return VariableState.Declined;\n case \"Draft\":\n return VariableState.Draft;\n default:\n return undefined;\n }\n}\n\n\nfunction mapRequirementTypeToState(reqType: string): RequirementType | undefined {\n switch (reqType) {\n case \"Default\":\n return RequirementType.Default;\n case \"Optional\":\n return RequirementType.Optional;\n default:\n return undefined;\n }\n}\n\nexport const Modal: React.FC<ModalProps> = ({\n isOpen,\n onClose,\n status,\n requirementType,\n description,\n value,\n defaultText,\n note,\n onSave,\n onSubmit,\n successMessage,\n errorMessage,\n onDeclineWording,\n onPrevious,\n onNext,\n currentPage = 1,\n totalPages = 1,\n isLoading\n}) => {\n const variableState = mapStatusToVariableState(status);\n const variableReqType = mapRequirementTypeToState(requirementType)\n\n const [textValue, setTextValue] = useState(value);\n const [prevTextValue, setPrevTextValue] = useState(value);\n\n const [useDefaultValue, setUseDefaultValue] = useState(true);\n const [isSaving, setIsSaving] = useState(false);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const theme = useTheme()\n\n useEffect(() => {\n if (variableState === (VariableState.Pending || VariableState.Draft)) {\n setUseDefaultValue(false);\n }\n }, [status]);\n\n useEffect(() => {\n if (!isOpen) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isOpen]);\n\n useEffect(() => {\n if (successMessage && successMessage !== '') {\n toast.success(successMessage);\n }\n }, [successMessage]);\n \n useEffect(() => {\n if (errorMessage && errorMessage !== '') {\n toast.error(errorMessage);\n }\n }, [errorMessage]);\n \n useEffect(() => {\n if (!isLoading) {\n setIsSaving(false);\n setIsSubmitting(false);\n }\n }, [isLoading]);\n\n useEffect(() => {\n if (useDefaultValue){\n setPrevTextValue(textValue);\n setTextValue(defaultText);\n } else {\n setTextValue(prevTextValue);\n }\n }, [useDefaultValue]);\n\n\n const handleUseDefaultValueChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n setUseDefaultValue(event.target.checked);\n };\n\n\n const canSubmitSave = isLoading || variableState === VariableState.Pending\n\n const statusConfig = {\n [VariableState.Pending]: { color: '#EBC7FF', label: 'Pending' },\n [VariableState.Draft]: { color: '#4D3019', label: 'Draft' },\n [VariableState.Declined]: { color: '#4D3019', label: 'Declined' },\n [VariableState.ActionRequired]: { color: '#FFBCB3', label: 'Action Required' },\n [VariableState.Accepted]: { color: '#DBF59A', label: 'Accepted' },\n };\n\n const reqTypeConfig = {\n [RequirementType.Default]: { color: '#F5A623', label: 'Mandatory' },\n [RequirementType.Optional]: { color: '#F5D76E', label: 'Optional' },\n };\n\n const statusStyle = variableState ? statusConfig[variableState] : { color: '#ccc', label: 'Unknown' };;\n const requirementTypeStyle = variableReqType ? reqTypeConfig[variableReqType] : { color: '#ccc', label: 'Unknown' };;\n\n\n const handleSave = () => {\n setIsSaving(true);\n onSave?.(textValue, useDefaultValue);\n };\n\n\n const handleSubmit = () => {\n setIsSubmitting(true);\n onSubmit?.(textValue, useDefaultValue);\n };\n\n\n return (\n <StyledDialog open={isOpen} onClose={onClose} maxWidth=\"md\" fullWidth>\n <IconButton\n onClick={onClose}\n disabled={isLoading}\n sx={{\n position: 'absolute',\n top: 16,\n right: 16,\n zIndex: 1,\n }}\n >\n <CloseRounded sx={{ fontSize: 24 }} />\n </IconButton>\n\n\n <DialogContent sx={{ p: { xs: 3, sm: 4, md: 6 } }}>\n {/* Status Chip */}\n <Box sx={{ mb: 3}}>\n <Chip\n label={requirementTypeStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: requirementTypeStyle.color,\n borderColor: requirementTypeStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n <Chip\n label={statusStyle.label.toUpperCase()}\n sx={{\n mr: 3,\n border: '3px solid',\n backgroundColor: '#FDFCEE',\n borderColor: statusStyle.color,\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '0.875rem',\n height: 'auto',\n py: 1,\n borderRadius: 0,\n px: 2,\n }}\n />\n </Box>\n\n\n {/* Description */}\n <Typography sx={{ mb: 3, lineHeight: 1.6, whiteSpace: 'pre-line' }}>\n {description}\n </Typography>\n\n\n {/* Error Alert with Custom Icon */}\n {variableState === VariableState.ActionRequired && note && (\n <Alert\n variant=\"error\"\n icon={<InfoOutlineRounded sx={{ fontSize: 20 }} />}\n sx={{\n mb: 2\n }}\n >\n {note}\n </Alert>\n )}\n\n {/* Info Alert with Custom Background and Icon */}\n {variableState !== VariableState.ActionRequired && note && (\n <Alert\n variant=\"info\"\n icon={<ArticleRounded sx={{ fontSize: 20, color: '#4D3019'}} />}\n sx={{\n mb: 2,\n backgroundColor: '#00000000',\n borderColor: '#acacacff',\n color: '#4D3019',\n }}\n >\n {note}\n </Alert>\n )}\n\n\n {/* Text Field */}\n <TextField\n multiline\n rows={6}\n fullWidth\n value={textValue}\n onChange={(e) => setTextValue(e.target.value)}\n disabled={useDefaultValue || canSubmitSave}\n sx={{\n mb: 2,\n '& .MuiOutlinedInput-root': {\n backgroundColor: useDefaultValue || canSubmitSave ? 'rgba(0, 0, 0, 0.05)' : '#fff',\n borderRadius: 2,\n },\n }}\n />\n\n\n {/* Checkbox */}\n <FormControlLabel\n control={\n <Checkbox\n checked={useDefaultValue}\n disabled={canSubmitSave}\n onChange={handleUseDefaultValueChange}\n sx={{\n color: '#AC46FF',\n '&.Mui-checked': {\n color: '#AC46FF',\n },\n }}\n />\n }\n label=\"Use Default Wording\"\n sx={{ mb: 3 }}\n />\n\n <Box\n sx={{\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n alignItems: { xs: 'stretch', sm: 'center' },\n justifyContent: 'space-between',\n gap: 2,\n pt: 3,\n borderTop: '1px solid',\n borderColor: 'divider',\n }}\n >\n {variableState !== VariableState.Declined ? (\n <Box sx={{ display: 'flex', gap: 1.5, flexWrap: 'wrap' }}>\n {useDefaultValue === false? \n (\n <Button\n onClick={handleSave}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n >\n {isSaving ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Saving...</Typography></> : \"Save\"}\n </Button>\n ) : (<></>)\n }\n <Button\n onClick={handleSubmit}\n variant=\"outline\"\n size=\"md\"\n disabled={canSubmitSave}\n sx={{\n backgroundColor: '#ac46ff52',\n '&:hover': {\n backgroundColor: '#ac46ff80',\n },\n }}\n >\n {isSubmitting ? <><CircularProgress size={20} /><Typography sx={{paddingLeft: 2}}>Submitting...</Typography></> : \"Submit for review\"}\n </Button>\n {variableReqType === RequirementType.Optional || useDefaultValue === false &&\n (\n <Button onClick={onDeclineWording} variant=\"outline\" size=\"md\" sx={{\n backgroundColor: '#ff464652',\n '&:hover': {\n backgroundColor: '#ff464680', // Darker purple on hover\n }\n }}\n disabled={canSubmitSave}\n >\n Decline wording\n </Button>\n )}\n </Box>\n ) : (<Box sx={{ display: 'flex', gap: 1.5, flexWrap: 'wrap' }}></Box>)}\n \n\n {/* Navigation */}\n <Box\n sx={{\n display: 'flex',\n alignItems: 'center',\n gap: 1.5,\n justifyContent: { xs: 'space-between', sm: 'flex-end' },\n }}\n >\n {currentPage !== 1 && <NavButton onClick={onPrevious} aria-label=\"Previous\" disabled={isLoading}>\n <ArrowBackIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n {currentPage !== totalPages && <NavButton onClick={onNext} aria-label=\"Next\" disabled={isLoading}>\n <ArrowForwardIosRounded sx={{ fontSize: 20, color: theme.palette.text.primary }}/>\n </NavButton>}\n <Typography fontWeight={500} fontSize=\"1.125rem\">\n {currentPage}/{totalPages}\n </Typography>\n </Box>\n </Box>\n </DialogContent>\n </StyledDialog>\n );\n};\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
@@ -9,16 +9,16 @@ var VariableState;
9
9
  (function (VariableState) {
10
10
  VariableState["Accepted"] = "Accepted";
11
11
  VariableState["Pending"] = "Pending";
12
- VariableState["Rejected"] = "Rejected";
13
- VariableState["NotAccepted"] = "Not Accepted";
12
+ VariableState["ActionRequired"] = "Action Required";
13
+ VariableState["Declined"] = "Declined";
14
14
  VariableState["Draft"] = "Draft";
15
15
  })(VariableState || (VariableState = {}));
16
16
  function mapStatusToVariableState(status) {
17
17
  switch (status) {
18
18
  case "Accepted": return VariableState.Accepted;
19
19
  case "Pending": return VariableState.Pending;
20
- case "Rejected": return VariableState.Rejected;
21
- case "Not Accepted": return VariableState.NotAccepted;
20
+ case "Action Required": return VariableState.ActionRequired;
21
+ case "Declined": return VariableState.Declined;
22
22
  case "Draft": return VariableState.Draft;
23
23
  default: return undefined;
24
24
  }
@@ -42,19 +42,19 @@ const statusConfig = {
42
42
  chipTextColor: '#4D3019',
43
43
  alertVariant: 'info',
44
44
  },
45
- Rejected: {
45
+ 'Action Required': {
46
46
  highlight: '#FBEEEE',
47
47
  highlightSelected: '#FFBCB3',
48
- label: 'Rejected',
48
+ label: 'ActionRequired',
49
49
  labelColor: '#CC0000',
50
50
  chipColor: '#F56B6B',
51
51
  chipTextColor: '#fff',
52
52
  alertVariant: 'error',
53
53
  },
54
- 'Not Accepted': {
54
+ 'Declined': {
55
55
  highlight: '#FFF6D1',
56
56
  highlightSelected: '#FDE58E',
57
- label: 'Not Accepted',
57
+ label: 'Declined',
58
58
  labelColor: 'var(--color-secondary)',
59
59
  chipColor: '#A3D977',
60
60
  chipTextColor: '#4D3019',
@@ -1 +1 @@
1
- {"version":3,"file":"NoteBox.js","sources":["../../../../src/components/NoteBox.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Box, Typography, IconButton, styled, Chip } from '@mui/material';\nimport { CheckRounded, EditRounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\n\n// Status Enum\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n Rejected = \"Rejected\",\n NotAccepted = \"Not Accepted\",\n Draft = \"Draft\"\n}\n\ninterface NoteBoxProps {\n status?: string; // Use only status now\n label?: string;\n note?: string;\n children: React.ReactNode;\n className?: string;\n onEditClick?: () => void;\n}\n\nfunction mapStatusToVariableState(status?: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\": return VariableState.Accepted;\n case \"Pending\": return VariableState.Pending;\n case \"Rejected\": return VariableState.Rejected;\n case \"Not Accepted\": return VariableState.NotAccepted;\n case \"Draft\": return VariableState.Draft;\n default: return undefined;\n }\n}\n\n// Status based color configs (from Modal)\nconst statusConfig: {\n [key in VariableState]: {\n highlight: string;\n highlightSelected: string;\n label: string;\n labelColor: string;\n chipColor: string;\n chipTextColor: string;\n alertVariant?: \"error\" | \"info\";\n }\n} = {\n Accepted: {\n highlight: '#EDF9CD',\n highlightSelected: '#DBF59A',\n label: 'Accepted',\n labelColor: '#2D5016',\n chipColor: '#A3D977',\n chipTextColor: '#fff',\n },\n Pending: {\n highlight: '#F5E2FF',\n highlightSelected: '#EBC7FF',\n label: 'Pending',\n labelColor: 'var(--color-secondary)',\n chipColor: '#F5A623',\n chipTextColor: '#4D3019',\n alertVariant: 'info',\n },\n Rejected: {\n highlight: '#FBEEEE',\n highlightSelected: '#FFBCB3',\n label: 'Rejected',\n labelColor: '#CC0000',\n chipColor: '#F56B6B',\n chipTextColor: '#fff',\n alertVariant: 'error',\n },\n 'Not Accepted': {\n highlight: '#FFF6D1',\n highlightSelected: '#FDE58E',\n label: 'Not Accepted',\n labelColor: 'var(--color-secondary)',\n chipColor: '#A3D977',\n chipTextColor: '#4D3019',\n },\n Draft: {\n highlight: '#FFEACD',\n highlightSelected: '#FFC365',\n label: 'Draft',\n labelColor: 'rgba(0, 0, 0, 0.6)',\n chipColor: '#F5D76E',\n chipTextColor: '#fff',\n },\n};\n\nconst NoteContainer = styled(Box)({\n position: 'relative',\n maxWidth: '100%',\n});\n\n// Uses highlight colors driven by status exclusively\nconst HighlightWrapper = styled(Box, {\n shouldForwardProp: (prop) => \n prop !== 'isHovered' && \n prop !== 'highlightColor' && \n prop !== 'highlightSelectedColor'\n})<{\n isHovered: boolean;\n highlightColor: string;\n highlightSelectedColor: string;\n}>(({ isHovered, highlightColor, highlightSelectedColor }) => ({\n position: 'relative',\n display: 'inline-block',\n maxWidth: '100%',\n '&:hover .edit-button': {\n opacity: 1,\n },\n '& .highlight-span': {\n background: isHovered ? highlightSelectedColor : highlightColor,\n padding: '2px 4px',\n borderBottom: '2px solid rgba(77, 48, 25, 0.3)',\n boxDecorationBreak: 'clone',\n WebkitBoxDecorationBreak: 'clone',\n transition: 'background 0.2s ease',\n cursor: 'pointer',\n fontSize: '1rem',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n display: 'inline',\n color: '#4D3019',\n },\n}));\n\nconst EditButton = styled(IconButton)(({ theme }) => ({\n position: 'absolute',\n top: 0,\n right: 0,\n transform: 'translate(50%, -50%)',\n width: 20,\n height: 20,\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n backgroundColor: '#4D3019',\n opacity: 0,\n transition: 'all 0.2s ease',\n boxShadow: '0 1px 3px rgba(0,0,0,0.12)',\n '&:hover': {\n backgroundColor: '#4D3019',\n transform: 'translate(50%, -50%) scale(1.1)',\n },\n}));\n\nexport const NoteBox: React.FC<NoteBoxProps> = ({\n status,\n label,\n note,\n children,\n className = '',\n onEditClick,\n}) => {\n const [isHovered, setIsHovered] = useState(false);\n\n // Map current status\n const variableState = mapStatusToVariableState(status);\n const style = variableState\n ? statusConfig[variableState]\n : {\n highlight: '#EEE',\n highlightSelected: '#DDD',\n label: label || '',\n labelColor: 'rgba(0,0,0,0.6)',\n chipColor: '#ccc',\n chipTextColor: '#4D3019',\n };\n\n return (\n <NoteContainer className={className}>\n {/* Alert for note when status matches and note available */}\n {variableState && style.alertVariant && note && (\n <Alert variant={style.alertVariant} sx={{ mb: 1 }}>\n {note}\n </Alert>\n )}\n\n {/* Highlighted content box */}\n <HighlightWrapper\n isHovered={isHovered}\n highlightColor={style.highlight}\n highlightSelectedColor={style.highlightSelected}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n >\n <span className=\"highlight-span\">{children}</span>\n <EditButton\n className=\"edit-button\"\n onClick={(e) => {\n e.stopPropagation();\n if (onEditClick) {\n onEditClick();\n }\n }}\n title=\"Edit variable highlight\"\n size=\"small\"\n >\n {variableState === VariableState.Accepted \n ? <CheckRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> \n : <EditRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> }\n </EditButton>\n </HighlightWrapper>\n </NoteContainer>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"NoteBox.js","sources":["../../../../src/components/NoteBox.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Box, Typography, IconButton, styled, Chip } from '@mui/material';\nimport { CheckRounded, EditRounded } from '@mui/icons-material';\nimport { Alert } from './Alert';\n\n// Status Enum\nenum VariableState {\n Accepted = \"Accepted\",\n Pending = \"Pending\",\n ActionRequired = \"Action Required\",\n Declined = \"Declined\",\n Draft = \"Draft\"\n}\n\ninterface NoteBoxProps {\n status?: string; // Use only status now\n label?: string;\n note?: string;\n children: React.ReactNode;\n className?: string;\n onEditClick?: () => void;\n}\n\nfunction mapStatusToVariableState(status?: string): VariableState | undefined {\n switch (status) {\n case \"Accepted\": return VariableState.Accepted;\n case \"Pending\": return VariableState.Pending;\n case \"Action Required\": return VariableState.ActionRequired;\n case \"Declined\": return VariableState.Declined;\n case \"Draft\": return VariableState.Draft;\n default: return undefined;\n }\n}\n\n// Status based color configs (from Modal)\nconst statusConfig: {\n [key in VariableState]: {\n highlight: string;\n highlightSelected: string;\n label: string;\n labelColor: string;\n chipColor: string;\n chipTextColor: string;\n alertVariant?: \"error\" | \"info\";\n }\n} = {\n Accepted: {\n highlight: '#EDF9CD',\n highlightSelected: '#DBF59A',\n label: 'Accepted',\n labelColor: '#2D5016',\n chipColor: '#A3D977',\n chipTextColor: '#fff',\n },\n Pending: {\n highlight: '#F5E2FF',\n highlightSelected: '#EBC7FF',\n label: 'Pending',\n labelColor: 'var(--color-secondary)',\n chipColor: '#F5A623',\n chipTextColor: '#4D3019',\n alertVariant: 'info',\n },\n 'Action Required': {\n highlight: '#FBEEEE',\n highlightSelected: '#FFBCB3',\n label: 'ActionRequired',\n labelColor: '#CC0000',\n chipColor: '#F56B6B',\n chipTextColor: '#fff',\n alertVariant: 'error',\n },\n 'Declined': {\n highlight: '#FFF6D1',\n highlightSelected: '#FDE58E',\n label: 'Declined',\n labelColor: 'var(--color-secondary)',\n chipColor: '#A3D977',\n chipTextColor: '#4D3019',\n },\n Draft: {\n highlight: '#FFEACD',\n highlightSelected: '#FFC365',\n label: 'Draft',\n labelColor: 'rgba(0, 0, 0, 0.6)',\n chipColor: '#F5D76E',\n chipTextColor: '#fff',\n },\n};\n\nconst NoteContainer = styled(Box)({\n position: 'relative',\n maxWidth: '100%',\n});\n\n// Uses highlight colors driven by status exclusively\nconst HighlightWrapper = styled(Box, {\n shouldForwardProp: (prop) => \n prop !== 'isHovered' && \n prop !== 'highlightColor' && \n prop !== 'highlightSelectedColor'\n})<{\n isHovered: boolean;\n highlightColor: string;\n highlightSelectedColor: string;\n}>(({ isHovered, highlightColor, highlightSelectedColor }) => ({\n position: 'relative',\n display: 'inline-block',\n maxWidth: '100%',\n '&:hover .edit-button': {\n opacity: 1,\n },\n '& .highlight-span': {\n background: isHovered ? highlightSelectedColor : highlightColor,\n padding: '2px 4px',\n borderBottom: '2px solid rgba(77, 48, 25, 0.3)',\n boxDecorationBreak: 'clone',\n WebkitBoxDecorationBreak: 'clone',\n transition: 'background 0.2s ease',\n cursor: 'pointer',\n fontSize: '1rem',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n display: 'inline',\n color: '#4D3019',\n },\n}));\n\nconst EditButton = styled(IconButton)(({ theme }) => ({\n position: 'absolute',\n top: 0,\n right: 0,\n transform: 'translate(50%, -50%)',\n width: 20,\n height: 20,\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n backgroundColor: '#4D3019',\n opacity: 0,\n transition: 'all 0.2s ease',\n boxShadow: '0 1px 3px rgba(0,0,0,0.12)',\n '&:hover': {\n backgroundColor: '#4D3019',\n transform: 'translate(50%, -50%) scale(1.1)',\n },\n}));\n\nexport const NoteBox: React.FC<NoteBoxProps> = ({\n status,\n label,\n note,\n children,\n className = '',\n onEditClick,\n}) => {\n const [isHovered, setIsHovered] = useState(false);\n\n // Map current status\n const variableState = mapStatusToVariableState(status);\n const style = variableState\n ? statusConfig[variableState]\n : {\n highlight: '#EEE',\n highlightSelected: '#DDD',\n label: label || '',\n labelColor: 'rgba(0,0,0,0.6)',\n chipColor: '#ccc',\n chipTextColor: '#4D3019',\n };\n\n return (\n <NoteContainer className={className}>\n {/* Alert for note when status matches and note available */}\n {variableState && style.alertVariant && note && (\n <Alert variant={style.alertVariant} sx={{ mb: 1 }}>\n {note}\n </Alert>\n )}\n\n {/* Highlighted content box */}\n <HighlightWrapper\n isHovered={isHovered}\n highlightColor={style.highlight}\n highlightSelectedColor={style.highlightSelected}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n >\n <span className=\"highlight-span\">{children}</span>\n <EditButton\n className=\"edit-button\"\n onClick={(e) => {\n e.stopPropagation();\n if (onEditClick) {\n onEditClick();\n }\n }}\n title=\"Edit variable highlight\"\n size=\"small\"\n >\n {variableState === VariableState.Accepted \n ? <CheckRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> \n : <EditRounded sx={{ fontSize: 14, color: \"#FFFFFF\", strokeWidth: 2 }} /> }\n </EditButton>\n </HighlightWrapper>\n </NoteContainer>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -59,7 +59,7 @@ const TableOfContents = ({ sections, activeSection = 'current-section', onSectio
59
59
  fontWeight: 600,
60
60
  fontSize: '16px',
61
61
  mb: 3,
62
- }, children: "In this policy" }), jsx(Box, { component: "nav", sx: { display: 'flex', flexDirection: 'column', gap: 0.25 }, children: sections.map((section) => {
62
+ }, children: "In this policy" }), jsx(Box, { component: "nav", sx: { display: 'flex', flexDirection: 'column', gap: 0.25, overflowY: 'hidden' }, children: sections.map((section) => {
63
63
  const isActive = section.id === activeSection;
64
64
  return (jsx(NavLink, { onClick: () => handleClick(section.id), isActive: isActive, children: section.title }, section.id));
65
65
  }) })] }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"TableOfContents.js","sources":["../../../../src/components/TableOfContents.tsx"],"sourcesContent":["\n\nimport React from 'react';\nimport { Box, Typography, Link, styled } from '@mui/material';\n\ninterface Section {\n id: string;\n title: string;\n}\n\ninterface TableOfContentsProps {\n sections: Section[];\n activeSection?: string;\n onSectionClick?: (sectionId: string) => void;\n}\n\nconst Container = styled(Box)(({ theme }) => ({\n width: '100%',\n [theme.breakpoints.up('md')]: {\n position: 'sticky',\n right: 0,\n top: 0,\n width: '224px',\n float: 'right',\n marginLeft: theme.spacing(1.5),\n marginBottom: 0,\n },\n [theme.breakpoints.up('lg')]: {\n width: '256px',\n marginLeft: theme.spacing(2),\n },\n marginBottom: theme.spacing(2),\n}));\n\nconst ContentBox = styled(Box)(({ theme }) => ({\n backgroundColor: '#FEFDF7',\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n padding: theme.spacing(2.5),\n boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.1)',\n [theme.breakpoints.up('md')]: {\n padding: theme.spacing(3),\n },\n}));\n\nconst NavLink = styled(Box,{\n shouldForwardProp: (prop) => prop !== 'isActive'\n})<{ isActive: boolean }>(({ theme, isActive }) => ({\n display: 'block',\n padding: theme.spacing(1, 2),\n fontSize: '0.875rem',\n textDecoration: 'none',\n color: '#4D3019',\n transition: 'background-color 0.2s',\n borderLeft: isActive ? '4px solid #FFC365' : '4px solid transparent',\n backgroundColor: isActive ? '#FFEDD1' : 'transparent',\n fontWeight: isActive ? 700 : 400,\n cursor: 'pointer',\n '&:hover': {\n backgroundColor: '#FFEDD1',\n },\n}));\n\nexport const TableOfContents: React.FC<TableOfContentsProps> = ({\n sections,\n activeSection = 'current-section',\n onSectionClick\n}) => {\n const handleClick = (sectionId: string) => {\n const element = document.getElementById(sectionId);\n if (element) {\n element.scrollIntoView({ behavior: 'smooth', block: 'start' });\n onSectionClick?.(sectionId);\n }\n };\n\n return (\n <Container>\n <ContentBox>\n <Typography\n variant=\"h6\"\n sx={{\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '16px',\n mb: 3,\n }}\n >\n In this policy\n </Typography>\n <Box component=\"nav\" sx={{ display: 'flex', flexDirection: 'column', gap: 0.25 }}>\n {sections.map((section) => {\n const isActive = section.id === activeSection;\n return (\n <NavLink\n key={section.id}\n onClick={() => handleClick(section.id)}\n isActive={isActive}\n >\n {section.title}\n </NavLink>\n );\n })}\n </Box>\n </ContentBox>\n </Container>\n );\n};"],"names":["_jsx","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"TableOfContents.js","sources":["../../../../src/components/TableOfContents.tsx"],"sourcesContent":["\n\nimport React from 'react';\nimport { Box, Typography, Link, styled } from '@mui/material';\n\ninterface Section {\n id: string;\n title: string;\n}\n\ninterface TableOfContentsProps {\n sections: Section[];\n activeSection?: string;\n onSectionClick?: (sectionId: string) => void;\n}\n\nconst Container = styled(Box)(({ theme }) => ({\n width: '100%',\n [theme.breakpoints.up('md')]: {\n position: 'sticky',\n right: 0,\n top: 0,\n width: '224px',\n float: 'right',\n marginLeft: theme.spacing(1.5),\n marginBottom: 0,\n },\n [theme.breakpoints.up('lg')]: {\n width: '256px',\n marginLeft: theme.spacing(2),\n },\n marginBottom: theme.spacing(2),\n}));\n\nconst ContentBox = styled(Box)(({ theme }) => ({\n backgroundColor: '#FEFDF7',\n borderRadius: (typeof theme.shape.borderRadius === 'string'\n ? parseInt(theme.shape.borderRadius, 10)\n : theme.shape.borderRadius || 4) * 2,\n padding: theme.spacing(2.5),\n boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.1)',\n [theme.breakpoints.up('md')]: {\n padding: theme.spacing(3),\n },\n}));\n\nconst NavLink = styled(Box,{\n shouldForwardProp: (prop) => prop !== 'isActive'\n})<{ isActive: boolean }>(({ theme, isActive }) => ({\n display: 'block',\n padding: theme.spacing(1, 2),\n fontSize: '0.875rem',\n textDecoration: 'none',\n color: '#4D3019',\n transition: 'background-color 0.2s',\n borderLeft: isActive ? '4px solid #FFC365' : '4px solid transparent',\n backgroundColor: isActive ? '#FFEDD1' : 'transparent',\n fontWeight: isActive ? 700 : 400,\n cursor: 'pointer',\n '&:hover': {\n backgroundColor: '#FFEDD1',\n },\n}));\n\nexport const TableOfContents: React.FC<TableOfContentsProps> = ({\n sections,\n activeSection = 'current-section',\n onSectionClick\n}) => {\n const handleClick = (sectionId: string) => {\n const element = document.getElementById(sectionId);\n if (element) {\n element.scrollIntoView({ behavior: 'smooth', block: 'start' });\n onSectionClick?.(sectionId);\n }\n };\n\n return (\n <Container>\n <ContentBox>\n <Typography\n variant=\"h6\"\n sx={{\n color: '#4D3019',\n fontWeight: 600,\n fontSize: '16px',\n mb: 3,\n }}\n >\n In this policy\n </Typography>\n <Box component=\"nav\" sx={{ display: 'flex', flexDirection: 'column', gap: 0.25, overflowY: 'hidden' }}>\n {sections.map((section) => {\n const isActive = section.id === activeSection;\n return (\n <NavLink\n key={section.id}\n onClick={() => handleClick(section.id)}\n isActive={isActive}\n >\n {section.title}\n </NavLink>\n );\n })}\n </Box>\n </ContentBox>\n </Container>\n );\n};"],"names":["_jsx","_jsxs"],"mappings":"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"}
@@ -19,6 +19,7 @@ export { Toggle } from './Toggle';
19
19
  export { SimpleModal } from './SimpleModal';
20
20
  export { ActionButton } from './ActionButton';
21
21
  export { ExpandingBox } from './ExpandingBox';
22
+ export { ExpandingBoxToggle } from './ExpandingBoxToggle';
22
23
  export { Breadcrumb } from './Breadcrumb';
23
24
  export { AcknowledgementBox } from './AcknowledgementBox';
24
25
  export { RichTextArea } from './RichTextArea';
@@ -20,6 +20,7 @@ export { TableOfContents } from './components/TableOfContents';
20
20
  export { Toggle } from './components/Toggle';
21
21
  export { SimpleModal } from './components/SimpleModal';
22
22
  export { ActionButton } from './components/ActionButton';
23
+ export { ExpandingBoxToggle } from './components/ExpandingBoxToggle';
23
24
  export { ExpandingBox } from './components/ExpandingBox';
24
25
  export { Breadcrumb } from './components/Breadcrumb';
25
26
  export { AcknowledgementBox } from './components/AcknowledgementBox';
package/dist/esm/index.js CHANGED
@@ -20,6 +20,7 @@ export { TableOfContents } from './components/TableOfContents.js';
20
20
  export { Toggle } from './components/Toggle.js';
21
21
  export { SimpleModal } from './components/SimpleModal.js';
22
22
  export { ActionButton } from './components/ActionButton.js';
23
+ export { ExpandingBoxToggle } from './components/ExpandingBoxToggle.js';
23
24
  export { ExpandingBox } from './components/ExpandingBox.js';
24
25
  export { Breadcrumb } from './components/Breadcrumb.js';
25
26
  export { AcknowledgementBox } from './components/AcknowledgementBox.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ece-docs-components",
3
- "version": "1.0.26",
3
+ "version": "1.0.28",
4
4
  "type": "module",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",