1.2.32 • Published 7 years ago

bitbox v1.2.32

Weekly downloads
9
License
Apache2
Repository
github
Last release
7 years ago

bitbox

// create observable app box
const app = bitbox(observable)

// some helpers
const inc = count => count + 1 // increment operator
const set = (box, value) => obj => bitbox.set(obj, box, value) // setter factory

// target object
const obj = {
	name: 'bitbox',
	count: 0
}

// mapping
const map = bitbox({
	count: app.count,
	name: app.name(name => name.toUpperCase())
})

// connect with target
const props = map(obj)

// observe changes to mapped props
observe(() => console.log(`${props.name} - count(${props.count})`))

// set / classic
app(obj).count++
// use operator
app.count(inc, obj)
// action factory, if no target argument
app.count(inc) // -> (obj)

// using handler / set(target, box/path, value)
bitbox.set(obj, app.count, 10)
bitbox.set(obj, app.count, app.count(inc))

// array path
bitbox.set(obj, ['app', 'count'], ['app', 'count', inc])

// factory
set(app.name, `Demo App`) // -> (obj)

// conditional
set(app.name, app.count(n => n > 10 ? `Foo` : `Bar`))

// select...
app(JSON.stringify, console.log, obj)
yarn start
1.2.32

7 years ago

1.2.31

7 years ago

1.2.3

7 years ago

1.2.28

8 years ago

1.2.27

8 years ago

1.2.26

8 years ago

1.2.25

8 years ago

1.2.24

8 years ago

1.2.23

8 years ago

1.2.22

8 years ago

1.2.21

8 years ago

1.2.20

8 years ago

1.2.19

8 years ago

1.2.17

8 years ago

1.0.52

8 years ago

1.0.51

8 years ago

1.0.50

8 years ago

1.0.49

8 years ago

1.0.48

8 years ago

1.0.47

8 years ago

1.0.46

8 years ago

1.0.45

8 years ago

1.0.44

8 years ago

1.0.43

8 years ago

1.0.42

8 years ago

1.0.41

8 years ago

1.0.40

8 years ago

1.0.39

8 years ago

1.0.35

8 years ago

1.0.34

8 years ago

1.0.33

8 years ago

1.0.32

8 years ago

1.0.31

8 years ago

1.0.30

8 years ago

1.0.29

8 years ago

1.0.28

8 years ago

1.0.27

8 years ago

1.0.25

8 years ago

1.0.24

8 years ago

1.0.23

8 years ago

1.0.22

8 years ago

1.0.21

8 years ago

1.0.20

8 years ago

1.0.19

8 years ago

1.0.18

8 years ago

1.0.17

8 years ago

1.0.16

8 years ago

1.0.15

8 years ago

1.0.14

8 years ago

1.0.13

8 years ago

1.0.12

8 years ago

1.0.8

8 years ago

1.0.7

8 years ago

1.0.6

8 years ago

1.0.5

8 years ago

1.0.4

8 years ago

1.0.3

8 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago