@pega/react-sdk-components 0.23.17 → 0.23.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.d.ts.map +1 -1
  2. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js +20 -3
  3. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js.map +1 -1
  4. package/lib/components/designSystemExtension/FieldGroup/FieldGroup.d.ts.map +1 -1
  5. package/lib/components/designSystemExtension/FieldGroup/FieldGroup.js +1 -2
  6. package/lib/components/designSystemExtension/FieldGroup/FieldGroup.js.map +1 -1
  7. package/lib/components/designSystemExtension/FieldValueList/FieldValueList.d.ts.map +1 -1
  8. package/lib/components/designSystemExtension/FieldValueList/FieldValueList.js +23 -40
  9. package/lib/components/designSystemExtension/FieldValueList/FieldValueList.js.map +1 -1
  10. package/lib/components/field/AutoComplete/AutoComplete.d.ts.map +1 -1
  11. package/lib/components/field/AutoComplete/AutoComplete.js +5 -5
  12. package/lib/components/field/AutoComplete/AutoComplete.js.map +1 -1
  13. package/lib/components/field/Checkbox/Checkbox.d.ts.map +1 -1
  14. package/lib/components/field/Checkbox/Checkbox.js +5 -5
  15. package/lib/components/field/Checkbox/Checkbox.js.map +1 -1
  16. package/lib/components/field/Currency/Currency.d.ts.map +1 -1
  17. package/lib/components/field/Currency/Currency.js +21 -6
  18. package/lib/components/field/Currency/Currency.js.map +1 -1
  19. package/lib/components/field/Currency/currency-utils.d.ts +11 -0
  20. package/lib/components/field/Currency/currency-utils.d.ts.map +1 -0
  21. package/lib/components/field/Currency/currency-utils.js +60 -0
  22. package/lib/components/field/Currency/currency-utils.js.map +1 -0
  23. package/lib/components/field/Date/Date.d.ts.map +1 -1
  24. package/lib/components/field/Date/Date.js +17 -6
  25. package/lib/components/field/Date/Date.js.map +1 -1
  26. package/lib/components/field/DateTime/DateTime.d.ts.map +1 -1
  27. package/lib/components/field/DateTime/DateTime.js +16 -7
  28. package/lib/components/field/DateTime/DateTime.js.map +1 -1
  29. package/lib/components/field/Decimal/Decimal.d.ts.map +1 -1
  30. package/lib/components/field/Decimal/Decimal.js +5 -5
  31. package/lib/components/field/Decimal/Decimal.js.map +1 -1
  32. package/lib/components/field/Dropdown/Dropdown.d.ts.map +1 -1
  33. package/lib/components/field/Dropdown/Dropdown.js +5 -5
  34. package/lib/components/field/Dropdown/Dropdown.js.map +1 -1
  35. package/lib/components/field/Email/Email.js +5 -5
  36. package/lib/components/field/Email/Email.js.map +1 -1
  37. package/lib/components/field/Integer/Integer.d.ts.map +1 -1
  38. package/lib/components/field/Integer/Integer.js +5 -5
  39. package/lib/components/field/Integer/Integer.js.map +1 -1
  40. package/lib/components/field/Percentage/Percentage.d.ts.map +1 -1
  41. package/lib/components/field/Percentage/Percentage.js +5 -5
  42. package/lib/components/field/Percentage/Percentage.js.map +1 -1
  43. package/lib/components/field/Phone/Phone.d.ts.map +1 -1
  44. package/lib/components/field/Phone/Phone.js +5 -5
  45. package/lib/components/field/Phone/Phone.js.map +1 -1
  46. package/lib/components/field/RadioButtons/RadioButtons.d.ts.map +1 -1
  47. package/lib/components/field/RadioButtons/RadioButtons.js +5 -5
  48. package/lib/components/field/RadioButtons/RadioButtons.js.map +1 -1
  49. package/lib/components/field/SemanticLink/SemanticLink.d.ts.map +1 -1
  50. package/lib/components/field/SemanticLink/SemanticLink.js +5 -1
  51. package/lib/components/field/SemanticLink/SemanticLink.js.map +1 -1
  52. package/lib/components/field/TextArea/TextArea.d.ts.map +1 -1
  53. package/lib/components/field/TextArea/TextArea.js +5 -5
  54. package/lib/components/field/TextArea/TextArea.js.map +1 -1
  55. package/lib/components/field/TextInput/TextInput.d.ts.map +1 -1
  56. package/lib/components/field/TextInput/TextInput.js +5 -5
  57. package/lib/components/field/TextInput/TextInput.js.map +1 -1
  58. package/lib/components/field/Time/Time.d.ts.map +1 -1
  59. package/lib/components/field/Time/Time.js +5 -5
  60. package/lib/components/field/Time/Time.js.map +1 -1
  61. package/lib/components/field/URL/URL.d.ts.map +1 -1
  62. package/lib/components/field/URL/URL.js +5 -5
  63. package/lib/components/field/URL/URL.js.map +1 -1
  64. package/lib/components/helpers/authManager.d.ts.map +1 -1
  65. package/lib/components/helpers/authManager.js +1 -0
  66. package/lib/components/helpers/authManager.js.map +1 -1
  67. package/lib/components/helpers/date-format-utils.d.ts +13 -0
  68. package/lib/components/helpers/date-format-utils.d.ts.map +1 -0
  69. package/lib/components/helpers/date-format-utils.js +59 -0
  70. package/lib/components/helpers/date-format-utils.js.map +1 -0
  71. package/lib/components/helpers/event-utils.js +1 -1
  72. package/lib/components/helpers/event-utils.js.map +1 -1
  73. package/lib/components/helpers/formatters/Currency.js +11 -5
  74. package/lib/components/helpers/formatters/Currency.js.map +1 -1
  75. package/lib/components/helpers/formatters/common.d.ts.map +1 -1
  76. package/lib/components/helpers/formatters/common.js +6 -1
  77. package/lib/components/helpers/formatters/common.js.map +1 -1
  78. package/lib/components/helpers/formatters/index.d.ts.map +1 -1
  79. package/lib/components/helpers/formatters/index.js +4 -0
  80. package/lib/components/helpers/formatters/index.js.map +1 -1
  81. package/lib/components/helpers/template-utils.d.ts +14 -0
  82. package/lib/components/helpers/template-utils.d.ts.map +1 -0
  83. package/lib/components/helpers/template-utils.js +65 -0
  84. package/lib/components/helpers/template-utils.js.map +1 -0
  85. package/lib/components/infra/Containers/FlowContainer/FlowContainer.d.ts.map +1 -1
  86. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js +53 -54
  87. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js.map +1 -1
  88. package/lib/components/infra/ErrorBoundary/ErrorBoundary.d.ts.map +1 -1
  89. package/lib/components/infra/ErrorBoundary/ErrorBoundary.js +3 -49
  90. package/lib/components/infra/ErrorBoundary/ErrorBoundary.js.map +1 -1
  91. package/lib/components/infra/MultiStep/MultiStep.css +4 -18
  92. package/lib/components/infra/NavBar/NavBar.d.ts +1 -1
  93. package/lib/components/infra/NavBar/NavBar.d.ts.map +1 -1
  94. package/lib/components/infra/NavBar/NavBar.js +57 -121
  95. package/lib/components/infra/NavBar/NavBar.js.map +1 -1
  96. package/lib/components/infra/RootContainer/RootContainer.d.ts.map +1 -1
  97. package/lib/components/infra/RootContainer/RootContainer.js +0 -50
  98. package/lib/components/infra/RootContainer/RootContainer.js.map +1 -1
  99. package/lib/components/infra/Stages/Stages.d.ts.map +1 -1
  100. package/lib/components/infra/Stages/Stages.js +1 -2
  101. package/lib/components/infra/Stages/Stages.js.map +1 -1
  102. package/lib/components/infra/View/View.d.ts.map +1 -1
  103. package/lib/components/infra/View/View.js +13 -4
  104. package/lib/components/infra/View/View.js.map +1 -1
  105. package/lib/components/template/AppShell/AppShell.d.ts.map +1 -1
  106. package/lib/components/template/AppShell/AppShell.js +2 -323
  107. package/lib/components/template/AppShell/AppShell.js.map +1 -1
  108. package/lib/components/template/CaseSummary/CaseSummary.js +1 -1
  109. package/lib/components/template/CaseSummary/CaseSummary.js.map +1 -1
  110. package/lib/components/template/CaseView/CaseView.d.ts.map +1 -1
  111. package/lib/components/template/CaseView/CaseView.js +2 -3
  112. package/lib/components/template/CaseView/CaseView.js.map +1 -1
  113. package/lib/components/template/DefaultForm/DefaultForm.d.ts.map +1 -1
  114. package/lib/components/template/DefaultForm/DefaultForm.js +6 -1
  115. package/lib/components/template/DefaultForm/DefaultForm.js.map +1 -1
  116. package/lib/components/template/Details/Details/Details.d.ts +2 -0
  117. package/lib/components/template/Details/Details/Details.d.ts.map +1 -1
  118. package/lib/components/template/Details/Details/Details.js +35 -18
  119. package/lib/components/template/Details/Details/Details.js.map +1 -1
  120. package/lib/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.d.ts +12 -1
  121. package/lib/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.d.ts.map +1 -1
  122. package/lib/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.js +43 -27
  123. package/lib/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.js.map +1 -1
  124. package/lib/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.d.ts +12 -1
  125. package/lib/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.d.ts.map +1 -1
  126. package/lib/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.js +43 -25
  127. package/lib/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.js.map +1 -1
  128. package/lib/components/template/ListView/DefaultViewMeta.d.ts +91 -0
  129. package/lib/components/template/ListView/DefaultViewMeta.d.ts.map +1 -0
  130. package/lib/components/template/ListView/DefaultViewMeta.js +208 -0
  131. package/lib/components/template/ListView/DefaultViewMeta.js.map +1 -0
  132. package/lib/components/template/ListView/ListView.d.ts.map +1 -1
  133. package/lib/components/template/ListView/ListView.js +147 -83
  134. package/lib/components/template/ListView/ListView.js.map +1 -1
  135. package/lib/components/template/ListView/hooks.d.ts +2 -0
  136. package/lib/components/template/ListView/hooks.d.ts.map +1 -0
  137. package/lib/components/template/ListView/hooks.js +73 -0
  138. package/lib/components/template/ListView/hooks.js.map +1 -0
  139. package/lib/components/template/ListView/utils.d.ts +63 -0
  140. package/lib/components/template/ListView/utils.d.ts.map +1 -0
  141. package/lib/components/template/ListView/utils.js +537 -0
  142. package/lib/components/template/ListView/utils.js.map +1 -0
  143. package/lib/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.d.ts +12 -1
  144. package/lib/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.d.ts.map +1 -1
  145. package/lib/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.js +45 -29
  146. package/lib/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.js.map +1 -1
  147. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.d.ts.map +1 -1
  148. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js +3 -20
  149. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js.map +1 -1
  150. package/lib/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.d.ts +12 -1
  151. package/lib/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.d.ts.map +1 -1
  152. package/lib/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.js +45 -29
  153. package/lib/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.js.map +1 -1
  154. package/lib/components/widget/Attachment/Attachment.css +7 -0
  155. package/lib/components/widget/Attachment/Attachment.d.ts.map +1 -1
  156. package/lib/components/widget/Attachment/Attachment.js +25 -2
  157. package/lib/components/widget/Attachment/Attachment.js.map +1 -1
  158. package/lib/components/widget/SummaryItem/SummaryItem.js +1 -1
  159. package/lib/components/widget/SummaryItem/SummaryItem.js.map +1 -1
  160. package/lib/doc/KeyReleaseUpdates.md +33 -0
  161. package/package.json +1 -1
  162. package/lib/components/template/utils.d.ts +0 -3
  163. package/lib/components/template/utils.d.ts.map +0 -1
  164. package/lib/components/template/utils.js +0 -22
  165. package/lib/components/template/utils.js.map +0 -1
