Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
469 commits
Select commit Hold shift + click to select a range
a4af806
make one unified options for saving
iamfaran Sep 24, 2025
de4bbee
remove unnecessary code
iamfaran Sep 24, 2025
fbceeb7
[Fix]: #2011 setDefaultValue duplication
iamfaran Sep 25, 2025
92ddb9b
[Fix]: #1987 issuse when type really slow
iamfaran Sep 25, 2025
320f388
[Fix]: #2009 first decimal character
iamfaran Sep 25, 2025
1f567b6
[Fix]: #2005 correctly show validation errors when 0
iamfaran Sep 25, 2025
90b1ac0
[Feat]: add new pending tags in suggestions for Table Tags Column
iamfaran Sep 26, 2025
f03b63b
Merge pull request #2019 from iamfaran/fix/1987-editor
raheeliftikhar5 Sep 29, 2025
e98afcc
Merge pull request #2018 from iamfaran/fix/2009-decimal
raheeliftikhar5 Sep 29, 2025
1cee6ff
Merge pull request #2017 from iamfaran/fix/2005-input-validation
raheeliftikhar5 Sep 29, 2025
ae2422c
Merge pull request #2016 from iamfaran/fix/2011-number-input
raheeliftikhar5 Sep 29, 2025
4b25dc6
[Fix]: #2014 Tab ID on refresh
iamfaran Sep 29, 2025
7c55830
Merge pull request #2006 from iamfaran/fix/event-context
raheeliftikhar5 Sep 30, 2025
080ac6f
Merge pull request #2008 from iamfaran/fix/1965-chart-expanded
raheeliftikhar5 Sep 30, 2025
242bbf4
Merge pull request #2013 from iamfaran/feat/tags-edit
raheeliftikhar5 Sep 30, 2025
fa2d9e4
Merge pull request #2023 from iamfaran/feat/table-tags
raheeliftikhar5 Sep 30, 2025
b8eb6ff
Merge pull request #2026 from iamfaran/fix/2014-tabs-id
raheeliftikhar5 Sep 30, 2025
e52dae8
[FIX]: #2012 navitems hide issue
iamfaran Sep 30, 2025
d21e858
fix: temporary add rjson library to local repository due to artifacto…
ludomikula Sep 30, 2025
b16f6c2
[Fix]: #2022 Tab spacing issue in code editor
iamfaran Sep 30, 2025
c888e8a
chore: update api-service version for new release
ludomikula Sep 30, 2025
e5dc227
Merge pull request #2027 from iamfaran/fix/2012-nav
raheeliftikhar5 Oct 1, 2025
5987158
Merge pull request #2028 from iamfaran/fix/2022-tab-spaces
raheeliftikhar5 Oct 1, 2025
a04a57b
fix autocomplete input glitch
raheeliftikhar5 Oct 1, 2025
578dc3c
fix spaces not preserved issue in rich text editor comp
raheeliftikhar5 Oct 1, 2025
8851f94
[Fix]: #2020 dynamic layers issue
iamfaran Oct 1, 2025
0b58adf
[Fix]: revert chart expansion
iamfaran Oct 1, 2025
75f1486
Merge pull request #2032 from iamfaran/fix/revert-chart-expansion
raheeliftikhar5 Oct 1, 2025
f205a1b
[Feat]: #2010 add pagesize event
iamfaran Oct 1, 2025
4fd6ad0
new: check for client IP address also in X-Forwarded-For header
ludomikula Oct 1, 2025
430cab9
Updating Version Numbers to prepare the Release 2.7.5
Oct 2, 2025
f0fca07
Merge pull request #2033 from iamfaran/feat/2010-pagesize-event
raheeliftikhar5 Oct 2, 2025
7b738c3
Merge pull request #2031 from iamfaran/fix/2020-layers
raheeliftikhar5 Oct 2, 2025
0e5aa97
Prepare Release 2.7.5
Oct 2, 2025
ec6539d
Merge pull request #2037 from lowcoder-org/dev
FalkWolsky Oct 2, 2025
30f2923
[Fix]: #2021 add map mode for NAV
iamfaran Oct 2, 2025
6741bf5
update Menu Items name
iamfaran Oct 2, 2025
bd23748
[Feat]: #2021 add disabled property for nav
iamfaran Oct 2, 2025
8dc2af3
[Fix]: #2021 import nav app data issue
iamfaran Oct 3, 2025
18fadd6
[Fix]: #2021 disabled for the submenu item
iamfaran Oct 3, 2025
1d86562
refactor navComp
iamfaran Oct 3, 2025
adccc16
[Feat]: #1979 expose hide/showcolumns methods
iamfaran Oct 3, 2025
46599c4
[Fix]: #1065 duplicates in continuous mode
iamfaran Oct 6, 2025
022cd51
[Fix]: #1060 exposed .value to open correct URL
iamfaran Oct 6, 2025
7cfa888
[Fix]: #2039 copyToClipboard utility content
iamfaran Oct 7, 2025
a4980bb
[Fix]: #2041 form content default values
iamfaran Oct 7, 2025
32b706f
[Feat]: #1867 add styles for the button column
iamfaran Oct 8, 2025
e8bc881
[Fix]: #1290 add zindex property for stacking issue
iamfaran Oct 9, 2025
e74e078
[Feat]: #1866 add class/id identifies for Table/TableLite
iamfaran Oct 10, 2025
a9ed704
[Fix]: #1945 allow null value
iamfaran Oct 13, 2025
99ce13d
[Feat]: #1289 add close icon customization
iamfaran Oct 13, 2025
62e1afa
Merge pull request #2038 from iamfaran/fix/2021-nav-dropdown
raheeliftikhar5 Oct 14, 2025
ae4a1a2
Merge pull request #2040 from iamfaran/feat/1979-table-columns
raheeliftikhar5 Oct 14, 2025
6e02ce7
Merge pull request #2042 from iamfaran/fix/scanner
raheeliftikhar5 Oct 14, 2025
142da81
Merge pull request #2044 from iamfaran/fix/2041-default-values
raheeliftikhar5 Oct 14, 2025
702f9f2
Merge pull request #2045 from iamfaran/fix/2039-utils-copy
raheeliftikhar5 Oct 14, 2025
c86ba27
Merge pull request #2046 from iamfaran/feat/1867-table-btn-styles
raheeliftikhar5 Oct 14, 2025
be6f14d
Merge pull request #2047 from iamfaran/fix/1290-drawer-modal
raheeliftikhar5 Oct 14, 2025
aa874b4
Merge pull request #2048 from iamfaran/feat/1866-custom-class-ids
raheeliftikhar5 Oct 14, 2025
ba30103
Merge pull request #2050 from iamfaran/fix/1945-null
raheeliftikhar5 Oct 14, 2025
dd7fb61
[Fix]: #1837 fix table header border styles
iamfaran Oct 14, 2025
984eaa5
[Feat]: #1837 add pagination styles for table
iamfaran Oct 14, 2025
b966464
[Feat]: #1868 prevent cell styles on selected row
iamfaran Oct 15, 2025
ac3f139
[Fix]: #1811 column alignment
iamfaran Oct 16, 2025
4aa6d92
Merge branch 'dev' of github.com:lowcoder-org/lowcoder into feat/1289…
iamfaran Oct 17, 2025
7c17a48
[Feat]: #1795 add table download
iamfaran Oct 17, 2025
9d5e0aa
[Fix]: #1795 remove unnecessary code
iamfaran Oct 17, 2025
86674b6
fix: #1732 - fixed typos in secrets.yaml files
ludomikula Oct 18, 2025
ad164cb
fix #1968: add null checks when retrieving marketplace info
ludomikula Oct 19, 2025
9308879
Merge pull request #2051 from iamfaran/feat/1289-customize-drawer-close
raheeliftikhar5 Oct 20, 2025
412b648
fix app header dropdown warning
iamfaran Oct 20, 2025
9a900cc
fix: normalize max request size for nginx
ludomikula Oct 20, 2025
2acc744
fix piechart default x-axis
iamfaran Oct 22, 2025
02f61eb
fix chart theme
iamfaran Oct 23, 2025
e0ddfb8
[Feat]: add click/double click events for lotte
iamfaran Oct 24, 2025
d5e3b23
[Fix]: table header on different table sizes
iamfaran Oct 28, 2025
013cd90
fix #2070: error while listing mobile nav apps
ludomikula Oct 29, 2025
a182845
[Fix]: #1840 table theme sort color column
iamfaran Oct 30, 2025
507efa6
[Feat]: #1827 #1937 markdown + tooltip on events
iamfaran Oct 31, 2025
f4109c6
[Fix]: #2076 mobile nav app not passing params
iamfaran Nov 4, 2025
16e9d0a
[Feat]: Add hamburger menu mode for Mobile Nav App + refactor
iamfaran Nov 4, 2025
9408350
add customizeable icon burger icon
iamfaran Nov 4, 2025
b15b10a
add close icon in the drawer
iamfaran Nov 5, 2025
a73890c
add style customization for hamburger menu mode
iamfaran Nov 5, 2025
b2254a0
fix scroll issue for the nav apps propertyview
iamfaran Nov 5, 2025
a7a9a1b
[Fix]: navigation apps render inside the preview
iamfaran Nov 6, 2025
2a82955
[Fix]: render the drawer inside the preivew/app canvas
iamfaran Nov 6, 2025
1ceefdb
add navigation component burger mode
iamfaran Nov 7, 2025
795c181
refactor navigation component
iamfaran Nov 10, 2025
0d2d8e4
make drawer placement control consistent
iamfaran Nov 10, 2025
5addc32
fix hamburger menu options
iamfaran Nov 10, 2025
d47b2fb
add conditional UI on basis of mode
iamfaran Nov 10, 2025
5c5d19b
add segmented control for both modes in the navComp
iamfaran Nov 10, 2025
2eb4675
add ability to add icon on nav items / sub menu
iamfaran Nov 11, 2025
7c1837a
fix drawer styles customization
iamfaran Nov 11, 2025
978c641
add styles for the submenu
iamfaran Nov 11, 2025
228bd0c
fix submenu style issues
iamfaran Nov 12, 2025
409ea51
remove trigger
iamfaran Nov 12, 2025
571122d
add desktop nav positions
iamfaran Nov 13, 2025
288fe92
refactor navlayout
iamfaran Nov 14, 2025
0c1c690
fix center icons on collapse + mount issue
iamfaran Nov 14, 2025
db45999
Merge pull request #2054 from iamfaran/feat/1837-table-styles
raheeliftikhar5 Nov 17, 2025
00d7804
Merge pull request #2055 from iamfaran/fix/1811-col-alignment
raheeliftikhar5 Nov 17, 2025
76017d5
Merge pull request #2056 from iamfaran/feat/1868-override-cell
raheeliftikhar5 Nov 17, 2025
59d4a8e
Merge pull request #2057 from iamfaran/feat/table-download
raheeliftikhar5 Nov 17, 2025
275e33f
Merge pull request #2061 from iamfaran/fix/appHeaderDropdown
raheeliftikhar5 Nov 17, 2025
49151ec
Merge pull request #2062 from iamfaran/fix/piechart-default
raheeliftikhar5 Nov 17, 2025
21464bd
Merge pull request #2064 from iamfaran/fix/charts-theme
raheeliftikhar5 Nov 17, 2025
beccb4d
Merge pull request #2066 from iamfaran/feat/2063-click-lotte
raheeliftikhar5 Nov 17, 2025
56fefba
Merge pull request #2074 from iamfaran/fix/1840-table-sort-colors
raheeliftikhar5 Nov 17, 2025
fed088d
Merge pull request #2075 from iamfaran/feat/markdown-tooltip
raheeliftikhar5 Nov 17, 2025
68150c9
Merge pull request #2078 from iamfaran/feat/nav-features
raheeliftikhar5 Nov 17, 2025
a656c5c
Merge branch 'dev' of github.com:lowcoder-org/lowcoder into fix/table…
iamfaran Nov 17, 2025
a4541f3
[Fix]: input blur event
iamfaran Nov 17, 2025
8086c26
[Feat]: extend nav item styles
iamfaran Nov 27, 2025
c3b5329
[Fix]: #2086 nav desktop app layout in publish mode
iamfaran Dec 1, 2025
e18fac7
[feat]: add params supports in the runQuery custom comp
iamfaran Dec 5, 2025
24440dc
Update docker-images.yml
FalkWolsky Jul 2, 2025
1de6768
added ee build command
raheeliftikhar5 Jul 2, 2025
eaab81a
updated Dockerfile to add separate lowcoder-ee-frontend image
raheeliftikhar5 Jul 2, 2025
4c5e427
updated github workflow ee image
raheeliftikhar5 Jul 2, 2025
6e329d6
update env variable
raheeliftikhar5 Jul 2, 2025
1aa5c58
Update docker-images.yml
FalkWolsky Jul 2, 2025
390fb74
Update docker-images.yml
FalkWolsky Jul 2, 2025
d82ad75
Update Dockerfile
FalkWolsky Jul 2, 2025
5520a3f
Update docker-images.yml
FalkWolsky Jul 24, 2025
bfe0e5f
[Feat]: #1820 add search filter/sorting for columns gui query
iamfaran Jul 28, 2025
3eca6dc
feat: Add SCIM + SSO JIT provisioning support for Entra ID
Sanjai1994 Nov 18, 2025
5be03be
[Fix]: column width adjusted by user
iamfaran Dec 9, 2025
e12d82a
[Fix]: tutorial modal reappear
iamfaran Dec 11, 2025
2addb44
[Feat]: #2089 add password column type
iamfaran Dec 12, 2025
46a43f9
[Feat]: #2095 add double click event on the Tree Component
iamfaran Dec 22, 2025
121de6c
[Feat]: merge app version
iamfaran Dec 24, 2025
5978420
fix UI of select component inside permission dialog
iamfaran Dec 24, 2025
4cfd8d9
fix code
iamfaran Jan 1, 2026
b491ce0
add sortable tree for nav
iamfaran Jan 1, 2026
b21552a
add collapsible
iamfaran Jan 1, 2026
9ee9478
fix linter errors
iamfaran Jan 1, 2026
c85ecb5
add max depth
iamfaran Jan 1, 2026
e9f6152
add submenu
iamfaran Jan 1, 2026
a81d69e
add collapsible
iamfaran Jan 1, 2026
ff87f39
add keys
iamfaran Jan 1, 2026
0caae9a
fix propagation
iamfaran Jan 1, 2026
b85b876
add scrollbar wrapper
iamfaran Jan 1, 2026
2840074
style wrapper
iamfaran Jan 1, 2026
cdb9fb9
adjust scrollbar height
iamfaran Jan 1, 2026
550adfe
add dispatch
iamfaran Jan 1, 2026
63dc243
add collapsed property
iamfaran Jan 1, 2026
d415868
Prepare Release 2.7.6
Jan 1, 2026
70ffeea
Fixing Lowcoder API Spec 1.3 for Release v2.7.6
Jan 1, 2026
0fd2b16
Merge pull request #2071 from iamfaran/fix/table-header
raheeliftikhar5 Jan 2, 2026
451d9f8
Merge pull request #2079 from iamfaran/fix/blur-input-event
raheeliftikhar5 Jan 2, 2026
2f9552b
Merge pull request #2087 from iamfaran/feat/2085-navstyles
raheeliftikhar5 Jan 2, 2026
844aeb0
Merge pull request #2090 from iamfaran/feat/add-params-runQuery
raheeliftikhar5 Jan 2, 2026
e1bf071
Merge pull request #2092 from iamfaran/fix/column-width-by-user
raheeliftikhar5 Jan 2, 2026
3589d7c
Merge pull request #2093 from iamfaran/fix/demo-modal
raheeliftikhar5 Jan 2, 2026
d1cd5f3
Merge pull request #2094 from iamfaran/feat/2089-password-per-row
raheeliftikhar5 Jan 2, 2026
29812ec
Merge pull request #2096 from iamfaran/feat/2095-add-double-click
raheeliftikhar5 Jan 2, 2026
482c30c
Merge pull request #2098 from iamfaran/feat/app-version
raheeliftikhar5 Jan 2, 2026
1b07123
[Feat]: #1109 add menu tree + animation + fallback fixes
iamfaran Jan 2, 2026
9af73e5
remove depth limit
iamfaran Jan 2, 2026
6035af5
Merge branch 'dev' of github.com:lowcoder-org/lowcoder into feat/1109…
iamfaran Jan 2, 2026
a2742f7
Updating dependencies and MAX_REQUEST_SIZE in node-service
Jan 2, 2026
5bd5c0b
Preparing Release v2.7.6
Jan 2, 2026
d166475
fix border
iamfaran Jan 2, 2026
5a36d21
Merge branch 'dev' into feat/1109-nav-tree-items
FalkWolsky Jan 2, 2026
2a027cd
Merge pull request #2105 from iamfaran/feat/1109-nav-tree-items
FalkWolsky Jan 2, 2026
ff471ee
Merge branch 'main' into dev
FalkWolsky Jan 3, 2026
5c9256c
[Fix]: #2101 transfer component selectedKeys + filterOption
iamfaran Jan 6, 2026
df8fd22
add select component selected styles
iamfaran Jan 8, 2026
b9122be
[Feat]: #2099 add clearValueAt + one unified state
iamfaran Jan 9, 2026
a2b4c12
[Feat]: #2100 file validation add + refactor file upload
iamfaran Jan 13, 2026
3d77e54
[Feat]: #2113 add toast / notify component
iamfaran Jan 22, 2026
877972b
fix type error icon
iamfaran Jan 22, 2026
79a727d
add styling programmtic support
iamfaran Jan 23, 2026
5de05ee
add style control propertyview
iamfaran Jan 23, 2026
8fda444
add isolate styles for each toast via uniqueID
iamfaran Jan 26, 2026
e3eac97
fix + add more styling customizations for toast component
iamfaran Jan 27, 2026
c13e155
fix toast width layout + add color customization for icons
iamfaran Jan 28, 2026
ca98a9f
[Fix]: tabbed container body padding
iamfaran Jan 29, 2026
8018b12
[Fix]: #2118 table download event override
iamfaran Jan 29, 2026
0ec710a
[Fix]: #2119 column layout hide property
iamfaran Feb 2, 2026
4838337
[Fix]: #1758 tabbed container padding and remove unnecessary code
iamfaran Feb 3, 2026
0983be1
add progress bar toast customization
iamfaran Feb 4, 2026
bbe7f74
[Feat]: add support of multiple input formats for date component
iamfaran Feb 5, 2026
4741f03
refactor toast component + remove unnecessary code
iamfaran Feb 6, 2026
e0a18e0
fix conversation history
iamfaran Feb 10, 2026
74f1787
fix height messages window + add height mode (auto/fixed) for chat co…
iamfaran Feb 10, 2026
b4620e5
add style customization
iamfaran Feb 11, 2026
5875702
seperate chat panel component
iamfaran Feb 12, 2026
11bb844
complete chat styles
iamfaran Feb 12, 2026
a12a9b9
refactor ai chat & chat panel component
iamfaran Feb 13, 2026
e3fe298
fix re rendering issue
iamfaran Feb 16, 2026
c970bc2
fix button forward ref + ChatProvider level
iamfaran Feb 16, 2026
64dddc0
fix styling warninings
iamfaran Feb 17, 2026
5ef4403
refactor styles and add storage cleaner for bottom chat panel
iamfaran Feb 17, 2026
a46c1f7
fix attachment file adaptor for chat component
iamfaran Feb 18, 2026
4d22430
add messageInstance for throwing errors in attachments for AI chat co…
iamfaran Feb 18, 2026
9345b10
[Fix]: pie chart tooltip
iamfaran Feb 18, 2026
56dd3fd
add support for high resolution images in fileComp
iamfaran Feb 19, 2026
7fd74ca
remove unnecessary settings from the AI chat component
iamfaran Feb 19, 2026
0c4e885
fix image attachments preview and remove attachments from the bottom …
iamfaran Feb 20, 2026
c1ba8f2
Merge pull request #2110 from iamfaran/feat/2099-fileUpload
raheeliftikhar5 Feb 25, 2026
6a300eb
Merge pull request #2109 from iamfaran/feat/theme-style-comps
raheeliftikhar5 Feb 25, 2026
8c83d9e
Merge pull request #2115 from iamfaran/feat/toast-notify
raheeliftikhar5 Feb 25, 2026
94525d1
Merge pull request #2108 from iamfaran/fix/2101-transfer-component
raheeliftikhar5 Feb 25, 2026
18ebefb
Merge pull request #2121 from iamfaran/fix/2118-table-download-event
raheeliftikhar5 Feb 25, 2026
8232033
Merge pull request #2122 from iamfaran/fix/tabbed-container-vertical-…
raheeliftikhar5 Feb 25, 2026
adc5f64
Merge pull request #2126 from iamfaran/fix/2119-column-hide
raheeliftikhar5 Feb 25, 2026
7ba64e7
Merge pull request #2129 from iamfaran/feat/date-component-mask
raheeliftikhar5 Feb 25, 2026
dafdca9
Merge pull request #2131 from iamfaran/fix/piechart-tooltip
raheeliftikhar5 Feb 25, 2026
57fd468
add chatCompv2 + new chatData store
iamfaran Feb 25, 2026
a8e7046
Merge branch 'dev' of github.com:lowcoder-org/lowcoder into fix/1758-…
iamfaran Feb 25, 2026
18abefb
setup basic data structure for chatv2
iamfaran Feb 26, 2026
d8a8423
add yjs support
iamfaran Feb 27, 2026
362e362
fix linter errors
iamfaran Mar 3, 2026
6a1911b
add typing indicators
iamfaran Mar 3, 2026
bf08ee3
refactor chatbox styles, modes and fix registry
iamfaran Mar 4, 2026
6a0ff47
refactor chatbox to multiple files
iamfaran Mar 5, 2026
0a4fe35
remove duplication of modes
iamfaran Mar 5, 2026
7d40041
add testing chat controller
iamfaran Mar 6, 2026
58598dc
add typing state via awareness protocol
iamfaran Mar 6, 2026
9622f2d
add LLM chat room for chatbox
iamfaran Mar 9, 2026
c10f018
[Feat]: Add multiline column type
iamfaran Mar 10, 2026
a8a7522
add room invites + pluv integration
iamfaran Mar 10, 2026
33b9efe
fix pluv integration issues
iamfaran Mar 11, 2026
4da29c4
add chatController architecture
iamfaran Mar 12, 2026
c1030f6
complete chatcontroller architecture
iamfaran Mar 13, 2026
c26d9b1
add rooms in the chatbox UI + fix controller issues
iamfaran Mar 13, 2026
6ae7385
fix TS errors + chatbox context
iamfaran Mar 16, 2026
d5b6b62
add online presence rooms
iamfaran Mar 16, 2026
ab37868
fix message styles, autoscroll and pluv server
iamfaran Mar 17, 2026
c2daad6
add shared state and fix date format
iamfaran Mar 18, 2026
a18f621
[Fix]: #2133 Data Source access control
iamfaran Mar 20, 2026
daf75e5
Merge pull request #2127 from iamfaran/fix/1758-tabbed
raheeliftikhar5 Mar 24, 2026
24c5250
Merge pull request #2136 from iamfaran/feat/multiline-column
raheeliftikhar5 Mar 24, 2026
baf0221
Merge pull request #2137 from iamfaran/fix/2133-datasource-access
raheeliftikhar5 Mar 24, 2026
1206216
Add custom styles for the chatbox component
iamfaran Mar 24, 2026
47efd75
fix property view layout + padding/radius issues for the chatbox comp…
iamfaran Mar 25, 2026
44779a6
add hocuspocus server
iamfaran Mar 26, 2026
5f87866
fix hocuspocus integration for chatbox issues
iamfaran Mar 27, 2026
89ce6d8
Delete legacy chatbox and chatControllerComp
iamfaran Mar 30, 2026
68195aa
add translations for chatbox and chatcontroller
iamfaran Mar 30, 2026
1ca4d85
update Chatbox and ChatController name
iamfaran Mar 31, 2026
9016da1
Merge branch 'dev' of github.com:lowcoder-org/lowcoder into feat/ai
iamfaran Mar 31, 2026
a9e37a3
fix type error publishApplication action
iamfaran Mar 31, 2026
342502d
remove outdated readme files
iamfaran Apr 1, 2026
65fc64a
fix: warning eslint unsupported version
iamfaran Apr 1, 2026
5e4127d
fix: search filter navigation in chatbox
iamfaran Apr 2, 2026
0652a07
add docs for the chat components
iamfaran Apr 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
21 changes: 21 additions & 0 deletions .github/workflows/docker-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,18 +80,21 @@ jobs:
# Image names
ALLINONE_IMAGE_NAMES=lowcoderorg/lowcoder-ce:${IMAGE_TAG}
FRONTEND_IMAGE_NAMES=lowcoderorg/lowcoder-ce-frontend:${IMAGE_TAG}
FRONTEND_EE_IMAGE_NAMES=lowcoderorg/lowcoder-enterprise-frontend:${IMAGE_TAG}
APISERVICE_IMAGE_NAMES=lowcoderorg/lowcoder-ce-api-service:${IMAGE_TAG}
NODESERVICE_IMAGE_NAMES=lowcoderorg/lowcoder-ce-node-service:${IMAGE_TAG}

