├── .editorconfig ├── .gitattributes ├── .gitignore ├── .jshintignore ├── .jshintrc ├── .travis.yml ├── README.md ├── SUMMARY.md ├── book.json ├── docs ├── change-control.md ├── serialization.md ├── state-pattern.md └── strict-typing.md ├── index.js ├── karma.conf.js ├── lib ├── classFactories │ ├── mArrayFactory.js │ ├── mGetterFactory.js │ ├── mMutatorFactory.js │ ├── mObjectFactory.js │ ├── mPrimitiveFactoryFactory.js │ ├── mRefFactory.js │ ├── mStateFactory.js │ └── mSugarFactory.js ├── classes │ ├── mArray.js │ ├── mObject.js │ └── mState.js └── utils │ ├── control.js │ ├── makeReadOnlyFn.js │ ├── overridableSnapshot.js │ ├── protoMapper.js │ └── traverseStates.js ├── npm-shrinkwrap.json ├── package.json └── test ├── .jshintrc ├── classFactories ├── array.js ├── getter.js ├── mutator.js ├── object.js ├── primitives.js ├── ref.js ├── state.js └── sugar.js ├── control.js ├── docs.js ├── protoMapper.js └── snapshot.js /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules/ 2 | npm-debug.log 3 | browser.js 4 | 5 | .idea 6 | -------------------------------------------------------------------------------- /.jshintignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | browser.js 3 | -------------------------------------------------------------------------------- /.jshintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/.jshintrc -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/.travis.yml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/README.md -------------------------------------------------------------------------------- /SUMMARY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/SUMMARY.md -------------------------------------------------------------------------------- /book.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/book.json -------------------------------------------------------------------------------- /docs/change-control.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/docs/change-control.md -------------------------------------------------------------------------------- /docs/serialization.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/docs/serialization.md -------------------------------------------------------------------------------- /docs/state-pattern.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/docs/state-pattern.md -------------------------------------------------------------------------------- /docs/strict-typing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/docs/strict-typing.md -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/index.js -------------------------------------------------------------------------------- /karma.conf.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/karma.conf.js -------------------------------------------------------------------------------- /lib/classFactories/mArrayFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mArrayFactory.js -------------------------------------------------------------------------------- /lib/classFactories/mGetterFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mGetterFactory.js -------------------------------------------------------------------------------- /lib/classFactories/mMutatorFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mMutatorFactory.js -------------------------------------------------------------------------------- /lib/classFactories/mObjectFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mObjectFactory.js -------------------------------------------------------------------------------- /lib/classFactories/mPrimitiveFactoryFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mPrimitiveFactoryFactory.js -------------------------------------------------------------------------------- /lib/classFactories/mRefFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mRefFactory.js -------------------------------------------------------------------------------- /lib/classFactories/mStateFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mStateFactory.js -------------------------------------------------------------------------------- /lib/classFactories/mSugarFactory.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classFactories/mSugarFactory.js -------------------------------------------------------------------------------- /lib/classes/mArray.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classes/mArray.js -------------------------------------------------------------------------------- /lib/classes/mObject.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classes/mObject.js -------------------------------------------------------------------------------- /lib/classes/mState.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/classes/mState.js -------------------------------------------------------------------------------- /lib/utils/control.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/utils/control.js -------------------------------------------------------------------------------- /lib/utils/makeReadOnlyFn.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/utils/makeReadOnlyFn.js -------------------------------------------------------------------------------- /lib/utils/overridableSnapshot.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/utils/overridableSnapshot.js -------------------------------------------------------------------------------- /lib/utils/protoMapper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/utils/protoMapper.js -------------------------------------------------------------------------------- /lib/utils/traverseStates.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/lib/utils/traverseStates.js -------------------------------------------------------------------------------- /npm-shrinkwrap.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/npm-shrinkwrap.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/package.json -------------------------------------------------------------------------------- /test/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../.jshintrc", 3 | "mocha" : true 4 | } 5 | -------------------------------------------------------------------------------- /test/classFactories/array.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/array.js -------------------------------------------------------------------------------- /test/classFactories/getter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/getter.js -------------------------------------------------------------------------------- /test/classFactories/mutator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/mutator.js -------------------------------------------------------------------------------- /test/classFactories/object.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/object.js -------------------------------------------------------------------------------- /test/classFactories/primitives.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/primitives.js -------------------------------------------------------------------------------- /test/classFactories/ref.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/ref.js -------------------------------------------------------------------------------- /test/classFactories/state.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/state.js -------------------------------------------------------------------------------- /test/classFactories/sugar.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/classFactories/sugar.js -------------------------------------------------------------------------------- /test/control.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/control.js -------------------------------------------------------------------------------- /test/docs.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/docs.js -------------------------------------------------------------------------------- /test/protoMapper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/protoMapper.js -------------------------------------------------------------------------------- /test/snapshot.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CardForest/master-class/HEAD/test/snapshot.js --------------------------------------------------------------------------------