@@ -1,35 +1,51 @@
1
- import React from "react";
2
- // import PropTypes from "prop-types";
3
- // import Grid from '@material-ui/core/Grid';
4
- import DetailsFields from '../../../designSystemExtension/DetailsFields';
1
+ import React, { createElement } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import Grid from '@material-ui/core/Grid';
4
+ import createPConnectComponent from '../../../../bridge/react_pconnect';
5
+ import FieldGroup from '../../../designSystemExtension/FieldGroup';
6
+ const COLUMN_WIDTHS = [4, 8];
5
7
  export default function NarrowWideDetails(props) {
6
- const { a, b, children } = props;
7
- const arFields = [];
8
- for (const child of children) {
9
- const theChildPConn = child.props.getPConnect();
10
- const theChildrenOfChild = theChildPConn.getChildren();
11
- arFields.push(theChildrenOfChild);
8
+ const { label, showLabel, getPConnect, showHighlightedData } = props;
9
+ // Get the inherited props from the parent to determine label settings
10
+ const propsToUse = { label, showLabel, ...getPConnect().getInheritedProps() };
11
+ // Set display mode prop and re-create the children so this part of the dom tree renders
12
+ // in a readonly (display) mode instead of a editable
13
+ getPConnect().setInheritedProp('displayMode', 'LABELS_LEFT');
14
+ getPConnect().setInheritedProp('readOnly', true);
15
+ const children = getPConnect()
16
+ .getChildren()
17
+ .map((configObject, index) => createElement(createPConnectComponent(), {
18
+ ...configObject,
19
+ // eslint-disable-next-line react/no-array-index-key
20
+ key: index.toString()
21
+ }));
22
+ // Set up highlighted data to pass in return if is set to show, need raw metadata to pass to createComponent
23
+ let highlightedDataArr = [];
24
+ if (showHighlightedData) {
25
+ const { highlightedData = [] } = getPConnect().getRawMetadata().config;
26
+ highlightedDataArr = highlightedData.map(field => {
27
+ field.config.displayMode = 'STACKED_LARGE_VAL';
28
+ // Mark as status display when using pyStatusWork
29
+ if (field.config.value === '@P .pyStatusWork') {
30
+ field.type = 'TextInput';
31
+ field.config.displayAsStatus = true;
32
+ }
33
+ return getPConnect().createComponent(field);
34
+ });
12
35
  }
13
- if (arFields.length !== 2) {
14
- // eslint-disable-next-line no-console
15
- console.error(`NarrowWideDetails expects 2 children and received ${arFields.length}`);
16
- }
17
- return (React.createElement(React.Fragment, null,
18
- children && children.length === 2 &&
19
- React.createElement("div", { className: "psdk-narrow-wide-column" },
20
- React.createElement("div", { className: "psdk-narrow-column-column" },
21
- React.createElement(DetailsFields, { fields: arFields[0] })),
22
- React.createElement("div", { className: "psdk-wide-column-column" },
23
- React.createElement(DetailsFields, { fields: arFields[1] }))),
24
- a && b &&
25
- React.createElement("div", { className: "psdk-narrow-wide-column" },
26
- React.createElement("div", { className: "psdk-narrow-column-column" }, a),
27
- React.createElement("div", { className: "psdk-wide-column-column" }, b))));
36
+ return (React.createElement(FieldGroup, { name: propsToUse.showLabel ? propsToUse.label : '' },
37
+ showHighlightedData && highlightedDataArr.length > 0 && (React.createElement(Grid, { container: true, spacing: 1, style: { padding: '0 0 1em' } }, highlightedDataArr.map((child, i) => (React.createElement(Grid, { item: true, xs: COLUMN_WIDTHS[i], key: `hf-${i + 1}` }, child))))),
38
+ React.createElement(Grid, { container: true, spacing: 1 }, children.map((child, i) => (React.createElement(Grid, { item: true, xs: COLUMN_WIDTHS[i], key: `r-${i + 1}` }, child))))));
28
39
  }
40
+ NarrowWideDetails.defaultProps = {
41
+ label: undefined,
42
+ showLabel: true,
43
+ showHighlightedData: false
44
+ };
29
45
  NarrowWideDetails.propTypes = {
30
- // showLabel: PropTypes.bool,
31
- // label: PropTypes.string,
32
- // getPConnect: PropTypes.func.isRequired,
33
- // template: PropTypes.string.isRequired
46
+ showLabel: PropTypes.bool,
47
+ label: PropTypes.string,
48
+ getPConnect: PropTypes.func.isRequired,
49
+ showHighlightedData: PropTypes.bool
34
50
  };
35
51
  //# sourceMappingURL=NarrowWideDetails.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NarrowWideDetails.js","sourceRoot":"","sources":["../../../../../src/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,sCAAsC;AACtC,6CAA6C;AAC7C,OAAO,aAAa,MAAM,8CAA8C,CAAC;AAEzE,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAK;IAC7C,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,QAAQ,GAAe,EAAE,CAAC;IAEhC,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;QAC5B,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,kBAAkB,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;QACvD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;KACnC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,qDAAqD,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;KACvF;IAGD,OAAO,CACL,oBAAC,KAAK,CAAC,QAAQ;QACd,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAChC,6BAAK,SAAS,EAAC,yBAAyB;gBACtC,6BAAK,SAAS,EAAC,2BAA2B;oBACxC,oBAAC,aAAa,IAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAI,CAClC;gBACN,6BAAK,SAAS,EAAC,yBAAyB;oBACtC,oBAAC,aAAa,IAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAI,CAClC,CACF;QAEP,CAAC,IAAI,CAAC;YACL,6BAAK,SAAS,EAAC,yBAAyB;gBACtC,6BAAK,SAAS,EAAC,2BAA2B,IACvC,CAAC,CACE;gBACN,6BAAK,SAAS,EAAC,yBAAyB,IACrC,CAAC,CACE,CACF,CAES,CAClB,CAAA;AACH,CAAC;AAED,iBAAiB,CAAC,SAAS,GAAG;AAC5B,6BAA6B;AAC7B,2BAA2B;AAC3B,0CAA0C;AAC1C,wCAAwC;CACzC,CAAC","sourcesContent":["import React from \"react\";\n// import PropTypes from \"prop-types\";\n// import Grid from '@material-ui/core/Grid';\nimport DetailsFields from '../../../designSystemExtension/DetailsFields';\n\nexport default function NarrowWideDetails(props) {\n const { a, b, children } = props;\n const arFields: Array<any> = [];\n\n for (const child of children) {\n const theChildPConn = child.props.getPConnect();\n const theChildrenOfChild = theChildPConn.getChildren();\n arFields.push(theChildrenOfChild);\n }\n\n if (arFields.length !== 2) {\n // eslint-disable-next-line no-console\n console.error(`NarrowWideDetails expects 2 children and received ${arFields.length}`);\n }\n\n\n return (\n <React.Fragment>\n {children && children.length === 2 &&\n <div className=\"psdk-narrow-wide-column\">\n <div className=\"psdk-narrow-column-column\">\n <DetailsFields fields={arFields[0]} />\n </div>\n <div className=\"psdk-wide-column-column\">\n <DetailsFields fields={arFields[1]} />\n </div>\n </div>\n }\n {a && b &&\n <div className=\"psdk-narrow-wide-column\">\n <div className=\"psdk-narrow-column-column\">\n {a}\n </div>\n <div className=\"psdk-wide-column-column\">\n {b}\n </div>\n </div>\n }\n </React.Fragment>\n )\n}\n\nNarrowWideDetails.propTypes = {\n // showLabel: PropTypes.bool,\n // label: PropTypes.string,\n // getPConnect: PropTypes.func.isRequired,\n // template: PropTypes.string.isRequired\n};\n"]}
1
+ {"version":3,"file":"NarrowWideDetails.js","sourceRoot":"","sources":["../../../../../src/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { createElement } from 'react';\nimport PropTypes from 'prop-types';\nimport Grid from '@material-ui/core/Grid';\nimport { GridSize } from '@material-ui/core/Grid';\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\nimport FieldGroup from '../../../designSystemExtension/FieldGroup';\n\nconst COLUMN_WIDTHS = [4, 8];\n\nexport default function NarrowWideDetails(props) {\n const { label, showLabel, getPConnect, showHighlightedData } = props;\n\n // Get the inherited props from the parent to determine label settings\n const propsToUse = { label, showLabel, ...getPConnect().getInheritedProps() };\n\n // Set display mode prop and re-create the children so this part of the dom tree renders\n // in a readonly (display) mode instead of a editable\n getPConnect().setInheritedProp('displayMode', 'LABELS_LEFT');\n getPConnect().setInheritedProp('readOnly', true);\n const children = getPConnect()\n .getChildren()\n .map((configObject, index) =>\n createElement(createPConnectComponent(), {\n ...configObject,\n // eslint-disable-next-line react/no-array-index-key\n key: index.toString()\n })\n );\n\n // Set up highlighted data to pass in return if is set to show, need raw metadata to pass to createComponent\n let highlightedDataArr = [];\n if (showHighlightedData) {\n const { highlightedData = [] } = getPConnect().getRawMetadata().config;\n highlightedDataArr = highlightedData.map(field => {\n field.config.displayMode = 'STACKED_LARGE_VAL';\n\n // Mark as status display when using pyStatusWork\n if (field.config.value === '@P .pyStatusWork') {\n field.type = 'TextInput';\n field.config.displayAsStatus = true;\n }\n\n return getPConnect().createComponent(field);\n });\n }\n\n return (\n <FieldGroup name={propsToUse.showLabel ? propsToUse.label : ''}>\n {showHighlightedData && highlightedDataArr.length > 0 && (\n <Grid container spacing={1} style={{ padding: '0 0 1em' }}>\n {highlightedDataArr.map((child, i) => (\n <Grid item xs={COLUMN_WIDTHS[i] as GridSize} key={`hf-${i + 1}`}>\n {child}\n </Grid>\n ))}\n </Grid>\n )}\n <Grid container spacing={1}>\n {children.map((child, i) => (\n <Grid item xs={COLUMN_WIDTHS[i] as GridSize} key={`r-${i + 1}`}>\n {child}\n </Grid>\n ))}\n </Grid>\n </FieldGroup>\n );\n}\n\nNarrowWideDetails.defaultProps = {\n label: undefined,\n showLabel: true,\n showHighlightedData: false\n};\n\nNarrowWideDetails.propTypes = {\n showLabel: PropTypes.bool,\n label: PropTypes.string,\n getPConnect: PropTypes.func.isRequired,\n showHighlightedData: PropTypes.bool\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleTableManual.d.ts","sourceRoot":"","sources":["../../../../../src/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx"],"names":[],"mappings":";AAoEA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAK,KAAA,eA4oB9C"}
1
+ {"version":3,"file":"SimpleTableManual.d.ts","sourceRoot":"","sources":["../../../../../src/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx"],"names":[],"mappings":";AAoEA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAK,KAAA,eAunB9C"}
@@ -119,29 +119,18 @@ export default function SimpleTableManual(props) {
119
119
  generateRowsData();
120
120
  }
121
121
  }, [referenceList.length]);
