@blaze-cms/plugin-data-ui 0.146.0-core-styles.0 → 0.146.0-core-styles.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.146.0-core-styles.3](https://github.com/thebyte9/blaze/compare/v0.146.0-core-styles.2...v0.146.0-core-styles.3) (2024-09-18)
7
+
8
+
9
+ ### Features
10
+
11
+ * allow custom components in table columns ([#4482](https://github.com/thebyte9/blaze/issues/4482)) ([87098c9](https://github.com/thebyte9/blaze/commit/87098c93d9fd85adc2a2aa19f2e9a3db4402ae41))
12
+
13
+
14
+
15
+
16
+
6
17
  # [0.146.0-core-styles.0](https://github.com/thebyte9/blaze/compare/v0.145.1-core-styles.1...v0.146.0-core-styles.0) (2024-09-03)
7
18
 
8
19
  **Note:** Version bump only for package @blaze-cms/plugin-data-ui
@@ -1 +1 @@
1
- {"version":3,"file":"EntityNavLinks.js","names":["_reactRouterDom","require","_react","_interopRequireDefault","EntityNavLinks","_ref","schema","adminSectionNavigation","displayProperties","links","Object","entries","map","_ref2","_ref3","_slicedToArray2","k","v","label","uri","Wrapper","startsWith","Link","createElement","className","href","to","_default","exports"],"sources":["../../../../../src/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js"],"sourcesContent":["import { Link } from 'react-router-dom';\nimport React from 'react';\n\nconst EntityNavLinks = ({ schema }) => {\n if (!schema) return null;\n\n const {\n displayProperties: { adminSectionNavigation }\n } = schema;\n\n if (!adminSectionNavigation) return null;\n\n const links = Object.entries(adminSectionNavigation).map(([k, v]) => {\n const { label, uri } = v;\n const Wrapper = uri.startsWith('#') ? 'a' : Link;\n return (\n <Wrapper className=\"entity-section-link\" href={uri} to={uri}>\n {label}\n </Wrapper>\n );\n });\n\n return <div className=\"entity-section-links\">{links}</div>;\n};\n\nexport default EntityNavLinks;\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAAmB;EAAA,IAAbC,MAAM,GAAAD,IAAA,CAANC,MAAM;EAC9B,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EAExB,IACuBC,sBAAsB,GACzCD,MAAM,CADRE,iBAAiB,CAAID,sBAAsB;EAG7C,IAAI,CAACA,sBAAsB,EAAE,OAAO,IAAI;EAExC,IAAME,KAAK,GAAGC,MAAM,CAACC,OAAO,CAACJ,sBAAsB,CAAC,CAACK,GAAG,CAAC,UAAAC,KAAA,EAAY;IAAA,IAAAC,KAAA,OAAAC,eAAA,aAAAF,KAAA;MAAVG,CAAC,GAAAF,KAAA;MAAEG,CAAC,GAAAH,KAAA;IAC7D,IAAQI,KAAK,GAAUD,CAAC,CAAhBC,KAAK;MAAEC,GAAG,GAAKF,CAAC,CAATE,GAAG;IAClB,IAAMC,OAAO,GAAGD,GAAG,CAACE,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,GAAGC,oBAAI;IAChD,oBACEpB,MAAA,YAAAqB,aAAA,CAACH,OAAO;MAACI,SAAS,EAAC,qBAAqB;MAACC,IAAI,EAAEN,GAAI;MAACO,EAAE,EAAEP;IAAI,GACzDD,KACM,CAAC;EAEd,CAAC,CAAC;EAEF,oBAAOhB,MAAA,YAAAqB,aAAA;IAAKC,SAAS,EAAC;EAAsB,GAAEf,KAAW,CAAC;AAC5D,CAAC;AAAC,IAAAkB,QAAA,GAAAC,OAAA,cAEaxB,cAAc"}
1
+ {"version":3,"file":"EntityNavLinks.js","names":["_reactRouterDom","require","_react","_interopRequireDefault","EntityNavLinks","_ref","schema","adminSectionNavigation","displayProperties","links","Object","entries","map","_ref2","_ref3","_slicedToArray2","k","v","label","uri","Wrapper","startsWith","Link","createElement","className","href","to","_default","exports"],"sources":["../../../../../src/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js"],"sourcesContent":["import { Link } from 'react-router-dom';\nimport React from 'react';\n\nconst EntityNavLinks = ({ schema }) => {\n if (!schema) return null;\n\n const {\n displayProperties: { adminSectionNavigation }\n } = schema;\n\n if (!adminSectionNavigation) return null;\n\n const links = Object.entries(adminSectionNavigation).map(([k, v]) => {\n const { label, uri } = v;\n const Wrapper = uri.startsWith('#') ? 'a' : Link;\n\n return (\n <Wrapper className=\"entity-section-link\" href={uri} to={uri}>\n {label}\n </Wrapper>\n );\n });\n\n return <div className=\"entity-section-links\">{links}</div>;\n};\n\nexport default EntityNavLinks;\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAAmB;EAAA,IAAbC,MAAM,GAAAD,IAAA,CAANC,MAAM;EAC9B,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EAExB,IACuBC,sBAAsB,GACzCD,MAAM,CADRE,iBAAiB,CAAID,sBAAsB;EAG7C,IAAI,CAACA,sBAAsB,EAAE,OAAO,IAAI;EAExC,IAAME,KAAK,GAAGC,MAAM,CAACC,OAAO,CAACJ,sBAAsB,CAAC,CAACK,GAAG,CAAC,UAAAC,KAAA,EAAY;IAAA,IAAAC,KAAA,OAAAC,eAAA,aAAAF,KAAA;MAAVG,CAAC,GAAAF,KAAA;MAAEG,CAAC,GAAAH,KAAA;IAC7D,IAAQI,KAAK,GAAUD,CAAC,CAAhBC,KAAK;MAAEC,GAAG,GAAKF,CAAC,CAATE,GAAG;IAClB,IAAMC,OAAO,GAAGD,GAAG,CAACE,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,GAAGC,oBAAI;IAEhD,oBACEpB,MAAA,YAAAqB,aAAA,CAACH,OAAO;MAACI,SAAS,EAAC,qBAAqB;MAACC,IAAI,EAAEN,GAAI;MAACO,EAAE,EAAEP;IAAI,GACzDD,KACM,CAAC;EAEd,CAAC,CAAC;EAEF,oBAAOhB,MAAA,YAAAqB,aAAA;IAAKC,SAAS,EAAC;EAAsB,GAAEf,KAAW,CAAC;AAC5D,CAAC;AAAC,IAAAkB,QAAA,GAAAC,OAAA,cAEaxB,cAAc"}
@@ -280,7 +280,8 @@ var ListingTable = function ListingTable(_ref) {
280
280
  url: match.url,
281
281
  toggleModal: toggleModal,
282
282
  firstColumn: firstColumn,
283
- isEnquiry: isEnquiry
283
+ isEnquiry: isEnquiry,
284
+ entitySchema: entitySchema
284
285
  })
285
286
  }));
286
287
  history.push('?page=1');
@@ -1 +1 @@
1
- {"version":3,"file":"ListingTable.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_more","_client","_reactRouterDom","_admin","_toaster","_pluginRenderHooksUi","_ListingTableContent","_actionsHandlers","_service","_populateRows","_getDefaultQueryParams","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingTable","_ref","match","entitySchema","history","_useState","useState","_useState2","_slicedToArray2","tableData","setTableData","_useState3","_useState4","modalStatus","setModalStatus","_useState5","_useState6","itemToDelete","setItemToDelete","_useState7","id","_useState8","previousSchema","setPreviousSchema","_useState9","_useState10","totalItems","setTotalItems","queryParamsDefault","getDefaultQueryParams","_useState11","_useState12","queryParams","setQueryParams","_useState13","_useState14","listFilters","setListFilters","client","useApolloClient","_useToasts","useToasts","addToast","location","useLocation","searchParams","URLSearchParams","search","currentPage","Number","useEffect","_asyncToGenerator2","_regenerator","mark","_callee","updatedQueryParams","wrap","_callee$","_context","prev","next","offset","limit","doQuery","stop","url","_ref3","_callee2","filters","params","_yield$fetchData","listingData","totalRecords","populatedTable","_args2","_callee2$","_context2","undefined","fetchData","querySettings","sent","populateRows","toggleModal","rows","handleOnPageChange","_ref5","_callee3","_ref4","pageNumber","_offset","_callee3$","_context3","concat","document","getElementsByClassName","scrollTo","_x","updateListingFilters","_ref6","_callee4","_callee4$","_context4","_x2","onCloseCardPrompt","item","deleteAction","_ref7","_callee5","updatedTableData","_callee5$","_context5","availableActions","submit","parsedFormValues","_ref8","handleSort","_ref9","_callee6","event","_Object$entries","_Object$entries2","_Object$entries2$","property","direction","sortQueryParams","_yield$fetchData2","columns","isEnquiry","_columns","firstColumn","_callee6$","_context6","entries","sort","appliedSort","formatRows","getParsedRowData","_x3","_entitySchema$display","displayProperties","_entitySchema$display2","_entitySchema$display3","adminCrudActions","_entitySchema$display4","_entitySchema$display5","create","createAction","active","_entitySchema$display6","_deleteAction","showAddButton","createElement","className","DeleteAction","onClose","itemName","name","PageHeader","title","displayName","subtitle","Fragment","Link","to","Actions","Avatar","isMoreMenu","Content","CardPrompt","RenderHook","hookKey","schema","onSort","propTypes","PropTypes","object","isRequired","_default","exports","withRouter"],"sources":["../../../src/components/ListingTable/ListingTable.js"],"sourcesContent":["import React, { useEffect, useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport More from '@blaze-react/more';\nimport { useApolloClient } from '@apollo/client';\nimport { withRouter, Link, useLocation } from 'react-router-dom';\nimport { PageHeader, DeleteAction, CardPrompt } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport ListingTableContent from './ListingTableContent';\nimport availableActions from '../EntityManager/Entity/actions-handlers';\nimport { fetchData } from './service';\nimport { populateRows, formatRows, getParsedRowData } from './mappers/populate-rows';\nimport { getDefaultQueryParams } from '../../utils/get-default-query-params';\n\nconst ListingTable = ({ match, entitySchema, history }) => {\n const [tableData, setTableData] = useState({});\n const [modalStatus, setModalStatus] = useState(false);\n const [itemToDelete, setItemToDelete] = useState({});\n const [previousSchema, setPreviousSchema] = useState({ id: null });\n const [totalItems, setTotalItems] = useState(0);\n const queryParamsDefault = getDefaultQueryParams(entitySchema);\n const [queryParams, setQueryParams] = useState(queryParamsDefault);\n const [listFilters, setListFilters] = useState([]);\n const client = useApolloClient();\n const { addToast } = useToasts();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const currentPage = Number(searchParams.get('page')) || 1;\n\n useEffect(\n () => {\n (async () => {\n if (\n entitySchema.id !== previousSchema.id ||\n (previousSchema.id === null && entitySchema.id)\n ) {\n const updatedQueryParams = {\n ...queryParams,\n offset: currentPage * queryParamsDefault.limit - queryParamsDefault.limit\n };\n await doQuery(listFilters, updatedQueryParams);\n setPreviousSchema({ id: entitySchema.id });\n }\n })();\n },\n [client, entitySchema, match.url, previousSchema.id, queryParams] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const doQuery = async (filters = listFilters, params = queryParamsDefault) => {\n const { listingData, totalRecords } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: params\n },\n listFilters: filters\n });\n\n const populatedTable = populateRows({\n toggleModal,\n url: match.url,\n entitySchema,\n rows: listingData\n });\n\n setTableData(populatedTable);\n setTotalItems(totalRecords);\n };\n\n const handleOnPageChange = async ({ pageNumber, offset: _offset }) => {\n const updatedQueryParams = {\n ...queryParams,\n offset: _offset\n };\n\n await doQuery(listFilters, updatedQueryParams);\n\n history.push(`?page=${pageNumber}`);\n document.getElementsByClassName('page')[0].scrollTo(0, 0);\n };\n\n const updateListingFilters = async filters => {\n await doQuery(filters);\n setListFilters(filters);\n };\n\n const onCloseCardPrompt = () => null;\n\n const toggleModal = item => {\n setModalStatus(!!item);\n setItemToDelete(item || {});\n };\n\n const deleteAction = async () => {\n await availableActions.delete.submit(\n {\n entitySchema,\n parsedFormValues: { id: itemToDelete.id },\n client\n },\n addToast\n );\n\n toggleModal();\n\n const updatedTableData = {\n ...tableData,\n rows: tableData.rows.filter(({ id }) => id !== itemToDelete.id)\n };\n\n setTableData(updatedTableData);\n };\n\n const handleSort = async event => {\n const [[property, direction]] = Object.entries(event);\n const sortQueryParams = {\n ...queryParamsDefault,\n sort: [{ property, direction }]\n };\n setQueryParams(sortQueryParams);\n\n const { listingData } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: sortQueryParams\n },\n listFilters\n });\n const { columns, isEnquiry } = tableData;\n const [firstColumn] = columns;\n\n setTableData({\n ...tableData,\n appliedSort: { [property]: direction },\n rows: formatRows({\n rows: getParsedRowData(listingData),\n url: match.url,\n toggleModal,\n firstColumn,\n isEnquiry\n })\n });\n history.push('?page=1');\n };\n\n if (!tableData || !tableData.rows) return 'loading';\n\n const {\n displayProperties: {\n adminCrudActions: {\n create: createAction = { active: true },\n delete: _deleteAction = { active: true }\n } = {}\n } = {}\n } = entitySchema;\n\n const showAddButton = !tableData.rows.length && listFilters.length === 0;\n\n return (\n <div className=\"page\">\n {modalStatus &&\n _deleteAction.active && (\n <DeleteAction\n data-testid=\"deleteEntity\"\n onClose={toggleModal}\n deleteAction={deleteAction}\n itemName={itemToDelete.name}\n />\n )}\n <PageHeader title={entitySchema.displayName} subtitle=\"\">\n {createAction.active &&\n !showAddButton && (\n <Fragment>\n <Link\n data-testid=\"addEntity\"\n className=\"button button--small\"\n to={`${match.url}/create`}>\n Add\n </Link>\n <PageHeader.Actions>\n <More>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu />\n </More>\n </PageHeader.Actions>\n </Fragment>\n )}\n </PageHeader>\n {showAddButton ? (\n <CardPrompt>\n <Link\n className=\"button button--rounded button--cta\"\n to={`${match.url}/create`}\n data-testid=\"add-button\">\n Add\n </Link>\n </CardPrompt>\n ) : (\n <>\n <RenderHook\n hookKey=\"entity:listing:main:top\"\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <ListingTableContent\n totalItems={totalItems}\n currentPage={currentPage}\n onSort={handleSort}\n handleOnPageChange={handleOnPageChange}\n tableData={tableData}\n onCloseCardPrompt={onCloseCardPrompt}\n />\n </>\n )}\n </div>\n );\n};\nListingTable.propTypes = {\n entitySchema: PropTypes.object.isRequired,\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(ListingTable);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AACA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,oBAAA,GAAAR,OAAA;AACA,IAAAS,oBAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,gBAAA,GAAAR,sBAAA,CAAAF,OAAA;AACA,IAAAW,QAAA,GAAAX,OAAA;AACA,IAAAY,aAAA,GAAAZ,OAAA;AACA,IAAAa,sBAAA,GAAAb,OAAA;AAA6E,SAAAc,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAhB,wBAAAgB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAY,QAAApB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAU,IAAA,CAAArB,CAAA,OAAAW,MAAA,CAAAW,qBAAA,QAAAC,CAAA,GAAAZ,MAAA,CAAAW,qBAAA,CAAAtB,CAAA,GAAAE,CAAA,KAAAqB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAtB,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAuB,UAAA,OAAAtB,CAAA,CAAAuB,IAAA,CAAAC,KAAA,CAAAxB,CAAA,EAAAoB,CAAA,YAAApB,CAAA;AAAA,SAAAyB,cAAA5B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA2B,SAAA,CAAAC,MAAA,EAAA5B,CAAA,UAAAC,CAAA,WAAA0B,SAAA,CAAA3B,CAAA,IAAA2B,SAAA,CAAA3B,CAAA,QAAAA,CAAA,OAAAkB,OAAA,CAAAT,MAAA,CAAAR,CAAA,OAAA4B,OAAA,WAAA7B,CAAA,QAAA8B,gBAAA,aAAAhC,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAsB,yBAAA,GAAAtB,MAAA,CAAAuB,gBAAA,CAAAlC,CAAA,EAAAW,MAAA,CAAAsB,yBAAA,CAAA9B,CAAA,KAAAiB,OAAA,CAAAT,MAAA,CAAAR,CAAA,GAAA4B,OAAA,WAAA7B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAE7E,IAAMmC,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAyC;EAAA,IAAnCC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;IAAEC,OAAO,GAAAH,IAAA,CAAPG,OAAO;EAClD,IAAAC,SAAA,GAAkC,IAAAC,eAAQ,EAAC,CAAC,CAAC,CAAC;IAAAC,UAAA,OAAAC,eAAA,aAAAH,SAAA;IAAvCI,SAAS,GAAAF,UAAA;IAAEG,YAAY,GAAAH,UAAA;EAC9B,IAAAI,UAAA,GAAsC,IAAAL,eAAQ,EAAC,KAAK,CAAC;IAAAM,UAAA,OAAAJ,eAAA,aAAAG,UAAA;IAA9CE,WAAW,GAAAD,UAAA;IAAEE,cAAc,GAAAF,UAAA;EAClC,IAAAG,UAAA,GAAwC,IAAAT,eAAQ,EAAC,CAAC,CAAC,CAAC;IAAAU,UAAA,OAAAR,eAAA,aAAAO,UAAA;IAA7CE,YAAY,GAAAD,UAAA;IAAEE,eAAe,GAAAF,UAAA;EACpC,IAAAG,UAAA,GAA4C,IAAAb,eAAQ,EAAC;MAAEc,EAAE,EAAE;IAAK,CAAC,CAAC;IAAAC,UAAA,OAAAb,eAAA,aAAAW,UAAA;IAA3DG,cAAc,GAAAD,UAAA;IAAEE,iBAAiB,GAAAF,UAAA;EACxC,IAAAG,UAAA,GAAoC,IAAAlB,eAAQ,EAAC,CAAC,CAAC;IAAAmB,WAAA,OAAAjB,eAAA,aAAAgB,UAAA;IAAxCE,UAAU,GAAAD,WAAA;IAAEE,aAAa,GAAAF,WAAA;EAChC,IAAMG,kBAAkB,GAAG,IAAAC,4CAAqB,EAAC1B,YAAY,CAAC;EAC9D,IAAA2B,WAAA,GAAsC,IAAAxB,eAAQ,EAACsB,kBAAkB,CAAC;IAAAG,WAAA,OAAAvB,eAAA,aAAAsB,WAAA;IAA3DE,WAAW,GAAAD,WAAA;IAAEE,cAAc,GAAAF,WAAA;EAClC,IAAAG,WAAA,GAAsC,IAAA5B,eAAQ,EAAC,EAAE,CAAC;IAAA6B,WAAA,OAAA3B,eAAA,aAAA0B,WAAA;IAA3CE,WAAW,GAAAD,WAAA;IAAEE,cAAc,GAAAF,WAAA;EAClC,IAAMG,MAAM,GAAG,IAAAC,uBAAe,EAAC,CAAC;EAChC,IAAAC,UAAA,GAAqB,IAAAC,kBAAS,EAAC,CAAC;IAAxBC,QAAQ,GAAAF,UAAA,CAARE,QAAQ;EAChB,IAAMC,QAAQ,GAAG,IAAAC,2BAAW,EAAC,CAAC;EAC9B,IAAMC,YAAY,GAAG,IAAIC,eAAe,CAACH,QAAQ,CAACI,MAAM,CAAC;EACzD,IAAMC,WAAW,GAAGC,MAAM,CAACJ,YAAY,CAACzE,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;EAEzD,IAAA8E,gBAAS,EACP,YAAM;IACJ,IAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAC,SAAAC,QAAA;MAAA,IAAAC,kBAAA;MAAA,OAAAH,YAAA,YAAAI,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAA,MAEGzD,YAAY,CAACiB,EAAE,KAAKE,cAAc,CAACF,EAAE,IACpCE,cAAc,CAACF,EAAE,KAAK,IAAI,IAAIjB,YAAY,CAACiB,EAAG;cAAAsC,QAAA,CAAAE,IAAA;cAAA;YAAA;YAEzCL,kBAAkB,GAAA9D,aAAA,CAAAA,aAAA,KACnBuC,WAAW;cACd6B,MAAM,EAAEb,WAAW,GAAGpB,kBAAkB,CAACkC,KAAK,GAAGlC,kBAAkB,CAACkC;YAAK;YAAAJ,QAAA,CAAAE,IAAA;YAAA,OAErEG,OAAO,CAAC3B,WAAW,EAAEmB,kBAAkB,CAAC;UAAA;YAC9ChC,iBAAiB,CAAC;cAAEH,EAAE,EAAEjB,YAAY,CAACiB;YAAG,CAAC,CAAC;UAAC;UAAA;YAAA,OAAAsC,QAAA,CAAAM,IAAA;QAAA;MAAA,GAAAV,OAAA;IAAA,CAE9C,GAAE,CAAC;EACN,CAAC,EACD,CAAChB,MAAM,EAAEnC,YAAY,EAAED,KAAK,CAAC+D,GAAG,EAAE3C,cAAc,CAACF,EAAE,EAAEY,WAAW,CAAC,CAAC;EACpE,CAAC;EAED,IAAM+B,OAAO;IAAA,IAAAG,KAAA,OAAAf,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAc,SAAA;MAAA,IAAAC,OAAA;QAAAC,MAAA;QAAAC,gBAAA;QAAAC,WAAA;QAAAC,YAAA;QAAAC,cAAA;QAAAC,MAAA,GAAAhF,SAAA;MAAA,OAAA0D,YAAA,YAAAI,IAAA,UAAAmB,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAjB,IAAA,GAAAiB,SAAA,CAAAhB,IAAA;UAAA;YAAOQ,OAAO,GAAAM,MAAA,CAAA/E,MAAA,QAAA+E,MAAA,QAAAG,SAAA,GAAAH,MAAA,MAAGtC,WAAW;YAAEiC,MAAM,GAAAK,MAAA,CAAA/E,MAAA,QAAA+E,MAAA,QAAAG,SAAA,GAAAH,MAAA,MAAG9C,kBAAkB;YAAAgD,SAAA,CAAAhB,IAAA;YAAA,OAC3B,IAAAkB,kBAAS,EAAC;cACpDxC,MAAM,EAANA,MAAM;cACNyC,aAAa,EAAE;gBACb5E,YAAY,EAAZA,YAAY;gBACZ6B,WAAW,EAAEqC;cACf,CAAC;cACDjC,WAAW,EAAEgC;YACf,CAAC,CAAC;UAAA;YAAAE,gBAAA,GAAAM,SAAA,CAAAI,IAAA;YAPMT,WAAW,GAAAD,gBAAA,CAAXC,WAAW;YAAEC,YAAY,GAAAF,gBAAA,CAAZE,YAAY;YAS3BC,cAAc,GAAG,IAAAQ,0BAAY,EAAC;cAClCC,WAAW,EAAXA,WAAW;cACXjB,GAAG,EAAE/D,KAAK,CAAC+D,GAAG;cACd9D,YAAY,EAAZA,YAAY;cACZgF,IAAI,EAAEZ;YACR,CAAC,CAAC;YAEF7D,YAAY,CAAC+D,cAAc,CAAC;YAC5B9C,aAAa,CAAC6C,YAAY,CAAC;UAAC;UAAA;YAAA,OAAAI,SAAA,CAAAZ,IAAA;QAAA;MAAA,GAAAG,QAAA;IAAA,CAC7B;IAAA,gBAnBKJ,OAAOA,CAAA;MAAA,OAAAG,KAAA,CAAA1E,KAAA,OAAAE,SAAA;IAAA;EAAA,GAmBZ;EAED,IAAM0F,kBAAkB;IAAA,IAAAC,KAAA,OAAAlC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAiC,SAAAC,KAAA;MAAA,IAAAC,UAAA,EAAAC,OAAA,EAAAlC,kBAAA;MAAA,OAAAH,YAAA,YAAAI,IAAA,UAAAkC,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAhC,IAAA,GAAAgC,SAAA,CAAA/B,IAAA;UAAA;YAAS4B,UAAU,GAAAD,KAAA,CAAVC,UAAU,EAAUC,OAAO,GAAAF,KAAA,CAAf1B,MAAM;YAC9CN,kBAAkB,GAAA9D,aAAA,CAAAA,aAAA,KACnBuC,WAAW;cACd6B,MAAM,EAAE4B;YAAO;YAAAE,SAAA,CAAA/B,IAAA;YAAA,OAGXG,OAAO,CAAC3B,WAAW,EAAEmB,kBAAkB,CAAC;UAAA;YAE9CnD,OAAO,CAACb,IAAI,UAAAqG,MAAA,CAAUJ,UAAU,CAAE,CAAC;YACnCK,QAAQ,CAACC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;UAAC;UAAA;YAAA,OAAAJ,SAAA,CAAA3B,IAAA;QAAA;MAAA,GAAAsB,QAAA;IAAA,CAC3D;IAAA,gBAVKF,kBAAkBA,CAAAY,EAAA;MAAA,OAAAX,KAAA,CAAA7F,KAAA,OAAAE,SAAA;IAAA;EAAA,GAUvB;EAED,IAAMuG,oBAAoB;IAAA,IAAAC,KAAA,OAAA/C,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAA8C,SAAM/B,OAAO;MAAA,OAAAhB,YAAA,YAAAI,IAAA,UAAA4C,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA1C,IAAA,GAAA0C,SAAA,CAAAzC,IAAA;UAAA;YAAAyC,SAAA,CAAAzC,IAAA;YAAA,OAClCG,OAAO,CAACK,OAAO,CAAC;UAAA;YACtB/B,cAAc,CAAC+B,OAAO,CAAC;UAAC;UAAA;YAAA,OAAAiC,SAAA,CAAArC,IAAA;QAAA;MAAA,GAAAmC,QAAA;IAAA,CACzB;IAAA,gBAHKF,oBAAoBA,CAAAK,GAAA;MAAA,OAAAJ,KAAA,CAAA1G,KAAA,OAAAE,SAAA;IAAA;EAAA,GAGzB;EAED,IAAM6G,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAA;IAAA,OAAS,IAAI;EAAA;EAEpC,IAAMrB,WAAW,GAAG,SAAdA,WAAWA,CAAGsB,IAAI,EAAI;IAC1B1F,cAAc,CAAC,CAAC,CAAC0F,IAAI,CAAC;IACtBtF,eAAe,CAACsF,IAAI,IAAI,CAAC,CAAC,CAAC;EAC7B,CAAC;EAED,IAAMC,YAAY;IAAA,IAAAC,KAAA,OAAAvD,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAsD,SAAA;MAAA,IAAAC,gBAAA;MAAA,OAAAxD,YAAA,YAAAI,IAAA,UAAAqD,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAnD,IAAA,GAAAmD,SAAA,CAAAlD,IAAA;UAAA;YAAAkD,SAAA,CAAAlD,IAAA;YAAA,OACbmD,2BAAgB,UAAO,CAACC,MAAM,CAClC;cACE7G,YAAY,EAAZA,YAAY;cACZ8G,gBAAgB,EAAE;gBAAE7F,EAAE,EAAEH,YAAY,CAACG;cAAG,CAAC;cACzCkB,MAAM,EAANA;YACF,CAAC,EACDI,QACF,CAAC;UAAA;YAEDwC,WAAW,CAAC,CAAC;YAEP0B,gBAAgB,GAAAnH,aAAA,CAAAA,aAAA,KACjBgB,SAAS;cACZ0E,IAAI,EAAE1E,SAAS,CAAC0E,IAAI,CAAC9F,MAAM,CAAC,UAAA6H,KAAA;gBAAA,IAAG9F,EAAE,GAAA8F,KAAA,CAAF9F,EAAE;gBAAA,OAAOA,EAAE,KAAKH,YAAY,CAACG,EAAE;cAAA;YAAC;YAGjEV,YAAY,CAACkG,gBAAgB,CAAC;UAAC;UAAA;YAAA,OAAAE,SAAA,CAAA9C,IAAA;QAAA;MAAA,GAAA2C,QAAA;IAAA,CAChC;IAAA,gBAlBKF,YAAYA,CAAA;MAAA,OAAAC,KAAA,CAAAlH,KAAA,OAAAE,SAAA;IAAA;EAAA,GAkBjB;EAED,IAAMyH,UAAU;IAAA,IAAAC,KAAA,OAAAjE,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAgE,SAAMC,KAAK;MAAA,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,iBAAA,EAAAC,QAAA,EAAAC,SAAA,EAAAC,eAAA,EAAAC,iBAAA,EAAAtD,WAAA,EAAAuD,OAAA,EAAAC,SAAA,EAAAC,QAAA,EAAAC,WAAA;MAAA,OAAA7E,YAAA,YAAAI,IAAA,UAAA0E,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAxE,IAAA,GAAAwE,SAAA,CAAAvE,IAAA;UAAA;YAAA2D,eAAA,GACI/I,MAAM,CAAC4J,OAAO,CAACd,KAAK,CAAC,EAAAE,gBAAA,OAAAhH,eAAA,aAAA+G,eAAA,MAAAE,iBAAA,OAAAjH,eAAA,aAAAgH,gBAAA,SAA7CE,QAAQ,GAAAD,iBAAA,KAAEE,SAAS,GAAAF,iBAAA;YACrBG,eAAe,GAAAnI,aAAA,CAAAA,aAAA,KAChBmC,kBAAkB;cACrByG,IAAI,EAAE,CAAC;gBAAEX,QAAQ,EAARA,QAAQ;gBAAEC,SAAS,EAATA;cAAU,CAAC;YAAC;YAEjC1F,cAAc,CAAC2F,eAAe,CAAC;YAACO,SAAA,CAAAvE,IAAA;YAAA,OAEF,IAAAkB,kBAAS,EAAC;cACtCxC,MAAM,EAANA,MAAM;cACNyC,aAAa,EAAE;gBACb5E,YAAY,EAAZA,YAAY;gBACZ6B,WAAW,EAAE4F;cACf,CAAC;cACDxF,WAAW,EAAXA;YACF,CAAC,CAAC;UAAA;YAAAyF,iBAAA,GAAAM,SAAA,CAAAnD,IAAA;YAPMT,WAAW,GAAAsD,iBAAA,CAAXtD,WAAW;YAQXuD,OAAO,GAAgBrH,SAAS,CAAhCqH,OAAO,EAAEC,SAAS,GAAKtH,SAAS,CAAvBsH,SAAS;YAAAC,QAAA,OAAAxH,eAAA,aACJsH,OAAO,MAAtBG,WAAW,GAAAD,QAAA;YAElBtH,YAAY,CAAAjB,aAAA,CAAAA,aAAA,KACPgB,SAAS;cACZ6H,WAAW,MAAAzI,gBAAA,iBAAK6H,QAAQ,EAAGC,SAAS,CAAE;cACtCxC,IAAI,EAAE,IAAAoD,wBAAU,EAAC;gBACfpD,IAAI,EAAE,IAAAqD,8BAAgB,EAACjE,WAAW,CAAC;gBACnCN,GAAG,EAAE/D,KAAK,CAAC+D,GAAG;gBACdiB,WAAW,EAAXA,WAAW;gBACX+C,WAAW,EAAXA,WAAW;gBACXF,SAAS,EAATA;cACF,CAAC;YAAC,EACH,CAAC;YACF3H,OAAO,CAACb,IAAI,CAAC,SAAS,CAAC;UAAC;UAAA;YAAA,OAAA4I,SAAA,CAAAnE,IAAA;QAAA;MAAA,GAAAqD,QAAA;IAAA,CACzB;IAAA,gBA/BKF,UAAUA,CAAAsB,GAAA;MAAA,OAAArB,KAAA,CAAA5H,KAAA,OAAAE,SAAA;IAAA;EAAA,GA+Bf;EAED,IAAI,CAACe,SAAS,IAAI,CAACA,SAAS,CAAC0E,IAAI,EAAE,OAAO,SAAS;EAEnD,IAAAuD,qBAAA,GAOIvI,YAAY,CANdwI,iBAAiB;IAAAC,sBAAA,GAAAF,qBAAA,cAKb,CAAC,CAAC,GAAAA,qBAAA;IAAAG,sBAAA,GAAAD,sBAAA,CAJJE,gBAAgB;IAAAC,sBAAA,GAAAF,sBAAA,cAGZ,CAAC,CAAC,GAAAA,sBAAA;IAAAG,sBAAA,GAAAD,sBAAA,CAFJE,MAAM;IAAEC,YAAY,GAAAF,sBAAA,cAAG;MAAEG,MAAM,EAAE;IAAK,CAAC,GAAAH,sBAAA;IAAAI,sBAAA,GAAAL,sBAAA;IAC/BM,aAAa,GAAAD,sBAAA,cAAG;MAAED,MAAM,EAAE;IAAK,CAAC,GAAAC,sBAAA;EAK9C,IAAME,aAAa,GAAG,CAAC7I,SAAS,CAAC0E,IAAI,CAACxF,MAAM,IAAIyC,WAAW,CAACzC,MAAM,KAAK,CAAC;EAExE,oBACE/C,MAAA,YAAA2M,aAAA;IAAKC,SAAS,EAAC;EAAM,GAClB3I,WAAW,IACVwI,aAAa,CAACF,MAAM,iBAClBvM,MAAA,YAAA2M,aAAA,CAACnM,MAAA,CAAAqM,YAAY;IACX,eAAY,cAAc;IAC1BC,OAAO,EAAExE,WAAY;IACrBuB,YAAY,EAAEA,YAAa;IAC3BkD,QAAQ,EAAE1I,YAAY,CAAC2I;EAAK,CAC7B,CACF,eACHhN,MAAA,YAAA2M,aAAA,CAACnM,MAAA,CAAAyM,UAAU;IAACC,KAAK,EAAE3J,YAAY,CAAC4J,WAAY;IAACC,QAAQ,EAAC;EAAE,GACrDd,YAAY,CAACC,MAAM,IAClB,CAACG,aAAa,iBACZ1M,MAAA,YAAA2M,aAAA,CAAC3M,MAAA,CAAAqN,QAAQ,qBACPrN,MAAA,YAAA2M,aAAA,CAACpM,eAAA,CAAA+M,IAAI;IACH,eAAY,WAAW;IACvBV,SAAS,EAAC,sBAAsB;IAChCW,EAAE,KAAAvE,MAAA,CAAK1F,KAAK,CAAC+D,GAAG;EAAU,GAAC,KAEvB,CAAC,eACPrH,MAAA,YAAA2M,aAAA,CAACnM,MAAA,CAAAyM,UAAU,CAACO,OAAO,qBACjBxN,MAAA,YAAA2M,aAAA,CAACtM,KAAA,WAAI,qBACHL,MAAA,YAAA2M,aAAA,CAACtM,KAAA,WAAI,CAACoN,MAAM;IAACC,UAAU;EAAA,gBACrB1N,MAAA,YAAA2M,aAAA;IAAMC,SAAS,EAAC;EAAgB,GAAC,WAAe,CACrC,CAAC,eACd5M,MAAA,YAAA2M,aAAA,CAACtM,KAAA,WAAI,CAACsN,OAAO;IAACD,UAAU;EAAA,CAAE,CACtB,CACY,CACZ,CAEJ,CAAC,EACZhB,aAAa,gBACZ1M,MAAA,YAAA2M,aAAA,CAACnM,MAAA,CAAAoN,UAAU,qBACT5N,MAAA,YAAA2M,aAAA,CAACpM,eAAA,CAAA+M,IAAI;IACHV,SAAS,EAAC,oCAAoC;IAC9CW,EAAE,KAAAvE,MAAA,CAAK1F,KAAK,CAAC+D,GAAG,YAAU;IAC1B,eAAY;EAAY,GAAC,KAErB,CACI,CAAC,gBAEbrH,MAAA,YAAA2M,aAAA,CAAA3M,MAAA,YAAAqN,QAAA,qBACErN,MAAA,YAAA2M,aAAA,CAACjM,oBAAA,CAAAmN,UAAU;IACTC,OAAO,EAAC,yBAAyB;IACjCC,MAAM,EAAExK,YAAa;IACrBiC,WAAW,EAAEA,WAAY;IACzBC,cAAc,EAAE4D;EAAqB,CACtC,CAAC,eACFrJ,MAAA,YAAA2M,aAAA,CAAChM,oBAAA,WAAmB;IAClBmE,UAAU,EAAEA,UAAW;IACvBsB,WAAW,EAAEA,WAAY;IACzB4H,MAAM,EAAEzD,UAAW;IACnB/B,kBAAkB,EAAEA,kBAAmB;IACvC3E,SAAS,EAAEA,SAAU;IACrB8F,iBAAiB,EAAEA;EAAkB,CACtC,CACD,CAED,CAAC;AAEV,CAAC;AACDvG,YAAY,CAAC6K,SAAS,GAAG;EACvB1K,YAAY,EAAE2K,qBAAS,CAACC,MAAM,CAACC,UAAU;EACzC9K,KAAK,EAAE4K,qBAAS,CAACC,MAAM,CAACC,UAAU;EAClC5K,OAAO,EAAE0K,qBAAS,CAACC,MAAM,CAACC;AAC5B,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEa,IAAAC,0BAAU,EAACnL,YAAY,CAAC"}
1
+ {"version":3,"file":"ListingTable.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_more","_client","_reactRouterDom","_admin","_toaster","_pluginRenderHooksUi","_ListingTableContent","_actionsHandlers","_service","_populateRows","_getDefaultQueryParams","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingTable","_ref","match","entitySchema","history","_useState","useState","_useState2","_slicedToArray2","tableData","setTableData","_useState3","_useState4","modalStatus","setModalStatus","_useState5","_useState6","itemToDelete","setItemToDelete","_useState7","id","_useState8","previousSchema","setPreviousSchema","_useState9","_useState10","totalItems","setTotalItems","queryParamsDefault","getDefaultQueryParams","_useState11","_useState12","queryParams","setQueryParams","_useState13","_useState14","listFilters","setListFilters","client","useApolloClient","_useToasts","useToasts","addToast","location","useLocation","searchParams","URLSearchParams","search","currentPage","Number","useEffect","_asyncToGenerator2","_regenerator","mark","_callee","updatedQueryParams","wrap","_callee$","_context","prev","next","offset","limit","doQuery","stop","url","_ref3","_callee2","filters","params","_yield$fetchData","listingData","totalRecords","populatedTable","_args2","_callee2$","_context2","undefined","fetchData","querySettings","sent","populateRows","toggleModal","rows","handleOnPageChange","_ref5","_callee3","_ref4","pageNumber","_offset","_callee3$","_context3","concat","document","getElementsByClassName","scrollTo","_x","updateListingFilters","_ref6","_callee4","_callee4$","_context4","_x2","onCloseCardPrompt","item","deleteAction","_ref7","_callee5","updatedTableData","_callee5$","_context5","availableActions","submit","parsedFormValues","_ref8","handleSort","_ref9","_callee6","event","_Object$entries","_Object$entries2","_Object$entries2$","property","direction","sortQueryParams","_yield$fetchData2","columns","isEnquiry","_columns","firstColumn","_callee6$","_context6","entries","sort","appliedSort","formatRows","getParsedRowData","_x3","_entitySchema$display","displayProperties","_entitySchema$display2","_entitySchema$display3","adminCrudActions","_entitySchema$display4","_entitySchema$display5","create","createAction","active","_entitySchema$display6","_deleteAction","showAddButton","createElement","className","DeleteAction","onClose","itemName","name","PageHeader","title","displayName","subtitle","Fragment","Link","to","Actions","Avatar","isMoreMenu","Content","CardPrompt","RenderHook","hookKey","schema","onSort","propTypes","PropTypes","object","isRequired","_default","exports","withRouter"],"sources":["../../../src/components/ListingTable/ListingTable.js"],"sourcesContent":["import React, { useEffect, useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport More from '@blaze-react/more';\nimport { useApolloClient } from '@apollo/client';\nimport { withRouter, Link, useLocation } from 'react-router-dom';\nimport { PageHeader, DeleteAction, CardPrompt } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport ListingTableContent from './ListingTableContent';\nimport availableActions from '../EntityManager/Entity/actions-handlers';\nimport { fetchData } from './service';\nimport { populateRows, formatRows, getParsedRowData } from './mappers/populate-rows';\nimport { getDefaultQueryParams } from '../../utils/get-default-query-params';\n\nconst ListingTable = ({ match, entitySchema, history }) => {\n const [tableData, setTableData] = useState({});\n const [modalStatus, setModalStatus] = useState(false);\n const [itemToDelete, setItemToDelete] = useState({});\n const [previousSchema, setPreviousSchema] = useState({ id: null });\n const [totalItems, setTotalItems] = useState(0);\n const queryParamsDefault = getDefaultQueryParams(entitySchema);\n const [queryParams, setQueryParams] = useState(queryParamsDefault);\n const [listFilters, setListFilters] = useState([]);\n const client = useApolloClient();\n const { addToast } = useToasts();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const currentPage = Number(searchParams.get('page')) || 1;\n\n useEffect(\n () => {\n (async () => {\n if (\n entitySchema.id !== previousSchema.id ||\n (previousSchema.id === null && entitySchema.id)\n ) {\n const updatedQueryParams = {\n ...queryParams,\n offset: currentPage * queryParamsDefault.limit - queryParamsDefault.limit\n };\n await doQuery(listFilters, updatedQueryParams);\n setPreviousSchema({ id: entitySchema.id });\n }\n })();\n },\n [client, entitySchema, match.url, previousSchema.id, queryParams] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const doQuery = async (filters = listFilters, params = queryParamsDefault) => {\n const { listingData, totalRecords } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: params\n },\n listFilters: filters\n });\n\n const populatedTable = populateRows({\n toggleModal,\n url: match.url,\n entitySchema,\n rows: listingData\n });\n\n setTableData(populatedTable);\n setTotalItems(totalRecords);\n };\n\n const handleOnPageChange = async ({ pageNumber, offset: _offset }) => {\n const updatedQueryParams = {\n ...queryParams,\n offset: _offset\n };\n\n await doQuery(listFilters, updatedQueryParams);\n\n history.push(`?page=${pageNumber}`);\n document.getElementsByClassName('page')[0].scrollTo(0, 0);\n };\n\n const updateListingFilters = async filters => {\n await doQuery(filters);\n setListFilters(filters);\n };\n\n const onCloseCardPrompt = () => null;\n\n const toggleModal = item => {\n setModalStatus(!!item);\n setItemToDelete(item || {});\n };\n\n const deleteAction = async () => {\n await availableActions.delete.submit(\n {\n entitySchema,\n parsedFormValues: { id: itemToDelete.id },\n client\n },\n addToast\n );\n\n toggleModal();\n\n const updatedTableData = {\n ...tableData,\n rows: tableData.rows.filter(({ id }) => id !== itemToDelete.id)\n };\n\n setTableData(updatedTableData);\n };\n\n const handleSort = async event => {\n const [[property, direction]] = Object.entries(event);\n const sortQueryParams = {\n ...queryParamsDefault,\n sort: [{ property, direction }]\n };\n setQueryParams(sortQueryParams);\n\n const { listingData } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: sortQueryParams\n },\n listFilters\n });\n const { columns, isEnquiry } = tableData;\n const [firstColumn] = columns;\n\n setTableData({\n ...tableData,\n appliedSort: { [property]: direction },\n rows: formatRows({\n rows: getParsedRowData(listingData),\n url: match.url,\n toggleModal,\n firstColumn,\n isEnquiry,\n entitySchema\n })\n });\n history.push('?page=1');\n };\n\n if (!tableData || !tableData.rows) return 'loading';\n\n const {\n displayProperties: {\n adminCrudActions: {\n create: createAction = { active: true },\n delete: _deleteAction = { active: true }\n } = {}\n } = {}\n } = entitySchema;\n\n const showAddButton = !tableData.rows.length && listFilters.length === 0;\n\n return (\n <div className=\"page\">\n {modalStatus &&\n _deleteAction.active && (\n <DeleteAction\n data-testid=\"deleteEntity\"\n onClose={toggleModal}\n deleteAction={deleteAction}\n itemName={itemToDelete.name}\n />\n )}\n <PageHeader title={entitySchema.displayName} subtitle=\"\">\n {createAction.active &&\n !showAddButton && (\n <Fragment>\n <Link\n data-testid=\"addEntity\"\n className=\"button button--small\"\n to={`${match.url}/create`}>\n Add\n </Link>\n <PageHeader.Actions>\n <More>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu />\n </More>\n </PageHeader.Actions>\n </Fragment>\n )}\n </PageHeader>\n {showAddButton ? (\n <CardPrompt>\n <Link\n className=\"button button--rounded button--cta\"\n to={`${match.url}/create`}\n data-testid=\"add-button\">\n Add\n </Link>\n </CardPrompt>\n ) : (\n <>\n <RenderHook\n hookKey=\"entity:listing:main:top\"\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <ListingTableContent\n totalItems={totalItems}\n currentPage={currentPage}\n onSort={handleSort}\n handleOnPageChange={handleOnPageChange}\n tableData={tableData}\n onCloseCardPrompt={onCloseCardPrompt}\n />\n </>\n )}\n </div>\n );\n};\nListingTable.propTypes = {\n entitySchema: PropTypes.object.isRequired,\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(ListingTable);\n"],"mappings":"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"}
@@ -27,6 +27,7 @@ require("core-js/modules/es.array.includes.js");
27
27
  require("core-js/modules/es.string.includes.js");
