@performant-software/shared-components 0.5.11 → 0.5.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/package.json +2 -2
- package/src/index.js +1 -0
- package/src/services/ReferenceTables.js +11 -0
- package/src/transforms/References.js +14 -0
- package/types/index.js.flow +1 -0
- package/types/services/ReferenceTables.js.flow +11 -0
- package/types/transforms/References.js.flow +14 -0
package/build/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(){"use strict";var e={n:function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,{a:r}),r},d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{Attachments:function(){return Ue},BaseService:function(){return J},BaseTransform:function(){return ue},Browser:function(){return q},Calendar:function(){return ut},Date:function(){return ct},Element:function(){return yt},FormDataTransform:function(){return et},GoogleScript:function(){return x},Hooks:function(){return pt},InfiniteScroll:function(){return L},Keyboard:function(){return W},Map:function(){return dt},NestedAttributesTransform:function(){return pe},Object:function(){return b},ReferenceCodesService:function(){return ie},ReferenceTablesService:function(){return Fe},String:function(){return ce},Timer:function(){return bt},i18n:function(){return f},useDragDrop:function(){return ft},useEditContainer:function(){return E},withGoogleAnalytics:function(){return M}});var r={};e.r(r),e.d(r,{Z:function(){return q}});var n=require("react"),o=e.n(n),i=require("underscore"),a=e.n(i),u=require("i18next"),c=e.n(u),l={en:{translation:JSON.parse('{"AccordionList":{"deleteContent":"Are you sure you want to remove this record?","deleteHeader":"Confirm Remove","record":"Record","record_plural":"Records"},"AccordionSelector":{"title":"Select Items"},"Common":{"buttons":{"add":"Add","cancel":"Cancel","clear":"Clear","edit":"Edit","ok":"OK","save":"Save"},"errors":{"title":"Oops!"},"messages":{"error":{"header":"Oops!"},"loading":"Loading","save":{"content":"Your changes have been saved.","header":"Success!"}}},"EditContainer":{"errors":{"general":"Something went wrong while saving the record. Please make sure all required fields are filled out.","required":"The {{key}} field is required.","system":"A system error occurred while saving the record. Please contact your system administrator.","unique":"A record with the {{key}} \\"{{value}}\\" already exists."}},"DataTable":{"actions":{"copy":{"content":"Creates an editable copy to be saved as a new record","title":"Copy"},"delete":{"content":"Removes the record, permanently","title":"Remove"},"edit":{"content":"Opens the modal to edit the record","title":"Edit"}},"columns":{"actions":"Actions","select":"Select"},"loading":"Loading"},"EditProvider":{"errors":{"general":"Something went wrong while saving the record. Please make sure all required fields are filled out.","required":"The {{key}} field is required.","unique":"A record with the {{key}} \\"{{value}}\\" already exists."}},"FileUpload":{"add":"<0>Add files</0> or drop files here","errors":{"fileType":"Unable to upload {{name}} because {{type}} files are not allowed.","maxSize":"Unable to upload {{name}} because it exceeds 10 MB."}},"FileUploadModal":{"errors":{"required":"{{filename}} - The following fields are required: {{fields}}"},"loader":"Uploading files...","title":"Upload Files"},"FuzzyDate":{"accuracy":{"date":"Date","month":"Month","year":"Year"},"buttons":{"addRange":"Add Range","removeRange":"Remove Range"},"labels":{"accuracy":"Accuracy","date":"Date","description":"Description","month":"Month","year":"Year"},"title":"Fuzzy Date"},"ItemList":{"actions":{"copy":"Copy","delete":"Remove","edit":"Edit"},"buttons":{"clear":"Clear selected","deselectAll":"Deselect all","selectAll":"Select all"}},"KeyboardField":{"labels":{"hideKeyboard":"Hide Keyboard","showKeyboard":"Show Keyboard"}},"LazyDocument":{"buttons":{"download":"Download"}},"LazyImage":{"buttons":{"view":"View image"}},"LazyVideo":{"buttons":{"play":"Play video"}},"List":{"buttons":{"add":"Add","deleteAll":"Delete all"},"deleteAllContent":"Are you sure you want to remove all records? This action cannot be undone.","deleteAllHeader":"Confirm Remove All","deleteContent":"Are you sure you want to remove this record?","deleteHeader":"Confirm Remove","emptyList":"No matching records found.","emptyListAdd":"You haven\'t added any yet. Click <1><0><0></0><1></1></0></1> to get started.","labels":{"perPage":"Show {{perPage}}"},"record":"Record","record_plural":"Records"},"ListFilters":{"buttons":{"add":"Add","reset":"Reset filters"},"operators":{"contain":"Contains","empty":"Is empty","equal":"Equals","greaterThan":"Is greater than","lessThan":"Is less than","notContain":"Does not contain","notEmpty":"Is not empty","notEqual":"Does not equal"},"title":"Filters"},"LoginModal":{"buttonCancel":"Cancel","buttonLogin":"Login","email":"Email","header":"Login","loginErrorContent":"The username and/or password you entered is invalid. Please double check and try again.","loginErrorHeader":"Invalid Credentials","password":"Password"},"RemoteDropdown":{"labels":{"add":"Add","loadMore":"Load more"}},"Selectize":{"noRecords":"No matching records."},"VideoFrameSelector":{"buttons":{"select":"Select frame"},"labels":{"interval":"Interval: {{count}} second","interval_plural":"Interval: {{count}} seconds"},"title":"Select Frame"},"ViewXML":{"buttons":{"view":"View XML"},"title":"XML"}}')}},s=c().createInstance();s.init({debug:!0,fallbackLng:"en",lng:"en",interpolation:{escapeValue:!1},resources:l});var f=s;function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}var p={emptyValues:["",null,void 0,[],{}],ignoreHtml:!0,ignoreWhitespace:!0},d=/(<([^>]+)>)/gi,h=/\s\s+/g,b={isEmpty:function(e){return a().isObject(e)||a().isArray(e)?a().isEmpty(e):!e},isEqual:function e(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=a().defaults(n,p);if(t===r||a().contains(o.emptyValues,t)&&a().contains(o.emptyValues,r))return!0;if(a().isString(t)&&a().isString(r)){var i=t,u=r;if(o.ignoreWhitespace&&(i=t.replace(h," "),u=r.replace(h," ")),o.ignoreHtml&&(i=i.replace(d,""),u=u.replace(d,"")),i===u)return!0}if(null!==t&&"object"===y(t)&&null!==r&&"object"===y(r)){var c=a().keys(t),l=a().keys(r);if(c.length!==l.length)return!1;var s=!0;return a().each(a().keys(t),(function(n){a().has(r,n)&&e(t[n],r[n])||(s=!1)})),!!s}return!1},isPromise:function(e){return!!e&&"object"===y(e)&&"function"==typeof e.then}};function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function m(){return m=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},m.apply(this,arguments)}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function w(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?w(Object(r),!0).forEach((function(t){j(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):w(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function j(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function P(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function S(e,t){return S=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},S(e,t)}function k(e,t){if(t&&("object"===v(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function C(e){return C=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},C(e)}var E=function(e){return function(t){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&S(e,t)}(l,t);var r,n,i,u,c=(i=l,u=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=C(i);if(u){var r=C(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return k(this,e)});function l(e){var t;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),t=c.call(this,e);var r=a().defaults(e.item||{},e.defaults||{});return t.state={item:r,loading:!1,originalItem:r,saving:!1,validationErrors:[]},t}return r=l,n=[{key:"componentDidMount",value:function(){var e=this;this.props.onInitialize&&this.props.item&&this.props.item.id&&this.setState({loading:!0},(function(){e.props.onInitialize&&e.props.item&&e.props.onInitialize(e.props.item.id).then((function(t){return e.setState({item:t,originalItem:t,loading:!1})}))}))}},{key:"componentDidUpdate",value:function(e){e.item!==this.props.item&&this.setState({item:this.props.item,originalItem:this.props.item})}},{key:"componentWillUnmount",value:function(){this.onSetState({saving:!1})}},{key:"isChild",value:function(e,t){return e.uid&&t.uid&&e.uid===t.uid||e.id&&t.id&&e.id===t.id}},{key:"isRequired",value:function(e){return this.props.required&&a().contains(this.props.required,e)}},{key:"isError",value:function(e){return a().has(this.state.validationErrors,e)}},{key:"onClose",value:function(){this.props.onClose()}},{key:"onCreateChildAssociation",value:function(e,t){this.setState((function(r){return{item:O(O({},r.item),{},j({},e,[].concat((n=r.item[e]||[],function(e){if(Array.isArray(e))return g(e)}(n)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(n)||function(e,t){if(e){if("string"==typeof e)return g(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?g(e,t):void 0}}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),[t])))};var n}))}},{key:"onDeleteChildAssociation",value:function(e,t){return t.id?this.onMarkChildAssociationForDelete(e,t):this.onRemoveChildAssociation(e,t)}},{key:"onError",value:function(e){var t=this,r=e.response,n=r.data.errors,o=void 0===n?{}:n,i=r.status,u={};a().each(Object.keys(o),(function(e){var r=o[e],n=t.state.item[e];a().each(r,(function(r){"has already been taken"===r?a().extend(u,j({},e,f.t("EditContainer.errors.unique",{key:e,value:n}))):"can't be blank"===r?a().extend(u,j({},e,f.t("EditContainer.errors.required",{key:e}))):t.props.resolveValidationError&&a().extend(u,t.props.resolveValidationError({key:e,error:r,status:i,item:t.state.item}))}))})),400===i&&a().isEmpty(u)?a().extend(u,{error:f.t("EditContainer.errors.general")}):500===i&&a().isEmpty(u)&&a().extend(u,{error:f.t("EditContainer.errors.system")}),this.setState({saving:!1,validationErrors:u})}},{key:"onMarkChildAssociationForDelete",value:function(e,t){this.setState((function(r){return{item:O(O({},r.item),{},j({},e,a().map(r.item[e]||[],(function(e){return e.id===t.id?O(O({},e),{},{_destroy:!0}):e}))))}}))}},{key:"onMultiAddChildAssociations",value:function(e,t){var r=this,n=this.state.item[e];a().each(t,this.onSaveChildAssociation.bind(this,e));var o=a().filter(n,(function(e){return!a().find(t,r.isChild.bind(r,e))}));a().each(o,this.onDeleteChildAssociation.bind(this,e))}},{key:"onRemoveChildAssociation",value:function(e,t){this.setState((function(r){return{item:O(O({},r.item),{},j({},e,a().filter(r.item[e]||[],(function(e){return e!==t}))))}}))}},{key:"onReset",value:function(){var e=this.props.defaults||{};this.setState({item:e,originalItem:e})}},{key:"onSave",value:function(){var e=this;this.validateForm()&&this.setState({saving:!0},(function(){e.props.onSave(e.state.item).catch(e.onError.bind(e)).finally((function(){return e.setState({saving:!1})}))}))}},{key:"onSaveChildAssociation",value:function(e,t){var r=this.state.item[e]||[];return a().find(r,this.isChild.bind(this,t))?this.onUpdateChildAssociation(e,t):this.onCreateChildAssociation(e,t)}},{key:"onUpdateChildAssociation",value:function(e,t){var r=this;this.setState((function(n){return{item:O(O({},n.item),{},j({},e,a().map(n.item[e]||[],(function(e){return r.isChild(t,e)?t:e}))))}}))}},{key:"onAssociationInputChange",value:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.setState((function(n){var o;return{item:O(O({},n.item),{},(o={},j(o,e,r.id||""),j(o,t,r||{}),o)),validationErrors:a().omit(n.validationErrors,e)}}))}},{key:"onCheckboxInputChange",value:function(e){this.setState((function(t){return{item:O(O({},t.item),{},j({},e,!t.item[e]))}}))}},{key:"onSetState",value:function(e){this.setState((function(t){return{item:O(O({},t.item),e)}}))}},{key:"onTextInputChange",value:function(e,t,r){var n=r.value;this.setState((function(t){return{item:O(O({},t.item),{},j({},e,n)),validationErrors:a().omit(t.validationErrors,e)}}))}},{key:"render",value:function(){return o().createElement(e,m({},this.props,{dirty:!(!this.state.item.id||b.isEqual(this.state.item,this.state.originalItem)),errors:a().values(this.state.validationErrors),isError:this.isError.bind(this),isRequired:this.isRequired.bind(this),item:this.state.item,loading:this.state.loading,onAssociationInputChange:this.onAssociationInputChange.bind(this),onCheckboxInputChange:this.onCheckboxInputChange.bind(this),onDeleteChildAssociation:this.onDeleteChildAssociation.bind(this),onMultiAddChildAssociations:this.onMultiAddChildAssociations.bind(this),onReset:this.onReset.bind(this),onSave:this.onSave.bind(this),onSaveChildAssociation:this.onSaveChildAssociation.bind(this),onTextInputChange:this.onTextInputChange.bind(this),onSetState:this.onSetState.bind(this),saving:this.state.saving}))}},{key:"validateForm",value:function(){var e=this,t=[];this.props.validate&&a().extend(t,this.props.validate(this.state.item));var r=this.props.required||[];return a().each(r,(function(r){var n=e.state.item[r];(a().isNumber(n)?a().isEmpty(n.toString()):a().isEmpty(n))&&a().extend(t,j({},r,f.t("EditContainer.errors.required",{key:r})))})),this.setState({validationErrors:t}),0===a().keys(t).length}}],n&&P(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),l}(n.Component)},D=require("react-ga4"),A=e.n(D);function R(){return R=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},R.apply(this,arguments)}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var T="accepted",I="not_set",M=function(e){return function(t){var r,i,a=(r=(0,n.useState)(),i=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i=[],a=!0,u=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,o=e}finally{try{a||null==r.return||r.return()}finally{if(u)throw o}}return i}}(r,i)||function(e,t){if(e){if("string"==typeof e)return _(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_(e,t):void 0}}(r,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=a[0],c=a[1],l=(0,n.useCallback)((function(){return c(T)}),[]),s=(0,n.useCallback)((function(){return c("rejected")}),[]);return(0,n.useEffect)((function(){var e;c((e=t.storageKey,localStorage.getItem(e)||I))}),[t.storageKey]),(0,n.useEffect)((function(){var e,r;e=t.storageKey,r=u||"",localStorage.setItem(e,r)}),[u,t.storageKey]),(0,n.useEffect)((function(){t.location&&u===T&&A().send("pageview")}),[u,t.location]),(0,n.useEffect)((function(){u===T&&A().initialize(t.id)}),[u]),t.id&&t.storageKey&&u===I?o().createElement(e,R({},t,{onAccept:l,onDecline:s})):null}},x=require("@react-google-maps/api").LoadScript,q={isBrowser:function(){return"undefined"!=typeof window}};function B(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Y=function(e){var t,i,a=(t=(0,n.useState)(0),i=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i=[],a=!0,u=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,o=e}finally{try{a||null==r.return||r.return()}finally{if(u)throw o}}return i}}(t,i)||function(e,t){if(e){if("string"==typeof e)return B(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?B(e,t):void 0}}(t,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=a[0],c=a[1],l=(0,n.useRef)(),s=function(){var t;return e.context?t=e.context.current:(0,r.isBrowser)()&&(t=document.documentElement),t},f=function(){var t=s();t&&t.scrollTop+t.clientHeight>=t.scrollHeight-e.offset&&e.onBottomReached()};return(0,n.useEffect)((function(){var t;if(e.context?t=e.context.current:(0,r.isBrowser)()&&(t=window),t)return t.addEventListener("scroll",f),function(){return t&&t.removeEventListener("scroll",f)}}),[e.context]),(0,n.useEffect)((function(){if(!function(){var e=!1,t=s();if(t){var r=t.clientHeight;e=t.scrollHeight>r}return e}()&&l&&l.current){var t=l.current.clientHeight;t>u&&(c(t),e.onBottomReached())}})),o().createElement("div",{ref:l},e.children)};Y.defaultProps={offset:0};var L=Y,N=require("simple-keyboard"),H=e.n(N);function F(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function K(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?F(Object(r),!0).forEach((function(t){U(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):F(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function U(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var z="shift",V=function(e){var t=(0,n.useRef)(),r=function(e){var r="{lock}"===e||"{shift}"===e;r&&t.current&&t.current.options.layoutName===z?t.current.setOptions({layoutName:"default"}):r&&t.current&&t.current.options.layoutName!==z&&t.current.setOptions({layoutName:z})};return(0,n.useEffect)((function(){var n=e.layout,o=e.onChange;t.current=new(H())(".".concat(e.keyboardClass),K(K({},n),{},{onChange:o,onKeyPress:r})),t.current.setInput(e.value)}),[]),(0,n.useEffect)((function(){t.current&&t.current.setInput(e.value)}),[e.value]),o().createElement("div",{className:e.keyboardClass})};V.defaultProps={keyboardClass:"simple-keyboard"};var W=V,X=require("axios"),$=e.n(X);function G(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var J=function(){function e(){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.constructor===e)throw new TypeError('Abstract class "BaseService" cannot be instantiated directly.')}var t,r,n;return t=e,n=[{key:"configure",value:function(e){e($())}}],(r=[{key:"create",value:function(e){var t=this.getTransform();return $().post(this.getBaseUrl(),t.toPayload(e),this.getConfig())}},{key:"delete",value:function(e){return $().delete("".concat(this.getBaseUrl(),"/").concat(e.id))}},{key:"fetchAll",value:function(e){return $().get(this.getBaseUrl(),{params:e})}},{key:"fetchOne",value:function(e){return $().get("".concat(this.getBaseUrl(),"/").concat(e))}},{key:"save",value:function(e){return e.id?this.update(e):this.create(e)}},{key:"search",value:function(e){return $().post("".concat(this.getBaseUrl(),"/search"),e)}},{key:"update",value:function(e){var t=this.getTransform();return $().put("".concat(this.getBaseUrl(),"/").concat(e.id),t.toPayload(e),this.getConfig())}},{key:"getAxios",value:function(){return $()}},{key:"getBaseUrl",value:function(){return""}},{key:"getConfig",value:function(){return null}},{key:"getTransform",value:function(){return{}}}])&&G(t.prototype,r),n&&G(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function Z(e){return Z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Z(e)}function Q(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ee(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function te(e,t){return te=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},te(e,t)}function re(e,t){if(t&&("object"===Z(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function ne(e){return ne=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},ne(e)}var oe=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&te(e,t)}(a,e);var t,r,n,o,i=(n=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=ne(n);if(o){var r=ne(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return re(this,e)});function a(){return Q(this,a),i.apply(this,arguments)}return t=a,(r=[{key:"getBaseUrl",value:function(){return"/controlled_vocabulary/reference_codes"}},{key:"getTransform",value:function(){return{}}}])&&ee(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),a}(J),ie=new oe;function ae(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var ue=function(){function e(){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.constructor===e)throw new TypeError('Abstract class "BaseTransform" cannot be instantiated directly.')}var t,r;return t=e,(r=[{key:"getParameterName",value:function(){return""}},{key:"getPayloadKeys",value:function(){return[]}},{key:"toPayload",value:function(e){return t={},r=this.getParameterName(),n=a().pick(e,this.getPayloadKeys()),r in t?Object.defineProperty(t,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[r]=n,t;var t,r,n}}])&&ae(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}(),ce={includes:function(e,t){return e&&t&&e.toString().toLowerCase().includes(t.toString().toLowerCase())},toString:function(e){return a().isNumber(e)||a().isBoolean(e)?e:e||""}};function le(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function se(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?le(Object(r),!0).forEach((function(t){fe(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):le(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function fe(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ye(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var pe=function(){function e(){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.constructor===e)throw new TypeError('Abstract class "NestedAttributesTransform" cannot be instantiated directly.')}var t,r;return t=e,(r=[{key:"getPayloadKeys",value:function(){return[]}},{key:"toFormData",value:function(e,t,r,n){var o=this;a().each(r[n],(function(r,i){a().each(o.getPayloadKeys(),(function(o){e.append("".concat(t,"[").concat(n,"][").concat(i,"][").concat(o,"]"),ce.toString(r[o]))}))}))}},{key:"toPayload",value:function(e,t){var r=this;return fe({},t,a().map(e[t],(function(e,t){return se(se({},a().pick(e,r.getPayloadKeys())),{},{order:t})})))}}])&&ye(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();function de(e){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},de(e)}function he(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function be(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function ve(){return ve="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,r){var n=me(e,t);if(n){var o=Object.getOwnPropertyDescriptor(n,t);return o.get?o.get.call(arguments.length<3?e:r):o.value}},ve.apply(this,arguments)}function me(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Oe(e)););return e}function ge(e,t){return ge=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},ge(e,t)}function we(e,t){if(t&&("object"===de(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Oe(e){return Oe=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Oe(e)}var je=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&ge(e,t)}(a,e);var t,r,n,o,i=(n=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Oe(n);if(o){var r=Oe(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return we(this,e)});function a(){return he(this,a),i.apply(this,arguments)}return t=a,r=[{key:"getPayloadKeys",value:function(){return["id","name","_destroy"]}},{key:"toPayload",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"reference_codes";return ve(Oe(a.prototype),"toPayload",this).call(this,e,t)}}],r&&be(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),a}(pe),Pe=new je;function Se(e){return Se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Se(e)}function ke(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ce(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ke(Object(r),!0).forEach((function(t){Ee(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ke(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ee(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function De(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ae(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Re(e,t){return Re=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Re(e,t)}function _e(e,t){if(t&&("object"===Se(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Te(e){return Te=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Te(e)}var Ie=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Re(e,t)}(u,e);var t,r,n,o,i=(n=u,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Te(n);if(o){var r=Te(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return _e(this,e)});function u(){return De(this,u),i.apply(this,arguments)}return t=u,(r=[{key:"getParameterName",value:function(){return"reference_table"}},{key:"getPayloadKeys",value:function(){return["name","key"]}},{key:"toPayload",value:function(e){return{reference_table:Ce(Ce({},a().pick(e,this.getPayloadKeys())),Pe.toPayload(e))}}}])&&Ae(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),u}(ue),Me=new Ie;function xe(e){return xe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xe(e)}function qe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Be(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Ye(e,t){return Ye=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Ye(e,t)}function Le(e,t){if(t&&("object"===xe(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Ne(e){return Ne=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Ne(e)}var He=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ye(e,t)}(a,e);var t,r,n,o,i=(n=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Ne(n);if(o){var r=Ne(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return Le(this,e)});function a(){return qe(this,a),i.apply(this,arguments)}return t=a,(r=[{key:"getBaseUrl",value:function(){return"/controlled_vocabulary/reference_tables"}},{key:"getTransform",value:function(){return Me}}])&&Be(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),a}(J),Fe=new He;function Ke(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var Ue=new(function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r;return t=e,(r=[{key:"toPayload",value:function(e,t,r,n){var o=r[n],i="".concat(n,"_remove");o?e.append("".concat(t,"[").concat(n,"]"),o):r[i]&&e.append("".concat(t,"[").concat(i,"]"),r[i])}}])&&Ke(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}());function ze(e){return ze="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ze(e)}function Ve(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function We(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Xe(e,t){return Xe=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Xe(e,t)}function $e(e,t){if(t&&("object"===ze(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Ge(e){return Ge=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Ge(e)}var Je,Ze,Qe=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Xe(e,t)}(u,e);var t,r,n,o,i=(n=u,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Ge(n);if(o){var r=Ge(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return $e(this,e)});function u(){return Ve(this,u),i.apply(this,arguments)}return t=u,(r=[{key:"toPayload",value:function(e){var t=this,r=new FormData;return a().each(this.getPayloadKeys(),(function(n){r.append("".concat(t.getParameterName(),"[").concat(n,"]"),ce.toString(e[n]))})),r}}])&&We(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),u}(ue),et=Qe,tt=require("moment-islamic-civil"),rt=e.n(tt);function nt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ot(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function it(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}require("moment/min/locales");var at=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"en",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.Calendars.gregorian;ot(this,e),this.locale=void 0,this.name=void 0,this.locale=t,this.name=r}var t,r;return t=e,r=[{key:"addDate",value:function(e,t){var r=this.moment(e);return this.isHijri()?r.add(t,"iDate"):r.add(t,"date")}},{key:"addMonth",value:function(e,t){var r=this.moment(e);return this.isHijri()?r.add(t,"iMonth"):r.add(t,"month")}},{key:"addYear",value:function(e,t){var r=this.moment(e);return this.isHijri()?r.add(t,"iYear"):r.add(t,"year")}},{key:"convertToDate",value:function(e){var t=e.year,r=e.month,n=e.date,o=this.moment().hours(0).minutes(0).seconds(0);return this.isHijri()?o.iYear(t||this.getDefaultYear()).iMonth(r||this.getDefaultMonth()).iDate(n||this.getDefaultDate()):o.year(t||this.getDefaultYear()).month(r||this.getDefaultMonth()).date(n||this.getDefaultDate())}},{key:"daysInMonth",value:function(e,t){var r=e||this.getDefaultYear(),n=t||this.getDefaultMonth(),o=this.convertToDate({year:r,month:n,date:this.getDefaultDate()});return(this.isHijri()?o.iDaysInMonth():o.daysInMonth())||31}},{key:"format",value:function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.DateFormats.gregorian;return this.moment(t).format(e.DateFormats[this.name][r])}},{key:"getDefaultDate",value:function(){return e.Defaults[this.name].date}},{key:"getDefaultMonth",value:function(){return e.Defaults[this.name].month}},{key:"getDefaultYear",value:function(){return e.Defaults[this.name].year}},{key:"isHijri",value:function(){return this.name===e.Calendars.hijri}},{key:"listMonths",value:function(){var e=this.moment().localeData();return this.isHijri()?e._iMonths:e.months()}},{key:"moment",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=e?rt()(e):rt()();return t.locale(this.locale),t}},{key:"parseDate",value:function(e){var t=this.moment(e);return{year:this.isHijri()?t.iYear():t.year(),month:this.isHijri()?t.iMonth():t.month(),date:this.isHijri()?t.iDate():t.date()}}}],r&&it(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();at.Calendars=void 0,at.DateFormats=void 0,at.Defaults=void 0,at.Calendars={gregorian:"gregorian",hijri:"hijri"},at.DateFormats=(nt(Je={},at.Calendars.gregorian,{0:"YYYY",1:"MMMM YYYY",2:"L"}),nt(Je,at.Calendars.hijri,{0:"iYYYY",1:"iMMMM iYYYY",2:"iM/iD/iYYYY"}),Je),at.Defaults=(nt(Ze={},at.Calendars.gregorian,{year:0,month:0,date:1}),nt(Ze,at.Calendars.hijri,{year:1410,month:0,date:1}),Ze);var ut=at,ct={formatDate:function(e,t,r){return new Date(e).toLocaleDateString(t,r)}},lt=require("react-dnd"),st=require("react-dnd-html5-backend"),ft=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:st.HTML5Backend;return function(){return o().createElement(lt.DndProvider,{backend:t},o().createElement(e,null))}},yt={findByType:function(e,t){var r=[],n=[t.displayName||t.name];return o().Children.forEach(e,(function(e){var t=e&&e.type&&(e.type.displayName||e.type.name);n.includes(t)&&r.push(e)})),r}},pt={usePrevious:function(e){var t=(0,n.useRef)();return(0,n.useEffect)((function(){t.current=e}),[e]),t.current}},dt={getPosition:function(e){var t;if(e){var r=Number.parseFloat(e.lat),n=Number.parseFloat(e.lng);Number.isNaN(r)||Number.isNaN(n)||(t={lat:r,lng:n})}return t}};function ht(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var bt=new(function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.timeout=void 0,this.timeout=null}var t,r;return t=e,(r=[{key:"clearSearchTimer",value:function(){clearTimeout(this.timeout)}},{key:"setSearchTimer",value:function(e){clearTimeout(this.timeout),this.timeout=setTimeout(e,500)}}])&&ht(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}());module.exports=t}();
|
|
1
|
+
!function(){"use strict";var e={n:function(t){var r=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(r,{a:r}),r},d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{Attachments:function(){return Ue},BaseService:function(){return J},BaseTransform:function(){return ue},Browser:function(){return B},Calendar:function(){return ht},Date:function(){return bt},Element:function(){return wt},FormDataTransform:function(){return Ze},GoogleScript:function(){return x},Hooks:function(){return Ot},InfiniteScroll:function(){return L},Keyboard:function(){return W},Map:function(){return jt},NestedAttributesTransform:function(){return pe},Object:function(){return b},ReferenceCodesService:function(){return ie},ReferenceTablesService:function(){return Ke},References:function(){return ct},String:function(){return ce},Timer:function(){return St},i18n:function(){return f},useDragDrop:function(){return gt},useEditContainer:function(){return C},withGoogleAnalytics:function(){return M}});var r={};e.r(r),e.d(r,{Z:function(){return B}});var n=require("react"),o=e.n(n),i=require("underscore"),a=e.n(i),u=require("i18next"),c=e.n(u),l={en:{translation:JSON.parse('{"AccordionList":{"deleteContent":"Are you sure you want to remove this record?","deleteHeader":"Confirm Remove","record":"Record","record_plural":"Records"},"AccordionSelector":{"title":"Select Items"},"Common":{"buttons":{"add":"Add","cancel":"Cancel","clear":"Clear","edit":"Edit","ok":"OK","save":"Save"},"errors":{"title":"Oops!"},"messages":{"error":{"header":"Oops!"},"loading":"Loading","save":{"content":"Your changes have been saved.","header":"Success!"}}},"EditContainer":{"errors":{"general":"Something went wrong while saving the record. Please make sure all required fields are filled out.","required":"The {{key}} field is required.","system":"A system error occurred while saving the record. Please contact your system administrator.","unique":"A record with the {{key}} \\"{{value}}\\" already exists."}},"DataTable":{"actions":{"copy":{"content":"Creates an editable copy to be saved as a new record","title":"Copy"},"delete":{"content":"Removes the record, permanently","title":"Remove"},"edit":{"content":"Opens the modal to edit the record","title":"Edit"}},"columns":{"actions":"Actions","select":"Select"},"loading":"Loading"},"EditProvider":{"errors":{"general":"Something went wrong while saving the record. Please make sure all required fields are filled out.","required":"The {{key}} field is required.","unique":"A record with the {{key}} \\"{{value}}\\" already exists."}},"FileUpload":{"add":"<0>Add files</0> or drop files here","errors":{"fileType":"Unable to upload {{name}} because {{type}} files are not allowed.","maxSize":"Unable to upload {{name}} because it exceeds 10 MB."}},"FileUploadModal":{"errors":{"required":"{{filename}} - The following fields are required: {{fields}}"},"loader":"Uploading files...","title":"Upload Files"},"FuzzyDate":{"accuracy":{"date":"Date","month":"Month","year":"Year"},"buttons":{"addRange":"Add Range","removeRange":"Remove Range"},"labels":{"accuracy":"Accuracy","date":"Date","description":"Description","month":"Month","year":"Year"},"title":"Fuzzy Date"},"ItemList":{"actions":{"copy":"Copy","delete":"Remove","edit":"Edit"},"buttons":{"clear":"Clear selected","deselectAll":"Deselect all","selectAll":"Select all"}},"KeyboardField":{"labels":{"hideKeyboard":"Hide Keyboard","showKeyboard":"Show Keyboard"}},"LazyDocument":{"buttons":{"download":"Download"}},"LazyImage":{"buttons":{"view":"View image"}},"LazyVideo":{"buttons":{"play":"Play video"}},"List":{"buttons":{"add":"Add","deleteAll":"Delete all"},"deleteAllContent":"Are you sure you want to remove all records? This action cannot be undone.","deleteAllHeader":"Confirm Remove All","deleteContent":"Are you sure you want to remove this record?","deleteHeader":"Confirm Remove","emptyList":"No matching records found.","emptyListAdd":"You haven\'t added any yet. Click <1><0><0></0><1></1></0></1> to get started.","labels":{"perPage":"Show {{perPage}}"},"record":"Record","record_plural":"Records"},"ListFilters":{"buttons":{"add":"Add","reset":"Reset filters"},"operators":{"contain":"Contains","empty":"Is empty","equal":"Equals","greaterThan":"Is greater than","lessThan":"Is less than","notContain":"Does not contain","notEmpty":"Is not empty","notEqual":"Does not equal"},"title":"Filters"},"LoginModal":{"buttonCancel":"Cancel","buttonLogin":"Login","email":"Email","header":"Login","loginErrorContent":"The username and/or password you entered is invalid. Please double check and try again.","loginErrorHeader":"Invalid Credentials","password":"Password"},"RemoteDropdown":{"labels":{"add":"Add","loadMore":"Load more"}},"Selectize":{"noRecords":"No matching records."},"VideoFrameSelector":{"buttons":{"select":"Select frame"},"labels":{"interval":"Interval: {{count}} second","interval_plural":"Interval: {{count}} seconds"},"title":"Select Frame"},"ViewXML":{"buttons":{"view":"View XML"},"title":"XML"}}')}},s=c().createInstance();s.init({debug:!0,fallbackLng:"en",lng:"en",interpolation:{escapeValue:!1},resources:l});var f=s;function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}var p={emptyValues:["",null,void 0,[],{}],ignoreHtml:!0,ignoreWhitespace:!0},d=/(<([^>]+)>)/gi,h=/\s\s+/g,b={isEmpty:function(e){return a().isObject(e)||a().isArray(e)?a().isEmpty(e):!e},isEqual:function e(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=a().defaults(n,p);if(t===r||a().contains(o.emptyValues,t)&&a().contains(o.emptyValues,r))return!0;if(a().isString(t)&&a().isString(r)){var i=t,u=r;if(o.ignoreWhitespace&&(i=t.replace(h," "),u=r.replace(h," ")),o.ignoreHtml&&(i=i.replace(d,""),u=u.replace(d,"")),i===u)return!0}if(null!==t&&"object"===y(t)&&null!==r&&"object"===y(r)){var c=a().keys(t),l=a().keys(r);if(c.length!==l.length)return!1;var s=!0;return a().each(a().keys(t),(function(n){a().has(r,n)&&e(t[n],r[n])||(s=!1)})),!!s}return!1},isPromise:function(e){return!!e&&"object"===y(e)&&"function"==typeof e.then}};function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function m(){return m=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},m.apply(this,arguments)}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function w(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?w(Object(r),!0).forEach((function(t){j(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):w(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function j(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function P(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function S(e,t){return S=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},S(e,t)}function k(e,t){if(t&&("object"===v(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function E(e){return E=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},E(e)}var C=function(e){return function(t){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&S(e,t)}(l,t);var r,n,i,u,c=(i=l,u=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=E(i);if(u){var r=E(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return k(this,e)});function l(e){var t;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,l),t=c.call(this,e);var r=a().defaults(e.item||{},e.defaults||{});return t.state={item:r,loading:!1,originalItem:r,saving:!1,validationErrors:[]},t}return r=l,n=[{key:"componentDidMount",value:function(){var e=this;this.props.onInitialize&&this.props.item&&this.props.item.id&&this.setState({loading:!0},(function(){e.props.onInitialize&&e.props.item&&e.props.onInitialize(e.props.item.id).then((function(t){return e.setState({item:t,originalItem:t,loading:!1})}))}))}},{key:"componentDidUpdate",value:function(e){e.item!==this.props.item&&this.setState({item:this.props.item,originalItem:this.props.item})}},{key:"componentWillUnmount",value:function(){this.onSetState({saving:!1})}},{key:"isChild",value:function(e,t){return e.uid&&t.uid&&e.uid===t.uid||e.id&&t.id&&e.id===t.id}},{key:"isRequired",value:function(e){return this.props.required&&a().contains(this.props.required,e)}},{key:"isError",value:function(e){return a().has(this.state.validationErrors,e)}},{key:"onClose",value:function(){this.props.onClose()}},{key:"onCreateChildAssociation",value:function(e,t){this.setState((function(r){return{item:O(O({},r.item),{},j({},e,[].concat((n=r.item[e]||[],function(e){if(Array.isArray(e))return g(e)}(n)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(n)||function(e,t){if(e){if("string"==typeof e)return g(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?g(e,t):void 0}}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),[t])))};var n}))}},{key:"onDeleteChildAssociation",value:function(e,t){return t.id?this.onMarkChildAssociationForDelete(e,t):this.onRemoveChildAssociation(e,t)}},{key:"onError",value:function(e){var t=this,r=e.response,n=r.data.errors,o=void 0===n?{}:n,i=r.status,u={};a().each(Object.keys(o),(function(e){var r=o[e],n=t.state.item[e];a().each(r,(function(r){"has already been taken"===r?a().extend(u,j({},e,f.t("EditContainer.errors.unique",{key:e,value:n}))):"can't be blank"===r?a().extend(u,j({},e,f.t("EditContainer.errors.required",{key:e}))):t.props.resolveValidationError&&a().extend(u,t.props.resolveValidationError({key:e,error:r,status:i,item:t.state.item}))}))})),400===i&&a().isEmpty(u)?a().extend(u,{error:f.t("EditContainer.errors.general")}):500===i&&a().isEmpty(u)&&a().extend(u,{error:f.t("EditContainer.errors.system")}),this.setState({saving:!1,validationErrors:u})}},{key:"onMarkChildAssociationForDelete",value:function(e,t){this.setState((function(r){return{item:O(O({},r.item),{},j({},e,a().map(r.item[e]||[],(function(e){return e.id===t.id?O(O({},e),{},{_destroy:!0}):e}))))}}))}},{key:"onMultiAddChildAssociations",value:function(e,t){var r=this,n=this.state.item[e];a().each(t,this.onSaveChildAssociation.bind(this,e));var o=a().filter(n,(function(e){return!a().find(t,r.isChild.bind(r,e))}));a().each(o,this.onDeleteChildAssociation.bind(this,e))}},{key:"onRemoveChildAssociation",value:function(e,t){this.setState((function(r){return{item:O(O({},r.item),{},j({},e,a().filter(r.item[e]||[],(function(e){return e!==t}))))}}))}},{key:"onReset",value:function(){var e=this.props.defaults||{};this.setState({item:e,originalItem:e})}},{key:"onSave",value:function(){var e=this;this.validateForm()&&this.setState({saving:!0},(function(){e.props.onSave(e.state.item).catch(e.onError.bind(e)).finally((function(){return e.setState({saving:!1})}))}))}},{key:"onSaveChildAssociation",value:function(e,t){var r=this.state.item[e]||[];return a().find(r,this.isChild.bind(this,t))?this.onUpdateChildAssociation(e,t):this.onCreateChildAssociation(e,t)}},{key:"onUpdateChildAssociation",value:function(e,t){var r=this;this.setState((function(n){return{item:O(O({},n.item),{},j({},e,a().map(n.item[e]||[],(function(e){return r.isChild(t,e)?t:e}))))}}))}},{key:"onAssociationInputChange",value:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.setState((function(n){var o;return{item:O(O({},n.item),{},(o={},j(o,e,r.id||""),j(o,t,r||{}),o)),validationErrors:a().omit(n.validationErrors,e)}}))}},{key:"onCheckboxInputChange",value:function(e){this.setState((function(t){return{item:O(O({},t.item),{},j({},e,!t.item[e]))}}))}},{key:"onSetState",value:function(e){this.setState((function(t){return{item:O(O({},t.item),e)}}))}},{key:"onTextInputChange",value:function(e,t,r){var n=r.value;this.setState((function(t){return{item:O(O({},t.item),{},j({},e,n)),validationErrors:a().omit(t.validationErrors,e)}}))}},{key:"render",value:function(){return o().createElement(e,m({},this.props,{dirty:!(!this.state.item.id||b.isEqual(this.state.item,this.state.originalItem)),errors:a().values(this.state.validationErrors),isError:this.isError.bind(this),isRequired:this.isRequired.bind(this),item:this.state.item,loading:this.state.loading,onAssociationInputChange:this.onAssociationInputChange.bind(this),onCheckboxInputChange:this.onCheckboxInputChange.bind(this),onDeleteChildAssociation:this.onDeleteChildAssociation.bind(this),onMultiAddChildAssociations:this.onMultiAddChildAssociations.bind(this),onReset:this.onReset.bind(this),onSave:this.onSave.bind(this),onSaveChildAssociation:this.onSaveChildAssociation.bind(this),onTextInputChange:this.onTextInputChange.bind(this),onSetState:this.onSetState.bind(this),saving:this.state.saving}))}},{key:"validateForm",value:function(){var e=this,t=[];this.props.validate&&a().extend(t,this.props.validate(this.state.item));var r=this.props.required||[];return a().each(r,(function(r){var n=e.state.item[r];(a().isNumber(n)?a().isEmpty(n.toString()):a().isEmpty(n))&&a().extend(t,j({},r,f.t("EditContainer.errors.required",{key:r})))})),this.setState({validationErrors:t}),0===a().keys(t).length}}],n&&P(r.prototype,n),Object.defineProperty(r,"prototype",{writable:!1}),l}(n.Component)},D=require("react-ga4"),A=e.n(D);function R(){return R=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},R.apply(this,arguments)}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var T="accepted",I="not_set",M=function(e){return function(t){var r,i,a=(r=(0,n.useState)(),i=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i=[],a=!0,u=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,o=e}finally{try{a||null==r.return||r.return()}finally{if(u)throw o}}return i}}(r,i)||function(e,t){if(e){if("string"==typeof e)return _(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_(e,t):void 0}}(r,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=a[0],c=a[1],l=(0,n.useCallback)((function(){return c(T)}),[]),s=(0,n.useCallback)((function(){return c("rejected")}),[]);return(0,n.useEffect)((function(){var e;c((e=t.storageKey,localStorage.getItem(e)||I))}),[t.storageKey]),(0,n.useEffect)((function(){var e,r;e=t.storageKey,r=u||"",localStorage.setItem(e,r)}),[u,t.storageKey]),(0,n.useEffect)((function(){t.location&&u===T&&A().send("pageview")}),[u,t.location]),(0,n.useEffect)((function(){u===T&&A().initialize(t.id)}),[u]),t.id&&t.storageKey&&u===I?o().createElement(e,R({},t,{onAccept:l,onDecline:s})):null}},x=require("@react-google-maps/api").LoadScript,B={isBrowser:function(){return"undefined"!=typeof window}};function q(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Y=function(e){var t,i,a=(t=(0,n.useState)(0),i=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i=[],a=!0,u=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,o=e}finally{try{a||null==r.return||r.return()}finally{if(u)throw o}}return i}}(t,i)||function(e,t){if(e){if("string"==typeof e)return q(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?q(e,t):void 0}}(t,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=a[0],c=a[1],l=(0,n.useRef)(),s=function(){var t;return e.context?t=e.context.current:(0,r.isBrowser)()&&(t=document.documentElement),t},f=function(){var t=s();t&&t.scrollTop+t.clientHeight>=t.scrollHeight-e.offset&&e.onBottomReached()};return(0,n.useEffect)((function(){var t;if(e.context?t=e.context.current:(0,r.isBrowser)()&&(t=window),t)return t.addEventListener("scroll",f),function(){return t&&t.removeEventListener("scroll",f)}}),[e.context]),(0,n.useEffect)((function(){if(!function(){var e=!1,t=s();if(t){var r=t.clientHeight;e=t.scrollHeight>r}return e}()&&l&&l.current){var t=l.current.clientHeight;t>u&&(c(t),e.onBottomReached())}})),o().createElement("div",{ref:l},e.children)};Y.defaultProps={offset:0};var L=Y,N=require("simple-keyboard"),H=e.n(N);function K(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function F(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?K(Object(r),!0).forEach((function(t){U(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):K(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function U(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var z="shift",V=function(e){var t=(0,n.useRef)(),r=function(e){var r="{lock}"===e||"{shift}"===e;r&&t.current&&t.current.options.layoutName===z?t.current.setOptions({layoutName:"default"}):r&&t.current&&t.current.options.layoutName!==z&&t.current.setOptions({layoutName:z})};return(0,n.useEffect)((function(){var n=e.layout,o=e.onChange;t.current=new(H())(".".concat(e.keyboardClass),F(F({},n),{},{onChange:o,onKeyPress:r})),t.current.setInput(e.value)}),[]),(0,n.useEffect)((function(){t.current&&t.current.setInput(e.value)}),[e.value]),o().createElement("div",{className:e.keyboardClass})};V.defaultProps={keyboardClass:"simple-keyboard"};var W=V,X=require("axios"),$=e.n(X);function G(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var J=function(){function e(){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.constructor===e)throw new TypeError('Abstract class "BaseService" cannot be instantiated directly.')}var t,r,n;return t=e,n=[{key:"configure",value:function(e){e($())}}],(r=[{key:"create",value:function(e){var t=this.getTransform();return $().post(this.getBaseUrl(),t.toPayload(e),this.getConfig())}},{key:"delete",value:function(e){return $().delete("".concat(this.getBaseUrl(),"/").concat(e.id))}},{key:"fetchAll",value:function(e){return $().get(this.getBaseUrl(),{params:e})}},{key:"fetchOne",value:function(e){return $().get("".concat(this.getBaseUrl(),"/").concat(e))}},{key:"save",value:function(e){return e.id?this.update(e):this.create(e)}},{key:"search",value:function(e){return $().post("".concat(this.getBaseUrl(),"/search"),e)}},{key:"update",value:function(e){var t=this.getTransform();return $().put("".concat(this.getBaseUrl(),"/").concat(e.id),t.toPayload(e),this.getConfig())}},{key:"getAxios",value:function(){return $()}},{key:"getBaseUrl",value:function(){return""}},{key:"getConfig",value:function(){return null}},{key:"getTransform",value:function(){return{}}}])&&G(t.prototype,r),n&&G(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}();function Z(e){return Z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Z(e)}function Q(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ee(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function te(e,t){return te=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},te(e,t)}function re(e,t){if(t&&("object"===Z(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function ne(e){return ne=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},ne(e)}var oe=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&te(e,t)}(a,e);var t,r,n,o,i=(n=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=ne(n);if(o){var r=ne(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return re(this,e)});function a(){return Q(this,a),i.apply(this,arguments)}return t=a,(r=[{key:"getBaseUrl",value:function(){return"/controlled_vocabulary/reference_codes"}},{key:"getTransform",value:function(){return{}}}])&&ee(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),a}(J),ie=new oe;function ae(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var ue=function(){function e(){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.constructor===e)throw new TypeError('Abstract class "BaseTransform" cannot be instantiated directly.')}var t,r;return t=e,(r=[{key:"getParameterName",value:function(){return""}},{key:"getPayloadKeys",value:function(){return[]}},{key:"toPayload",value:function(e){return t={},r=this.getParameterName(),n=a().pick(e,this.getPayloadKeys()),r in t?Object.defineProperty(t,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[r]=n,t;var t,r,n}}])&&ae(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}(),ce={includes:function(e,t){return e&&t&&e.toString().toLowerCase().includes(t.toString().toLowerCase())},toString:function(e){return a().isNumber(e)||a().isBoolean(e)?e:e||""}};function le(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function se(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?le(Object(r),!0).forEach((function(t){fe(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):le(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function fe(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ye(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var pe=function(){function e(){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.constructor===e)throw new TypeError('Abstract class "NestedAttributesTransform" cannot be instantiated directly.')}var t,r;return t=e,(r=[{key:"getPayloadKeys",value:function(){return[]}},{key:"toFormData",value:function(e,t,r,n){var o=this;a().each(r[n],(function(r,i){a().each(o.getPayloadKeys(),(function(o){e.append("".concat(t,"[").concat(n,"][").concat(i,"][").concat(o,"]"),ce.toString(r[o]))}))}))}},{key:"toPayload",value:function(e,t){var r=this;return fe({},t,a().map(e[t],(function(e,t){return se(se({},a().pick(e,r.getPayloadKeys())),{},{order:t})})))}}])&&ye(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();function de(e){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},de(e)}function he(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function be(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function ve(){return ve="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,r){var n=me(e,t);if(n){var o=Object.getOwnPropertyDescriptor(n,t);return o.get?o.get.call(arguments.length<3?e:r):o.value}},ve.apply(this,arguments)}function me(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=Oe(e)););return e}function ge(e,t){return ge=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},ge(e,t)}function we(e,t){if(t&&("object"===de(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Oe(e){return Oe=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Oe(e)}var je=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&ge(e,t)}(a,e);var t,r,n,o,i=(n=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Oe(n);if(o){var r=Oe(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return we(this,e)});function a(){return he(this,a),i.apply(this,arguments)}return t=a,r=[{key:"getPayloadKeys",value:function(){return["id","name","_destroy"]}},{key:"toPayload",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"reference_codes";return ve(Oe(a.prototype),"toPayload",this).call(this,e,t)}}],r&&be(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),a}(pe),Pe=new je;function Se(e){return Se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Se(e)}function ke(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ee(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ke(Object(r),!0).forEach((function(t){Ce(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ke(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ce(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function De(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ae(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Re(e,t){return Re=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Re(e,t)}function _e(e,t){if(t&&("object"===Se(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Te(e){return Te=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Te(e)}var Ie=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Re(e,t)}(u,e);var t,r,n,o,i=(n=u,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Te(n);if(o){var r=Te(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return _e(this,e)});function u(){return De(this,u),i.apply(this,arguments)}return t=u,(r=[{key:"getParameterName",value:function(){return"reference_table"}},{key:"getPayloadKeys",value:function(){return["name","key"]}},{key:"toPayload",value:function(e){return{reference_table:Ee(Ee({},a().pick(e,this.getPayloadKeys())),Pe.toPayload(e))}}}])&&Ae(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),u}(ue),Me=new Ie;function xe(e){return xe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xe(e)}function Be(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function qe(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Ye(e,t){return Ye=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Ye(e,t)}function Le(e,t){if(t&&("object"===xe(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Ne(e){return Ne=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Ne(e)}var He=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ye(e,t)}(a,e);var t,r,n,o,i=(n=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Ne(n);if(o){var r=Ne(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return Le(this,e)});function a(){return Be(this,a),i.apply(this,arguments)}return t=a,(r=[{key:"fetchByKey",value:function(e){return this.getAxios().get("".concat(this.getBaseUrl(),"/find_by_key"),{params:{key:e}})}},{key:"getBaseUrl",value:function(){return"/controlled_vocabulary/reference_tables"}},{key:"getTransform",value:function(){return Me}}])&&qe(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),a}(J),Ke=new He;function Fe(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var Ue=new(function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}var t,r;return t=e,(r=[{key:"toPayload",value:function(e,t,r,n){var o=r[n],i="".concat(n,"_remove");o?e.append("".concat(t,"[").concat(n,"]"),o):r[i]&&e.append("".concat(t,"[").concat(i,"]"),r[i])}}])&&Fe(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}());function ze(e){return ze="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ze(e)}function Ve(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function We(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Xe(e,t){return Xe=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Xe(e,t)}function $e(e,t){if(t&&("object"===ze(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function Ge(e){return Ge=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Ge(e)}var Je=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Xe(e,t)}(u,e);var t,r,n,o,i=(n=u,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=Ge(n);if(o){var r=Ge(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return $e(this,e)});function u(){return Ve(this,u),i.apply(this,arguments)}return t=u,(r=[{key:"toPayload",value:function(e){var t=this,r=new FormData;return a().each(this.getPayloadKeys(),(function(n){r.append("".concat(t.getParameterName(),"[").concat(n,"]"),ce.toString(e[n]))})),r}}])&&We(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),u}(ue),Ze=Je;function Qe(e){return Qe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Qe(e)}function et(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function tt(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function rt(e,t){return rt=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},rt(e,t)}function nt(e,t){if(t&&("object"===Qe(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}function ot(e){return ot=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},ot(e)}var it,at,ut=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&rt(e,t)}(a,e);var t,r,n,o,i=(n=a,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=ot(n);if(o){var r=ot(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return nt(this,e)});function a(){return et(this,a),i.apply(this,arguments)}return t=a,(r=[{key:"getPayloadKeys",value:function(){return["reference_code_id"]}}])&&tt(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),a}(pe),ct=new ut,lt=require("moment-islamic-civil"),st=e.n(lt);function ft(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function yt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function pt(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}require("moment/min/locales");var dt=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"en",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.Calendars.gregorian;yt(this,e),this.locale=void 0,this.name=void 0,this.locale=t,this.name=r}var t,r;return t=e,r=[{key:"addDate",value:function(e,t){var r=this.moment(e);return this.isHijri()?r.add(t,"iDate"):r.add(t,"date")}},{key:"addMonth",value:function(e,t){var r=this.moment(e);return this.isHijri()?r.add(t,"iMonth"):r.add(t,"month")}},{key:"addYear",value:function(e,t){var r=this.moment(e);return this.isHijri()?r.add(t,"iYear"):r.add(t,"year")}},{key:"convertToDate",value:function(e){var t=e.year,r=e.month,n=e.date,o=this.moment().hours(0).minutes(0).seconds(0);return this.isHijri()?o.iYear(t||this.getDefaultYear()).iMonth(r||this.getDefaultMonth()).iDate(n||this.getDefaultDate()):o.year(t||this.getDefaultYear()).month(r||this.getDefaultMonth()).date(n||this.getDefaultDate())}},{key:"daysInMonth",value:function(e,t){var r=e||this.getDefaultYear(),n=t||this.getDefaultMonth(),o=this.convertToDate({year:r,month:n,date:this.getDefaultDate()});return(this.isHijri()?o.iDaysInMonth():o.daysInMonth())||31}},{key:"format",value:function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.DateFormats.gregorian;return this.moment(t).format(e.DateFormats[this.name][r])}},{key:"getDefaultDate",value:function(){return e.Defaults[this.name].date}},{key:"getDefaultMonth",value:function(){return e.Defaults[this.name].month}},{key:"getDefaultYear",value:function(){return e.Defaults[this.name].year}},{key:"isHijri",value:function(){return this.name===e.Calendars.hijri}},{key:"listMonths",value:function(){var e=this.moment().localeData();return this.isHijri()?e._iMonths:e.months()}},{key:"moment",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=e?st()(e):st()();return t.locale(this.locale),t}},{key:"parseDate",value:function(e){var t=this.moment(e);return{year:this.isHijri()?t.iYear():t.year(),month:this.isHijri()?t.iMonth():t.month(),date:this.isHijri()?t.iDate():t.date()}}}],r&&pt(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();dt.Calendars=void 0,dt.DateFormats=void 0,dt.Defaults=void 0,dt.Calendars={gregorian:"gregorian",hijri:"hijri"},dt.DateFormats=(ft(it={},dt.Calendars.gregorian,{0:"YYYY",1:"MMMM YYYY",2:"L"}),ft(it,dt.Calendars.hijri,{0:"iYYYY",1:"iMMMM iYYYY",2:"iM/iD/iYYYY"}),it),dt.Defaults=(ft(at={},dt.Calendars.gregorian,{year:0,month:0,date:1}),ft(at,dt.Calendars.hijri,{year:1410,month:0,date:1}),at);var ht=dt,bt={formatDate:function(e,t,r){return new Date(e).toLocaleDateString(t,r)}},vt=require("react-dnd"),mt=require("react-dnd-html5-backend"),gt=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:mt.HTML5Backend;return function(){return o().createElement(vt.DndProvider,{backend:t},o().createElement(e,null))}},wt={findByType:function(e,t){var r=[],n=[t.displayName||t.name];return o().Children.forEach(e,(function(e){var t=e&&e.type&&(e.type.displayName||e.type.name);n.includes(t)&&r.push(e)})),r}},Ot={usePrevious:function(e){var t=(0,n.useRef)();return(0,n.useEffect)((function(){t.current=e}),[e]),t.current}},jt={getPosition:function(e){var t;if(e){var r=Number.parseFloat(e.lat),n=Number.parseFloat(e.lng);Number.isNaN(r)||Number.isNaN(n)||(t={lat:r,lng:n})}return t}};function Pt(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var St=new(function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.timeout=void 0,this.timeout=null}var t,r;return t=e,(r=[{key:"clearSearchTimer",value:function(){clearTimeout(this.timeout)}},{key:"setSearchTimer",value:function(e){clearTimeout(this.timeout),this.timeout=setTimeout(e,500)}}])&&Pt(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}());module.exports=t}();
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","mappings":"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","sources":["webpack://@performant-software/shared-components/webpack/bootstrap","webpack://@performant-software/shared-components/webpack/runtime/compat get default export","webpack://@performant-software/shared-components/webpack/runtime/define property getters","webpack://@performant-software/shared-components/webpack/runtime/hasOwnProperty shorthand","webpack://@performant-software/shared-components/webpack/runtime/make namespace object","webpack://@performant-software/shared-components/external commonjs2 \"react\"","webpack://@performant-software/shared-components/external commonjs \"underscore\"","webpack://@performant-software/shared-components/external commonjs \"i18next\"","webpack://@performant-software/shared-components/./src/i18n/i18n.js","webpack://@performant-software/shared-components/./src/utils/Object.js","webpack://@performant-software/shared-components/./src/components/EditContainer.js","webpack://@performant-software/shared-components/external commonjs \"react-ga4\"","webpack://@performant-software/shared-components/./src/components/GoogleAnalytics.js","webpack://@performant-software/shared-components/./src/components/GoogleScript.js","webpack://@performant-software/shared-components/external commonjs \"@react-google-maps/api\"","webpack://@performant-software/shared-components/./src/utils/Browser.js","webpack://@performant-software/shared-components/./src/components/InfiniteScroll.js","webpack://@performant-software/shared-components/external commonjs \"simple-keyboard\"","webpack://@performant-software/shared-components/./src/components/Keyboard.js","webpack://@performant-software/shared-components/external commonjs \"axios\"","webpack://@performant-software/shared-components/./src/services/BaseService.js","webpack://@performant-software/shared-components/./src/services/ReferenceCodes.js","webpack://@performant-software/shared-components/./src/transforms/BaseTransform.js","webpack://@performant-software/shared-components/./src/utils/String.js","webpack://@performant-software/shared-components/./src/transforms/NestedAttributesTransform.js","webpack://@performant-software/shared-components/./src/transforms/ReferenceCodes.js","webpack://@performant-software/shared-components/./src/transforms/ReferenceTable.js","webpack://@performant-software/shared-components/./src/services/ReferenceTables.js","webpack://@performant-software/shared-components/./src/transforms/Attachments.js","webpack://@performant-software/shared-components/./src/transforms/FormDataTransform.js","webpack://@performant-software/shared-components/external commonjs \"moment-islamic-civil\"","webpack://@performant-software/shared-components/external commonjs \"moment/min/locales\"","webpack://@performant-software/shared-components/./src/utils/Calendar.js","webpack://@performant-software/shared-components/./src/utils/Date.js","webpack://@performant-software/shared-components/external commonjs \"react-dnd\"","webpack://@performant-software/shared-components/external commonjs \"react-dnd-html5-backend\"","webpack://@performant-software/shared-components/./src/utils/DragDrop.js","webpack://@performant-software/shared-components/./src/utils/Element.js","webpack://@performant-software/shared-components/./src/utils/Hooks.js","webpack://@performant-software/shared-components/./src/utils/Map.js","webpack://@performant-software/shared-components/./src/utils/Timer.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"underscore\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"i18next\");","import i18next from 'i18next';\n\nimport en from './en.json';\n\nconst resources = {\n en: {\n translation: en\n }\n};\n\nconst i18n = i18next.createInstance();\n\ni18n\n .init({\n debug: true,\n fallbackLng: 'en',\n lng: 'en',\n interpolation: {\n escapeValue: false,\n },\n resources\n });\n\nexport default i18n;\n","// @flow\n\nimport _ from 'underscore';\n\ntype OptionsProps = {\n emptyValues: Array<any>,\n ignoreHtml: boolean\n};\n\nconst EMPTY_VALUES = [\n '',\n null,\n undefined,\n [],\n {}\n];\n\nconst DEFAULT_OPTIONS = {\n emptyValues: EMPTY_VALUES,\n ignoreHtml: true,\n ignoreWhitespace: true\n};\n\nconst HTML_REGEX = /(<([^>]+)>)/gi;\nconst WHITESPACE_REGEX = /\\s\\s+/g;\n\n/**\n * Returns true if the passed value is considered \"empty\".\n *\n * @param value\n *\n * @returns {boolean|*}\n */\nconst isEmpty = (value: any) => {\n // If the value is an object or array, use underscore's isEmpty check.\n if (_.isObject(value) || _.isArray(value)) {\n return _.isEmpty(value);\n }\n\n return !value;\n};\n\n/**\n * Returns true if the passed two arguments as deep equal. This function will perform a recursive check against all of\n * the keys in the objects.\n *\n * @param a\n * @param b\n *\n * @returns {boolean}\n */\nconst isEqual = (a: any, b: any, userOptions: OptionsProps = {}) => {\n const options = _.defaults(userOptions, DEFAULT_OPTIONS);\n\n // Check equality, consider empty strings and \"null\" values as equal\n if (a === b || (_.contains(options.emptyValues, a) && _.contains(options.emptyValues, b))) {\n return true;\n }\n\n // Deep string comparison\n if (_.isString(a) && _.isString(b)) {\n let aString = a;\n let bString = b;\n\n // Remove superfluous whitespace\n if (options.ignoreWhitespace) {\n aString = a.replace(WHITESPACE_REGEX, ' ');\n bString = b.replace(WHITESPACE_REGEX, ' ');\n }\n\n // If we're ignoring HTML, compare the string values with HTML tags removed\n if (options.ignoreHtml) {\n aString = aString.replace(HTML_REGEX, '');\n bString = bString.replace(HTML_REGEX, '');\n }\n\n if (aString === bString) {\n return true;\n }\n }\n\n if (a !== null && typeof a === 'object' && b !== null && typeof b === 'object') {\n const aKeys = _.keys(a);\n const bKeys = _.keys(b);\n\n // If the objects contain different number of keys, return false\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n\n // Recursively check each key for equality\n let equal = true;\n\n _.each(_.keys(a), (key) => {\n if (!(_.has(b, key) && isEqual(a[key], b[key]))) {\n equal = false;\n }\n });\n\n // If any of the recursive keys are not equal, return false\n if (!equal) {\n return false;\n }\n\n // If we've made it this far, we've checked the equality of all the keys in both objects, return true\n return true;\n }\n\n return false;\n};\n\nconst isPromise = (value: any) => !!value && typeof value === 'object' && typeof value.then === 'function';\n\nexport default {\n isEmpty,\n isEqual,\n isPromise\n};\n","// @flow\n\nimport React, { Component, type ComponentType, type Element } from 'react';\nimport _ from 'underscore';\nimport i18n from '../i18n/i18n';\nimport ObjectUtils from '../utils/Object';\n\ntype Props = {\n children?: Element<any>,\n defaults?: any,\n item?: any,\n onClose: () => void,\n onInitialize?: (id: number) => Promise<any>,\n onSave: (item: any) => Promise<any>,\n required?: Array<string>,\n resolveValidationError?: ({ error: string, item: any, status: number, key: string }) => Array<string>,\n validate?: (item: any) => Array<string>\n};\n\ntype State = {\n item: any,\n loading: boolean,\n originalItem: any,\n saving: boolean,\n validationErrors: any\n};\n\nconst ERROR_EMPTY = 'can\\'t be blank';\nconst ERROR_UNIQUE = 'has already been taken';\n\nconst useEditContainer = (WrappedComponent: ComponentType<any>) => (\n class extends Component<Props, State> {\n /**\n * Constructs a new EditProvider component.\n *\n * @param props\n */\n constructor(props: Props) {\n super(props);\n\n const item = _.defaults(props.item || {}, props.defaults || {});\n\n this.state = {\n item,\n loading: false,\n originalItem: item,\n saving: false,\n validationErrors: []\n };\n }\n\n /**\n * Loads the item from the API if an onInitialize prop is specified.\n */\n componentDidMount() {\n if (this.props.onInitialize && this.props.item && this.props.item.id) {\n this.setState({ loading: true }, () => {\n if (this.props.onInitialize && this.props.item) {\n this.props\n .onInitialize(this.props.item.id)\n .then((item) => this.setState({ item, originalItem: item, loading: false }));\n }\n });\n }\n }\n\n /**\n * Resets the item on the state.\n *\n * @param prevProps\n */\n componentDidUpdate(prevProps: Props) {\n if (prevProps.item !== this.props.item) {\n this.setState({ item: this.props.item, originalItem: this.props.item });\n }\n }\n\n /**\n * Sets the saving property to false.\n */\n componentWillUnmount() {\n this.onSetState({ saving: false });\n }\n\n /**\n * Returns true if the IDs or UIDs for the passed records match.\n *\n * @param a\n * @param b\n *\n * @returns {*|boolean}\n */\n isChild(a: any, b: any) {\n return (a.uid && b.uid && a.uid === b.uid) || (a.id && b.id && a.id === b.id);\n }\n\n /**\n * Returns true if the passed property is required.\n *\n * @param prop\n *\n * @returns {*|boolean}\n */\n isRequired(prop: string) {\n return this.props.required && _.contains(this.props.required, prop);\n }\n\n /**\n * Returns true if the passed property is listed in the hash of validation errors.\n *\n * @param prop\n *\n * @returns {*|boolean}\n */\n isError(prop: string) {\n return _.has(this.state.validationErrors, prop);\n }\n\n /**\n * Closes the provider.\n */\n onClose() {\n this.props.onClose();\n }\n\n /**\n * Adds the passed child to the passed association for the current item.\n *\n * @param association\n * @param child\n */\n onCreateChildAssociation(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: [\n ...(state.item[association] || []),\n child\n ]\n }\n }));\n }\n\n /**\n * Removes the passed child from the passed association.\n *\n * @param association\n * @param child\n */\n onDeleteChildAssociation(association: string, child: any) {\n return child.id\n ? this.onMarkChildAssociationForDelete(association, child)\n : this.onRemoveChildAssociation(association, child);\n }\n\n /**\n * Resolves the validation errors from the passed HTTP response.\n *\n * @param errors\n * @param status\n */\n onError({ response: { data: { errors = {} }, status } }: any) {\n const validationErrors = {};\n\n _.each(Object.keys(errors), (key) => {\n const fieldErrors = errors[key];\n const value = this.state.item[key];\n\n _.each(fieldErrors, (error) => {\n if (error === ERROR_UNIQUE) {\n _.extend(validationErrors, { [key]: i18n.t('EditContainer.errors.unique', { key, value }) });\n } else if (error === ERROR_EMPTY) {\n _.extend(validationErrors, { [key]: i18n.t('EditContainer.errors.required', { key }) });\n } else if (this.props.resolveValidationError) {\n _.extend(validationErrors, this.props.resolveValidationError({\n key,\n error,\n status,\n item: this.state.item\n }));\n }\n });\n });\n\n if (status === 400 && _.isEmpty(validationErrors)) {\n _.extend(validationErrors, { error: i18n.t('EditContainer.errors.general') });\n } else if (status === 500 && _.isEmpty(validationErrors)) {\n _.extend(validationErrors, { error: i18n.t('EditContainer.errors.system') });\n }\n\n this.setState({ saving: false, validationErrors });\n }\n\n /**\n * Marks the passed child for delete form the passed association. This function is called if the child record\n * has an ID value.\n *\n * @param association\n * @param child\n */\n onMarkChildAssociationForDelete(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: _.map(state.item[association] || [],\n (c) => (c.id === child.id ? { ...c, _destroy: true } : c))\n }\n }));\n }\n\n /**\n * Modifies the passed association based on the passed collection of children.\n *\n * @param association\n * @param children\n */\n onMultiAddChildAssociations(association: string, children: any) {\n const items = this.state.item[association];\n\n // Add new children or update existing children\n _.each(children, this.onSaveChildAssociation.bind(this, association));\n\n // Remove any children that no longer exist\n const childrenToRemove = _.filter(items, (item) => !_.find(children, this.isChild.bind(this, item)));\n _.each(childrenToRemove, this.onDeleteChildAssociation.bind(this, association));\n }\n\n /**\n * Removes the passed child record from the passed association. This function is called if the child record does\n * not have an ID value.\n *\n * @param association\n * @param child\n */\n onRemoveChildAssociation(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: _.filter(state.item[association] || [],\n (c) => c !== child)\n }\n }));\n }\n\n /**\n * Resets the item on the state to the default item and calls the onReset prop.\n */\n onReset() {\n const item = this.props.defaults || {};\n\n this.setState({\n item,\n originalItem: item\n });\n }\n\n /**\n * Saves the current item.\n */\n onSave() {\n if (!this.validateForm()) {\n return;\n }\n\n this.setState({ saving: true }, () => {\n this.props\n .onSave(this.state.item)\n .catch(this.onError.bind(this))\n .finally(() => this.setState({ saving: false }));\n });\n }\n\n /**\n * Adds the passed child record to the passed association.\n *\n * @param association\n * @param child\n */\n onSaveChildAssociation(association: string, child: any) {\n const children = this.state.item[association] || [];\n\n return _.find(children, this.isChild.bind(this, child))\n ? this.onUpdateChildAssociation(association, child)\n : this.onCreateChildAssociation(association, child);\n }\n\n /**\n * Updates the child record in the passed association.\n *\n * @param association\n * @param child\n */\n onUpdateChildAssociation(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: _.map(state.item[association] || [], (c) => (this.isChild(child, c) ? child : c))\n }\n }));\n }\n\n /**\n * Sets the associated ID and object.\n *\n * @param idKey\n * @param valueKey\n * @param record\n */\n onAssociationInputChange(idKey: string, valueKey: string, record: any = {}) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [idKey]: record.id || '',\n [valueKey]: record || {}\n },\n validationErrors: _.omit(state.validationErrors, idKey)\n }));\n }\n\n /**\n * Toggles the checkbox value for the passed key.\n *\n * @param key\n */\n onCheckboxInputChange(key: string) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [key]: !state.item[key]\n }\n }));\n }\n\n /**\n * Sets the passed properties on the item on the state.\n *\n * @param props\n */\n onSetState(props: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n ...props\n }\n }));\n }\n\n /**\n * Sets the text input property for the passed key/value.\n *\n * @param key\n * @param e\n * @param value\n */\n onTextInputChange(key: string, e: Event, { value }: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [key]: value\n },\n validationErrors: _.omit(state.validationErrors, key)\n }));\n }\n\n render() {\n return (\n <WrappedComponent\n {...this.props}\n dirty={!!(this.state.item.id && !ObjectUtils.isEqual(this.state.item, this.state.originalItem))}\n errors={_.values(this.state.validationErrors)}\n isError={this.isError.bind(this)}\n isRequired={this.isRequired.bind(this)}\n item={this.state.item}\n loading={this.state.loading}\n onAssociationInputChange={this.onAssociationInputChange.bind(this)}\n onCheckboxInputChange={this.onCheckboxInputChange.bind(this)}\n onDeleteChildAssociation={this.onDeleteChildAssociation.bind(this)}\n onMultiAddChildAssociations={this.onMultiAddChildAssociations.bind(this)}\n onReset={this.onReset.bind(this)}\n onSave={this.onSave.bind(this)}\n onSaveChildAssociation={this.onSaveChildAssociation.bind(this)}\n onTextInputChange={this.onTextInputChange.bind(this)}\n onSetState={this.onSetState.bind(this)}\n saving={this.state.saving}\n />\n );\n }\n\n /**\n * Validates the form using the component props required attributes.\n *\n * @returns {boolean}\n */\n validateForm() {\n const validationErrors = [];\n\n // Custom validations\n if (this.props.validate) {\n _.extend(validationErrors, this.props.validate(this.state.item));\n }\n\n // Validate required properties\n const required = this.props.required || [];\n\n _.each(required, (key) => {\n const value = this.state.item[key];\n\n let invalid;\n\n if (_.isNumber(value)) {\n invalid = _.isEmpty(value.toString());\n } else {\n invalid = _.isEmpty(value);\n }\n\n if (invalid) {\n _.extend(validationErrors, { [key]: i18n.t('EditContainer.errors.required', { key }) });\n }\n });\n\n this.setState({ validationErrors });\n\n return _.keys(validationErrors).length === 0;\n }\n }\n);\n\nexport default useEditContainer;\n\nexport type EditContainerProps = {\n children: Element<any>,\n dirty: boolean,\n errors: Array<string>,\n isError: (property: string) => boolean,\n isRequired: (property: string) => boolean,\n item: any,\n loading: boolean,\n onAssociationInputChange: (idKey: string, valueKey: string, item: any) => void,\n onCheckboxInputChange: (key: string, value: any) => void,\n onDeleteChildAssociation: (association: string, child: any) => void,\n onMultiAddChildAssociations: (association: string, Array<any>) => void,\n onReset: () => void,\n onSave: () => void,\n onSaveChildAssociation: (association: string, child: any) => void,\n onSetState: (any) => void,\n onTextInputChange: (key: string, e: ?Event, value: any) => void,\n saving: boolean\n};\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react-ga4\");","// @flow\n\nimport React, {\n useCallback,\n useEffect,\n useState,\n type ComponentType\n} from 'react';\nimport GoogleAnalytics from 'react-ga4';\n\ntype Props = {\n id: string,\n location?: any,\n storageKey: string,\n};\n\n/**\n * Status constants.\n *\n * @type {{rejected: string, notSet: string, accepted: string}}\n */\nconst Status = {\n accepted: 'accepted',\n notSet: 'not_set',\n rejected: 'rejected'\n};\n\n/**\n * Higher order component function used to wrap a \"cookie consent\" banner with Google Analytics.\n *\n * @param BannerComponent\n *\n * @returns {function(Props)}\n */\nconst withGoogleAnalytics = (BannerComponent: ComponentType<any>) => (props: Props) => {\n const [status, setStatus] = useState();\n\n /**\n * Returns the Google Analytics consent value from local storage.\n *\n * @param storageKey\n *\n * @returns {string|string}\n */\n const getGoogleAnalyticsConsent = (storageKey) => (\n localStorage.getItem(storageKey) || Status.notSet\n );\n\n /**\n * Sets the Google Analytics consent value in local storage.\n *\n * @param storageKey\n * @param newStatus\n */\n const setGoogleAnalyticsConsent = (storageKey: string, newStatus: string) => (\n localStorage.setItem(storageKey, newStatus)\n );\n\n /**\n * Sets the \"accepted\" status and initializes analytics.\n *\n * @type {(function(): void)|*}\n */\n const onAccept = useCallback(() => setStatus(Status.accepted), []);\n\n /**\n * Sets the \"rejected\" status.\n *\n * @type {(function(): void)|*}\n */\n const onDecline = useCallback(() => setStatus(Status.rejected), []);\n\n /**\n * Sets the initial status on the state from local storage.\n */\n useEffect(() => {\n setStatus(getGoogleAnalyticsConsent(props.storageKey));\n }, [props.storageKey]);\n\n /**\n * Sets the status on local storage when the state changes.\n */\n useEffect(() => {\n setGoogleAnalyticsConsent(props.storageKey, status || '');\n }, [status, props.storageKey]);\n\n /**\n * Sends the page view event if the location changes.\n */\n useEffect(() => {\n if (props.location && status === Status.accepted) {\n GoogleAnalytics.send('pageview');\n }\n }, [status, props.location]);\n\n /**\n * Initializes GoogleAnalytics when the status is set to accepted.\n */\n useEffect(() => {\n if (status === Status.accepted) {\n GoogleAnalytics.initialize(props.id);\n }\n }, [status]);\n\n if (!props.id || !props.storageKey || status !== Status.notSet) {\n return null;\n }\n\n return (\n <BannerComponent\n {...props}\n onAccept={onAccept}\n onDecline={onDecline}\n />\n );\n};\n\nexport default withGoogleAnalytics;\n","// @flow\n\nimport { LoadScript } from '@react-google-maps/api';\n\nexport default LoadScript;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@react-google-maps/api\");","// @flow\n\n/**\n * Returns true if the window object is present.\n *\n * @returns {boolean}\n */\nconst isBrowser = () => (typeof window !== 'undefined');\n\nexport default {\n isBrowser\n};\n","// @flow\n\nimport React, {\n useEffect,\n useRef,\n useState,\n type Element\n} from 'react';\nimport { isBrowser } from '../utils/Browser';\n\ntype Props = {\n children: Element<any>,\n context?: { current: HTMLElement },\n offset: number,\n onBottomReached: () => void\n};\n\nconst InfiniteScroll = (props: Props) => {\n const [height, setHeight] = useState(0);\n const containerRef = useRef();\n\n /**\n * Returns the scrolling element.\n *\n * @returns {*}\n */\n const getScrollElement = () => {\n let scrollElement;\n\n if (props.context) {\n scrollElement = props.context.current;\n } else if (isBrowser()) {\n scrollElement = document.documentElement;\n }\n\n return scrollElement;\n };\n\n /**\n * Calls the onBottomReached prop if the scroll has reached the end.\n */\n const onScroll = () => {\n const element = getScrollElement();\n\n if (element) {\n const { scrollTop, clientHeight, scrollHeight } = element;\n\n if ((scrollTop + clientHeight) >= (scrollHeight - props.offset)) {\n props.onBottomReached();\n }\n }\n };\n\n /**\n * Sets up the container scroll event listeners.\n */\n useEffect(() => {\n let scrollContainer;\n\n if (props.context) {\n scrollContainer = props.context.current;\n } else if (isBrowser()) {\n scrollContainer = window;\n }\n\n if (!scrollContainer) {\n return undefined;\n }\n\n scrollContainer.addEventListener('scroll', onScroll);\n return () => scrollContainer && scrollContainer.removeEventListener('scroll', onScroll);\n }, [props.context]);\n\n /**\n * Returns true if the context element is scrollable.\n *\n * @returns {boolean}\n */\n const isScrollable = () => {\n let scrollable = false;\n\n const element = getScrollElement();\n if (element) {\n const { clientHeight, scrollHeight } = element;\n scrollable = scrollHeight > clientHeight;\n }\n\n return scrollable;\n };\n\n /**\n * Upon initial render, the DOM may not be tall enough to scroll and trigger the onScroll event. In this case,\n * we'll call the onBottomReached prop when the component is mounted until the container's scrollHeight is greater\n * than the height of the container.\n */\n useEffect(() => {\n if (!isScrollable() && containerRef && containerRef.current) {\n const { clientHeight } = containerRef.current;\n\n if (clientHeight > height) {\n setHeight(clientHeight);\n props.onBottomReached();\n }\n }\n });\n\n return (\n <div\n ref={containerRef}\n >\n { props.children }\n </div>\n );\n};\n\nInfiniteScroll.defaultProps = {\n offset: 0\n};\n\nexport default InfiniteScroll;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"simple-keyboard\");","// @flow\n\nimport React, { useEffect, useRef } from 'react';\nimport Keyboard from 'simple-keyboard';\nimport './Keyboard.css';\n\ntype Props = {\n layout: any,\n onChange: (value: string) => void,\n value: string,\n keyboardClass: string,\n};\n\nconst KEY_CAPS_LOCK = '{lock}';\nconst KEY_SHIFT = '{shift}';\n\nconst LAYOUT_DEFAULT = 'default';\nconst LAYOUT_SHIFT = 'shift';\n\nconst KeyboardSimple = (props: Props) => {\n const keyboardRef = useRef();\n\n // Toggles the layout name for Shift and CapsLock keys.\n const onKeyPress = (value) => {\n const isCaps = value === KEY_CAPS_LOCK || value === KEY_SHIFT;\n\n if (isCaps && keyboardRef.current && keyboardRef.current.options.layoutName === LAYOUT_SHIFT) {\n keyboardRef.current.setOptions({ layoutName: LAYOUT_DEFAULT });\n } else if (isCaps && keyboardRef.current && keyboardRef.current.options.layoutName !== LAYOUT_SHIFT) {\n keyboardRef.current.setOptions({ layoutName: LAYOUT_SHIFT });\n }\n };\n\n // Sets up the keyboard reference and the initial value when the component is first rendered.\n useEffect(() => {\n const { layout, onChange } = props;\n keyboardRef.current = new Keyboard(`.${props.keyboardClass}`, { ...layout, onChange, onKeyPress });\n keyboardRef.current.setInput(props.value);\n }, []);\n\n // Sets the keyboard value when the value property changes.\n useEffect(() => {\n if (keyboardRef.current) {\n keyboardRef.current.setInput(props.value);\n }\n }, [props.value]);\n\n return <div className={props.keyboardClass} />;\n};\n\nKeyboardSimple.defaultProps = {\n keyboardClass: 'simple-keyboard'\n};\n\nexport default KeyboardSimple;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"axios\");","// @flow\n\nimport axios, { type AxiosResponse, type AxiosStatic } from 'axios';\n\n/**\n * Base class for making API calls. This class uses Axios under the hood and a customizable transform class for\n * PUT/POST requests.\n */\nclass BaseService {\n /**\n * Allows for static configuration of the axios object.\n *\n * @param callback\n */\n static configure(callback: (axiosInstance: typeof axios) => void) {\n callback(axios);\n }\n\n /**\n * Constructs a new BaseService object. This constructor should never be used directly.\n */\n constructor() {\n if (this.constructor === BaseService) {\n throw new TypeError('Abstract class \"BaseService\" cannot be instantiated directly.');\n }\n }\n\n /**\n * Calls the POST /api/<resource>/ endpoint with the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n create(item: any): Promise<AxiosResponse> {\n const transform = this.getTransform();\n return axios.post(this.getBaseUrl(), transform.toPayload(item), this.getConfig());\n }\n\n /**\n * Calls the DELETE /api/<resource>/:id endpoint for the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n delete(item: any) {\n return axios.delete(`${this.getBaseUrl()}/${item.id}`);\n }\n\n /**\n * Calls the GET /api/<resource>/ endpoint.\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n fetchAll(params: any) {\n return axios.get(this.getBaseUrl(), { params });\n }\n\n /**\n * Calls the GET /api/<resource>/:id endpoint.\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n fetchOne(id: number) {\n return axios.get(`${this.getBaseUrl()}/${id}`);\n }\n\n /**\n * Calls the create/update API endpoint for the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n save(item: any) {\n return item.id ? this.update(item) : this.create(item);\n }\n\n /**\n * Calls the POST /api/<resource>/search endpoint.\n *\n * @param params\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n search(params: any) {\n return axios.post(`${this.getBaseUrl()}/search`, params);\n }\n\n /**\n * Calls the PUT /api/<resource>/:id endpoint with the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n update(item: any) {\n const transform = this.getTransform();\n return axios.put(`${this.getBaseUrl()}/${item.id}`, transform.toPayload(item), this.getConfig());\n }\n\n // protected\n\n /**\n * Returns the axios instance.\n *\n * @returns {AxiosStatic}\n */\n getAxios(): AxiosStatic {\n return axios;\n }\n\n /**\n * Returns the API base URL string.\n */\n getBaseUrl(): string {\n // Implemented in concrete classes.\n return '';\n }\n\n /**\n * Returns the config properties for POST/PUT requests.\n *\n * @returns {null}\n */\n getConfig() {\n // Implemented in concrete classes\n return null;\n }\n\n /**\n * Returns the transform object. This class will be used to generate the object sent on POST/PUT requests.\n */\n getTransform() {\n // Implemented in concrete classes.\n return {};\n }\n}\n\nexport default BaseService;\n","// @flow\n\nimport BaseService from './BaseService';\n\n/**\n * Class responsible for handling all reference code API requests.\n */\nclass ReferenceCodes extends BaseService {\n /**\n * Returns the reference codes base URL.\n *\n * @returns {string}\n */\n getBaseUrl() {\n return '/controlled_vocabulary/reference_codes';\n }\n\n /**\n * Returns the reference codes transform object.\n *\n * @returns {{}}\n */\n getTransform() {\n return { }; // PUT/POST routes not implemented\n }\n}\n\nexport default new ReferenceCodes();\n","// @flow\n\nimport _ from 'underscore';\n\n/**\n * Class for handling transforming objects for PUT/POST requests. This class transforms records into\n * plain Javascript objects.\n */\nclass BaseTransform {\n /**\n * Constructs a new BaseTransform object. This constructor should never be used directly.\n */\n constructor() {\n if (this.constructor === BaseTransform) {\n throw new TypeError('Abstract class \"BaseTransform\" cannot be instantiated directly.');\n }\n }\n\n // protected\n\n /**\n * Returns the parameter name.\n *\n * @returns {string}\n */\n getParameterName(): string {\n // Implemented in sub-class\n return '';\n }\n\n /**\n * Returns the array of payload keys.\n *\n * @returns {*[]}\n */\n getPayloadKeys(): Array<string> {\n // Implemented in sub-class\n return [];\n }\n\n /**\n * Returns the object for POST/PUT requests as a plain Javascript object.\n *\n * @param item\n *\n * @returns any\n */\n toPayload(item: any): any {\n return {\n [this.getParameterName()]: _.pick(item, this.getPayloadKeys())\n };\n }\n}\n\nexport default BaseTransform;\n","// @flow\n\nimport _ from 'underscore';\n\nconst includes = (a: any, b: any) => (\n a && b && a.toString().toLowerCase().includes(b.toString().toLowerCase())\n);\n\nconst toString = (value: any) => {\n if (_.isNumber(value) || _.isBoolean(value)) {\n return value;\n }\n\n return value || '';\n};\n\nexport default {\n includes,\n toString\n};\n","// @flow\n\nimport _ from 'underscore';\nimport StringUtils from '../utils/String';\n\n/**\n * Class for handling transforming nested attributes of a parent object. This class will handle transforming the\n * object into a payload to be sent to a POST/PUT request on an API. This class currently supports transforming into\n * a plain Javascript object or a FormData object.\n */\nclass NestedAttributesTransform {\n /**\n * Constructs a new BaseTransform object. This constructor should never be used directly.\n */\n constructor() {\n if (this.constructor === NestedAttributesTransform) {\n throw new TypeError('Abstract class \"NestedAttributesTransform\" cannot be instantiated directly.');\n }\n }\n\n /**\n * Returns the array of payload keys.\n *\n * @returns {*[]}\n */\n getPayloadKeys() {\n // Implemented in sub-class.\n return [];\n }\n\n /**\n * Appends the passed record's collection to the form data.\n *\n * @param formData\n * @param prefix\n * @param record\n * @param collection\n */\n toFormData(formData: FormData, prefix: string, record: any, collection: string) {\n _.each(record[collection], (item, index) => {\n _.each(this.getPayloadKeys(), (key) => {\n formData.append(`${prefix}[${collection}][${index}][${key}]`, StringUtils.toString(item[key]));\n });\n });\n }\n\n /**\n * Transforms the passed record's collection to a payload object.\n *\n * @param record\n * @param collection\n *\n * @returns {{[p: string]: *}}\n */\n toPayload(record: any, collection: string) {\n return {\n [collection]: _.map(record[collection],\n (item, index) => ({ ..._.pick(item, this.getPayloadKeys()), order: index }))\n };\n }\n}\n\nexport default NestedAttributesTransform;\n","// @flow\n\nimport NestedAttributesTransform from './NestedAttributesTransform';\n\n/**\n * Class for transforming reference codes nested objects for PUT/POST requests.\n */\nclass ReferenceCodes extends NestedAttributesTransform {\n /**\n * Returns the reference codes payload keys.\n *\n * @returns {string[]}\n */\n getPayloadKeys(): Array<string> {\n return [\n 'id',\n 'name',\n '_destroy'\n ];\n }\n\n /**\n * Calls the super method with a default value for the collection name.\n *\n * @param record\n * @param collection\n *\n * @returns {{[p: string]: *}}\n */\n toPayload(record: any, collection: string = 'reference_codes') {\n return super.toPayload(record, collection);\n }\n}\n\nexport default new ReferenceCodes();\n","// @flow\n\nimport _ from 'underscore';\nimport BaseTransform from './BaseTransform';\nimport ReferenceCodes from './ReferenceCodes';\n\ntype ReferenceTableType = {\n id: number,\n name: string,\n key: string\n};\n\n/**\n * Class for transforming reference table objects for PUT/POST requests.\n */\nclass ReferenceTable extends BaseTransform {\n /**\n * Returns the reference table parameter name.\n *\n * @returns {string}\n */\n getParameterName() {\n return 'reference_table';\n }\n\n /**\n * Returns the reference table payload keys.\n *\n * @returns {string[]}\n */\n getPayloadKeys() {\n return [\n 'name',\n 'key'\n ];\n }\n\n /**\n * Converts the passed reference table object to JSON for PUT/POST requests.\n *\n * @param referenceTable\n *\n * @returns {*}\n */\n toPayload(referenceTable: ReferenceTableType) {\n return {\n reference_table: {\n ..._.pick(referenceTable, this.getPayloadKeys()),\n ...ReferenceCodes.toPayload(referenceTable)\n }\n };\n }\n}\n\nexport default new ReferenceTable();\n","// @flow\n\nimport BaseService from './BaseService';\nimport ReferenceTable from '../transforms/ReferenceTable';\n\n/**\n * Class responsible for handling all reference table API requests.\n */\nclass ReferenceTables extends BaseService {\n /**\n * Returns the reference tables base URL.\n *\n * @returns {string}\n */\n getBaseUrl() {\n return '/controlled_vocabulary/reference_tables';\n }\n\n /**\n * Returns the reference table transform object.\n *\n * @returns {ReferenceTable}\n */\n getTransform() {\n return ReferenceTable;\n }\n}\n\nexport default new ReferenceTables();\n","// @flow\n\n/**\n * Helper class for handling binary data. This class should be used in conjunction with the FormDataTransform.\n */\nclass Attachments {\n /**\n * Appends the attachment for the passed record to the passed form data. If the attachment is not present, the\n * \"*_remove\" attribute will be appended if the attachment has been removed.\n *\n * @param formData\n * @param prefix\n * @param record\n * @param name\n */\n toPayload(formData: FormData, prefix: string, record: any, name: string) {\n const attachment = record[name];\n const removeAttribute = `${name}_remove`;\n\n if (attachment) {\n formData.append(`${prefix}[${name}]`, attachment);\n } else if (record[removeAttribute]) {\n formData.append(`${prefix}[${removeAttribute}]`, record[removeAttribute]);\n }\n }\n}\n\nexport default new Attachments();\n","// @flow\n\nimport _ from 'underscore';\nimport BaseTransform from './BaseTransform';\nimport StringUtils from '../utils/String';\n\n/**\n * Class for handling transforming records for PUT/POST requests. This class transforms objects in FormData. This\n * class is useful if your model contains binary data to be uploaded.\n */\nclass FormDataTransform extends BaseTransform {\n /**\n * Converts the passed records to a formData object to be sent on PUT/POST requests.\n *\n * @param record\n *\n * @returns {FormData}\n */\n toPayload(record: any) {\n const formData = new FormData();\n\n _.each(this.getPayloadKeys(), (key) => {\n formData.append(`${this.getParameterName()}[${key}]`, StringUtils.toString(record[key]));\n });\n\n return formData;\n }\n}\n\nexport default FormDataTransform;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"moment-islamic-civil\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"moment/min/locales\");","// @flow\n\nimport moment from 'moment-islamic-civil';\nimport 'moment/min/locales';\n\nconst DEFAULT_LOCALE = 'en';\n\nconst MAX_DAYS_IN_MONTH = 31;\n\n/**\n * Wrapper class to handle momentJS dates to multiple calendars.\n */\nclass Calendar {\n static Calendars: any;\n static DateFormats: any;\n static Defaults: any;\n\n locale: string;\n name: string;\n\n /**\n * Constructs a new calendar instance for the passed locale and calendar.\n *\n * @param locale\n * @param name\n */\n constructor(locale: string = DEFAULT_LOCALE, name: string = Calendar.Calendars.gregorian) {\n this.locale = locale;\n this.name = name;\n }\n\n /**\n * Increments the date by the passed value.\n *\n * @param date\n * @param value\n *\n * @returns {*}\n */\n addDate(date: Date, value: number) {\n const m = this.moment(date);\n return this.isHijri() ? m.add(value, 'iDate') : m.add(value, 'date');\n }\n\n /**\n * Increments the month by the passed value.\n *\n * @param date\n * @param value\n *\n * @returns {*}\n */\n addMonth(date: Date, value: number) {\n const m = this.moment(date);\n return this.isHijri() ? m.add(value, 'iMonth') : m.add(value, 'month');\n }\n\n /**\n * Increments the year by the passed value.\n *\n * @param date\n * @param value\n *\n * @returns {*}\n */\n addYear(date: Date, value: number) {\n const m = this.moment(date);\n return this.isHijri() ? m.add(value, 'iYear') : m.add(value, 'year');\n }\n\n /**\n * Converts the passed year, month, and date to a moment Date object.\n *\n * @param year\n * @param month\n * @param date\n *\n * @returns {moment.Moment}\n */\n convertToDate({ year, month, date }: { year: number, month: number, date: number }) {\n let m = this.moment().hours(0).minutes(0).seconds(0);\n\n if (this.isHijri()) {\n m = m\n .iYear(year || this.getDefaultYear())\n .iMonth(month || this.getDefaultMonth())\n .iDate(date || this.getDefaultDate());\n } else {\n m = m\n .year(year || this.getDefaultYear())\n .month(month || this.getDefaultMonth())\n .date(date || this.getDefaultDate());\n }\n\n return m;\n }\n\n /**\n * Returns the days in the month for the passed year/month.\n *\n * @param year\n * @param month\n *\n * @returns {number}\n */\n daysInMonth(year: number, month: number) {\n const y = year || this.getDefaultYear();\n const m = month || this.getDefaultMonth();\n\n const date = this.convertToDate({ year: y, month: m, date: this.getDefaultDate() });\n return (this.isHijri() ? date.iDaysInMonth() : date.daysInMonth()) || MAX_DAYS_IN_MONTH;\n }\n\n /**\n * Formats the passed date.\n *\n * @param date\n * @param format\n *\n * @returns {*}\n */\n format(date: moment, format: number = Calendar.DateFormats.gregorian) {\n return this.moment(date).format(Calendar.DateFormats[this.name][format]);\n }\n\n /**\n * Returns the default date for the current calendar.\n *\n * @returns {*}\n */\n getDefaultDate() {\n return Calendar.Defaults[this.name].date;\n }\n\n /**\n * Returns the default month for the current calendar.\n *\n * @returns {*}\n */\n getDefaultMonth() {\n return Calendar.Defaults[this.name].month;\n }\n\n /**\n * Returns the default year for the current calendar.\n *\n * @returns {number|*|\"numeric\"|\"2-digit\"|string|((y: number) => moment.Moment)|(() => number)|moment.numberlike}\n */\n getDefaultYear() {\n return Calendar.Defaults[this.name].year;\n }\n\n /**\n * Returns true if the current calendar is Hijri.\n *\n * @returns {boolean}\n */\n isHijri() {\n return this.name === Calendar.Calendars.hijri;\n }\n\n /**\n * Returns the list of months for the current calendar.\n *\n * @returns {*}\n */\n listMonths() {\n const localeData = this.moment().localeData();\n return this.isHijri() ? localeData._iMonths : localeData.months();\n }\n\n /**\n * Wraps the passed date/string in a moment object.\n *\n * @param date\n */\n moment(date: ?any = null) {\n const m = date ? moment(date) : moment();\n m.locale(this.locale);\n return m;\n }\n\n /**\n * Parses the passed date into year, month, and date components.\n *\n * @param date\n *\n * @returns {{date: (*), month: (*), year: (*)}}\n */\n parseDate(date: Date | string) {\n const m = this.moment(date);\n\n return {\n year: this.isHijri() ? m.iYear() : m.year(),\n month: this.isHijri() ? m.iMonth() : m.month(),\n date: this.isHijri() ? m.iDate() : m.date()\n };\n }\n}\n\nCalendar.Calendars = {\n gregorian: 'gregorian',\n hijri: 'hijri'\n};\n\nCalendar.DateFormats = {\n [Calendar.Calendars.gregorian]: {\n '0': 'YYYY',\n '1': 'MMMM YYYY',\n '2': 'L'\n },\n [Calendar.Calendars.hijri]: {\n '0': 'iYYYY',\n '1': 'iMMMM iYYYY',\n '2': 'iM/iD/iYYYY'\n }\n};\n\nCalendar.Defaults = {\n [Calendar.Calendars.gregorian]: {\n year: 0,\n month: 0,\n date: 1\n },\n [Calendar.Calendars.hijri]: {\n year: 1410,\n month: 0,\n date: 1\n }\n};\n\nexport default Calendar;\n","// @flow\n\nconst formatDate = (value: any, locale?: string, options?: any) => {\n const date = new Date(value);\n return date.toLocaleDateString(locale, options);\n};\n\nexport default {\n formatDate\n};\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react-dnd\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react-dnd-html5-backend\");","// @flow\n\nimport React, { type ComponentType } from 'react';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend, type BackendFactory } from 'react-dnd-html5-backend';\n\nconst useDragDrop = (WrappedComponent: ComponentType<any>, backend: BackendFactory = HTML5Backend) => (\n () => (\n <DndProvider\n backend={backend}\n >\n <WrappedComponent />\n </DndProvider>\n )\n);\n\nexport default useDragDrop;\n","// @flow\n\nimport React from 'react';\n\n/**\n * Returns the subset of children matching the passed component type. This function is useful for designing components\n * using a sub-component type syntax:\n *\n * <MyComponent ...>\n * <MyComponent.Subcomponent ... />\n * <MyComponent.AnotherSubcomponent ... />\n * </MyComponent>\n *\n * @param children\n * @param component\n *\n * @returns {[]}\n */\nconst findByType = (children: any, component: any) => {\n const components = [];\n\n const type = [component.displayName || component.name];\n\n React.Children.forEach(children, (child) => {\n const childType = child && child.type && (child.type.displayName || child.type.name);\n if (type.includes(childType)) {\n components.push(child);\n }\n });\n\n return components;\n};\n\nexport default {\n findByType\n};\n","// @flow\n\nimport { useEffect, useRef } from 'react';\n\n/**\n * Stores the previous value of the passed parameter.\n *\n * @param value\n *\n * @returns {*}\n */\nconst usePrevious = (value) => {\n const ref = useRef();\n\n useEffect(() => {\n ref.current = value;\n }, [value]);\n\n return ref.current;\n};\n\nexport default {\n usePrevious\n};\n","// @flow\n\n/**\n * Returns the numeric latitude and longitude for the passed coordinates.\n *\n * @param coords\n *\n * @returns {*}\n */\nconst getPosition = (coords: ?{ lat: any, lng: any }) => {\n let position;\n\n if (coords) {\n const lat = Number.parseFloat(coords.lat);\n const lng = Number.parseFloat(coords.lng);\n\n if (!Number.isNaN(lat) && !Number.isNaN(lng)) {\n position = { lat, lng };\n }\n }\n\n return position;\n};\n\nexport default {\n getPosition\n};\n","// @flow\n\nconst DEFAULT_TIMEOUT = 500;\n\n/**\n * The timer class encapsulates the logic for setting and clearing a timeout. This is particularly useful for\n * keydown/keyup events when we only want to perform an action after the user has finished typing.\n */\nclass Timer {\n timeout: TimeoutID | null;\n\n constructor() {\n this.timeout = null;\n }\n\n /**\n * Clears the search timer.\n */\n clearSearchTimer() {\n clearTimeout(this.timeout);\n }\n\n /**\n * Sets the search timer.\n */\n setSearchTimer(onTimeout: () => void) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(onTimeout, DEFAULT_TIMEOUT);\n }\n}\n\nexport default new Timer();\n"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","require","resources","en","translation","i18n","i18next","init","debug","fallbackLng","lng","interpolation","escapeValue","DEFAULT_OPTIONS","emptyValues","undefined","ignoreHtml","ignoreWhitespace","HTML_REGEX","WHITESPACE_REGEX","isEmpty","_","isEqual","b","userOptions","options","aString","bString","replace","aKeys","bKeys","length","equal","isPromise","then","WrappedComponent","props","item","defaults","state","loading","originalItem","saving","validationErrors","this","onInitialize","id","setState","prevProps","onSetState","uid","required","onClose","association","child","onMarkChildAssociationForDelete","onRemoveChildAssociation","response","data","errors","status","keys","fieldErrors","error","resolveValidationError","c","_destroy","children","items","onSaveChildAssociation","bind","childrenToRemove","isChild","onDeleteChildAssociation","validateForm","onSave","catch","onError","finally","onUpdateChildAssociation","onCreateChildAssociation","idKey","valueKey","record","e","dirty","ObjectUtils","isError","isRequired","onAssociationInputChange","onCheckboxInputChange","onMultiAddChildAssociations","onReset","onTextInputChange","validate","toString","Component","Status","BannerComponent","useState","setStatus","onAccept","useCallback","onDecline","useEffect","storageKey","localStorage","getItem","newStatus","setItem","location","GoogleAnalytics","isBrowser","window","InfiniteScroll","height","setHeight","containerRef","useRef","getScrollElement","scrollElement","context","current","document","documentElement","onScroll","element","scrollTop","clientHeight","scrollHeight","offset","onBottomReached","scrollContainer","addEventListener","removeEventListener","scrollable","isScrollable","ref","defaultProps","LAYOUT_SHIFT","KeyboardSimple","keyboardRef","onKeyPress","isCaps","layoutName","setOptions","layout","onChange","Keyboard","keyboardClass","setInput","className","BaseService","constructor","TypeError","callback","axios","transform","getTransform","getBaseUrl","toPayload","getConfig","params","update","create","ReferenceCodes","BaseTransform","getParameterName","getPayloadKeys","includes","toLowerCase","NestedAttributesTransform","formData","prefix","collection","index","append","StringUtils","order","ReferenceTable","referenceTable","reference_table","ReferenceTables","Attachments","name","attachment","removeAttribute","FormDataTransform","FormData","Calendar","locale","Calendars","gregorian","date","m","moment","isHijri","add","year","month","hours","minutes","seconds","iYear","getDefaultYear","iMonth","getDefaultMonth","iDate","getDefaultDate","y","convertToDate","iDaysInMonth","daysInMonth","format","DateFormats","Defaults","hijri","localeData","_iMonths","months","formatDate","Date","toLocaleDateString","backend","HTML5Backend","DndProvider","findByType","component","components","type","displayName","React","childType","push","usePrevious","getPosition","coords","position","lat","Number","parseFloat","isNaN","Timer","timeout","clearTimeout","onTimeout","setTimeout"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"index.js","mappings":"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","sources":["webpack://@performant-software/shared-components/webpack/bootstrap","webpack://@performant-software/shared-components/webpack/runtime/compat get default export","webpack://@performant-software/shared-components/webpack/runtime/define property getters","webpack://@performant-software/shared-components/webpack/runtime/hasOwnProperty shorthand","webpack://@performant-software/shared-components/webpack/runtime/make namespace object","webpack://@performant-software/shared-components/external commonjs2 \"react\"","webpack://@performant-software/shared-components/external commonjs \"underscore\"","webpack://@performant-software/shared-components/external commonjs \"i18next\"","webpack://@performant-software/shared-components/./src/i18n/i18n.js","webpack://@performant-software/shared-components/./src/utils/Object.js","webpack://@performant-software/shared-components/./src/components/EditContainer.js","webpack://@performant-software/shared-components/external commonjs \"react-ga4\"","webpack://@performant-software/shared-components/./src/components/GoogleAnalytics.js","webpack://@performant-software/shared-components/./src/components/GoogleScript.js","webpack://@performant-software/shared-components/external commonjs \"@react-google-maps/api\"","webpack://@performant-software/shared-components/./src/utils/Browser.js","webpack://@performant-software/shared-components/./src/components/InfiniteScroll.js","webpack://@performant-software/shared-components/external commonjs \"simple-keyboard\"","webpack://@performant-software/shared-components/./src/components/Keyboard.js","webpack://@performant-software/shared-components/external commonjs \"axios\"","webpack://@performant-software/shared-components/./src/services/BaseService.js","webpack://@performant-software/shared-components/./src/services/ReferenceCodes.js","webpack://@performant-software/shared-components/./src/transforms/BaseTransform.js","webpack://@performant-software/shared-components/./src/utils/String.js","webpack://@performant-software/shared-components/./src/transforms/NestedAttributesTransform.js","webpack://@performant-software/shared-components/./src/transforms/ReferenceCodes.js","webpack://@performant-software/shared-components/./src/transforms/ReferenceTable.js","webpack://@performant-software/shared-components/./src/services/ReferenceTables.js","webpack://@performant-software/shared-components/./src/transforms/Attachments.js","webpack://@performant-software/shared-components/./src/transforms/FormDataTransform.js","webpack://@performant-software/shared-components/./src/transforms/References.js","webpack://@performant-software/shared-components/external commonjs \"moment-islamic-civil\"","webpack://@performant-software/shared-components/external commonjs \"moment/min/locales\"","webpack://@performant-software/shared-components/./src/utils/Calendar.js","webpack://@performant-software/shared-components/./src/utils/Date.js","webpack://@performant-software/shared-components/external commonjs \"react-dnd\"","webpack://@performant-software/shared-components/external commonjs \"react-dnd-html5-backend\"","webpack://@performant-software/shared-components/./src/utils/DragDrop.js","webpack://@performant-software/shared-components/./src/utils/Element.js","webpack://@performant-software/shared-components/./src/utils/Hooks.js","webpack://@performant-software/shared-components/./src/utils/Map.js","webpack://@performant-software/shared-components/./src/utils/Timer.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"underscore\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"i18next\");","import i18next from 'i18next';\n\nimport en from './en.json';\n\nconst resources = {\n en: {\n translation: en\n }\n};\n\nconst i18n = i18next.createInstance();\n\ni18n\n .init({\n debug: true,\n fallbackLng: 'en',\n lng: 'en',\n interpolation: {\n escapeValue: false,\n },\n resources\n });\n\nexport default i18n;\n","// @flow\n\nimport _ from 'underscore';\n\ntype OptionsProps = {\n emptyValues: Array<any>,\n ignoreHtml: boolean\n};\n\nconst EMPTY_VALUES = [\n '',\n null,\n undefined,\n [],\n {}\n];\n\nconst DEFAULT_OPTIONS = {\n emptyValues: EMPTY_VALUES,\n ignoreHtml: true,\n ignoreWhitespace: true\n};\n\nconst HTML_REGEX = /(<([^>]+)>)/gi;\nconst WHITESPACE_REGEX = /\\s\\s+/g;\n\n/**\n * Returns true if the passed value is considered \"empty\".\n *\n * @param value\n *\n * @returns {boolean|*}\n */\nconst isEmpty = (value: any) => {\n // If the value is an object or array, use underscore's isEmpty check.\n if (_.isObject(value) || _.isArray(value)) {\n return _.isEmpty(value);\n }\n\n return !value;\n};\n\n/**\n * Returns true if the passed two arguments as deep equal. This function will perform a recursive check against all of\n * the keys in the objects.\n *\n * @param a\n * @param b\n *\n * @returns {boolean}\n */\nconst isEqual = (a: any, b: any, userOptions: OptionsProps = {}) => {\n const options = _.defaults(userOptions, DEFAULT_OPTIONS);\n\n // Check equality, consider empty strings and \"null\" values as equal\n if (a === b || (_.contains(options.emptyValues, a) && _.contains(options.emptyValues, b))) {\n return true;\n }\n\n // Deep string comparison\n if (_.isString(a) && _.isString(b)) {\n let aString = a;\n let bString = b;\n\n // Remove superfluous whitespace\n if (options.ignoreWhitespace) {\n aString = a.replace(WHITESPACE_REGEX, ' ');\n bString = b.replace(WHITESPACE_REGEX, ' ');\n }\n\n // If we're ignoring HTML, compare the string values with HTML tags removed\n if (options.ignoreHtml) {\n aString = aString.replace(HTML_REGEX, '');\n bString = bString.replace(HTML_REGEX, '');\n }\n\n if (aString === bString) {\n return true;\n }\n }\n\n if (a !== null && typeof a === 'object' && b !== null && typeof b === 'object') {\n const aKeys = _.keys(a);\n const bKeys = _.keys(b);\n\n // If the objects contain different number of keys, return false\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n\n // Recursively check each key for equality\n let equal = true;\n\n _.each(_.keys(a), (key) => {\n if (!(_.has(b, key) && isEqual(a[key], b[key]))) {\n equal = false;\n }\n });\n\n // If any of the recursive keys are not equal, return false\n if (!equal) {\n return false;\n }\n\n // If we've made it this far, we've checked the equality of all the keys in both objects, return true\n return true;\n }\n\n return false;\n};\n\nconst isPromise = (value: any) => !!value && typeof value === 'object' && typeof value.then === 'function';\n\nexport default {\n isEmpty,\n isEqual,\n isPromise\n};\n","// @flow\n\nimport React, { Component, type ComponentType, type Element } from 'react';\nimport _ from 'underscore';\nimport i18n from '../i18n/i18n';\nimport ObjectUtils from '../utils/Object';\n\ntype Props = {\n children?: Element<any>,\n defaults?: any,\n item?: any,\n onClose: () => void,\n onInitialize?: (id: number) => Promise<any>,\n onSave: (item: any) => Promise<any>,\n required?: Array<string>,\n resolveValidationError?: ({ error: string, item: any, status: number, key: string }) => Array<string>,\n validate?: (item: any) => Array<string>\n};\n\ntype State = {\n item: any,\n loading: boolean,\n originalItem: any,\n saving: boolean,\n validationErrors: any\n};\n\nconst ERROR_EMPTY = 'can\\'t be blank';\nconst ERROR_UNIQUE = 'has already been taken';\n\nconst useEditContainer = (WrappedComponent: ComponentType<any>) => (\n class extends Component<Props, State> {\n /**\n * Constructs a new EditProvider component.\n *\n * @param props\n */\n constructor(props: Props) {\n super(props);\n\n const item = _.defaults(props.item || {}, props.defaults || {});\n\n this.state = {\n item,\n loading: false,\n originalItem: item,\n saving: false,\n validationErrors: []\n };\n }\n\n /**\n * Loads the item from the API if an onInitialize prop is specified.\n */\n componentDidMount() {\n if (this.props.onInitialize && this.props.item && this.props.item.id) {\n this.setState({ loading: true }, () => {\n if (this.props.onInitialize && this.props.item) {\n this.props\n .onInitialize(this.props.item.id)\n .then((item) => this.setState({ item, originalItem: item, loading: false }));\n }\n });\n }\n }\n\n /**\n * Resets the item on the state.\n *\n * @param prevProps\n */\n componentDidUpdate(prevProps: Props) {\n if (prevProps.item !== this.props.item) {\n this.setState({ item: this.props.item, originalItem: this.props.item });\n }\n }\n\n /**\n * Sets the saving property to false.\n */\n componentWillUnmount() {\n this.onSetState({ saving: false });\n }\n\n /**\n * Returns true if the IDs or UIDs for the passed records match.\n *\n * @param a\n * @param b\n *\n * @returns {*|boolean}\n */\n isChild(a: any, b: any) {\n return (a.uid && b.uid && a.uid === b.uid) || (a.id && b.id && a.id === b.id);\n }\n\n /**\n * Returns true if the passed property is required.\n *\n * @param prop\n *\n * @returns {*|boolean}\n */\n isRequired(prop: string) {\n return this.props.required && _.contains(this.props.required, prop);\n }\n\n /**\n * Returns true if the passed property is listed in the hash of validation errors.\n *\n * @param prop\n *\n * @returns {*|boolean}\n */\n isError(prop: string) {\n return _.has(this.state.validationErrors, prop);\n }\n\n /**\n * Closes the provider.\n */\n onClose() {\n this.props.onClose();\n }\n\n /**\n * Adds the passed child to the passed association for the current item.\n *\n * @param association\n * @param child\n */\n onCreateChildAssociation(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: [\n ...(state.item[association] || []),\n child\n ]\n }\n }));\n }\n\n /**\n * Removes the passed child from the passed association.\n *\n * @param association\n * @param child\n */\n onDeleteChildAssociation(association: string, child: any) {\n return child.id\n ? this.onMarkChildAssociationForDelete(association, child)\n : this.onRemoveChildAssociation(association, child);\n }\n\n /**\n * Resolves the validation errors from the passed HTTP response.\n *\n * @param errors\n * @param status\n */\n onError({ response: { data: { errors = {} }, status } }: any) {\n const validationErrors = {};\n\n _.each(Object.keys(errors), (key) => {\n const fieldErrors = errors[key];\n const value = this.state.item[key];\n\n _.each(fieldErrors, (error) => {\n if (error === ERROR_UNIQUE) {\n _.extend(validationErrors, { [key]: i18n.t('EditContainer.errors.unique', { key, value }) });\n } else if (error === ERROR_EMPTY) {\n _.extend(validationErrors, { [key]: i18n.t('EditContainer.errors.required', { key }) });\n } else if (this.props.resolveValidationError) {\n _.extend(validationErrors, this.props.resolveValidationError({\n key,\n error,\n status,\n item: this.state.item\n }));\n }\n });\n });\n\n if (status === 400 && _.isEmpty(validationErrors)) {\n _.extend(validationErrors, { error: i18n.t('EditContainer.errors.general') });\n } else if (status === 500 && _.isEmpty(validationErrors)) {\n _.extend(validationErrors, { error: i18n.t('EditContainer.errors.system') });\n }\n\n this.setState({ saving: false, validationErrors });\n }\n\n /**\n * Marks the passed child for delete form the passed association. This function is called if the child record\n * has an ID value.\n *\n * @param association\n * @param child\n */\n onMarkChildAssociationForDelete(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: _.map(state.item[association] || [],\n (c) => (c.id === child.id ? { ...c, _destroy: true } : c))\n }\n }));\n }\n\n /**\n * Modifies the passed association based on the passed collection of children.\n *\n * @param association\n * @param children\n */\n onMultiAddChildAssociations(association: string, children: any) {\n const items = this.state.item[association];\n\n // Add new children or update existing children\n _.each(children, this.onSaveChildAssociation.bind(this, association));\n\n // Remove any children that no longer exist\n const childrenToRemove = _.filter(items, (item) => !_.find(children, this.isChild.bind(this, item)));\n _.each(childrenToRemove, this.onDeleteChildAssociation.bind(this, association));\n }\n\n /**\n * Removes the passed child record from the passed association. This function is called if the child record does\n * not have an ID value.\n *\n * @param association\n * @param child\n */\n onRemoveChildAssociation(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: _.filter(state.item[association] || [],\n (c) => c !== child)\n }\n }));\n }\n\n /**\n * Resets the item on the state to the default item and calls the onReset prop.\n */\n onReset() {\n const item = this.props.defaults || {};\n\n this.setState({\n item,\n originalItem: item\n });\n }\n\n /**\n * Saves the current item.\n */\n onSave() {\n if (!this.validateForm()) {\n return;\n }\n\n this.setState({ saving: true }, () => {\n this.props\n .onSave(this.state.item)\n .catch(this.onError.bind(this))\n .finally(() => this.setState({ saving: false }));\n });\n }\n\n /**\n * Adds the passed child record to the passed association.\n *\n * @param association\n * @param child\n */\n onSaveChildAssociation(association: string, child: any) {\n const children = this.state.item[association] || [];\n\n return _.find(children, this.isChild.bind(this, child))\n ? this.onUpdateChildAssociation(association, child)\n : this.onCreateChildAssociation(association, child);\n }\n\n /**\n * Updates the child record in the passed association.\n *\n * @param association\n * @param child\n */\n onUpdateChildAssociation(association: string, child: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [association]: _.map(state.item[association] || [], (c) => (this.isChild(child, c) ? child : c))\n }\n }));\n }\n\n /**\n * Sets the associated ID and object.\n *\n * @param idKey\n * @param valueKey\n * @param record\n */\n onAssociationInputChange(idKey: string, valueKey: string, record: any = {}) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [idKey]: record.id || '',\n [valueKey]: record || {}\n },\n validationErrors: _.omit(state.validationErrors, idKey)\n }));\n }\n\n /**\n * Toggles the checkbox value for the passed key.\n *\n * @param key\n */\n onCheckboxInputChange(key: string) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [key]: !state.item[key]\n }\n }));\n }\n\n /**\n * Sets the passed properties on the item on the state.\n *\n * @param props\n */\n onSetState(props: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n ...props\n }\n }));\n }\n\n /**\n * Sets the text input property for the passed key/value.\n *\n * @param key\n * @param e\n * @param value\n */\n onTextInputChange(key: string, e: Event, { value }: any) {\n this.setState((state) => ({\n item: {\n ...state.item,\n [key]: value\n },\n validationErrors: _.omit(state.validationErrors, key)\n }));\n }\n\n render() {\n return (\n <WrappedComponent\n {...this.props}\n dirty={!!(this.state.item.id && !ObjectUtils.isEqual(this.state.item, this.state.originalItem))}\n errors={_.values(this.state.validationErrors)}\n isError={this.isError.bind(this)}\n isRequired={this.isRequired.bind(this)}\n item={this.state.item}\n loading={this.state.loading}\n onAssociationInputChange={this.onAssociationInputChange.bind(this)}\n onCheckboxInputChange={this.onCheckboxInputChange.bind(this)}\n onDeleteChildAssociation={this.onDeleteChildAssociation.bind(this)}\n onMultiAddChildAssociations={this.onMultiAddChildAssociations.bind(this)}\n onReset={this.onReset.bind(this)}\n onSave={this.onSave.bind(this)}\n onSaveChildAssociation={this.onSaveChildAssociation.bind(this)}\n onTextInputChange={this.onTextInputChange.bind(this)}\n onSetState={this.onSetState.bind(this)}\n saving={this.state.saving}\n />\n );\n }\n\n /**\n * Validates the form using the component props required attributes.\n *\n * @returns {boolean}\n */\n validateForm() {\n const validationErrors = [];\n\n // Custom validations\n if (this.props.validate) {\n _.extend(validationErrors, this.props.validate(this.state.item));\n }\n\n // Validate required properties\n const required = this.props.required || [];\n\n _.each(required, (key) => {\n const value = this.state.item[key];\n\n let invalid;\n\n if (_.isNumber(value)) {\n invalid = _.isEmpty(value.toString());\n } else {\n invalid = _.isEmpty(value);\n }\n\n if (invalid) {\n _.extend(validationErrors, { [key]: i18n.t('EditContainer.errors.required', { key }) });\n }\n });\n\n this.setState({ validationErrors });\n\n return _.keys(validationErrors).length === 0;\n }\n }\n);\n\nexport default useEditContainer;\n\nexport type EditContainerProps = {\n children: Element<any>,\n dirty: boolean,\n errors: Array<string>,\n isError: (property: string) => boolean,\n isRequired: (property: string) => boolean,\n item: any,\n loading: boolean,\n onAssociationInputChange: (idKey: string, valueKey: string, item: any) => void,\n onCheckboxInputChange: (key: string, value: any) => void,\n onDeleteChildAssociation: (association: string, child: any) => void,\n onMultiAddChildAssociations: (association: string, Array<any>) => void,\n onReset: () => void,\n onSave: () => void,\n onSaveChildAssociation: (association: string, child: any) => void,\n onSetState: (any) => void,\n onTextInputChange: (key: string, e: ?Event, value: any) => void,\n saving: boolean\n};\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react-ga4\");","// @flow\n\nimport React, {\n useCallback,\n useEffect,\n useState,\n type ComponentType\n} from 'react';\nimport GoogleAnalytics from 'react-ga4';\n\ntype Props = {\n id: string,\n location?: any,\n storageKey: string,\n};\n\n/**\n * Status constants.\n *\n * @type {{rejected: string, notSet: string, accepted: string}}\n */\nconst Status = {\n accepted: 'accepted',\n notSet: 'not_set',\n rejected: 'rejected'\n};\n\n/**\n * Higher order component function used to wrap a \"cookie consent\" banner with Google Analytics.\n *\n * @param BannerComponent\n *\n * @returns {function(Props)}\n */\nconst withGoogleAnalytics = (BannerComponent: ComponentType<any>) => (props: Props) => {\n const [status, setStatus] = useState();\n\n /**\n * Returns the Google Analytics consent value from local storage.\n *\n * @param storageKey\n *\n * @returns {string|string}\n */\n const getGoogleAnalyticsConsent = (storageKey) => (\n localStorage.getItem(storageKey) || Status.notSet\n );\n\n /**\n * Sets the Google Analytics consent value in local storage.\n *\n * @param storageKey\n * @param newStatus\n */\n const setGoogleAnalyticsConsent = (storageKey: string, newStatus: string) => (\n localStorage.setItem(storageKey, newStatus)\n );\n\n /**\n * Sets the \"accepted\" status and initializes analytics.\n *\n * @type {(function(): void)|*}\n */\n const onAccept = useCallback(() => setStatus(Status.accepted), []);\n\n /**\n * Sets the \"rejected\" status.\n *\n * @type {(function(): void)|*}\n */\n const onDecline = useCallback(() => setStatus(Status.rejected), []);\n\n /**\n * Sets the initial status on the state from local storage.\n */\n useEffect(() => {\n setStatus(getGoogleAnalyticsConsent(props.storageKey));\n }, [props.storageKey]);\n\n /**\n * Sets the status on local storage when the state changes.\n */\n useEffect(() => {\n setGoogleAnalyticsConsent(props.storageKey, status || '');\n }, [status, props.storageKey]);\n\n /**\n * Sends the page view event if the location changes.\n */\n useEffect(() => {\n if (props.location && status === Status.accepted) {\n GoogleAnalytics.send('pageview');\n }\n }, [status, props.location]);\n\n /**\n * Initializes GoogleAnalytics when the status is set to accepted.\n */\n useEffect(() => {\n if (status === Status.accepted) {\n GoogleAnalytics.initialize(props.id);\n }\n }, [status]);\n\n if (!props.id || !props.storageKey || status !== Status.notSet) {\n return null;\n }\n\n return (\n <BannerComponent\n {...props}\n onAccept={onAccept}\n onDecline={onDecline}\n />\n );\n};\n\nexport default withGoogleAnalytics;\n","// @flow\n\nimport { LoadScript } from '@react-google-maps/api';\n\nexport default LoadScript;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"@react-google-maps/api\");","// @flow\n\n/**\n * Returns true if the window object is present.\n *\n * @returns {boolean}\n */\nconst isBrowser = () => (typeof window !== 'undefined');\n\nexport default {\n isBrowser\n};\n","// @flow\n\nimport React, {\n useEffect,\n useRef,\n useState,\n type Element\n} from 'react';\nimport { isBrowser } from '../utils/Browser';\n\ntype Props = {\n children: Element<any>,\n context?: { current: HTMLElement },\n offset: number,\n onBottomReached: () => void\n};\n\nconst InfiniteScroll = (props: Props) => {\n const [height, setHeight] = useState(0);\n const containerRef = useRef();\n\n /**\n * Returns the scrolling element.\n *\n * @returns {*}\n */\n const getScrollElement = () => {\n let scrollElement;\n\n if (props.context) {\n scrollElement = props.context.current;\n } else if (isBrowser()) {\n scrollElement = document.documentElement;\n }\n\n return scrollElement;\n };\n\n /**\n * Calls the onBottomReached prop if the scroll has reached the end.\n */\n const onScroll = () => {\n const element = getScrollElement();\n\n if (element) {\n const { scrollTop, clientHeight, scrollHeight } = element;\n\n if ((scrollTop + clientHeight) >= (scrollHeight - props.offset)) {\n props.onBottomReached();\n }\n }\n };\n\n /**\n * Sets up the container scroll event listeners.\n */\n useEffect(() => {\n let scrollContainer;\n\n if (props.context) {\n scrollContainer = props.context.current;\n } else if (isBrowser()) {\n scrollContainer = window;\n }\n\n if (!scrollContainer) {\n return undefined;\n }\n\n scrollContainer.addEventListener('scroll', onScroll);\n return () => scrollContainer && scrollContainer.removeEventListener('scroll', onScroll);\n }, [props.context]);\n\n /**\n * Returns true if the context element is scrollable.\n *\n * @returns {boolean}\n */\n const isScrollable = () => {\n let scrollable = false;\n\n const element = getScrollElement();\n if (element) {\n const { clientHeight, scrollHeight } = element;\n scrollable = scrollHeight > clientHeight;\n }\n\n return scrollable;\n };\n\n /**\n * Upon initial render, the DOM may not be tall enough to scroll and trigger the onScroll event. In this case,\n * we'll call the onBottomReached prop when the component is mounted until the container's scrollHeight is greater\n * than the height of the container.\n */\n useEffect(() => {\n if (!isScrollable() && containerRef && containerRef.current) {\n const { clientHeight } = containerRef.current;\n\n if (clientHeight > height) {\n setHeight(clientHeight);\n props.onBottomReached();\n }\n }\n });\n\n return (\n <div\n ref={containerRef}\n >\n { props.children }\n </div>\n );\n};\n\nInfiniteScroll.defaultProps = {\n offset: 0\n};\n\nexport default InfiniteScroll;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"simple-keyboard\");","// @flow\n\nimport React, { useEffect, useRef } from 'react';\nimport Keyboard from 'simple-keyboard';\nimport './Keyboard.css';\n\ntype Props = {\n layout: any,\n onChange: (value: string) => void,\n value: string,\n keyboardClass: string,\n};\n\nconst KEY_CAPS_LOCK = '{lock}';\nconst KEY_SHIFT = '{shift}';\n\nconst LAYOUT_DEFAULT = 'default';\nconst LAYOUT_SHIFT = 'shift';\n\nconst KeyboardSimple = (props: Props) => {\n const keyboardRef = useRef();\n\n // Toggles the layout name for Shift and CapsLock keys.\n const onKeyPress = (value) => {\n const isCaps = value === KEY_CAPS_LOCK || value === KEY_SHIFT;\n\n if (isCaps && keyboardRef.current && keyboardRef.current.options.layoutName === LAYOUT_SHIFT) {\n keyboardRef.current.setOptions({ layoutName: LAYOUT_DEFAULT });\n } else if (isCaps && keyboardRef.current && keyboardRef.current.options.layoutName !== LAYOUT_SHIFT) {\n keyboardRef.current.setOptions({ layoutName: LAYOUT_SHIFT });\n }\n };\n\n // Sets up the keyboard reference and the initial value when the component is first rendered.\n useEffect(() => {\n const { layout, onChange } = props;\n keyboardRef.current = new Keyboard(`.${props.keyboardClass}`, { ...layout, onChange, onKeyPress });\n keyboardRef.current.setInput(props.value);\n }, []);\n\n // Sets the keyboard value when the value property changes.\n useEffect(() => {\n if (keyboardRef.current) {\n keyboardRef.current.setInput(props.value);\n }\n }, [props.value]);\n\n return <div className={props.keyboardClass} />;\n};\n\nKeyboardSimple.defaultProps = {\n keyboardClass: 'simple-keyboard'\n};\n\nexport default KeyboardSimple;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"axios\");","// @flow\n\nimport axios, { type AxiosResponse, type AxiosStatic } from 'axios';\n\n/**\n * Base class for making API calls. This class uses Axios under the hood and a customizable transform class for\n * PUT/POST requests.\n */\nclass BaseService {\n /**\n * Allows for static configuration of the axios object.\n *\n * @param callback\n */\n static configure(callback: (axiosInstance: typeof axios) => void) {\n callback(axios);\n }\n\n /**\n * Constructs a new BaseService object. This constructor should never be used directly.\n */\n constructor() {\n if (this.constructor === BaseService) {\n throw new TypeError('Abstract class \"BaseService\" cannot be instantiated directly.');\n }\n }\n\n /**\n * Calls the POST /api/<resource>/ endpoint with the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n create(item: any): Promise<AxiosResponse> {\n const transform = this.getTransform();\n return axios.post(this.getBaseUrl(), transform.toPayload(item), this.getConfig());\n }\n\n /**\n * Calls the DELETE /api/<resource>/:id endpoint for the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n delete(item: any) {\n return axios.delete(`${this.getBaseUrl()}/${item.id}`);\n }\n\n /**\n * Calls the GET /api/<resource>/ endpoint.\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n fetchAll(params: any) {\n return axios.get(this.getBaseUrl(), { params });\n }\n\n /**\n * Calls the GET /api/<resource>/:id endpoint.\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n fetchOne(id: number) {\n return axios.get(`${this.getBaseUrl()}/${id}`);\n }\n\n /**\n * Calls the create/update API endpoint for the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n save(item: any) {\n return item.id ? this.update(item) : this.create(item);\n }\n\n /**\n * Calls the POST /api/<resource>/search endpoint.\n *\n * @param params\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n search(params: any) {\n return axios.post(`${this.getBaseUrl()}/search`, params);\n }\n\n /**\n * Calls the PUT /api/<resource>/:id endpoint with the passed item.\n *\n * @param item\n *\n * @returns {Promise<AxiosResponse<T>>}\n */\n update(item: any) {\n const transform = this.getTransform();\n return axios.put(`${this.getBaseUrl()}/${item.id}`, transform.toPayload(item), this.getConfig());\n }\n\n // protected\n\n /**\n * Returns the axios instance.\n *\n * @returns {AxiosStatic}\n */\n getAxios(): AxiosStatic {\n return axios;\n }\n\n /**\n * Returns the API base URL string.\n */\n getBaseUrl(): string {\n // Implemented in concrete classes.\n return '';\n }\n\n /**\n * Returns the config properties for POST/PUT requests.\n *\n * @returns {null}\n */\n getConfig() {\n // Implemented in concrete classes\n return null;\n }\n\n /**\n * Returns the transform object. This class will be used to generate the object sent on POST/PUT requests.\n */\n getTransform() {\n // Implemented in concrete classes.\n return {};\n }\n}\n\nexport default BaseService;\n","// @flow\n\nimport BaseService from './BaseService';\n\n/**\n * Class responsible for handling all reference code API requests.\n */\nclass ReferenceCodes extends BaseService {\n /**\n * Returns the reference codes base URL.\n *\n * @returns {string}\n */\n getBaseUrl() {\n return '/controlled_vocabulary/reference_codes';\n }\n\n /**\n * Returns the reference codes transform object.\n *\n * @returns {{}}\n */\n getTransform() {\n return { }; // PUT/POST routes not implemented\n }\n}\n\nexport default new ReferenceCodes();\n","// @flow\n\nimport _ from 'underscore';\n\n/**\n * Class for handling transforming objects for PUT/POST requests. This class transforms records into\n * plain Javascript objects.\n */\nclass BaseTransform {\n /**\n * Constructs a new BaseTransform object. This constructor should never be used directly.\n */\n constructor() {\n if (this.constructor === BaseTransform) {\n throw new TypeError('Abstract class \"BaseTransform\" cannot be instantiated directly.');\n }\n }\n\n // protected\n\n /**\n * Returns the parameter name.\n *\n * @returns {string}\n */\n getParameterName(): string {\n // Implemented in sub-class\n return '';\n }\n\n /**\n * Returns the array of payload keys.\n *\n * @returns {*[]}\n */\n getPayloadKeys(): Array<string> {\n // Implemented in sub-class\n return [];\n }\n\n /**\n * Returns the object for POST/PUT requests as a plain Javascript object.\n *\n * @param item\n *\n * @returns any\n */\n toPayload(item: any): any {\n return {\n [this.getParameterName()]: _.pick(item, this.getPayloadKeys())\n };\n }\n}\n\nexport default BaseTransform;\n","// @flow\n\nimport _ from 'underscore';\n\nconst includes = (a: any, b: any) => (\n a && b && a.toString().toLowerCase().includes(b.toString().toLowerCase())\n);\n\nconst toString = (value: any) => {\n if (_.isNumber(value) || _.isBoolean(value)) {\n return value;\n }\n\n return value || '';\n};\n\nexport default {\n includes,\n toString\n};\n","// @flow\n\nimport _ from 'underscore';\nimport StringUtils from '../utils/String';\n\n/**\n * Class for handling transforming nested attributes of a parent object. This class will handle transforming the\n * object into a payload to be sent to a POST/PUT request on an API. This class currently supports transforming into\n * a plain Javascript object or a FormData object.\n */\nclass NestedAttributesTransform {\n /**\n * Constructs a new BaseTransform object. This constructor should never be used directly.\n */\n constructor() {\n if (this.constructor === NestedAttributesTransform) {\n throw new TypeError('Abstract class \"NestedAttributesTransform\" cannot be instantiated directly.');\n }\n }\n\n /**\n * Returns the array of payload keys.\n *\n * @returns {*[]}\n */\n getPayloadKeys() {\n // Implemented in sub-class.\n return [];\n }\n\n /**\n * Appends the passed record's collection to the form data.\n *\n * @param formData\n * @param prefix\n * @param record\n * @param collection\n */\n toFormData(formData: FormData, prefix: string, record: any, collection: string) {\n _.each(record[collection], (item, index) => {\n _.each(this.getPayloadKeys(), (key) => {\n formData.append(`${prefix}[${collection}][${index}][${key}]`, StringUtils.toString(item[key]));\n });\n });\n }\n\n /**\n * Transforms the passed record's collection to a payload object.\n *\n * @param record\n * @param collection\n *\n * @returns {{[p: string]: *}}\n */\n toPayload(record: any, collection: string) {\n return {\n [collection]: _.map(record[collection],\n (item, index) => ({ ..._.pick(item, this.getPayloadKeys()), order: index }))\n };\n }\n}\n\nexport default NestedAttributesTransform;\n","// @flow\n\nimport NestedAttributesTransform from './NestedAttributesTransform';\n\n/**\n * Class for transforming reference codes nested objects for PUT/POST requests.\n */\nclass ReferenceCodes extends NestedAttributesTransform {\n /**\n * Returns the reference codes payload keys.\n *\n * @returns {string[]}\n */\n getPayloadKeys(): Array<string> {\n return [\n 'id',\n 'name',\n '_destroy'\n ];\n }\n\n /**\n * Calls the super method with a default value for the collection name.\n *\n * @param record\n * @param collection\n *\n * @returns {{[p: string]: *}}\n */\n toPayload(record: any, collection: string = 'reference_codes') {\n return super.toPayload(record, collection);\n }\n}\n\nexport default new ReferenceCodes();\n","// @flow\n\nimport _ from 'underscore';\nimport BaseTransform from './BaseTransform';\nimport ReferenceCodes from './ReferenceCodes';\n\ntype ReferenceTableType = {\n id: number,\n name: string,\n key: string\n};\n\n/**\n * Class for transforming reference table objects for PUT/POST requests.\n */\nclass ReferenceTable extends BaseTransform {\n /**\n * Returns the reference table parameter name.\n *\n * @returns {string}\n */\n getParameterName() {\n return 'reference_table';\n }\n\n /**\n * Returns the reference table payload keys.\n *\n * @returns {string[]}\n */\n getPayloadKeys() {\n return [\n 'name',\n 'key'\n ];\n }\n\n /**\n * Converts the passed reference table object to JSON for PUT/POST requests.\n *\n * @param referenceTable\n *\n * @returns {*}\n */\n toPayload(referenceTable: ReferenceTableType) {\n return {\n reference_table: {\n ..._.pick(referenceTable, this.getPayloadKeys()),\n ...ReferenceCodes.toPayload(referenceTable)\n }\n };\n }\n}\n\nexport default new ReferenceTable();\n","// @flow\n\nimport BaseService from './BaseService';\nimport ReferenceTable from '../transforms/ReferenceTable';\n\n/**\n * Class responsible for handling all reference table API requests.\n */\nclass ReferenceTables extends BaseService {\n /**\n * Calls the find_by_key API end point for reference tables.\n *\n * @param key\n *\n * @returns {Promise<AxiosResponse<any>>}\n */\n fetchByKey(key) {\n return this.getAxios().get(`${this.getBaseUrl()}/find_by_key`, { params: { key } });\n }\n\n /**\n * Returns the reference tables base URL.\n *\n * @returns {string}\n */\n getBaseUrl() {\n return '/controlled_vocabulary/reference_tables';\n }\n\n /**\n * Returns the reference table transform object.\n *\n * @returns {ReferenceTable}\n */\n getTransform() {\n return ReferenceTable;\n }\n}\n\nexport default new ReferenceTables();\n","// @flow\n\n/**\n * Helper class for handling binary data. This class should be used in conjunction with the FormDataTransform.\n */\nclass Attachments {\n /**\n * Appends the attachment for the passed record to the passed form data. If the attachment is not present, the\n * \"*_remove\" attribute will be appended if the attachment has been removed.\n *\n * @param formData\n * @param prefix\n * @param record\n * @param name\n */\n toPayload(formData: FormData, prefix: string, record: any, name: string) {\n const attachment = record[name];\n const removeAttribute = `${name}_remove`;\n\n if (attachment) {\n formData.append(`${prefix}[${name}]`, attachment);\n } else if (record[removeAttribute]) {\n formData.append(`${prefix}[${removeAttribute}]`, record[removeAttribute]);\n }\n }\n}\n\nexport default new Attachments();\n","// @flow\n\nimport _ from 'underscore';\nimport BaseTransform from './BaseTransform';\nimport StringUtils from '../utils/String';\n\n/**\n * Class for handling transforming records for PUT/POST requests. This class transforms objects in FormData. This\n * class is useful if your model contains binary data to be uploaded.\n */\nclass FormDataTransform extends BaseTransform {\n /**\n * Converts the passed records to a formData object to be sent on PUT/POST requests.\n *\n * @param record\n *\n * @returns {FormData}\n */\n toPayload(record: any) {\n const formData = new FormData();\n\n _.each(this.getPayloadKeys(), (key) => {\n formData.append(`${this.getParameterName()}[${key}]`, StringUtils.toString(record[key]));\n });\n\n return formData;\n }\n}\n\nexport default FormDataTransform;\n","// @flow\n\nimport NestedAttributesTransform from './NestedAttributesTransform';\n\nclass References extends NestedAttributesTransform {\n getPayloadKeys(): Array<string> {\n return [\n 'reference_code_id'\n ];\n }\n}\n\nconst ReferencesTransform: References = new References();\nexport default ReferencesTransform;\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"moment-islamic-civil\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"moment/min/locales\");","// @flow\n\nimport moment from 'moment-islamic-civil';\nimport 'moment/min/locales';\n\nconst DEFAULT_LOCALE = 'en';\n\nconst MAX_DAYS_IN_MONTH = 31;\n\n/**\n * Wrapper class to handle momentJS dates to multiple calendars.\n */\nclass Calendar {\n static Calendars: any;\n static DateFormats: any;\n static Defaults: any;\n\n locale: string;\n name: string;\n\n /**\n * Constructs a new calendar instance for the passed locale and calendar.\n *\n * @param locale\n * @param name\n */\n constructor(locale: string = DEFAULT_LOCALE, name: string = Calendar.Calendars.gregorian) {\n this.locale = locale;\n this.name = name;\n }\n\n /**\n * Increments the date by the passed value.\n *\n * @param date\n * @param value\n *\n * @returns {*}\n */\n addDate(date: Date, value: number) {\n const m = this.moment(date);\n return this.isHijri() ? m.add(value, 'iDate') : m.add(value, 'date');\n }\n\n /**\n * Increments the month by the passed value.\n *\n * @param date\n * @param value\n *\n * @returns {*}\n */\n addMonth(date: Date, value: number) {\n const m = this.moment(date);\n return this.isHijri() ? m.add(value, 'iMonth') : m.add(value, 'month');\n }\n\n /**\n * Increments the year by the passed value.\n *\n * @param date\n * @param value\n *\n * @returns {*}\n */\n addYear(date: Date, value: number) {\n const m = this.moment(date);\n return this.isHijri() ? m.add(value, 'iYear') : m.add(value, 'year');\n }\n\n /**\n * Converts the passed year, month, and date to a moment Date object.\n *\n * @param year\n * @param month\n * @param date\n *\n * @returns {moment.Moment}\n */\n convertToDate({ year, month, date }: { year: number, month: number, date: number }) {\n let m = this.moment().hours(0).minutes(0).seconds(0);\n\n if (this.isHijri()) {\n m = m\n .iYear(year || this.getDefaultYear())\n .iMonth(month || this.getDefaultMonth())\n .iDate(date || this.getDefaultDate());\n } else {\n m = m\n .year(year || this.getDefaultYear())\n .month(month || this.getDefaultMonth())\n .date(date || this.getDefaultDate());\n }\n\n return m;\n }\n\n /**\n * Returns the days in the month for the passed year/month.\n *\n * @param year\n * @param month\n *\n * @returns {number}\n */\n daysInMonth(year: number, month: number) {\n const y = year || this.getDefaultYear();\n const m = month || this.getDefaultMonth();\n\n const date = this.convertToDate({ year: y, month: m, date: this.getDefaultDate() });\n return (this.isHijri() ? date.iDaysInMonth() : date.daysInMonth()) || MAX_DAYS_IN_MONTH;\n }\n\n /**\n * Formats the passed date.\n *\n * @param date\n * @param format\n *\n * @returns {*}\n */\n format(date: moment, format: number = Calendar.DateFormats.gregorian) {\n return this.moment(date).format(Calendar.DateFormats[this.name][format]);\n }\n\n /**\n * Returns the default date for the current calendar.\n *\n * @returns {*}\n */\n getDefaultDate() {\n return Calendar.Defaults[this.name].date;\n }\n\n /**\n * Returns the default month for the current calendar.\n *\n * @returns {*}\n */\n getDefaultMonth() {\n return Calendar.Defaults[this.name].month;\n }\n\n /**\n * Returns the default year for the current calendar.\n *\n * @returns {number|*|\"numeric\"|\"2-digit\"|string|((y: number) => moment.Moment)|(() => number)|moment.numberlike}\n */\n getDefaultYear() {\n return Calendar.Defaults[this.name].year;\n }\n\n /**\n * Returns true if the current calendar is Hijri.\n *\n * @returns {boolean}\n */\n isHijri() {\n return this.name === Calendar.Calendars.hijri;\n }\n\n /**\n * Returns the list of months for the current calendar.\n *\n * @returns {*}\n */\n listMonths() {\n const localeData = this.moment().localeData();\n return this.isHijri() ? localeData._iMonths : localeData.months();\n }\n\n /**\n * Wraps the passed date/string in a moment object.\n *\n * @param date\n */\n moment(date: ?any = null) {\n const m = date ? moment(date) : moment();\n m.locale(this.locale);\n return m;\n }\n\n /**\n * Parses the passed date into year, month, and date components.\n *\n * @param date\n *\n * @returns {{date: (*), month: (*), year: (*)}}\n */\n parseDate(date: Date | string) {\n const m = this.moment(date);\n\n return {\n year: this.isHijri() ? m.iYear() : m.year(),\n month: this.isHijri() ? m.iMonth() : m.month(),\n date: this.isHijri() ? m.iDate() : m.date()\n };\n }\n}\n\nCalendar.Calendars = {\n gregorian: 'gregorian',\n hijri: 'hijri'\n};\n\nCalendar.DateFormats = {\n [Calendar.Calendars.gregorian]: {\n '0': 'YYYY',\n '1': 'MMMM YYYY',\n '2': 'L'\n },\n [Calendar.Calendars.hijri]: {\n '0': 'iYYYY',\n '1': 'iMMMM iYYYY',\n '2': 'iM/iD/iYYYY'\n }\n};\n\nCalendar.Defaults = {\n [Calendar.Calendars.gregorian]: {\n year: 0,\n month: 0,\n date: 1\n },\n [Calendar.Calendars.hijri]: {\n year: 1410,\n month: 0,\n date: 1\n }\n};\n\nexport default Calendar;\n","// @flow\n\nconst formatDate = (value: any, locale?: string, options?: any) => {\n const date = new Date(value);\n return date.toLocaleDateString(locale, options);\n};\n\nexport default {\n formatDate\n};\n","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react-dnd\");","var __WEBPACK_NAMESPACE_OBJECT__ = require(\"react-dnd-html5-backend\");","// @flow\n\nimport React, { type ComponentType } from 'react';\nimport { DndProvider } from 'react-dnd';\nimport { HTML5Backend, type BackendFactory } from 'react-dnd-html5-backend';\n\nconst useDragDrop = (WrappedComponent: ComponentType<any>, backend: BackendFactory = HTML5Backend) => (\n () => (\n <DndProvider\n backend={backend}\n >\n <WrappedComponent />\n </DndProvider>\n )\n);\n\nexport default useDragDrop;\n","// @flow\n\nimport React from 'react';\n\n/**\n * Returns the subset of children matching the passed component type. This function is useful for designing components\n * using a sub-component type syntax:\n *\n * <MyComponent ...>\n * <MyComponent.Subcomponent ... />\n * <MyComponent.AnotherSubcomponent ... />\n * </MyComponent>\n *\n * @param children\n * @param component\n *\n * @returns {[]}\n */\nconst findByType = (children: any, component: any) => {\n const components = [];\n\n const type = [component.displayName || component.name];\n\n React.Children.forEach(children, (child) => {\n const childType = child && child.type && (child.type.displayName || child.type.name);\n if (type.includes(childType)) {\n components.push(child);\n }\n });\n\n return components;\n};\n\nexport default {\n findByType\n};\n","// @flow\n\nimport { useEffect, useRef } from 'react';\n\n/**\n * Stores the previous value of the passed parameter.\n *\n * @param value\n *\n * @returns {*}\n */\nconst usePrevious = (value) => {\n const ref = useRef();\n\n useEffect(() => {\n ref.current = value;\n }, [value]);\n\n return ref.current;\n};\n\nexport default {\n usePrevious\n};\n","// @flow\n\n/**\n * Returns the numeric latitude and longitude for the passed coordinates.\n *\n * @param coords\n *\n * @returns {*}\n */\nconst getPosition = (coords: ?{ lat: any, lng: any }) => {\n let position;\n\n if (coords) {\n const lat = Number.parseFloat(coords.lat);\n const lng = Number.parseFloat(coords.lng);\n\n if (!Number.isNaN(lat) && !Number.isNaN(lng)) {\n position = { lat, lng };\n }\n }\n\n return position;\n};\n\nexport default {\n getPosition\n};\n","// @flow\n\nconst DEFAULT_TIMEOUT = 500;\n\n/**\n * The timer class encapsulates the logic for setting and clearing a timeout. This is particularly useful for\n * keydown/keyup events when we only want to perform an action after the user has finished typing.\n */\nclass Timer {\n timeout: TimeoutID | null;\n\n constructor() {\n this.timeout = null;\n }\n\n /**\n * Clears the search timer.\n */\n clearSearchTimer() {\n clearTimeout(this.timeout);\n }\n\n /**\n * Sets the search timer.\n */\n setSearchTimer(onTimeout: () => void) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(onTimeout, DEFAULT_TIMEOUT);\n }\n}\n\nexport default new Timer();\n"],"names":["__webpack_require__","module","getter","__esModule","d","a","exports","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","require","resources","en","translation","i18n","i18next","init","debug","fallbackLng","lng","interpolation","escapeValue","DEFAULT_OPTIONS","emptyValues","undefined","ignoreHtml","ignoreWhitespace","HTML_REGEX","WHITESPACE_REGEX","isEmpty","_","isEqual","b","userOptions","options","aString","bString","replace","aKeys","bKeys","length","equal","isPromise","then","WrappedComponent","props","item","defaults","state","loading","originalItem","saving","validationErrors","this","onInitialize","id","setState","prevProps","onSetState","uid","required","onClose","association","child","onMarkChildAssociationForDelete","onRemoveChildAssociation","response","data","errors","status","keys","fieldErrors","error","resolveValidationError","c","_destroy","children","items","onSaveChildAssociation","bind","childrenToRemove","isChild","onDeleteChildAssociation","validateForm","onSave","catch","onError","finally","onUpdateChildAssociation","onCreateChildAssociation","idKey","valueKey","record","e","dirty","ObjectUtils","isError","isRequired","onAssociationInputChange","onCheckboxInputChange","onMultiAddChildAssociations","onReset","onTextInputChange","validate","toString","Component","Status","BannerComponent","useState","setStatus","onAccept","useCallback","onDecline","useEffect","storageKey","localStorage","getItem","newStatus","setItem","location","GoogleAnalytics","isBrowser","window","InfiniteScroll","height","setHeight","containerRef","useRef","getScrollElement","scrollElement","context","current","document","documentElement","onScroll","element","scrollTop","clientHeight","scrollHeight","offset","onBottomReached","scrollContainer","addEventListener","removeEventListener","scrollable","isScrollable","ref","defaultProps","LAYOUT_SHIFT","KeyboardSimple","keyboardRef","onKeyPress","isCaps","layoutName","setOptions","layout","onChange","Keyboard","keyboardClass","setInput","className","BaseService","constructor","TypeError","callback","axios","transform","getTransform","getBaseUrl","toPayload","getConfig","params","update","create","ReferenceCodes","BaseTransform","getParameterName","getPayloadKeys","includes","toLowerCase","NestedAttributesTransform","formData","prefix","collection","index","append","StringUtils","order","ReferenceTable","referenceTable","reference_table","ReferenceTables","getAxios","Attachments","name","attachment","removeAttribute","FormDataTransform","FormData","References","Calendar","locale","Calendars","gregorian","date","m","moment","isHijri","add","year","month","hours","minutes","seconds","iYear","getDefaultYear","iMonth","getDefaultMonth","iDate","getDefaultDate","y","convertToDate","iDaysInMonth","daysInMonth","format","DateFormats","Defaults","hijri","localeData","_iMonths","months","formatDate","Date","toLocaleDateString","backend","HTML5Backend","DndProvider","findByType","component","components","type","displayName","React","childType","push","usePrevious","getPosition","coords","position","lat","Number","parseFloat","isNaN","Timer","timeout","clearTimeout","onTimeout","setTimeout"],"sourceRoot":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@performant-software/shared-components",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.14",
|
|
4
4
|
"description": "A package of shared, framework agnostic, components.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "./build/index.js",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"react-dom": ">= 16.13.1 < 18.0.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@performant-software/webpack-config": "^0.5.
|
|
31
|
+
"@performant-software/webpack-config": "^0.5.14",
|
|
32
32
|
"react": "^17.0.2",
|
|
33
33
|
"react-dom": "^17.0.2"
|
|
34
34
|
}
|
package/src/index.js
CHANGED
|
@@ -20,6 +20,7 @@ export { default as Attachments } from './transforms/Attachments';
|
|
|
20
20
|
export { default as BaseTransform } from './transforms/BaseTransform';
|
|
21
21
|
export { default as FormDataTransform } from './transforms/FormDataTransform';
|
|
22
22
|
export { default as NestedAttributesTransform } from './transforms/NestedAttributesTransform';
|
|
23
|
+
export { default as References } from './transforms/References';
|
|
23
24
|
|
|
24
25
|
// Utils
|
|
25
26
|
export { default as Browser } from './utils/Browser';
|
|
@@ -7,6 +7,17 @@ import ReferenceTable from '../transforms/ReferenceTable';
|
|
|
7
7
|
* Class responsible for handling all reference table API requests.
|
|
8
8
|
*/
|
|
9
9
|
class ReferenceTables extends BaseService {
|
|
10
|
+
/**
|
|
11
|
+
* Calls the find_by_key API end point for reference tables.
|
|
12
|
+
*
|
|
13
|
+
* @param key
|
|
14
|
+
*
|
|
15
|
+
* @returns {Promise<AxiosResponse<any>>}
|
|
16
|
+
*/
|
|
17
|
+
fetchByKey(key) {
|
|
18
|
+
return this.getAxios().get(`${this.getBaseUrl()}/find_by_key`, { params: { key } });
|
|
19
|
+
}
|
|
20
|
+
|
|
10
21
|
/**
|
|
11
22
|
* Returns the reference tables base URL.
|
|
12
23
|
*
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import NestedAttributesTransform from './NestedAttributesTransform';
|
|
4
|
+
|
|
5
|
+
class References extends NestedAttributesTransform {
|
|
6
|
+
getPayloadKeys(): Array<string> {
|
|
7
|
+
return [
|
|
8
|
+
'reference_code_id'
|
|
9
|
+
];
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const ReferencesTransform: References = new References();
|
|
14
|
+
export default ReferencesTransform;
|
package/types/index.js.flow
CHANGED
|
@@ -20,6 +20,7 @@ export { default as Attachments } from './transforms/Attachments';
|
|
|
20
20
|
export { default as BaseTransform } from './transforms/BaseTransform';
|
|
21
21
|
export { default as FormDataTransform } from './transforms/FormDataTransform';
|
|
22
22
|
export { default as NestedAttributesTransform } from './transforms/NestedAttributesTransform';
|
|
23
|
+
export { default as References } from './transforms/References';
|
|
23
24
|
|
|
24
25
|
// Utils
|
|
25
26
|
export { default as Browser } from './utils/Browser';
|
|
@@ -7,6 +7,17 @@ import ReferenceTable from '../transforms/ReferenceTable';
|
|
|
7
7
|
* Class responsible for handling all reference table API requests.
|
|
8
8
|
*/
|
|
9
9
|
class ReferenceTables extends BaseService {
|
|
10
|
+
/**
|
|
11
|
+
* Calls the find_by_key API end point for reference tables.
|
|
12
|
+
*
|
|
13
|
+
* @param key
|
|
14
|
+
*
|
|
15
|
+
* @returns {Promise<AxiosResponse<any>>}
|
|
16
|
+
*/
|
|
17
|
+
fetchByKey(key) {
|
|
18
|
+
return this.getAxios().get(`${this.getBaseUrl()}/find_by_key`, { params: { key } });
|
|
19
|
+
}
|
|
20
|
+
|
|
10
21
|
/**
|
|
11
22
|
* Returns the reference tables base URL.
|
|
12
23
|
*
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// @flow
|
|
2
|
+
|
|
3
|
+
import NestedAttributesTransform from './NestedAttributesTransform';
|
|
4
|
+
|
|
5
|
+
class References extends NestedAttributesTransform {
|
|
6
|
+
getPayloadKeys(): Array<string> {
|
|
7
|
+
return [
|
|
8
|
+
'reference_code_id'
|
|
9
|
+
];
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const ReferencesTransform: References = new References();
|
|
14
|
+
export default ReferencesTransform;
|