rexr 0.1.0

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.
@@ -0,0 +1,18 @@
1
+ import { EventState } from 'reev';
2
+ import { B as BatteryState, C as ClipboardState, G as GeolocationState, O as OnlineState, a as OrientState, W as WindowSizeState } from './types-5626eef1.js';
3
+
4
+ declare const batteryEvent: () => EventState<BatteryState, any[] | unknown[]>;
5
+
6
+ declare const clipboardEvent: () => EventState<ClipboardState, any[]>;
7
+
8
+ declare const geolocationEvent: () => EventState<GeolocationState, any[] | unknown[]>;
9
+
10
+ declare const mediaQueryEvent: () => void;
11
+
12
+ declare const onlineEvent: () => EventState<OnlineState, any[]>;
13
+
14
+ declare const orientEvent: () => EventState<OrientState, any[] | unknown[]>;
15
+
16
+ declare const windowSizeEvent: () => EventState<WindowSizeState, any[]>;
17
+
18
+ export { batteryEvent, clipboardEvent, geolocationEvent, mediaQueryEvent, onlineEvent, orientEvent, windowSizeEvent };
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ var s=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var w=Object.prototype.hasOwnProperty;var E=(o,t)=>{for(var a in t)s(o,a,{get:t[a],enumerable:!0})},u=(o,t,a,e)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of C(t))!w.call(o,n)&&n!==a&&s(o,n,{get:()=>t[n],enumerable:!(e=f(t,n))||e.enumerable});return o};var S=o=>u(s({},"__esModule",{value:!0}),o);var z={};E(z,{batteryEvent:()=>x,clipboardEvent:()=>y,geolocationEvent:()=>L,mediaQueryEvent:()=>V,onlineEvent:()=>b,orientEvent:()=>_,windowSizeEvent:()=>k});module.exports=S(z);var v=require("reev"),x=()=>{let e=(0,v.event)({onChange:async()=>{let n=await navigator.getBattery();e.level=n.level,e.charging=n.charging,e.chargingTime=n.chargingTime,e.dischargingTime=n.dischargingTime,e.snapshot=[e],e.callback()},onMount:()=>{navigator.getBattery().then(n=>{e.target=n,n.addEventListener("levelchange",e.onChange),n.addEventListener("chargingchange",e.onChange)}),e.onChange()},onClean:()=>{let n=e.target;n&&(n.removeEventListener("levelchange",e.onChange),n.removeEventListener("chargingchange",e.onChange))}});return e.snapshot=[e],e};var l=require("reev"),y=()=>{let e=(0,l.event)({clipboard:"",onChange:()=>{navigator.clipboard.readText().then(n=>{e.clipboard=n,e.snapshot=[e],e.callback()})},onMount:()=>{window.addEventListener("copy",e.onChange),window.addEventListener("cut",e.onChange),window.addEventListener("paste",e.onChange)},onClean:()=>{window.removeEventListener("copy",e.onChange),window.removeEventListener("cut",e.onChange),window.removeEventListener("paste",e.onChange)}});return e.snapshot=[e],e};var g=require("reev"),L=()=>{let e=(0,g.event)({onChange:()=>{navigator.geolocation.getCurrentPosition(n=>{e.geolocation=n,e.snapshot=[e],e.callback()})},onMount:()=>{e.onChange(),e.id=navigator.geolocation.watchPosition(e.onChange)},onClean:()=>{typeof e.id<"u"&&navigator.geolocation.clearWatch(e.id)}});return e.snapshot=[e],e};var V=()=>{};var h=require("reev"),b=()=>{let e=(0,h.event)({onChange:()=>{e.online=navigator.onLine,e.snapshot=[e],e.callback()},onMount:()=>{e.onChange(),window.addEventListener("online",e.onChange),window.addEventListener("offline",e.onChange)},onClean:()=>{window.removeEventListener("online",e.onChange),window.removeEventListener("offline",e.onChange)}});return e.snapshot=[e],e};var m=require("reev");var M=typeof Float32Array<"u"?Float32Array:Array,r=(o=0,t=0,a=0,e=new M(3))=>(e[0]=o,e[1]=t,e[2]=a,e),c=(o,t,a=r())=>(a[0]=o[0]+t[0],a[1]=o[1]+t[1],a[2]=o[2]+t[2],a),d=(o,t,a=r())=>(a[0]=o[0]-t[0],a[1]=o[1]-t[1],a[2]=o[2]-t[2],a);var _=()=>{let o=()=>{n.active=n._active=!1,r(0,0,0,n.value),r(0,0,0,n._value),r(0,0,0,n.delta),r(0,0,0,n.movement)},t=i=>{n._active=n.active,n._value=n.value,n.value=[90-(i.alpha??90),i.beta??0,i.gamma??0],n._active&&(d(n.value,n._value,n.delta),c(n.offset,n.delta,n.offset),c(n.offset,n.delta,n.movement)),n.snapshot=[n],n.callback()},a=()=>{o(),n.active=!0,window.addEventListener("deviceOrient",n.onChange)},e=()=>{o(),window.removeEventListener("deviceOrient",n.onChange)},n=(0,m.event)({active:!1,_active:!1,_value:r(),value:r(),delta:r(),offset:r(),movement:r(),onMount:a,onClean:e,onChange:t});return n.snapshot=[n],n};var p=require("reev"),k=()=>{let e=(0,p.event)({width:1920,height:1080,onChange:()=>{e.callback(),e.snapshot=[e],e.width=window.innerWidth,e.height=window.innerHeight},onMount:()=>{e.onChange(),window.addEventListener("resize",e.onChange)},onClean:()=>{window.removeEventListener("resize",e.onChange)}});return e.snapshot=[e],e};0&&(module.exports={batteryEvent,clipboardEvent,geolocationEvent,mediaQueryEvent,onlineEvent,orientEvent,windowSizeEvent});
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../index.ts","../battery/index.ts","../clipboard/index.ts","../geolocation/index.ts","../mediaQuery/index.ts","../online/index.ts","../orient/index.ts","../orient/utils.ts","../windowSize/index.ts"],"sourcesContent":["export * from './battery'\nexport * from './clipboard'\nexport * from './geolocation'\nexport * from './mediaQuery'\nexport * from './online'\nexport * from './orient'\nexport * from './windowSize'\n","import { EventState, event } from 'reev'\nimport { BatteryState } from './types'\n\nexport const batteryEvent = () => {\n const onChange = async () => {\n // @ts-ignore\n const battery = await navigator.getBattery()\n self.level = battery.level\n self.charging = battery.charging\n self.chargingTime = battery.chargingTime\n self.dischargingTime = battery.dischargingTime\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n // @ts-ignore\n navigator.getBattery().then((target: any) => {\n self.target = target\n target.addEventListener('levelchange', self.onChange)\n target.addEventListener('chargingchange', self.onChange)\n })\n self.onChange()\n }\n\n const onClean = () => {\n const target = self.target\n if (!target) return\n target.removeEventListener('levelchange', self.onChange)\n target.removeEventListener('chargingchange', self.onChange)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<BatteryState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState, event } from 'reev'\nimport { ClipboardState } from './types'\n\nexport const clipboardEvent = () => {\n const onChange = () => {\n navigator.clipboard.readText().then((clipboard) => {\n self.clipboard = clipboard\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n window.addEventListener('copy', self.onChange)\n window.addEventListener('cut', self.onChange)\n window.addEventListener('paste', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('copy', self.onChange)\n window.removeEventListener('cut', self.onChange)\n window.removeEventListener('paste', self.onChange)\n }\n\n const self = event({\n clipboard: '',\n onChange,\n onMount,\n onClean,\n }) as EventState<ClipboardState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState, event } from 'reev'\nimport { GeolocationState } from './types'\n\nexport const geolocationEvent = () => {\n const onChange = () => {\n navigator.geolocation.getCurrentPosition((geolocation) => {\n self.geolocation = geolocation\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n self.onChange()\n self.id = navigator.geolocation.watchPosition(self.onChange)\n }\n\n const onClean = () => {\n if (typeof self.id !== 'undefined')\n navigator.geolocation.clearWatch(self.id)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<GeolocationState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { event } from 'reev'\n\nexport const mediaQueryEvent = () => {}\n","import { OnlineState } from './types'\nimport { EventState, event } from 'reev'\n\nexport const onlineEvent = () => {\n const onChange = () => {\n self.online = navigator.onLine\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n self.onChange()\n window.addEventListener('online', self.onChange)\n window.addEventListener('offline', self.onChange)\n }\n const onClean = () => {\n window.removeEventListener('online', self.onChange)\n window.removeEventListener('offline', self.onChange)\n }\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<OnlineState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState, event } from 'reev'\nimport { OrientState } from './types'\nimport { addVec3, subVec3, vec3 } from './utils'\n\nexport const orientEvent = () => {\n const initValues = () => {\n self.active = self._active = false\n vec3(0, 0, 0, self.value)\n vec3(0, 0, 0, self._value)\n vec3(0, 0, 0, self.delta)\n vec3(0, 0, 0, self.movement)\n }\n\n const onChange = (e: any) => {\n self._active = self.active\n self._value = self.value\n self.value = [90 - (e.alpha ?? 90), e.beta ?? 0, e.gamma ?? 0]\n if (self._active) {\n subVec3(self.value, self._value, self.delta)\n addVec3(self.offset, self.delta, self.offset)\n addVec3(self.offset, self.delta, self.movement)\n }\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n initValues()\n self.active = true\n window.addEventListener('deviceOrient', self.onChange)\n }\n\n const onClean = () => {\n initValues()\n window.removeEventListener('deviceOrient', self.onChange)\n }\n\n const self = event({\n active: false,\n _active: false,\n _value: vec3(),\n value: vec3(),\n delta: vec3(),\n offset: vec3(),\n movement: vec3(),\n onMount,\n onClean,\n onChange,\n }) as EventState<OrientState>\n\n self.snapshot = [self]\n\n return self\n}\n","/**\n * CALCULATE VECTOR\n * REF: https://github.com/toji/gl-matrix/blob/master/src/vec2.js\n */\n\nconst Vec = typeof Float32Array !== 'undefined' ? Float32Array : Array\n\nexport const vec3 = (x = 0, y = 0, z = 0, out = new Vec(3)): Vec3 => {\n out[0] = x\n out[1] = y\n out[2] = z\n return out as Vec3\n}\n\nexport type Vec3 = [x: number, y: number, z: number]\n\nexport const addVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] + b[0]\n out[1] = a[1] + b[1]\n out[2] = a[2] + b[2]\n return out\n}\n\nexport const subVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] - b[0]\n out[1] = a[1] - b[1]\n out[2] = a[2] - b[2]\n return out\n}\n\nexport const cpVec3 = (a: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0]\n out[1] = a[1]\n out[2] = a[2]\n return out\n}\n","import { EventState, event } from 'reev'\nimport { WindowSizeState } from './types'\n\nexport const windowSizeEvent = () => {\n const onMount = () => {\n self.onChange()\n window.addEventListener('resize', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('resize', self.onChange)\n }\n\n const onChange = () => {\n self.callback()\n self.snapshot = [self]\n self.width = window.innerWidth\n self.height = window.innerHeight\n }\n\n const self = event({\n width: 1920,\n height: 1080,\n onChange,\n onMount,\n onClean,\n }) as EventState<WindowSizeState>\n\n self.snapshot = [self]\n\n return self\n}\n"],"mappings":"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","names":["external_exports","__export","batteryEvent","clipboardEvent","geolocationEvent","mediaQueryEvent","onlineEvent","orientEvent","windowSizeEvent","__toCommonJS","import_reev","batteryEvent","self","battery","target","import_reev","clipboardEvent","self","clipboard","import_reev","geolocationEvent","self","geolocation","mediaQueryEvent","import_reev","onlineEvent","self","import_reev","Vec","vec3","x","y","z","out","addVec3","a","b","subVec3","orientEvent","initValues","self","vec3","onChange","e","subVec3","addVec3","onMount","onClean","import_reev","windowSizeEvent","self"]}
package/dist/index.mjs ADDED
@@ -0,0 +1,2 @@
1
+ import{event as v}from"reev";var w=()=>{let e=v({onChange:async()=>{let n=await navigator.getBattery();e.level=n.level,e.charging=n.charging,e.chargingTime=n.chargingTime,e.dischargingTime=n.dischargingTime,e.snapshot=[e],e.callback()},onMount:()=>{navigator.getBattery().then(n=>{e.target=n,n.addEventListener("levelchange",e.onChange),n.addEventListener("chargingchange",e.onChange)}),e.onChange()},onClean:()=>{let n=e.target;n&&(n.removeEventListener("levelchange",e.onChange),n.removeEventListener("chargingchange",e.onChange))}});return e.snapshot=[e],e};import{event as l}from"reev";var x=()=>{let e=l({clipboard:"",onChange:()=>{navigator.clipboard.readText().then(n=>{e.clipboard=n,e.snapshot=[e],e.callback()})},onMount:()=>{window.addEventListener("copy",e.onChange),window.addEventListener("cut",e.onChange),window.addEventListener("paste",e.onChange)},onClean:()=>{window.removeEventListener("copy",e.onChange),window.removeEventListener("cut",e.onChange),window.removeEventListener("paste",e.onChange)}});return e.snapshot=[e],e};import{event as g}from"reev";var b=()=>{let e=g({onChange:()=>{navigator.geolocation.getCurrentPosition(n=>{e.geolocation=n,e.snapshot=[e],e.callback()})},onMount:()=>{e.onChange(),e.id=navigator.geolocation.watchPosition(e.onChange)},onClean:()=>{typeof e.id<"u"&&navigator.geolocation.clearWatch(e.id)}});return e.snapshot=[e],e};var _=()=>{};import{event as h}from"reev";var T=()=>{let e=h({onChange:()=>{e.online=navigator.onLine,e.snapshot=[e],e.callback()},onMount:()=>{e.onChange(),window.addEventListener("online",e.onChange),window.addEventListener("offline",e.onChange)},onClean:()=>{window.removeEventListener("online",e.onChange),window.removeEventListener("offline",e.onChange)}});return e.snapshot=[e],e};import{event as m}from"reev";var d=typeof Float32Array<"u"?Float32Array:Array,r=(o=0,a=0,t=0,e=new d(3))=>(e[0]=o,e[1]=a,e[2]=t,e),s=(o,a,t=r())=>(t[0]=o[0]+a[0],t[1]=o[1]+a[1],t[2]=o[2]+a[2],t),c=(o,a,t=r())=>(t[0]=o[0]-a[0],t[1]=o[1]-a[1],t[2]=o[2]-a[2],t);var P=()=>{let o=()=>{n.active=n._active=!1,r(0,0,0,n.value),r(0,0,0,n._value),r(0,0,0,n.delta),r(0,0,0,n.movement)},a=i=>{n._active=n.active,n._value=n.value,n.value=[90-(i.alpha??90),i.beta??0,i.gamma??0],n._active&&(c(n.value,n._value,n.delta),s(n.offset,n.delta,n.offset),s(n.offset,n.delta,n.movement)),n.snapshot=[n],n.callback()},t=()=>{o(),n.active=!0,window.addEventListener("deviceOrient",n.onChange)},e=()=>{o(),window.removeEventListener("deviceOrient",n.onChange)},n=m({active:!1,_active:!1,_value:r(),value:r(),delta:r(),offset:r(),movement:r(),onMount:t,onClean:e,onChange:a});return n.snapshot=[n],n};import{event as p}from"reev";var q=()=>{let e=p({width:1920,height:1080,onChange:()=>{e.callback(),e.snapshot=[e],e.width=window.innerWidth,e.height=window.innerHeight},onMount:()=>{e.onChange(),window.addEventListener("resize",e.onChange)},onClean:()=>{window.removeEventListener("resize",e.onChange)}});return e.snapshot=[e],e};export{w as batteryEvent,x as clipboardEvent,b as geolocationEvent,_ as mediaQueryEvent,T as onlineEvent,P as orientEvent,q as windowSizeEvent};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../battery/index.ts","../clipboard/index.ts","../geolocation/index.ts","../mediaQuery/index.ts","../online/index.ts","../orient/index.ts","../orient/utils.ts","../windowSize/index.ts"],"sourcesContent":["import { EventState, event } from 'reev'\nimport { BatteryState } from './types'\n\nexport const batteryEvent = () => {\n const onChange = async () => {\n // @ts-ignore\n const battery = await navigator.getBattery()\n self.level = battery.level\n self.charging = battery.charging\n self.chargingTime = battery.chargingTime\n self.dischargingTime = battery.dischargingTime\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n // @ts-ignore\n navigator.getBattery().then((target: any) => {\n self.target = target\n target.addEventListener('levelchange', self.onChange)\n target.addEventListener('chargingchange', self.onChange)\n })\n self.onChange()\n }\n\n const onClean = () => {\n const target = self.target\n if (!target) return\n target.removeEventListener('levelchange', self.onChange)\n target.removeEventListener('chargingchange', self.onChange)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<BatteryState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState, event } from 'reev'\nimport { ClipboardState } from './types'\n\nexport const clipboardEvent = () => {\n const onChange = () => {\n navigator.clipboard.readText().then((clipboard) => {\n self.clipboard = clipboard\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n window.addEventListener('copy', self.onChange)\n window.addEventListener('cut', self.onChange)\n window.addEventListener('paste', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('copy', self.onChange)\n window.removeEventListener('cut', self.onChange)\n window.removeEventListener('paste', self.onChange)\n }\n\n const self = event({\n clipboard: '',\n onChange,\n onMount,\n onClean,\n }) as EventState<ClipboardState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState, event } from 'reev'\nimport { GeolocationState } from './types'\n\nexport const geolocationEvent = () => {\n const onChange = () => {\n navigator.geolocation.getCurrentPosition((geolocation) => {\n self.geolocation = geolocation\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n self.onChange()\n self.id = navigator.geolocation.watchPosition(self.onChange)\n }\n\n const onClean = () => {\n if (typeof self.id !== 'undefined')\n navigator.geolocation.clearWatch(self.id)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<GeolocationState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { event } from 'reev'\n\nexport const mediaQueryEvent = () => {}\n","import { OnlineState } from './types'\nimport { EventState, event } from 'reev'\n\nexport const onlineEvent = () => {\n const onChange = () => {\n self.online = navigator.onLine\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n self.onChange()\n window.addEventListener('online', self.onChange)\n window.addEventListener('offline', self.onChange)\n }\n const onClean = () => {\n window.removeEventListener('online', self.onChange)\n window.removeEventListener('offline', self.onChange)\n }\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<OnlineState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState, event } from 'reev'\nimport { OrientState } from './types'\nimport { addVec3, subVec3, vec3 } from './utils'\n\nexport const orientEvent = () => {\n const initValues = () => {\n self.active = self._active = false\n vec3(0, 0, 0, self.value)\n vec3(0, 0, 0, self._value)\n vec3(0, 0, 0, self.delta)\n vec3(0, 0, 0, self.movement)\n }\n\n const onChange = (e: any) => {\n self._active = self.active\n self._value = self.value\n self.value = [90 - (e.alpha ?? 90), e.beta ?? 0, e.gamma ?? 0]\n if (self._active) {\n subVec3(self.value, self._value, self.delta)\n addVec3(self.offset, self.delta, self.offset)\n addVec3(self.offset, self.delta, self.movement)\n }\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n initValues()\n self.active = true\n window.addEventListener('deviceOrient', self.onChange)\n }\n\n const onClean = () => {\n initValues()\n window.removeEventListener('deviceOrient', self.onChange)\n }\n\n const self = event({\n active: false,\n _active: false,\n _value: vec3(),\n value: vec3(),\n delta: vec3(),\n offset: vec3(),\n movement: vec3(),\n onMount,\n onClean,\n onChange,\n }) as EventState<OrientState>\n\n self.snapshot = [self]\n\n return self\n}\n","/**\n * CALCULATE VECTOR\n * REF: https://github.com/toji/gl-matrix/blob/master/src/vec2.js\n */\n\nconst Vec = typeof Float32Array !== 'undefined' ? Float32Array : Array\n\nexport const vec3 = (x = 0, y = 0, z = 0, out = new Vec(3)): Vec3 => {\n out[0] = x\n out[1] = y\n out[2] = z\n return out as Vec3\n}\n\nexport type Vec3 = [x: number, y: number, z: number]\n\nexport const addVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] + b[0]\n out[1] = a[1] + b[1]\n out[2] = a[2] + b[2]\n return out\n}\n\nexport const subVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] - b[0]\n out[1] = a[1] - b[1]\n out[2] = a[2] - b[2]\n return out\n}\n\nexport const cpVec3 = (a: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0]\n out[1] = a[1]\n out[2] = a[2]\n return out\n}\n","import { EventState, event } from 'reev'\nimport { WindowSizeState } from './types'\n\nexport const windowSizeEvent = () => {\n const onMount = () => {\n self.onChange()\n window.addEventListener('resize', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('resize', self.onChange)\n }\n\n const onChange = () => {\n self.callback()\n self.snapshot = [self]\n self.width = window.innerWidth\n self.height = window.innerHeight\n }\n\n const self = event({\n width: 1920,\n height: 1080,\n onChange,\n onMount,\n onClean,\n }) as EventState<WindowSizeState>\n\n self.snapshot = [self]\n\n return self\n}\n"],"mappings":"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","names":["event","batteryEvent","self","battery","target","event","clipboardEvent","self","clipboard","event","geolocationEvent","self","geolocation","mediaQueryEvent","event","onlineEvent","self","event","Vec","vec3","x","y","z","out","addVec3","a","b","subVec3","orientEvent","initValues","self","vec3","onChange","e","subVec3","addVec3","onMount","onClean","event","event","windowSizeEvent","self"]}
@@ -0,0 +1,20 @@
1
+ import { B as BatteryState, C as ClipboardState, G as GeolocationState, O as OnlineState, a as OrientState, W as WindowSizeState } from './types-5626eef1.js';
2
+
3
+ declare const useBattery: () => BatteryState;
4
+
5
+ declare const useClipboard: () => ClipboardState;
6
+
7
+ declare const useGeolocation: () => GeolocationState;
8
+
9
+ declare const useMediaQuery: () => void;
10
+
11
+ declare const useOnline: () => OnlineState;
12
+
13
+ declare const subscribe: (callback?: () => void) => () => void;
14
+ declare const getSnapshot: () => [OrientState];
15
+ declare const getServerSnapshot: () => [OrientState];
16
+ declare const useOrient: () => OrientState;
17
+
18
+ declare const useWindowSize: () => WindowSizeState;
19
+
20
+ export { getServerSnapshot, getSnapshot, subscribe, useBattery, useClipboard, useGeolocation, useMediaQuery, useOnline, useOrient, useWindowSize };
package/dist/react.js ADDED
@@ -0,0 +1,2 @@
1
+ var h=Object.defineProperty;var q=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var I=Object.prototype.hasOwnProperty;var J=(t,o)=>{for(var r in o)h(t,r,{get:o[r],enumerable:!0})},K=(t,o,r,e)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of D(o))!I.call(t,n)&&n!==r&&h(t,n,{get:()=>o[n],enumerable:!(e=q(o,n))||e.enumerable});return t};var N=t=>K(h({},"__esModule",{value:!0}),t);var se={};J(se,{getServerSnapshot:()=>P,getSnapshot:()=>F,subscribe:()=>A,useBattery:()=>U,useClipboard:()=>Y,useGeolocation:()=>$,useMediaQuery:()=>ee,useOnline:()=>ne,useOrient:()=>re,useWindowSize:()=>ie});module.exports=N(se);var g=require("reev"),d=()=>{let e=(0,g.event)({onChange:async()=>{let n=await navigator.getBattery();e.level=n.level,e.charging=n.charging,e.chargingTime=n.chargingTime,e.dischargingTime=n.dischargingTime,e.snapshot=[e],e.callback()},onMount:()=>{navigator.getBattery().then(n=>{e.target=n,n.addEventListener("levelchange",e.onChange),n.addEventListener("chargingchange",e.onChange)}),e.onChange()},onClean:()=>{let n=e.target;n&&(n.removeEventListener("levelchange",e.onChange),n.removeEventListener("chargingchange",e.onChange))}});return e.snapshot=[e],e};var u=require("react"),s,R=(t=()=>{})=>(s({callback:t}).onMount(),()=>s({callback:t}).onClean()),S=()=>s.snapshot,U=()=>{s||(s=d());let[t]=(0,u.useSyncExternalStore)(R,S,S);return t};var x=require("react");var E=require("reev"),C=()=>{let e=(0,E.event)({clipboard:"",onChange:()=>{navigator.clipboard.readText().then(n=>{e.clipboard=n,e.snapshot=[e],e.callback()})},onMount:()=>{window.addEventListener("copy",e.onChange),window.addEventListener("cut",e.onChange),window.addEventListener("paste",e.onChange)},onClean:()=>{window.removeEventListener("copy",e.onChange),window.removeEventListener("cut",e.onChange),window.removeEventListener("paste",e.onChange)}});return e.snapshot=[e],e};var c,X=(t=()=>{})=>(c({callback:t}).onMount(),()=>c({callback:t}).onClean()),w=()=>c.snapshot,Y=()=>{c||(c=C());let[t]=(0,x.useSyncExternalStore)(X,w,w);return t};var M=require("react");var y=require("reev"),b=()=>{let e=(0,y.event)({onChange:()=>{navigator.geolocation.getCurrentPosition(n=>{e.geolocation=n,e.snapshot=[e],e.callback()})},onMount:()=>{e.onChange(),e.id=navigator.geolocation.watchPosition(e.onChange)},onClean:()=>{typeof e.id<"u"&&navigator.geolocation.clearWatch(e.id)}});return e.snapshot=[e],e};var p,Z=(t=()=>{})=>(p({callback:t}).onMount(),()=>p({callback:t}).onClean()),L=()=>p.snapshot,$=()=>{p||(p=b());let[t]=(0,M.useSyncExternalStore)(Z,L,L);return t};var ee=()=>{};var _=require("react");var V=require("reev"),O=()=>{let e=(0,V.event)({onChange:()=>{e.online=navigator.onLine,e.snapshot=[e],e.callback()},onMount:()=>{e.onChange(),window.addEventListener("online",e.onChange),window.addEventListener("offline",e.onChange)},onClean:()=>{window.removeEventListener("online",e.onChange),window.removeEventListener("offline",e.onChange)}});return e.snapshot=[e],e};var m,te=(t=()=>{})=>(m({callback:t}).onMount(),()=>m({callback:t}).onClean()),z=()=>m.snapshot,ne=()=>{m||(m=O());let[t]=(0,_.useSyncExternalStore)(te,z,z);return t};var T=require("react");var W=require("reev");var oe=typeof Float32Array<"u"?Float32Array:Array,a=(t=0,o=0,r=0,e=new oe(3))=>(e[0]=t,e[1]=o,e[2]=r,e),f=(t,o,r=a())=>(r[0]=t[0]+o[0],r[1]=t[1]+o[1],r[2]=t[2]+o[2],r),B=(t,o,r=a())=>(r[0]=t[0]-o[0],r[1]=t[1]-o[1],r[2]=t[2]-o[2],r);var G=()=>{let t=()=>{n.active=n._active=!1,a(0,0,0,n.value),a(0,0,0,n._value),a(0,0,0,n.delta),a(0,0,0,n.movement)},o=l=>{n._active=n.active,n._value=n.value,n.value=[90-(l.alpha??90),l.beta??0,l.gamma??0],n._active&&(B(n.value,n._value,n.delta),f(n.offset,n.delta,n.offset),f(n.offset,n.delta,n.movement)),n.snapshot=[n],n.callback()},r=()=>{t(),n.active=!0,window.addEventListener("deviceOrient",n.onChange)},e=()=>{t(),window.removeEventListener("deviceOrient",n.onChange)},n=(0,W.event)({active:!1,_active:!1,_value:a(),value:a(),delta:a(),offset:a(),movement:a(),onMount:r,onClean:e,onChange:o});return n.snapshot=[n],n};var i,A=(t=()=>{})=>(i({callback:t}).onMount(),()=>i({callback:t}).onClean()),F=()=>i.snapshot,P=()=>i.snapshot,re=()=>{i||(i=G());let[t]=(0,T.useSyncExternalStore)(A,F,P);return t};var k=require("react");var H=require("reev"),Q=()=>{let e=(0,H.event)({width:1920,height:1080,onChange:()=>{e.callback(),e.snapshot=[e],e.width=window.innerWidth,e.height=window.innerHeight},onMount:()=>{e.onChange(),window.addEventListener("resize",e.onChange)},onClean:()=>{window.removeEventListener("resize",e.onChange)}});return e.snapshot=[e],e};var v,ae=(t=()=>{})=>(v({callback:t}).onMount(),()=>v({callback:t}).onClean()),j=()=>v.snapshot,ie=()=>{v||(v=Q());let[t]=(0,k.useSyncExternalStore)(ae,j,j);return t};0&&(module.exports={getServerSnapshot,getSnapshot,subscribe,useBattery,useClipboard,useGeolocation,useMediaQuery,useOnline,useOrient,useWindowSize});
2
+ //# sourceMappingURL=react.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../react.ts","../battery/index.ts","../battery/react.ts","../clipboard/react.ts","../clipboard/index.ts","../geolocation/react.ts","../geolocation/index.ts","../mediaQuery/react.ts","../online/react.ts","../online/index.ts","../orient/react.ts","../orient/index.ts","../orient/utils.ts","../windowSize/react.ts","../windowSize/index.ts"],"sourcesContent":["export * from './battery/react'\nexport * from './clipboard/react'\nexport * from './geolocation/react'\nexport * from './mediaQuery/react'\nexport * from './online/react'\nexport * from './orient/react'\nexport * from './windowSize/react'\n","import { EventState, event } from 'reev'\nimport { BatteryState } from './types'\n\nexport const batteryEvent = () => {\n const onChange = async () => {\n // @ts-ignore\n const battery = await navigator.getBattery()\n self.level = battery.level\n self.charging = battery.charging\n self.chargingTime = battery.chargingTime\n self.dischargingTime = battery.dischargingTime\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n // @ts-ignore\n navigator.getBattery().then((target: any) => {\n self.target = target\n target.addEventListener('levelchange', self.onChange)\n target.addEventListener('chargingchange', self.onChange)\n })\n self.onChange()\n }\n\n const onClean = () => {\n const target = self.target\n if (!target) return\n target.removeEventListener('levelchange', self.onChange)\n target.removeEventListener('chargingchange', self.onChange)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<BatteryState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { batteryEvent } from '.'\nimport { useSyncExternalStore } from 'react'\nimport { BatteryState } from './types'\nimport { EventState } from 'reev'\n\nlet self: EventState<BatteryState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useBattery = () => {\n if (!self) self = batteryEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { useSyncExternalStore } from 'react'\nimport { clipboardEvent } from '.'\nimport { EventState } from 'reev'\nimport { ClipboardState } from './types'\n\nlet self: EventState<ClipboardState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useClipboard = () => {\n if (!self) self = clipboardEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { ClipboardState } from './types'\n\nexport const clipboardEvent = () => {\n const onChange = () => {\n navigator.clipboard.readText().then((clipboard) => {\n self.clipboard = clipboard\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n window.addEventListener('copy', self.onChange)\n window.addEventListener('cut', self.onChange)\n window.addEventListener('paste', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('copy', self.onChange)\n window.removeEventListener('cut', self.onChange)\n window.removeEventListener('paste', self.onChange)\n }\n\n const self = event({\n clipboard: '',\n onChange,\n onMount,\n onClean,\n }) as EventState<ClipboardState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState } from 'reev'\nimport { useSyncExternalStore } from 'react'\nimport { GeolocationState } from './types'\nimport { geolocationEvent } from '.'\n\nlet self: EventState<GeolocationState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useGeolocation = () => {\n if (!self) self = geolocationEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { GeolocationState } from './types'\n\nexport const geolocationEvent = () => {\n const onChange = () => {\n navigator.geolocation.getCurrentPosition((geolocation) => {\n self.geolocation = geolocation\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n self.onChange()\n self.id = navigator.geolocation.watchPosition(self.onChange)\n }\n\n const onClean = () => {\n if (typeof self.id !== 'undefined')\n navigator.geolocation.clearWatch(self.id)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<GeolocationState>\n\n self.snapshot = [self]\n\n return self\n}\n","export const useMediaQuery = () => {}\n","import { useSyncExternalStore } from 'react'\nimport { onlineEvent } from '.'\nimport { EventState } from 'reev'\nimport { OnlineState } from './types'\n\nlet self: EventState<OnlineState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useOnline = () => {\n if (!self) self = onlineEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { OnlineState } from './types'\nimport { EventState, event } from 'reev'\n\nexport const onlineEvent = () => {\n const onChange = () => {\n self.online = navigator.onLine\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n self.onChange()\n window.addEventListener('online', self.onChange)\n window.addEventListener('offline', self.onChange)\n }\n const onClean = () => {\n window.removeEventListener('online', self.onChange)\n window.removeEventListener('offline', self.onChange)\n }\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<OnlineState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { useSyncExternalStore } from 'react'\nimport { orientEvent } from '.'\nimport { OrientState } from './types'\nimport { EventState } from 'reev'\n\nlet self: EventState<OrientState>\n\nexport const subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nexport const getSnapshot = () => self.snapshot\n\nexport const getServerSnapshot = () => self.snapshot\n\nexport const useOrient = () => {\n if (!self) self = orientEvent()\n const [ret] = useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n )\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { OrientState } from './types'\nimport { addVec3, subVec3, vec3 } from './utils'\n\nexport const orientEvent = () => {\n const initValues = () => {\n self.active = self._active = false\n vec3(0, 0, 0, self.value)\n vec3(0, 0, 0, self._value)\n vec3(0, 0, 0, self.delta)\n vec3(0, 0, 0, self.movement)\n }\n\n const onChange = (e: any) => {\n self._active = self.active\n self._value = self.value\n self.value = [90 - (e.alpha ?? 90), e.beta ?? 0, e.gamma ?? 0]\n if (self._active) {\n subVec3(self.value, self._value, self.delta)\n addVec3(self.offset, self.delta, self.offset)\n addVec3(self.offset, self.delta, self.movement)\n }\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n initValues()\n self.active = true\n window.addEventListener('deviceOrient', self.onChange)\n }\n\n const onClean = () => {\n initValues()\n window.removeEventListener('deviceOrient', self.onChange)\n }\n\n const self = event({\n active: false,\n _active: false,\n _value: vec3(),\n value: vec3(),\n delta: vec3(),\n offset: vec3(),\n movement: vec3(),\n onMount,\n onClean,\n onChange,\n }) as EventState<OrientState>\n\n self.snapshot = [self]\n\n return self\n}\n","/**\n * CALCULATE VECTOR\n * REF: https://github.com/toji/gl-matrix/blob/master/src/vec2.js\n */\n\nconst Vec = typeof Float32Array !== 'undefined' ? Float32Array : Array\n\nexport const vec3 = (x = 0, y = 0, z = 0, out = new Vec(3)): Vec3 => {\n out[0] = x\n out[1] = y\n out[2] = z\n return out as Vec3\n}\n\nexport type Vec3 = [x: number, y: number, z: number]\n\nexport const addVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] + b[0]\n out[1] = a[1] + b[1]\n out[2] = a[2] + b[2]\n return out\n}\n\nexport const subVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] - b[0]\n out[1] = a[1] - b[1]\n out[2] = a[2] - b[2]\n return out\n}\n\nexport const cpVec3 = (a: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0]\n out[1] = a[1]\n out[2] = a[2]\n return out\n}\n","import { useSyncExternalStore } from 'react'\nimport { windowSizeEvent } from './index'\nimport { WindowSizeState } from './types'\nimport { EventState } from 'reev'\n\nlet self: EventState<WindowSizeState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useWindowSize = () => {\n if (!self) self = windowSizeEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { WindowSizeState } from './types'\n\nexport const windowSizeEvent = () => {\n const onMount = () => {\n self.onChange()\n window.addEventListener('resize', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('resize', self.onChange)\n }\n\n const onChange = () => {\n self.callback()\n self.snapshot = [self]\n self.width = window.innerWidth\n self.height = window.innerHeight\n }\n\n const self = event({\n width: 1920,\n height: 1080,\n onChange,\n onMount,\n onClean,\n }) as EventState<WindowSizeState>\n\n self.snapshot = [self]\n\n return self\n}\n"],"mappings":"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","names":["react_exports","__export","getServerSnapshot","getSnapshot","subscribe","useBattery","useClipboard","useGeolocation","useMediaQuery","useOnline","useOrient","useWindowSize","__toCommonJS","import_reev","batteryEvent","self","battery","target","import_react","self","subscribe","callback","getSnapshot","useBattery","batteryEvent","ret","import_react","import_reev","clipboardEvent","self","clipboard","self","subscribe","callback","getSnapshot","useClipboard","clipboardEvent","ret","import_react","import_reev","geolocationEvent","self","geolocation","self","subscribe","callback","getSnapshot","useGeolocation","geolocationEvent","ret","useMediaQuery","import_react","import_reev","onlineEvent","self","self","subscribe","callback","getSnapshot","useOnline","onlineEvent","ret","import_react","import_reev","Vec","vec3","x","y","z","out","addVec3","a","b","subVec3","orientEvent","initValues","self","vec3","onChange","e","subVec3","addVec3","onMount","onClean","self","subscribe","callback","getSnapshot","getServerSnapshot","useOrient","orientEvent","ret","import_react","import_reev","windowSizeEvent","self","self","subscribe","callback","getSnapshot","useWindowSize","windowSizeEvent","ret"]}
package/dist/react.mjs ADDED
@@ -0,0 +1,2 @@
1
+ import{event as M}from"reev";var f=()=>{let e=M({onChange:async()=>{let n=await navigator.getBattery();e.level=n.level,e.charging=n.charging,e.chargingTime=n.chargingTime,e.dischargingTime=n.dischargingTime,e.snapshot=[e],e.callback()},onMount:()=>{navigator.getBattery().then(n=>{e.target=n,n.addEventListener("levelchange",e.onChange),n.addEventListener("chargingchange",e.onChange)}),e.onChange()},onClean:()=>{let n=e.target;n&&(n.removeEventListener("levelchange",e.onChange),n.removeEventListener("chargingchange",e.onChange))}});return e.snapshot=[e],e};import{useSyncExternalStore as V}from"react";var s,O=(t=()=>{})=>(s({callback:t}).onMount(),()=>s({callback:t}).onClean()),g=()=>s.snapshot,Z=()=>{s||(s=f());let[t]=V(O,g,g);return t};import{useSyncExternalStore as _}from"react";import{event as z}from"reev";var d=()=>{let e=z({clipboard:"",onChange:()=>{navigator.clipboard.readText().then(n=>{e.clipboard=n,e.snapshot=[e],e.callback()})},onMount:()=>{window.addEventListener("copy",e.onChange),window.addEventListener("cut",e.onChange),window.addEventListener("paste",e.onChange)},onClean:()=>{window.removeEventListener("copy",e.onChange),window.removeEventListener("cut",e.onChange),window.removeEventListener("paste",e.onChange)}});return e.snapshot=[e],e};var c,B=(t=()=>{})=>(c({callback:t}).onMount(),()=>c({callback:t}).onClean()),S=()=>c.snapshot,ae=()=>{c||(c=d());let[t]=_(B,S,S);return t};import{useSyncExternalStore as G}from"react";import{event as W}from"reev";var u=()=>{let e=W({onChange:()=>{navigator.geolocation.getCurrentPosition(n=>{e.geolocation=n,e.snapshot=[e],e.callback()})},onMount:()=>{e.onChange(),e.id=navigator.geolocation.watchPosition(e.onChange)},onClean:()=>{typeof e.id<"u"&&navigator.geolocation.clearWatch(e.id)}});return e.snapshot=[e],e};var p,T=(t=()=>{})=>(p({callback:t}).onMount(),()=>p({callback:t}).onClean()),E=()=>p.snapshot,le=()=>{p||(p=u());let[t]=G(T,E,E);return t};var fe=()=>{};import{useSyncExternalStore as F}from"react";import{event as A}from"reev";var C=()=>{let e=A({onChange:()=>{e.online=navigator.onLine,e.snapshot=[e],e.callback()},onMount:()=>{e.onChange(),window.addEventListener("online",e.onChange),window.addEventListener("offline",e.onChange)},onClean:()=>{window.removeEventListener("online",e.onChange),window.removeEventListener("offline",e.onChange)}});return e.snapshot=[e],e};var m,P=(t=()=>{})=>(m({callback:t}).onMount(),()=>m({callback:t}).onClean()),w=()=>m.snapshot,we=()=>{m||(m=C());let[t]=F(P,w,w);return t};import{useSyncExternalStore as j}from"react";import{event as Q}from"reev";var H=typeof Float32Array<"u"?Float32Array:Array,a=(t=0,r=0,o=0,e=new H(3))=>(e[0]=t,e[1]=r,e[2]=o,e),h=(t,r,o=a())=>(o[0]=t[0]+r[0],o[1]=t[1]+r[1],o[2]=t[2]+r[2],o),x=(t,r,o=a())=>(o[0]=t[0]-r[0],o[1]=t[1]-r[1],o[2]=t[2]-r[2],o);var y=()=>{let t=()=>{n.active=n._active=!1,a(0,0,0,n.value),a(0,0,0,n._value),a(0,0,0,n.delta),a(0,0,0,n.movement)},r=l=>{n._active=n.active,n._value=n.value,n.value=[90-(l.alpha??90),l.beta??0,l.gamma??0],n._active&&(x(n.value,n._value,n.delta),h(n.offset,n.delta,n.offset),h(n.offset,n.delta,n.movement)),n.snapshot=[n],n.callback()},o=()=>{t(),n.active=!0,window.addEventListener("deviceOrient",n.onChange)},e=()=>{t(),window.removeEventListener("deviceOrient",n.onChange)},n=Q({active:!1,_active:!1,_value:a(),value:a(),delta:a(),offset:a(),movement:a(),onMount:o,onClean:e,onChange:r});return n.snapshot=[n],n};var i,k=(t=()=>{})=>(i({callback:t}).onMount(),()=>i({callback:t}).onClean()),q=()=>i.snapshot,D=()=>i.snapshot,_e=()=>{i||(i=y());let[t]=j(k,q,D);return t};import{useSyncExternalStore as J}from"react";import{event as I}from"reev";var b=()=>{let e=I({width:1920,height:1080,onChange:()=>{e.callback(),e.snapshot=[e],e.width=window.innerWidth,e.height=window.innerHeight},onMount:()=>{e.onChange(),window.addEventListener("resize",e.onChange)},onClean:()=>{window.removeEventListener("resize",e.onChange)}});return e.snapshot=[e],e};var v,K=(t=()=>{})=>(v({callback:t}).onMount(),()=>v({callback:t}).onClean()),L=()=>v.snapshot,Pe=()=>{v||(v=b());let[t]=J(K,L,L);return t};export{D as getServerSnapshot,q as getSnapshot,k as subscribe,Z as useBattery,ae as useClipboard,le as useGeolocation,fe as useMediaQuery,we as useOnline,_e as useOrient,Pe as useWindowSize};
2
+ //# sourceMappingURL=react.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../battery/index.ts","../battery/react.ts","../clipboard/react.ts","../clipboard/index.ts","../geolocation/react.ts","../geolocation/index.ts","../mediaQuery/react.ts","../online/react.ts","../online/index.ts","../orient/react.ts","../orient/index.ts","../orient/utils.ts","../windowSize/react.ts","../windowSize/index.ts"],"sourcesContent":["import { EventState, event } from 'reev'\nimport { BatteryState } from './types'\n\nexport const batteryEvent = () => {\n const onChange = async () => {\n // @ts-ignore\n const battery = await navigator.getBattery()\n self.level = battery.level\n self.charging = battery.charging\n self.chargingTime = battery.chargingTime\n self.dischargingTime = battery.dischargingTime\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n // @ts-ignore\n navigator.getBattery().then((target: any) => {\n self.target = target\n target.addEventListener('levelchange', self.onChange)\n target.addEventListener('chargingchange', self.onChange)\n })\n self.onChange()\n }\n\n const onClean = () => {\n const target = self.target\n if (!target) return\n target.removeEventListener('levelchange', self.onChange)\n target.removeEventListener('chargingchange', self.onChange)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<BatteryState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { batteryEvent } from '.'\nimport { useSyncExternalStore } from 'react'\nimport { BatteryState } from './types'\nimport { EventState } from 'reev'\n\nlet self: EventState<BatteryState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useBattery = () => {\n if (!self) self = batteryEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { useSyncExternalStore } from 'react'\nimport { clipboardEvent } from '.'\nimport { EventState } from 'reev'\nimport { ClipboardState } from './types'\n\nlet self: EventState<ClipboardState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useClipboard = () => {\n if (!self) self = clipboardEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { ClipboardState } from './types'\n\nexport const clipboardEvent = () => {\n const onChange = () => {\n navigator.clipboard.readText().then((clipboard) => {\n self.clipboard = clipboard\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n window.addEventListener('copy', self.onChange)\n window.addEventListener('cut', self.onChange)\n window.addEventListener('paste', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('copy', self.onChange)\n window.removeEventListener('cut', self.onChange)\n window.removeEventListener('paste', self.onChange)\n }\n\n const self = event({\n clipboard: '',\n onChange,\n onMount,\n onClean,\n }) as EventState<ClipboardState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { EventState } from 'reev'\nimport { useSyncExternalStore } from 'react'\nimport { GeolocationState } from './types'\nimport { geolocationEvent } from '.'\n\nlet self: EventState<GeolocationState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useGeolocation = () => {\n if (!self) self = geolocationEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { GeolocationState } from './types'\n\nexport const geolocationEvent = () => {\n const onChange = () => {\n navigator.geolocation.getCurrentPosition((geolocation) => {\n self.geolocation = geolocation\n self.snapshot = [self]\n self.callback()\n })\n }\n\n const onMount = () => {\n self.onChange()\n self.id = navigator.geolocation.watchPosition(self.onChange)\n }\n\n const onClean = () => {\n if (typeof self.id !== 'undefined')\n navigator.geolocation.clearWatch(self.id)\n }\n\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<GeolocationState>\n\n self.snapshot = [self]\n\n return self\n}\n","export const useMediaQuery = () => {}\n","import { useSyncExternalStore } from 'react'\nimport { onlineEvent } from '.'\nimport { EventState } from 'reev'\nimport { OnlineState } from './types'\n\nlet self: EventState<OnlineState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useOnline = () => {\n if (!self) self = onlineEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { OnlineState } from './types'\nimport { EventState, event } from 'reev'\n\nexport const onlineEvent = () => {\n const onChange = () => {\n self.online = navigator.onLine\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n self.onChange()\n window.addEventListener('online', self.onChange)\n window.addEventListener('offline', self.onChange)\n }\n const onClean = () => {\n window.removeEventListener('online', self.onChange)\n window.removeEventListener('offline', self.onChange)\n }\n const self = event({\n onChange,\n onMount,\n onClean,\n }) as EventState<OnlineState>\n\n self.snapshot = [self]\n\n return self\n}\n","import { useSyncExternalStore } from 'react'\nimport { orientEvent } from '.'\nimport { OrientState } from './types'\nimport { EventState } from 'reev'\n\nlet self: EventState<OrientState>\n\nexport const subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nexport const getSnapshot = () => self.snapshot\n\nexport const getServerSnapshot = () => self.snapshot\n\nexport const useOrient = () => {\n if (!self) self = orientEvent()\n const [ret] = useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n )\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { OrientState } from './types'\nimport { addVec3, subVec3, vec3 } from './utils'\n\nexport const orientEvent = () => {\n const initValues = () => {\n self.active = self._active = false\n vec3(0, 0, 0, self.value)\n vec3(0, 0, 0, self._value)\n vec3(0, 0, 0, self.delta)\n vec3(0, 0, 0, self.movement)\n }\n\n const onChange = (e: any) => {\n self._active = self.active\n self._value = self.value\n self.value = [90 - (e.alpha ?? 90), e.beta ?? 0, e.gamma ?? 0]\n if (self._active) {\n subVec3(self.value, self._value, self.delta)\n addVec3(self.offset, self.delta, self.offset)\n addVec3(self.offset, self.delta, self.movement)\n }\n self.snapshot = [self]\n self.callback()\n }\n\n const onMount = () => {\n initValues()\n self.active = true\n window.addEventListener('deviceOrient', self.onChange)\n }\n\n const onClean = () => {\n initValues()\n window.removeEventListener('deviceOrient', self.onChange)\n }\n\n const self = event({\n active: false,\n _active: false,\n _value: vec3(),\n value: vec3(),\n delta: vec3(),\n offset: vec3(),\n movement: vec3(),\n onMount,\n onClean,\n onChange,\n }) as EventState<OrientState>\n\n self.snapshot = [self]\n\n return self\n}\n","/**\n * CALCULATE VECTOR\n * REF: https://github.com/toji/gl-matrix/blob/master/src/vec2.js\n */\n\nconst Vec = typeof Float32Array !== 'undefined' ? Float32Array : Array\n\nexport const vec3 = (x = 0, y = 0, z = 0, out = new Vec(3)): Vec3 => {\n out[0] = x\n out[1] = y\n out[2] = z\n return out as Vec3\n}\n\nexport type Vec3 = [x: number, y: number, z: number]\n\nexport const addVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] + b[0]\n out[1] = a[1] + b[1]\n out[2] = a[2] + b[2]\n return out\n}\n\nexport const subVec3 = (a: Vec3, b: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0] - b[0]\n out[1] = a[1] - b[1]\n out[2] = a[2] - b[2]\n return out\n}\n\nexport const cpVec3 = (a: Vec3, out = vec3()): Vec3 => {\n out[0] = a[0]\n out[1] = a[1]\n out[2] = a[2]\n return out\n}\n","import { useSyncExternalStore } from 'react'\nimport { windowSizeEvent } from './index'\nimport { WindowSizeState } from './types'\nimport { EventState } from 'reev'\n\nlet self: EventState<WindowSizeState>\n\nconst subscribe = (callback = () => {}) => {\n self({ callback }).onMount()\n return () => self({ callback }).onClean()\n}\n\nconst getSnapshot = () => self.snapshot\n\nexport const useWindowSize = () => {\n if (!self) self = windowSizeEvent()\n const [ret] = useSyncExternalStore(subscribe, getSnapshot, getSnapshot)\n return ret\n}\n","import { EventState, event } from 'reev'\nimport { WindowSizeState } from './types'\n\nexport const windowSizeEvent = () => {\n const onMount = () => {\n self.onChange()\n window.addEventListener('resize', self.onChange)\n }\n\n const onClean = () => {\n window.removeEventListener('resize', self.onChange)\n }\n\n const onChange = () => {\n self.callback()\n self.snapshot = [self]\n self.width = window.innerWidth\n self.height = window.innerHeight\n }\n\n const self = event({\n width: 1920,\n height: 1080,\n onChange,\n onMount,\n onClean,\n }) as EventState<WindowSizeState>\n\n self.snapshot = [self]\n\n return self\n}\n"],"mappings":"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","names":["event","batteryEvent","self","battery","target","useSyncExternalStore","self","subscribe","callback","getSnapshot","useBattery","batteryEvent","ret","useSyncExternalStore","event","clipboardEvent","self","clipboard","self","subscribe","callback","getSnapshot","useClipboard","clipboardEvent","ret","useSyncExternalStore","useSyncExternalStore","event","geolocationEvent","self","geolocation","self","subscribe","callback","getSnapshot","useGeolocation","geolocationEvent","ret","useSyncExternalStore","useMediaQuery","useSyncExternalStore","event","onlineEvent","self","self","subscribe","callback","getSnapshot","useOnline","onlineEvent","ret","useSyncExternalStore","useSyncExternalStore","event","Vec","vec3","x","y","z","out","addVec3","a","b","subVec3","orientEvent","initValues","self","vec3","onChange","e","subVec3","addVec3","onMount","onClean","event","self","subscribe","callback","getSnapshot","getServerSnapshot","useOrient","orientEvent","ret","useSyncExternalStore","useSyncExternalStore","event","windowSizeEvent","self","self","subscribe","callback","getSnapshot","useWindowSize","windowSizeEvent","ret","useSyncExternalStore"]}
@@ -0,0 +1,70 @@
1
+ interface BatteryState {
2
+ snapshot: [BatteryState];
3
+ target: any;
4
+ level: number;
5
+ charging: boolean;
6
+ chargingTime: number;
7
+ dischargingTime: number;
8
+ callback(): void;
9
+ onChange(): void;
10
+ onMount(): void;
11
+ onClean(): void;
12
+ }
13
+
14
+ interface ClipboardState {
15
+ snapshot: [ClipboardState];
16
+ clipboard: string;
17
+ callback(): void;
18
+ onChange(): void;
19
+ onMount(): void;
20
+ onClean(): void;
21
+ }
22
+
23
+ interface GeolocationState {
24
+ snapshot: [GeolocationState];
25
+ geolocation: any;
26
+ id: number;
27
+ callback(): void;
28
+ onChange(): void;
29
+ onMount(): void;
30
+ onClean(): void;
31
+ }
32
+
33
+ interface OnlineState {
34
+ snapshot: [OnlineState];
35
+ online: boolean;
36
+ callback(): void;
37
+ onChange(): void;
38
+ onMount(): void;
39
+ onClean(): void;
40
+ }
41
+
42
+ declare type Vec3 = [x: number, y: number, z: number];
43
+
44
+ interface OrientState {
45
+ snapshot: [OrientState];
46
+ active: boolean;
47
+ _active: boolean;
48
+ _value: Vec3;
49
+ value: Vec3;
50
+ delta: Vec3;
51
+ offset: Vec3;
52
+ movement: Vec3;
53
+ memo: any;
54
+ callback(): void;
55
+ onChange(): void;
56
+ onMount(): void;
57
+ onClean(): void;
58
+ }
59
+
60
+ interface WindowSizeState {
61
+ snapshot: [WindowSizeState];
62
+ width: number;
63
+ height: number;
64
+ callback(): void;
65
+ onChange(): void;
66
+ onMount(): void;
67
+ onClean(): void;
68
+ }
69
+
70
+ export { BatteryState as B, ClipboardState as C, GeolocationState as G, OnlineState as O, WindowSizeState as W, OrientState as a };
package/package.json ADDED
@@ -0,0 +1,93 @@
1
+ {
2
+ "name": "rexr",
3
+ "author": "tseijp",
4
+ "license": "MIT",
5
+ "version": "0.1.0",
6
+ "private": false,
7
+ "sideEffect": false,
8
+ "publishConfig": {
9
+ "access": "public"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/tseijp/reev/issues"
13
+ },
14
+ "repository": "tseijp/reev",
15
+ "homepage": "https://reev.tsei.jp",
16
+ "keywords": [
17
+ "react",
18
+ "reactjs",
19
+ "reactive",
20
+ "event",
21
+ "global",
22
+ "state",
23
+ "store",
24
+ "hooks",
25
+ "solid",
26
+ "solidjs",
27
+ "tiny",
28
+ "typescript"
29
+ ],
30
+ "files": [
31
+ "dist/**/*.{js,ts,mjs,mts,map}",
32
+ "packages.json",
33
+ "README.md"
34
+ ],
35
+ "exports": {
36
+ "./packages.json": "./packages.json",
37
+ ".": {
38
+ "types": "./dist/index.d.mts",
39
+ "import": {
40
+ "types": "./dist/index.d.mts",
41
+ "default": "./dist/index.mjs"
42
+ },
43
+ "module": {
44
+ "types": "./dist/index.d.mts",
45
+ "default": "./dist/index.mjs"
46
+ },
47
+ "require": "./dist/index.js",
48
+ "default": "./dist/index.js"
49
+ },
50
+ "./*": {
51
+ "types": "./dist/index.d.mts",
52
+ "import": {
53
+ "types": "./dist/index.d.mts",
54
+ "default": "./dist/index.mjs"
55
+ },
56
+ "module": {
57
+ "types": "./dist/index.d.mts",
58
+ "default": "./dist/index.mjs"
59
+ },
60
+ "require": "./dist/index.js",
61
+ "default": "./dist/index.js"
62
+ },
63
+ "./react": {
64
+ "types": "./dist/react.d.mts",
65
+ "import": {
66
+ "types": "./dist/react.d.mts",
67
+ "default": "./dist/react.mjs"
68
+ },
69
+ "module": {
70
+ "types": "./dist/react.d.mts",
71
+ "default": "./dist/react.mjs"
72
+ },
73
+ "require": "./dist/react.js",
74
+ "default": "./dist/react.js"
75
+ },
76
+ "./react/*": {
77
+ "types": "./dist/react.d.mts",
78
+ "import": {
79
+ "types": "./dist/react.d.mts",
80
+ "default": "./dist/react.mjs"
81
+ },
82
+ "module": {
83
+ "types": "./dist/react.d.mts",
84
+ "default": "./dist/react.mjs"
85
+ },
86
+ "require": "./dist/react.js",
87
+ "default": "./dist/react.js"
88
+ }
89
+ },
90
+ "devDependencies": {
91
+ "reev": "*"
92
+ }
93
+ }