28
28
  var _react = _interopRequireDefault(require("react"));
29
29
  var _reactRouterDom = require("react-router-dom");
30
+ var _pluginRenderHooksUi = require("@blaze-cms/plugin-render-hooks-ui");
30
31
  var _TableActions = _interopRequireDefault(require("../TableActions"));
31
32
  var _constants = require("../../../constants");
32
33
  var _InfoBoxValue = _interopRequireDefault(require("../../InfoBoxes/presentational/InfoBoxValue"));
@@ -40,13 +41,20 @@ var formatRows = exports.formatRows = function formatRows(_ref) {
40
41
  label = _ref.label,
41
42
  _ref$firstColumn = _ref.firstColumn,
42
43
  firstColumn = _ref$firstColumn === void 0 ? 'name' : _ref$firstColumn,
43
- isEnquiry = _ref.isEnquiry;
44
+ isEnquiry = _ref.isEnquiry,
45
+ entitySchema = _ref.entitySchema;
44
46
  return rows.map(function (data) {
45
47
  var editUrl = "".concat(url, "/update/").concat(data.id);
46
- var rowProps = _objectSpread(_objectSpread({}, data), {}, (0, _defineProperty2["default"])({}, firstColumn, /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Link, {
48
+ var rowProps = _objectSpread(_objectSpread({}, data), {}, (0, _defineProperty2["default"])({}, firstColumn, /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Link, {
47
49
  to: editUrl,
48
50
  role: "button"
49
- }, data[firstColumn])));
51
+ }, data[firstColumn]), /*#__PURE__*/_react["default"].createElement(_pluginRenderHooksUi.RenderHook, {
52
+ hookKey: "entity:listing:table:row:column:after",
53
+ schema: entitySchema,
54
+ data: data,
55
+ value: data[firstColumn],
56
+ column: firstColumn
57
+ }))));
50
58
  if (!isEnquiry) rowProps.actions = /*#__PURE__*/_react["default"].createElement(_TableActions["default"], {
51
59
  editUrl: editUrl,
52
60
  data: data,
@@ -148,7 +156,8 @@ var populateRows = exports.populateRows = function populateRows(_ref3) {
148
156
  rows: parsedRowData,
149
157
  url: url,
150
158
  toggleModal: toggleModal,
151
- isEnquiry: isEnquiry
159
+ isEnquiry: isEnquiry,
160
+ entitySchema: entitySchema
152
161
  }),
153
162
  isEnquiry: isEnquiry
154
163
  };
