quantmind / d3-view Goto Github PK
View Code? Open in Web Editor NEWd3 plugin for :sunny: web interfaces
License: BSD 3-Clause "New" or "Revised" License
d3 plugin for :sunny: web interfaces
License: BSD 3-Clause "New" or "Revised" License
Much better then importing warn all the time.
It allows to log with the component namespace too!!!
An idea is to specify the mounted callback for a component directly in the dom.
<my-domponent mounted="$callback"></my-component>
and in javascript
vm = d3.view({
model: {
$callback: function (cm) {...}
}
});
In this way one could organise the view model as the application object.
Add ability to integrate validate.js with the form plugin.
When the $isValid()
form method is called, even if it wasn't called by a submit, it marks the form as dirty, i.e. as it was submitted.
This behaviour should be handled by the $setSubmit()
method.
Currently the bin/src code builds the view-require
command. It would be useful to have a javascript API too which the command uses.
Allow the ability to customise the size of the form input when using the bootstrap plugin. Large, default and small, https://v4-alpha.getbootstrap.com/components/forms/#control-sizing
Currently the d3-for
directive only use the enter method for creating element in the loop.
We should use the selection merge method to merge the enter
and update
selection after a data-join.
Export viewSelect
which accept selectors, html element and d3-selection.
The d3-for
directive does not remove elements from the DOM when the array of items is reduced in size.
Remove viewMount function exported by src/mount.js
Not sure why we still need the function
The test suite randomly fails when run in circleci with the following error:
Some of your tests did a full page reload!
Using a directive with the following expression in a for loop directive (with tab
being the for-loop item)
d3-active='$active(tab.href, currentUrl)'
where the currentUrl
is a reactive property of the parent element, it fails to update on currentUrl
changes. This could be caused by the for loop or not.
This looks like an bug with d3-view unfortunately.
Investigate the possibility of adding a flux like store to the root view.
The root view is in effect a store, we may want to formalize that?
d3-view can render templates with handlebar.
We need tests for it
Firefox tests are switched off since we started building in circleci version 2.
Firefox bundled with circleci images is too old and fails tests.
Updating to the new firefox as we did in circleci version 1 does not work because the browser does not start for some bizarre reasons.
marko-js claims to be a fast template engine.
Investigate a possible integration via the compileTemplate
method in viewProviders
.
Add the ability to return strings from the component render function.
function mycomponent () {
return (`
<p>simple example</p>
`);
}
Use one src directory only.
The binding algorithm in directive needs to be refactored to account for
Website with documentation at https://docs.giottojs.org
Add an example on how to handle the required field with bootstrap plugin (the plugin adds the form-control-required
class to the element).
For some reason the asyncGenerator
is included in the bundle.
It shouldn't be, it is not used anywhere.
Not sure the inheritance between parent and child is needed.
One alternative is to specify attributes which are going to be inherited (passed on to the children).
$child
method (prototype inheritance)$new
pass models
attributes only to the child modelIt looks like there is an issue with nested for loops.
More details to follow
PhantomJS tests fail, currently switched off in Circle CI.
Only one test is problematic but difficult to fix
Using casperjs?
When the field.directive
is specified, add the attributes to the input field
Add the require methods to component and a centralised library resource for requiring new module in the browser.
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.