Giter Site home page Giter Site logo

bryntum / support Goto Github PK

View Code? Open in Web Editor NEW
50.0 16.0 6.0 38 KB

An issues-only repository for the Bryntum project management component suite which includes powerful Grid, Scheduler, Calendar, Kanban Task Board and Gantt chart components all built in pure JS / CSS / TypeScript

Home Page: https://www.bryntum.com

bryntum gantt scheduler grid kanban calendar project-management resource-scheduling gantt-chart angular-gantt

support's Introduction

Bryntum support repo

An issues-only repository for the Bryntum suite of JavaScript components. Please report any bugs or ideas on feature requests under issues. For technical support, please join our support forum.

Build Statuses

Product Chrome Firefox Edge Safari
Bryntum Core Widgets Core Full Chrome Core Full Firefox Core Full Edge Core Full Safari
Bryntum Grid Grid Full Chrome Grid Full Firefox Grid Full Edge Grid Full Safari
Bryntum Scheduler Scheduler Full Chrome Scheduler Full Firefox Scheduler Full Edge Scheduler Full Safari
Bryntum Scheduler Pro SchedulerPro Full Chrome SchedulerPro Full Firefox SchedulerPro Full Edge SchedulerPro Full Safari
Bryntum Gantt Gantt Full Chrome Gantt Full Firefox Gantt Full Edge Gantt Full Safari
Bryntum Calendar Calendar Full Chrome Calendar Full Firefox Calendar Full Edge Calendar Full Safari
Bryntum TaskBoard TaskBoard Full Chrome TaskBoard Full Firefox TaskBoard Full Edge TaskBoard Full Safari

support's People

Contributors

isglass avatar matsbryntse avatar sergeymaltsev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

support's Issues

Date picker issues

  1. when I move between months using mouse, calendar appears completely incorrect (10.11.2019 is saturday, displayed on thursday). probably because while moving year gets changed too

  2. hovering month name shows combo box and month name appears according to browser locale

  3. also you can see initially there is a February 2020 in picker, when I click to previous month button I get June 2019 for some reason

date picker issue_edit_0

Popup for Scheduler event can't be dragged with a single mouse click

Reported here
https://www.bryntum.com/forum/viewtopic.php?f=44&t=12653

Can be reproduced in https://www.bryntum.com/examples/scheduler/ with this config.
Popup can be dragged/moved with second mouse click on it only.

   listeners : {
        eventClick : (event) => {
            const popup = new Popup({
                header    : 'Popup-Header',
                draggable : true,
                cls       : 'scheduler-popup-w',
                html      : `Popup-Body`
            });
            popup.activeTarget = event.event.srcElement;
            popup.showBy(event.event.srcElement);
        }
    }

NonWorkingTime feature example

Ideas for demo

  • demo showing how to add custom entries to calendar
  • side by side grid with editable nonworking day dates

Crash when using recurrence custom field

Repro: https://app.therootcause.io/?page=replay&id=707427#bryntum.com

Uncaught TypeError: Cannot read property 'timeSpan' of null at EventEdit.showRecurrenceEditor (scheduler.module.js?436950:172) at EventEdit.onRecurrenceComboChange (scheduler.module.js?436950:172) at RecurrenceCombo.trigger (scheduler.module.js?436950:10) at RecurrenceCombo.onValueCollectionChange (scheduler.module.js?436950:36) at Collection.trigger (scheduler.module.js?436950:10) at Collection.splice (scheduler.module.js?436950:12) at List.onItemClick (scheduler.module.js?436950:34) at List.onClick (scheduler.module.js?436950:34) at HTMLDivElement._0x2341a0 (scheduler.module.js?436950:12) at Object.Siesta.Test.Simulator[dispatchEvent] (rootcause-playback-engine.js:10)

META tags are duplicated in online demos

Happens in both Scheduler and Gantt.

For example: https://www.bryntum.com/examples/gantt/basic/

	<meta property="og:site_name" content="Bryntum">
	<meta property="og:title" content="Basic demo">
	<meta property="og:description" content="Shows a very basic Gantt setup">
	<meta property="og:image" content="https://www.bryntum.com/examples/gantt/basic/meta/thumb.2048.png">
	<meta property="og:url" content="https://www.bryntum.com/examples/gantt/basic">
	<meta name="twitter:site:id" content="@bryntum">
	<meta name="twitter:title" content="Basic demo">
	<meta name="twitter:description" content="Shows a very basic Gantt setup">
	<meta name="twitter:image" content="https://www.bryntum.com/examples/gantt/basic/meta/thumb.2048.png">
	<meta name="twitter:card" content="summary_large_image">