if [[ "${IS_LATEST}" == "true" ]]; then
ALLINONE_IMAGE_NAMES="lowcoderorg/lowcoder-ce:latest,${ALLINONE_IMAGE_NAMES}"
FRONTEND_IMAGE_NAMES="lowcoderorg/lowcoder-ce-frontend:latest,${FRONTEND_IMAGE_NAMES}"
FRONTEND_EE_IMAGE_NAMES="lowcoderorg/lowcoder-enterprise-frontend:latest,${FRONTEND_EE_IMAGE_NAMES}"
APISERVICE_IMAGE_NAMES="lowcoderorg/lowcoder-ce-api-service:latest,${APISERVICE_IMAGE_NAMES}"
NODESERVICE_IMAGE_NAMES="lowcoderorg/lowcoder-ce-node-service:latest,${NODESERVICE_IMAGE_NAMES}"
fi;

echo "ALLINONE_IMAGE_NAMES=${ALLINONE_IMAGE_NAMES}" >> "${GITHUB_ENV}"
echo "FRONTEND_IMAGE_NAMES=${FRONTEND_IMAGE_NAMES}" >> "${GITHUB_ENV}"
echo "FRONTEND_EE_IMAGE_NAMES=${FRONTEND_EE_IMAGE_NAMES}" >> "${GITHUB_ENV}"
echo "APISERVICE_IMAGE_NAMES=${APISERVICE_IMAGE_NAMES}" >> "${GITHUB_ENV}"
echo "NODESERVICE_IMAGE_NAMES=${NODESERVICE_IMAGE_NAMES}" >> "${GITHUB_ENV}"

