{"version":3,"sources":["webpack:///./src/modules/person/index.js","webpack:///./src/modules/_defaults/mutations.js","webpack:///./src/modules/_defaults/columns.js","webpack:///./src/modules/_defaults/getters.js","webpack:///./src/modules/person/columns.js","webpack:///./src/modules/_defaults/state.js"],"names":["apiEndpoint","namespace","clientRoute","dependencies","params","include","odataInclude","excelExport","select","titleColumn","subtitleColumn","infoColumns","fakeColumns","isActive","membershipType","companyDivision","userName","state","columns","defaultSort","__webpack_exports__","namespaced","createState","Object","assign","getters","createGetters","mutations","createMutations","actions","createActions","arguments","length","undefined","SET_FILTER","_ref","field","value","Vue","set","settings","filters","SET_FILTER_LETTER","_ref2","letter","letters","SET_COLUMN_FILTER","_ref3","SET_QUICK_EDIT","payload","CLEAR_COLUMN_FILTER","FILTERS_CLEAR","defaultSettings","SET_LAYOUT","SET_PAGINATION","SET_TOTAL_RESULTS","pagination","SET_VISIBLE_COLUMNS","HIDE_COLUMN","column","visibleColumns","SET_SEARCH","SORT","_ref4","direction","SETTINGS","_ref5","SET_SETTING","_ref6","SAVE_SETTINGS","SETTINGS_RESET","LAYOUT","FETCH_ALL","data","EXCEL_DOWN","url","EXCEL_DOWN_PRETTY","GUEST_DATA","option","UNAPPROVED_DATA","API_INSERT","id","recordIndex","records","findIndex","record","push","API_DESTROY","index","r","splice","API_UPDATE","_ref7","updates","dateSort","a","b","_a","Date","parse","_b","numberSort","parseInt","stringSort","toString","localeCompare","relationSortId","relationSortLength","booleanComponent","is","filterIs","props","trueValue","falseValue","options","label","inputTextField","_ref$type","type","_ref$req","req","_ref$validation","validation","_ref$money","money","_ref$max","max","_ref$min","min","required","numeric","between","email","maxlength","decimals","readonly","disable","relationField","_ref2$props","_ref2$label","_ref2$type","_ref2$namespace","localKey","fk","_ref2$componentIs","componentIs","_ref2$filterIs","_ref2$validation","_ref2$parentRestraint","parentRestraint","_ref2$requiresParentS","requiresParentSave","_ref2$saveBeforeAndAf","saveBeforeAndAfter","_ref2$linkTable","linkTable","_ref2$linkTableModel","linkTableModel","_ref2$fieldType","fieldType","_ref2$directSearch","directSearch","_ref2$searchColumns","searchColumns","_ref2$orderBy","orderBy","_ref2$filterable","filterable","_ref2$searchable","searchable","_ref2$sortable","sortable","component","sort","relation","fileField","_ref3$req","_ref3$multiple","multiple","_ref3$label","mediaCollection","_ref3$extensions","extensions","_ref3$visible","visible","_ref3$description","description","extend","name","section","align","media","sendRaw","method","headers","additionalFields","inputRequired","editorComponent","toolbarFlat","toolbarOutline","color","toolbar","icon","list","fixedLabel","fixedIcon","defaultColumn","roles","searchType","displayValue","noSave","createColumn","hasOwnProperty","defaultColumns","defaultValue","states","require","stateOptions","keys","map","key","addressFields","_ref4$req","filter","autofocusFilter","editActionColumn","deleteActionColumn","defaultGetters","find","relatedId","parentResource","concat","relations","c","selectedRows","selected","filterColumns","layout","columnsByField","reduce","obj","_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default","col","search","countTotal","defaultPagination","sortBy","descending","page","rowsPerPage","rowsNumber","runTime","groupedByField","model","normalizeModel","gt","row","returnVal","firstName","trim","lastName","emailAddress","homeNumber","cellNumber","workNumber","formDisplay","membership","showBrowse","val","company","output","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","Symbol","iterator","next","done","division","err","return","allowEdit","config","clearValue","format24h","format","clearable","filterCustom","holdFromEdit","azOpen","defaultState","quickEditId","idList","defaultFilter","loading","filterKeys","Array","isArray","unshift","columnLength","shvl"],"mappings":"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","file":"js/a1943bbe.b6a8b62b.js","sourcesContent":["import {columns} from './columns'\r\nimport createState from '../_defaults/state'\r\nimport createGetters from '../_defaults/getters'\r\nimport createMutations from '../_defaults/mutations'\r\nimport createActions from '../_defaults/actions'\r\n\r\n/* -------- CONFIG ----------- */\r\nexport const apiEndpoint = '/api/person'\r\nexport const namespace = 'person'\r\nexport const clientRoute = '/person'\r\nexport const dependencies = ['address', 'aspnetuser', 'personCommittee', 'committee', 'personDietOption', 'dietOption', 'company', 'companyDivision', 'division', 'personGrouping', 'grouping', 'membership', 'membershipType']\r\nexport const params = {\r\n include: 'company[membership],aspnetuser,address,personCommittee[committee],personDietOption[dietOption],personGrouping[grouping]',\r\n odataInclude: 'Company($expand=Membership($expand=MembershipType),CompanyDivision($expand=Division)),Aspnetuser,Address,PersonCommittee($expand=Committee),PersonDietOption($expand=DietOption),PersonGrouping($expand=Grouping)'\r\n}\r\nexport const excelExport = {\r\n select: 'firstName,lastName,profession,emailAddress,secondaryEmailAddress,cellNumber,workNumber,spouseName,gender,doNotShare,dietComment,adaRequired,adaComment,toolboxExpiration',\r\n include:\r\n 'company($select=name,phoneNumber,faxNumber,url,artba,unionStatus,minorityWomanVeteranBusiness,agcaIdentifier,cafIpfValue,cafIpfYear,chaseLevel,chaseLevel1Value,chaseLevel2Value,chaseLevel3Value,chaseLevel3Year,chaseMemberSince,leadershipBlueprint,yearFounded,contractAccess,contractExpiration,directoryNameTitle,profile),' +\r\n 'address($select=description,line1,suiteNumber,city,zipCode,stateSenateDistrict,stateHouseDistrict,federalHouseDistrict;$expand=State($select=code)),' +\r\n 'personCommittee($select=committee;$expand=committee($select=name)),' +\r\n 'personDietOption($select=dietOption;$expand=dietOption($select=description)),' +\r\n 'personGrouping($select=grouping;$expand=grouping($select=description))'\r\n}\r\n/* --------------------------- */\r\n\r\n/* -------- LABELS ----------- */\r\nconst titleColumn = 'fullName'\r\nconst subtitleColumn = 'contactInfo'\r\nconst infoColumns = ['emailAddress', 'homeNumber', 'workNumber', 'cellNumber']\r\nconst fakeColumns = {\r\n isActive: 'company',\r\n membershipType: 'company',\r\n companyDivision: 'companyDivision',\r\n userName: 'aspnetuser'\r\n // contactType: 'company'\r\n}\r\n/* --------------------------- */\r\n\r\nconst state = {\r\n columns,\r\n defaultSort: 'lastName',\r\n apiEndpoint,\r\n namespace,\r\n dependencies,\r\n clientRoute,\r\n params,\r\n excelExport,\r\n titleColumn,\r\n subtitleColumn,\r\n infoColumns,\r\n fakeColumns\r\n}\r\n\r\nexport default {\r\n namespaced: true,\r\n state: createState(Object.assign(state, { namespace })),\r\n getters: createGetters(),\r\n mutations: createMutations(),\r\n actions: createActions()\r\n}\r\n","import { defaultSettings } from './state.js'\r\nimport Vue from 'vue'\r\n// const { filters } = defaultSettings\r\n\r\nconst createMutations = (mutations = {}) =>\r\n Object.assign(\r\n {},\r\n {\r\n SET_FILTER (state, { field, value }) {\r\n Vue.set(state.settings.filters, field, value)\r\n },\r\n SET_FILTER_LETTER (state, { letter, value }) {\r\n Vue.set(state.settings.filters.letters, letter, value)\r\n /*\r\n let selectedLetters = state.invoiceAddress.filters.letters\r\n if (!value && selectedLetters[letter]) {\r\n // console.log('> remove letter', letter)\r\n delete selectedLetters[letter]\r\n state.invoiceAddress.filters = Object.assign({}, state.invoiceAddress.filters)\r\n } else {\r\n state.invoiceAddress.filters.letters = Object.assign({}, state.invoiceAddress.filters.letters, {\r\n [letter]: true\r\n })\r\n }\r\n */\r\n },\r\n SET_COLUMN_FILTER (state, { field, value }) {\r\n Vue.set(state.settings.filters.columns, field, value)\r\n },\r\n SET_QUICK_EDIT (state, payload) {\r\n Vue.set(state, 'quickEditId', payload)\r\n },\r\n CLEAR_COLUMN_FILTER (state, field) {\r\n Vue.set(state.settings.filters.columns, field, null)\r\n },\r\n FILTERS_CLEAR (state) {\r\n Vue.set(state, 'settings', Object.assign({}, defaultSettings))\r\n },\r\n SET_LAYOUT (state, payload) {\r\n Vue.set(state.settings, 'layout', payload)\r\n },\r\n SET_PAGINATION (state, payload) {\r\n Vue.set(state.settings, 'pagination', payload)\r\n },\r\n SET_TOTAL_RESULTS (state, payload) {\r\n Vue.set(state.settings.pagination, 'rowsNumber', payload)\r\n },\r\n SET_VISIBLE_COLUMNS (state, payload) {\r\n Vue.set(state.settings, 'visibleColumns', payload)\r\n },\r\n HIDE_COLUMN (state, column) {\r\n if (state.settings.visibleColumns[column]) {\r\n Vue.set(state.settings.visibleColumns, column, false)\r\n }\r\n },\r\n SET_SEARCH (state, value) {\r\n Vue.set(state.settings.filters, 'search', value)\r\n },\r\n SORT (state, { field, direction }) {\r\n Vue.set(state.settings, 'sortField', field)\r\n Vue.set(state.settings, 'sortDirection', direction)\r\n /*\r\n state.invoiceAddress = Object.assign({}, state.invoiceAddress, {\r\n sortField: field,\r\n sortDirection: direction\r\n })\r\n */\r\n },\r\n SETTINGS (state, { field, value }) {\r\n Vue.set(state.settings, field, value)\r\n },\r\n SET_SETTING (state, { field, value }) {\r\n Vue.set(state.settings, field, value)\r\n },\r\n SAVE_SETTINGS (state, payload) {\r\n Vue.set(state, 'settings', payload)\r\n },\r\n SETTINGS_RESET (state) {\r\n Vue.set(state, 'settings', defaultSettings)\r\n },\r\n LAYOUT (state, value) {\r\n Vue.set(state.settings, 'layout', value)\r\n },\r\n FETCH_ALL (state, data) {\r\n Vue.set(state, 'records', data)\r\n },\r\n EXCEL_DOWN (state, url) {\r\n Vue.set(state, 'excelUrl', url)\r\n },\r\n EXCEL_DOWN_PRETTY (state, url) {\r\n Vue.set(state, 'excelPrettyUrl', url)\r\n },\r\n GUEST_DATA (state, option) {\r\n Vue.set(state, 'guestData', option)\r\n },\r\n UNAPPROVED_DATA (state, option) {\r\n Vue.set(state, 'unapprovedData', option)\r\n },\r\n API_INSERT (state, data) {\r\n const { id } = data\r\n if (id) {\r\n const recordIndex = state.records.findIndex(record => record.id === id)\r\n if (recordIndex === -1) {\r\n state.records.push(data)\r\n } else {\r\n Vue.set(state.records, recordIndex, data)\r\n }\r\n } else {\r\n state.records.push(data)\r\n }\r\n },\r\n API_DESTROY (state, id) {\r\n const index = state.records.findIndex(r => r.id === id)\r\n if (index !== -1) {\r\n state.records.splice(index, 1)\r\n }\r\n },\r\n API_UPDATE (state, { id, updates }) {\r\n const index = state.records.findIndex(r => r.id === id)\r\n Vue.set(state.records, index, updates)\r\n }\r\n },\r\n mutations\r\n )\r\n\r\nexport default createMutations\r\n","import { extend } from 'quasar'\r\n// const uuidv4 = require('uuid/v4')\r\n\r\nexport const dateSort = (a, b) => {\r\n let _a = Date.parse(a)\r\n let _b = Date.parse(b)\r\n return _a - _b\r\n}\r\n// export const guid = uuidv4()\r\nexport const numberSort = (a, b) => parseInt(a, 10) - parseInt(b, 10)\r\nexport const stringSort = (a, b) => a.toString().localeCompare(b.toString())\r\nexport const relationSortId = (a, b) => numberSort(a.id, b.id)\r\nexport const relationSortLength = (a, b) => numberSort(a.length, b.length)\r\nexport const booleanComponent = {\r\n // is: 'q-select',\r\n // is: 'q-checkbox',\r\n is: 'q-toggle',\r\n filterIs: 'select-filter',\r\n props: {\r\n trueValue: true,\r\n falseValue: false,\r\n // color: 'primary',\r\n options: [\r\n {\r\n label: 'Yes',\r\n value: true\r\n },\r\n {\r\n label: 'No',\r\n value: false\r\n }\r\n ]\r\n }\r\n}\r\nexport const inputTextField = ({ type = 'text', req = false, validation = null, money = false, max = null, min = null }) => {\r\n if (!validation) {\r\n validation = {}\r\n if (req) {\r\n validation.required = true\r\n }\r\n if (type === 'string') {\r\n validation.min = 1\r\n }\r\n if (type === 'number' && !money) {\r\n validation.numeric = true\r\n if (max && min) {\r\n validation.between = [min, max]\r\n }\r\n }\r\n if (type === 'email') {\r\n validation.email = true\r\n }\r\n }\r\n return {\r\n is: 'q-input',\r\n props: {\r\n type: type,\r\n maxlength: max || 500,\r\n decimals: money ? 2 : null,\r\n readonly: false,\r\n disable: false\r\n },\r\n validation: validation\r\n }\r\n}\r\n/**\r\n * @param props\r\n * @param type\r\n * @param label\r\n * @param namespace\r\n * @param localKey\r\n * @param fk\r\n * @param componentIs\r\n * @param filterIs\r\n * @param validation\r\n * @param parentRestraint\r\n * @param saveBeforeAndAfter\r\n * @returns {{sort: boolean, sortable: boolean, component: {is: (*|string), filterIs: string, props, validation}, relation: {type: string, label: string, namespace: string, localKey: *, fk: *, nested: *, subtitle: *, parentRestraint: boolean, saveBeforeAndAfter: boolean}}}\r\n */\r\nexport const relationField = ({\r\n props = {},\r\n label = 'label',\r\n type = 'one',\r\n namespace = 'self',\r\n localKey,\r\n fk,\r\n componentIs = null,\r\n filterIs = 'text-filter',\r\n validation = {},\r\n parentRestraint = false,\r\n requiresParentSave = false,\r\n saveBeforeAndAfter = false,\r\n linkTable = false,\r\n linkTableModel = null,\r\n fieldType = 'text',\r\n directSearch = false,\r\n searchColumns = false,\r\n orderBy = false,\r\n filterable = true,\r\n searchable = true,\r\n sortable = true\r\n}) => {\r\n const component = type === 'one' ? 'relation-field-one' : 'relation-field-many'\r\n return {\r\n filterable: filterable,\r\n searchable: searchable,\r\n sort: sortable && type === 'one',\r\n sortable: sortable && type === 'one',\r\n component: {\r\n is: componentIs || component,\r\n filterIs,\r\n props,\r\n validation\r\n },\r\n relation: {\r\n label: label || 'label',\r\n type: type || 'one',\r\n namespace: namespace || 'self',\r\n localKey: localKey,\r\n fk: fk,\r\n fieldType: fieldType,\r\n directSearch,\r\n parentRestraint,\r\n requiresParentSave,\r\n saveBeforeAndAfter,\r\n linkTable,\r\n linkTableModel,\r\n searchColumns,\r\n orderBy\r\n }\r\n }\r\n}\r\n\r\nexport const fileField = ({ req = false, multiple = false, field, label = 'File', mediaCollection, extensions = '.pdf,.xls,.xlsx,.doc,.docx', visible = true, description = '' }) =>\r\n extend(\r\n true,\r\n {},\r\n {\r\n label: label,\r\n field: field,\r\n name: field,\r\n section: 'Files',\r\n sort: false,\r\n sortable: false,\r\n filterable: false,\r\n visible: visible,\r\n searchable: false,\r\n align: 'left',\r\n type: 'file',\r\n description,\r\n component: {\r\n is: 'file-upload-field',\r\n media: mediaCollection,\r\n validation: {\r\n required: req\r\n },\r\n props: {\r\n extensions,\r\n sendRaw: false,\r\n name: 'file',\r\n method: 'POST',\r\n multiple,\r\n headers: {},\r\n additionalFields: [\r\n {\r\n name: 'media',\r\n value: mediaCollection\r\n }\r\n ]\r\n }\r\n }\r\n }\r\n )\r\n\r\nexport const inputRequired = {\r\n is: 'q-input',\r\n props: {},\r\n validation: {\r\n required: true\r\n }\r\n}\r\nexport const editorComponent = {\r\n is: 'q-editor',\r\n filterIs: 'text-filter',\r\n props: {\r\n toolbarFlat: true,\r\n toolbarOutline: false,\r\n color: 'grey-9',\r\n toolbar: [\r\n ['bold', 'italic', 'strike', 'underline'],\r\n ['token', 'hr', 'link'],\r\n [\r\n {\r\n label: 'Headline',\r\n icon: 'title',\r\n list: 'no-icons',\r\n options: ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'code']\r\n },\r\n {\r\n label: 'Font Size',\r\n icon: 'format_size',\r\n fixedLabel: true,\r\n fixedIcon: true,\r\n list: 'no-icons',\r\n options: ['size-1', 'size-2', 'size-3', 'size-4', 'size-5', 'size-6', 'size-7']\r\n },\r\n 'removeFormat'\r\n ]\r\n ]\r\n }\r\n}\r\nexport const defaultColumn = {\r\n name: '',\r\n field: 'label',\r\n label: '',\r\n visible: true,\r\n searchable: true,\r\n filterable: true,\r\n roles: [],\r\n type: 'string',\r\n searchType: null,\r\n icon: null,\r\n sortable: true,\r\n displayValue: undefined,\r\n noSave: false,\r\n component: {\r\n is: 'q-input',\r\n props: {},\r\n validation: {}\r\n },\r\n align: 'left'\r\n}\r\nexport const createColumn = options =>\r\n extend(\r\n true,\r\n {},\r\n defaultColumn,\r\n {\r\n name: options.field,\r\n label: options.label || options.field || 'no label',\r\n section: 'General',\r\n description: '',\r\n filterable: options.hasOwnProperty('filterable') ? options.filterable : options.hasOwnProperty('searchable') ? options.searchable : defaultColumn.filterable,\r\n sort: options.type === 'number' ? numberSort : null\r\n },\r\n options\r\n )\r\nexport const defaultColumns = [\r\n createColumn({\r\n label: 'ID',\r\n field: 'id',\r\n visible: false,\r\n searchable: true,\r\n type: 'number',\r\n sortable: true,\r\n filterable: true,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Date Deleted',\r\n field: 'removalDate',\r\n type: 'date',\r\n section: 'Data Info',\r\n visible: false,\r\n searchable: true,\r\n filterable: true,\r\n sortable: true,\r\n defaultValue: null,\r\n component: null\r\n /*\r\n component: {\r\n is: 'q-datetime',\r\n props: {\r\n type: 'datetime',\r\n disable: true\r\n }\r\n }\r\n */\r\n })\r\n // createColumn({\r\n // label: 'Updated',\r\n // field: 'updatedAt',\r\n // visible: false,\r\n // searchable: false,\r\n // type: 'string',\r\n // sortable: true,\r\n // component: null\r\n // }),\r\n // createColumn({\r\n // label: 'Created',\r\n // field: 'createdAt',\r\n // visible: false,\r\n // searchable: false,\r\n // type: 'string',\r\n // sortable: true,\r\n // component: null\r\n // })\r\n /*\r\n createColumn({\r\n label: 'Edit',\r\n field: 'action_edit',\r\n visible: true,\r\n searchable: false,\r\n filterable: false,\r\n align: 'left',\r\n type: 'action-edit',\r\n sortable: false,\r\n component: null\r\n })\r\n */\r\n]\r\n\r\nconst states = require('../../json/states.json')\r\n\r\nexport const stateOptions = Object.keys(states).map(key => {\r\n return {\r\n label: states[key],\r\n value: key\r\n }\r\n})\r\n\r\nexport const addressFields = ({ req = false }) => [\r\n createColumn({\r\n label: 'Address',\r\n field: 'address',\r\n section: 'Address',\r\n visible: false,\r\n sortable: true,\r\n component: inputTextField({ req: req })\r\n }),\r\n createColumn({\r\n label: 'City',\r\n field: 'city',\r\n section: 'Address',\r\n visible: false,\r\n sortable: true,\r\n component: inputTextField({ req: req })\r\n }),\r\n createColumn({\r\n label: 'State',\r\n field: 'state',\r\n section: 'Address',\r\n visible: true,\r\n sortable: true,\r\n component: {\r\n is: 'q-select',\r\n filterIs: 'select-filter',\r\n validation: { required: req },\r\n props: {\r\n options: stateOptions,\r\n filter: true,\r\n autofocusFilter: true\r\n }\r\n }\r\n }),\r\n createColumn({\r\n label: 'Zip',\r\n field: 'zip',\r\n section: 'Address',\r\n visible: false,\r\n sortable: true,\r\n component: inputTextField({ req: req })\r\n })\r\n]\r\n\r\nexport const editActionColumn = createColumn({\r\n label: 'Edit',\r\n field: 'action_edit',\r\n visible: true,\r\n searchable: false,\r\n filterable: false,\r\n align: 'left',\r\n type: 'action',\r\n sortable: false,\r\n component: null\r\n})\r\n\r\nexport const deleteActionColumn = createColumn({\r\n label: 'Delete',\r\n field: 'action_delete',\r\n visible: true,\r\n searchable: false,\r\n filterable: false,\r\n align: 'right',\r\n type: 'action',\r\n sortable: false,\r\n component: null\r\n})\r\n","import { normalizeModel } from '../../utils/normalize'\r\nimport { extend } from 'quasar'\r\n\r\nconst defaultGetters = {\r\n list: state => (state.records && state.records.length ? state.records : []),\r\n find: (state, getters) => id => getters.list.find(r => r.id === id),\r\n namespace: state => state.namespace,\r\n apiEndpoint: state => relatedId => {\r\n if (relatedId && state.parentResource) {\r\n return `${state.parentResource}/${relatedId}${state.apiEndpoint}`\r\n }\r\n return state.apiEndpoint\r\n },\r\n relations: (state, getters) => getters.columns.filter(c => c.relation && c.relation.namespace && c.relation.namespace !== state.namespace) || [],\r\n settings: state => state.settings,\r\n selectedRows: (state, getters) => getters.settings.selected,\r\n filters: (state, getters) => getters.settings.filters,\r\n filterColumns: (state, getters) => getters.filters.columns,\r\n layout: state => state.settings.layout,\r\n columns: state => state.columns,\r\n columnsByField: state => state.columns.reduce((obj, column) => Object.assign(obj, { [column.field]: column }), {}),\r\n column: (state, getters) => field => getters.columnsByField[field],\r\n defaultColumns: (state, getters) => {\r\n return getters.columns.filter(col => (col.visible || col.required) && (col !== null && col !== undefined && col.field) && (col.component && col.component.is) && col.field !== 'action')\r\n },\r\n visibleColumns: (state, getters) => {\r\n if (getters.settings.visibleColumns.length) {\r\n return getters.settings.visibleColumns.map(c => getters.column(c)).filter(c => c !== null && c !== undefined && c.field)\r\n }\r\n return getters.columns.filter(col => (col.visible || col.required) && (col !== null && col !== undefined && col.field))\r\n },\r\n titleColumn: (state, getters) => (state.titleColumn ? getters.columnsByField[state.titleColumn] : state.columns[0]),\r\n subtitleColumn: (state, getters) => (state.subtitleColumn ? getters.columnsByField[state.subtitleColumn] : undefined),\r\n infoColumns: (state, getters) => (state.infoColumns.length ? state.infoColumns.map(field => getters.columnsByField[field]) : []),\r\n search: (state, getters) => getters.filters.search || [],\r\n countTotal: state => state.records.length || 0,\r\n pagination: (state, getters) => {\r\n const defaultPagination = {\r\n sortBy: null,\r\n descending: false,\r\n page: 1,\r\n rowsPerPage: 25,\r\n rowsNumber: 25\r\n }\r\n const runTime = {\r\n rowsNumber: getters.countTotal\r\n }\r\n return extend(true, {}, defaultPagination, state.settings.pagination, runTime)\r\n },\r\n groupedByField: (state, getters) => getters.settings.groupedByField,\r\n // parentFakeColumns: (state, getters, rootState) => (state.parentResource && rootState[state.parentResource] ? rootState[state.parentResource].fakeColumns : []),\r\n // parentColumns: (state, getters, rootState, rootGetters) => (state.parentResource ? rootGetters[state.parentResource] : []),\r\n // model: (state, getters) => normalizeModel(getters.columns, {}, getters.parentFakeColumns)\r\n model: (state, getters) => normalizeModel(getters.columns, {}, state)\r\n}\r\n\r\nexport default gt => {\r\n return extend(true, {}, defaultGetters, gt)\r\n}\r\n","import {booleanComponent, createColumn, defaultColumns, inputTextField, relationField} from '../_defaults/columns'\r\n\r\nexport const columns = [\r\n createColumn({\r\n label: 'Full Name',\r\n field: 'fullName',\r\n noSave: true,\r\n displayValue: row => {\r\n let returnVal = ''\r\n if (row.firstName && row.firstName.trim()) {\r\n returnVal = row.firstName.trim()\r\n }\r\n if (row.lastName && row.lastName.trim()) {\r\n returnVal = returnVal + ' ' + row.lastName.trim()\r\n }\r\n return returnVal\r\n },\r\n component: null,\r\n visible: false,\r\n filterable: false,\r\n sortable: false\r\n }),\r\n createColumn({\r\n label: 'Contact Info',\r\n field: 'contactInfo',\r\n noSave: true,\r\n displayValue: row => {\r\n let returnVal = ''\r\n if (row.emailAddress && row.emailAddress.trim()) {\r\n returnVal = row.emailAddress.trim() + ' '\r\n }\r\n if (row.homeNumber && row.homeNumber.trim()) {\r\n returnVal = returnVal + ' H: ' + row.homeNumber.trim()\r\n }\r\n if (row.cellNumber && row.cellNumber.trim()) {\r\n returnVal = returnVal + ' C: ' + row.cellNumber.trim()\r\n }\r\n if (row.workNumber && row.workNumber.trim()) {\r\n returnVal = returnVal + ' W: ' + row.workNumber.trim()\r\n }\r\n return returnVal\r\n },\r\n component: null,\r\n visible: false,\r\n filterable: false,\r\n sortable: false\r\n }),\r\n createColumn({\r\n label: 'First Name',\r\n field: 'firstName',\r\n // section: 'Basics',\r\n component: inputTextField({ req: true, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Middle Name',\r\n field: 'middleName',\r\n // section: 'Basics',\r\n visible: false,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Last Name',\r\n field: 'lastName',\r\n // section: 'Basics',\r\n component: inputTextField({ req: true, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Suffix',\r\n field: 'suffix',\r\n visible: false,\r\n // section: 'Basics',\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Old Title',\r\n field: 'title',\r\n // section: 'Basics',\r\n visible: false,\r\n searchable: false,\r\n sortable: false,\r\n filterable: false,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Title',\r\n field: 'profession',\r\n // section: 'Basics',\r\n description: 'Professional title, such as CEO, President, etc',\r\n component: inputTextField({ req: false, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Guest',\r\n field: 'guestData',\r\n type: 'boolean',\r\n // section: 'Basics',\r\n defaultValue: null,\r\n visible: false,\r\n searchable: false,\r\n sortable: false,\r\n filterable: false,\r\n component: booleanComponent,\r\n description: 'This person does not show in normal searches. The record was generated from event registration, donation, or purchase.'\r\n }),\r\n createColumn({\r\n label: 'Company',\r\n field: 'company',\r\n // section: 'Basics',\r\n ...relationField({\r\n validation: { required: false },\r\n type: 'one',\r\n localKey: 'companyId',\r\n fk: 'id',\r\n namespace: 'company',\r\n filterIs: 'text-filter',\r\n label: 'name'\r\n })\r\n }),\r\n createColumn({\r\n // FAKE FIELD\r\n label: 'Company is Member',\r\n field: 'isActive',\r\n noSave: true,\r\n formDisplay: false,\r\n // section: 'Basics',\r\n displayValue: obj => {\r\n if (obj && obj.membership && obj.membership.isActive) {\r\n return 'Yes'\r\n } else {\r\n return 'No'\r\n }\r\n },\r\n ...relationField({\r\n type: 'one',\r\n namespace: 'membership',\r\n localKey: 'id',\r\n fk: 'membershipId',\r\n directSearch: 'Company/Membership/isActive',\r\n fieldType: 'boolean',\r\n is: 'q-select',\r\n filterIs: 'select-filter',\r\n label: 'isActive',\r\n props: {\r\n options: [\r\n {\r\n label: 'Yes',\r\n value: 1\r\n },\r\n {\r\n label: 'No',\r\n value: 0\r\n }\r\n ]\r\n }\r\n })\r\n }),\r\n createColumn({\r\n // FAKE FIELD\r\n label: 'Membership Type',\r\n field: 'membershipType',\r\n formDisplay: false,\r\n noSave: true,\r\n displayValue: obj => {\r\n if (obj && obj.membership && obj.membership.membershipType && obj.membership.membershipType) {\r\n return obj.membership.membershipType.description\r\n } else {\r\n return ''\r\n }\r\n },\r\n ...relationField({\r\n type: 'one',\r\n namespace: 'membership',\r\n localKey: 'id',\r\n fk: 'membershipId',\r\n fieldType: 'number',\r\n directSearch: 'Company/Membership/membershipTypeId',\r\n label: 'description',\r\n filterIs: 'select-filter',\r\n props: {\r\n showBrowse: false,\r\n options: [\r\n {\r\n label: 'Specialty Contractor',\r\n value: 1\r\n },\r\n {\r\n label: 'General Contractor',\r\n value: 2\r\n },\r\n {\r\n label: 'Affiliate',\r\n value: 3\r\n },\r\n {\r\n label: 'Project Owner',\r\n value: 4\r\n }\r\n ]\r\n }\r\n })\r\n }),\r\n createColumn({\r\n // FAKE FIELD\r\n label: 'Division',\r\n field: 'companyDivision',\r\n formDisplay: false,\r\n noSave: true,\r\n displayValue: (val, row) => {\r\n if (row && row.company && row.company.companyDivision) {\r\n let output = ''\r\n for (const companyDivision of row.company.companyDivision) {\r\n output += '' + companyDivision.division.name + ''\r\n }\r\n return output\r\n }\r\n },\r\n ...relationField({\r\n type: 'many',\r\n linkTable: true,\r\n fk: 'company',\r\n localKey: 'id',\r\n namespace: 'division',\r\n label: 'name',\r\n filterIs: 'select-many-field',\r\n directSearch: 'Company/CompanyDivision/any(a:a/divisionId',\r\n fieldType: 'number',\r\n parentRestraint: true,\r\n props: { allowEdit: false }\r\n })\r\n }),\r\n createColumn({\r\n label: 'User Login Credentials',\r\n section: 'Credentials',\r\n field: 'aspnetuser',\r\n filterable: false,\r\n sortable: false,\r\n visible: false,\r\n relation: {\r\n type: 'one',\r\n label: 'email',\r\n namespace: 'self',\r\n localKey: 'aspnetuserId',\r\n filterIs: 'text-filter',\r\n fk: 'id'\r\n },\r\n component: {\r\n is: 'credentials-modal'\r\n }\r\n }),\r\n createColumn({\r\n label: 'User',\r\n field: 'userName',\r\n section: 'Credentials',\r\n noSave: true,\r\n formDisplay: false,\r\n visible: false,\r\n ...relationField({\r\n validation: { required: false },\r\n type: 'one',\r\n localKey: 'aspnetuserId',\r\n fk: 'id',\r\n namespace: 'aspnetuser',\r\n filterIs: 'text-filter',\r\n label: 'userName'\r\n })\r\n }),\r\n createColumn({\r\n label: 'Primary Email',\r\n field: 'emailAddress',\r\n section: 'Contact',\r\n component: inputTextField({ req: true, type: 'email', max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Secondary Email',\r\n field: 'secondaryEmailAddress',\r\n section: 'Contact',\r\n visible: false,\r\n component: inputTextField({ type: 'email', max: 255 })\r\n }),\r\n createColumn({\r\n // TODO: REMOVE? I Doubt we will track this.\r\n label: 'Email Bounced',\r\n field: 'emailBounced',\r\n section: 'Contact',\r\n visible: false,\r\n component: null\r\n }),\r\n createColumn({\r\n // TODO: Do persons really need this?\r\n label: 'Profile URL',\r\n field: 'profileUrl',\r\n section: 'Contact',\r\n visible: false,\r\n component: null\r\n }),\r\n createColumn({\r\n // TODO: Do persons really need this?\r\n label: 'Website URL',\r\n field: 'url',\r\n section: 'Contact',\r\n visible: false,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Old Phone Number',\r\n field: 'homeNumber',\r\n section: 'Contact',\r\n visible: false,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Phone Number',\r\n field: 'workNumber',\r\n section: 'Contact',\r\n component: inputTextField({ max: 255, type: 'tel' })\r\n }),\r\n createColumn({\r\n label: 'Cell Number',\r\n field: 'cellNumber',\r\n section: 'Contact',\r\n component: inputTextField({ max: 255, type: 'tel' })\r\n }),\r\n createColumn({\r\n label: 'Address',\r\n field: 'address',\r\n section: 'Contact',\r\n visible: false,\r\n sortable: false,\r\n ...relationField({\r\n props: {\r\n config: {\r\n params: {}\r\n }\r\n },\r\n validation: { required: false },\r\n type: 'one',\r\n localKey: 'addressId',\r\n fk: 'id',\r\n namespace: 'address',\r\n filterIs: 'text-filter',\r\n label: 'line1'\r\n })\r\n }),\r\n createColumn({\r\n label: 'Spouse Name',\r\n field: 'spouseName',\r\n section: 'Extended Info',\r\n visible: false,\r\n component: inputTextField({ req: false, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Gender',\r\n field: 'gender',\r\n section: 'Extended Info',\r\n visible: false,\r\n component: {\r\n is: 'q-select',\r\n filterIs: 'select-filter',\r\n props: {\r\n options: [\r\n {\r\n label: 'Male',\r\n value: 'M'\r\n },\r\n {\r\n label: 'Female',\r\n value: 'F'\r\n }\r\n ]\r\n }\r\n }\r\n }),\r\n createColumn({\r\n label: 'Constant Contact ID',\r\n field: 'ccId',\r\n section: 'Extended Info',\r\n visible: false,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Graduated',\r\n field: 'graduated',\r\n section: 'Extended Info',\r\n visible: false,\r\n type: 'boolean',\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Graduated Year',\r\n field: 'graduatedYear',\r\n section: 'Extended Info',\r\n type: 'number',\r\n visible: false,\r\n defaultValue: null,\r\n clearValue: null,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Comments',\r\n visible: false,\r\n field: 'comments',\r\n section: 'Extended Info',\r\n component: inputTextField({ type: 'textarea', req: false, max: 8192 })\r\n }),\r\n createColumn({\r\n label: 'Quickbooks Customer ID',\r\n field: 'qbCustomerId',\r\n section: 'Extended Info',\r\n visible: false,\r\n component: inputTextField({ req: false, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Committees',\r\n field: 'personCommittee',\r\n section: 'Extended Info',\r\n ...relationField({\r\n type: 'many',\r\n linkTable: true,\r\n fk: 'id',\r\n localKey: 'personId',\r\n namespace: 'committee',\r\n filterIs: 'select-many-field',\r\n label: 'name',\r\n props: { allowEdit: false }\r\n })\r\n }),\r\n createColumn({\r\n label: 'Groups',\r\n field: 'personGrouping',\r\n section: 'Extended Info',\r\n ...relationField({\r\n type: 'many',\r\n linkTable: true,\r\n fk: 'id',\r\n localKey: 'personId',\r\n namespace: 'grouping',\r\n filterIs: 'select-many-field',\r\n label: 'description',\r\n props: { allowEdit: false }\r\n })\r\n }),\r\n createColumn({\r\n label: 'Do Not Share My Info',\r\n field: 'doNotShare',\r\n visible: false,\r\n section: 'Event Preferences',\r\n type: 'boolean',\r\n component: booleanComponent\r\n }),\r\n createColumn({\r\n label: 'Diet Comment',\r\n field: 'dietComment',\r\n section: 'Event Preferences',\r\n visible: false,\r\n component: inputTextField({ type: 'textarea', max: 8192 })\r\n }),\r\n createColumn({\r\n label: 'Diet Options',\r\n field: 'personDietOption',\r\n section: 'Event Preferences',\r\n visible: false,\r\n ...relationField({\r\n type: 'many',\r\n linkTable: true,\r\n fk: 'id',\r\n localKey: 'person',\r\n namespace: 'dietOption',\r\n filterIs: 'select-many-field',\r\n label: 'description',\r\n props: { allowEdit: false }\r\n })\r\n }),\r\n createColumn({\r\n label: 'ADA Accessibility Assistance Needed',\r\n field: 'adaRequired',\r\n type: 'boolean',\r\n visible: false,\r\n section: 'Event Preferences',\r\n component: booleanComponent,\r\n defaultValue: false\r\n }),\r\n createColumn({\r\n label: 'Explanation of ADA Assistance Needed',\r\n field: 'adaComment',\r\n visible: false,\r\n section: 'Event Preferences',\r\n component: inputTextField({ type: 'textarea', max: 8192 })\r\n }),\r\n createColumn({\r\n label: 'Toolbox Expiration',\r\n field: 'toolboxExpiration',\r\n section: 'Extended Info',\r\n type: 'date',\r\n component: {\r\n is: 'q-datetime',\r\n props: {\r\n type: 'datetime',\r\n format24h: false,\r\n format: 'MMM DD YYYY h:mm a',\r\n clearable: true,\r\n options: [\r\n {\r\n label: 'Has Expiration',\r\n value: 'ne null'\r\n },\r\n {\r\n label: 'No Expiration',\r\n value: 'eq null'\r\n }\r\n ]\r\n },\r\n validation: {\r\n required: false\r\n },\r\n filterIs: 'select-filter',\r\n filterCustom: true\r\n }\r\n }),\r\n createColumn({\r\n label: 'GUID',\r\n field: 'guidId',\r\n type: 'text',\r\n section: 'Data Info',\r\n filterable: false,\r\n visible: false,\r\n searchable: false,\r\n holdFromEdit: true,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Approved',\r\n field: 'approved',\r\n type: 'boolean',\r\n section: 'Status',\r\n visible: false,\r\n defaultValue: true,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Date Approved',\r\n field: 'dateApproved',\r\n type: 'date',\r\n section: 'Status',\r\n visible: false,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Updated',\r\n field: 'updatedAt',\r\n visible: false,\r\n searchable: false,\r\n type: 'date',\r\n sortable: true,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'New Record',\r\n field: 'isNew',\r\n type: 'boolean',\r\n section: 'Status',\r\n visible: false,\r\n defaultValue: false,\r\n component: null\r\n }),\r\n createColumn({\r\n label: 'Created',\r\n field: 'createdAt',\r\n visible: false,\r\n searchable: false,\r\n type: 'date',\r\n sortable: true,\r\n component: null\r\n })\r\n].concat(defaultColumns)\r\n","import { extend } from 'quasar'\r\nimport * as shvl from 'shvl'\r\n\r\nimport { deleteActionColumn, editActionColumn } from '../_defaults/columns'\r\n\r\nexport const defaultSettings = {\r\n groupedByField: 'id',\r\n parentResource: null,\r\n visibleColumns: [],\r\n selected: [],\r\n layout: 'table',\r\n azOpen: false,\r\n filters: {\r\n letters: {},\r\n search: '',\r\n columns: {}\r\n },\r\n pagination: {\r\n sortBy: null,\r\n descending: false,\r\n page: 1,\r\n rowsPerPage: 25,\r\n rowsNumber: 25\r\n }\r\n}\r\n\r\nexport const defaultState = {\r\n records: [],\r\n quickEditId: null,\r\n idList: [],\r\n defaultSort: null,\r\n defaultFilter: null,\r\n apiEndpoint: '/',\r\n namespace: '',\r\n clientRoute: '/',\r\n columns: [],\r\n settings: extend(true, {}, defaultSettings),\r\n loading: false,\r\n params: {},\r\n excelExport: {},\r\n titleColumn: undefined,\r\n subtitleColumn: undefined,\r\n fakeColumns: undefined,\r\n infoColumns: []\r\n}\r\n\r\nconst createState = state => {\r\n let filterKeys = {}\r\n let visibleColumns = {}\r\n if (state.columns && Array.isArray(state.columns)) {\r\n if (state.columns[0].name !== 'action_edit') {\r\n state.columns.unshift(editActionColumn)\r\n }\r\n const columnLength = state.columns.length\r\n if (state.columns[columnLength - 1].name !== 'action_delete') {\r\n state.columns.push(deleteActionColumn)\r\n }\r\n // -- assign filter keys\r\n filterKeys = state.columns.reduce((obj, column) => {\r\n obj[column.field] = shvl.get(state, `settings.filters.columns[${column.field}]`, null)\r\n return obj\r\n }, {})\r\n // -- assign visible columns\r\n visibleColumns = state.columns.filter(col => col.visible || col.required).map(c => c.field)\r\n }\r\n return extend(true, {}, defaultState, state, {\r\n settings: {\r\n filters: {\r\n columns: filterKeys\r\n },\r\n visibleColumns: visibleColumns\r\n }\r\n })\r\n}\r\n\r\nexport default createState\r\n"],"sourceRoot":""}