122
- // Nebula has other handling for isReadOnlyMode but has Cosmos-specific code
123
- // so ignoring that for now...
124
122
  // fieldDefs will be an array where each entry will have a "name" which will be the
125
123
  // "resolved" property name (that we can use as the colId) though it's not really
126
124
  // resolved. The buildFieldsForTable helper just removes the "@P " (which is what
127
- // Nebula does). It will also have the "label", and "meta" contains the original,
125
+ // Constellation DX Components do). It will also have the "label", and "meta" contains the original,
128
126
  // unchanged config info. For now, much of the info here is carried over from
129
- // Nebula and we may not end up using it all.
127
+ // Constellation DX Components.
130
128
  const fieldDefs = buildFieldsForTable(rawFields, resolvedFields, showDeleteButton);
131
129
  const displayedColumns = fieldDefs.map(field => {
132
130
  return field.name ? field.name : field.cellRenderer;
133
131
  });
134
132
  // console.log(`SimpleTable displayedColumns:`);
135
133
  // console.log(displayedColumns);
136
- // And now we can process the resolvedFields to add in the "name"
137
- // from from the fieldDefs. This "name" is the value that
138
- // we'll share to connect things together in the table.
139
- // const processedFields = resolvedFields.map((field, i) => {
140
- // field.config['name'] = displayedColumns[i]; // .config["value"].replace(/ ./g,"_"); // replace space dot with underscore
141
- // return field;
142
- // });
143
- // console.log("SimpleTable processedFields:");
144
- // console.log(processedFields);
145
134
  // return the value that should be shown as the contents for the given row data
146
135
  // of the given row field
147
136
  function getRowValue(inRowData, inColKey) {
@@ -190,24 +179,18 @@ export default function SimpleTableManual(props) {
190
179
  setRowData(data);
191
180
  }
192
181
  }
182
+ // May be useful for debugging or understanding how it works.
193
183
  // These are the data structures referred to in the html file.
194
184
  // These are the relationships that make the table work
195
185
  // displayedColumns: key/value pairs where key is order of column and
196
186
  // value is the property shown in that column. Ex: 1: "FirstName"
197
- // processedFields: key/value pairs where each key is order of column
198
- // and each value is an object of more detailed information about that
199
- // column.
200
187
  // rowData: array of each row's key/value pairs. Inside each row,
201
188
  // each key is an entry in displayedColumns: ex: "FirstName": "Charles"
202
189
  // Ex: { 1: {config: {label: "First Name", readOnly: true: name: "FirstName"}}, type: "TextInput" }
203
190
  // The "type" indicates the type of component that should be used for editing (when editing is enabled)
204
191
  //
205
- // Note that the "property" shown in the column ("FirstName" in the above examples) is what
206
- // ties the 3 data structures together.
207
192
  // console.log("SimpleTable displayedColumns:");
208
193
  // console.log(displayedColumns);
209
- // console.log("SimpleTable processedFields:");
210
- // console.log(processedFields);
211
194
  // console.log(`SimpleTable rowData (${rowData.length} row(s)):`);
212
195
  // console.log(JSON.stringify(rowData));
