{"version":3,"sources":["webpack:///./src/modules/eventDiscountPurchase/columns.js","webpack:///./src/modules/_defaults/columns.js"],"names":["columns","createColumn","label","field","relationField","props","config","params","validation","required","type","localKey","fk","namespace","filterIs","concat","defaultColumns","dateSort","a","b","_a","Date","parse","_b","numberSort","parseInt","stringSort","toString","localeCompare","relationSortId","id","relationSortLength","length","booleanComponent","is","trueValue","falseValue","options","value","inputTextField","_ref","_ref$type","_ref$req","req","_ref$validation","_ref$money","money","_ref$max","max","_ref$min","min","numeric","between","email","maxlength","decimals","readonly","disable","_ref2","_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","component","sort","relation","fileField","_ref3","_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","undefined","noSave","hasOwnProperty","defaultValue","states","require","stateOptions","Object","keys","map","key","addressFields","_ref4","_ref4$req","filter","autofocusFilter","editActionColumn","deleteActionColumn"],"mappings":"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","file":"js/17da9d1d.8ba4e25b.js","sourcesContent":["import { createColumn, defaultColumns, relationField } from '../_defaults/columns'\r\n\r\nexport const columns = [\r\n createColumn({\r\n label: 'Event Discount',\r\n field: 'eventDiscount',\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: 'id',\r\n fk: 'eventDiscountId',\r\n namespace: 'eventDiscount',\r\n filterIs: 'text-filter'\r\n })\r\n }),\r\n createColumn({\r\n label: 'Purchase',\r\n field: 'purchase',\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: 'id',\r\n fk: 'purchaseId',\r\n namespace: 'purchase',\r\n filterIs: 'text-filter'\r\n })\r\n })\r\n].concat(defaultColumns)\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"],"sourceRoot":""}