@polioan/global-js
v2.0.1
Published
get, set global values in any js env
Downloads
2
Maintainers
Readme
global-js
get, set global values in any js env
Use case
Test
import { setGlobal, getEnv } from '@polioan/global-js'
function toTest() {
return 333
}
if (getEnv('NODE_ENV') === 'test') {
setGlobal('toTest', toTest)
}
Global cache (useful for hot reload)
import { getEnv, getGlobal, setGlobal } from '@polioan/global-js'
import { PrismaClient } from '@prisma/client'
export const prisma: PrismaClient = getGlobal('prisma') ?? new PrismaClient({})
if (getEnv('NODE_ENV') !== 'production') {
setGlobal('prisma', prisma)
}
Libs for browser
import { setGlobal } from '@polioan/global-js'
class Myjquery {}
setGlobal('$', new Myjquery())
Polyfills
import { setGlobal } from '@polioan/global-js'
if (typeof structuredClone === 'undefined') {
setGlobal('structuredClone', value => JSON.parse(JSON.stringify(value)))
}
Creating global libraries
import { setGlobal } from '@polioan/global-js'
declare global {
var calculate: (a: number, b: number) => number
}
setGlobal('calculate', (a: number, b: number) => a + b)
const test = calculate(2, 3) // will work
Install
npm
npm i @polioan/global-js
yarn
yarn add @polioan/global-js
CDN
<script src="https://unpkg.com/@polioan/[email protected]/dist/index.global.js"></script>
<script>
setGlobal('some', 'test')
</script>
Deno
import { setGlobal } from 'https://deno.land/x/[email protected]/src/index.ts'
setGlobal('some', 'test')