{"version":3,"sources":["components/googleMap.js","components/textControl.js","components/emailControl.js","components/contactUs.js","helpers/cookies.js","components/login.js","components/HerdListData.js","components/herdListFilter.js","components/Pagination.js","components/herdList.js","serviceWorker.js","index.js"],"names":["GoogleMap","props","Object","classCallCheck","this","possibleConstructorReturn","getPrototypeOf","call","_ref","isScriptLoadSucceed","map","window","google","maps","Map","document","getElementById","zoom","center","lat","lng","mapTypeId","MapTypeId","ROADMAP","Marker","position","LatLng","alert","react_default","a","createElement","id","className","style","height","Component","scriptLoader","TextControl","_React$Component","_this","OnBlur","bind","assertThisInitialized","OnChange","checkRequired","validationText","state","valid","inherits","createClass","key","value","validationResult","required","setState","validation","name","onBlur","event","target","fieldChange","_this2","type","placeholder","onChange","_this3","message","control","textarea","renderTextArea","renderInput","Fragment","label","renderValidation","React","EmailControl","LoseFocus","validEmail","validator","require","console","log","validate","textControl","formData","email","ContactUs","FieldChange","assign","ValidationCheck","concat","submitForm","disabled","onClick","emailControl","renderButton","formOrMessage","renderForm","confirmationMessage","postData","objectSpread","thisState","axios","post","Content-Type","then","response","data","Data","catch","error","wrapper","getAttribute","ReactDOM","render","contactUs_ContactUs","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","expires","toUTCString","cookie","getCookie","ca","decodeURIComponent","split","i","length","c","charAt","substring","indexOf","defaultState","redirect","username","password","breedId","showModal","Login","handleUsernameChange","handlePasswordChange","handleSubmit","handleCancel","handleBreedChange","handleShowModal","handleCloseModal","Username","Password","SocietyId","ReCaptchaId","returndata","SesssionTokenID","TokenExpiry","sesssionTokenID","setAccount","location","href","breed","radioButtons","Form","Check","checked","Group","controlId","Label","Container","fluid","Row","Col","renderBreeds","Control","Text","renderFailedLogon","Button","variant","Modal","show","onHide","Header","closeButton","Title","Body","Footer","login_Login","linkStyle","fontWeight","defaultColumns","accessor","filterMethod","filter","row","search","RegExp","Cell","cellProps","link","original","Animal_ID","data-tip","rel","AnimalName","sliderStep","DateOfBirth","date","getDate","getMonth","getFullYear","fromValue","toValue","SliderFilter","lazy","Promise","all","__webpack_require__","e","HerdListFilter","filterColumn","handleAgeGroup","handleDOB","handleCheckChange","filterState","filterValue","filtered","ApplyFilter","column","startValue","endValue","dob","min","max","ageGroup","sex","xs","sm","md","lg","xl","react","fallback","rangemin","rangemax","maxRangeDisplayValue","minRangeDisplayValue","ToggleButtonGroup","ToggleButton","defaultButton","children","Pagination","filterPages","visiblePages","totalPages","page","getVisiblePages","total","changePage","pages","nextProps","onPageChange","_this$props$PageButto","PageButtonComponent","activePage","previousText","index","array","nextText","pageSizeOptions","HerdList","numberOfRecords","columns","selectedItemsPerPage","columnFilter","applyFilter","changeItemsPerPage","isLoaded","herdListFilter","DropdownButton","title","item","Dropdown","Item","onSelect","eventKey","data-test","parseInt","es","pageSize","PaginationComponent","defaultPageSize","onPageSizeChange","onFilteredChange","ref","r","selectTable","newFilter","slice","splice","push","url","method","responseType","result","cols","x","isNaN","AgeGroup","Math","apply","toConsumableArray","Sex","distinctSexes","Set","filterStateDob","Infinity","isUndefined","prevProps","prevState","undefined","GetDOBMinMax","getResolvedState","sortedData","GetAgeGroupMinMax","getData","herdList_HerdList","Boolean","hostname","match","googleMap","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.0415d8b1.chunk.js","sourcesContent":["import React, { Component } from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport scriptLoader from 'react-async-script-loader';\r\n\r\n\r\n\r\nclass GoogleMap extends Component {\r\n \r\n constructor(props) {\r\n super(props); \r\n \r\n }\r\n \r\n\r\n componentWillReceiveProps({isScriptLoadSucceed}){ \r\n if (isScriptLoadSucceed) { \r\n\r\n var map = new window.google.maps.Map(document.getElementById('map_container'), {\r\n zoom: 16,\r\n center: {lat: 52.676882, lng: -2.430622},\r\n mapTypeId: window.google.maps.MapTypeId.ROADMAP\r\n });\r\n\r\n const marker = new window.google.maps.Marker({\r\n position: new window.google.maps.LatLng(52.676882, -2.430622),\r\n map: map \r\n }); \r\n }\r\n else{\r\n alert(\"script not loaded\")\r\n }\r\n }\r\n\r\n render() { \r\n return (\r\n
Loading Google Map
\r\n );\r\n }\r\n}\r\nexport default scriptLoader([\"https://maps.googleapis.com/maps/api/js?key=AIzaSyAkpoMYjeBPoLw83ZNtvVsXBneHUCFdQbI&sensor=false\"])(GoogleMap);\r\n\r\n\r\n","import React from 'react';\r\n\r\n\r\nexport class TextControl extends React.Component {\r\n\r\n constructor(props){\r\n super(props); \r\n this.OnBlur = this.OnBlur.bind(this);\r\n this.OnChange = this.OnChange.bind(this);\r\n this.checkRequired = this.checkRequired.bind(this);\r\n let validationText = \"\";\r\n if(typeof(props.validationText)!==\"undefined\")\r\n {\r\n validationText = props.validationText;\r\n }\r\n this.state = {validationText , valid: true};\r\n }\r\n \r\n\r\n checkRequired(value){ \r\n let validationResult = true;\r\n if(this.props.required){\r\n validationResult = value!=='';\r\n this.setState({validationText: \"Required\", valid: validationResult});\r\n }\r\n this.props.validation(this.props.name,validationResult, value);\r\n }\r\n\r\n OnBlur() { \r\n if(this.props.onBlur!=null){\r\n this.props.onBlur(this.props.value);\r\n }\r\n if(this.props.validation!=null){ \r\n this.checkRequired(this.props.value);\r\n }\r\n }\r\n\r\n OnChange(event) {\r\n this.checkRequired(event.target.value);\r\n this.props.fieldChange(this.props.name, event.target.value); \r\n }\r\n\r\n renderInput() {\r\n return (\r\n this.OnChange(event)} \r\n onBlur={this.OnBlur}\r\n className=\"form-control\"\r\n />\r\n )\r\n }\r\n\r\n renderTextArea() {\r\n return (\r\n \r\n )\r\n }\r\n\r\n renderValidation(){\r\n let message = this.state.validationText;\r\n if(this.state.valid && (this.props.valid || this.props.valid===null || typeof(this.props.valid) === \"undefined\")){\r\n message = \"\";\r\n } \r\n return message;\r\n }\r\n\r\n render() {\r\n let control = null;\r\n if(this.props.textarea) {\r\n control = this.renderTextArea();\r\n } else {\r\n control = this.renderInput();\r\n }\r\n return(\r\n <>
\r\n \r\n {control} \r\n {this.renderValidation()}\r\n
\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default TextControl;","import React from 'react';\r\nimport TextControl from './textControl';\r\n\r\nexport class EmailControl extends React.Component {\r\n\r\n constructor(){\r\n super(); \r\n this.LoseFocus = this.LoseFocus.bind(this);\r\n this.state = {validEmail : null};\r\n }\r\n \r\n LoseFocus(name, required, value) { \r\n const validator = require(\"email-validator\");\r\n console.log(value);\r\n const validationResult = validator.validate(value); \r\n this.setState({validEmail : validationResult});\r\n this.props.validation(this.props.name, validationResult);\r\n }\r\n \r\n\r\n render() { \r\n return(\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default EmailControl;","import React, { Component } from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport TextControl from './textControl';\r\nimport EmailControl from './emailControl';\r\nimport axios from \"axios\";\r\n\r\nconst formData = { name :'', message:'', email:'' };\r\nconst validation = { name :false, message:false, email:false };\r\n\r\n\r\nclass ContactUs extends Component {\r\n \r\n constructor(props) {\r\n super(props); \r\n this.state={formData, validation, state:'Form'}; \r\n this.submitForm = this.submitForm.bind(this);\r\n }\r\n \r\n\r\n FieldChange = (name,value) => { \r\n let formData = Object.assign(this.state.formData); \r\n formData[name]= value; \r\n this.setState({ formData }); \r\n } \r\n\r\n\r\n ValidationCheck = (name, value) => {\r\n console.log(`${name} ${value}`);\r\n let validation = Object.assign(this.state.validation); \r\n validation[name] = value;\r\n this.setState({validation}); \r\n }\r\n\r\n renderButton(){\r\n const valid = this.state.validation['name'] && this.state.validation['email'] && this.state.validation['message'];\r\n const disabled = !valid ? 'disabled' : ''; \r\n return (\r\n \r\n )\r\n }\r\n\r\n renderForm(){\r\n return (\r\n <> \r\n \r\n \r\n \r\n {this.renderButton()} \r\n \r\n );\r\n }\r\n\r\n render() { \r\n let formOrMessage = '';\r\n if (this.state.state===\"Form\") {\r\n formOrMessage = this.renderForm();\r\n } else {\r\n formOrMessage = this.props.confirmationMessage;\r\n }\r\n return (\r\n <>\r\n {formOrMessage}\r\n \r\n )\r\n }\r\n\r\n submitForm(event) {\r\n \r\n const headers = { 'Content-Type': 'application/x-www-form-urlencoded' };\r\n const postData = { ...this.state.formData }; \r\n const thisState = this; \r\n axios.post('/umbraco/api/ContactUs/SubmitForm', \r\n postData\r\n , headers)\r\n .then(function (response) { \r\n const responseStatus = response.data.Data;\r\n if(responseStatus==='Success') {\r\n thisState.setState({state:'Success'}); \r\n }\r\n else\r\n {\r\n thisState.setState({state:'Failed'})\r\n }\r\n })\r\n .catch(function (error) { \r\n console.log(error); \r\n }); \r\n }\r\n}\r\nexport default ContactUs;\r\n\r\n\r\nconst wrapper = document.getElementById(\"react-contactUs\");\r\nconst className = wrapper ? wrapper.getAttribute('data-className') : null;\r\nconst confirmationMessage = wrapper ? wrapper.getAttribute('data-confirmationMessage') : null;\r\nif (wrapper) {\r\n ReactDOM.render(,wrapper);\r\n}","export function setCookie(cname, cvalue, exdays) {\r\n var d = new Date();\r\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\r\n var expires = \"expires=\" + d.toUTCString();\r\n document.cookie = cname + \"=\" + cvalue + \";\" + expires + \";path=/\";\r\n }\r\n \r\n export function deleteCookie(cname) {\r\n var d = new Date();\r\n d.setTime(d.getTime() - (1000 * 60 * 60 * 24)); \r\n var expires = \"expires=\" + d.toGMTString();\r\n document.cookie = cname + \"=; \" + expires + \";path=/\";\r\n }\r\n \r\n \r\n export function getCookie(cname) {\r\n var name = cname + \"=\";\r\n var decodedCookie = decodeURIComponent(document.cookie);\r\n var ca = decodedCookie.split(';');\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) === ' ') {\r\n c = c.substring(1);\r\n }\r\n if (c.indexOf(name) === 0) {\r\n return c.substring(name.length, c.length);\r\n }\r\n }\r\n return \"\";\r\n }","import {Form,Button, Row, Col, Container, Modal} from \"react-bootstrap\";\r\nimport React, { Component } from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport axios from \"axios\";\r\nimport { setCookie, getCookie } from \"../helpers/cookies\";\r\n\r\nfunction defaultState(redirect) {\r\n return {username: getCookie(\"Prefix\"), password:'', breedId:1, showModal:false, redirect: redirect, state:'start'};\r\n}\r\n\r\nfunction setAccount(sesssionTokenID, username, password, breedId, )\r\n{\r\n var headers = { 'Content-Type': 'application/x-www-form-urlencoded' };\r\n var postData = { SesssionTokenID : sesssionTokenID, Username: username, Password: password, SocietyId: breedId, ReCaptchaId: '' };\r\n return axios.post('/umbraco/api/WebDataAcount/Account', postData, headers).then(function () { \r\n\r\n });\r\n\r\n}\r\n\r\nclass Login extends Component {\r\n \r\n constructor(props) {\r\n super(props); \r\n this.state = defaultState(this.props.redirect); \r\n this.handleUsernameChange = this.handleUsernameChange.bind(this);\r\n this.handlePasswordChange = this.handlePasswordChange.bind(this);\r\n this.handleSubmit = this.handleSubmit.bind(this);\r\n this.handleCancel = this.handleCancel.bind(this);\r\n this.handleBreedChange = this.handleBreedChange.bind(this);\r\n this.handleShowModal = this.handleShowModal.bind(this);\r\n this.handleCloseModal = this.handleCloseModal.bind(this);\r\n }\r\n handleCloseModal() {\r\n this.setState({ showModal: false });\r\n }\r\n \r\n handleShowModal() {\r\n this.setState({ showModal: true });\r\n }\r\n\r\n handleUsernameChange(event) {\r\n this.setState({username: event.target.value, state:'start'});\r\n }\r\n\r\n handlePasswordChange(event) {\r\n this.setState({password: event.target.value, state:'start'});\r\n }\r\n \r\n handleSubmit(event) {\r\n \r\n var headers = { 'Content-Type': 'application/x-www-form-urlencoded' };\r\n var postData = { Username: this.state.username, Password: this.state.password, SocietyId: this.state.breedId, ReCaptchaId: '' };\r\n //var postData = { Username: prefix, Password: pin, SocietyId: societyId, ReCaptchaId: getCookie(\"recaptchaID\") };\r\n var redirect = this.state.redirect;\r\n var returndata = null; \r\n var thisState = this;\r\n var username = this.state.username;\r\n var password = this.state.password;\r\n var breedId = this.state.breedId;\r\n axios.post('/umbraco/api/Login/Authenticate', \r\n postData\r\n , headers)\r\n .then(function (response) { \r\n returndata = { SesssionTokenID: response.data.Data.SesssionTokenID, TokenExpiry: response.data.Data.TokenExpiry } \r\n if(returndata.SesssionTokenID!=='LOGON_FAIL') {\r\n setCookie('SesssionTokenID', returndata.SesssionTokenID); \r\n setCookie('Prefix', username);\r\n setAccount(returndata.SesssionTokenID,username, password, breedId).then(function (response) { \r\n window.location.href = redirect;\r\n });\r\n \r\n }\r\n else\r\n {\r\n thisState.setState({state:'LOGIN_FAIL'})\r\n }\r\n })\r\n .catch(function (error) { \r\n console.log(error); \r\n }); \r\n\r\n }\r\n handleBreedChange(breed) { \r\n this.setState({breedId: breed.target.value}); \r\n }\r\n\r\n handleCancel(event) {\r\n this.setState(defaultState);\r\n } \r\n\r\n renderDefaultBreed(breed){\r\n if (breed === this.state.breed) {\r\n return 'defaultChecked';\r\n }\r\n else {\r\n return '';\r\n }\r\n }\r\n\r\n renderFailedLogon(){ \r\n if (this.state.state==='LOGIN_FAIL'){\r\n return(
Login failed, please try again
);\r\n }\r\n }\r\n renderBreeds() {\r\n const Breeds =\r\n {\"breeds\": \r\n [\r\n {\r\n \"id\":1,\r\n \"breed\":\"Holstein\",\r\n \"key\":1\r\n }\r\n ,\r\n {\r\n \"id\":1,\r\n \"breed\":\"Friesian\",\r\n \"key\":2\r\n }/*\r\n ,\r\n {\r\n \"id\":5,\r\n \"breed\":\"Ayrshire\",\r\n \"key\":3\r\n }\r\n ,\r\n \r\n {\r\n \"id\":2,\r\n \"breed\":\"Jersey\",\r\n \"key\":4\r\n }\r\n ,\r\n \r\n {\r\n \"id\":4,\r\n \"breed\":\"Guernsey\",\r\n \"key\":5\r\n }*/\r\n ]\r\n \r\n }\r\n const radioButtons = Breeds.breeds.map(breed => \r\n \r\n ); \r\n return (\r\n \r\n Choose society: \r\n {radioButtons} \r\n \r\n )\r\n }\r\n\r\n render() {\r\n \r\n return (\r\n \r\n

Login page

\r\n \r\n \r\n
\r\n \r\n { this.renderBreeds() }\r\n \r\n \r\n Prefix:\r\n \r\n \r\n We'll never share your prefix with anyone else.\r\n \r\n \r\n \r\n Pin:\r\n \r\n \r\n We'll never share your pin with anyone else.\r\n \r\n \r\n {this.renderFailedLogon()} \r\n \r\n  \r\n \r\n  \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n Forgotten pin/prefix\r\n \r\n You need to call Membership services on 03458 734 210\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nexport default Login;\r\n\r\n\r\nconst wrapper = document.getElementById(\"react-login\");\r\nconst redirect = wrapper ? wrapper.getAttribute('data-redirect') : null;\r\n//wrapper ? ReactDOM.render(, wrapper) : false;\r\n\r\nif (wrapper) {\r\n ReactDOM.render(,wrapper);\r\n}","import axios from \"axios\";\r\nimport React from \"react\";\r\nimport { getCookie } from \"../helpers/cookies\";\r\n\r\nconst linkStyle = {fontWeight:700};\r\n\r\nexport function getTableData()\r\n{\r\n var name ='';\r\n var sex = '';\r\n var dtFrom = '' ;\r\n var dtTo = '';\r\n const data = axios({\r\n url: '/umbraco/api/herdlist/getHerd?userSessionGuid=' + getCookie(\"SesssionTokenID\") + '&Name=' + name+ '&Sex=' + sex + '&dtFrom=' + dtFrom + '&dtTo=' + dtTo + '&own=true',\r\n method: 'GET',\r\n responseType: 'json'\r\n })\r\n .then(function (response) { \r\n return response.data\r\n })\r\n return data;\r\n}\r\n\r\nexport const defaultColumns = [\r\n /*{ \r\n Header: \"Animal ID\",\r\n accessor: \"Animal_ID\"\r\n },*/\r\n { \r\n Header: \"Line No\",\r\n accessor: \"Line_No\"\r\n },\r\n { \r\n Header: \"Name\",\r\n accessor: \"AnimalName\",\r\n filterMethod: (filter, row) => {\r\n return (row[filter.id].search(new RegExp(filter.value, \"i\"))>-1) \r\n },\r\n Cell:(cellProps) => {\r\n var link;\r\n link = \"http://holstein-uk.org/animaldata/animal/ancestry/\" + cellProps.original.Animal_ID\r\n return <>\r\n {cellProps.original.AnimalName}\r\n \r\n \r\n }\r\n },\r\n { \r\n Header: \"HBN\",\r\n accessor: \"HBN\"\r\n },\r\n { \r\n Header: \"DOB\",\r\n accessor: \"DateOfBirth\",\r\n sliderStep: 1,\r\n Cell:(cellProps) => {\r\n if (cellProps.original.DateOfBirth)\r\n {\r\n const date = new Date(cellProps.original.DateOfBirth);\r\n return date.getDate() + '/' + date.getMonth() + '/' + date.getFullYear();\r\n }\r\n return null;\r\n },\r\n filterMethod: (filter, row) => {\r\n \r\n if ((filter.fromValue === \"\" || filter.fromValue===null) && (filter.toValue === \"\" || filter.toValue===null))\r\n {\r\n return true;\r\n }\r\n else if (filter.fromValue === \"\" || filter.fromValue== null)\r\n {\r\n if (!row[filter.id] == \"\")\r\n {\r\n return (new Date(row[filter.id]) <=new Date(filter.toValue) );\r\n }\r\n }\r\n else if (filter.toValue === \"\" || filter.toValue== null)\r\n {\r\n if (!row[filter.id] == \"\")\r\n {\r\n return (new Date(row[filter.id]) >=new Date(filter.fromValue) );\r\n }\r\n }\r\n else\r\n {\r\n return (new Date(row[filter.id]) >= new Date(filter.fromValue) && new Date(row[filter.id]) <= new Date(filter.toValue));\r\n }\r\n },\r\n },\r\n { \r\n Header: \"Sex\",\r\n accessor: \"Sex\"\r\n },\r\n { \r\n Header: \"Ear Tag\",\r\n accessor: \"ear_Tag\"\r\n },\r\n {\r\n Header: \"Age Group\",\r\n accessor: \"AgeGroup\",\r\n show:false,\r\n filterMethod: (filter, row) => {\r\n return (row[filter.id]>=filter.fromValue && row[filter.id]<=filter.toValue) \r\n }\r\n },\r\n { \r\n Header: \"Select for Cert Generation\",\r\n Cell:(cellProps) => {\r\n return <>\r\n \r\n \r\n \r\n }\r\n }\r\n]\r\n\r\n\r\n\r\n","import React, { Component, Suspense } from \"react\";\r\nimport DatePicker from 'react-date-picker';\r\nimport {Container, Row, Col, ToggleButtonGroup, ToggleButton } from \"react-bootstrap\";\r\n\r\nconst SliderFilter =React.lazy(() => import('./SliderFilter'));\r\n\r\n\r\n\r\nclass HerdListFilter extends Component {\r\n constructor(props) {\r\n super(props); \r\n this.filterColumn = this.filterColumn.bind(this); \r\n this.handleAgeGroup = this.handleAgeGroup.bind(this);\r\n this.handleDOB = this.handleDOB.bind(this);\r\n this.handleCheckChange = this.handleCheckChange.bind(this);\r\n this.state = {filterState : this.props.filterState };\r\n }\r\n\r\n filterColumn(e) {\r\n const { value } = e.target;\r\n const filterValue = value;\r\n const filtered = [{ id: e.target.id, value: filterValue }];\r\n\r\n const filterState = this.state.filterState;\r\n\r\n this.props.ApplyFilter(filtered, filterState);\r\n\r\n }\r\n\r\n handleDOB (column, startValue, endValue)\r\n {\r\n //const dob = this.props.filterState.dob;\r\n //dob.min = startValue;\r\n //dob.max = endValue;\r\n //this.setState({ageGroup:newAgeGroup});\r\n //this.props.ageGroup = newAgeGroup;\r\n const filtered = [{ id: column, fromValue: startValue, toValue: endValue }];\r\n \r\n const filterState = this.state.filterState;\r\n\r\n filterState.dob.min = startValue;\r\n filterState.dob.max = endValue;\r\n\r\n this.setState({filterState : filterState});\r\n\r\n this.props.ApplyFilter(filtered, this.state.filterState);\r\n }\r\n \r\n handleAgeGroup(column, startValue, endValue)\r\n {\r\n //this.setState({ageGroup:newAgeGroup});\r\n //this.props.ageGroup = newAgeGroup;\r\n const filtered = [{ id: column, fromValue: startValue, toValue: endValue }];\r\n const filterState = this.state.filterState;\r\n\r\n filterState.ageGroup.min = startValue;\r\n filterState.ageGroup.max = endValue;\r\n\r\n this.setState({filterState : filterState});\r\n\r\n this.props.ApplyFilter(filtered, this.state.filterState);\r\n }\r\n\r\n handleCheckChange(value, event) {\r\n\r\n const filtered = [{ id: \"Sex\", value: value }];\r\n\r\n const filterState = this.state.filterState;\r\n\r\n filterState.sex = value;\r\n\r\n this.setState({filterState : filterState});\r\n\r\n this.props.ApplyFilter(filtered, this.state.filterState);\r\n\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n\r\n \r\n
\r\n 0\r\n
\r\n Animal Selected for Cert Generation\r\n \r\n \r\n Loading...
}>\r\n \r\n \r\n\r\n\r\n \r\n \r\n\r\n Loading...
}>\r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n
\r\n Animal Name \r\n
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\nSex\r\n
\r\n\r\n
\r\n\r\n \r\n Both\r\n Male\r\n Female\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n\r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n );\r\n }\r\n \r\n}\r\nexport default HerdListFilter;","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nconst defaultButton = props => ;\r\n\r\nclass Pagination extends React.Component {\r\n constructor(props) {\r\n super();\r\n\r\n this.changePage = this.changePage.bind(this);\r\n\r\n this.state = {\r\n visiblePages: this.getVisiblePages(null, props.pages)\r\n };\r\n }\r\n\r\n static propTypes = {\r\n pages: PropTypes.number,\r\n page: PropTypes.number,\r\n PageButtonComponent: PropTypes.any,\r\n onPageChange: PropTypes.func,\r\n previousText: PropTypes.string,\r\n nextText: PropTypes.string\r\n };\r\n\r\n componentWillReceiveProps(nextProps) {\r\n if (this.props.pages !== nextProps.pages) {\r\n this.setState({\r\n visiblePages: this.getVisiblePages(null, nextProps.pages)\r\n });\r\n }\r\n\r\n this.changePage(nextProps.page + 1);\r\n }\r\n\r\n filterPages = (visiblePages, totalPages) => {\r\n return visiblePages.filter(page => page <= totalPages);\r\n };\r\n\r\n getVisiblePages = (page, total) => {\r\n if (total < 7) {\r\n return this.filterPages([1, 2, 3, 4, 5, 6], total);\r\n } else {\r\n if (page % 5 >= 0 && page > 4 && page + 2 < total) {\r\n return [1, page - 1, page, page + 1, total];\r\n } else if (page % 5 >= 0 && page > 4 && page + 2 >= total) {\r\n return [1, total - 3, total - 2, total - 1, total];\r\n } else {\r\n return [1, 2, 3, 4, 5, total];\r\n }\r\n }\r\n };\r\n\r\n changePage(page) {\r\n const activePage = this.props.page + 1;\r\n\r\n if (page === activePage) {\r\n return;\r\n }\r\n\r\n const visiblePages = this.getVisiblePages(page, this.props.pages);\r\n\r\n this.setState({\r\n visiblePages: this.filterPages(visiblePages, this.props.pages)\r\n });\r\n\r\n this.props.onPageChange(page - 1);\r\n }\r\n\r\n render() {\r\n const { PageButtonComponent = defaultButton } = this.props;\r\n const { visiblePages } = this.state;\r\n const activePage = this.props.page + 1;\r\n\r\n return (\r\n
\r\n {\r\n if (activePage === 1) return;\r\n this.changePage(activePage - 1);\r\n }}\r\n disabled={activePage === 1}\r\n >\r\n {this.props.previousText}\r\n \r\n {visiblePages.map((page, index, array) => {\r\n return (\r\n \r\n {array[index - 1] + 2 < page ? `...${page}` : page}\r\n \r\n );\r\n })}\r\n {\r\n if (activePage === this.props.pages) return;\r\n this.changePage(activePage + 1);\r\n }}\r\n disabled={activePage === this.props.pages}\r\n >\r\n {this.props.nextText}\r\n \r\n
\r\n );\r\n }\r\n}\r\nexport default Pagination;","import React, { Component } from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport ReactTable from 'react-table';\r\nimport { defaultColumns, getTableData } from \"./HerdListData.js\";\r\nimport 'react-table/react-table.css';\r\nimport HerdListFilter from \"./herdListFilter.js\";\r\nimport Pagination from \"./Pagination.js\";\r\nimport {DropdownButton,Dropdown} from \"react-bootstrap\";\r\nimport { isDate, isObject, isUndefined } from \"util\";\r\n\r\nconst pageSizeOptions = [10, 20, 50, 100];\r\n\r\nfunction makeDefaultState () {\r\n return {\r\n data :[],\r\n error: null,\r\n numberOfRecords: 0,\r\n columns : defaultColumns,\r\n filtered:[],\r\n selectedItemsPerPage: \"10\",\r\n columnFilter : false,\r\n page: 0,\r\n filterState: {\r\n sex:'',\r\n ageGroup : {\r\n min:0,\r\n max:4,\r\n rangemax: 4,\r\n rangemin:0,\r\n sliderStep:1\r\n },\r\n dob : {\r\n min:0,\r\n max:0,\r\n //rangemax: 0,\r\n //rangemin:0,\r\n sliderStep:1\r\n }\r\n }\r\n };\r\n}\r\nclass HerdList extends Component {\r\n \r\n constructor(props) {\r\n super(props); \r\n this.state = makeDefaultState(); \r\n this.applyFilter = this.applyFilter.bind(this);\r\n this.changeItemsPerPage = this.changeItemsPerPage.bind(this);\r\n }\r\n \r\n\r\n render() {\r\n\r\n const error = this.state.error;\r\n const isLoaded = this.state.isLoaded;\r\n\r\n if (error) {\r\n console.log(error);\r\n return
Your session may have expired. Please login again.
;\r\n } else if (!isLoaded) {\r\n return
Loading...
;\r\n } else {\r\n return (\r\n <>\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n {pageSizeOptions.map((item) => (\r\n {item}\r\n \r\n ))}\r\n \r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n \"\r\n PaginationComponent={Pagination} \r\n defaultPageSize={10}\r\n page={this.state.page}\r\n pageSize={this.state.pageSize}\r\n pageSizeOptions={this.state.pageSizeOptions}\r\n onPageChange={page => this.setState({ page })}\r\n onPageSizeChange={(pageSize, page) =>this.setState({ page, pageSize })}\r\n data={this.state.data} \r\n columns={this.state.columns}\r\n filtered={this.state.filtered}\r\n onFilteredChange={this.applyFilter.bind(this)}\r\n ref={(r) => { this.selectTable = r;}}\r\n />\r\n\r\n \r\n );\r\n }\r\n \r\n}\r\n\r\n applyFilter(newFilter, filterState){\r\n \r\n const filtered = this.state.filtered.slice();\r\n for( var i = 0; i < filtered.length; i++){ \r\n if (filtered[i].id === newFilter[0].id) {\r\n filtered.splice(i, 1); \r\n }\r\n }\r\n //console.log(filtered.id);\r\n filtered.push(newFilter[0]);\r\n this.setState({ filtered : filtered });\r\n //var lastFilterApplied = newFilter[0];\r\n this.setState({ filterState : filterState });\r\n }\r\n\r\n getData(){\r\n\r\n getTableData()\r\n .then(\r\n (result) => {\r\n this.setState({data: result});\r\n },\r\n (error) => {\r\n this.setState({\r\n isLoaded: true,\r\n error\r\n });\r\n }\r\n ).then(\r\n (result) => {\r\n this.setState(\r\n {\r\n isLoaded: true\r\n });\r\n }\r\n )\r\n .catch(function (error) {\r\n console.log(error);\r\n });\r\n \r\n }\r\n\r\n GetAgeGroupMinMax(data)\r\n {\r\n var cols =data.map(\r\n function(x) {\r\n if (!isNaN(x.AgeGroup))\r\n return x.AgeGroup\r\n });\r\n\r\n var max = Math.max(...cols);\r\n var min = Math.min(...cols);\r\n \r\n const filterState = this.state.filterState;\r\n\r\n filterState.ageGroup.min = min;\r\n filterState.ageGroup.max = max;\r\n\r\n this.setState({filterState : filterState});\r\n }\r\n getSex(data)\r\n {\r\n var sex =data.map(\r\n function(x) {\r\n return x.Sex;\r\n });\r\n const distinctSexes = [...new Set(sex)]\r\n\r\n const filterState = this.state.filterState;\r\n\r\n if (distinctSexes.length==2)\r\n {\r\n filterState.sex = \"\";\r\n }\r\n else\r\n {\r\n filterState.sex = distinctSexes[0]; \r\n }\r\n this.setState({filterState : filterState});\r\n\r\n }\r\n GetDOBMinMax(data)\r\n {\r\n\r\n var dates =data.map(\r\n function(x) {\r\n return new Date(x.DateOfBirth).getTime();\r\n });\r\n\r\n var cols = dates.filter(x => x > 0);\r\n \r\n\r\n const filter = this.state.filtered.filter(x=>x.id==\"DateOfBirth\")[0];\r\n \r\n var max = Math.max(...cols);\r\n var min = Math.min(...cols);\r\n\r\n const filterStateDob = this.state.filterState;\r\n \r\n if (min==Infinity || min==-Infinity)\r\n {\r\n if (!isUndefined(filter))\r\n {\r\n min = filter.fromValue;\r\n }\r\n }\r\n\r\n if (max==Infinity || max==-Infinity)\r\n {\r\n if (!isUndefined(filter))\r\n {\r\n max = filter.toValue;\r\n }\r\n }\r\n\r\n filterStateDob.dob.min = min;\r\n filterStateDob.dob.max = max;\r\n \r\n if (!filterStateDob.dob.rangemax)\r\n {\r\n filterStateDob.dob.rangemax = max;\r\n }\r\n if (!filterStateDob.dob.rangemin)\r\n {\r\n filterStateDob.dob.rangemin = min;\r\n }\r\n \r\n\r\n this.setState({filterState : filterStateDob});\r\n }\r\n\r\n componentDidUpdate(prevProps, prevState){\r\n if(this.selectTable!=undefined){ \r\n if(this.state.columnFilter == prevState.columnFilter) \r\n { \r\n //this.getSex(this.selectTable.getResolvedState().sortedData);\r\n this.GetDOBMinMax(this.selectTable.getResolvedState().sortedData);\r\n this.GetAgeGroupMinMax(this.selectTable.getResolvedState().sortedData);\r\n this.setState({columnFilter : !this.state.columnFilter});\r\n }\r\n }\r\n }\r\n\r\n componentDidMount(){\r\n this.getData();\r\n \r\n }\r\n\r\n changeItemsPerPage(item) \r\n { \r\n this.setState({ page: 0});\r\n this.setState({ selectedItemsPerPage: item});\r\n this.setState({ pageSize: parseInt(item)});\r\n \r\n }\r\n\r\n}\r\n\r\n\r\nexport default HerdList;\r\n\r\n\r\nconst wrapper = document.getElementById(\"react-herdList\");\r\n\r\nif (wrapper) {\r\n ReactDOM.render(,wrapper);\r\n}","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport function register(config) {\r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n console.log(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n console.log('Content is cached for offline use.');\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.indexOf('javascript') === -1)\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n console.log(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport GoogleMap from './components/googleMap';\r\nimport ContactUs from './components/contactUs';\r\nimport Login from './components/login';\r\nimport HerdList from './components/herdList';\r\nimport './css/App.css';\r\n//ReactDOM.render(, document.getElementById('root'));\r\nimport * as serviceWorker from './serviceWorker';\r\n\r\nconst wrapper = document.getElementById(\"react-googleMap\");\r\nconst className = wrapper ? wrapper.getAttribute('data-className') : null;\r\nif (wrapper) {\r\n ReactDOM.render(,wrapper);\r\n}\r\n\r\nserviceWorker.unregister();\r\n"],"sourceRoot":""}