g1 issueshttps://code.gramener.com/cto/g1/-/issues2019-12-05T11:15:48Zhttps://code.gramener.com/cto/g1/-/issues/176add a new row with empty data for g1.formhandler2019-12-05T11:15:48ZPratap Vardhanpratap.vardhan@gramener.comadd a new row with empty data for g1.formhandler### Summary
We can't add a new row with empty data for g1.formhandler
### Steps to reproduce
- Create a csv with columns alone and hook it up with formhandler### Summary
We can't add a new row with empty data for g1.formhandler
### Steps to reproduce
- Create a csv with columns alone and hook it up with formhandlerhttps://code.gramener.com/cto/g1/-/issues/175FormHandler filters are not working with multiple tables in a single page2020-02-04T07:11:19ZBharat Rbharath.r@gramener.comFormHandler filters are not working with multiple tables in a single page**FormHandler filters are not working with multiple tables in a single page**
- When applying filters to one table it is applying to all tables by default
- And namespaces are applying only when the namespace is coming from the URL
**S...**FormHandler filters are not working with multiple tables in a single page**
- When applying filters to one table it is applying to all tables by default
- And namespaces are applying only when the namespace is coming from the URL
**Suggested FIX:**
- When a `namespace` is given to table any filter in the url should apply along with the `namespace`
For Ex.
```
$('.fh_table').formHandler({
namespace: 'name'
})
```
The url for the filters of the above snippet should be `?name:key=value`Bharat Rbharath.r@gramener.comBharat Rbharath.r@gramener.comhttps://code.gramener.com/cto/g1/-/issues/174g1.formhandler editable table to support multi-select in dropdowns2019-07-31T08:51:03ZTejeshg1.formhandler editable table to support multi-select in dropdownsExpose option for more low level spec to support various third-party dropdown components.Expose option for more low level spec to support various third-party dropdown components.https://code.gramener.com/cto/g1/-/issues/173Move g1.formhandler table , g1.mapviewer modules into separate repos2019-06-26T01:52:32ZTejeshMove g1.formhandler table , g1.mapviewer modules into separate reposWe want to break up g1 into independent repositories. This will popularize g1 components because:
- People prefer libraries with a single purpose
- They are more likely to use it (and contribute back) since the learning curve is less
A...We want to break up g1 into independent repositories. This will popularize g1 components because:
- People prefer libraries with a single purpose
- They are more likely to use it (and contribute back) since the learning curve is less
Approach:
- `mapviewer`: mapviewer.js, leaflet-utils.js
- `urlfilter`: url.js, urlfilter.js, urlchange.js, ajaxchain.js
- `some template library`: template.js
- `sanddance`: sanddance.js
- `g1`: Gramex specific components:
- datafilter.js
- formhandler.js
- translate.js
- ... and other components which we may re-package later
- dropdown.js
- scale.js
- types.js
- highlight.js
- search.js
- fuzzysearch.js
- TODO: Find out how to handle dependencies, e.g. event.js.
Note: g1 will continue to import these libraries and function as before -- fully backward compatible.
### Approach for mapviewer
- Create a repo: github.com/gramener/mapviewer
- Create an npm package called [mapviewer](https://www.npmjs.com/package/mapviewer) via this repo. This should export an ES6 module (src/mapviewer.js) and UMD module (dist/mapviewer.js) via package.json
- Migrate test cases
- Refactor g1 to use import the mapviewer package as an ES6 module
https://code.gramener.com/cto/g1/-/issues/170Async sub-templates fail sometimes2019-06-04T04:23:11ZS AnandAsync sub-templates fail sometimes@tejesh.p please see https://code.gramener.com/cto/g1/-/jobs/115982
The test case related to "$().template() loaded static async sub templates" fails -- though it passes sometimes (on the server).
Maybe because we're checking before th...@tejesh.p please see https://code.gramener.com/cto/g1/-/jobs/115982
The test case related to "$().template() loaded static async sub templates" fails -- though it passes sometimes (on the server).
Maybe because we're checking before the sub-template has loaded? Could you please explore the test case?TejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/167G1.formhandler editable table not working for radio/checkbox type input elements2019-05-09T10:21:26ZJPjaiprakash.siyyadri@gramener.comG1.formhandler editable table not working for radio/checkbox type input elementsPossible solutions:
Wrap all editable input elements inside a `<form>` tagPossible solutions:
Wrap all editable input elements inside a `<form>` tagTejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/166FormHandler Export downloading2019-05-02T08:10:54ZJPjaiprakash.siyyadri@gramener.comFormHandler Export downloadingThe export option should download the data in the same column order as we are showing in the table with title as column namesThe export option should download the data in the same column order as we are showing in the table with title as column namesTejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/165FormHandler input checkbox option is not working2019-05-02T06:06:28ZJPjaiprakash.siyyadri@gramener.comFormHandler input checkbox option is not workingThe requirement is to edit and show column data, which has yes or no values, as input type checkbox.
If it is yes the option should be checked else uncheckedThe requirement is to edit and show column data, which has yes or no values, as input type checkbox.
If it is yes the option should be checked else uncheckedhttps://code.gramener.com/cto/g1/-/issues/164Unable to deselect the selected sorted option2019-05-08T02:28:37ZAkash BarlaUnable to deselect the selected sorted option![sort_deselect](/uploads/a7bd6a42973c618f863c80da2cc68eb5/sort_deselect.gif)![sort_deselect](/uploads/a7bd6a42973c618f863c80da2cc68eb5/sort_deselect.gif)TejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/163Column filter is displaying multiple times in header when we hide the filter2019-05-08T02:28:28ZAkash BarlaColumn filter is displaying multiple times in header when we hide the filter![Column_hiding_issue](/uploads/5876b231e885375373c38129a3ed27fe/Column_hiding_issue.gif)![Column_hiding_issue](/uploads/5876b231e885375373c38129a3ed27fe/Column_hiding_issue.gif)TejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/162G1.datafilter does not filter undefined values2019-04-20T13:59:22ZTejeshG1.datafilter does not filter undefined values1.55TejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/161g1.formhandler refactor2019-05-08T02:28:20ZTejeshg1.formhandler refactor1. define hierarchy of hooks, make sure it is consistent
2. Examples & documentation
3. Refactor to develop faster1. define hierarchy of hooks, make sure it is consistent
2. Examples & documentation
3. Refactor to develop fasterTejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/160Mapviewer: cachedata function fails when data contains nested structure2019-03-31T06:20:50ZTejeshMapviewer: cachedata function fails when data contains nested structure`JSON.stringify, avoid TypeError: Converting circular structure to JSON`
https://stackoverflow.com/questions/11616630/json-stringify-avoid-typeerror-converting-circular-structure-to-json`JSON.stringify, avoid TypeError: Converting circular structure to JSON`
https://stackoverflow.com/questions/11616630/json-stringify-avoid-typeerror-converting-circular-structure-to-jsonTejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/158url.update should support a `replace` parameter2019-03-28T12:01:01ZKarmanya Aggarwalurl.update should support a `replace` parametercurrently with url.update we can add a key to the hash/query params, or update a key if it already exists. we cannot remove a key if it already exists, unless we explicitly call it with a del parameter, which only deletes.
Thus we shoul...currently with url.update we can add a key to the hash/query params, or update a key if it already exists. we cannot remove a key if it already exists, unless we explicitly call it with a del parameter, which only deletes.
Thus we should have a `replace` parameter which can
- add a key if it currently doesn't exist
- remove a key if it exists in hash/search but not in the update object
- update a key if it exists in both hash/search and update object with different values
```?a=1&b=1.update({b:2}, 'replace') -> ?b=2```
places this would be useful eg - if we have a formhandler url in a vega spec or something similar, and want to update it on hashchange to the new hash, we currently have to hardcode a version of the url in code and update it on hashchange.https://code.gramener.com/cto/g1/-/issues/157Formhandler Excel export options must enable downloading of entire dataset2019-03-12T05:50:13ZTejeshFormhandler Excel export options must enable downloading of entire datasetraised by @anvesh.dasariraised by @anvesh.dasarihttps://code.gramener.com/cto/g1/-/issues/155Formhandler - show _count, _limit, _offset also as filters.2019-03-04T03:51:04ZTejeshFormhandler - show _count, _limit, _offset also as filters.On changing pageSize, there is no way to clear the filter. Showing `_limit=` also in filters will help.
Same problem when applied filter `"Europe"`, goto page 2 and clear `"Europe"` filter.....Still shows _offset=1, no way to clear the ...On changing pageSize, there is no way to clear the filter. Showing `_limit=` also in filters will help.
Same problem when applied filter `"Europe"`, goto page 2 and clear `"Europe"` filter.....Still shows _offset=1, no way to clear the filter.
Other solution is to, On click of "clear all filters", remove `_offset=`https://code.gramener.com/cto/g1/-/issues/154Document FormHandler table issues2019-03-15T05:50:57ZS AnandDocument FormHandler table issues- [x] `link: false` or `link: function () { return false }` in a column should disable the link
- [x] `link: "?col=value"` supports custom filtering. For example, click on `name` column to filter by `?dir=<%- row.path %>`
- [ ] How can w...- [x] `link: false` or `link: function () { return false }` in a column should disable the link
- [x] `link: "?col=value"` supports custom filtering. For example, click on `name` column to filter by `?dir=<%- row.path %>`
- [ ] How can we add classes to specific column headers? (e.g. `text-right` only on numeric classes)
- [ ] How can we open links in a new window? Can we add a link class?
- [ ] How can we use FormHandler table with a JSON dataset (not a FormHandler URL)?
- [ ] How can we create a grid instead of a table?
- [ ] How can we customize just the grid cells?
- [ ] How can we customize just a few columns?
- [ ] How can we create editable tables with dropdown values, and customize their appearance?
- [ ] How can we create editable tables with checkboxes or radio buttons?
- [ ] How can we add custom actions?
- [ ] Show examples of theming (see https://www.smashingmagazine.com/2019/02/complex-web-tables/)https://code.gramener.com/cto/g1/-/issues/152data-target='pushState' not working as expected in g1 0.14.02019-04-23T03:47:52ZNaveen Manukondadata-target='pushState' not working as expected in g1 0.14.0```html
<div class="d-md-flex justify-content-md-between custom-w-1">
<div class="align-self-end">
<ul class="nav h1 mb-0 border-success border border-top-0 border-left-0 border-right-0">
<li class="nav-item ">
<a class=...```html
<div class="d-md-flex justify-content-md-between custom-w-1">
<div class="align-self-end">
<ul class="nav h1 mb-0 border-success border border-top-0 border-left-0 border-right-0">
<li class="nav-item ">
<a class="nav-link active urlfilter sm4 pb-2 text-secondary font-weight-bold pl-0 border-secondary border border-top-0 border-left-0 border-right-0 border-2" href="?view=summary" data-target="pushState">Summary <span class="d-block"> View</span></a>
</li>
<li class="nav-item">
<a class="nav-link sm4 pb-2 text-success font-weight-bold pr-0 urlfilter" href="?view=comparative" data-target="pushState"><span class="comparative-tab">Comparative</span> <span class="d-block"> View</span></a>
</li>
</ul>
</div>
</div>
```
When we click on Comparative View my page is reloading in latest **g1** version(0.14.0), Expected: Page reload must not happen because `data-target="pushState"`
It is working fine in **g1** version(0.13.1)1.54TejeshTejeshhttps://code.gramener.com/cto/g1/-/issues/151g1.formhandler unique value filtering - handling more than 100 unique values ...2019-02-19T13:53:12ZTejeshg1.formhandler unique value filtering - handling more than 100 unique values per column- If there are more than limit: values (default: 100), show up to limit items. Mention that "Only first {limit} items shown"- If there are more than limit: values (default: 100), show up to limit items. Mention that "Only first {limit} items shown"https://code.gramener.com/cto/g1/-/issues/150g1.formhandler - pick rows for edits2019-02-12T18:10:57ZTejeshg1.formhandler - pick rows for editscurrently edit mode highlights all rows for editing, this is slow on DOM and will be taxing for users with limited hardware configuration
a) if we add selectpicker class for a select element in edit mode, it takes forever and blocks an...currently edit mode highlights all rows for editing, this is slow on DOM and will be taxing for users with limited hardware configuration
a) if we add selectpicker class for a select element in edit mode, it takes forever and blocks any further browsing as it applies for all rows. ex: we've 4 select elements in a row and 300 odd rows.
raised by @bhanu.k1.52TejeshTejesh