213
196
  const addRecord = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"SimpleTableManual.js","sourceRoot":"","sources":["../../../../../src/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-nested-ternary */\nimport React, { useEffect, useState } from 'react';\nimport Table from '@material-ui/core/Table';\nimport TableBody from '@material-ui/core/TableBody';\nimport TableCell from '@material-ui/core/TableCell';\nimport TableContainer from '@material-ui/core/TableContainer';\nimport TableHead from '@material-ui/core/TableHead';\nimport TableRow from '@material-ui/core/TableRow';\nimport Paper from '@material-ui/core/Paper';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { buildFieldsForTable, filterData } from '../../../helpers/simpleTableHelpers';\nimport { getDataPage } from '../../../helpers/data_page';\nimport Link from '@material-ui/core/Link';\nimport { getReferenceList } from '../../../helpers/field-group-utils';\nimport { Utils } from '../../../helpers/utils';\nimport { createElement } from 'react';\n\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\n\nimport TableSortLabel from '@material-ui/core/TableSortLabel';\nimport MoreIcon from '@material-ui/icons/MoreVert';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport FilterListIcon from '@material-ui/icons/FilterList';\nimport SubjectIcon from '@material-ui/icons/Subject';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport Select from '@material-ui/core/Select';\nimport Button from '@material-ui/core/Button';\nimport TextField from '@material-ui/core/TextField';\n\nconst useStyles = makeStyles((/* theme */) => ({\n label: {\n margin: '8px'\n },\n header: {\n background: '#f5f5f5'\n },\n tableCell: {\n borderRight: '1px solid lightgray',\n padding: '8px'\n },\n visuallyHidden: {\n border: 0,\n clip: 'rect(0 0 0 0)',\n height: 1,\n margin: -1,\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n top: 20,\n width: 1\n },\n moreIcon: {\n verticalAlign: 'bottom'\n }\n}));\n\ndeclare const PCore: any;\n\nlet menuColumnId = '';\nlet menuColumnType = '';\nlet menuColumnLabel = '';\n\nconst filterByColumns: Array<any> = [];\nlet myRows: Array<any>;\nexport default function SimpleTableManual(props) {\n const classes = useStyles();\n const {\n getPConnect,\n referenceList = [], // if referenceList not in configProps$, default to empy list\n children,\n renderMode,\n presets,\n label: labelProp,\n showLabel,\n dataPageName,\n contextClass,\n hideAddRow,\n hideDeleteRow,\n propertyLabel,\n fieldMetadata\n } = props;\n const pConn = getPConnect();\n const [rowData, setRowData] = useState([]);\n const [elements, setElementsData] = useState([]);\n const [order, setOrder] = useState<Order>('asc');\n const [orderBy, setOrderBy] = useState<keyof any>('');\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [open, setOpen] = useState(false);\n const [filterBy, setFilterBy] = useState<string>();\n const [containsDateOrTime, setContainsDateOrTime] = useState<boolean>(false);\n const [filterType, setFilterType] = useState<string>('string');\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars\n const [displayDialogFilterName, setDisplayDialogFilterName] = useState<string>('');\n const [displayDialogContainsFilter, setDisplayDialogContainsFilter] =\n useState<string>('contains');\n const [displayDialogContainsValue, setDisplayDialogContainsValue] = useState<string>('');\n const [displayDialogDateFilter, setDisplayDialogDateFilter] = useState<string>('notequal');\n const [displayDialogDateValue, setDisplayDialogDateValue] = useState<string>('');\n\n const parameters = fieldMetadata?.datasource?.parameters;\n\n const label = labelProp || propertyLabel;\n const propsToUse = { label, showLabel, ...getPConnect().getInheritedProps() };\n if (propsToUse.showLabel === false) {\n propsToUse.label = '';\n }\n // Getting current context\n const context = getPConnect().getContextName();\n const resolvedList = getReferenceList(pConn);\n const pageReference = `${pConn.getPageReference()}${resolvedList}`;\n pConn.setReferenceList(resolvedList);\n const menuIconOverride$ = Utils.getImageSrc('trash', PCore.getAssetLoader().getStaticServerUrl());\n\n const resolvedFields = children?.[0]?.children || presets?.[0].children?.[0].children;\n // NOTE: props has each child.config with datasource and value undefined\n // but getRawMetadata() has each child.config with datasource and value showing their unresolved values (ex: \"@P thePropName\")\n // We need to use the prop name as the \"glue\" to tie the table dataSource, displayColumns and data together.\n // So, in the code below, we'll use the unresolved config.value (but replacing the space with an underscore to keep things happy)\n const rawMetadata = getPConnect().getRawMetadata();\n\n // get raw config since @P and other annotations are processed and don't appear in the resolved config.\n // Destructure \"raw\" children into array var: \"rawFields\"\n // NOTE: when config.listType == \"associated\", the property can be found in either\n // config.value (ex: \"@P .DeclarantChoice\") or\n // config.datasource (ex: \"@ASSOCIATED .DeclarantChoice\")\n // Neither of these appear in the resolved props\n\n const rawConfig = rawMetadata?.config;\n const rawFields =\n rawConfig?.children?.[0]?.children || rawConfig?.presets?.[0].children?.[0]?.children;\n\n const readOnlyMode = renderMode === 'ReadOnly';\n const editableMode = renderMode === 'Editable';\n const showAddRowButton = !readOnlyMode && !hideAddRow;\n const showDeleteButton = !readOnlyMode && !hideDeleteRow;\n useEffect(() => {\n if (editableMode) {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n buildElementsForTable();\n } else {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n generateRowsData();\n }\n }, [referenceList.length]);\n\n // Nebula has other handling for isReadOnlyMode but has Cosmos-specific code\n // so ignoring that for now...\n // fieldDefs will be an array where each entry will have a \"name\" which will be the\n // \"resolved\" property name (that we can use as the colId) though it's not really\n // resolved. The buildFieldsForTable helper just removes the \"@P \" (which is what\n // Nebula does). It will also have the \"label\", and \"meta\" contains the original,\n // unchanged config info. For now, much of the info here is carried over from\n // Nebula and we may not end up using it all.\n const fieldDefs = buildFieldsForTable(rawFields, resolvedFields, showDeleteButton);\n\n const displayedColumns = fieldDefs.map(field => {\n return field.name ? field.name : field.cellRenderer;\n });\n\n // console.log(`SimpleTable displayedColumns:`);\n // console.log(displayedColumns);\n\n // And now we can process the resolvedFields to add in the \"name\"\n // from from the fieldDefs. This \"name\" is the value that\n // we'll share to connect things together in the table.\n\n // const processedFields = resolvedFields.map((field, i) => {\n // field.config['name'] = displayedColumns[i]; // .config[\"value\"].replace(/ ./g,\"_\"); // replace space dot with underscore\n // return field;\n // });\n\n // console.log(\"SimpleTable processedFields:\");\n // console.log(processedFields);\n\n // return the value that should be shown as the contents for the given row data\n // of the given row field\n function getRowValue(inRowData: Object, inColKey: string): any {\n // See what data (if any) we have to display\n const refKeys: Array<string> = inColKey.split('.');\n let valBuilder = inRowData;\n for (const key of refKeys) {\n valBuilder = valBuilder[key];\n }\n return valBuilder;\n }\n\n const formatRowsData = data => {\n if(!data) return {};\n\n return data.map(item => {\n return displayedColumns.reduce((dataForRow, colKey) => {\n dataForRow[colKey] = getRowValue(item, colKey);\n return dataForRow;\n }, {});\n });\n };\n\n function generateRowsData() {\n // if dataPageName property value exists then make a datapage fetch call and get the list of data.\n if (dataPageName) {\n getDataPage(dataPageName, parameters, context).then(listData => {\n const data = formatRowsData(listData);\n myRows = data;\n setRowData(data);\n });\n } else {\n // The referenceList prop has the JSON data for each row to be displayed\n // in the table. So, iterate over referenceList to create the dataRows that\n // we're using as the table's dataSource\n const data: any = [];\n for (const row of referenceList) {\n const dataForRow: Object = {};\n for (const col of displayedColumns) {\n const colKey: string = col;\n const theVal = getRowValue(row, colKey);\n dataForRow[colKey] = theVal || '';\n }\n data.push(dataForRow);\n myRows = data;\n }\n setRowData(data);\n }\n }\n\n // These are the data structures referred to in the html file.\n // These are the relationships that make the table work\n // displayedColumns: key/value pairs where key is order of column and\n // value is the property shown in that column. Ex: 1: \"FirstName\"\n // processedFields: key/value pairs where each key is order of column\n // and each value is an object of more detailed information about that\n // column.\n // rowData: array of each row's key/value pairs. Inside each row,\n // each key is an entry in displayedColumns: ex: \"FirstName\": \"Charles\"\n // Ex: { 1: {config: {label: \"First Name\", readOnly: true: name: \"FirstName\"}}, type: \"TextInput\" }\n // The \"type\" indicates the type of component that should be used for editing (when editing is enabled)\n //\n // Note that the \"property\" shown in the column (\"FirstName\" in the above examples) is what\n // ties the 3 data structures together.\n\n // console.log(\"SimpleTable displayedColumns:\");\n // console.log(displayedColumns);\n // console.log(\"SimpleTable processedFields:\");\n // console.log(processedFields);\n // console.log(`SimpleTable rowData (${rowData.length} row(s)):`);\n // console.log(JSON.stringify(rowData));\n\n const addRecord = () => {\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n pConn.getListActions().insert({ classID: contextClass }, referenceList.length, pageReference);\n } else {\n pConn.getListActions().insert({ classID: contextClass }, referenceList.length);\n }\n };\n\n const deleteRecord = index => {\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n pConn.getListActions().deleteEntry(index, pageReference);\n } else {\n pConn.getListActions().deleteEntry(index);\n }\n };\n\n function buildElementsForTable() {\n const eleData: any = [];\n referenceList.forEach((element, index) => {\n const data: any = [];\n rawFields.forEach(item => {\n // removing label field from config to hide title in the table cell\n item = {...item, config: {...item.config, label: ''}};\n const referenceListData = getReferenceList(pConn);\n const isDatapage = referenceListData.startsWith('D_');\n const pageReferenceValue = isDatapage\n ? `${referenceListData}[${index}]`\n : `${pConn.getPageReference()}${referenceListData.substring(\n referenceListData.lastIndexOf('.')\n )}[${index}]`;\n const config = {\n meta: item,\n options: {\n context,\n pageReference: pageReferenceValue,\n referenceList: referenceListData,\n hasForm: true\n }\n };\n const view = PCore.createPConnect(config);\n data.push(createElement(createPConnectComponent(), view));\n });\n eleData.push(data);\n });\n setElementsData(eleData);\n }\n\n const handleRequestSort = (event: React.MouseEvent<unknown>, property: keyof any) => {\n const isAsc = orderBy === property && order === 'asc';\n setOrder(isAsc ? 'desc' : 'asc');\n setOrderBy(property);\n };\n\n const createSortHandler = (property: keyof any) => (event: React.MouseEvent<unknown>) => {\n handleRequestSort(event, property);\n };\n\n function descendingComparator<T>(a: T, b: T, orderedBy: keyof T) {\n if (b[orderedBy] < a[orderedBy]) {\n return -1;\n }\n if (b[orderedBy] > a[orderedBy]) {\n return 1;\n }\n return 0;\n }\n\n type Order = 'asc' | 'desc';\n\n function getComparator<Key extends keyof any>(\n theOrder: Order,\n orderedBy: Key\n // eslint-disable-next-line no-unused-vars\n ): (a: { [key in Key]: number | string }, b: { [key in Key]: number | string }) => number {\n return theOrder === 'desc'\n ? (a, b) => descendingComparator(a, b, orderedBy)\n : (a, b) => -descendingComparator(a, b, orderedBy);\n }\n\n // eslint-disable-next-line no-unused-vars\n function stableSort<T>(array: Array<T>, comparator: (a: T, b: T) => number) {\n const stabilizedThis = array.map((el, index) => [el, index] as [T, number]);\n stabilizedThis.sort((a, b) => {\n // eslint-disable-next-line @typescript-eslint/no-shadow, no-shadow\n const order = comparator(a[0], b[0]);\n if (order !== 0) return order;\n return a[1] - b[1];\n });\n\n return stabilizedThis.map(el => el[0]);\n }\n\n function _menuClick(event, columnId: string, columnType: string, labelValue: string) {\n menuColumnId = columnId;\n menuColumnType = columnType;\n menuColumnLabel = labelValue;\n\n setAnchorEl(event.currentTarget);\n }\n\n function _menuClose() {\n setAnchorEl(null);\n }\n\n function _filterMenu() {\n setAnchorEl(null);\n\n let bFound = false;\n\n for (const filterObj of filterByColumns) {\n if (filterObj.ref === menuColumnId) {\n setFilterBy(menuColumnLabel);\n if (\n filterObj.type === 'Date' ||\n filterObj.type === 'DateTime' ||\n filterObj.type === 'Time'\n ) {\n setContainsDateOrTime(true);\n setFilterType(filterObj.type);\n setDisplayDialogDateFilter(filterObj.containsFilter);\n setDisplayDialogDateValue(filterObj.containsFilterValue);\n } else {\n setContainsDateOrTime(false);\n setFilterType('string');\n setDisplayDialogContainsFilter(filterObj.containsFilter);\n setDisplayDialogContainsValue(filterObj.containsFilterValue);\n }\n bFound = true;\n break;\n }\n }\n\n if (!bFound) {\n setFilterBy(menuColumnLabel);\n setDisplayDialogFilterName(menuColumnId);\n setDisplayDialogContainsValue('');\n\n switch (menuColumnType) {\n case 'Date':\n case 'DateTime':\n case 'Time':\n setContainsDateOrTime(true);\n setFilterType(menuColumnType);\n break;\n default:\n setContainsDateOrTime(false);\n setFilterType('string');\n break;\n }\n }\n\n // open dialog\n setOpen(true);\n }\n\n function _groupMenu() {}\n\n function _closeDialog() {\n setOpen(false);\n }\n\n function _dialogContainsFilter(event) {\n setDisplayDialogContainsFilter(event.target.value);\n }\n\n function _dialogContainsValue(event) {\n setDisplayDialogContainsValue(event.target.value);\n }\n\n function _dialogDateFilter(event) {\n setDisplayDialogDateFilter(event.target.value);\n }\n\n function _dialogDateValue(event) {\n setDisplayDialogDateValue(event.target.value);\n }\n\n function filterSortGroupBy() {\n // get original data set\n let theData: any = myRows.slice();\n\n // last filter config data is global\n theData = theData.filter(filterData(filterByColumns));\n\n // move data to array and then sort\n setRowData(theData);\n }\n\n function updateFilterWithInfo() {\n let bFound = false;\n for (const filterObj of filterByColumns) {\n if (filterObj['ref'] === menuColumnId) {\n filterObj['type'] = filterType;\n if (containsDateOrTime) {\n filterObj['containsFilter'] = displayDialogDateFilter;\n filterObj['containsFilterValue'] = displayDialogDateValue;\n } else {\n filterObj['containsFilter'] = displayDialogContainsFilter;\n filterObj['containsFilterValue'] = displayDialogContainsValue;\n }\n bFound = true;\n break;\n }\n }\n\n if (!bFound) {\n // add in\n const filterObj: any = {};\n filterObj.ref = menuColumnId;\n filterObj['type'] = filterType;\n if (containsDateOrTime) {\n filterObj['containsFilter'] = displayDialogDateFilter;\n filterObj['containsFilterValue'] = displayDialogDateValue;\n } else {\n filterObj['containsFilter'] = displayDialogContainsFilter;\n filterObj['containsFilterValue'] = displayDialogContainsValue;\n }\n\n filterByColumns.push(filterObj);\n }\n }\n\n function _submitFilter() {\n updateFilterWithInfo();\n filterSortGroupBy();\n\n setOpen(false);\n }\n\n function _showFilteredIcon(columnId) {\n for (const filterObj of filterByColumns) {\n if (filterObj['ref'] === columnId) {\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (filterObj['containsFilterValue'] !== '') {\n return true;\n }\n return false;\n }\n }\n\n return false;\n }\n\n function results() {\n const len = editableMode ? elements.length : rowData.length;\n\n return len ? (\n <span style={{ fontSize: '0.9em', opacity: '0.7' }}>\n {len} result{len > 1 ? 's' : ''}\n </span>\n ) : null;\n }\n\n return (\n <React.Fragment>\n <TableContainer component={Paper} style={{ margin: '4px 0px' }} id=\"simple-table-manual\">\n {propsToUse.label && (\n <h3 className={classes.label}>\n {propsToUse.label} {results()}\n </h3>\n )}\n <Table>\n <TableHead className={classes.header}>\n <TableRow>\n {fieldDefs.map((field: any, index) => {\n return (\n <TableCell key={`head-${displayedColumns[index]}`} className={classes.tableCell}>\n {readOnlyMode ? (\n <div>\n <TableSortLabel\n active={orderBy === displayedColumns[index]}\n direction={orderBy === displayedColumns[index] ? order : 'asc'}\n onClick={createSortHandler(displayedColumns[index])}\n >\n {field.label}\n {_showFilteredIcon(field.name) && (\n <FilterListIcon className={classes.moreIcon} />\n )}\n {orderBy === displayedColumns[index] ? (\n <span className={classes.visuallyHidden}>\n {order === 'desc' ? 'sorted descending' : 'sorted ascending'}\n </span>\n ) : null}\n </TableSortLabel>\n <MoreIcon\n id='menu-icon'\n className={classes.moreIcon}\n onClick={event => {\n _menuClick(event, field.name, field.meta.type, field.label);\n }}\n />\n </div>\n ) : (\n field.label\n )}\n </TableCell>\n );\n })}\n </TableRow>\n </TableHead>\n <TableBody>\n {editableMode &&\n elements.map((row: any, index) => {\n const theKey = `row-${index}`;\n return (\n <TableRow key={theKey}>\n {row.map((item, childIndex) => {\n const theColKey = `data-${index}-${childIndex}`;\n return (\n <TableCell key={theColKey} className={classes.tableCell}>\n {item}\n </TableCell>\n );\n })}\n {showDeleteButton && (\n <TableCell>\n <button\n type='button'\n className='psdk-utility-button'\n id='delete-button'\n onClick={() => deleteRecord(index)}\n >\n <img\n className='psdk-utility-card-action-svg-icon'\n src={menuIconOverride$}\n ></img>\n </button>\n </TableCell>\n )}\n </TableRow>\n );\n })}\n {readOnlyMode &&\n rowData &&\n rowData.length > 0 &&\n stableSort(rowData, getComparator(order, orderBy))\n .slice(0)\n .map(row => {\n return (\n <TableRow key={row[displayedColumns[0]]}>\n {displayedColumns.map(colKey => {\n return (\n <TableCell key={colKey} className={classes.tableCell}>\n {typeof row[colKey] === 'boolean' && !row[colKey]\n ? 'False'\n : typeof row[colKey] === 'boolean' && row[colKey]\n ? 'True'\n : row[colKey]}\n </TableCell>\n );\n })}\n </TableRow>\n );\n })}\n </TableBody>\n </Table>\n {readOnlyMode && rowData && rowData.length === 0 && (\n <div className='no-records' id='no-records'>\n No records found.\n </div>\n )}\n {editableMode && referenceList && referenceList.length === 0 && (\n <div className='no-records' id='no-records'>\n No records found.\n </div>\n )}\n </TableContainer>\n {showAddRowButton && (\n <div style={{ fontSize: '1rem' }}>\n <Link style={{ cursor: 'pointer' }} onClick={addRecord}>\n + Add\n </Link>\n </div>\n )}\n <Menu\n id='simple-menu'\n anchorEl={anchorEl}\n keepMounted\n open={Boolean(anchorEl)}\n onClose={_menuClose}\n >\n <MenuItem onClick={_filterMenu}>\n <FilterListIcon /> Filter\n </MenuItem>\n <MenuItem onClick={_groupMenu}>\n <SubjectIcon /> Group\n </MenuItem>\n </Menu>\n <Dialog open={open} onClose={_closeDialog} aria-labelledby='form-dialog-title'>\n <DialogTitle id='form-dialog-title'>Filter: {filterBy}</DialogTitle>\n <DialogContent>\n {containsDateOrTime ? (\n <>\n <Select value={displayDialogDateFilter} onChange={_dialogDateFilter} fullWidth>\n <MenuItem value='notequal'>is not equal to</MenuItem>\n <MenuItem value='equal'>is equal to</MenuItem>\n <MenuItem value='after'>after</MenuItem>\n <MenuItem value='before'>before</MenuItem>\n <MenuItem value='null'>is null</MenuItem>\n <MenuItem value='notnull'>is not null</MenuItem>\n </Select>\n {filterType === 'Date' && (\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='date'\n fullWidth\n value={displayDialogDateValue}\n onChange={_dialogDateValue}\n />\n )}\n {filterType === 'DateTime' && (\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='datetime-local'\n fullWidth\n value={displayDialogDateValue}\n onChange={_dialogDateValue}\n />\n )}\n {filterType === 'Time' && (\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='time'\n fullWidth\n value={displayDialogDateValue}\n onChange={_dialogDateValue}\n />\n )}\n </>\n ) : (\n <>\n <Select\n id='filter'\n fullWidth\n onChange={_dialogContainsFilter}\n value={displayDialogContainsFilter}\n >\n <MenuItem value='contains'>Contains</MenuItem>\n <MenuItem value='equals'>Equals</MenuItem>\n <MenuItem value='startswith'>Starts with</MenuItem>\n </Select>\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='text'\n fullWidth\n value={displayDialogContainsValue}\n onChange={_dialogContainsValue}\n />\n </>\n )}\n </DialogContent>\n <DialogActions>\n <Button onClick={_closeDialog} color='secondary'>\n Cancel\n </Button>\n <Button onClick={_submitFilter} color='primary'>\n Submit\n </Button>\n </DialogActions>\n </Dialog>\n </React.Fragment>\n );\n}\n"]}
