ui-soxo-bootstrap-core 2.4.24
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/.babelrc +9 -0
- package/.github/workflows/npm-publish.yml +33 -0
- package/.husky/pre-commit +12 -0
- package/.prettierrc.json +11 -0
- package/babel.config.js +3 -0
- package/core/assets/images/vector.png +0 -0
- package/core/components/component-loader/component-loader.js +125 -0
- package/core/components/component-wrapper/component-wrapper.js +122 -0
- package/core/components/extra-info/extra-info-details.js +172 -0
- package/core/components/extra-info/extra-info-details.scss +27 -0
- package/core/components/extra-info/extra-info.js +134 -0
- package/core/components/index.js +18 -0
- package/core/components/landing-api/landing-api.js +492 -0
- package/core/components/landing-api/landing-api.scss +19 -0
- package/core/components/menu-template-api/menu-template-api.js +321 -0
- package/core/components/root-application-api/root-application-api.js +174 -0
- package/core/components/root-application-api/root-application.api.scss +0 -0
- package/core/index.js +14 -0
- package/core/lib/Store.js +363 -0
- package/core/lib/assets/Tick-icon.png +0 -0
- package/core/lib/assets/blue-slate-theme.png +0 -0
- package/core/lib/assets/dark-theme.png +0 -0
- package/core/lib/assets/deep-purple-theme.png +0 -0
- package/core/lib/assets/light-theme.png +0 -0
- package/core/lib/assets/nura-theme.png +0 -0
- package/core/lib/assets/plant.png +0 -0
- package/core/lib/assets/welcome-image.png +0 -0
- package/core/lib/assets/white-haze-theme.png +0 -0
- package/core/lib/components/application-bootstrap/application-bootstrap.js +115 -0
- package/core/lib/components/application-bootstrap/application-bootstrap.scss +0 -0
- package/core/lib/components/approval-form/approval-form.js +280 -0
- package/core/lib/components/approval-form/approval-form.scss +184 -0
- package/core/lib/components/approval-list/approval-list.js +143 -0
- package/core/lib/components/approval-list/approval-list.scss +3 -0
- package/core/lib/components/approval-list/components/request-card/request-card.js +43 -0
- package/core/lib/components/approval-list/components/request-card/request-card.scss +31 -0
- package/core/lib/components/camera/camera.js +231 -0
- package/core/lib/components/camera/camera.scss +86 -0
- package/core/lib/components/comment-block/comment-block.js +139 -0
- package/core/lib/components/comment-block/comment-block.scss +3 -0
- package/core/lib/components/confirm-modal/confirm-modal.js +82 -0
- package/core/lib/components/confirm-modal/confirm-modal.scss +3 -0
- package/core/lib/components/consent/consent.js +67 -0
- package/core/lib/components/consent/consent.scss +0 -0
- package/core/lib/components/consent/pdf-signature.js +299 -0
- package/core/lib/components/consent/signature-pad.js +90 -0
- package/core/lib/components/consent/signature-pad.scss +14 -0
- package/core/lib/components/file-upload/file-upload.js +133 -0
- package/core/lib/components/finger-print-reader/finger-print-reader.js +296 -0
- package/core/lib/components/finger-print-reader/finger-print-reader.scss +47 -0
- package/core/lib/components/finger-print-search/finger-print-search.js +200 -0
- package/core/lib/components/finger-print-search/finger-print-search.scss +47 -0
- package/core/lib/components/global-header/animations.js +18 -0
- package/core/lib/components/global-header/global-header.js +413 -0
- package/core/lib/components/global-header/global-header.scss +369 -0
- package/core/lib/components/header/generic-header.js +76 -0
- package/core/lib/components/header/generic-header.scss +99 -0
- package/core/lib/components/image-preview/image-preview.js +33 -0
- package/core/lib/components/image-wrapper/image-wrapper.js +108 -0
- package/core/lib/components/image-wrapper/image-wrapper.scss +13 -0
- package/core/lib/components/index.js +203 -0
- package/core/lib/components/landing/landing.js +404 -0
- package/core/lib/components/landing/landing.scss +0 -0
- package/core/lib/components/language-switcher/language-switcher.js +50 -0
- package/core/lib/components/menu-context/menu-context.js +70 -0
- package/core/lib/components/menu-template/menu-template.js +250 -0
- package/core/lib/components/menu-template/menu-template.scss +9 -0
- package/core/lib/components/modal-search/modal-search.js +153 -0
- package/core/lib/components/modal-search/modal-search.scss +79 -0
- package/core/lib/components/modal-wrapper/modal-manager.js +16 -0
- package/core/lib/components/modal-wrapper/modal-wrapper.js +108 -0
- package/core/lib/components/modal-wrapper/modal-wrapper.scss +14 -0
- package/core/lib/components/notice-board/notice-board.js +132 -0
- package/core/lib/components/notice-board/notice-board.scss +65 -0
- package/core/lib/components/page-container/page-container.js +55 -0
- package/core/lib/components/page-container/page-container.scss +8 -0
- package/core/lib/components/page-header/page-header.js +23 -0
- package/core/lib/components/page-header/page-header.scss +18 -0
- package/core/lib/components/pdf-viewer/pdf-viewer.js +56 -0
- package/core/lib/components/portlet-table/components/table-actions/table-actions.js +58 -0
- package/core/lib/components/portlet-table/components/table-actions/table-actions.scss +1 -0
- package/core/lib/components/portlet-table/components/table-data/table-data.js +107 -0
- package/core/lib/components/portlet-table/components/table-data/table-data.scss +0 -0
- package/core/lib/components/portlet-table/portlet-table.js +63 -0
- package/core/lib/components/portlet-table/portlet-table.scss +90 -0
- package/core/lib/components/progress-bar/progress-bar.js +58 -0
- package/core/lib/components/progress-bar/progress-bar.scss +15 -0
- package/core/lib/components/request-form/request-form.js +110 -0
- package/core/lib/components/request-form/request-form.scss +0 -0
- package/core/lib/components/root-application/root-application.js +70 -0
- package/core/lib/components/rupee/rupee.js +14 -0
- package/core/lib/components/script-input/script-input.js +169 -0
- package/core/lib/components/script-input/script-input.scss +8 -0
- package/core/lib/components/sidemenu/animations.js +52 -0
- package/core/lib/components/sidemenu/sidemenu.js +617 -0
- package/core/lib/components/sidemenu/sidemenu.scss +264 -0
- package/core/lib/components/spotlight-search/spotlight-search.component.js +636 -0
- package/core/lib/components/spotlight-search/spotlight-search.component.scss +78 -0
- package/core/lib/components/table-wrapper/table-wrapper.js +136 -0
- package/core/lib/components/table-wrapper/table-wrapper.scss +72 -0
- package/core/lib/components/ui_elements/Loader.js +13 -0
- package/core/lib/components/ui_elements/Notify.js +13 -0
- package/core/lib/components/ui_elements/PlaceHolder.js +34 -0
- package/core/lib/components/web-camera/web-camera.js +162 -0
- package/core/lib/components/web-camera/web-camera.scss +28 -0
- package/core/lib/core.md +9 -0
- package/core/lib/elements/Elements.md +3 -0
- package/core/lib/elements/basic/LoggedUserRedirect.js +21 -0
- package/core/lib/elements/basic/PrivateRoute.js +16 -0
- package/core/lib/elements/basic/button/Button.md +43 -0
- package/core/lib/elements/basic/button/button.js +170 -0
- package/core/lib/elements/basic/button/button.scss +0 -0
- package/core/lib/elements/basic/card/Card.md +15 -0
- package/core/lib/elements/basic/card/card.js +40 -0
- package/core/lib/elements/basic/card/card.scss +14 -0
- package/core/lib/elements/basic/checkbox/checkbox.js +23 -0
- package/core/lib/elements/basic/col/col.js +16 -0
- package/core/lib/elements/basic/copy-to-clipboard/Readme.md +40 -0
- package/core/lib/elements/basic/copy-to-clipboard/copy-to-clipboard.js +62 -0
- package/core/lib/elements/basic/country-phone-input/Readme.md +98 -0
- package/core/lib/elements/basic/country-phone-input/country-phone-input.js +107 -0
- package/core/lib/elements/basic/country-phone-input/phone-input.scss +62 -0
- package/core/lib/elements/basic/datepicker/datepicker.js +33 -0
- package/core/lib/elements/basic/dragabble-wrapper/draggable-wrapper.js +61 -0
- package/core/lib/elements/basic/empty/empty.js +15 -0
- package/core/lib/elements/basic/fingerprint-protrected/fingerprint-protected.js +118 -0
- package/core/lib/elements/basic/fingerprint-protrected/fingerprint-protected.scss +10 -0
- package/core/lib/elements/basic/form/Readme.md +0 -0
- package/core/lib/elements/basic/form/form.js +70 -0
- package/core/lib/elements/basic/form/form.scss +4 -0
- package/core/lib/elements/basic/image/image.js +45 -0
- package/core/lib/elements/basic/image/image.scss +17 -0
- package/core/lib/elements/basic/image/readme.md +26 -0
- package/core/lib/elements/basic/image-viewer/image-viewer.js +109 -0
- package/core/lib/elements/basic/image-viewer/image-viewer.scss +8 -0
- package/core/lib/elements/basic/input/input.js +81 -0
- package/core/lib/elements/basic/input/readme.md +77 -0
- package/core/lib/elements/basic/json-input/json-input.js +51 -0
- package/core/lib/elements/basic/menu-dashboard/menu-dashboard.js +216 -0
- package/core/lib/elements/basic/menu-dashboard/menu-dashboard.scss +28 -0
- package/core/lib/elements/basic/modal/modal.js +64 -0
- package/core/lib/elements/basic/modal/readme.md +62 -0
- package/core/lib/elements/basic/popconfirm/popconfirm.js +18 -0
- package/core/lib/elements/basic/popover/popover.js +13 -0
- package/core/lib/elements/basic/radio/radio.js +18 -0
- package/core/lib/elements/basic/rangepicker/rangepicker.js +51 -0
- package/core/lib/elements/basic/rangepicker/rangepicker.scss +18 -0
- package/core/lib/elements/basic/rangepicker/readme.md +82 -0
- package/core/lib/elements/basic/reference-select/readme.md +19 -0
- package/core/lib/elements/basic/reference-select/reference-select.js +337 -0
- package/core/lib/elements/basic/row/row.js +16 -0
- package/core/lib/elements/basic/select/select.js +47 -0
- package/core/lib/elements/basic/select-box/readme.md +53 -0
- package/core/lib/elements/basic/select-box/select-box.js +63 -0
- package/core/lib/elements/basic/skeleton/readme.md +35 -0
- package/core/lib/elements/basic/skeleton/skeleton.js +36 -0
- package/core/lib/elements/basic/skeleton/skeleton.scss +53 -0
- package/core/lib/elements/basic/space/space.js +13 -0
- package/core/lib/elements/basic/switch/readme.md +29 -0
- package/core/lib/elements/basic/switch/switch.js +58 -0
- package/core/lib/elements/basic/tab/tab.js +15 -0
- package/core/lib/elements/basic/table/readme.md +9 -0
- package/core/lib/elements/basic/table/table.js +100 -0
- package/core/lib/elements/basic/table/table.scss +0 -0
- package/core/lib/elements/basic/tag/tag.js +63 -0
- package/core/lib/elements/basic/tag/tag.scss +3 -0
- package/core/lib/elements/basic/timeline/timeline.js +14 -0
- package/core/lib/elements/basic/title/readme.md +20 -0
- package/core/lib/elements/basic/title/title.js +38 -0
- package/core/lib/elements/basic/title/title.scss +0 -0
- package/core/lib/elements/basic/user-search/user-search.js +192 -0
- package/core/lib/elements/complex/barcode/barcode.js +27 -0
- package/core/lib/elements/complex/bargraph/bar-graph.js +262 -0
- package/core/lib/elements/complex/basic-table/basic-table.js +111 -0
- package/core/lib/elements/complex/basic-table/basic-table.scss +4 -0
- package/core/lib/elements/complex/date-display/date-display.js +37 -0
- package/core/lib/elements/complex/error-boundary/error-boundary.js +29 -0
- package/core/lib/elements/complex/google-location-input/map-container-library-load.js +93 -0
- package/core/lib/elements/complex/google-map/google-map.js +230 -0
- package/core/lib/elements/complex/google-map/google-map.scss +13 -0
- package/core/lib/elements/complex/line-graph/line-graph.js +108 -0
- package/core/lib/elements/complex/location-search-input/location-search-input.js +100 -0
- package/core/lib/elements/complex/maps/maps.js +0 -0
- package/core/lib/elements/complex/pie-chart/pie-chart.js +203 -0
- package/core/lib/elements/complex/qr-code/qr-code.js +27 -0
- package/core/lib/elements/complex/qrscanner/qrscanner.js +57 -0
- package/core/lib/elements/complex/search-debounce/search-debounce.js +37 -0
- package/core/lib/elements/complex/statistic-card/dashboard-statistic-card.js +76 -0
- package/core/lib/elements/complex/statistic-card/statistic-card.js +28 -0
- package/core/lib/elements/index.js +226 -0
- package/core/lib/hooks/device-detect.js +26 -0
- package/core/lib/hooks/index.js +19 -0
- package/core/lib/hooks/use-location.js +33 -0
- package/core/lib/hooks/use-window-size.js +34 -0
- package/core/lib/i18n.js +70 -0
- package/core/lib/index.js +106 -0
- package/core/lib/introduction.md +74 -0
- package/core/lib/js-styleguide.md +4112 -0
- package/core/lib/models/actions/actions.js +128 -0
- package/core/lib/models/actions/components/action-detail/action-detail.js +190 -0
- package/core/lib/models/actions/components/action-detail/action-detail.scss +0 -0
- package/core/lib/models/actions/components/custom-actions/custom-actions.js +186 -0
- package/core/lib/models/actions/components/custom-actions/custom-actions.scss +0 -0
- package/core/lib/models/attachments/attachments.js +231 -0
- package/core/lib/models/base-loader.js +99 -0
- package/core/lib/models/base.js +716 -0
- package/core/lib/models/branches/branches.js +125 -0
- package/core/lib/models/checklists/checklists.js +115 -0
- package/core/lib/models/columns/columns.js +169 -0
- package/core/lib/models/columns/components/columns-add/columns-add.js +172 -0
- package/core/lib/models/columns/components/columns-add/columns-add.scss +0 -0
- package/core/lib/models/comments/comments.js +213 -0
- package/core/lib/models/departments/departments.js +107 -0
- package/core/lib/models/financial-years/financial_years.js +127 -0
- package/core/lib/models/forms/components/form-creator/form-creator.js +624 -0
- package/core/lib/models/forms/components/form-creator/form-creator.scss +30 -0
- package/core/lib/models/forms/components/form-detail/form-detail.js +224 -0
- package/core/lib/models/forms/components/form-detail/form-detail.scss +0 -0
- package/core/lib/models/forms/forms.js +122 -0
- package/core/lib/models/index.js +203 -0
- package/core/lib/models/invoice-numbers/invoice_numbers.js +204 -0
- package/core/lib/models/lookup-types/components/lookup-detail/lookup-detail.js +145 -0
- package/core/lib/models/lookup-types/components/lookup-detail/lookup-detail.scss +0 -0
- package/core/lib/models/lookup-types/lookup-types.js +113 -0
- package/core/lib/models/lookup-values/components/lookup-values-add/lookup-values-add.js +126 -0
- package/core/lib/models/lookup-values/components/lookup-values-add/lookup-values-add.scss +0 -0
- package/core/lib/models/lookup-values/lookup-values.js +107 -0
- package/core/lib/models/menu-roles/menu-roles.js +127 -0
- package/core/lib/models/menus/components/menu-add/menu-add.js +228 -0
- package/core/lib/models/menus/components/menu-add/menu-add.scss +0 -0
- package/core/lib/models/menus/components/menu-detail/menu-detail.js +170 -0
- package/core/lib/models/menus/components/menu-detail/menu-detail.scss +0 -0
- package/core/lib/models/menus/components/menu-list/menu-list.js +593 -0
- package/core/lib/models/menus/components/menu-list/menu-list.scss +6 -0
- package/core/lib/models/menus/components/menu-roles-add/menu-roles-add.js +183 -0
- package/core/lib/models/menus/components/menu-roles-add/menu-roles-add.scss +0 -0
- package/core/lib/models/menus/menus.js +499 -0
- package/core/lib/models/models/components/model-detail/model-detail.js +137 -0
- package/core/lib/models/models/components/model-detail/model-detail.scss +0 -0
- package/core/lib/models/models/components/models.js +128 -0
- package/core/lib/models/modules/modules.js +204 -0
- package/core/lib/models/outbox/outbox.js +73 -0
- package/core/lib/models/pages/pages.js +107 -0
- package/core/lib/models/permissions/permissions.js +71 -0
- package/core/lib/models/process/components/process-add/process-add.js +181 -0
- package/core/lib/models/process/components/process-add/process-add.scss +0 -0
- package/core/lib/models/process/components/process-dashboard/process-dashboard.js +602 -0
- package/core/lib/models/process/components/process-dashboard/process-dashboard.scss +62 -0
- package/core/lib/models/process/components/process-detail/process-detail.js +140 -0
- package/core/lib/models/process/components/process-detail/process-detail.scss +0 -0
- package/core/lib/models/process/components/process-timeline/process-timeline.js +140 -0
- package/core/lib/models/process/components/task-detail/task-detail.js +240 -0
- package/core/lib/models/process/components/task-detail/task-detail.scss +27 -0
- package/core/lib/models/process/components/task-form/task-form.js +529 -0
- package/core/lib/models/process/components/task-form/task-form.scss +7 -0
- package/core/lib/models/process/components/task-list/task-list.js +221 -0
- package/core/lib/models/process/components/task-list/task-list.scss +14 -0
- package/core/lib/models/process/components/task-overview/task-overview.js +300 -0
- package/core/lib/models/process/components/task-overview/task-overview.scss +0 -0
- package/core/lib/models/process/components/task-overview-legacy/task-overview-legacy.js +192 -0
- package/core/lib/models/process/components/task-overview-legacy/task-overview.scss +0 -0
- package/core/lib/models/process/components/task-routes/task-routes.js +45 -0
- package/core/lib/models/process/components/task-status/task-status.js +176 -0
- package/core/lib/models/process/components/task-status/task-status.scss +11 -0
- package/core/lib/models/process/process.js +781 -0
- package/core/lib/models/process-transactions/process-transactions.js +124 -0
- package/core/lib/models/roles/roles.js +106 -0
- package/core/lib/models/scripts/scripts.js +111 -0
- package/core/lib/models/step-transactions/step-transcations.js +148 -0
- package/core/lib/models/steps/components/step-add/step-add.js +261 -0
- package/core/lib/models/steps/components/step-add/step-add.scss +0 -0
- package/core/lib/models/steps/components/step-detail/step-detail.js +157 -0
- package/core/lib/models/steps/components/step-detail/step-detail.scss +0 -0
- package/core/lib/models/steps/steps.js +357 -0
- package/core/lib/models/user-preferences/user-preferences.js +83 -0
- package/core/lib/models/users/components/user-add/user-add.js +226 -0
- package/core/lib/models/users/components/user-add/user-add.scss +0 -0
- package/core/lib/models/users/users.js +120 -0
- package/core/lib/modules/business/launch-page/launch-page.js +29 -0
- package/core/lib/modules/business/launch-page/launch-page.scss +6 -0
- package/core/lib/modules/business/slots/slots.js +231 -0
- package/core/lib/modules/business/slots/slots.scss +108 -0
- package/core/lib/modules/forms/components/field-customizer/field-customizer.js +139 -0
- package/core/lib/modules/forms/components/field-customizer/field-customizer.scss +0 -0
- package/core/lib/modules/forms/components/field-selector/field-selector.js +157 -0
- package/core/lib/modules/forms/components/field-selector/field-selector.scss +25 -0
- package/core/lib/modules/forms/components/form-display/form-display.js +203 -0
- package/core/lib/modules/forms/components/form-display/form-display.scss +9 -0
- package/core/lib/modules/forms/components/tab-customizer/tab-customizer.js +125 -0
- package/core/lib/modules/forms/components/tab-customizer/tab-customizer.scss +0 -0
- package/core/lib/modules/generic/generic-add/generic-add.js +213 -0
- package/core/lib/modules/generic/generic-add/generic-add.scss +0 -0
- package/core/lib/modules/generic/generic-detail/generic-detail.js +199 -0
- package/core/lib/modules/generic/generic-detail/generic-detail.scss +0 -0
- package/core/lib/modules/generic/generic-edit/generic-edit.js +120 -0
- package/core/lib/modules/generic/generic-edit/generic-edit.scss +0 -0
- package/core/lib/modules/generic/generic-list/ExportReactCSV.js +62 -0
- package/core/lib/modules/generic/generic-list/generic-list.js +705 -0
- package/core/lib/modules/generic/generic-list/generic-list.scss +34 -0
- package/core/lib/modules/generic/generic-upload/generic-upload.js +484 -0
- package/core/lib/modules/generic/generic-upload/generic-upload.scss +0 -0
- package/core/lib/modules/generic/table-settings/table-settings.js +226 -0
- package/core/lib/modules/generic/table-settings/table-settings.scss +37 -0
- package/core/lib/modules/index.js +52 -0
- package/core/lib/modules/modules-routes/module-routes.js +35 -0
- package/core/lib/modules/modules-routes/module-routes.scss +0 -0
- package/core/lib/pages/change-password/change-password.js +211 -0
- package/core/lib/pages/change-password/change-password.scss +76 -0
- package/core/lib/pages/homepage/homepage.js +53 -0
- package/core/lib/pages/index.js +20 -0
- package/core/lib/pages/login/login.js +617 -0
- package/core/lib/pages/login/login.scss +346 -0
- package/core/lib/pages/manage-users/manage-users.js +429 -0
- package/core/lib/pages/manage-users/manage-users.scss +26 -0
- package/core/lib/pages/profile/profile.js +247 -0
- package/core/lib/pages/profile/profile.scss +107 -0
- package/core/lib/pages/profile/theme-config.js +18 -0
- package/core/lib/pages/profile/themes-backup.json +311 -0
- package/core/lib/pages/profile/themes.json +254 -0
- package/core/lib/pages/register/register.js +177 -0
- package/core/lib/pages/register/register.scss +128 -0
- package/core/lib/react-styleguide.md +757 -0
- package/core/lib/utils/api/api.utils.js +188 -0
- package/core/lib/utils/api/readme.md +426 -0
- package/core/lib/utils/async.js +36 -0
- package/core/lib/utils/common/common.utils.js +123 -0
- package/core/lib/utils/common/readme.md +30 -0
- package/core/lib/utils/date/date.utils.js +295 -0
- package/core/lib/utils/date/readme.md +2 -0
- package/core/lib/utils/firebase.support.utils.js +99 -0
- package/core/lib/utils/firebase.utils.js +808 -0
- package/core/lib/utils/form/Form.md +0 -0
- package/core/lib/utils/form/form.utils.js +256 -0
- package/core/lib/utils/generic/generic.utils.js +69 -0
- package/core/lib/utils/http/auth.helper.js +95 -0
- package/core/lib/utils/http/http.utils.js +157 -0
- package/core/lib/utils/http/readme.md +14 -0
- package/core/lib/utils/index.js +46 -0
- package/core/lib/utils/location/location.utils.js +137 -0
- package/core/lib/utils/location/readme.md +18 -0
- package/core/lib/utils/modal.utils.js +16 -0
- package/core/lib/utils/notification.utils.js +35 -0
- package/core/lib/utils/pwa/pwa.utils.js +88 -0
- package/core/lib/utils/script.utils.js +235 -0
- package/core/lib/utils/setting.utils.js +69 -0
- package/core/lib/utils/upload.utils.js +30 -0
- package/core/models/Preference/Preferences.js +46 -0
- package/core/models/base/base.js +399 -0
- package/core/models/base-clone-loader.js +107 -0
- package/core/models/base-clone.js +187 -0
- package/core/models/base-loader.js +97 -0
- package/core/models/core-scripts/core-scripts.js +150 -0
- package/core/models/dashboard/dashboard.js +187 -0
- package/core/models/detail-loader.js +88 -0
- package/core/models/groups.js +82 -0
- package/core/models/index.js +94 -0
- package/core/models/lookup-types/components/lookup-detail/lookup-detail.js +129 -0
- package/core/models/lookup-types/lookup-types.js +96 -0
- package/core/models/lookup-values/components/lookup-values-modal/lookup-values-modal.js +95 -0
- package/core/models/lookup-values/components/lookup-values-modal/lookup-values-modal.scss +0 -0
- package/core/models/lookup-values/lookup-values.js +92 -0
- package/core/models/menu-roles/components/menu-roles-add/menu-roles-add.js +153 -0
- package/core/models/menu-roles/components/menu-roles-add/menu-roles-add.scss +0 -0
- package/core/models/menu-roles/menu-roles.js +158 -0
- package/core/models/menus/components/menu-add/menu-add.js +325 -0
- package/core/models/menus/components/menu-add/menu-add.scss +31 -0
- package/core/models/menus/components/menu-detail/menu-detail.js +263 -0
- package/core/models/menus/components/menu-list/menu-list.js +392 -0
- package/core/models/menus/components/menu-lists/menu-lists.js +429 -0
- package/core/models/menus/components/menu-lists/menu-lists.scss +41 -0
- package/core/models/menus/menus.js +291 -0
- package/core/models/model-columns.js +121 -0
- package/core/models/models/components/model-detail/model-add.js +120 -0
- package/core/models/models/components/model-detail/model-detail.js +133 -0
- package/core/models/models/components/model-detail/model-detail.scss +0 -0
- package/core/models/models/models.js +154 -0
- package/core/models/pages/components/page-add/page-add.js +163 -0
- package/core/models/pages/components/page-add/page-add.scss +31 -0
- package/core/models/pages/components/page-details/page-details.js +210 -0
- package/core/models/pages/components/page-list/page-list.js +248 -0
- package/core/models/pages/pages.js +142 -0
- package/core/models/pages/pages.scss +0 -0
- package/core/models/pages.js +142 -0
- package/core/models/roles/components/role-add/role-add.js +248 -0
- package/core/models/roles/components/role-list/role-list.js +408 -0
- package/core/models/roles/roles.js +188 -0
- package/core/models/user-roles/components/user-roles-add/user-roles-add.js +149 -0
- package/core/models/user-roles/components/user-roles-add/user-roles-add.scss +0 -0
- package/core/models/user-roles/user-roles.js +99 -0
- package/core/models/users/components/user-add/user-add.js +458 -0
- package/core/models/users/components/user-detail/user-detail.js +236 -0
- package/core/models/users/components/user-detail/user-detail.scss +0 -0
- package/core/models/users/components/user-list/user-list.js +397 -0
- package/core/models/users/users.js +185 -0
- package/core/modules/Informations/change-info/change-info.js +618 -0
- package/core/modules/Informations/change-info/change-info.scss +135 -0
- package/core/modules/dashboard/components/dashboard-card/animations.js +65 -0
- package/core/modules/dashboard/components/dashboard-card/dashboard-card.js +197 -0
- package/core/modules/dashboard/components/dashboard-card/menu-dashboard-card.js +430 -0
- package/core/modules/dashboard/components/dashboard-card/menu-dashboard-card.scss +60 -0
- package/core/modules/dashboard/components/pop-query-dashboard/pop-query-dashboard.js +66 -0
- package/core/modules/generic/components/generic-add/generic-add.js +121 -0
- package/core/modules/generic/components/generic-add/generic-add.scss +13 -0
- package/core/modules/generic/components/generic-add-modal/generic-add-modal.js +125 -0
- package/core/modules/generic/components/generic-add-modal/generic-add-modal.scss +13 -0
- package/core/modules/generic/components/generic-detail/generic-detail.js +184 -0
- package/core/modules/generic/components/generic-detail/generic-detail.scss +25 -0
- package/core/modules/generic/components/generic-edit/generic-edit.js +123 -0
- package/core/modules/generic/components/generic-edit/generic-edit.scss +0 -0
- package/core/modules/generic/components/generic-list/generic-list.js +335 -0
- package/core/modules/generic/components/generic-list/generic-list.scss +35 -0
- package/core/modules/index.js +54 -0
- package/core/modules/module-routes/module-routes.js +37 -0
- package/core/modules/module-routes/module-routes.scss +0 -0
- package/core/modules/reporting/components/reporting-dashboard/reporting-dashboard.js +1101 -0
- package/core/modules/reporting/components/reporting-dashboard/reporting-dashboard.scss +171 -0
- package/core/pages/homepage-api/homepage-api.js +106 -0
- package/core/pages/homepage-api/homepage-api.scss +234 -0
- package/core/pages/homepage-api/menu-dashboard.js +169 -0
- package/core/pages/homepage-api/menu-dashboard.scss +12 -0
- package/core/translation.json +54 -0
- package/core/translations.json +20 -0
- package/core/utils/script.utils.js +130 -0
- package/core/utils/settings.utils.js +26 -0
- package/eslint.config.mjs +79 -0
- package/index.js +36 -0
- package/package.json +118 -0
- package/tsconfig.json +27 -0
- package/webpack.config.js +174 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Implements utility functions to be used across project
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/*eslint no-useless-escape:"off",eqeqeq: "off"*/
|
|
6
|
+
import moment from 'moment';
|
|
7
|
+
|
|
8
|
+
export function IsObjectHaveKeys(obj) {
|
|
9
|
+
return obj && typeof obj == 'object' && Object.keys(obj).length;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function capitalizeSentence(sentence) {
|
|
13
|
+
const words = sentence.split(' ');
|
|
14
|
+
|
|
15
|
+
return words
|
|
16
|
+
.map((word) => {
|
|
17
|
+
return word[0].toUpperCase() + word.substring(1);
|
|
18
|
+
})
|
|
19
|
+
.join(' ');
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
// export function capitalizeStrings(str) {
|
|
23
|
+
// // Split the string at all space ccaracters
|
|
24
|
+
// return str.trim().split(' ')
|
|
25
|
+
// // get rid of any extra spaces using trim
|
|
26
|
+
// .map(a => a.trim())
|
|
27
|
+
// // Convert first char to upper case for each word
|
|
28
|
+
// .map(a => a[0].toUpperCase() + a.substring(1).toLowerCase())
|
|
29
|
+
// // Join all the strings back together
|
|
30
|
+
// .join(" ")
|
|
31
|
+
// }
|
|
32
|
+
|
|
33
|
+
export function capitalizeStrings(str) {
|
|
34
|
+
return str;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function getFormattedDateAndTime(val) {
|
|
38
|
+
var time = [];
|
|
39
|
+
var year = moment.duration(val).years();
|
|
40
|
+
var month = moment.duration(val).months();
|
|
41
|
+
var days = moment.duration(val).days();
|
|
42
|
+
var hour = moment.duration(val).hours();
|
|
43
|
+
var min = moment.duration(val).minutes();
|
|
44
|
+
if (year > 0) {
|
|
45
|
+
time.push(year + ' Years' + ' ');
|
|
46
|
+
}
|
|
47
|
+
if (month > 0) {
|
|
48
|
+
time.push(month + ' Months' + ' ');
|
|
49
|
+
}
|
|
50
|
+
if (days > 0) {
|
|
51
|
+
time.push(days + ' Days' + ' ');
|
|
52
|
+
}
|
|
53
|
+
if (hour > 0) {
|
|
54
|
+
time.push(hour + ' Hours' + ' ');
|
|
55
|
+
}
|
|
56
|
+
if (min > 0) {
|
|
57
|
+
time.push(min + ' Minutes' + ' ');
|
|
58
|
+
}
|
|
59
|
+
time = [].concat(...time);
|
|
60
|
+
return time;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Function converts bytes to array
|
|
65
|
+
*
|
|
66
|
+
* @param {*} bytes
|
|
67
|
+
* @returns
|
|
68
|
+
*/
|
|
69
|
+
export function ConvertBytesToArray(bytes) {
|
|
70
|
+
var bytearray = Object.keys(bytes);
|
|
71
|
+
|
|
72
|
+
var arrayelement = Object.values(bytes);
|
|
73
|
+
|
|
74
|
+
var uint8Array = new Uint8Array(bytearray.length);
|
|
75
|
+
|
|
76
|
+
for (var i = 0; i < uint8Array.length; i++) {
|
|
77
|
+
uint8Array[i] = arrayelement[i];
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
for (var i = 0; i < bytearray; i++) {
|
|
81
|
+
var ascii = arrayelement.charCodeAt(i);
|
|
82
|
+
uint8Array[i] = ascii;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
return uint8Array;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Check license status and return validity + warnings.
|
|
90
|
+
*
|
|
91
|
+
* @param {string|Date} expiryDate - License expiration date.
|
|
92
|
+
* @returns {{ valid: boolean, daysLeft: number, message: string|null, level: "error"|"warning"|null }}
|
|
93
|
+
*/
|
|
94
|
+
|
|
95
|
+
export const checkLicenseStatus = (expiryDate) => {
|
|
96
|
+
const expiry = new Date(expiryDate);
|
|
97
|
+
|
|
98
|
+
if (isNaN(expiry)) {
|
|
99
|
+
return { valid: false, daysLeft: 0, message: 'Invalid license date', level: 'error' };
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
// Normalize both dates to midnight
|
|
103
|
+
expiry.setHours(0, 0, 0, 0);
|
|
104
|
+
const today = new Date();
|
|
105
|
+
today.setHours(0, 0, 0, 0);
|
|
106
|
+
|
|
107
|
+
const msDiff = expiry.getTime() - today.getTime();
|
|
108
|
+
const daysLeft = Math.ceil(msDiff / (1000 * 60 * 60 * 24));
|
|
109
|
+
|
|
110
|
+
if (daysLeft < 0) {
|
|
111
|
+
return { valid: false, daysLeft, message: 'Your license has expired. Please contact support.', level: 'error' };
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
if (daysLeft <= 7) {
|
|
115
|
+
return { valid: true, daysLeft, message: `Your license will expire in ${daysLeft} day(s)`, level: 'error' };
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
if (daysLeft <= 30) {
|
|
119
|
+
return { valid: true, daysLeft, message: `License will expire in ${daysLeft} day(s)`, level: 'warning' };
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
return { valid: true, daysLeft, message: null, level: null };
|
|
123
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
## Usage
|
|
2
|
+
|
|
3
|
+
To use Common Utils in your project, simply import the needed functions:
|
|
4
|
+
|
|
5
|
+
### capitalizeSentence
|
|
6
|
+
|
|
7
|
+
The capitalizeSentence function takes a string as input and capitalizes the first letter of each sentence in the string. For example:
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
### capitalizeStrings
|
|
15
|
+
|
|
16
|
+
The capitalizeStrings function takes an array of strings as input and capitalizes the first letter of each string in the array. For example:
|
|
17
|
+
|
|
18
|
+
```sh
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### convertBytesToArray
|
|
24
|
+
|
|
25
|
+
The convertBytesToArray function takes a byte array as input and converts it into an array of integers. For example:
|
|
26
|
+
|
|
27
|
+
```sh
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
```
|
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* All the date related activities should happen here
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import moment from "moment-timezone";
|
|
6
|
+
|
|
7
|
+
import { Timestamp } from "firebase/firestore";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
let dateFormat = "DD/MM/YYYY";
|
|
14
|
+
|
|
15
|
+
let timeFormat = " HH:mm DD/MM/YYYY";
|
|
16
|
+
|
|
17
|
+
let hourFormat = "HH:mm a";
|
|
18
|
+
|
|
19
|
+
let timezone = process.env.REACT_APP_TIMEZONE;
|
|
20
|
+
|
|
21
|
+
let datetimeFormat = "YYYY-MM-DD HH:mm:ss";
|
|
22
|
+
|
|
23
|
+
export default class DateUtils {
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
*
|
|
27
|
+
* @param {*} branchTimezone
|
|
28
|
+
*/
|
|
29
|
+
static setTimezone = (branchTimezone) => {
|
|
30
|
+
timezone = branchTimezone;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
static getDate = (unix) => {
|
|
34
|
+
return moment(unix).format("DD/MM/YYYY");
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Get the timestamp value
|
|
39
|
+
*
|
|
40
|
+
* @returns
|
|
41
|
+
*/
|
|
42
|
+
static getTimestampValue = (value̦) => {
|
|
43
|
+
return moment(value̦).valueOf();
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
static getFirebaseDate = (value) => {
|
|
47
|
+
return moment(value, "DD/MM/YYYY HH:mm a").toDate();
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
static displayFirestoreTime = (value, format) => {
|
|
51
|
+
if (value) {
|
|
52
|
+
return moment(value.toDate()).format(format || timeFormat);
|
|
53
|
+
} else {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
*
|
|
60
|
+
*
|
|
61
|
+
* ASDHI
|
|
62
|
+
*/
|
|
63
|
+
static getFirebaseTimestamp = (value) => {
|
|
64
|
+
if (moment.isMoment(value)) {
|
|
65
|
+
let unix = moment(value).valueOf();
|
|
66
|
+
|
|
67
|
+
return new Timestamp(unix / 1000, 1000);
|
|
68
|
+
} else {
|
|
69
|
+
let unix = moment(value).valueOf();
|
|
70
|
+
|
|
71
|
+
//let unix = moment(value, 'DD/MM/YYYY HH:mm a').valueOf();
|
|
72
|
+
|
|
73
|
+
return new Timestamp(unix / 1000, 1000);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Get the firebase time
|
|
79
|
+
*
|
|
80
|
+
* @returns
|
|
81
|
+
*/
|
|
82
|
+
static getTime = () => {
|
|
83
|
+
return moment().valueOf();
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Gte formatted date in format YYYY-MM-DD HH:mm
|
|
88
|
+
*
|
|
89
|
+
* @param {*} time
|
|
90
|
+
* @returns
|
|
91
|
+
*/
|
|
92
|
+
static getFormattedTimeDate = (time) => {
|
|
93
|
+
return moment(time).format(datetimeFormat);
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Get formatted date in format YYYY-MM-DD HH:mm in asia/calcutta timezone
|
|
98
|
+
*
|
|
99
|
+
* @param {*} time
|
|
100
|
+
* @returns
|
|
101
|
+
*/
|
|
102
|
+
static getFormattedTimeTz = (time) => {
|
|
103
|
+
return moment.tz(time, "Asia/Calcutta").format("YYYY-MM-DD HH:mm:ss");
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
*
|
|
108
|
+
*/
|
|
109
|
+
static getStartOfDay = () => {
|
|
110
|
+
return moment().startOf("day");
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Get 7 days from today
|
|
115
|
+
*/
|
|
116
|
+
static getEndOfDay = () => {
|
|
117
|
+
return moment().endOf("day");
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Get 7 days from today
|
|
122
|
+
*/
|
|
123
|
+
static getEndOfWeek = () => {
|
|
124
|
+
return moment().endOf("week");
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
*
|
|
129
|
+
*
|
|
130
|
+
* @param {*} time
|
|
131
|
+
* @returns
|
|
132
|
+
*/
|
|
133
|
+
static getFormattedTime = (time) => {
|
|
134
|
+
return moment(time).format(timeFormat);
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
*
|
|
139
|
+
*
|
|
140
|
+
* @param {*} time
|
|
141
|
+
* @returns
|
|
142
|
+
*/
|
|
143
|
+
static getDisplayTime = (time) => {
|
|
144
|
+
return moment.tz(time, timezone).format(timeFormat);
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
static today = () => {
|
|
148
|
+
return moment.tz(timezone).valueOf();
|
|
149
|
+
};
|
|
150
|
+
|
|
151
|
+
static time = () => {
|
|
152
|
+
return {
|
|
153
|
+
current: moment.tz(timezone).valueOf(),
|
|
154
|
+
present: moment.tz().valueOf(),
|
|
155
|
+
notimezone: moment().valueOf(),
|
|
156
|
+
};
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
static getDuration = (start, end) => {
|
|
160
|
+
var duration = moment.duration(end.diff(start));
|
|
161
|
+
|
|
162
|
+
return duration.asMinutes().toFixed(2);
|
|
163
|
+
};
|
|
164
|
+
|
|
165
|
+
static getPastTime = (start) => {
|
|
166
|
+
var duration = moment.duration(moment().diff(start));
|
|
167
|
+
|
|
168
|
+
return duration.asMinutes();
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
static getCreation = (field) => {
|
|
172
|
+
let creation = {
|
|
173
|
+
[field + "_at"]: moment.tz(timezone).format("DD/MM/YYYY HH:mm"),
|
|
174
|
+
[field + "_date"]: moment.tz(timezone).startOf("day").valueOf(),
|
|
175
|
+
[field + "_time"]: moment.tz(timezone).valueOf(),
|
|
176
|
+
};
|
|
177
|
+
|
|
178
|
+
return {
|
|
179
|
+
...creation,
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* From Firebase Timestamp
|
|
185
|
+
*
|
|
186
|
+
* @param {*} param0
|
|
187
|
+
* @returns
|
|
188
|
+
*/
|
|
189
|
+
static fromFirebaseMoment = (time) => {
|
|
190
|
+
let dt = time.toDate();
|
|
191
|
+
|
|
192
|
+
return moment(dt);
|
|
193
|
+
// return moment(time).tz(timezone).format(dateFormat) + ' ' + appointment_time
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* From Firebase Timestamp
|
|
198
|
+
*
|
|
199
|
+
* @param {*} param0
|
|
200
|
+
* @returns
|
|
201
|
+
*/
|
|
202
|
+
static fromFirebaseTime = ({ time }) => {
|
|
203
|
+
let dt = time.toDate();
|
|
204
|
+
|
|
205
|
+
return moment(dt).format("DD/MM/YYYY HH:mm a");
|
|
206
|
+
// return moment(time).tz(timezone).format(dateFormat) + ' ' + appointment_time
|
|
207
|
+
};
|
|
208
|
+
|
|
209
|
+
/**
|
|
210
|
+
*
|
|
211
|
+
* @param {*} param0
|
|
212
|
+
* @returns
|
|
213
|
+
*/
|
|
214
|
+
static appointmentTime = ({ appointment_date, appointment_time }) => {
|
|
215
|
+
return (
|
|
216
|
+
moment(appointment_date).tz(timezone).format(dateFormat) +
|
|
217
|
+
" " +
|
|
218
|
+
appointment_time
|
|
219
|
+
);
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
static formatDate = (value, format) => {
|
|
223
|
+
return moment(value)
|
|
224
|
+
.tz(timezone)
|
|
225
|
+
.format(format || dateFormat);
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
*
|
|
230
|
+
* @param {*} value
|
|
231
|
+
* @returns
|
|
232
|
+
*/
|
|
233
|
+
static formatTime = (value) => {
|
|
234
|
+
return moment.tz(value, timezone).format(hourFormat);
|
|
235
|
+
};
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
*
|
|
239
|
+
* @param {*} value
|
|
240
|
+
* @returns
|
|
241
|
+
*/
|
|
242
|
+
static returnTime = (value) => {
|
|
243
|
+
return moment(value).format(hourFormat);
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
static surgeTime = (time) => {
|
|
247
|
+
return moment(time, "YYYY-MM-DDTHH:mm:ss.SSSSZ")
|
|
248
|
+
.utc()
|
|
249
|
+
.format("DD/MM/YYYY HH:mm a");
|
|
250
|
+
};
|
|
251
|
+
|
|
252
|
+
/**
|
|
253
|
+
* Return the moment object of the integer , Usually used for datepicker
|
|
254
|
+
*
|
|
255
|
+
* @param {*} time
|
|
256
|
+
* @returns
|
|
257
|
+
*/
|
|
258
|
+
static getMomentObject = (time) => {
|
|
259
|
+
return moment(time, timezone);
|
|
260
|
+
};
|
|
261
|
+
|
|
262
|
+
/**
|
|
263
|
+
*
|
|
264
|
+
*/
|
|
265
|
+
static isBefore = (date1, date2) => {
|
|
266
|
+
return moment(date1).isBefore(date2);
|
|
267
|
+
};
|
|
268
|
+
|
|
269
|
+
/**
|
|
270
|
+
*
|
|
271
|
+
*/
|
|
272
|
+
static isAfter = (date1, date2) => {
|
|
273
|
+
return moment(date1).isBefore(date2);
|
|
274
|
+
};
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* Return the moment object of the integer , Usually used for datepicker
|
|
278
|
+
*
|
|
279
|
+
* @param {*} time
|
|
280
|
+
* @returns
|
|
281
|
+
*/
|
|
282
|
+
static getMomentInFormat = (time, format) => {
|
|
283
|
+
return moment(time, format);
|
|
284
|
+
};
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Moment
|
|
288
|
+
*
|
|
289
|
+
* @param {*} time
|
|
290
|
+
* @returns
|
|
291
|
+
*/
|
|
292
|
+
static getMoment = (time = null) => {
|
|
293
|
+
return moment();
|
|
294
|
+
};
|
|
295
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import moment from 'moment';
|
|
2
|
+
|
|
3
|
+
let content = {};
|
|
4
|
+
|
|
5
|
+
const Store = {};
|
|
6
|
+
let MemoryStore = GetItem('memoryStore') || {};
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Sets item in localStorage under 'content' keyword
|
|
11
|
+
* @param {string} key
|
|
12
|
+
* @param {any} payload
|
|
13
|
+
*/
|
|
14
|
+
export function SetItem(key, payload) {
|
|
15
|
+
// let convertedPayload = typeof payload == 'string' ? payload : JSON.stringify(payload);
|
|
16
|
+
content[key] = payload;
|
|
17
|
+
localStorage.content = JSON.stringify(content);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Returns data for particular key
|
|
22
|
+
* @param {string} key
|
|
23
|
+
* @param {boolean} nonVolatile - (optional)
|
|
24
|
+
*/
|
|
25
|
+
export function GetItem(key, nonVolatile = false) {
|
|
26
|
+
if (!key) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if (nonVolatile) {
|
|
31
|
+
return nonVolatile[key];
|
|
32
|
+
}
|
|
33
|
+
return content[key];
|
|
34
|
+
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export function GetTime({ dateTime, format } = {}) {
|
|
38
|
+
let dt = moment();
|
|
39
|
+
if (dateTime) {
|
|
40
|
+
if (typeof dateTime == 'string') {
|
|
41
|
+
dt = new Date(dateTime.replace(' ', 'T'));
|
|
42
|
+
} else {
|
|
43
|
+
dt = new Date(dateTime);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return moment(dt).format(format || 'YYYY-MM-DD HH:mm:ss');
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/*
|
|
51
|
+
* Converts a string to a bool.
|
|
52
|
+
* This conversion will:
|
|
53
|
+
*
|
|
54
|
+
* - match 'true', 'on', or '1' as true.
|
|
55
|
+
* - ignore all white-space padding
|
|
56
|
+
* - ignore capitalization (case).
|
|
57
|
+
*
|
|
58
|
+
* ' tRue ','ON', and '1 ' will all evaluate as true.
|
|
59
|
+
*/
|
|
60
|
+
export function StrToBool(s) {
|
|
61
|
+
// will match one and only one of the string 'true','1', or 'on' rerardless
|
|
62
|
+
// of capitalization and regardless off surrounding white-space.
|
|
63
|
+
//
|
|
64
|
+
const regex = /^\s*(true|1|on)\s*$/i;
|
|
65
|
+
|
|
66
|
+
return regex.test(s);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Event Broadcaster method
|
|
71
|
+
* Event can be broadcasted without storing into state or temporarily
|
|
72
|
+
*
|
|
73
|
+
* Expects eventName and data to be broadcasted
|
|
74
|
+
*
|
|
75
|
+
* @param {string} {eventName - unique identifier of event
|
|
76
|
+
* @param {any} data - to be broadcasted
|
|
77
|
+
* @param {any} objParams(optional) - extra tag to check if event is already subscribed
|
|
78
|
+
* @param {boolean} isMemoryStore(optional)=false - if set to true, events will be persisted even after current session(for this to work, initialisation of localstorage util is required)
|
|
79
|
+
* @param {boolean} isTemp(optional)=false - determines if event is to be broadcasted only one time
|
|
80
|
+
* @param {boolean} dontTransmit(optional)=false - event will be stored with the data but wont be broadcasted immediately after update
|
|
81
|
+
*/
|
|
82
|
+
export function StoreEvent({ eventName, data, objParams, isMemoryStore = false, isTemp = false, dontTransmit = false }) {
|
|
83
|
+
// new Promise((resolve, reject) => {
|
|
84
|
+
const eventDetail = { eventName, data, objParams };
|
|
85
|
+
if (!isTemp) { // temporary broadcastings needn't to be stored
|
|
86
|
+
if (!isMemoryStore) {
|
|
87
|
+
Store[eventName] = eventDetail;
|
|
88
|
+
} else {
|
|
89
|
+
MemoryStore = GetItem('memoryStore') || {};
|
|
90
|
+
MemoryStore[eventName] = eventDetail;
|
|
91
|
+
SetItem('memoryStore', MemoryStore);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
if (!dontTransmit) {
|
|
96
|
+
// TransmitToAllEvent({ eventDetail, isMemoryStore });
|
|
97
|
+
}
|
|
98
|
+
// });
|
|
99
|
+
}
|