Common utils library
yarn add @humblejs/lib
Following styles must be imported for all the components
@import '@humblejs/lib/dist/css/global.scss';
@import '@humblejs/lib/dist/css/themes/default.scss';
Other available files
@humblejs/lib/dist/css/reset.scss@humblejs/lib/dist/css/toc.scss (table of contents)Import complete library
import lib from '@humblejs/lib';
Import specific function or module
import { logger } from '@humblejs/lib';
or you can import from direct location like:
import logger from '@humblejs/lib/dist/js/logger';
| Name | Direct import |
|---|---|
logger ~> { info, debug, error, warn } ,{ isLoggingEnabled } |
dist/js/logger |
Analytics ~> { sendEvent, reset, pageview } |
dist/js/ga |
{ generateToc, addPermaLinkToHeaders } |
dist/js/toc |
{ isBrowser, isIE } |
dist/js/browser |
registerScrollCallback, { isElementInViewport } |
dist/js/register-scroll-callback |
addListener(elem, evt, fn), { addEventListener } |
dist/js/event/add-listener |
removeListener(elem, evt, fn) |
dist/js/event/remove-listener |
loggerEnable/disable console logging. Configuration is based on localStorage
gaGoogle analytics wrapper
tocTable of contents generator
browserBrowser related utility functions
register-scroll-callbackRegister callback when user scrolls the page
registerScrollCallback takes options with callback (fn) and scrollRefId
(element ID) so when scrollRefId is in view (or passed the point) callback
is triggered.
e.g,
window.onload = function() {
registerScrollCallback({
scrollRefId: 'menu-bar',
callback: () => {
console.log('Just past the menu bar');
},
});
}