1
+ {"version":3,"file":"SimpleTableManual.js","sourceRoot":"","sources":["../../../../../src/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-nested-ternary */\nimport React, { useEffect, useState } from 'react';\nimport Table from '@material-ui/core/Table';\nimport TableBody from '@material-ui/core/TableBody';\nimport TableCell from '@material-ui/core/TableCell';\nimport TableContainer from '@material-ui/core/TableContainer';\nimport TableHead from '@material-ui/core/TableHead';\nimport TableRow from '@material-ui/core/TableRow';\nimport Paper from '@material-ui/core/Paper';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { buildFieldsForTable, filterData } from '../../../helpers/simpleTableHelpers';\nimport { getDataPage } from '../../../helpers/data_page';\nimport Link from '@material-ui/core/Link';\nimport { getReferenceList } from '../../../helpers/field-group-utils';\nimport { Utils } from '../../../helpers/utils';\nimport { createElement } from 'react';\n\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\n\nimport TableSortLabel from '@material-ui/core/TableSortLabel';\nimport MoreIcon from '@material-ui/icons/MoreVert';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport FilterListIcon from '@material-ui/icons/FilterList';\nimport SubjectIcon from '@material-ui/icons/Subject';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogActions from '@material-ui/core/DialogActions';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport Select from '@material-ui/core/Select';\nimport Button from '@material-ui/core/Button';\nimport TextField from '@material-ui/core/TextField';\n\nconst useStyles = makeStyles((/* theme */) => ({\n label: {\n margin: '8px'\n },\n header: {\n background: '#f5f5f5'\n },\n tableCell: {\n borderRight: '1px solid lightgray',\n padding: '8px'\n },\n visuallyHidden: {\n border: 0,\n clip: 'rect(0 0 0 0)',\n height: 1,\n margin: -1,\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n top: 20,\n width: 1\n },\n moreIcon: {\n verticalAlign: 'bottom'\n }\n}));\n\ndeclare const PCore: any;\n\nlet menuColumnId = '';\nlet menuColumnType = '';\nlet menuColumnLabel = '';\n\nconst filterByColumns: Array<any> = [];\nlet myRows: Array<any>;\nexport default function SimpleTableManual(props) {\n const classes = useStyles();\n const {\n getPConnect,\n referenceList = [], // if referenceList not in configProps$, default to empy list\n children,\n renderMode,\n presets,\n label: labelProp,\n showLabel,\n dataPageName,\n contextClass,\n hideAddRow,\n hideDeleteRow,\n propertyLabel,\n fieldMetadata\n } = props;\n const pConn = getPConnect();\n const [rowData, setRowData] = useState([]);\n const [elements, setElementsData] = useState([]);\n const [order, setOrder] = useState<Order>('asc');\n const [orderBy, setOrderBy] = useState<keyof any>('');\n const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null);\n const [open, setOpen] = useState(false);\n const [filterBy, setFilterBy] = useState<string>();\n const [containsDateOrTime, setContainsDateOrTime] = useState<boolean>(false);\n const [filterType, setFilterType] = useState<string>('string');\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars\n const [displayDialogFilterName, setDisplayDialogFilterName] = useState<string>('');\n const [displayDialogContainsFilter, setDisplayDialogContainsFilter] =\n useState<string>('contains');\n const [displayDialogContainsValue, setDisplayDialogContainsValue] = useState<string>('');\n const [displayDialogDateFilter, setDisplayDialogDateFilter] = useState<string>('notequal');\n const [displayDialogDateValue, setDisplayDialogDateValue] = useState<string>('');\n\n const parameters = fieldMetadata?.datasource?.parameters;\n\n const label = labelProp || propertyLabel;\n const propsToUse = { label, showLabel, ...getPConnect().getInheritedProps() };\n if (propsToUse.showLabel === false) {\n propsToUse.label = '';\n }\n // Getting current context\n const context = getPConnect().getContextName();\n const resolvedList = getReferenceList(pConn);\n const pageReference = `${pConn.getPageReference()}${resolvedList}`;\n pConn.setReferenceList(resolvedList);\n const menuIconOverride$ = Utils.getImageSrc('trash', PCore.getAssetLoader().getStaticServerUrl());\n\n const resolvedFields = children?.[0]?.children || presets?.[0].children?.[0].children;\n // NOTE: props has each child.config with datasource and value undefined\n // but getRawMetadata() has each child.config with datasource and value showing their unresolved values (ex: \"@P thePropName\")\n // We need to use the prop name as the \"glue\" to tie the table dataSource, displayColumns and data together.\n // So, in the code below, we'll use the unresolved config.value (but replacing the space with an underscore to keep things happy)\n const rawMetadata = getPConnect().getRawMetadata();\n\n // get raw config since @P and other annotations are processed and don't appear in the resolved config.\n // Destructure \"raw\" children into array var: \"rawFields\"\n // NOTE: when config.listType == \"associated\", the property can be found in either\n // config.value (ex: \"@P .DeclarantChoice\") or\n // config.datasource (ex: \"@ASSOCIATED .DeclarantChoice\")\n // Neither of these appear in the resolved props\n\n const rawConfig = rawMetadata?.config;\n const rawFields =\n rawConfig?.children?.[0]?.children || rawConfig?.presets?.[0].children?.[0]?.children;\n\n const readOnlyMode = renderMode === 'ReadOnly';\n const editableMode = renderMode === 'Editable';\n const showAddRowButton = !readOnlyMode && !hideAddRow;\n const showDeleteButton = !readOnlyMode && !hideDeleteRow;\n useEffect(() => {\n if (editableMode) {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n buildElementsForTable();\n } else {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n generateRowsData();\n }\n }, [referenceList.length]);\n\n // fieldDefs will be an array where each entry will have a \"name\" which will be the\n // \"resolved\" property name (that we can use as the colId) though it's not really\n // resolved. The buildFieldsForTable helper just removes the \"@P \" (which is what\n // Constellation DX Components do). It will also have the \"label\", and \"meta\" contains the original,\n // unchanged config info. For now, much of the info here is carried over from\n // Constellation DX Components.\n const fieldDefs = buildFieldsForTable(rawFields, resolvedFields, showDeleteButton);\n\n const displayedColumns = fieldDefs.map(field => {\n return field.name ? field.name : field.cellRenderer;\n });\n\n // console.log(`SimpleTable displayedColumns:`);\n // console.log(displayedColumns);\n\n // return the value that should be shown as the contents for the given row data\n // of the given row field\n function getRowValue(inRowData: Object, inColKey: string): any {\n // See what data (if any) we have to display\n const refKeys: Array<string> = inColKey.split('.');\n let valBuilder = inRowData;\n for (const key of refKeys) {\n valBuilder = valBuilder[key];\n }\n return valBuilder;\n }\n\n const formatRowsData = data => {\n if(!data) return {};\n\n return data.map(item => {\n return displayedColumns.reduce((dataForRow, colKey) => {\n dataForRow[colKey] = getRowValue(item, colKey);\n return dataForRow;\n }, {});\n });\n };\n\n function generateRowsData() {\n // if dataPageName property value exists then make a datapage fetch call and get the list of data.\n if (dataPageName) {\n getDataPage(dataPageName, parameters, context).then(listData => {\n const data = formatRowsData(listData);\n myRows = data;\n setRowData(data);\n });\n } else {\n // The referenceList prop has the JSON data for each row to be displayed\n // in the table. So, iterate over referenceList to create the dataRows that\n // we're using as the table's dataSource\n const data: any = [];\n for (const row of referenceList) {\n const dataForRow: Object = {};\n for (const col of displayedColumns) {\n const colKey: string = col;\n const theVal = getRowValue(row, colKey);\n dataForRow[colKey] = theVal || '';\n }\n data.push(dataForRow);\n myRows = data;\n }\n setRowData(data);\n }\n }\n\n // May be useful for debugging or understanding how it works.\n // These are the data structures referred to in the html file.\n // These are the relationships that make the table work\n // displayedColumns: key/value pairs where key is order of column and\n // value is the property shown in that column. Ex: 1: \"FirstName\"\n // rowData: array of each row's key/value pairs. Inside each row,\n // each key is an entry in displayedColumns: ex: \"FirstName\": \"Charles\"\n // Ex: { 1: {config: {label: \"First Name\", readOnly: true: name: \"FirstName\"}}, type: \"TextInput\" }\n // The \"type\" indicates the type of component that should be used for editing (when editing is enabled)\n //\n // console.log(\"SimpleTable displayedColumns:\");\n // console.log(displayedColumns);\n // console.log(`SimpleTable rowData (${rowData.length} row(s)):`);\n // console.log(JSON.stringify(rowData));\n\n const addRecord = () => {\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n pConn.getListActions().insert({ classID: contextClass }, referenceList.length, pageReference);\n } else {\n pConn.getListActions().insert({ classID: contextClass }, referenceList.length);\n }\n };\n\n const deleteRecord = index => {\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n pConn.getListActions().deleteEntry(index, pageReference);\n } else {\n pConn.getListActions().deleteEntry(index);\n }\n };\n\n function buildElementsForTable() {\n const eleData: any = [];\n referenceList.forEach((element, index) => {\n const data: any = [];\n rawFields.forEach(item => {\n // removing label field from config to hide title in the table cell\n item = {...item, config: {...item.config, label: ''}};\n const referenceListData = getReferenceList(pConn);\n const isDatapage = referenceListData.startsWith('D_');\n const pageReferenceValue = isDatapage\n ? `${referenceListData}[${index}]`\n : `${pConn.getPageReference()}${referenceListData.substring(\n referenceListData.lastIndexOf('.')\n )}[${index}]`;\n const config = {\n meta: item,\n options: {\n context,\n pageReference: pageReferenceValue,\n referenceList: referenceListData,\n hasForm: true\n }\n };\n const view = PCore.createPConnect(config);\n data.push(createElement(createPConnectComponent(), view));\n });\n eleData.push(data);\n });\n setElementsData(eleData);\n }\n\n const handleRequestSort = (event: React.MouseEvent<unknown>, property: keyof any) => {\n const isAsc = orderBy === property && order === 'asc';\n setOrder(isAsc ? 'desc' : 'asc');\n setOrderBy(property);\n };\n\n const createSortHandler = (property: keyof any) => (event: React.MouseEvent<unknown>) => {\n handleRequestSort(event, property);\n };\n\n function descendingComparator<T>(a: T, b: T, orderedBy: keyof T) {\n if (b[orderedBy] < a[orderedBy]) {\n return -1;\n }\n if (b[orderedBy] > a[orderedBy]) {\n return 1;\n }\n return 0;\n }\n\n type Order = 'asc' | 'desc';\n\n function getComparator<Key extends keyof any>(\n theOrder: Order,\n orderedBy: Key\n // eslint-disable-next-line no-unused-vars\n ): (a: { [key in Key]: number | string }, b: { [key in Key]: number | string }) => number {\n return theOrder === 'desc'\n ? (a, b) => descendingComparator(a, b, orderedBy)\n : (a, b) => -descendingComparator(a, b, orderedBy);\n }\n\n // eslint-disable-next-line no-unused-vars\n function stableSort<T>(array: Array<T>, comparator: (a: T, b: T) => number) {\n const stabilizedThis = array.map((el, index) => [el, index] as [T, number]);\n stabilizedThis.sort((a, b) => {\n // eslint-disable-next-line @typescript-eslint/no-shadow, no-shadow\n const order = comparator(a[0], b[0]);\n if (order !== 0) return order;\n return a[1] - b[1];\n });\n\n return stabilizedThis.map(el => el[0]);\n }\n\n function _menuClick(event, columnId: string, columnType: string, labelValue: string) {\n menuColumnId = columnId;\n menuColumnType = columnType;\n menuColumnLabel = labelValue;\n\n setAnchorEl(event.currentTarget);\n }\n\n function _menuClose() {\n setAnchorEl(null);\n }\n\n function _filterMenu() {\n setAnchorEl(null);\n\n let bFound = false;\n\n for (const filterObj of filterByColumns) {\n if (filterObj.ref === menuColumnId) {\n setFilterBy(menuColumnLabel);\n if (\n filterObj.type === 'Date' ||\n filterObj.type === 'DateTime' ||\n filterObj.type === 'Time'\n ) {\n setContainsDateOrTime(true);\n setFilterType(filterObj.type);\n setDisplayDialogDateFilter(filterObj.containsFilter);\n setDisplayDialogDateValue(filterObj.containsFilterValue);\n } else {\n setContainsDateOrTime(false);\n setFilterType('string');\n setDisplayDialogContainsFilter(filterObj.containsFilter);\n setDisplayDialogContainsValue(filterObj.containsFilterValue);\n }\n bFound = true;\n break;\n }\n }\n\n if (!bFound) {\n setFilterBy(menuColumnLabel);\n setDisplayDialogFilterName(menuColumnId);\n setDisplayDialogContainsValue('');\n\n switch (menuColumnType) {\n case 'Date':\n case 'DateTime':\n case 'Time':\n setContainsDateOrTime(true);\n setFilterType(menuColumnType);\n break;\n default:\n setContainsDateOrTime(false);\n setFilterType('string');\n break;\n }\n }\n\n // open dialog\n setOpen(true);\n }\n\n function _groupMenu() {}\n\n function _closeDialog() {\n setOpen(false);\n }\n\n function _dialogContainsFilter(event) {\n setDisplayDialogContainsFilter(event.target.value);\n }\n\n function _dialogContainsValue(event) {\n setDisplayDialogContainsValue(event.target.value);\n }\n\n function _dialogDateFilter(event) {\n setDisplayDialogDateFilter(event.target.value);\n }\n\n function _dialogDateValue(event) {\n setDisplayDialogDateValue(event.target.value);\n }\n\n function filterSortGroupBy() {\n // get original data set\n let theData: any = myRows.slice();\n\n // last filter config data is global\n theData = theData.filter(filterData(filterByColumns));\n\n // move data to array and then sort\n setRowData(theData);\n }\n\n function updateFilterWithInfo() {\n let bFound = false;\n for (const filterObj of filterByColumns) {\n if (filterObj['ref'] === menuColumnId) {\n filterObj['type'] = filterType;\n if (containsDateOrTime) {\n filterObj['containsFilter'] = displayDialogDateFilter;\n filterObj['containsFilterValue'] = displayDialogDateValue;\n } else {\n filterObj['containsFilter'] = displayDialogContainsFilter;\n filterObj['containsFilterValue'] = displayDialogContainsValue;\n }\n bFound = true;\n break;\n }\n }\n\n if (!bFound) {\n // add in\n const filterObj: any = {};\n filterObj.ref = menuColumnId;\n filterObj['type'] = filterType;\n if (containsDateOrTime) {\n filterObj['containsFilter'] = displayDialogDateFilter;\n filterObj['containsFilterValue'] = displayDialogDateValue;\n } else {\n filterObj['containsFilter'] = displayDialogContainsFilter;\n filterObj['containsFilterValue'] = displayDialogContainsValue;\n }\n\n filterByColumns.push(filterObj);\n }\n }\n\n function _submitFilter() {\n updateFilterWithInfo();\n filterSortGroupBy();\n\n setOpen(false);\n }\n\n function _showFilteredIcon(columnId) {\n for (const filterObj of filterByColumns) {\n if (filterObj['ref'] === columnId) {\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (filterObj['containsFilterValue'] !== '') {\n return true;\n }\n return false;\n }\n }\n\n return false;\n }\n\n function results() {\n const len = editableMode ? elements.length : rowData.length;\n\n return len ? (\n <span style={{ fontSize: '0.9em', opacity: '0.7' }}>\n {len} result{len > 1 ? 's' : ''}\n </span>\n ) : null;\n }\n\n return (\n <React.Fragment>\n <TableContainer component={Paper} style={{ margin: '4px 0px' }} id=\"simple-table-manual\">\n {propsToUse.label && (\n <h3 className={classes.label}>\n {propsToUse.label} {results()}\n </h3>\n )}\n <Table>\n <TableHead className={classes.header}>\n <TableRow>\n {fieldDefs.map((field: any, index) => {\n return (\n <TableCell key={`head-${displayedColumns[index]}`} className={classes.tableCell}>\n {readOnlyMode ? (\n <div>\n <TableSortLabel\n active={orderBy === displayedColumns[index]}\n direction={orderBy === displayedColumns[index] ? order : 'asc'}\n onClick={createSortHandler(displayedColumns[index])}\n >\n {field.label}\n {_showFilteredIcon(field.name) && (\n <FilterListIcon className={classes.moreIcon} />\n )}\n {orderBy === displayedColumns[index] ? (\n <span className={classes.visuallyHidden}>\n {order === 'desc' ? 'sorted descending' : 'sorted ascending'}\n </span>\n ) : null}\n </TableSortLabel>\n <MoreIcon\n id='menu-icon'\n className={classes.moreIcon}\n onClick={event => {\n _menuClick(event, field.name, field.meta.type, field.label);\n }}\n />\n </div>\n ) : (\n field.label\n )}\n </TableCell>\n );\n })}\n </TableRow>\n </TableHead>\n <TableBody>\n {editableMode &&\n elements.map((row: any, index) => {\n const theKey = `row-${index}`;\n return (\n <TableRow key={theKey}>\n {row.map((item, childIndex) => {\n const theColKey = `data-${index}-${childIndex}`;\n return (\n <TableCell key={theColKey} className={classes.tableCell}>\n {item}\n </TableCell>\n );\n })}\n {showDeleteButton && (\n <TableCell>\n <button\n type='button'\n className='psdk-utility-button'\n id='delete-button'\n onClick={() => deleteRecord(index)}\n >\n <img\n className='psdk-utility-card-action-svg-icon'\n src={menuIconOverride$}\n ></img>\n </button>\n </TableCell>\n )}\n </TableRow>\n );\n })}\n {readOnlyMode &&\n rowData &&\n rowData.length > 0 &&\n stableSort(rowData, getComparator(order, orderBy))\n .slice(0)\n .map(row => {\n return (\n <TableRow key={row[displayedColumns[0]]}>\n {displayedColumns.map(colKey => {\n return (\n <TableCell key={colKey} className={classes.tableCell}>\n {typeof row[colKey] === 'boolean' && !row[colKey]\n ? 'False'\n : typeof row[colKey] === 'boolean' && row[colKey]\n ? 'True'\n : row[colKey]}\n </TableCell>\n );\n })}\n </TableRow>\n );\n })}\n </TableBody>\n </Table>\n {readOnlyMode && rowData && rowData.length === 0 && (\n <div className='no-records' id='no-records'>\n No records found.\n </div>\n )}\n {editableMode && referenceList && referenceList.length === 0 && (\n <div className='no-records' id='no-records'>\n No records found.\n </div>\n )}\n </TableContainer>\n {showAddRowButton && (\n <div style={{ fontSize: '1rem' }}>\n <Link style={{ cursor: 'pointer' }} onClick={addRecord}>\n + Add\n </Link>\n </div>\n )}\n <Menu\n id='simple-menu'\n anchorEl={anchorEl}\n keepMounted\n open={Boolean(anchorEl)}\n onClose={_menuClose}\n >\n <MenuItem onClick={_filterMenu}>\n <FilterListIcon /> Filter\n </MenuItem>\n <MenuItem onClick={_groupMenu}>\n <SubjectIcon /> Group\n </MenuItem>\n </Menu>\n <Dialog open={open} onClose={_closeDialog} aria-labelledby='form-dialog-title'>\n <DialogTitle id='form-dialog-title'>Filter: {filterBy}</DialogTitle>\n <DialogContent>\n {containsDateOrTime ? (\n <>\n <Select value={displayDialogDateFilter} onChange={_dialogDateFilter} fullWidth>\n <MenuItem value='notequal'>is not equal to</MenuItem>\n <MenuItem value='equal'>is equal to</MenuItem>\n <MenuItem value='after'>after</MenuItem>\n <MenuItem value='before'>before</MenuItem>\n <MenuItem value='null'>is null</MenuItem>\n <MenuItem value='notnull'>is not null</MenuItem>\n </Select>\n {filterType === 'Date' && (\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='date'\n fullWidth\n value={displayDialogDateValue}\n onChange={_dialogDateValue}\n />\n )}\n {filterType === 'DateTime' && (\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='datetime-local'\n fullWidth\n value={displayDialogDateValue}\n onChange={_dialogDateValue}\n />\n )}\n {filterType === 'Time' && (\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='time'\n fullWidth\n value={displayDialogDateValue}\n onChange={_dialogDateValue}\n />\n )}\n </>\n ) : (\n <>\n <Select\n id='filter'\n fullWidth\n onChange={_dialogContainsFilter}\n value={displayDialogContainsFilter}\n >\n <MenuItem value='contains'>Contains</MenuItem>\n <MenuItem value='equals'>Equals</MenuItem>\n <MenuItem value='startswith'>Starts with</MenuItem>\n </Select>\n <TextField\n autoFocus\n margin='dense'\n id='containsFilter'\n type='text'\n fullWidth\n value={displayDialogContainsValue}\n onChange={_dialogContainsValue}\n />\n </>\n )}\n </DialogContent>\n <DialogActions>\n <Button onClick={_closeDialog} color='secondary'>\n Cancel\n </Button>\n <Button onClick={_submitFilter} color='primary'>\n Submit\n </Button>\n </DialogActions>\n </Dialog>\n </React.Fragment>\n );\n}\n"]}
@@ -1,7 +1,18 @@
1
1
  /// <reference types="react" />
