plastikfan / jaxine Goto Github PK
View Code? Open in Web Editor NEWAnother JSON to XML converter with inheritable attributes and custom element consolidation
License: MIT License
Another JSON to XML converter with inheritable attributes and custom element consolidation
License: MIT License
Conversion to typescript is required because of the need to use interfaces which of course don't exist in JS. This may not work out well because of ramda, but its worth trying it.
converter.buildElement accepts a getOptions calback which returns the build options. The build options currrently allows for only id, recurse and discards. Options needs to be expanded to allow further customisations eg the name of the _children, element name(_) attributes plus others.
Flesh out the README with a full description and provide examples for usage.
The export is currently setup to export just a single function. This does not scale. If another function were to be introduced, any downstream clients would have to change their require statement. This needs to be fixed before being published.
Since this repo was created out of a component embedded inside another repo, there are still some inappropriate comments and in-correct variable naming.
eg, any variable named 'inherits' should be renamed to recurse, since recurse is the generic name, whereas inherits can be the value of what is set in recurse.
Publish jaxine to npm
Introduce a class that wraps jaxine functionality. This is in preparation for converting to typescript and allow jaxine to be properly injected into client via a composition root.
"test" and "validate" entries are in tbd state. Need to put back proper implementation.
Not working when enabled. TypeError occurs and the following is the stack trace:
TypeError: fn is not a function
at find (node_modules/ramda/src/find.js:37:9)
at /Users/Plastikfan/dev/github/js/jaxine/node_modules/ramda/src/internal/_dispatchable.js:41:15
at /Users/Plastikfan/dev/github/js/jaxine/node_modules/ramda/src/internal/_curry2.js:22:18
at f1 (node_modules/ramda/src/internal/_curry1.js:18:17)
at buildChildren (webpack:///./lib/converter.impl.js?:318:57)
at buildElementWithSpec (webpack:///./lib/converter.impl.js?:30:15)
at XWrap.R.reduce [as f] (webpack:///./lib/converter.impl.js?:280:19)
at XWrap.@@transducer/step (node_modules/ramda/src/internal/_xwrap.js:12:17)
at _arrayReduce (node_modules/ramda/src/internal/_reduce.js:11:34)
at _reduce (node_modules/ramda/src/internal/_reduce.js:45:12)
at /Users/Plastikfan/dev/github/js/jaxine/node_modules/ramda/src/internal/_curry3.js:32:18
at f1 (node_modules/ramda/src/internal/_curry1.js:18:17)
at buildChildren (webpack:///./lib/converter.impl.js?:282:11)
at Object.buildElementWithSpec (webpack:///./lib/converter.impl.js?:30:15)
at R.curry (webpack:///./lib/converter.js?:97:15)
at /Users/Plastikfan/dev/github/js/jaxine/node_modules/ramda/src/internal/_curryN.js:37:27
at /Users/Plastikfan/dev/github/js/jaxine/node_modules/ramda/src/internal/_arity.js:22:19
at Object.buildElement (webpack:///./lib/converter.js?:114:10)
at Context.it (webpack:///./tests/converter.impl.spec.js?:50:30)
The package .json main entry points to index.js. However the index.js file lives in lib/index.js. So we either need to move the file or redefine the main entry. I think the convention is that the index should live in the root directory, so probably best to move the file.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.