<meta name="description" content="Shows a very basic Gantt setup">
	<meta property="og:site_name" content="Bryntum">
	<meta property="og:title" content="Basic demo">
	<meta property="og:description" content="Shows a very basic Gantt setup">
	<meta property="og:image" content="https://www.bryntum.com/examples/gantt/basic/meta/thumb.2048.png">
	<meta property="og:url" content="https://www.bryntum.com/examples/gantt/basic">
	<meta name="twitter:site:id" content="@bryntum">
	<meta name="twitter:title" content="Basic demo">
	<meta name="twitter:description" content="Shows a very basic Gantt setup">
	<meta name="twitter:image" content="https://www.bryntum.com/examples/gantt/basic/meta/thumb.2048.png">
	<meta name="twitter:card" content="summary_large_image">

hideHeaders in combination with timeRanges causes crash

http://lh/bryntum-suite/scheduler/examples/timeranges/

add

hideHeaders : true

Stack:
EventHelper.js:385 Uncaught TypeError: Cannot read property 'addEventListener' of null at Function.addElementListener (EventHelper.js:385) at Function.on (EventHelper.js:335) at DragHelper.initListeners (DragHelper.js:392) at DragHelper.construct (DragHelper.js:354) at new Base (Base.js:55) at new Events (Events.js:189) at new DragHelperContainer (DragHelperContainer.js:17) at new Delayable (Delayable.js:20) at new DragHelperTranslate (DragHelperTranslate.js:18) at new DragHelper (DragHelper.js:121) addElementListener @ EventHelper.js:385 on @ EventHelper.js:335 initListeners @ DragHelper.js:392 construct @ DragHelper.js:354 Base @ Base.js:55 Events @ Events.js:189 DragHelperContainer @ DragHelperContainer.js:17 Delayable @ Delayable.js:20 DragHelperTranslate @ DragHelperTranslate.js:18 DragHelper @ DragHelper.js:121 onPaint @ AbstractTimeRanges.js:152 functionChainRunner @ InstancePlugin.js:257 plugInto.<computed> @ InstancePlugin.js:240 callback @ Base.js:230 trigger @ Events.js:726 triggerPaint @ Widget.js:2269 render @ Widget.js:890 render @ Container.js:712 render @ GridBase.js:2624 render @ TimelineBase.js:1211 functionChainRunner @ InstancePlugin.js:257 plugInto.<computed> @ InstancePlugin.js:240 finalizeInit @ Widget.js:777 finalizeInit @ GridBase.js:473 construct @ Widget.js:512 construct @ TimelineZoomable.js:80 construct @ TimelineBase.js:306 construct @ SchedulerDragResize.js:16 construct @ EventNavigation.js:63 construct @ SchedulerBase.js:193 Base @ Base.js:55 Localizable @ Localizable.js:18 Events @ Events.js:189 Delayable @ Delayable.js:20 Widget @ Widget.js:50 Container @ Container.js:61 Pluggable @ Pluggable.js:20 State @ State.js:30 GridElementEvents @ GridElementEvents.js:40 GridFeatures @ GridFeatures.js:59 GridNavigation @ GridNavigation.js:23 GridResponsive @ GridResponsive.js:66 GridSelection @ GridSelection.js:33 GridState @ GridState.js:25 GridSubGrids @ GridSubGrids.js:30 GridBase @ GridBase.js:72 TimelineDateMapper @ TimelineDateMapper.js:16 TimelineDomEvents @ TimelineDomEvents.js:26 TimelineEventRendering @ TimelineEventRendering.js:13 TimelineScroll @ TimelineScroll.js:13 TimelineViewPresets @ TimelineViewPresets.js:30 TimelineZoomable @ TimelineZoomable.js:21 TimelineBase @ TimelineBase.js:53 SchedulerDom @ SchedulerDom.js:13 SchedulerDomEvents @ SchedulerDomEvents.js:12 SchedulerDragResize @ SchedulerDragResize.js:12 SchedulerStores @ SchedulerStores.js:28 SchedulerScroll @ SchedulerScroll.js:21 SchedulerState @ SchedulerState.js:34 SchedulerEventRendering @ SchedulerEventRendering.js:20 SchedulerRegions @ SchedulerRegions.js:14 EventSelection @ EventSelection.js:12 EventNavigation @ EventNavigation.js:19 SchedulerBase @ SchedulerBase.js:56 Scheduler @ Scheduler.js:301 (anonymous) @ app.js:71 Show 36 more frames

