- Fixed
shouldMuteNotNeededMethods
option to ItemMovement & ItemResizing plugins (#402)
- Added
shouldMuteNotNeededMethods
option to ItemMovement & ItemResizing plugins
- Fixed component not refreshing after changing default item values (
config.chart.item
)
GSTC.api.fromArray
result type modified
- Fixed a bug with the
Selection
plugin - the plugin tried to modify grid cells when they were not in the current view (they did not exist).
- ExportPDF plugin can now create PDF from user's screenshots (
gstc.api.plugins.ExportPDF
:takeShot()
,getPDF(filename)
andclearPDF()
methods added).
- ExportPDF plugin can now take the full content of a chart (not just the visible part) (
gstc.api.plugins.ExportPDF.downloadFull(filename)
)
npm-shrinkwrap.json
ignored in the package
- #393 bugfix (plugins were not initialized when multiple instances of gstc were created)
wasm-unsafe-eval
source directive message provided if there is an problem with loading wasm file- updated license check mechanism libraries
- Wildcard domain names now support regex (*.test domain will work)
- Debug info in the console when license check mechanism is not working
item.label
and row data must be a string or function otherwise it will return null- examples updated - import wasm file by default
- ItemMovement & ItemResizing default horizontal edge threshold changed to
60
- ItemMovement with
config.scroll.horizontal.byPixels
enabled bugfix - ItemResizing autoScroll right bugfix
- scroll bar improvements
- [breaking*]
config.scroll.horizontal.byPixels
andconfig.scroll.vertical.byPixels
are enabled by default now
- scroll bar not showing when chart contains only one day bugfix
- ItemMovement plugin - movement outside area could cause item to change its width with
config.scroll.horizontal.byPixels
enabled bugfix
- npm libraries updated
- DependencyLines plugin - fixed a bug where the lines were cut off when the row was higher than the chart area
- Fixed a bug where after clicking on an item, the chart area moved slightly (part 2)
- Fixed a bug where after clicking on an item, the chart area moved slightly (part 1)
- Progress bar shows up even when the item has no time (0ms) (#383)
- Fixed a bug with dynamic locale update - the calendar was not updated when the locale was changed (#368).
- Fixed a bug that occurred when the row was higher than innerHeight of the chart - the rows were not displayed.
- overlapped items order improvement
- fixed bug with items overlapping
- (#381) added new scrolling behavior (pixel based scrolling instead of row based)
config.scroll.vertical.byPixels
andconfig.scroll.horizontal.byPixels
(boolean values)
- #380 bugfix (bug where item stayed on a lower level even when it was no longer overlapped by others)
- #373 bugfix - The mechanism for stacking items that overlap has been improved. They now appear in the order they were added when their timing is the same.
- license key check mechanism bug fix
- delete selected item bugfix (#348)
- fixed bug with clip-path attached to foreignObject which caused ItemTypes plugin to not respond to pointer events (like resize)
- multiple components on one page bugfix
- added example for multiple components
- origin check mechanism updated
- added
GSTC.api.mergeDeep
andGSTC.api.clone
methods
fromArray
will now checklinkedWith
also
- Added
rowId
check for items. The component will throw an error when a row is not found or when the id has an invalid type. - Added checking that all items exist and that, for example, they have not been modified via references from
state.get
.
- origin with wildcard bugfix
ItemMovement
threshold
options ignored bugfix- added
ItemResizing
threshold
option - updated
complex-1
andone-month
examples
- updated and added dependent libraries to
package.json
due to missing type errors
- complex example updated (missing bookmarks)
- garbage removed
- performance optimization
- throws an error when
item.time.start
oritem.time.end
is not a number - throws an error when
config.chart.time.from
orconfig.chart.time.to
is not a number and is defined
- time bookmarks sometimes disappear without a reason bugfix
- fixed
api.time.getGlobalOffsetPxFromDates
- performance optimization when all of the items are out of the view (on the left side or on the right side)
time.leftGlobal
was calculated based on centerDate, which was no longer available due to a change in dates bugfix
- fixed bug with
location.ancestorOrigins
on firefox - added origins property to the state
state.get('origins')
- array merging bugfix
- merging objects performance optimization
- removed non documented not needed
config.chart.time.allDates
andconfig.chart.time.datesCache
(huge time calculation performance optimization) - grid cell generation little performance optimization
deep-state-observer
updated (update whole state bugfix)- added
$data.initializedPlugins
Set
- plugins are now destroyed only when whole gstc instance is destroyed or plugin was removed from config
recalculateTime
method added to the time api (gstc.api.time.recalculateTime()
) to regenerate calendar dates or recalculate$data.chart.time
values - for example if some logic inonLevelDates
was changed then you might need this to generate new dates and triggeronLevelDates
againItemMovement
,ItemResizing
,TimelinePointer
andSelection
plugins refactoredgstc-loaded
event is triggered a little bit later now when all time calculations are completecomplex-1
example updated - added history state management demoone-month
example updated -gstc.api.time.recalculateTime()
added instead of full reload
- when
periodIncrement
is a function and the item is moved to the left side past the visible area we don't know which date to start generating dates from so we just returntime.from
which blocks the movement of the item - added
allowItemsToGoOutsideTheArea
boolean
(default:true
) value to ItemMovement and ItemResizing options
- support for iframe usage: domains with
>
symbol likeone.com>two.com>three.com
(available only with SaaS license)
- examples updated
- changelog reversed (latest versions on top)
- empty item style was not updated #344 bugfix
- not needed dependencies removed
- lit-html updated
- merge function improved
- added
GSTC.Vido
property withGSTC.Vido.directives
to easily create templates without need to importlit-html
- added
outOfView
withleft
,right
andwhole
boolean properties toItemData
to know when the item is outside a view from item props only - all rows expander was missing bugfix
- row
visible
property added to determine whether the row should be visible on the list (usable for searching and filtering)
- ItemResizing plugin
onEnd
event was fired twice bugfix - ItemMovement & ItemResizing
onEnd
event was fired without dependant items bugfix
- ItemResizing plugin - dependant option set to false caused call to undefined method #343 bugfix
- npm dependencies updated
- ItemMovement & ItemResizing now snap to time from main dates by default (not startOf the current period because periodIncrement may be different than 1)
config.chart.time.alignLevelsToMain
fixed dates positions calculation when main dates start and end values were in the middle of the other levels (weeks and months for example)- level dates calculations code refactoring
GSTC.api.fromArray
fixes gstcid in dependant items now- [breaking*] default
config.locale.weekStart
is set to 0 now (Sunday) (not 1=Monday) - dayjs locale is now used locally inside time api from
gstc.api.time.date
method GSTC.api.date
method now supports locale configuration as third parameterGSTC.api.date(time, utcMode, localeConfig)
GSTC.api.GSTCID
will now check if given id is already in proper format
- dependency lines plugin stops draw lines when two connected items was detached bugfix
- there was a bug when gstc wanted to save dates to cache but cache was not ready for that
- added
percent
to$data.scroll.horizontal
and$data.scroll.vertical
- when horizontal scroll bar position is at the beginning or at the end position then don't calculate new position basing on center date
- [breaking*] ItemMovement and ItemResizing do not snap dependant items to time because it led to time slips
- [breaking*] ItemMovement
snapToTime.end
no longer snaps as default behavior as it can change duration when zoom mode is set to display months (different months have different number of days)
- ItemMovement & ItemResizing dependant items movement algorithm updated
- [breaking* - 3.23.0]
DataChartTimeLevelDate
now containsDST
withdiffMs:number
,afterTime:number
andafterDate:Dayjs
object instead ofdiffDST:number
only - ItemMovement dependant items initial values bugfix
- ItemResizing plugin now takes DST into account while resizing
DataChartTimeLevelDate
now includesdiffDST
which is a difference between standard period and period in DST daylight saving time - date may be shorter (negative value) or longer than the standard date- ItemMovement plugin now takes DST into account while moving
- The row items are now sorted in ascending order by start time
- in some cases, the incorrect vertical position of the item was calculated #340 bugfix
- performance optimization
- new readonly dates cache added to
config.chart.time.datesCache
- changed
config.plugin.ItemMovement.autoScroll.edgeThreshold.horizontal
andconfig.plugin.ItemResizing.autoScroll.edgeThreshold
default value to0
because sometimes it may trigger unwanted auto scroll #339
- current date highlight blinking bugfix
- added ability to specify item spacing on the left and on the right side
config.chart.spacing.left
andconfig.chart.spacing.right
or just rightconfig.chart.spacing
= number of pixels
- sometimes clicking of an item may trigger autoScroll feature in ItemResizing plugin #339 bugfix
- current dates are checked continuously
config.chart.time.checkCurrentDateInterval
default = 5minutes - added zoom levels down to 9 (minutes)
- sometimes clicking of an item may trigger autoScroll feature in ItemMovement plugin #339 bugfix
- current date highlight bugfix #338
- calendar date width calculation bugfix when date was bigger than view
- in some circumstances items from hidden rows was visible #317 bugfix
- lines was visible outside view in dependencyLines plugin bugfix
- fixed with wrong width of the item if it was moved outside view with hidden weekends enabled and start of the next month was a weekend
- when the end time of an item is inside a missing date and we move this item by 1px it will change its width bugfix
- in calculatedZoomMode + hide weekends when date was moved out of the scope wrong right date was calculated bugfix
- ItemMovement & ItemResizing move dependant items wrong time offset bugfix
- [breaking*] ItemMovement & ItemResizing dependant items automatically added to
items.initial
,items.before
&items.after
- added ItemMovement
moveDependantVertically
option to move dependant items vertically along with the selected one - added
addedDependantIds
andselectedIds
to event argument in ItemMovement & ItemResizing - added
item
to snap time events (may be null when calculating pointer movement offset) - [breaking*] ItemResizing snap to start time can pass item as
null
now when calculating pointer movement offset
- added a readonly
periodIncrementedBy
value to level datesDataChartTimeLevelDate
that tells what increment was used to calculate that date - added option
config.chart.time.alignLevelsToMain
to automatically scale other levels to main dates when some of main dates are missing (weekends for example) - ItemMovement & ItemResizing better handling of dependant items
gstc.api.scrollToTime
centered wrong dates bugfix- added
config.chart.time.timePerPixel
readonly property
- itemResizing and itemMovement - item time calculation bugfix
config.chart.time.additionalChartSpaces
removed (was not documented)- time calculation now works better with removed dates by the user (onLevelDates event)
- added duration dayjs plugin loaded by default
- spacing is no longer taking into account with item.width - now it is full width without subtracting spacing (1px) for itemData.width and itemData.actualWidth
- default spacing is set to 4 instead of 1 (looks better)
config.chart.spacing
- added
config.chart.time.autoExpandTimeFromItems
option to expand time when item is out of the current view
- itemResizing plugin - item resizing wrong width calculation bugfix
- itemMovement plugin - item jumps over one cell when dragging bugfix
- itemMovement
ignoreMissingDates
option added - itemMovement wrong item width bug fixed
- fixed bug 'Cannot read properties of undefined (reading leftPx)' when moving item outside view with autoscrolling enabled
- #325 bugfix (dayjs.locale is not a function)
- ability to use component on external servers on premise with domain keywords like app-name.*
- fixed bug when moving items outside a view
- scroll bar handle more visible in dark mode
- main import file with wasm file included
- removed junk dev dependencies
- added dark theme support
- fixed calculatedZoomMode initial render
- cypress updated to 9.2.0
- updating locale bugfix (#230)
- fixed column header resizing dots disappearing when width was smaller than text (#322)
- fixed missing api types
- types renamed from
*.d.ts
tomin.d.ts
- bad scroll position after changing chart width bugfix
- moving item outside of the current time resets scroll position bugfix
- empty chart after updating rows bugfix
- package.json updated
- package.json updated
- license key checking mechanism updated to v3
scrollToTime
centered bugfix
- grid cells cache bugfix
- dependency lines bugfix
- fixed issue with
calculatedZoomMode
change (#316)
- fixed travis yml file needed to run tests in CI
- updated
@cypress/request
to2.88.9
- added before_script to travis to set timezone properly
- added timezone to travis
- do not upload videos if test is successful (cypress option added)
- utc mode bugfix #321
- utc mode tests added
- added
"@cypress/request": "2.88.7"
topackage.json
because of this cypress bug
- csstype junk removed
- cypress updated
- timeline bookmarks tests added
- added
isInCurrentView
in time api - fixed #319
- tests updated
.eslintignore
removed and added ingore pattern to.eslintrc.json
- tests updated
.eslintignore
added
- tests updated
- tests updated
- tests updated
- tests updated
- cleaning up chart dimensions properties
- other package.json cypress commands updated (nodejs 17.x
Error: error:0308010C:digital envelope routines::unsupported
bugfix)
- test command updated (nodejs 17.x
Error: error:0308010C:digital envelope routines::unsupported
bugfix)
- updated rows were visible only after scroll bugfix
- change column visibility bugfix
- dates generation bugfix
- removed firefox from default testing because in some env actual firefox is not installed and tests cannot be executed
- added
npm run test:full
to test on firefox also
- resizing handles not visible when using item-types plugin and width is below threshold bugfix (#226)
- item tests improved
- testing in chrome and firefox
- calendar levels bugfix
- tests improvements
- column header render template bugfix
- tests improved
data-gstcid
added to some elements- cypress testing framework added
- horizontal scroll bar positive precise offset bugfix
- horizontal scroll bar last position was not accessible bugfix
ItemMovement
andItemResizing
DST (Daylight saving time) bugfix
- sorting nested rows bugfix (#303)
- style updated: list position is now
relative
- fixed missing
cache
list template variable - added
additionalSpace
useful when we want to add new content above and below chart (seemessing-with-templates
example)
- selection plugin optimization and item is returned in event (not
itemData
) - state now contains license information
state.get('license')
- item movement improved
- performance optimization
- row items pointer events bugfix
- detach directive removed (cache directive is a better alternative)
- when scroll position is higher than number of rows visible rows not showing up bugfix
- when
time.from
andtime.to
are not set when changing data nothing shows up bugfix - huge performance optimizations
- grid cells cache bugfix
- a little bit of optimization again
- Math.round for all css positions
- bookmark height bugfix
- cell content bugfix
- performance optimizations
- scrollbar visibility bugfix when all dates are visible bugfix
- grid cells cache bugfix
- grid cells cache bugfix
- scroll bar pointer events works on touch devices now
config.chart.time.calendarLevels -> periodIncrement
leftDate
argument changed todate
config.chart.item.overlap
option added
- time diff bugfix
- bookmarks DOM divided into two parts
- chart overflow visible changed back to hidden
- bookmarks style option added and changed DOM position
- timeline pointer plugin precise position bugfix
- huge performance improvement
- fixed rows sorting (#297)
- horizontal scroll precise option implemented
- vertical scrollbar weird behavior at the end of the scroll area fixed
- working with bigger data set is now much faster
- loading big data set is a little bit faster now
- item
minWidth
bugfix (#296)
ExportPDF
plugin added
ExportImage
plugin added
- vido updated (StyleMap bugfix)
- itemMovement & itemResizing update state bugfix
- calendar dates with wrong widths when week or non standard period is used as main date bugfix (#294)
- bookmarks improved (show only bookmarks that are in current view)
- bookmarks plugin
className
bugfix
config.templates
configuration added - now you can use templates for all components
- time bookmarks plugin custom
className
not appearing bugfix
- do not expand view while resizing or moving in
config.chart.time.calculatedZoomMode
- jest testing engine updated
- move dependant items only when time was changed bugfix
- vido updated
DeepState
,Api
,publicApi
,CSSProps
,ComponentInstance
types added
deep-state-observer
updated- gstcInstance.api.setScrollTop now accepts
number
(for row index inside rows with parents expanded array) andstring
for rowId
deep-state-observer
updated
- deep-state-observer updated
- classes on the DOM Element is not displaying
id
s to improve performance a lot
- add item by id bugfix (#286)
- add row by id bugfix
- scroll area watching bugfix
autoInnerHeight
bugfix wheninnerHeight
is not specified- horizontal scroll goes to vertical scroll position when window is resized with
autoInnerHeight
option enabled bugfix
- wrong scroll position after changing innerHeight bugfix
- innerHeight bugfix (#242)
- automatic innerHeight feature (#276)
- added
hidden
to the column data to easily hide column without changing data - added
position
to show columns in specified order
- changing columns bugfix (#278)
- selection plugin not selecting grid cells bugfix
- performance optimization
gstc-loaded
event bugfix and it fires only once to listen config changes just subscribestate.subscribe('config;', ()=>{ console.log('gstc reloaded') })
- console.log :/
- (code cleanup) some properties from
config.scroll
moved to$data.scroll
- (code cleanup)
config.items.*.selected
andconfig.items.*.selecting
moved to$data.items.*.selected
and$data.items.*.selecting
- minor performance improvements
- performance optimization
- Selection plugin: changed path from
gstc.api.plugins.selection
togstc.api.plugins.Selection
- Selection plugin: added ITEM and CELL string to api
- gstc.api.render() method added to refresh the view if needed
- ItemResizing plugin handle content improvement (function | object) with left and right values
- right arrow not appearing in some circumstances bugfix
- cut items to last date
- cache calculation bugfix (chart not responding to all changes)
- #275 bugfix (wrong right position of the item in calculatedTimeZoom mode)
- license info stored in state (
state.get('license')
) - grid cells bugfix
- offline licenses
- minified code undefined variables bugfix
- performance
- plugins destroy bugfix
- npm update
- minor types update
- types improvement
- #217 bugfix
- #216 bugfix
This domain is not registered for your license ( undefined ).
bugfix
- Code refactoring
- gstc.api.getCurrentCalendarLevels method added
- #213 sorting bugfix
- load performance optimization (
state.update('config', ...)
,state.update('config.list.rows',...)
andstate.update('config.chart.items',...)
also) - #202 fixed
- ProgressBar width bugfix
- ProgressBar width bugfix
- rows height calculation bugfix
- changed slot a little bit so ItemTypes plugin can work with ItemResizer plugin (inside item)
- ItemTypes plugin is now compatible with item slots
- Component templates support (for item only just for now)
- ItemTypes plugin
- remove handles from item when selected property was set to false (ItemResizing plugin bugfix)
- more responsive item property watcher
- invalid item position caused by DependencyLines plugin (bugfix)
- console.log removed...
- invalid row height and disappearing overlapping items bugfix
- dependency lines plugin should not display lines if items are outside of the whole timeline (not current view)
- throw more reasonable error when there is no item or cell with specified id when selecting
- getAllGridCells and getAllGridRows added in gstc instance api
- a full reload was fired when it shouldn't (bugfix)
- deep-state-library updated with couple of bugfixes
- file:/// protocol warning (gstc will not work with local files)
- #204 bugfix
- moved tests to examples dir 😏
- moved tests to tests dir and linked examples
- readme update
- build bugfix
- dependency lines plugin
- check browser version
- add item by id bugfix
- invalid token error for license improvement
- package.json update
- readme update
- current time with seconds and minutes bugfix
- console.log removed 😏
config.chart.calendarLevels.periodIncrement
as a number or function
- package.json update
- build version bugfix
- build fix
- gstc version inside
config.version
(readonly)
- travis integration
- gstc disappeared after a few seconds bugfix
- scroll position was not updated properly
- html is not defined bugfix
- default configuration changed (precise vertical scroll = true now)
- readme update (react, vue, angular examples)
- dependencies updated
- removed resize-observer-polyfill
- *.map files removed
- types in package.json updated
[3.2.5 - 3.2.7]
- html is not defined bugfix inside vue projects
- do not exclude examples from npm package
- plugins types bugfix
- npmignore updated - do not delete ../gstc.d.ts (Cannot find module '../gstc' or its corresponding type declarations bugfix)
- api plugin initialization - now all plugins must inform api about their initialization and destruction (api.pluginInitialized, api.pluginDestroyed, api.isPluginInitialized, api.getPluginsPositions, api.isPluginInitializedBefore)
- auto scroll feature for item-resizing plugin - from now on item-resizing plugin must be initialized before item-movement plugin
- list rows data children property was not calculated correctly
- c_c_c is not defined bugfix
- c_c_c is not defined bugfix
- .npmignore added
- readme update
- just version update
- visible items generation bugfix
- auto-scroll feature for item-movement plugin
*breaking in some situations - depends on user configuration - but must be changed due to bug fixing or make it much easier to use