{"version":3,"sources":["webpack:///./src/modules/question/columns.js","webpack:///./src/modules/question/index.js","webpack:///./src/modules/_defaults/mutations.js","webpack:///./src/modules/_defaults/columns.js","webpack:///./src/modules/_defaults/getters.js","webpack:///./src/modules/_defaults/state.js"],"names":["columns","createColumn","label","field","section","relationField","props","config","params","validation","required","type","localKey","fk","namespace","filterIs","defaultValue","component","booleanComponent","is","options","value","inputTextField","req","max","money","concat","defaultColumns","apiEndpoint","clientRoute","dependencies","include","state","__webpack_exports__","namespaced","createState","Object","assign","getters","createGetters","mutations","createMutations","actions","createActions","arguments","length","undefined","SET_FILTER","_ref","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","trueValue","falseValue","_ref$type","_ref$req","_ref$validation","_ref$money","_ref$max","_ref$min","min","numeric","between","email","maxlength","decimals","readonly","disable","_ref2$props","_ref2$label","_ref2$type","_ref2$namespace","_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","sort","relation","fileField","_ref3$req","_ref3$multiple","multiple","_ref3$label","mediaCollection","_ref3$extensions","extensions","_ref3$visible","visible","_ref3$description","description","extend","name","align","media","sendRaw","method","headers","additionalFields","inputRequired","editorComponent","toolbarFlat","toolbarOutline","color","toolbar","icon","list","fixedLabel","fixedIcon","defaultColumn","roles","searchType","displayValue","noSave","hasOwnProperty","states","require","stateOptions","keys","map","key","addressFields","_ref4$req","filter","autofocusFilter","editActionColumn","deleteActionColumn","defaultGetters","find","relatedId","parentResource","relations","c","selectedRows","selected","filterColumns","layout","columnsByField","reduce","obj","_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default","col","titleColumn","subtitleColumn","infoColumns","search","countTotal","defaultPagination","sortBy","descending","page","rowsPerPage","rowsNumber","runTime","groupedByField","model","normalizeModel","gt","azOpen","defaultState","quickEditId","idList","defaultSort","defaultFilter","loading","excelExport","fakeColumns","filterKeys","Array","isArray","unshift","columnLength","shvl"],"mappings":"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","file":"js/44df191c.1df981cc.js","sourcesContent":["import { createColumn, defaultColumns, inputTextField, relationField, booleanComponent } from '../_defaults/columns'\r\n\r\nexport const columns = [\r\n createColumn({\r\n label: 'Event',\r\n field: 'eventId',\r\n section: '',\r\n ...relationField({\r\n props: {\r\n config: {\r\n params: {}\r\n }\r\n },\r\n validation: {\r\n required: true\r\n },\r\n type: 'one',\r\n localKey: 'eventId',\r\n fk: 'id',\r\n namespace: 'event',\r\n filterIs: 'text-filter'\r\n })\r\n }),\r\n createColumn({\r\n label: 'Hidden',\r\n field: 'hidden',\r\n section: '',\r\n defaultValue: false,\r\n type: 'boolean',\r\n component: booleanComponent\r\n }),\r\n createColumn({\r\n label: 'Required',\r\n field: 'required',\r\n section: '',\r\n defaultValue: false,\r\n type: 'boolean',\r\n component: booleanComponent\r\n }),\r\n createColumn({\r\n label: 'Applies to all Attendees',\r\n field: 'appliesToAll',\r\n section: '',\r\n defaultValue: true,\r\n type: 'boolean',\r\n component: booleanComponent\r\n }),\r\n createColumn({\r\n label: 'Show for Not Attending',\r\n field: 'showForNotAttending',\r\n section: '',\r\n defaultValue: true,\r\n type: 'boolean',\r\n component: booleanComponent\r\n }),\r\n createColumn({\r\n label: 'Question Type',\r\n field: 'questionType',\r\n section: '',\r\n component: {\r\n is: 'q-select',\r\n filterIs: 'select-filter',\r\n props: {\r\n options: [\r\n {\r\n label: 'Open Text',\r\n value: 'text'\r\n },\r\n {\r\n label: 'Select',\r\n value: 'select'\r\n },\r\n {\r\n label: 'Yes / No',\r\n value: 'bool'\r\n },\r\n {\r\n label: 'Address',\r\n value: 'address'\r\n }\r\n ]\r\n }\r\n }\r\n }),\r\n createColumn({\r\n label: 'Question',\r\n field: 'questionText',\r\n section: '',\r\n component: inputTextField({ type: 'text', req: true, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Invoice Description',\r\n field: 'invoiceDesc',\r\n section: '',\r\n component: inputTextField({ type: 'text', req: true, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Cost Modifier',\r\n field: 'costModifier',\r\n section: '',\r\n component: inputTextField({ type: 'number', req: false, max: 10, money: true })\r\n }),\r\n createColumn({\r\n label: 'Sort',\r\n field: 'sort',\r\n section: '',\r\n component: inputTextField({ type: 'number', req: false, max: 4 })\r\n })\r\n].concat(defaultColumns)\r\n","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/question'\r\nexport const namespace = 'question'\r\nexport const clientRoute = '/question'\r\nexport const dependencies = ['questionOption', 'answer']\r\nexport const params = {\r\n include: 'questionOption,answer'\r\n}\r\n/* --------------------------- */\r\n\r\nconst state = {\r\n columns,\r\n apiEndpoint,\r\n namespace,\r\n dependencies,\r\n clientRoute,\r\n params\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 { 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":""}