2
+ import PropTypes from 'prop-types';
2
3
  declare function WideNarrowDetails(props: any): JSX.Element;
3
4
  declare namespace WideNarrowDetails {
4
- var propTypes: {};
5
+ var defaultProps: {
6
+ label: undefined;
7
+ showLabel: boolean;
8
+ showHighlightedData: boolean;
9
+ };
10
+ var propTypes: {
11
+ showLabel: PropTypes.Requireable<boolean>;
12
+ label: PropTypes.Requireable<string>;
13
+ getPConnect: PropTypes.Validator<(...args: any[]) => any>;
14
+ showHighlightedData: PropTypes.Requireable<boolean>;
15
+ };
5
16
  }
6
17
  export default WideNarrowDetails;
7
18
  //# sourceMappingURL=WideNarrowDetails.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WideNarrowDetails.d.ts","sourceRoot":"","sources":["../../../../../src/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx"],"names":[],"mappings":";AAKA,iBAAwB,iBAAiB,CAAC,KAAK,KAAA,eAyC9C;kBAzCuB,iBAAiB;;;eAAjB,iBAAiB"}
1
+ {"version":3,"file":"WideNarrowDetails.d.ts","sourceRoot":"","sources":["../../../../../src/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAQnC,iBAAwB,iBAAiB,CAAC,KAAK,KAAA,eAyD9C;kBAzDuB,iBAAiB;;;;;;;;;;;;;eAAjB,iBAAiB"}
@@ -1,35 +1,51 @@
1
- import React from "react";
2
- // import PropTypes from "prop-types";
3
- // import Grid from '@material-ui/core/Grid';
4
- import DetailsFields from '../../../designSystemExtension/DetailsFields';
1
+ import React, { createElement } from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import Grid from '@material-ui/core/Grid';
4
+ import createPConnectComponent from '../../../../bridge/react_pconnect';
5
+ import FieldGroup from '../../../designSystemExtension/FieldGroup';
6
+ const COLUMN_WIDTHS = [8, 4];
5
7
  export default function WideNarrowDetails(props) {
6
- const { a, b, children } = props;
7
- const arFields = [];
8
- for (const child of children) {
9
- const theChildPConn = child.props.getPConnect();
10
- const theChildrenOfChild = theChildPConn.getChildren();
11
- arFields.push(theChildrenOfChild);
8
+ const { label, showLabel, getPConnect, showHighlightedData } = props;
9
+ // Get the inherited props from the parent to determine label settings
10
+ const propsToUse = { label, showLabel, ...getPConnect().getInheritedProps() };
11
+ // Set display mode prop and re-create the children so this part of the dom tree renders
12
+ // in a readonly (display) mode instead of a editable
13
+ getPConnect().setInheritedProp('displayMode', 'LABELS_LEFT');
14
+ getPConnect().setInheritedProp('readOnly', true);
15
+ const children = getPConnect()
16
+ .getChildren()
17
+ .map((configObject, index) => createElement(createPConnectComponent(), {
18
+ ...configObject,
19
+ // eslint-disable-next-line react/no-array-index-key
20
+ key: index.toString()
21
+ }));
22
+ // Set up highlighted data to pass in return if is set to show, need raw metadata to pass to createComponent
23
+ let highlightedDataArr = [];
24
+ if (showHighlightedData) {
25
+ const { highlightedData = [] } = getPConnect().getRawMetadata().config;
26
+ highlightedDataArr = highlightedData.map(field => {
27
+ field.config.displayMode = 'STACKED_LARGE_VAL';
28
+ // Mark as status display when using pyStatusWork
29
+ if (field.config.value === '@P .pyStatusWork') {
30
+ field.type = 'TextInput';
31
+ field.config.displayAsStatus = true;
32
+ }
33
+ return getPConnect().createComponent(field);
34
+ });
12
35
  }
13
- if (arFields.length !== 2) {
14
- // eslint-disable-next-line no-console
15
- console.error(`WideNarrowDetails expects 2 children and received ${arFields.length}`);
16
- }
17
- return (React.createElement(React.Fragment, null,
18
- children && children.length === 2 &&
19
- React.createElement("div", { className: "psdk-wide-narrow-column" },
20
- React.createElement("div", { className: "psdk-wide-column-column" },
21
- React.createElement(DetailsFields, { fields: arFields[0] })),
22
- React.createElement("div", { className: "psdk-narrow-column-column" },
23
- React.createElement(DetailsFields, { fields: arFields[1] }))),
24
- a && b &&
25
- React.createElement("div", { className: "psdk-wide-narrow-column" },
26
- React.createElement("div", { className: "psdk-wide-column-column" }, a),
27
- React.createElement("div", { className: "psdk-narrow-column-column" }, b))));
36
+ return (React.createElement(FieldGroup, { name: propsToUse.showLabel ? propsToUse.label : '' },
37
+ showHighlightedData && highlightedDataArr.length > 0 && (React.createElement(Grid, { container: true, spacing: 1, style: { padding: '0 0 1em' } }, highlightedDataArr.map((child, i) => (React.createElement(Grid, { item: true, xs: COLUMN_WIDTHS[i], key: `hf-${i + 1}` }, child))))),
38
+ React.createElement(Grid, { container: true, spacing: 1 }, children.map((child, i) => (React.createElement(Grid, { item: true, xs: COLUMN_WIDTHS[i], key: `r-${i + 1}` }, child))))));
28
39
  }
40
+ WideNarrowDetails.defaultProps = {
41
+ label: undefined,
42
+ showLabel: true,
43
+ showHighlightedData: false
44
+ };
29
45
  WideNarrowDetails.propTypes = {
30
- // showLabel: PropTypes.bool,
31
- // label: PropTypes.string,
32
- // getPConnect: PropTypes.func.isRequired,
33
- // template: PropTypes.string.isRequired
46
+ showLabel: PropTypes.bool,
47
+ label: PropTypes.string,
48
+ getPConnect: PropTypes.func.isRequired,
49
+ showHighlightedData: PropTypes.bool
34
50
  };
35
51
  //# sourceMappingURL=WideNarrowDetails.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WideNarrowDetails.js","sourceRoot":"","sources":["../../../../../src/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,sCAAsC;AACtC,6CAA6C;AAC7C,OAAO,aAAa,MAAM,8CAA8C,CAAC;AAEzE,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAK;IAC7C,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,QAAQ,GAAe,EAAE,CAAC;IAEhC,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;QAC5B,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,kBAAkB,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;QACvD,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;KACnC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,qDAAqD,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;KACvF;IAGD,OAAO,CACL,oBAAC,KAAK,CAAC,QAAQ;QACd,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAChC,6BAAK,SAAS,EAAC,yBAAyB;gBACtC,6BAAK,SAAS,EAAC,yBAAyB;oBACtC,oBAAC,aAAa,IAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAI,CAClC;gBACN,6BAAK,SAAS,EAAC,2BAA2B;oBACxC,oBAAC,aAAa,IAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAI,CAClC,CACF;QAEP,CAAC,IAAI,CAAC;YACL,6BAAK,SAAS,EAAC,yBAAyB;gBACtC,6BAAK,SAAS,EAAC,yBAAyB,IACrC,CAAC,CACE;gBACN,6BAAK,SAAS,EAAC,2BAA2B,IACvC,CAAC,CACE,CACF,CAES,CAClB,CAAA;AAEH,CAAC;AAED,iBAAiB,CAAC,SAAS,GAAG;AAC5B,6BAA6B;AAC7B,2BAA2B;AAC3B,0CAA0C;AAC1C,wCAAwC;CACzC,CAAC","sourcesContent":["import React from \"react\";\n// import PropTypes from \"prop-types\";\n// import Grid from '@material-ui/core/Grid';\nimport DetailsFields from '../../../designSystemExtension/DetailsFields';\n\nexport default function WideNarrowDetails(props) {\n const { a, b, children } = props;\n const arFields: Array<any> = [];\n\n for (const child of children) {\n const theChildPConn = child.props.getPConnect();\n const theChildrenOfChild = theChildPConn.getChildren();\n arFields.push(theChildrenOfChild);\n }\n\n if (arFields.length !== 2) {\n // eslint-disable-next-line no-console\n console.error(`WideNarrowDetails expects 2 children and received ${arFields.length}`);\n }\n\n\n return (\n <React.Fragment>\n {children && children.length === 2 &&\n <div className=\"psdk-wide-narrow-column\">\n <div className=\"psdk-wide-column-column\">\n <DetailsFields fields={arFields[0]} />\n </div>\n <div className=\"psdk-narrow-column-column\">\n <DetailsFields fields={arFields[1]} />\n </div>\n </div>\n }\n {a && b &&\n <div className=\"psdk-wide-narrow-column\">\n <div className=\"psdk-wide-column-column\">\n {a}\n </div>\n <div className=\"psdk-narrow-column-column\">\n {b}\n </div>\n </div>\n }\n </React.Fragment>\n )\n\n}\n\nWideNarrowDetails.propTypes = {\n // showLabel: PropTypes.bool,\n // label: PropTypes.string,\n // getPConnect: PropTypes.func.isRequired,\n // template: PropTypes.string.isRequired\n};\n"]}
1
+ {"version":3,"file":"WideNarrowDetails.js","sourceRoot":"","sources":["../../../../../src/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { createElement } from 'react';\nimport PropTypes from 'prop-types';\nimport Grid from '@material-ui/core/Grid';\nimport { GridSize } from '@material-ui/core/Grid';\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\nimport FieldGroup from '../../../designSystemExtension/FieldGroup';\n\nconst COLUMN_WIDTHS = [8, 4];\n\nexport default function WideNarrowDetails(props) {\n const { label, showLabel, getPConnect, showHighlightedData } = props;\n\n // Get the inherited props from the parent to determine label settings\n const propsToUse = { label, showLabel, ...getPConnect().getInheritedProps() };\n\n // Set display mode prop and re-create the children so this part of the dom tree renders\n // in a readonly (display) mode instead of a editable\n getPConnect().setInheritedProp('displayMode', 'LABELS_LEFT');\n getPConnect().setInheritedProp('readOnly', true);\n const children = getPConnect()\n .getChildren()\n .map((configObject, index) =>\n createElement(createPConnectComponent(), {\n ...configObject,\n // eslint-disable-next-line react/no-array-index-key\n key: index.toString()\n })\n );\n\n // Set up highlighted data to pass in return if is set to show, need raw metadata to pass to createComponent\n let highlightedDataArr = [];\n if (showHighlightedData) {\n const { highlightedData = [] } = getPConnect().getRawMetadata().config;\n highlightedDataArr = highlightedData.map(field => {\n field.config.displayMode = 'STACKED_LARGE_VAL';\n\n // Mark as status display when using pyStatusWork\n if (field.config.value === '@P .pyStatusWork') {\n field.type = 'TextInput';\n field.config.displayAsStatus = true;\n }\n\n return getPConnect().createComponent(field);\n });\n }\n\n return (\n <FieldGroup name={propsToUse.showLabel ? propsToUse.label : ''}>\n {showHighlightedData && highlightedDataArr.length > 0 && (\n <Grid container spacing={1} style={{ padding: '0 0 1em' }}>\n {highlightedDataArr.map((child, i) => (\n <Grid item xs={COLUMN_WIDTHS[i] as GridSize} key={`hf-${i + 1}`}>\n {child}\n </Grid>\n ))}\n </Grid>\n )}\n <Grid container spacing={1}>\n {children.map((child, i) => (\n <Grid item xs={COLUMN_WIDTHS[i] as GridSize} key={`r-${i + 1}`}>\n {child}\n </Grid>\n ))}\n </Grid>\n </FieldGroup>\n );\n}\n\nWideNarrowDetails.defaultProps = {\n label: undefined,\n showLabel: true,\n showHighlightedData: false\n};\n\nWideNarrowDetails.propTypes = {\n showLabel: PropTypes.bool,\n label: PropTypes.string,\n getPConnect: PropTypes.func.isRequired,\n showHighlightedData: PropTypes.bool\n};\n"]}
@@ -16,3 +16,10 @@
16
16
  position: absolute;
17
17
  left: 47%;
18
18
  }
19
+
20
+ file-label::after {
21
+ display: inline;
22
+ content: " *";
23
+ vertical-align: top;
24
+ color: rgb(217, 28, 41);
25
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"Attachment.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Attachment/Attachment.tsx"],"names":[],"mappings":";AAKA,OAAO,kBAAkB,CAAC;AAW1B,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,KAAA,eAsavC"}
1
+ {"version":3,"file":"Attachment.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/Attachment/Attachment.tsx"],"names":[],"mappings":";AAKA,OAAO,kBAAkB,CAAC;AAW1B,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,KAAA,eAwcvC"}