@@ -1 +1 @@
1
- {"version":3,"file":"populate-rows.js","names":["_react","_interopRequireDefault","require","_reactRouterDom","_TableActions","_constants","_InfoBoxValue","_InfoBoxLabel","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","formatRows","exports","_ref","rows","url","toggleModal","label","_ref$firstColumn","firstColumn","isEnquiry","map","data","editUrl","concat","id","rowProps","createElement","Link","to","role","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","item","buildArrayRowData","groupSize","Math","ceil","group1","slice","group2","group3","dataGroups","getParsedRowData","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","listingProperty","propKey","includes","split","_ref2","parsedRowData","populateRows","_ref3","entitySchema","schemaId","properties","_entitySchema$dynamic","dynamicProperties","formProperties","columnOptions","_toConsumableArray2","ACTIONS","_getColumnsAndLabels","_columns","_slicedToArray2","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\nimport InfoBoxValue from '../../InfoBoxes/presentational/InfoBoxValue';\nimport InfoBoxLabel from '../../InfoBoxes/presentational/InfoBoxLabel';\n\nconst formatRows = ({ rows, url, toggleModal, label, firstColumn = 'name', isEnquiry }) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => {\n if (!rowGroup.length) return null;\n return (\n <div className=\"table-row-list__group\">\n {rowGroup.map(item => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\">\n <InfoBoxLabel item={item} />\n </span>\n <span className=\"table-row-list__group__item__value\">\n <InfoBoxValue item={item} />\n </span>\n </div>\n ))}\n </div>\n );\n })}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const groupSize = Math.ceil(rowData.length / 3);\n const group1 = rowData.slice(0, groupSize);\n const group2 = rowData.slice(groupSize, groupSize * 2);\n const group3 = rowData.slice(groupSize * 2);\n const dataGroups = [group1, group2, group3];\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({ firstColumn, rows: parsedRowData, url, toggleModal, isEnquiry }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":"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"}
1
+ {"version":3,"file":"populate-rows.js","names":["_react","_interopRequireDefault","require","_reactRouterDom","_pluginRenderHooksUi","_TableActions","_constants","_InfoBoxValue","_InfoBoxLabel","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","formatRows","exports","_ref","rows","url","toggleModal","label","_ref$firstColumn","firstColumn","isEnquiry","entitySchema","map","data","editUrl","concat","id","rowProps","createElement","Fragment","Link","to","role","RenderHook","hookKey","schema","value","column","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","item","buildArrayRowData","groupSize","Math","ceil","group1","slice","group2","group3","dataGroups","getParsedRowData","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","listingProperty","propKey","includes","split","_ref2","parsedRowData","populateRows","_ref3","schemaId","properties","_entitySchema$dynamic","dynamicProperties","formProperties","columnOptions","_toConsumableArray2","ACTIONS","_getColumnsAndLabels","_columns","_slicedToArray2","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\nimport InfoBoxValue from '../../InfoBoxes/presentational/InfoBoxValue';\nimport InfoBoxLabel from '../../InfoBoxes/presentational/InfoBoxLabel';\n\nconst formatRows = ({\n rows,\n url,\n toggleModal,\n label,\n firstColumn = 'name',\n isEnquiry,\n entitySchema\n}) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <>\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n <RenderHook\n hookKey=\"entity:listing:table:row:column:after\"\n schema={entitySchema}\n data={data}\n value={data[firstColumn]}\n column={firstColumn}\n />\n </>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => {\n if (!rowGroup.length) return null;\n return (\n <div className=\"table-row-list__group\">\n {rowGroup.map(item => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\">\n <InfoBoxLabel item={item} />\n </span>\n <span className=\"table-row-list__group__item__value\">\n <InfoBoxValue item={item} />\n </span>\n </div>\n ))}\n </div>\n );\n })}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const groupSize = Math.ceil(rowData.length / 3);\n const group1 = rowData.slice(0, groupSize);\n const group2 = rowData.slice(groupSize, groupSize * 2);\n const group3 = rowData.slice(groupSize * 2);\n const dataGroups = [group1, group2, group3];\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({\n firstColumn,\n rows: parsedRowData,\n url,\n toggleModal,\n isEnquiry,\n entitySchema\n }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EntityNavLinks.js","names":["Link","React","EntityNavLinks","schema","displayProperties","adminSectionNavigation","links","Object","entries","map","k","v","label","uri","Wrapper","startsWith","createElement","className","href","to"],"sources":["../../../../../src/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js"],"sourcesContent":["import { Link } from 'react-router-dom';\nimport React from 'react';\n\nconst EntityNavLinks = ({ schema }) => {\n if (!schema) return null;\n\n const {\n displayProperties: { adminSectionNavigation }\n } = schema;\n\n if (!adminSectionNavigation) return null;\n\n const links = Object.entries(adminSectionNavigation).map(([k, v]) => {\n const { label, uri } = v;\n const Wrapper = uri.startsWith('#') ? 'a' : Link;\n return (\n <Wrapper className=\"entity-section-link\" href={uri} to={uri}>\n {label}\n </Wrapper>\n );\n });\n\n return <div className=\"entity-section-links\">{links}</div>;\n};\n\nexport default EntityNavLinks;\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,kBAAkB;AACvC,OAAOC,KAAK,MAAM,OAAO;AAEzB,MAAMC,cAAc,GAAGA,CAAC;EAAEC;AAAO,CAAC,KAAK;EACrC,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EAExB,MAAM;IACJC,iBAAiB,EAAE;MAAEC;IAAuB;EAC9C,CAAC,GAAGF,MAAM;EAEV,IAAI,CAACE,sBAAsB,EAAE,OAAO,IAAI;EAExC,MAAMC,KAAK,GAAGC,MAAM,CAACC,OAAO,CAACH,sBAAsB,CAAC,CAACI,GAAG,CAAC,CAAC,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAK;IACnE,MAAM;MAAEC,KAAK;MAAEC;IAAI,CAAC,GAAGF,CAAC;IACxB,MAAMG,OAAO,GAAGD,GAAG,CAACE,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,GAAGf,IAAI;IAChD,oBACEC,KAAA,CAAAe,aAAA,CAACF,OAAO;MAACG,SAAS,EAAC,qBAAqB;MAACC,IAAI,EAAEL,GAAI;MAACM,EAAE,EAAEN;IAAI,GACzDD,KACM,CAAC;EAEd,CAAC,CAAC;EAEF,oBAAOX,KAAA,CAAAe,aAAA;IAAKC,SAAS,EAAC;EAAsB,GAAEX,KAAW,CAAC;AAC5D,CAAC;AAED,eAAeJ,cAAc"}
1
+ {"version":3,"file":"EntityNavLinks.js","names":["Link","React","EntityNavLinks","schema","displayProperties","adminSectionNavigation","links","Object","entries","map","k","v","label","uri","Wrapper","startsWith","createElement","className","href","to"],"sources":["../../../../../src/components/EntityManager/Entity/EntitiyNavLinks/EntityNavLinks.js"],"sourcesContent":["import { Link } from 'react-router-dom';\nimport React from 'react';\n\nconst EntityNavLinks = ({ schema }) => {\n if (!schema) return null;\n\n const {\n displayProperties: { adminSectionNavigation }\n } = schema;\n\n if (!adminSectionNavigation) return null;\n\n const links = Object.entries(adminSectionNavigation).map(([k, v]) => {\n const { label, uri } = v;\n const Wrapper = uri.startsWith('#') ? 'a' : Link;\n\n return (\n <Wrapper className=\"entity-section-link\" href={uri} to={uri}>\n {label}\n </Wrapper>\n );\n });\n\n return <div className=\"entity-section-links\">{links}</div>;\n};\n\nexport default EntityNavLinks;\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,kBAAkB;AACvC,OAAOC,KAAK,MAAM,OAAO;AAEzB,MAAMC,cAAc,GAAGA,CAAC;EAAEC;AAAO,CAAC,KAAK;EACrC,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EAExB,MAAM;IACJC,iBAAiB,EAAE;MAAEC;IAAuB;EAC9C,CAAC,GAAGF,MAAM;EAEV,IAAI,CAACE,sBAAsB,EAAE,OAAO,IAAI;EAExC,MAAMC,KAAK,GAAGC,MAAM,CAACC,OAAO,CAACH,sBAAsB,CAAC,CAACI,GAAG,CAAC,CAAC,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAK;IACnE,MAAM;MAAEC,KAAK;MAAEC;IAAI,CAAC,GAAGF,CAAC;IACxB,MAAMG,OAAO,GAAGD,GAAG,CAACE,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,GAAGf,IAAI;IAEhD,oBACEC,KAAA,CAAAe,aAAA,CAACF,OAAO;MAACG,SAAS,EAAC,qBAAqB;MAACC,IAAI,EAAEL,GAAI;MAACM,EAAE,EAAEN;IAAI,GACzDD,KACM,CAAC;EAEd,CAAC,CAAC;EAEF,oBAAOX,KAAA,CAAAe,aAAA;IAAKC,SAAS,EAAC;EAAsB,GAAEX,KAAW,CAAC;AAC5D,CAAC;AAED,eAAeJ,cAAc"}
@@ -140,7 +140,8 @@ const ListingTable = ({
140
140
  url: match.url,
141
141
  toggleModal,
142
142
  firstColumn,
143
- isEnquiry
143
+ isEnquiry,
144
+ entitySchema
144
145
  })
145
146
  }));
146
147
  history.push('?page=1');
@@ -1 +1 @@
1
- {"version":3,"file":"ListingTable.js","names":["React","useEffect","useState","Fragment","PropTypes","More","useApolloClient","withRouter","Link","useLocation","PageHeader","DeleteAction","CardPrompt","useToasts","RenderHook","ListingTableContent","availableActions","fetchData","populateRows","formatRows","getParsedRowData","getDefaultQueryParams","ListingTable","match","entitySchema","history","tableData","setTableData","modalStatus","setModalStatus","itemToDelete","setItemToDelete","previousSchema","setPreviousSchema","id","totalItems","setTotalItems","queryParamsDefault","queryParams","setQueryParams","listFilters","setListFilters","client","addToast","location","searchParams","URLSearchParams","search","currentPage","Number","get","updatedQueryParams","_objectSpread","offset","limit","doQuery","url","filters","params","listingData","totalRecords","querySettings","populatedTable","toggleModal","rows","handleOnPageChange","pageNumber","_offset","push","document","getElementsByClassName","scrollTo","updateListingFilters","onCloseCardPrompt","item","deleteAction","delete","submit","parsedFormValues","updatedTableData","filter","handleSort","event","property","direction","Object","entries","sortQueryParams","sort","columns","isEnquiry","firstColumn","appliedSort","displayProperties","adminCrudActions","create","createAction","active","_deleteAction","showAddButton","length","createElement","className","onClose","itemName","name","title","displayName","subtitle","to","Actions","Avatar","isMoreMenu","Content","hookKey","schema","onSort","propTypes","object","isRequired"],"sources":["../../../src/components/ListingTable/ListingTable.js"],"sourcesContent":["import React, { useEffect, useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport More from '@blaze-react/more';\nimport { useApolloClient } from '@apollo/client';\nimport { withRouter, Link, useLocation } from 'react-router-dom';\nimport { PageHeader, DeleteAction, CardPrompt } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport ListingTableContent from './ListingTableContent';\nimport availableActions from '../EntityManager/Entity/actions-handlers';\nimport { fetchData } from './service';\nimport { populateRows, formatRows, getParsedRowData } from './mappers/populate-rows';\nimport { getDefaultQueryParams } from '../../utils/get-default-query-params';\n\nconst ListingTable = ({ match, entitySchema, history }) => {\n const [tableData, setTableData] = useState({});\n const [modalStatus, setModalStatus] = useState(false);\n const [itemToDelete, setItemToDelete] = useState({});\n const [previousSchema, setPreviousSchema] = useState({ id: null });\n const [totalItems, setTotalItems] = useState(0);\n const queryParamsDefault = getDefaultQueryParams(entitySchema);\n const [queryParams, setQueryParams] = useState(queryParamsDefault);\n const [listFilters, setListFilters] = useState([]);\n const client = useApolloClient();\n const { addToast } = useToasts();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const currentPage = Number(searchParams.get('page')) || 1;\n\n useEffect(\n () => {\n (async () => {\n if (\n entitySchema.id !== previousSchema.id ||\n (previousSchema.id === null && entitySchema.id)\n ) {\n const updatedQueryParams = {\n ...queryParams,\n offset: currentPage * queryParamsDefault.limit - queryParamsDefault.limit\n };\n await doQuery(listFilters, updatedQueryParams);\n setPreviousSchema({ id: entitySchema.id });\n }\n })();\n },\n [client, entitySchema, match.url, previousSchema.id, queryParams] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const doQuery = async (filters = listFilters, params = queryParamsDefault) => {\n const { listingData, totalRecords } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: params\n },\n listFilters: filters\n });\n\n const populatedTable = populateRows({\n toggleModal,\n url: match.url,\n entitySchema,\n rows: listingData\n });\n\n setTableData(populatedTable);\n setTotalItems(totalRecords);\n };\n\n const handleOnPageChange = async ({ pageNumber, offset: _offset }) => {\n const updatedQueryParams = {\n ...queryParams,\n offset: _offset\n };\n\n await doQuery(listFilters, updatedQueryParams);\n\n history.push(`?page=${pageNumber}`);\n document.getElementsByClassName('page')[0].scrollTo(0, 0);\n };\n\n const updateListingFilters = async filters => {\n await doQuery(filters);\n setListFilters(filters);\n };\n\n const onCloseCardPrompt = () => null;\n\n const toggleModal = item => {\n setModalStatus(!!item);\n setItemToDelete(item || {});\n };\n\n const deleteAction = async () => {\n await availableActions.delete.submit(\n {\n entitySchema,\n parsedFormValues: { id: itemToDelete.id },\n client\n },\n addToast\n );\n\n toggleModal();\n\n const updatedTableData = {\n ...tableData,\n rows: tableData.rows.filter(({ id }) => id !== itemToDelete.id)\n };\n\n setTableData(updatedTableData);\n };\n\n const handleSort = async event => {\n const [[property, direction]] = Object.entries(event);\n const sortQueryParams = {\n ...queryParamsDefault,\n sort: [{ property, direction }]\n };\n setQueryParams(sortQueryParams);\n\n const { listingData } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: sortQueryParams\n },\n listFilters\n });\n const { columns, isEnquiry } = tableData;\n const [firstColumn] = columns;\n\n setTableData({\n ...tableData,\n appliedSort: { [property]: direction },\n rows: formatRows({\n rows: getParsedRowData(listingData),\n url: match.url,\n toggleModal,\n firstColumn,\n isEnquiry\n })\n });\n history.push('?page=1');\n };\n\n if (!tableData || !tableData.rows) return 'loading';\n\n const {\n displayProperties: {\n adminCrudActions: {\n create: createAction = { active: true },\n delete: _deleteAction = { active: true }\n } = {}\n } = {}\n } = entitySchema;\n\n const showAddButton = !tableData.rows.length && listFilters.length === 0;\n\n return (\n <div className=\"page\">\n {modalStatus &&\n _deleteAction.active && (\n <DeleteAction\n data-testid=\"deleteEntity\"\n onClose={toggleModal}\n deleteAction={deleteAction}\n itemName={itemToDelete.name}\n />\n )}\n <PageHeader title={entitySchema.displayName} subtitle=\"\">\n {createAction.active &&\n !showAddButton && (\n <Fragment>\n <Link\n data-testid=\"addEntity\"\n className=\"button button--small\"\n to={`${match.url}/create`}>\n Add\n </Link>\n <PageHeader.Actions>\n <More>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu />\n </More>\n </PageHeader.Actions>\n </Fragment>\n )}\n </PageHeader>\n {showAddButton ? (\n <CardPrompt>\n <Link\n className=\"button button--rounded button--cta\"\n to={`${match.url}/create`}\n data-testid=\"add-button\">\n Add\n </Link>\n </CardPrompt>\n ) : (\n <>\n <RenderHook\n hookKey=\"entity:listing:main:top\"\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <ListingTableContent\n totalItems={totalItems}\n currentPage={currentPage}\n onSort={handleSort}\n handleOnPageChange={handleOnPageChange}\n tableData={tableData}\n onCloseCardPrompt={onCloseCardPrompt}\n />\n </>\n )}\n </div>\n );\n};\nListingTable.propTypes = {\n entitySchema: PropTypes.object.isRequired,\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(ListingTable);\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,QAAQ,EAAEC,QAAQ,QAAQ,OAAO;AAC5D,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,IAAI,MAAM,mBAAmB;AACpC,SAASC,eAAe,QAAQ,gBAAgB;AAChD,SAASC,UAAU,EAAEC,IAAI,EAAEC,WAAW,QAAQ,kBAAkB;AAChE,SAASC,UAAU,EAAEC,YAAY,EAAEC,UAAU,QAAQ,kBAAkB;AACvE,SAASC,SAAS,QAAQ,sBAAsB;AAChD,SAASC,UAAU,QAAQ,mCAAmC;AAC9D,OAAOC,mBAAmB,MAAM,uBAAuB;AACvD,OAAOC,gBAAgB,MAAM,0CAA0C;AACvE,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,YAAY,EAAEC,UAAU,EAAEC,gBAAgB,QAAQ,yBAAyB;AACpF,SAASC,qBAAqB,QAAQ,sCAAsC;AAE5E,MAAMC,YAAY,GAAGA,CAAC;EAAEC,KAAK;EAAEC,YAAY;EAAEC;AAAQ,CAAC,KAAK;EACzD,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGzB,QAAQ,CAAC,CAAC,CAAC,CAAC;EAC9C,MAAM,CAAC0B,WAAW,EAAEC,cAAc,CAAC,GAAG3B,QAAQ,CAAC,KAAK,CAAC;EACrD,MAAM,CAAC4B,YAAY,EAAEC,eAAe,CAAC,GAAG7B,QAAQ,CAAC,CAAC,CAAC,CAAC;EACpD,MAAM,CAAC8B,cAAc,EAAEC,iBAAiB,CAAC,GAAG/B,QAAQ,CAAC;IAAEgC,EAAE,EAAE;EAAK,CAAC,CAAC;EAClE,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGlC,QAAQ,CAAC,CAAC,CAAC;EAC/C,MAAMmC,kBAAkB,GAAGhB,qBAAqB,CAACG,YAAY,CAAC;EAC9D,MAAM,CAACc,WAAW,EAAEC,cAAc,CAAC,GAAGrC,QAAQ,CAACmC,kBAAkB,CAAC;EAClE,MAAM,CAACG,WAAW,EAAEC,cAAc,CAAC,GAAGvC,QAAQ,CAAC,EAAE,CAAC;EAClD,MAAMwC,MAAM,GAAGpC,eAAe,CAAC,CAAC;EAChC,MAAM;IAAEqC;EAAS,CAAC,GAAG9B,SAAS,CAAC,CAAC;EAChC,MAAM+B,QAAQ,GAAGnC,WAAW,CAAC,CAAC;EAC9B,MAAMoC,YAAY,GAAG,IAAIC,eAAe,CAACF,QAAQ,CAACG,MAAM,CAAC;EACzD,MAAMC,WAAW,GAAGC,MAAM,CAACJ,YAAY,CAACK,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;EAEzDjD,SAAS,CACP,MAAM;IACJ,CAAC,YAAY;MACX,IACEuB,YAAY,CAACU,EAAE,KAAKF,cAAc,CAACE,EAAE,IACpCF,cAAc,CAACE,EAAE,KAAK,IAAI,IAAIV,YAAY,CAACU,EAAG,EAC/C;QACA,MAAMiB,kBAAkB,GAAAC,aAAA,CAAAA,aAAA,KACnBd,WAAW;UACde,MAAM,EAAEL,WAAW,GAAGX,kBAAkB,CAACiB,KAAK,GAAGjB,kBAAkB,CAACiB;QAAK,EAC1E;QACD,MAAMC,OAAO,CAACf,WAAW,EAAEW,kBAAkB,CAAC;QAC9ClB,iBAAiB,CAAC;UAAEC,EAAE,EAAEV,YAAY,CAACU;QAAG,CAAC,CAAC;MAC5C;IACF,CAAC,EAAE,CAAC;EACN,CAAC,EACD,CAACQ,MAAM,EAAElB,YAAY,EAAED,KAAK,CAACiC,GAAG,EAAExB,cAAc,CAACE,EAAE,EAAEI,WAAW,CAAC,CAAC;EACpE,CAAC;EAED,MAAMiB,OAAO,GAAG,MAAAA,CAAOE,OAAO,GAAGjB,WAAW,EAAEkB,MAAM,GAAGrB,kBAAkB,KAAK;IAC5E,MAAM;MAAEsB,WAAW;MAAEC;IAAa,CAAC,GAAG,MAAM3C,SAAS,CAAC;MACpDyB,MAAM;MACNmB,aAAa,EAAE;QACbrC,YAAY;QACZc,WAAW,EAAEoB;MACf,CAAC;MACDlB,WAAW,EAAEiB;IACf,CAAC,CAAC;IAEF,MAAMK,cAAc,GAAG5C,YAAY,CAAC;MAClC6C,WAAW;MACXP,GAAG,EAAEjC,KAAK,CAACiC,GAAG;MACdhC,YAAY;MACZwC,IAAI,EAAEL;IACR,CAAC,CAAC;IAEFhC,YAAY,CAACmC,cAAc,CAAC;IAC5B1B,aAAa,CAACwB,YAAY,CAAC;EAC7B,CAAC;EAED,MAAMK,kBAAkB,GAAG,MAAAA,CAAO;IAAEC,UAAU;IAAEb,MAAM,EAAEc;EAAQ,CAAC,KAAK;IACpE,MAAMhB,kBAAkB,GAAAC,aAAA,CAAAA,aAAA,KACnBd,WAAW;MACde,MAAM,EAAEc;IAAO,EAChB;IAED,MAAMZ,OAAO,CAACf,WAAW,EAAEW,kBAAkB,CAAC;IAE9C1B,OAAO,CAAC2C,IAAI,CAAE,SAAQF,UAAW,EAAC,CAAC;IACnCG,QAAQ,CAACC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;EAC3D,CAAC;EAED,MAAMC,oBAAoB,GAAG,MAAMf,OAAO,IAAI;IAC5C,MAAMF,OAAO,CAACE,OAAO,CAAC;IACtBhB,cAAc,CAACgB,OAAO,CAAC;EACzB,CAAC;EAED,MAAMgB,iBAAiB,GAAGA,CAAA,KAAM,IAAI;EAEpC,MAAMV,WAAW,GAAGW,IAAI,IAAI;IAC1B7C,cAAc,CAAC,CAAC,CAAC6C,IAAI,CAAC;IACtB3C,eAAe,CAAC2C,IAAI,IAAI,CAAC,CAAC,CAAC;EAC7B,CAAC;EAED,MAAMC,YAAY,GAAG,MAAAA,CAAA,KAAY;IAC/B,MAAM3D,gBAAgB,CAAC4D,MAAM,CAACC,MAAM,CAClC;MACErD,YAAY;MACZsD,gBAAgB,EAAE;QAAE5C,EAAE,EAAEJ,YAAY,CAACI;MAAG,CAAC;MACzCQ;IACF,CAAC,EACDC,QACF,CAAC;IAEDoB,WAAW,CAAC,CAAC;IAEb,MAAMgB,gBAAgB,GAAA3B,aAAA,CAAAA,aAAA,KACjB1B,SAAS;MACZsC,IAAI,EAAEtC,SAAS,CAACsC,IAAI,CAACgB,MAAM,CAAC,CAAC;QAAE9C;MAAG,CAAC,KAAKA,EAAE,KAAKJ,YAAY,CAACI,EAAE;IAAC,EAChE;IAEDP,YAAY,CAACoD,gBAAgB,CAAC;EAChC,CAAC;EAED,MAAME,UAAU,GAAG,MAAMC,KAAK,IAAI;IAChC,MAAM,CAAC,CAACC,QAAQ,EAAEC,SAAS,CAAC,CAAC,GAAGC,MAAM,CAACC,OAAO,CAACJ,KAAK,CAAC;IACrD,MAAMK,eAAe,GAAAnC,aAAA,CAAAA,aAAA,KAChBf,kBAAkB;MACrBmD,IAAI,EAAE,CAAC;QAAEL,QAAQ;QAAEC;MAAU,CAAC;IAAC,EAChC;IACD7C,cAAc,CAACgD,eAAe,CAAC;IAE/B,MAAM;MAAE5B;IAAY,CAAC,GAAG,MAAM1C,SAAS,CAAC;MACtCyB,MAAM;MACNmB,aAAa,EAAE;QACbrC,YAAY;QACZc,WAAW,EAAEiD;MACf,CAAC;MACD/C;IACF,CAAC,CAAC;IACF,MAAM;MAAEiD,OAAO;MAAEC;IAAU,CAAC,GAAGhE,SAAS;IACxC,MAAM,CAACiE,WAAW,CAAC,GAAGF,OAAO;IAE7B9D,YAAY,CAAAyB,aAAA,CAAAA,aAAA,KACP1B,SAAS;MACZkE,WAAW,EAAE;QAAE,CAACT,QAAQ,GAAGC;MAAU,CAAC;MACtCpB,IAAI,EAAE7C,UAAU,CAAC;QACf6C,IAAI,EAAE5C,gBAAgB,CAACuC,WAAW,CAAC;QACnCH,GAAG,EAAEjC,KAAK,CAACiC,GAAG;QACdO,WAAW;QACX4B,WAAW;QACXD;MACF,CAAC;IAAC,EACH,CAAC;IACFjE,OAAO,CAAC2C,IAAI,CAAC,SAAS,CAAC;EACzB,CAAC;EAED,IAAI,CAAC1C,SAAS,IAAI,CAACA,SAAS,CAACsC,IAAI,EAAE,OAAO,SAAS;EAEnD,MAAM;IACJ6B,iBAAiB,EAAE;MACjBC,gBAAgB,EAAE;QAChBC,MAAM,EAAEC,YAAY,GAAG;UAAEC,MAAM,EAAE;QAAK,CAAC;QACvCrB,MAAM,EAAEsB,aAAa,GAAG;UAAED,MAAM,EAAE;QAAK;MACzC,CAAC,GAAG,CAAC;IACP,CAAC,GAAG,CAAC;EACP,CAAC,GAAGzE,YAAY;EAEhB,MAAM2E,aAAa,GAAG,CAACzE,SAAS,CAACsC,IAAI,CAACoC,MAAM,IAAI5D,WAAW,CAAC4D,MAAM,KAAK,CAAC;EAExE,oBACEpG,KAAA,CAAAqG,aAAA;IAAKC,SAAS,EAAC;EAAM,GAClB1E,WAAW,IACVsE,aAAa,CAACD,MAAM,iBAClBjG,KAAA,CAAAqG,aAAA,CAAC1F,YAAY;IACX,eAAY,cAAc;IAC1B4F,OAAO,EAAExC,WAAY;IACrBY,YAAY,EAAEA,YAAa;IAC3B6B,QAAQ,EAAE1E,YAAY,CAAC2E;EAAK,CAC7B,CACF,eACHzG,KAAA,CAAAqG,aAAA,CAAC3F,UAAU;IAACgG,KAAK,EAAElF,YAAY,CAACmF,WAAY;IAACC,QAAQ,EAAC;EAAE,GACrDZ,YAAY,CAACC,MAAM,IAClB,CAACE,aAAa,iBACZnG,KAAA,CAAAqG,aAAA,CAAClG,QAAQ,qBACPH,KAAA,CAAAqG,aAAA,CAAC7F,IAAI;IACH,eAAY,WAAW;IACvB8F,SAAS,EAAC,sBAAsB;IAChCO,EAAE,EAAG,GAAEtF,KAAK,CAACiC,GAAI;EAAS,GAAC,KAEvB,CAAC,eACPxD,KAAA,CAAAqG,aAAA,CAAC3F,UAAU,CAACoG,OAAO,qBACjB9G,KAAA,CAAAqG,aAAA,CAAChG,IAAI,qBACHL,KAAA,CAAAqG,aAAA,CAAChG,IAAI,CAAC0G,MAAM;IAACC,UAAU;EAAA,gBACrBhH,KAAA,CAAAqG,aAAA;IAAMC,SAAS,EAAC;EAAgB,GAAC,WAAe,CACrC,CAAC,eACdtG,KAAA,CAAAqG,aAAA,CAAChG,IAAI,CAAC4G,OAAO;IAACD,UAAU;EAAA,CAAE,CACtB,CACY,CACZ,CAEJ,CAAC,EACZb,aAAa,gBACZnG,KAAA,CAAAqG,aAAA,CAACzF,UAAU,qBACTZ,KAAA,CAAAqG,aAAA,CAAC7F,IAAI;IACH8F,SAAS,EAAC,oCAAoC;IAC9CO,EAAE,EAAG,GAAEtF,KAAK,CAACiC,GAAI,SAAS;IAC1B,eAAY;EAAY,GAAC,KAErB,CACI,CAAC,gBAEbxD,KAAA,CAAAqG,aAAA,CAAArG,KAAA,CAAAG,QAAA,qBACEH,KAAA,CAAAqG,aAAA,CAACvF,UAAU;IACToG,OAAO,EAAC,yBAAyB;IACjCC,MAAM,EAAE3F,YAAa;IACrBgB,WAAW,EAAEA,WAAY;IACzBC,cAAc,EAAE+B;EAAqB,CACtC,CAAC,eACFxE,KAAA,CAAAqG,aAAA,CAACtF,mBAAmB;IAClBoB,UAAU,EAAEA,UAAW;IACvBa,WAAW,EAAEA,WAAY;IACzBoE,MAAM,EAAEnC,UAAW;IACnBhB,kBAAkB,EAAEA,kBAAmB;IACvCvC,SAAS,EAAEA,SAAU;IACrB+C,iBAAiB,EAAEA;EAAkB,CACtC,CACD,CAED,CAAC;AAEV,CAAC;AACDnD,YAAY,CAAC+F,SAAS,GAAG;EACvB7F,YAAY,EAAEpB,SAAS,CAACkH,MAAM,CAACC,UAAU;EACzChG,KAAK,EAAEnB,SAAS,CAACkH,MAAM,CAACC,UAAU;EAClC9F,OAAO,EAAErB,SAAS,CAACkH,MAAM,CAACC;AAC5B,CAAC;AAED,eAAehH,UAAU,CAACe,YAAY,CAAC"}
1
+ {"version":3,"file":"ListingTable.js","names":["React","useEffect","useState","Fragment","PropTypes","More","useApolloClient","withRouter","Link","useLocation","PageHeader","DeleteAction","CardPrompt","useToasts","RenderHook","ListingTableContent","availableActions","fetchData","populateRows","formatRows","getParsedRowData","getDefaultQueryParams","ListingTable","match","entitySchema","history","tableData","setTableData","modalStatus","setModalStatus","itemToDelete","setItemToDelete","previousSchema","setPreviousSchema","id","totalItems","setTotalItems","queryParamsDefault","queryParams","setQueryParams","listFilters","setListFilters","client","addToast","location","searchParams","URLSearchParams","search","currentPage","Number","get","updatedQueryParams","_objectSpread","offset","limit","doQuery","url","filters","params","listingData","totalRecords","querySettings","populatedTable","toggleModal","rows","handleOnPageChange","pageNumber","_offset","push","document","getElementsByClassName","scrollTo","updateListingFilters","onCloseCardPrompt","item","deleteAction","delete","submit","parsedFormValues","updatedTableData","filter","handleSort","event","property","direction","Object","entries","sortQueryParams","sort","columns","isEnquiry","firstColumn","appliedSort","displayProperties","adminCrudActions","create","createAction","active","_deleteAction","showAddButton","length","createElement","className","onClose","itemName","name","title","displayName","subtitle","to","Actions","Avatar","isMoreMenu","Content","hookKey","schema","onSort","propTypes","object","isRequired"],"sources":["../../../src/components/ListingTable/ListingTable.js"],"sourcesContent":["import React, { useEffect, useState, Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport More from '@blaze-react/more';\nimport { useApolloClient } from '@apollo/client';\nimport { withRouter, Link, useLocation } from 'react-router-dom';\nimport { PageHeader, DeleteAction, CardPrompt } from '@blaze-cms/admin';\nimport { useToasts } from '@blaze-react/toaster';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport ListingTableContent from './ListingTableContent';\nimport availableActions from '../EntityManager/Entity/actions-handlers';\nimport { fetchData } from './service';\nimport { populateRows, formatRows, getParsedRowData } from './mappers/populate-rows';\nimport { getDefaultQueryParams } from '../../utils/get-default-query-params';\n\nconst ListingTable = ({ match, entitySchema, history }) => {\n const [tableData, setTableData] = useState({});\n const [modalStatus, setModalStatus] = useState(false);\n const [itemToDelete, setItemToDelete] = useState({});\n const [previousSchema, setPreviousSchema] = useState({ id: null });\n const [totalItems, setTotalItems] = useState(0);\n const queryParamsDefault = getDefaultQueryParams(entitySchema);\n const [queryParams, setQueryParams] = useState(queryParamsDefault);\n const [listFilters, setListFilters] = useState([]);\n const client = useApolloClient();\n const { addToast } = useToasts();\n const location = useLocation();\n const searchParams = new URLSearchParams(location.search);\n const currentPage = Number(searchParams.get('page')) || 1;\n\n useEffect(\n () => {\n (async () => {\n if (\n entitySchema.id !== previousSchema.id ||\n (previousSchema.id === null && entitySchema.id)\n ) {\n const updatedQueryParams = {\n ...queryParams,\n offset: currentPage * queryParamsDefault.limit - queryParamsDefault.limit\n };\n await doQuery(listFilters, updatedQueryParams);\n setPreviousSchema({ id: entitySchema.id });\n }\n })();\n },\n [client, entitySchema, match.url, previousSchema.id, queryParams] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const doQuery = async (filters = listFilters, params = queryParamsDefault) => {\n const { listingData, totalRecords } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: params\n },\n listFilters: filters\n });\n\n const populatedTable = populateRows({\n toggleModal,\n url: match.url,\n entitySchema,\n rows: listingData\n });\n\n setTableData(populatedTable);\n setTotalItems(totalRecords);\n };\n\n const handleOnPageChange = async ({ pageNumber, offset: _offset }) => {\n const updatedQueryParams = {\n ...queryParams,\n offset: _offset\n };\n\n await doQuery(listFilters, updatedQueryParams);\n\n history.push(`?page=${pageNumber}`);\n document.getElementsByClassName('page')[0].scrollTo(0, 0);\n };\n\n const updateListingFilters = async filters => {\n await doQuery(filters);\n setListFilters(filters);\n };\n\n const onCloseCardPrompt = () => null;\n\n const toggleModal = item => {\n setModalStatus(!!item);\n setItemToDelete(item || {});\n };\n\n const deleteAction = async () => {\n await availableActions.delete.submit(\n {\n entitySchema,\n parsedFormValues: { id: itemToDelete.id },\n client\n },\n addToast\n );\n\n toggleModal();\n\n const updatedTableData = {\n ...tableData,\n rows: tableData.rows.filter(({ id }) => id !== itemToDelete.id)\n };\n\n setTableData(updatedTableData);\n };\n\n const handleSort = async event => {\n const [[property, direction]] = Object.entries(event);\n const sortQueryParams = {\n ...queryParamsDefault,\n sort: [{ property, direction }]\n };\n setQueryParams(sortQueryParams);\n\n const { listingData } = await fetchData({\n client,\n querySettings: {\n entitySchema,\n queryParams: sortQueryParams\n },\n listFilters\n });\n const { columns, isEnquiry } = tableData;\n const [firstColumn] = columns;\n\n setTableData({\n ...tableData,\n appliedSort: { [property]: direction },\n rows: formatRows({\n rows: getParsedRowData(listingData),\n url: match.url,\n toggleModal,\n firstColumn,\n isEnquiry,\n entitySchema\n })\n });\n history.push('?page=1');\n };\n\n if (!tableData || !tableData.rows) return 'loading';\n\n const {\n displayProperties: {\n adminCrudActions: {\n create: createAction = { active: true },\n delete: _deleteAction = { active: true }\n } = {}\n } = {}\n } = entitySchema;\n\n const showAddButton = !tableData.rows.length && listFilters.length === 0;\n\n return (\n <div className=\"page\">\n {modalStatus &&\n _deleteAction.active && (\n <DeleteAction\n data-testid=\"deleteEntity\"\n onClose={toggleModal}\n deleteAction={deleteAction}\n itemName={itemToDelete.name}\n />\n )}\n <PageHeader title={entitySchema.displayName} subtitle=\"\">\n {createAction.active &&\n !showAddButton && (\n <Fragment>\n <Link\n data-testid=\"addEntity\"\n className=\"button button--small\"\n to={`${match.url}/create`}>\n Add\n </Link>\n <PageHeader.Actions>\n <More>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu />\n </More>\n </PageHeader.Actions>\n </Fragment>\n )}\n </PageHeader>\n {showAddButton ? (\n <CardPrompt>\n <Link\n className=\"button button--rounded button--cta\"\n to={`${match.url}/create`}\n data-testid=\"add-button\">\n Add\n </Link>\n </CardPrompt>\n ) : (\n <>\n <RenderHook\n hookKey=\"entity:listing:main:top\"\n schema={entitySchema}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n />\n <ListingTableContent\n totalItems={totalItems}\n currentPage={currentPage}\n onSort={handleSort}\n handleOnPageChange={handleOnPageChange}\n tableData={tableData}\n onCloseCardPrompt={onCloseCardPrompt}\n />\n </>\n )}\n </div>\n );\n};\nListingTable.propTypes = {\n entitySchema: PropTypes.object.isRequired,\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(ListingTable);\n"],"mappings":"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"}
@@ -3,6 +3,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
3
3
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
4
  import React from 'react';
5
5
  import { Link } from 'react-router-dom';
6
+ import { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';
6
7
  import TableActions from '../TableActions';
7
8
  import { ACTIONS } from '../../../constants';
8
9
  import InfoBoxValue from '../../InfoBoxes/presentational/InfoBoxValue';
@@ -13,14 +14,21 @@ const formatRows = ({
13
14
  toggleModal,
14
15
  label,
15
16
  firstColumn = 'name',
16
- isEnquiry
17
+ isEnquiry,
18
+ entitySchema
17
19
  }) => rows.map(data => {
18
20
  const editUrl = `${url}/update/${data.id}`;
19
21
  const rowProps = _objectSpread(_objectSpread({}, data), {}, {
20
- [firstColumn]: /*#__PURE__*/React.createElement(Link, {
22
+ [firstColumn]: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Link, {
21
23
  to: editUrl,
22
24
  role: "button"
23
- }, data[firstColumn])
25
+ }, data[firstColumn]), /*#__PURE__*/React.createElement(RenderHook, {
26
+ hookKey: "entity:listing:table:row:column:after",
27
+ schema: entitySchema,
28
+ data: data,
29
+ value: data[firstColumn],
30
+ column: firstColumn
31
+ }))
24
32
  });
25
33
  if (!isEnquiry) rowProps.actions = /*#__PURE__*/React.createElement(TableActions, {
26
34
  editUrl: editUrl,
@@ -119,7 +127,8 @@ const populateRows = ({
119
127
  rows: parsedRowData,
120
128
  url,
121
129
  toggleModal,
122
- isEnquiry
130
+ isEnquiry,
131
+ entitySchema
123
132
  }),
124
133
  isEnquiry
125
134
  };
@@ -1 +1 @@
1
- {"version":3,"file":"populate-rows.js","names":["React","Link","TableActions","ACTIONS","InfoBoxValue","InfoBoxLabel","formatRows","rows","url","toggleModal","label","firstColumn","isEnquiry","map","data","editUrl","id","rowProps","_objectSpread","createElement","to","role","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","length","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","item","buildArrayRowData","groupSize","Math","ceil","group1","slice","group2","group3","dataGroups","getParsedRowData","Object","keys","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","forEach","listingProperty","propKey","includes","split","push","parsedRowData","populateRows","entitySchema","schemaId","properties","dynamicProperties","formProperties","columnOptions","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\nimport InfoBoxValue from '../../InfoBoxes/presentational/InfoBoxValue';\nimport InfoBoxLabel from '../../InfoBoxes/presentational/InfoBoxLabel';\n\nconst formatRows = ({ rows, url, toggleModal, label, firstColumn = 'name', isEnquiry }) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => {\n if (!rowGroup.length) return null;\n return (\n <div className=\"table-row-list__group\">\n {rowGroup.map(item => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\">\n <InfoBoxLabel item={item} />\n </span>\n <span className=\"table-row-list__group__item__value\">\n <InfoBoxValue item={item} />\n </span>\n </div>\n ))}\n </div>\n );\n })}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const groupSize = Math.ceil(rowData.length / 3);\n const group1 = rowData.slice(0, groupSize);\n const group2 = rowData.slice(groupSize, groupSize * 2);\n const group3 = rowData.slice(groupSize * 2);\n const dataGroups = [group1, group2, group3];\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({ firstColumn, rows: parsedRowData, url, toggleModal, isEnquiry }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":"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"}
1
+ {"version":3,"file":"populate-rows.js","names":["React","Link","RenderHook","TableActions","ACTIONS","InfoBoxValue","InfoBoxLabel","formatRows","rows","url","toggleModal","label","firstColumn","isEnquiry","entitySchema","map","data","editUrl","id","rowProps","_objectSpread","createElement","Fragment","to","role","hookKey","schema","value","column","actions","showDeleteModal","getSanitizedColumnLabel","columnProp","sanitizedChar","index","length","toUpperCase","toLowerCase","buildArrayRowContent","rowData","className","rowGroup","item","buildArrayRowData","groupSize","Math","ceil","group1","slice","group2","group3","dataGroups","getParsedRowData","Object","keys","reduce","acc","key","parsedData","Array","isArray","getColumnsAndLabels","listingProperties","allProperties","columns","labels","forEach","listingProperty","propKey","includes","split","push","parsedRowData","populateRows","schemaId","properties","dynamicProperties","formProperties","columnOptions","identification","sort","orderBy"],"sources":["../../../../src/components/ListingTable/mappers/populate-rows.js"],"sourcesContent":["import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';\nimport TableActions from '../TableActions';\nimport { ACTIONS } from '../../../constants';\nimport InfoBoxValue from '../../InfoBoxes/presentational/InfoBoxValue';\nimport InfoBoxLabel from '../../InfoBoxes/presentational/InfoBoxLabel';\n\nconst formatRows = ({\n rows,\n url,\n toggleModal,\n label,\n firstColumn = 'name',\n isEnquiry,\n entitySchema\n}) =>\n rows.map(data => {\n const editUrl = `${url}/update/${data.id}`;\n const rowProps = {\n ...data,\n [firstColumn]: (\n <>\n <Link to={editUrl} role=\"button\">\n {data[firstColumn]}\n </Link>\n <RenderHook\n hookKey=\"entity:listing:table:row:column:after\"\n schema={entitySchema}\n data={data}\n value={data[firstColumn]}\n column={firstColumn}\n />\n </>\n )\n };\n if (!isEnquiry)\n rowProps.actions = (\n <TableActions editUrl={editUrl} data={data} showDeleteModal={toggleModal} />\n );\n return rowProps;\n });\n\nconst getSanitizedColumnLabel = columnProp => {\n let sanitizedChar = '';\n\n for (let index = 0; index < columnProp.length; index += 1) {\n if (index && columnProp[index] === columnProp[index].toUpperCase())\n sanitizedChar = `${sanitizedChar} ${columnProp[index].toLowerCase()}`;\n else sanitizedChar += columnProp[index];\n }\n return sanitizedChar;\n};\n\nconst buildArrayRowContent = rowData => (\n <div className=\"table-row-list\">\n {rowData.map(rowGroup => {\n if (!rowGroup.length) return null;\n return (\n <div className=\"table-row-list__group\">\n {rowGroup.map(item => (\n <div className=\"table-row-list__group__item\">\n <span className=\"table-row-list__group__item__label\">\n <InfoBoxLabel item={item} />\n </span>\n <span className=\"table-row-list__group__item__value\">\n <InfoBoxValue item={item} />\n </span>\n </div>\n ))}\n </div>\n );\n })}\n </div>\n);\n\nconst buildArrayRowData = rowData => {\n const groupSize = Math.ceil(rowData.length / 3);\n const group1 = rowData.slice(0, groupSize);\n const group2 = rowData.slice(groupSize, groupSize * 2);\n const group3 = rowData.slice(groupSize * 2);\n const dataGroups = [group1, group2, group3];\n\n return buildArrayRowContent(dataGroups);\n};\n\nconst getParsedRowData = rows =>\n rows.map(rowData =>\n Object.keys(rowData).reduce((acc, key) => {\n const parsedData = Array.isArray(rowData[key])\n ? buildArrayRowData(rowData[key])\n : rowData[key];\n return { ...acc, [key]: parsedData };\n }, {})\n );\n\nconst getColumnsAndLabels = (listingProperties, allProperties, rows) => {\n const columns = [];\n const labels = {};\n\n listingProperties.forEach(listingProperty => {\n const propKey = listingProperty.includes(' ') ? listingProperty.split(' ')[0] : listingProperty;\n const { label } = allProperties[propKey] || {};\n columns.push(propKey);\n labels[propKey] = label || getSanitizedColumnLabel(propKey);\n });\n const parsedRowData = getParsedRowData(rows);\n\n return { columns, labels, parsedRowData };\n};\n\nconst populateRows = ({ toggleModal, url, entitySchema, rows }) => {\n const {\n id: schemaId,\n listingProperties,\n properties,\n dynamicProperties = {},\n formProperties\n } = entitySchema;\n\n const isEnquiry = schemaId === 'enquiry';\n const columnOptions = !isEnquiry ? [...listingProperties, ACTIONS] : [...listingProperties];\n\n const allProperties = { ...properties, ...dynamicProperties };\n const { columns, labels, parsedRowData } = getColumnsAndLabels(\n columnOptions,\n allProperties,\n rows\n );\n const [firstColumn] = columns;\n\n return {\n identification: 'id',\n sort: null,\n columns,\n labels,\n orderBy: [...formProperties],\n rows: formatRows({\n firstColumn,\n rows: parsedRowData,\n url,\n toggleModal,\n isEnquiry,\n entitySchema\n }),\n isEnquiry\n };\n};\n\nexport { populateRows, formatRows, getParsedRowData };\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/plugin-data-ui",
3
- "version": "0.146.0-core-styles.0",
3
+ "version": "0.146.0-core-styles.3",
4
4
  "description": "Blaze plugin data ui",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -30,15 +30,15 @@
30
30
  "@blaze-cms/admin-ui-utils": "0.145.1-core-styles.0",
31
31
  "@blaze-cms/core-errors": "0.145.1-core-styles.0",
32
32
  "@blaze-cms/plugin-render-hooks-ui": "0.145.1-core-styles.0",
33
- "@blaze-cms/react-form-builder": "0.145.1-core-styles.0",
34
- "@blaze-cms/react-page-builder": "0.146.0-core-styles.0",
33
+ "@blaze-cms/react-form-builder": "0.146.0-core-styles.3",
34
+ "@blaze-cms/react-page-builder": "0.146.0-core-styles.3",
35
35
  "@blaze-cms/setup-ui": "0.145.1-core-styles.0",
36
- "@blaze-cms/versioning-ui": "0.145.1-core-styles.0",
37
- "@blaze-react/button": "0.5.19",
36
+ "@blaze-cms/versioning-ui": "0.146.0-core-styles.3",
37
+ "@blaze-react/button": "0.8.0-alpha.82",
38
38
  "@blaze-react/more": "0.5.19",
39
39
  "@blaze-react/multiselect": "0.8.0-alpha.78",
40
40
  "@blaze-react/pagination": "0.8.0-alpha.76",
41
- "@blaze-react/select": "0.8.0-alpha.64",
41
+ "@blaze-react/select": "0.8.0-alpha.80",
42
42
  "@blaze-react/table": "0.8.0-alpha.74",
43
43
  "@blaze-react/toaster": "0.5.17",
44
44
  "@blaze-react/utils": "0.5.15",
@@ -67,5 +67,5 @@
67
67
  "lib/*",
68
68
  "lib-es/*"
69
69
  ],
70
- "gitHead": "a222f4ecc1065d1278a8fc4f0fc909a5e46870c5"
70
+ "gitHead": "247f73f1821c9f1e328c7ef04caec75e40afaa99"
71
71
  }
@@ -13,6 +13,7 @@ const EntityNavLinks = ({ schema }) => {
13
13
  const links = Object.entries(adminSectionNavigation).map(([k, v]) => {
14
14
  const { label, uri } = v;
15
15
  const Wrapper = uri.startsWith('#') ? 'a' : Link;
16
+
16
17
  return (
17
18
  <Wrapper className="entity-section-link" href={uri} to={uri}>
18
19
  {label}
@@ -138,7 +138,8 @@ const ListingTable = ({ match, entitySchema, history }) => {
138
138
  url: match.url,
139
139
  toggleModal,
140
140
  firstColumn,
141
- isEnquiry
141
+ isEnquiry,
142
+ entitySchema
142
143
  })
143
144
  });
144
145
  history.push('?page=1');
@@ -1,19 +1,37 @@
1
1
  import React from 'react';
2
2
  import { Link } from 'react-router-dom';
3
+ import { RenderHook } from '@blaze-cms/plugin-render-hooks-ui';
3
4
  import TableActions from '../TableActions';
4
5
  import { ACTIONS } from '../../../constants';
5
6
  import InfoBoxValue from '../../InfoBoxes/presentational/InfoBoxValue';
6
7
  import InfoBoxLabel from '../../InfoBoxes/presentational/InfoBoxLabel';
7
8
 
8
- const formatRows = ({ rows, url, toggleModal, label, firstColumn = 'name', isEnquiry }) =>
9
+ const formatRows = ({
10
+ rows,
11
+ url,
12
+ toggleModal,
13
+ label,
14
+ firstColumn = 'name',
15
+ isEnquiry,
16
+ entitySchema
17
+ }) =>
9
18
  rows.map(data => {
10
19
  const editUrl = `${url}/update/${data.id}`;
11
20
  const rowProps = {
12
21
  ...data,
13
22
  [firstColumn]: (
14
- <Link to={editUrl} role="button">
15
- {data[firstColumn]}
16
- </Link>
23
+ <>
24
+ <Link to={editUrl} role="button">
25
+ {data[firstColumn]}
26
+ </Link>
27
+ <RenderHook
28
+ hookKey="entity:listing:table:row:column:after"
29
+ schema={entitySchema}
30
+ data={data}
31
+ value={data[firstColumn]}
32
+ column={firstColumn}
33
+ />
34
+ </>
17
35
  )
18
36
  };
19
37
  if (!isEnquiry)
@@ -117,7 +135,14 @@ const populateRows = ({ toggleModal, url, entitySchema, rows }) => {
117
135
  columns,
118
136
  labels,
119
137
  orderBy: [...formProperties],
120
- rows: formatRows({ firstColumn, rows: parsedRowData, url, toggleModal, isEnquiry }),
138
+ rows: formatRows({
139
+ firstColumn,
140
+ rows: parsedRowData,
141
+ url,
142
+ toggleModal,
143
+ isEnquiry,
144
+ entitySchema
145
+ }),
121
146
  isEnquiry
122
147
  };
123
148
  };