Expand Down Expand Up @@ -146,6 +149,24 @@ jobs:
push: true
tags: ${{ env.FRONTEND_IMAGE_NAMES }}

- name: Build and push the enterprise edition frontend image
if: ${{ env.BUILD_FRONTEND == 'true' }}
uses: docker/build-push-action@v6
env:
NODE_ENV: production
with:
file: ./deploy/docker/Dockerfile
target: lowcoder-enterprise-frontend
build-args: |
REACT_APP_ENV=production
REACT_APP_EDITION=enterprise
REACT_APP_COMMIT_ID="dev #${{ env.SHORT_SHA }}"
platforms: |
linux/amd64
linux/arm64
push: true
tags: ${{ env.FRONTEND_EE_IMAGE_NAMES }}

- name: Build and push the node service image
if: ${{ env.BUILD_NODESERVICE == 'true' }}
uses: docker/build-push-action@v6
Expand Down
2 changes: 1 addition & 1 deletion client/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.7.2
2.7.6
6 changes: 4 additions & 2 deletions client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "lowcoder-frontend",
"version": "2.7.2",
"version": "2.7.6",
"type": "module",
"private": true,
"workspaces": [
Expand All @@ -15,6 +15,7 @@
"start:ee": "REACT_APP_EDITION=enterprise yarn workspace lowcoder start",
"translate": "node --loader ts-node/esm ./scripts/translate.js",
"build": "yarn node ./scripts/build.js",
"build:ee": "REACT_APP_EDITION=enterprise yarn node ./scripts/build.js",
"test": "jest && yarn workspace lowcoder-comps test",
"prepare": "yarn workspace lowcoder prepare",
"build:core": "yarn workspace lowcoder-core build",
Expand Down Expand Up @@ -56,7 +57,7 @@
"shelljs": "^0.8.5",
"svgo": "^3.0.0",
"ts-node": "^10.4.0",
"typescript": "^4.8.4",
"typescript": "^5.6.2",
"whatwg-fetch": "^3.6.2"
},
"lint-staged": {
Expand All @@ -80,6 +81,7 @@
"@types/styled-components": "^5.1.34",
"antd-mobile": "^5.34.0",
"chalk": "4",
"dompurify": "^3.3.1",
"flag-icons": "^7.2.1",
"number-precision": "^1.6.0",
"react-countup": "^6.5.3",
Expand Down
2 changes: 1 addition & 1 deletion client/packages/lowcoder-comps/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "lowcoder-comps",
"version": "2.7.2",
"version": "2.7.6",
"type": "module",
"license": "MIT",
"dependencies": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ BarChartTmpComp = withViewFn(BarChartTmpComp, (comp) => {
const [chartSize, setChartSize] = useState<ChartSize>();
const firstResize = useRef(true);
const theme = useContext(ThemeContext);
const [chartKey, setChartKey] = useState(0);
const prevRaceMode = useRef<boolean>();
const defaultChartTheme = {
color: chartColorPalette,
backgroundColor: "#fff",
Expand All @@ -73,6 +75,17 @@ BarChartTmpComp = withViewFn(BarChartTmpComp, (comp) => {
log.error('theme chart error: ', error);
}


// Detect race mode changes and force chart recreation
const currentRaceMode = comp.children.chartConfig?.children?.comp?.children?.race?.getView();
useEffect(() => {
if (prevRaceMode.current !== undefined && prevRaceMode.current !== currentRaceMode) {
// Force chart recreation when race mode changes
setChartKey(prev => prev + 1);
}
prevRaceMode.current = currentRaceMode;
}, [currentRaceMode]);

const triggerClickEvent = async (dispatch: any, action: CompAction<JSONValue>) => {
await getPromiseAfterDispatch(
dispatch,
Expand Down Expand Up @@ -160,7 +173,6 @@ BarChartTmpComp = withViewFn(BarChartTmpComp, (comp) => {
useResizeDetector({
targetRef: containerRef,
onResize: ({width, height}) => {
console.log('barChart - resize');
if (width && height) {
setChartSize({ w: width, h: height });
}
Expand All @@ -176,11 +188,13 @@ BarChartTmpComp = withViewFn(BarChartTmpComp, (comp) => {
return (
<div ref={containerRef} style={{height: '100%'}}>
<ReactECharts
key={chartKey}
ref={(e) => (echartsCompRef.current = e)}
style={{ height: "100%" }}
notMerge
lazyUpdate
notMerge={!currentRaceMode}
lazyUpdate={!currentRaceMode}
opts={{ locale: getEchartsLocale() }}
theme={themeConfig}
option={option}
mode={mode}
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,15 @@ export function getEchartsConfig(
animationEasing: 'linear',
animationEasingUpdate: 'linear',
}
} else {
// Ensure proper animation settings when race is disabled
config = {
...config,
animationDuration: 1000,
animationDurationUpdate: 1000,
animationEasing: 'cubicOut',
animationEasingUpdate: 'cubicOut',
}
}
if (props.data.length <= 0) {
// no data
Expand Down Expand Up @@ -333,6 +342,21 @@ export function getEchartsConfig(
animationDurationUpdate: 300
},
}
} else {
// Reset axis animations when race is disabled
config = {
...config,
xAxis: {
...config.xAxis,
animationDuration: undefined,
animationDurationUpdate: undefined
},
yAxis: {
...config.yAxis,
animationDuration: undefined,
animationDurationUpdate: undefined
},
}
}
}
// console.log("Echarts transformedData and config", transformedData, config);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ export const BarChartConfig = (function () {
type: "bar",
subtype: props.type,
realtimeSort: props.race,
seriesLayoutBy: props.race?'column':undefined,
seriesLayoutBy: props.race?'column':'row',
label: {
show: props.showLabel,
position: "top",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,7 @@ let CalendarBasicComp = (function () {
const ref = createRef<HTMLDivElement>();
const editEvent = useRef<EventInput>();
const initData = useRef<boolean>(false);
const clickTimeout = useRef<NodeJS.Timeout | null>(null);
const [form] = Form.useForm();
const [left, setLeft] = useState<number | undefined>(undefined);
const [licensed, setLicensed] = useState<boolean>(props.licenseKey !== "");
Expand Down Expand Up @@ -370,6 +371,15 @@ let CalendarBasicComp = (function () {
initData.current = true;
}
}, [JSON.stringify(initialEvents), comp?.children?.comp?.children?.initialData]);

// Cleanup timeout on unmount
useEffect(() => {
return () => {
if (clickTimeout.current) {
clearTimeout(clickTimeout.current);
}
};
}, []);

const resources = useMemo(() => props.resources.value, [props.resources.value]);

Expand Down Expand Up @@ -850,22 +860,30 @@ let CalendarBasicComp = (function () {
handleEventDataChange,
]);

const handleSingleClick = useCallback(() => {
// Prevent double click from triggering the event
// Use a timeout to debounce rapid clicks
if (clickTimeout.current) {
clearTimeout(clickTimeout.current);
clickTimeout.current = null;
return; // This was a double click, don't trigger
}

clickTimeout.current = setTimeout(() => {
props.onEvent('click');
clickTimeout.current = null;
}, 150); // Small delay to catch double clicks
}, [props.onEvent]);

const handleDbClick = useCallback(() => {
const event = props.updatedEventsData.find(
(item: EventType) => item.id === editEvent.current?.id
) as EventType;
if (!props.editable || !editEvent.current) {
return;
}
if (event) {
showModal(event, true);
if (onEventVal && onEventVal.some((e: any) => e.name === 'doubleClick')) {
// Check if 'doubleClick' is included in the array
props.onEvent('doubleClick');
} else {
if (onEventVal && onEventVal.some((e: any) => e.name === 'doubleClick')) {
// Check if 'doubleClick' is included in the array
props.onEvent('doubleClick');
} else {
showModal(editEvent.current as EventType, false);
}
showModal(editEvent.current as EventType, false);
}
}, [
editEvent,
Expand Down Expand Up @@ -974,6 +992,9 @@ let CalendarBasicComp = (function () {
allDaySlot={props.showAllDay}
eventContent={renderEventContent}
select={(info) => handleCreate(info)}
dateClick={() => {
handleSingleClick();
}}
eventClick={(info) => {
const event = events.find(
(item: EventInput) => item.id === info.event.id
Expand All @@ -982,6 +1003,7 @@ let CalendarBasicComp = (function () {
setTimeout(() => {
editEvent.current = undefined;
}, 500);
handleSingleClick();
}}
moreLinkClick={(info) => {
let left = 0;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,7 @@ LineChartTmpComp = withViewFn(LineChartTmpComp, (comp) => {
notMerge
lazyUpdate
opts={{ locale: getEchartsLocale() }}
theme={themeConfig}
option={option}
mode={mode}
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -194,6 +194,7 @@ PieChartTmpComp = withViewFn(PieChartTmpComp, (comp) => {
notMerge
lazyUpdate
opts={{ locale: getEchartsLocale() }}
theme={themeConfig}
option={option}
mode={mode}
/>
Expand Down Expand Up @@ -302,7 +303,7 @@ let PieChartComp = withExposingConfigs(PieChartTmpComp, [


export const PieChartCompWithDefault = withDefault(PieChartComp, {
xAxisKey: "date",
xAxisKey: "name",
series: [
{
dataIndex: genRandomKey(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -172,15 +172,7 @@ export function getEchartsConfig(
}
},
tooltip: props.tooltip && {
trigger: "axis",
axisPointer: {
type: "line",
lineStyle: {
color: "rgba(0,0,0,0.2)",
width: 2,
type: "solid"
}
}
trigger: "item",
},
grid: {
...gridPos,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,7 @@ ScatterChartTmpComp = withViewFn(ScatterChartTmpComp, (comp) => {
notMerge
lazyUpdate
opts={{ locale: getEchartsLocale() }}
theme={themeConfig}
option={option}
mode={mode}
/>
Expand Down
9 changes: 5 additions & 4 deletions client/packages/lowcoder-core/lib/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -1692,11 +1692,12 @@ class CodeNode extends AbstractNode {
// if query is dependent on itself, mark as ready
if (pathsArr?.[0] === options?.queryName)
return;
// TODO: check if this is needed after removing lazy load
// wait for lazy loaded comps to load before executing query on page load
if (value && !Object.keys(value).length && paths.size) {
isFetching = true;
ready = false;
}
// if (value && !Object.keys(value).length && paths.size) {
// isFetching = true;
// ready = false;
// }
if (_.has(value, IS_FETCHING_FIELD)) {
isFetching = isFetching || value.isFetching === true;
}
Expand Down
9 changes: 5 additions & 4 deletions client/packages/lowcoder-core/src/eval/codeNode.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -176,11 +176,12 @@ export class CodeNode extends AbstractNode<ValueAndMsg<unknown>> {
// if query is dependent on itself, mark as ready
if (pathsArr?.[0] === options?.queryName) return;

// TODO: check if this is needed after removing lazy load
// wait for lazy loaded comps to load before executing query on page load
if (value && !Object.keys(value).length && paths.size) {
isFetching = true;
ready = false;
}
// if (value && !Object.keys(value).length && paths.size) {
// isFetching = true;
// ready = false;
// }
if (_.has(value, IS_FETCHING_FIELD)) {
isFetching = isFetching || value.isFetching === true;
}
Expand Down
10 changes: 0 additions & 10 deletions client/packages/lowcoder-design/src/components/Dropdown.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -159,16 +159,6 @@ export function Dropdown<T extends OptionsType>(props: DropdownProps<T>) {
const { placement = "right" } = props;
const valueInfoMap = _.fromPairs(props.options.map((option) => [option.value, option]));

useEffect(() => {
const dropdownElems = document.querySelectorAll<HTMLElement>("div.ant-dropdown ul.ant-dropdown-menu");
for (let index = 0; index < dropdownElems.length; index++) {
const element = dropdownElems[index];
element.style.maxHeight = "300px";
element.style.overflowY = "scroll";
element.style.minWidth = "150px";
element.style.paddingRight = "10px";
}
}, []);

return (
<FlexDiv style={props.style} className={props.className}>
Expand Down
Loading
Loading