{"version":3,"sources":["webpack:///./src/modules/contract/index.js","webpack:///./src/modules/_defaults/mutations.js","webpack:///./src/modules/contract/columns.js","webpack:///./src/modules/contract/pages/index.vue?cf94","webpack:///src/modules/workType/pages/index.vue","webpack:///./src/modules/contract/pages/index.vue?f004","webpack:///./src/modules/contract/pages/index.vue","webpack:///./src/modules/_defaults/columns.js","webpack:///./src/modules/_defaults/getters.js","webpack:///./src/modules/_defaults/state.js"],"names":["apiEndpoint","namespace","clientRoute","dependencies","params","include","titleColumn","subtitleColumn","undefined","infoColumns","state","defaultSort","columns","__webpack_exports__","namespaced","createState","Object","assign","getters","createGetters","mutations","createMutations","actions","createActions","arguments","length","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","__webpack_require__","d","_defaults_columns__WEBPACK_IMPORTED_MODULE_0__","createColumn","label","visible","filterable","searchable","component","isTitle","inputTextField","req","max","section","type","money","description","defaultValue","booleanComponent","concat","defaultColumns","render","_vm","this","_h","$createElement","_c","_self","loading","_e","staticRenderFns","_withStripped","pagesvue_type_script_lang_js_","name","beforeCreate","_beforeCreate","asyncToGenerator_default","regeneratorRuntime","mark","_callee","wrap","_context","prev","next","$registerModule","contract","stop","apply","contract_pagesvue_type_script_lang_js_","componentNormalizer","options","__file","dateSort","a","b","_a","Date","parse","_b","numberSort","parseInt","stringSort","toString","localeCompare","relationSortId","relationSortLength","is","filterIs","props","trueValue","falseValue","_ref$type","_ref$req","_ref$validation","validation","_ref$money","_ref$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","_ref2$searchable","_ref2$sortable","sortable","sort","relation","fileField","_ref3$req","_ref3$multiple","multiple","_ref3$label","mediaCollection","_ref3$extensions","extensions","_ref3$visible","_ref3$description","extend","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","search","countTotal","defaultPagination","sortBy","descending","page","rowsPerPage","rowsNumber","runTime","groupedByField","model","normalizeModel","gt","azOpen","defaultState","quickEditId","idList","defaultFilter","excelExport","fakeColumns","filterKeys","Array","isArray","unshift","columnLength","shvl"],"mappings":"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","file":"js/5fc41540.42e01f0d.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/contract'\r\nexport const namespace = 'contract'\r\nexport const clientRoute = '/contract'\r\nexport const dependencies = []\r\nexport const params = {\r\n include: ''\r\n}\r\n/* --------------------------- */\r\n\r\n/* -------- LABELS ----------- */\r\nconst titleColumn = 'name'\r\nconst subtitleColumn = undefined\r\nconst infoColumns = []\r\n/* --------------------------- */\r\n\r\nconst state = {\r\n defaultSort: 'sortOrder',\r\n columns,\r\n apiEndpoint,\r\n namespace,\r\n dependencies,\r\n clientRoute,\r\n params,\r\n titleColumn,\r\n subtitleColumn,\r\n infoColumns\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 {booleanComponent, createColumn, defaultColumns, inputTextField} from '../_defaults/columns'\r\n\r\nexport const columns = [\r\n // TODO: Needs to be a file upload that saves the file in to the database.\r\n createColumn({\r\n label: 'File',\r\n field: 'fileKey',\r\n visible: false,\r\n filterable: false,\r\n searchable: false,\r\n component: null\r\n // component: inputTextField({ req: true, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Name',\r\n isTitle: true,\r\n field: 'name',\r\n component: inputTextField({ req: true, max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Description',\r\n field: 'description',\r\n visible: false,\r\n filterable: false,\r\n searchable: false,\r\n component: null\r\n // component: inputTextField({ req: false, type: 'textarea', max: 255 })\r\n }),\r\n createColumn({\r\n label: 'Non-Member Price',\r\n field: 'nonMemberPrice',\r\n section: 'Pricing',\r\n type: 'number',\r\n component: inputTextField({req: true, type: 'number', money: true})\r\n }),\r\n createColumn({\r\n label: 'Member Price',\r\n field: 'memberPrice',\r\n section: 'Pricing',\r\n type: 'number',\r\n component: inputTextField({req: true, type: 'number', money: true}),\r\n description: '0 = Free'\r\n }),\r\n createColumn({\r\n label: 'Bundle',\r\n field: 'isBundle',\r\n type: 'boolean',\r\n description: 'Contract is a bundle of all other contracts',\r\n defaultValue: false,\r\n component: booleanComponent\r\n }),\r\n createColumn({\r\n label: 'Sort Order',\r\n field: 'sortOrder',\r\n type: 'number',\r\n defaultValue: '0',\r\n component: inputTextField({ req: true, type: 'number' }),\r\n description: 'Numeric value that indicates from top to bottom the order of Contracts. Lower numbers on top.'\r\n }),\r\n createColumn({\r\n label: 'Contract is Active',\r\n field: 'active',\r\n type: 'boolean',\r\n description: 'Contract is listed and available to be purchased',\r\n defaultValue: true,\r\n component: booleanComponent\r\n })\r\n].concat(defaultColumns)\r\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"q-page\", [!_vm.loading ? _c(\"router-view\") : _vm._e()], 1)\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=e8e7e05c&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","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":""}