Make public way to append created Grid/Scheduler/Gantt to DOM element

https://www.bryntum.com/forum/viewtopic.php?f=51&t=19296&p=95391#p95391

Currently Scheduler which was created without appendTo/adopt config option can be appended to DOM element with

document.getElementById('container').appendChild(scheduler.element);

or

DomHelper.append(document.getElementById('container'), scheduler.element);

but this also require private render() call to make it visible

scheduler.render();

Also this code below doesn't work

WidgetHelper.append(scheduler, document.getElementById('container'));

Changelog

Added support for changing widget's appendTo, insertBefore and insertFirst at runtime

Event editor does not hide in Ext JS Modern demo

https://www.bryntum.com/forum/viewtopic.php?f=51&t=12710&e=1&view=unread#unread

Open event editor, click any button. Ext thinks there's an ongoing animation, which makes it bail out:

hide: function(animation) {
        var me = this,
            activeAnim = me.activeAnimation,
            modal;
        if (me.isVisible()) {
            
            if (me.hasListeners.beforehide && me.fireEvent('beforehide', me) === false) {
                return;
            }
            if (me.beforeHide() === false) {
                return;
            }
            me.viewportResizeListener = Ext.destroy(me.viewportResizeListener);
            me.setCurrentAlignmentInfo(null);
            if (activeAnim) {
                activeAnim.on({
                    animationend: function() {
                        me.hide(animation);
                    },
                    single: true
                });
                return me;
            }

eventContextMenu triggered when right clicking summary bar

  1. Right click summary area in http://lh/bryntum-suite/scheduler/examples/groupsummary/
  2. Add event should not be shown, no context menu should be shown probably.
  3. In ScheduleContextMenu: ‘showEventContextMenu’ should be renamed to onContextMenuEvent

https://app.therootcause.io/#bryntum/bryntum-scheduler/errors/a172734c170e2dc16c897f41e5c57752d53ec8c4


Uncaught (in promise) TypeError: Cannot read property 'id' of undefined
    at RowManager.getRowById (RowManager.js:285)
    at HorizontalEventMapper.getTimeSpanRenderData (BaseHorizontalMapper.js:144)
    at Scheduler.generateTplData (SchedulerEventRendering.js:531)
    at EventEdit.finalizeEventSave (EventEdit.js:631)
    at Object.finalize (EventEdit.js:732)
    at EventEdit.js:758
    at new Promise (<anonymous>)
    at EventEdit.save (EventEdit.js:701)
    at EventEdit.onSaveClick (EditBase.js:431)
    at Button.trigger (Events.js:795)
getRowById @ RowManager.js:285
getTimeSpanRenderData @ BaseHorizontalMapper.js:144
generateTplData @ SchedulerEventRendering.js:531
finalizeEventSave @ EventEdit.js:631
finalize @ EventEdit.js:732
(anonymous) @ EventEdit.js:758
save @ EventEdit.js:701
onSaveClick @ EditBase.js:431

Crash after changing locale in celledit demo

https://www.bryntum.com/examples/grid/celledit/

https://app.therootcause.io/#bryntum/bryntum-grid/errors/e9e33535bbaf64167cd679b5d915c359bf76a030

http://lh/bryntum-suite/grid/examples/celledit/
Dblclick a cell in Custom column to show yes/no button
Change language

Editor.js:184 Uncaught TypeError: inputField.syncInputFieldValue is not a function
    at Editor.onLocaleChange (Editor.js:184)
    at LocaleManager.trigger (Events.js:828)
    at LocaleManager.internalApplyLocale (LocaleManager.js:150)
    at internalApply (LocaleManager.js:177)
    at LocaleManager.applyLocale (LocaleManager.js:198)
    at Combo.onAction (shared.js:541)
    at Combo.callback (Base.js:231)
    at Combo.trigger (Events.js:759)
    at Combo.onValueCollectionChange (Combo.js:1166)
    at Collection.trigger (Events.js:828)

Simplify detaching listeners

This is a common scenario:

this.storeDetacher = store.on({ xxx, thisObj : this });
...
if (this.storeDetacher) {
  this.storeDetacher();
  this.storeDetacher = null;
}

Could be simplified by allowing named listener blocks, an internal map (on thisObj) of them and a function to detach:

store.on({ name : 'store', xxx, thisObj : this });
...
this.detachListeners('store')

Rendering fails if normal region is collapsed initially

Add to basic scheduler sample:


subGridConfigs: {
        locked: { collapsed: false },
        normal: { collapsed: true } // swap these booleans for same issue
    },

Console logs: "No available space provided for time axis. Make sure you have set width for horizontal mode and height for vertical"

Simple Histogram widget

Must be able to display multiple series with different renditions. For example the max allocation is an outline:

Screenshot 2019-11-18 at 09 39 06

While the actual consumed allocation is as bars:

Screenshot 2019-11-18 at 09 42 20

Background colours and CSS classNames should be configurable. There should be a tooltip option which is passed contextual data about the series items hovered.

DateHelper parses dates with time offset wrong (e.g. +01:00)

Using Bryntum Scheduler 2.3.0.

Specifying a startDate containing a datetime with a timezone offset seems to not work correctly.

const scheduler = new Scheduler({
    ...
    startDate: '2019-11-19T00:00:00+01:00'
});

Executing scheduler.startDate.getTime() returns 1574118000001.

Looks like an issue with the DateHelper since DateHelper.parse('2019-11-19T00:00:00+01:00') returns a Date with time of 1574118000001 (seems to add 1 millisecond). Expected time 1574118000000.

Bugs with selection state and scroll position after crudManager.load()

Reported here
https://www.bryntum.com/forum/viewtopic.php?f=44&t=12693

Steps to reproduce

  1. scroll vertically and then select any resource
  2. call scheduler.crudManager.load()
  3. both scroll positions are now reset (vertical scrollbar is at the top)
  4. click on horizontal scrollbar
  5. vertical scrollbar scrolls to the previously selected resource

The desired behavior is to reset selection/scroll and add an option to preserve selection/scroll it on load.

Showing task editor for a task partially visible task changes scroll

It should not. To reproduce, try this on console in the Gantt basic demo:

gantt.setStartDate(new Date(2019,0,20))

1

Then double click a task that is partially out of timeaxis (Setup web server).
It focuses the task and extends the timeaxis. It should focus but not extend

2

Export to Excel demo crashes upon load

https://www.bryntum.com/examples/gantt/exporttoexcel/

    at Gantt.set features (gantt.module.js?436952:146)
    at Gantt.set features (gantt.module.js?436952:175)
    at Gantt.get (gantt.module.js?436952:10)
    at Gantt.onTaskStoreChange (gantt.module.js?436952:189)
    at Gantt.set project (gantt.module.js?436952:189)
    at Gantt.get (gantt.module.js?436952:10)
    at CalendarColumn.afterConstruct (gantt.module.js?436952:176)
    at new Base (gantt.module.js?436952:10)
    at new ModelStm (gantt.module.js?436952:24)
    at new TreeNode (gantt.module.js?436952:24)```

Grid scroll is not restored correctly

Steps to reproduce on basic grid demo:

  1. open demo, make sure scroll is up top
  2. run state = grid.state
  3. scroll somewhere below, memorize position
  4. run grid.state = state
  5. observer scroll is not restored to 0

Dependency line is hidden

when two milestones are assigned to adjacent resources, start on same date and have a dependency between them, such dependency line is not drawn with narrow row height.
image

If either milestone is moved back-forth dependency line is drawn, when you drop milestone back to original position - it is hidden again.

Test pushed to related branch

Number column needs formatting information

The framework needs a general purpose number formatting function which can be internationalized.
Probably in Core/helper/StringHelper. Should use browser formatting https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat. Locale can be read from same setting as DateHelper uses (key DateHelper.locale in localization files)

Probably needs a string-based format token for ease of use.

NumberColumn should then use it in its defaultRenderer.

{ type : 'number', field : 'value', text : 'Value', format : '????' }

Right now, any non-integer value can be displayed by javascript's default toString which is unsuitable for a UI.

image

Transfered from Assembla #6246.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.