From 6b5faef6d72ece22b3d0b5e1da1ccba4db472384 Mon Sep 17 00:00:00 2001 From: Saravanan kanagaraj Date: Fri, 9 Oct 2026 13:32:59 +0530 Subject: [PATCH 1/3] feature(REPORT-530050): site revamp related changes. --- build/build.js | 1 + src/assets/footer/bg-texture.png | Bin 27895 -> 0 bytes src/common/header/header.css | 472 +++++++++-------------- src/common/header/header.js | 49 ++- src/common/main-content/main-content.css | 346 ++++++++++------- src/common/main-content/main-content.js | 69 ++-- src/common/sidebar/sidebar.css | 101 +++-- src/common/sidebar/sidebar.js | 24 +- src/controls/designer/designer.js | 4 +- src/index.js | 1 + src/samples.json | 14 +- src/styles/index.css | 20 +- src/styles/variable.css | 24 ++ 13 files changed, 587 insertions(+), 538 deletions(-) delete mode 100644 src/assets/footer/bg-texture.png create mode 100644 src/styles/variable.css diff --git a/build/build.js b/build/build.js index 791bf2f..4981f2c 100644 --- a/build/build.js +++ b/build/build.js @@ -1,6 +1,7 @@ const gulp = require('gulp'); const runSequence = require('gulp4-run-sequence'); var shelljs = require('shelljs'); +const fs = require("fs"); gulp.task('pre-build', function (done) { runSequence('copy-extensions-assets', 'update-extensions-export', 'clean', 'copy-src-assets', done); diff --git a/src/assets/footer/bg-texture.png b/src/assets/footer/bg-texture.png deleted file mode 100644 index 0af7abfc0b318cc7282dddcf77542a2209b22ba9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27895 zcmbrmd05R`9|yX2Bc(zrio$84(9x*TOj4PeRBS^?gOZYzwi883NCQoXqH&W_G;F6M zQliqNq5)~3q>`xaXYHKx-uvA9-22Df&-1=Vd$0Xn-{JEe*ZS?Vo6OdU2uTYOLPU($ zuiiq4P&y$z4U+`$j*{w+W%$ozxAit2gh(pT|1pfW$oJt*hR2q5D@jJh>`wf_w||A{ z3PSFN3IE!~Pl)q5J2Zsqgok2NXfa=6A7ZV=e+26M@?81+!M?y8Gi@xGN_-d+eL^_1r}S&RjahyC_`3&= z;)G~zwfuNpwy0k0L-pq985WfE%zXvJHDRw75)&ywVlCc~?spRJf1JOl?Qmv_XqK@P zQ;O7kyT5s2bLRV-sY3$AmWKohOGc)qc%U_L&$|j@tt+QRtc6Fz+w+xW#!U!mdiJeL zwKQv3E#;|$Wb$T0>gPMybp)+BI<@U?>mfp1dy4hGhY(_-IGc~Nedc)2DyjK+cke^{ zK_!P1_1W$6(DogpL-rz_?>V(##`W(U3u5{B=@epF5lR1Ud+|AiL740IhHDj6r;3(2 z@18lEu$;17Bv=mOQ+b#l;z!#~ND|T_?QF$QyliBWH#g=O*jh12ZboNLjhk;;Bp=i9 zS0`a_8T}%kXHYPSK{yii8A7B_&e@)yv?z{+jeBW}5w`rwRFYPkyfcq5h?|0`)&fd! z*vbFx!#9EK{oM-*vD)nabH13p6hE=%ky}Kp<2u#Fe-uKWM19tK7k$5x9Bn@yDZ)Cs zuwB;jJ*W>PgD0^nW)29l*uCy~gm zUEh@#IorTeA_4iK$=A>BXdJ@6CKpZL46r|muGFvK1sAQiy)QrmQ?Jh>kqgI*#&_CU zGRSa<#wlkY8()IpTTHc^_Ro7O?6Ajs5@C&B@J|TJ2;m{BEEurN!*}+(jG(_K5pqhm zG|^FKesK4ws+k{wpIlGt3f^1QBt6B}?+-$D{A`x;XJ3?Ko$mX}VBMmoq+3k_Z)HAi zIwI@%2&w%WT8P`>X}wQeQ<{)g^LM8ytR+{#_#bo(&#x*xBrQgmPc<8E)~BWvJ1WB` z*p_c}Lf_lkb zh{qVSzDtEcdZITQZ2YM-Do;4E!?}dBa_~|3Kk#x^^U`OH-qHu3rBw7mg2-ssiXyJB z-zecF^?&{x?> z;UU7+t$O&tj~+sqm&56}~PE7m9)LxTN%I2=$5^ zv^jeB-KE#K7bHl!&qCDK9el8)|CQ%vMCR#GMB(|c_6xnj={&^w3LsRVI(y@T{Yb32 ztG9)f$!838%S!>s_49uR#*xRwE@rJb@fhqYYW7?KbZPx74M*aidC#B2v1aCsAidbW z_xE)=JB`$J{J|g|p55aydl`h4uJ)`^=Vo{S92LpDPObU1zx5G8Q`=zCrSrMX(JkB2DN~z4oNq5&bYuKmmicQBVs{o{PP^8Bs@-b1F@f z`W|sEokrBFFY~ml9ceb+ayfKd9N($l8@~Ht&BBmsWrW}0HG{d%tLjt3?firYd)Jrd zM=FRm<)_Y(+$-iq{Y{WO@QUl*E-r{U(hJ&k--X2lJZ9Gv@sRqt6Zi@YBhhC~j7Z&4 z-`PRFI}boF0UIA!nLeHWUq$9P}u36;TD)H4g8WlLUCOwVyTS!j&3sY94`~t&JA2 z%35kP#eLr=A;RQ6*R^W|$m$Ivb{pU(_J~`^YE)0r$_8K?!dj z9qrA4A)>0-JS{$kqt63*2}`r?zUM>emIq1R`5wIfFZ`oBb8Kjh?8C)E#EoI9LNdPm z7sYf#vht%&2LMv?fK{2PgC2Ll3ojq4v|1}!|M1f^5$6Yl=#wlxnjV+j2SnB; zovaznU8dZ=Jx%~=4MDVbAf0uonLQrC9<_ zvrgjyiGGp1vtbK_6yQU3(Bg|w!B3@K#Z6B3Gf>S)+Y!6}Sv8pE4Ag=%0A<#<$?(gx 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 T$81gl`OVR8-RdhV*}wf4pUZFL diff --git a/src/common/header/header.css b/src/common/header/header.css index a96e413..3e278c7 100644 --- a/src/common/header/header.css +++ b/src/common/header/header.css @@ -1,91 +1,18 @@ -/* cyrillic-ext */ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZJhiI2B.woff2) format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; -} - -/* cyrillic */ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZthiI2B.woff2) format('woff2'); - unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; -} - -/* greek-ext */ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZNhiI2B.woff2) format('woff2'); - unicode-range: U+1F00-1FFF; -} - -/* greek */ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZxhiI2B.woff2) format('woff2'); - unicode-range: U+0370-03FF; -} - -/* vietnamese */ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZBhiI2B.woff2) format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; -} - -/* latin-ext */ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZFhiI2B.woff2) format('woff2'); - unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; -} - -/* latin */ -@font-face { - font-family: 'Inter'; - font-style: normal; - font-weight: 400; - font-display: swap; - src: url(https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2) format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; -} - -@font-face { - font-family: 'ej-sb-header-icons'; - src: url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAAKAIAAAwAgT1MvMj0hSRsAAAEoAAAAVmNtYXC1MrWKAAABlAAAAExnbHlmuazPKQAAAewAAATAaGVhZBSs0TUAAADQAAAANmhoZWEHmQNuAAAArAAAACRobXR4E6AAAAAAAYAAAAAUbG9jYQEcAvIAAAHgAAAADG1heHABHQEAAAABCAAAACBuYW1lS91XWgAABqwAAAKRcG9zdKWcZ6EAAAlAAAAAYwABAAADUv9qAFoEAAAA//4D6gABAAAAAAAAAAAAAAAAAAAABQABAAAAAQAABmW/B18PPPUACwPoAAAAANjSRjMAAAAA2NJGMwAAAAAD6gPqAAAACAACAAAAAAAAAAEAAAAFAPQADgAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAQPtAZAABQAAAnoCvAAAAIwCegK8AAAB4AAxAQIAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABA5wHnBwNS/2oAWgPqAJYAAAABAAAAAAAABAAAAAPoAAAD6AAAA+gAAAPoAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAIAAgAAgAA5wHnBOcH//8AAOcB5wPnB///AAAAAAAAAAEACAAIAAoAAAABAAQAAgADAAAAAAAkAJIA+AJgAAIAAAAAA+oDwQAHABIAADchESMVITUjJScjBwkBJyMHESMCA+hR/L5VAdKAXgMBAwEEA16ARSsBHczMroED/vwBAASBAc8AAAQAAAAAA+oDVAAWAC0ANwBCAAABESYGBwYWNz4BFxY3PgE1ETQmKwEiBgURHgEXFjc2FhcWNicuAQcRNCYrASIGJQM2FhcRJgcOASURPgEXAzYmJyMiA7Nq2WUOJxBexWIOCwoODwsDCw/8TwEOCgsOYsVfDycOZdlqDwsDCw8CDwOO2wZRO4Bi/mAE1ZUEAmKBCDgCrv4gLw45DBUGNgozBwQBDwsB7gsPDwf+EgsPAQMGMwo2BhYLOg4vAd8LEBAu/fVbKwoCORQBB1lS/cYJI1ICCwZYCAAAAAADAAAAAAPqA+oAJwAwADwAAAEeARUWBgcOARc+AT8BFwcGBwYjIi4CNTQ2NwcGDwEnNzY3NjcyFjcOASImNDYyFgEWABc2ADcmACcGAAIsBwgBChYeFQECHh4NLA1CIiUWDBYOCCQjDQwcCS8NMyovIAkQKAEnOicnOif9sgYBG9PUARsFBf7l1NP+5QJwBRAKAixPZVoMBBkbCiwNQRMTCQ4WCyGZfAwKGQomDDoYGAEGgB0nJzonJf7g0/7lBgYBG9PUARsFBf7lAAAOAAAAAAPqA5sACwAXACwAOQBIAFUAZABxAH4AigCXAKoAtgDzAAAlFhczBwYPATU2PwEHFh8BIyYvATc2PwIxBw4BDwEjBiMiLwImJzU3NhcyJxYfATEGDwEnJic1MxcGDwEnJiciDwEnJj0BNxcGDwEnJicjNzY3NTcnFjMyPwEXFhcVBzU2PwIWFxUHNSYnNTc2PwEFFh8BBwYHFQc1Nj8CFh8BBwYPAScmLwIOAQcxJyYnMTc2PwIfARYXFSMGJyMxPgE3MTc2MzYHHgEXPgE3LgEnDgETLgEHDgEHDgEHHgEXNzUjLgEnPgE3NTMmNjc2FhcyMTc+ATceARcVHgEXDgEPARc3PgE3LgEnMS4BJw4BAlEoEQECHS0GCwsBkQcPBAIzIQQCHBsGgQEGDgUBAQ4PCgkFAhQJAx0bHXEBAwEhIwIBFQNakgEDAgkWGhwfAgEEgWcDFQICESsEAQMBV9wcHxcYBgEDAYEBAwHOEgNWAQQBHR0K/tsYKAgCAwFbAxECzy8eAwcZGQYBBw4DYQUOBQcmFwEhNQVMAQQQCAE9MgEHEAUFCgoQ2gJ0V1ZyAgN0VlZzXRxJJyo1CkhYAQN5Xx8cQlkDAVJHBAEXJyM6CgFEAmBDRVcCR1kCAVNHBQEiSW4CAlZDA4FeR3HFCAgDJRACAhgsBQIhIggPKAUBCQYBAgMcJwoCAwEBAygnAQEEAUAYGAYGDAEBIioCBxUTCgICAQQBBhcWBgEBKiIDAQgKChMWCgFFAwMBBBgWBAEGFRQIFSAmBAEEFxkEAQULBAEJCAIJFBYHAQUmIARMEicEAwkGAQUiJgYBDiobAQgJAiwSAQQBCCglBQcIHy8MAQEBrFdyAQJ0VldyAgN0AaEWEAoKOywUa0hVcwUBPgJQPTxSAgIbQgwIHB8BR1UBAlw5OQFUQD9NAgE9AQZvVkdpGGB5AgJLAAAAABIA3gABAAAAAAAAAAEAAAABAAAAAAABABAAAQABAAAAAAACAAcAEQABAAAAAAADABAAGAABAAAAAAAEABAAKAABAAAAAAAFAAsAOAABAAAAAAAGABAAQwABAAAAAAAKACwAUwABAAAAAAALABIAfwADAAEECQAAAAIAkQADAAEECQABACAAkwADAAEECQACAA4AswADAAEECQADACAAwQADAAEECQAEACAA4QADAAEECQAFABYBAQADAAEECQAGACABFwADAAEECQAKAFgBNwADAAEECQALACQBjyByZXBvcnRzLXNiLWljb25zUmVndWxhcnJlcG9ydHMtc2ItaWNvbnNyZXBvcnRzLXNiLWljb25zVmVyc2lvbiAxLjByZXBvcnRzLXNiLWljb25zRm9udCBnZW5lcmF0ZWQgdXNpbmcgU3luY2Z1c2lvbiBNZXRybyBTdHVkaW93d3cuc3luY2Z1c2lvbi5jb20AIAByAGUAcABvAHIAdABzAC0AcwBiAC0AaQBjAG8AbgBzAFIAZQBnAHUAbABhAHIAcgBlAHAAbwByAHQAcwAtAHMAYgAtAGkAYwBvAG4AcwByAGUAcABvAHIAdABzAC0AcwBiAC0AaQBjAG8AbgBzAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGUAcABvAHIAdABzAC0AcwBiAC0AaQBjAG8AbgBzAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAHUAcwBpAG4AZwAgAFMAeQBuAGMAZgB1AHMAaQBvAG4AIABNAGUAdAByAG8AIABTAHQAdQBkAGkAbwB3AHcAdwAuAHMAeQBuAGMAZgB1AHMAaQBvAG4ALgBjAG8AbQAAAAACAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUBAgEDAQQBBQEGAAhkb3dubG9hZAlib29rLW9wZW4QY2lyY2xlLWluZm8tLS0wMg9jbG91ZC1wdWJsaWMtd2YAAAA=) format('truetype'); - font-weight: normal; - font-style: normal; -} - .ej-sb-header { - background-color: #fff; - box-shadow: 0 8px 11px -6px rgba(0, 0, 0, 0.12); - height: 48px; width: 100%; - display: flex; position: fixed; z-index: 10000; - font-family: "Roboto", "Segoe UI", "GeezaPro", "DejaVu Serif", "sans-serif"; + font-family: "Inter", sans-serif; + height: 64px; + flex: 0 0 auto; + display: flex; + align-items: center; justify-content: space-between; + padding: 0px 24px; + background: var(--neutral-0); + border-bottom: 1px solid var(--neutral-200); } + .ej-sb-header.designer-header { z-index: 1 !important; } @@ -94,290 +21,239 @@ height: inherit; display: flex; align-items: center; + gap: 0; } .ej-sb-header .ej-sb-left-side .ej-sb-hamburger-icon { - margin: 0 21px 0 25px; + margin: 0 16px 0 0; font-size: 24px; cursor: pointer; + color: var(--neutral-600); + transition: color 180ms ease, background 180ms ease, border-radius 180ms ease; + padding: 0px 6px; + border-radius: 6px; } .ej-sb-header .ej-sb-left-side .ej-sb-hamburger-icon::before { content: "\e914"; - color: #333; } +.ej-sb-header .ej-sb-left-side .ej-sb-hamburger-icon:hover { + background: var(--neutral-100); +} + +.ej-sb-header .ej-sb-left-side .ej-sb-logo-link { + display: inline-flex; + align-items: center; + margin-right: 20px; + text-decoration: none; +} + +.ej-sb-header .ej-sb-left-side .ej-sb-logo { + height: 30px; + width: auto; + max-width: 200px; + display: block; +} + +.ej-sb-header .ej-sb-left-side .ej-sb-header-divider { + width: 1px; + height: 28px; + background: var(--neutral-200); + margin-right: 16px; + flex: 0 0 auto; +} +.ej-sb-header .ej-sb-left-side .framework { + font-size: 12px; + font-weight: 600; + color: var(--neutral-500); + padding-right: 10px; + margin-bottom: 0px; +} .ej-sb-header .ej-sb-left-side .ej-sb-platform-name { font-size: 15px; - opacity: 0.87; font-weight: 600; - margin-top: 0px; - margin-bottom: 0px; + color: var(--neutral-900); + margin: 0; } -.ej-sb-header .ej-sb-left-side .dropdown button.btn-secondary, -.ej-sb-header .ej-sb-left-side .dropdown button.btn-secondary:focus, -.ej-sb-header .ej-sb-left-side .dropdown button.btn-secondary:active, -.ej-sb-header .ej-sb-left-side .dropdown button.btn-secondary:active:focus { - background: transparent; - color: #2b3a5c; - opacity: .87; - border: none; - box-shadow: none; - margin-top: 4px; - padding-left: 5px; +.ej-sb-header .ej-sb-left-side .ej-platform-name { + margin: 0 21px 0 25px; + font-size: 15px; + font-weight: 600; + color: var(--neutral-900); } -.ej-sb-header .ej-sb-left-side .dropdown .dropdown-menu a { - cursor: pointer; - font-size: 14px; - color: #2b3a5c; +.ej-sb-header .ej-sb-left-side .ej-sb-framework-tabs { + display: inline-flex; + align-items: center; + gap: 4px; + padding: 4px; + background: var(--neutral-0); + border-radius: 999px; + box-shadow: 0 1px 3px rgba(13, 19, 31, 0.08), 0 4px 12px rgba(13, 19, 31, 0.06); + overflow-x: auto; + scrollbar-width: none; + -ms-overflow-style: none; + max-width: 100%; +} + +.ej-sb-header .ej-sb-left-side .ej-sb-framework-tabs::-webkit-scrollbar { + display: none; } -.ej-sb-header .ej-sb-left-side .dropdown .dropdown-menu a.active { +.ej-sb-header .ej-sb-left-side .ej-sb-framework-tab { + display: inline-flex; + align-items: center; + justify-content: center; + padding: 8px 18px; + font-size: 12.5px; + font-weight: 500; + color: var(--neutral-600); background: transparent; - color: #ff5f23; - cursor: default; - pointer-events: none; + border: none; + border-radius: 999px; + cursor: pointer; + text-decoration: none; + transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease; + white-space: nowrap; + line-height: 1; + flex: 0 0 auto; } -.ej-sb-header .ej-sb-left-side .dropdown .dropdown-menu a:hover { - background-color: #f8f9fa; +.ej-sb-header .ej-sb-left-side .ej-sb-framework-tab:hover { + background: var(--blue-50); + color: var(--blue-600); + transform: translateY(-1px); + box-shadow: 0 2px 6px rgba(16, 100, 199, 0.35); } -.ej-sb-header .ej-sb-left-side .dropdown .dropdown-menu a:active { - background: transparent; - color: #000000; +.ej-sb-header .ej-sb-left-side .ej-sb-framework-tab.active { + color: var(--neutral-0); + background: var(--blue-600); + font-weight: 600; + box-shadow: 0 2px 6px rgba(16, 100, 199, 0.35); + transform: translateY(-1px); + pointer-events: none; } .ej-sb-header .ej-sb-right-side { height: inherit; display: flex; align-items: center; -} - -.ej-sb-header .ej-sb-right-side .ej-sb-header-icons { - font-family: 'ej-sb-header-icons'; - font-style: normal; - font-weight: normal; - font-variant: normal; - text-transform: none; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -.ej-sb-header .ej-sb-right-side .ej-sb-divider { - border-left: 1px solid rgb(196, 196, 196); - height: 32px; + gap: 12px; } .ej-sb-header .ej-sb-right-side a { - font-size: 20px; - cursor: pointer; - text-decoration: none; - margin: 0 10px 0px 10px; - color: #333; - opacity: 0.87; -} - -.ej-sb-header .ej-sb-right-side a.ej-sb-button { - height: 35px; font-size: 14px; font-weight: 500; - opacity: 1; - text-decoration: none; cursor: pointer; + text-decoration: none; text-align: center; - border-radius: 5px; - width: 125px; -} - -.ej-sb-header .ej-sb-right-side .sb-icon-product:before { - content: '\e707'; + transition: background 180ms ease, color 180ms ease, border-color 180ms ease; } -.ej-sb-header .ej-sb-right-side .sb-icon-download::before { - content: '\e701'; -} - -.ej-sb-header .ej-sb-right-side .sb-icon-documentation::before { - content: '\e704'; -} - -@media only screen and (max-width: 850px) { - .ej-sb-header .ej-sb-right-side { - display: none; - } -} - -.dropdown-menu { - position: absolute; - will-change: transform; - top: 0px; - left: 0px; - transform: translate3d(0px, 42px, 0px); -} - -/* header try-it-free and schedule-free-demo*/ -.ej-sb-right-side .nav-link { - padding: 0.4rem 0.5rem 1rem 0.5rem; - width: 200px; - border-radius: 5px; - -} - -.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.bold-schedule-demo { - border-color: #ff4800; - border-style: solid; - border-width: 1px; - background-color: #ffffff; - color: #ff4800 !important; -} - -.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.try-it-free { - background-color: #ff4800; - color: #ffffff !important; +.ej-sb-header .ej-sb-right-side a.ej-sb-button { + display: inline-flex; + align-items: center; + justify-content: center; + height: 40px; + padding: 0 18px; + border-radius: 12px; + font-size: 14px; + font-weight: 600; + line-height: 1; + white-space: nowrap; } .ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.product-detail { - border-color: #ff4801; - background: white; - color: #ff4801; - border-style: solid; - border-width: 1px; - border-radius: 5px; + color: var(--blue-600); + background: var(--neutral-0); + border: 1px solid var(--blue-200); } .ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.product-detail:hover { - background-color: #ff4800; - color: #ffffff !important; -} - -.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.bold-schedule-demo:hover { - background-color: #ff4800; - color: #ffffff !important; + background: var(--blue-50); + border-color: var(--blue-300); + color: var(--blue-700); + transform: translateY(-1px); } -/* header try-it-free and schedule-free-demo*/ -.ej-sb-right-side .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; - width: 200px; - border-radius: 5px; - +.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.try-it-free { + color: var(--neutral-0); + background: var(--blue-600); + border: 1px solid var(--blue-600); } -.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.bold-schedule-demo { - border-color: #ff4800; - border-style: solid; - border-width: 1px; - background-color: #ffffff; - color: #ff4800 !important; +.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.try-it-free:hover { + background: var(--blue-700); + border-color: var(--blue-700); + transform: translateY(-1px); } -.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.try-it-free { - background-color: #ff4800; - color: #ffffff !important; +#home_page { + text-decoration: none; } -.ej-sb-header .ej-sb-right-side a.ej-sb-button.nav-link.bold-schedule-demo:hover { - background-color: #ff4800; - color: #ffffff !important; +a:hover#home_page { + color: var(--neutral-950); + cursor: pointer; + text-decoration: none; } -/* header */ -/* cyrillic-ext */ -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu72xKOzY.woff2) format('woff2'); - unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; -} - -/* cyrillic */ -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu5mxKOzY.woff2) format('woff2'); - unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; +@media only screen and (max-width: 1200px) { + .ej-sb-header .ej-sb-left-side .ej-sb-framework-tab { + padding: 7px 14px; + font-size: 13px; + } } -/* greek-ext */ -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu7mxKOzY.woff2) format('woff2'); - unicode-range: U+1F00-1FFF; -} +@media only screen and (max-width: 992px) { + .ej-sb-header .ej-sb-left-side .ej-sb-header-divider { + margin-right: 10px; + } -/* greek */ -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu4WxKOzY.woff2) format('woff2'); - unicode-range: U+0370-03FF; + .ej-sb-header .ej-sb-left-side .ej-sb-framework-tab { + padding: 6px 10px; + font-size: 12px; + } } -/* vietnamese */ -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu7WxKOzY.woff2) format('woff2'); - unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB; -} +@media only screen and (max-width: 850px) { + .ej-sb-header .ej-sb-right-side { + display: none; + } -/* latin-ext */ -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu7GxKOzY.woff2) format('woff2'); - unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; + .ej-sb-header .ej-sb-left-side .ej-sb-header-divider, + .ej-sb-header .ej-sb-left-side .ej-sb-framework-tabs, + .ej-sb-header .ej-sb-left-side .framework { + display: none; + } } -/* latin */ -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu4mxK.woff2) format('woff2'); - unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; -} +@media only screen and (max-width: 550px) { + .ej-sb-header { + padding: 0 12px; + } -@font-face { - font-family: 'ej-header-icons'; - src: url(data:application/x-font-ttf;charset=utf-8;base64,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) format('truetype'); - font-weight: normal; - font-style: normal; -} + .ej-sb-header .ej-sb-left-side { + gap: 8px; + } -@font-face { - font-family: 'ejicons'; - src: url('/src/assets/sb-icons/fonts/icons.ttf?gcjn6a') format('truetype'), url('/src/assets/sb-icons/fonts/icons.woff?gcjn6a') format('woff'), url('/src/assets/sb-icons/fonts/icons.svg?gcjn6a#sbicons') format('svg'); - font-weight: normal; - font-style: normal; -} + .ej-sb-header .ej-sb-left-side .ej-sb-hamburger-icon { + margin: 0; + } -a:hover#home_page { - color: black; - cursor: pointer; - text-decoration: none; -} + .ej-sb-header .ej-sb-left-side .ej-sb-logo { + height: 28px; + } -#home_page { - text-decoration: none; -} + .ej-sb-header .ej-sb-left-side .ej-sb-logo-link { + margin-right: 12px; + } -.ej-platform-name { - margin: 0 21px 0 25px; - font-size: 15px; - opacity: 0.87; - font-weight: 600; - color: #2b3a5c; + .ej-sb-header .ej-sb-left-side .ej-sb-platform-name { + font-size: 14px; + } } \ No newline at end of file diff --git a/src/common/header/header.js b/src/common/header/header.js index 200d143..d4c1439 100644 --- a/src/common/header/header.js +++ b/src/common/header/header.js @@ -82,30 +82,49 @@ class Header extends Component { } }; render() { + const showFrameworkTabs = this.props.isViewer || this.props.isPreview || this.props.isDesigner; + const isDesignerHeader = this.props.isDesigner || (!this.props.isViewer && !this.props.isPreview); return ( -
+
{this.props.isViewer ?
: ''} - {this.props.isViewer ?

Bold Reports® for React

: -

Bold Reports® for React

-
} - {this.props.isViewer ? -
- - {this.state.open && (
{Object.keys(otherPlatforms).map((name, index) => {name})}
)} -
: - + + Bold Reports + + {showFrameworkTabs ? + +
+

Frameworks

+
+ {Object.keys(otherPlatforms).map((name, index) => { + const platformSlug = name === 'JavaScript' ? 'javascript' + : name === 'ASP.NET Core' ? '' + : name.toLowerCase(); + const isLocal = !window.location.hostname.includes('boldreports.com'); + const href = isLocal ? (platformSlug === '' ? '/' : `/${platformSlug}.html`) : (platformSlug === '' ? '/home/' : `/home/${platformSlug}.html`); + const isActive = name === data.platform; + return ( + e.preventDefault() : undefined} + > + {name} + + ); + })} +
+
: ''}
{/* We hided this element as per management instruction */} - {/* Schedule Free Demo */} - Product Detail - Try it Free + {/* Schedule Free Demo */} + Product Details + Try it Free
diff --git a/src/common/main-content/main-content.css b/src/common/main-content/main-content.css index 3cea5aa..69337ba 100644 --- a/src/common/main-content/main-content.css +++ b/src/common/main-content/main-content.css @@ -1,5 +1,5 @@ .ej-main-body-content { - background-color: #fafafa; + background-color: var(--neutral-50); } .ej-main-child-content { height:100%; @@ -8,28 +8,39 @@ justify-content: space-evenly; } -.ej-main-body-content #parentTabContainer { - border: 1px solid #D7D7D7; -} - .ej-main-body-content .ej-title { - font-size: 18px; - padding: 20px 0 20px 18px; + font-size: 22px; + padding: 15px 0 10px 0px; margin: 0; - font-weight: bold; + font-weight: 700; + color: var(--blue-900); + display: flex; + align-items: center; + gap: 12px; +} + +.ej-main-body-content .ej-category-badge { + background-color: var(--blue-50); + color: var(--blue-700); + font-size: 12px; + padding: 4px 12px; + border-radius: 16px; + font-weight: 600; + border: 1px solid var(--blue-100); } .ej-main-body-content .ej-meta-description { font-size: 14px; - padding: 0px 0 15px 18px; + padding: 10px 0 16px; margin: 0; + color: var(--neutral-600); + line-height: 1.5; } .ej-main-body-content .ej-nav-header { - height: 40px; + height: 45px; line-height: 40px; font-size: 16px; - border-bottom: 1px solid #d7d7d7; } .ej-main-body-content .ej-nav-header .ej-nav-item { @@ -44,23 +55,26 @@ } .ej-main-body-content .ej-nav-header .ej-nav-item a { - font-weight: 600; - padding: 0 12px; - display: flex; - align-items: center; - color:#2b3a5c; - border-bottom: 2px solid transparent; - text-decoration: none; + display: inline-flex; + align-items: center; + gap: 8px; + padding: 10px 4px 0px; + font-size: 14px; + font-weight: 600; + color: var(--neutral-600); + border-bottom: 2px solid transparent; + text-decoration: none; + transition: color 150ms ease, border-color 150ms ease; } .ej-main-body-content .ej-nav-header .ej-nav-item a:hover { - color: #2b3a5c; + color: var(--blue-700); text-decoration: none; } -.ej-main-body-content .ej-nav-header .ej-nav-item a.active { - color: #ff5f23; - border-color: #ff5f23; +.ej-main-body-content .ej-nav-header .ej-nav-item a.active,.ej-main-body-content .ej-nav-header .ej-nav-item a.active .ej-sb-icons::before { + color: var(--blue-700) !important; + border-color: var(--blue-500); } .ej-main-body-content .ej-tab-content .tab-pane { @@ -115,6 +129,7 @@ content: '\e92e'; margin-right: 5px; font-size: 20px; + color: var(--neutral-600); } .ej-main-body-content #parentTab .ej-source-icon { @@ -125,6 +140,7 @@ content: '\e92d'; margin-right: 5px; font-size: 20px; + color: var(--neutral-600); } .ej-main-body-content #parentTab .ej-description-icon { @@ -140,183 +156,232 @@ .ej-main-body-content #parentTab .ej-nav { position: absolute; right: 0; - opacity: 0.87; + display: flex; + align-items: center; + gap: 12px; + opacity: 1; + padding-right: 20px; +} + +.ej-main-body-content #parentTab .ej-nav .new-tab-btn-container { + display: flex; + align-items: center; + border: 1px solid var(--neutral-200); + border-radius: 20px; + height: 40px; + overflow: hidden; + background-color: #ffffff; +} + +.ej-main-body-content #parentTab .ej-nav .vertical-divider { + width: 1px; + height: 24px; + background-color: var(--neutral-200); } .ej-main-body-content #parentTab .ej-nav .new-tab { display: flex; + align-items: center; + justify-content: center; + border: 1px solid var(--neutral-200); + border-radius: 14px; + width: 40px; + height: 40px; + cursor: pointer; + background-color: #ffffff; + transition: all 0.2s ease; } @media only screen and (max-width: 550px) { - .ej-main-body-content #parentTab .ej-nav .new-tab { + .ej-main-body-content #parentTab .ej-nav .new-tab, + .ej-main-body-content #parentTab .ej-nav .vertical-divider { display: none; } } .ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item { - font-size: 25px; + display: flex; + align-items: center; + justify-content: center; cursor: pointer; + color: var(--neutral-600); + transition: all 0.2s ease; } - -.ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item .ej-nav-new { - border-left: 1px solid #cfbdbd; - padding: 0 10px; -} - -.ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item.ej-nav-new:before { - content: '\e91d'; +.ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item:hover { + background-color: var(--blue-50); + color: var(--blue-600); } .ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item.ej-nav-prev { - border-left: 1px solid #c4c4c4; - padding: 0 10px; + border: none; + padding: 0; + width: 44px; + height: 100%; + font-size: 20px; } + .ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item.ej-nav-prev:before { content: '\e91f'; } +.ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item.ej-nav-next { + border: none; + padding: 0; + width: 44px; + height: 100%; + font-size: 20px; + border-left: 1px solid var(--neutral-100); +} + .ej-main-body-content #parentTab .ej-nav .ej-nav-sub-item.ej-nav-next:before { content: '\e91b'; - padding-right: 10px; + padding: 0; +} + +.ej-main-body-content #parentTab .ej-nav .new-tab .ej-nav-new { + font-size: 20px; + color: var(--neutral-600); + display: flex; + align-items: center; + justify-content: center; +} + +.ej-main-body-content #parentTab .ej-nav .new-tab .ej-nav-new:before { + content: '\e91d'; } .ej-main-body-content #childTabContainer .tab-pane { white-space: pre; padding: 10px; - font-family: "Roboto", "Segoe UI", "GeezaPro", "DejaVu Serif", "sans-serif", "-apple-system", "BlinkMacSystemFont"; + font-family: "Inter", sans-serif; overflow: auto; height: 320px; font-size: 13px; font-weight: 400; + background-color: var(--neutral-950); + color: var(--neutral-100); + border: 1px solid var(--neutral-200); + border-radius: 16px; } /* Banner */ -#footer-banner > * { - font-family: "Roboto", "Segoe UI", "GeezaPro", "DejaVu Serif", "sans-serif"; -} #footer-banner { - background-image: url(../../assets/footer/bg-texture.png); - background-color: #CCFEC6; - background-position: center; - background-size: cover; - border-radius: 4px; - color: #283A5E; - margin: 30px 0px; - width: 100%; - height: 121px; - flex-shrink: 0; + font-family: "Inter", sans-serif; + background: linear-gradient(120deg, var(--blue-50), var(--neutral-50)); + border-radius: 12px; + color:var(--blue-800); + margin: 30px 0; + padding: 48px 24px; + text-align: center; + border: 1px solid var(--blue-100); } -.header { - font-weight: 800; - font-size: 23px; - color: #283A5E; - width: calc(100% - 60px); - height: 32px; - padding: 21px 0 0 40px; +#footer-banner .banner-content { + max-width: 1100px; + margin: 0 auto; + display: flex; + flex-direction: column; + align-items: center; + gap: 24px; } -.content-area { - margin-left: 15px; +#footer-banner .banner-title { + font-size: 32px; + font-weight: 700; + line-height: 1.2; + margin: 0; + color: var(--blue-800); } -.cnt-pt { - margin: 35px 0px 5px 25px; +#footer-banner .banner-features { + list-style: none; + margin: 0; + padding: 0; + display: flex; + flex-wrap: wrap; + justify-content: center; + gap: 16px 32px; + padding-bottom: 5px; } -.cnt-text { - font-weight: 500; - font-size: 14px; - padding: 10px 10px 0px 0px; - display: table-cell; - line-height: 7px; +#footer-banner .banner-feature { + display: flex; + align-items: center; + gap: 8px; + font-size: 16px; + font-weight: 400; + color: var(--blue-800); + white-space: nowrap; } -.free-trial { - width: 158px; - height: 45px; +#footer-banner .banner-check { + display: inline-flex; + align-items: center; + justify-content: center; + width: 20px; + height: 20px; + color: var(--blue-800); font-size: 14px; - padding-top: 11px; - background-color: #F14400; - border-radius: 4px; - margin: -52px 25px 0px 0px; font-weight: 700; - float: right; - line-height: 24px; + line-height: 1; + flex-shrink: 0; +} + +#footer-banner .banner-cta { + display: inline-block; + background-color: var(--blue-600); color: #FFFFFF; - text-align: center; - box-shadow: 0 2px 5px 0 rgb(0 0 0 / 20%); - cursor: pointer; + font-size: 15px; + font-weight: 700; + text-decoration: none; + padding: 12px 26px; + border-radius: 8px; + transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease; } -.free-trial-url, .free-trial-url:hover { - text-decoration: none; + +#footer-banner .banner-cta:hover { + background-color: var(--blue-700); + transform: translateY(-1px); } -@media only screen and (min-width: 810px) and (max-width: 1450px) { +@media only screen and (max-width: 768px) { #footer-banner { - height: auto; - } - .header { - padding: 58px 0px 14px 60px; - font-size: 32px; - line-height: 40px; - text-align: center; - height: auto; - } - .content-area { - padding: 0px 20px 0px 85px; - justify-content: left; + padding: 36px 20px; + margin: 24px 0; } - .cnt-text { - font-size: 20px; - padding: 10px 10px 0px 6px; + + #footer-banner .banner-title { + font-size: 24px; } - .cnt-pt { - margin: 10px 0px 0px 19px; + + #footer-banner .banner-features { + flex-direction: column; + gap: 12px; + align-items: flex-start; + width: 100%; + max-width: 360px; } - .free-trial-url{ - padding: 44px 0 58px 0; - display: block; - } - .free-trial { - width: 188px; - font-size: 18px; - margin: 0px auto 0px; - float: none; + + #footer-banner .banner-feature { + font-size: 15px; } } - @media only screen and (min-width: 300px) and (max-width: 809.9px) { +@media only screen and (max-width: 480px) { #footer-banner { - height: auto; + padding: 28px 16px; } - .header { - padding: 48px 0px 14px 60px; + + #footer-banner .banner-title { font-size: 22px; - line-height: 32px; - text-align: center; - height: auto; - } - .content-area { - padding: 0px 20px 0 40px; - justify-content: left; - } - .cnt-text { - font-size: 16px; - line-height: 15px; - padding: 10px 10px 0px 6px; - } - .cnt-pt { - margin: 2px 12px 2px 25px } - .free-trial-url { - padding: 32px 0 48px 0; - display: block; - } - .free-trial { - margin: 0px auto 0px; - float: none; + + #footer-banner .banner-cta { + width: 100%; + max-width: 280px; + padding: 14px 20px; + text-align: center; } } @@ -324,22 +389,31 @@ .ej-lp-footer { font-size: 14px; padding: 10px 10px 10px 10px; - border-top: 1px solid #D7D7D7; + border-top: 1px solid var(--neutral-200); display: table; width: 100%; margin-top: 10px; } .ej-lp-footer .ej-lp-footer-links a { - color: #ff5f23; + color: var(--blue-600); text-decoration: none; cursor: pointer; margin-right: 30px; + font-size: 13.5px; + font-weight: 500; +} + +.ej-lp-footer .ej-lp-footer-links a:hover { +color: var(--blue-700); +text-decoration: underline; } .ej-lp-footer .ej-lp-footer-copyright { line-height: 7px; float: right; + font-size: 12.5px; + color: var(--neutral-500); } .ej-lp-footer > div { diff --git a/src/common/main-content/main-content.js b/src/common/main-content/main-content.js index a0f0331..3421377 100644 --- a/src/common/main-content/main-content.js +++ b/src/common/main-content/main-content.js @@ -1,4 +1,4 @@ -import { React, Component } from 'react'; +import React, { Component } from 'react'; import { Header } from './../header/header'; import Sidebar from './../sidebar/sidebar'; import { Link } from 'react-router-dom'; @@ -137,18 +137,18 @@ class MainContentSample extends Component {
-

{this.props.report.sampleName}

+

{this.props.report.sampleName} {this.props.report.category && {this.props.report.category}}

{this.props.report.metaData.description}

  • - DEMO + Demo
  • { this.SourceActive(); this.getSource(); }} > - SOURCE + Source Code
  • {/*
  • @@ -157,12 +157,14 @@ class MainContentSample extends Component {
  • */}
  • -
    -
    +
    +
    +
    -
    +
    +
    +
    -
@@ -203,46 +205,51 @@ class MainContentSample extends Component {
{/* Banner section */} ); diff --git a/src/controls/conditional-row-formatting.js b/src/controls/conditional-row-formatting.js index 9005375..6e35804 100644 --- a/src/controls/conditional-row-formatting.js +++ b/src/controls/conditional-row-formatting.js @@ -20,7 +20,7 @@ class ConditionalRowFormatting extends Component {

This demo illustrates the Conditional Formatting feature along with Report Parameters using the Tablix data region. Based on the country name selected in + target="_blank">Report Parameters using the Tablix data region. Based on the country name selected in the Highlight Country parameter, the available customer details of the respective country are highlighted using conditional formatting. It makes the report easier @@ -29,13 +29,13 @@ class ConditionalRowFormatting extends Component {

  • Conditional IIF Statement is used to build expression for background color, thereby it highlights the rows based on the + target="_blank">expression for background color, thereby it highlights the rows based on the Country Name field.

Conditional row formatting report designing steps can be found in this documentation section. + target="_blank">documentation section.

); diff --git a/src/controls/consolidated-balance-sheet.js b/src/controls/consolidated-balance-sheet.js index 36f3524..6b3ece6 100644 --- a/src/controls/consolidated-balance-sheet.js +++ b/src/controls/consolidated-balance-sheet.js @@ -23,19 +23,19 @@ class ConsolidatedBalanceSheet extends Component { Consolidated Balance Sheet RDLC report represents the assets and liabilities of a company and all subsidiaries for the last four quarters in a single sheet using Tablix report item. + target="_blank">Tablix report item.

  • The Row grouping feature is used to group the Assets type.
  • + target="_blank">Row grouping feature is used to group the Assets type.
  • Text box report items with currency value are formatted using expression.
  • + target="_blank">expression.
  • The data used in this table is a local JSON data.

More information about RDLC report can be found in this documentation + href="https://help.boldreports.com/embedded-reporting/react-reporting/report-viewer/rdlc-report/" target="_blank">documentation section.

diff --git a/src/controls/customer-support-analysis.js b/src/controls/customer-support-analysis.js index e00ab6e..98ad118 100644 --- a/src/controls/customer-support-analysis.js +++ b/src/controls/customer-support-analysis.js @@ -33,17 +33,17 @@ class CustomerSupportAnalysis extends Component { Average resolution time (hrs) by Representative chart. More information about sorting data in matrix groups can be found in this documentation section. + target="_blank">documentation section.
  • The TopN filter is applied to the table data region to display the Top 5 Satisfied Customer. More information on filtering data with table data region can be found in this documentation section.
  • + target="_blank">documentation section.

    More information about chart data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/data-bar.js b/src/controls/data-bar.js index 8bff77b..915a231 100644 --- a/src/controls/data-bar.js +++ b/src/controls/data-bar.js @@ -23,7 +23,7 @@ class DataBar extends Component {

    More information about the Databar report item can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/dynamic-chart-series.js b/src/controls/dynamic-chart-series.js index 7ff3597..006b8d4 100644 --- a/src/controls/dynamic-chart-series.js +++ b/src/controls/dynamic-chart-series.js @@ -22,7 +22,7 @@ class DynamicChartSeries extends Component {

    More information about the Chart report item can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/dynamic-columns.js b/src/controls/dynamic-columns.js index 7333b8e..7640d75 100644 --- a/src/controls/dynamic-columns.js +++ b/src/controls/dynamic-columns.js @@ -30,7 +30,7 @@ class DynamicColumns extends Component {

    More information about the Tablix data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/dynamic-logos.js b/src/controls/dynamic-logos.js index 39d02f4..c063fbf 100644 --- a/src/controls/dynamic-logos.js +++ b/src/controls/dynamic-logos.js @@ -18,7 +18,7 @@ class DynamicLogos extends Component { return (

    The report uses parameter-driven logic to dynamically update company logos, names, and contact details without requiring changes to modifying the report layout using the Report Parameters.

    + target="_blank">Report Parameters.

    • It supports scalable deployment across multiple companies (A to E), enhancing reusability and reducing design overhead.
    • Bold Reports image and text report items are bound to parameters, enabling seamless customization of both visuals and data.
    • @@ -26,7 +26,7 @@ class DynamicLogos extends Component {

      More information about the image report item can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/external-parameter-report.js b/src/controls/external-parameter-report.js index 371c859..183b640 100644 --- a/src/controls/external-parameter-report.js +++ b/src/controls/external-parameter-report.js @@ -71,20 +71,20 @@ class ExternalParameterReport extends Component {

    The Product Line Sales RDL report represents the best performing sales people and stores using Tablix and Chart + target="_blank">Tablix and Chart report items.

    • The sales details are organized by category and sub-category of products using the concept of external report parameters which is designed using ejdropdownlist. It allows users to filter Sub Category based on the selected Category. + target="_blank">ejdropdownlist. It allows users to filter Sub Category based on the selected Category.
    • Non cascading parameters namely start date and end date also used in this report.

    More information about handling the report items can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/grouping-aggregate.js b/src/controls/grouping-aggregate.js index 8d0ae3e..d430937 100644 --- a/src/controls/grouping-aggregate.js +++ b/src/controls/grouping-aggregate.js @@ -31,12 +31,12 @@ class GroupingAggregate extends Component { Tablix data region.
  • The sales value for each quarter is formatted in the Currency format to improve the readability of report.
  • + target="_blank">format to improve the readability of report.

    More information about the Tablix data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/hr-payroll.js b/src/controls/hr-payroll.js index 693ab48..0e7e5bf 100644 --- a/src/controls/hr-payroll.js +++ b/src/controls/hr-payroll.js @@ -30,7 +30,7 @@ class HRPayroll extends Component {

    For more information on how dynamic image report items enhance customization in multi-company HR reports, refer to this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/infographics-report.js b/src/controls/infographics-report.js index 44c6930..95b6547 100644 --- a/src/controls/infographics-report.js +++ b/src/controls/infographics-report.js @@ -27,7 +27,7 @@ class InfographicsReport extends Component {

    More information about the image report item can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/invoice.js b/src/controls/invoice.js index 36a7676..a1b5434 100644 --- a/src/controls/invoice.js +++ b/src/controls/invoice.js @@ -20,15 +20,15 @@ class Invoice extends Component {

    In this demo, Invoice report is generated based on Report Parameters at run time, and it displays the comprehensive overview of an invoice + target="_blank">Report Parameters at run time, and it displays the comprehensive overview of an invoice that indicates the shipping order details using parameters, expressions, and calculated fields with Tablix report item. + target="_blank">expressions, and calculated fields with Tablix report item.

    • Using Expression + target="_blank">Expression with text box report item, the report is designed to dynamically display the invoice details.
    • Using the Total feature in table report item, the sum of product price is calculated. @@ -37,7 +37,7 @@ class Invoice extends Component {

      More information about the text box, expressions, and table data region can be found in this documentation section. + target="_blank">documentation section.

      ); diff --git a/src/controls/load-large-data.js b/src/controls/load-large-data.js index 1c35282..0d2e584 100644 --- a/src/controls/load-large-data.js +++ b/src/controls/load-large-data.js @@ -45,12 +45,12 @@ class LoadLargeData extends Component {
    • The table is displayed with a total row, and the sum of sales is calculated by aggregation of OrderQty and UnitPrice data fields using the Expression support.
    • + target="_blank">Expression support.
    • The Item total data text box is formatted in Currency format to enhance the report design.

    More information about Tablix can be found in this documentation + href="https://help.boldreports.com/embedded-reporting/react-reporting/report-designer/designer-guide/report-items/tablix/" target="_blank">documentation section.

    diff --git a/src/controls/mail-merge.js b/src/controls/mail-merge.js index 5ac27a9..0a9cbdd 100644 --- a/src/controls/mail-merge.js +++ b/src/controls/mail-merge.js @@ -26,7 +26,7 @@ class MailMerge extends Component {
  • To keep data in a single page, rectangle report item is used as a container with the KeepTogether property as true.
  • Expression is used to frame the employee details dynamically at run time.
  • + target="_blank">Expression is used to frame the employee details dynamically at run time.

    You can print or export this report as PDF, Excel, Word, HTML, PowerPoint, or CSV format using the @@ -37,7 +37,7 @@ class MailMerge extends Component {

    Mail merge report designing steps can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/multi-language-report.js b/src/controls/multi-language-report.js index 022f27a..b0e8968 100644 --- a/src/controls/multi-language-report.js +++ b/src/controls/multi-language-report.js @@ -63,7 +63,7 @@ class MultiLanguageReport extends Component {

    For detailed guidance on implementing localization, refer to the documentation. + target="_blank">documentation.

    ); diff --git a/src/controls/nda-report.js b/src/controls/nda-report.js index ac7c74b..3132a59 100644 --- a/src/controls/nda-report.js +++ b/src/controls/nda-report.js @@ -28,7 +28,7 @@ class NDAReport extends Component {

    More information about the PDF signature report item can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/northwind-products-suppliers-report.js b/src/controls/northwind-products-suppliers-report.js index d185223..eb198a8 100644 --- a/src/controls/northwind-products-suppliers-report.js +++ b/src/controls/northwind-products-suppliers-report.js @@ -24,18 +24,18 @@ class NorthwindProductsandSuppliersReport extends Component {
    • The font color is categorized using the Conditional Formatting feature in the UnitInStock column of table to differentiate the range of values.
    • + target="_blank">Conditional Formatting feature in the UnitInStock column of table to differentiate the range of values.
    • The TopN filter is applied to the table and table and chart data regions to display the top five data from database. Similarly, the BottomN filter is applied to display the least demand products + target="_blank">chart data regions to display the top five data from database. Similarly, the BottomN filter is applied to display the least demand products from database.

    More information about chart data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/parameter-customization.js b/src/controls/parameter-customization.js index fd0602f..c223d10 100644 --- a/src/controls/parameter-customization.js +++ b/src/controls/parameter-customization.js @@ -27,7 +27,7 @@ class ParameterCustomization extends Component {

    The Product Line Sales RDL report represents the best performing sales people and stores using Tablix and Chart + target="_blank">Tablix and Chart report items.

      @@ -38,13 +38,13 @@ class ParameterCustomization extends Component {
    • Non cascading parameters namely start date and end date also used in this report.
    • End date non cascading parameter can be disabled using Switch button provided + target="_blank">Switch button provided
    • Null button in the end date parameter is used to set the parameter value as null. No data will be filtered since end date is null

    More information about Cascading Parameters can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/patient-experience-analysis.js b/src/controls/patient-experience-analysis.js index 161fb9f..97d3509 100644 --- a/src/controls/patient-experience-analysis.js +++ b/src/controls/patient-experience-analysis.js @@ -20,8 +20,8 @@ class PatientExperienceAnalysis extends Component {

    This report shows the Patient's satisfaction, average stay duration, count and average waiting time using Tablix and Chart + target="_blank">Tablix and Chart report items.

    @@ -32,7 +32,7 @@ class PatientExperienceAnalysis extends Component {

    More information about chart data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/paystub.js b/src/controls/paystub.js index bae755d..57204ae 100644 --- a/src/controls/paystub.js +++ b/src/controls/paystub.js @@ -22,18 +22,18 @@ class Paystub extends Component {

    Paystub RDLC report represents the paystub of a company in a single sheet using Tablix report item. + target="_blank">Tablix report item.

    • The Paystub are displayed dynamically using expression with the text box report item. + target="_blank">expression with the text box report item.
    • The data used in this table is a local JSON data.

    More information about RDLC report can be found in this documentation + href="https://help.boldreports.com/embedded-reporting/react-reporting/report-viewer/rdlc-report/" target="_blank">documentation section.

    diff --git a/src/controls/personal-expense-analysis.js b/src/controls/personal-expense-analysis.js index 938b1e2..d85a94b 100644 --- a/src/controls/personal-expense-analysis.js +++ b/src/controls/personal-expense-analysis.js @@ -27,16 +27,16 @@ class PersonalExpenseAnalysis extends Component {
  • RDL External image embedding concept is used to display the image in report.
  • Text box report items with expressions are used to format the currency data fields.
  • + target="_blank">expressions are used to format the currency data fields.
  • Alternate row formatting is applied in the table data region using the Conditional Formatting feature to alternate the background color for a table data + target="_blank">Conditional Formatting feature to alternate the background color for a table data region, which improves the readability of data.
  • More information about handling images, text boxes, chart, and table report items can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/powerpoint-report.js b/src/controls/powerpoint-report.js index 2bf6234..0d9804a 100644 --- a/src/controls/powerpoint-report.js +++ b/src/controls/powerpoint-report.js @@ -28,7 +28,7 @@ class PowerpointReport extends Component {

    More information about Page break can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/product-catalog.js b/src/controls/product-catalog.js index 3441d01..3a82d7a 100644 --- a/src/controls/product-catalog.js +++ b/src/controls/product-catalog.js @@ -22,7 +22,7 @@ class ProductCatalog extends Component {

    This report shows Mountain bike products information using the Tablix report item in RDLC report. + target="_blank">Tablix report item in RDLC report.

    • The table is displayed with Product no, image, name, size, weight and cost.
    • @@ -30,7 +30,7 @@ class ProductCatalog extends Component {

    More information about RDLC report can be found in this documentation + href="https://help.boldreports.com/embedded-reporting/react-reporting/report-viewer/rdlc-report/" target="_blank">documentation section.

    diff --git a/src/controls/product-details.js b/src/controls/product-details.js index 602ed15..dcbf4da 100644 --- a/src/controls/product-details.js +++ b/src/controls/product-details.js @@ -26,15 +26,15 @@ class ProductDetails extends Component {
  • The total price value of each product is calculated based on the OrderQty and UnitPrice data fields using expression.
  • + target="_blank">expression.
  • The price values in the product details are formatted in the Currency format to improve the readability of data.
  • + target="_blank">format to improve the readability of data.

    More information about the Tablix data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/product-line-sales.js b/src/controls/product-line-sales.js index 81b2212..03ad173 100644 --- a/src/controls/product-line-sales.js +++ b/src/controls/product-line-sales.js @@ -20,9 +20,9 @@ class ProductLineSales extends Component {

    The Product Line Sales RDL report represents the best performing sales people and stores using Tablix and Tablix and Chart + target="_blank">Chart report items.

      @@ -33,7 +33,7 @@ class ProductLineSales extends Component {

      More information about Cascading Parameters can be found in this documentation section. + target="_blank">documentation section.

      ); diff --git a/src/controls/sales-by-year.js b/src/controls/sales-by-year.js index af73c6f..5d5e1c5 100644 --- a/src/controls/sales-by-year.js +++ b/src/controls/sales-by-year.js @@ -22,22 +22,22 @@ class SalesByYear extends Component {

      The Sales By Year RDLC report represents the sales of North America countries in each year using Tablix and Chart + target="_blank">Tablix and Chart report items.

      • The Row grouping feature is used to group the sales by year and the Column grouping feature is used to group Region and Country. More information about Grouping Panel can be found in this documentation section.
      • + target="_blank">documentation section.
      • Aggregate functions are used to calculate the total sales in each countries.
      • Sorting is applied to row groups to sort the sales year.
      • + target="_blank">Sorting is applied to row groups to sort the sales year.

      More information about RDLC report can be found in this documentation + href="https://help.boldreports.com/embedded-reporting/react-reporting/report-viewer/rdlc-report/" target="_blank">documentation section.

      diff --git a/src/controls/sales-order-detail.js b/src/controls/sales-order-detail.js index f0636a3..a2bc577 100644 --- a/src/controls/sales-order-detail.js +++ b/src/controls/sales-order-detail.js @@ -20,20 +20,20 @@ class SalesOrderDetail extends Component {

      Sales Order Details shows the sales invoice details using the report parameters, line report item, and table formatting in Bold Report Viewer. + target="_blank">report parameters, line report item, and table formatting in Bold Report Viewer.

      • The Sales Order details are displayed dynamically using expression with the text box report item.
      • + target="_blank">expression with the text box report item.
      • The sales order details for each sales order number can be generated based on Report Parameters at run time.
      • + target="_blank">Report Parameters at run time.

      More information about handling the report items can be found in this documentation section. + target="_blank">documentation section.

      ); diff --git a/src/controls/sales-report.js b/src/controls/sales-report.js index b7234ad..0bbaa52 100644 --- a/src/controls/sales-report.js +++ b/src/controls/sales-report.js @@ -24,15 +24,15 @@ class SalesReport extends Component {
    • The table is displayed with a total row, and the sum of sales is calculated by aggregation of OrderQty and UnitPrice data fields using the Expression support.
    • + target="_blank">Expression support.
    • The Item Total data text box is formatted in Currency format to enhance the report design.
    • + target="_blank">format to enhance the report design.

    More information about the Tablix data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/spark-line.js b/src/controls/spark-line.js index f8cde5b..1531142 100644 --- a/src/controls/spark-line.js +++ b/src/controls/spark-line.js @@ -23,11 +23,11 @@ class SparkLine extends Component { A sparkline is a small embedded line graph that illustrates a single trend. In this report, sales data are interpreted to visualize the sales trends using Spark Line report items. + target="_blank">Spark Line report items.

    More information about RDLC report can be found in this documentation + href="https://help.boldreports.com/embedded-reporting/react-reporting/report-viewer/rdlc-report/" target="_blank">documentation section.

    diff --git a/src/controls/sub-report.js b/src/controls/sub-report.js index 97fe300..a035fb6 100644 --- a/src/controls/sub-report.js +++ b/src/controls/sub-report.js @@ -19,21 +19,21 @@ class SubReport extends Component {

    Sales Order Details by Order Number shows the order details using the report parameters, sub report item, and table formatting in Bold Report Viewer. + target="_blank">report parameters, sub report item, and table formatting in Bold Report Viewer.

    • The sales order details are displayed dynamically using the sub report item. + target="_blank">sub report item.
    • The sales order details for a specific date range can be generated based on Report Parameters at run time. + target="_blank">Report Parameters at run time.

    More information about handling the report items can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/territory-sales.js b/src/controls/territory-sales.js index 66362aa..b245528 100644 --- a/src/controls/territory-sales.js +++ b/src/controls/territory-sales.js @@ -34,7 +34,7 @@ class TerritorySales extends Component {

    More information about the table data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/tickets-sales-analysis.js b/src/controls/tickets-sales-analysis.js index f3f36dc..9492b8e 100644 --- a/src/controls/tickets-sales-analysis.js +++ b/src/controls/tickets-sales-analysis.js @@ -29,12 +29,12 @@ class TicketsSalesAnalysis extends Component { Top 5 Shows based on Tickets Sold. More information on filtering data with chart data region can be found in this documentation section. + target="_blank">documentation section.

    More information about chart data region can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/transcript-report.js b/src/controls/transcript-report.js index b48300a..587c7ba 100644 --- a/src/controls/transcript-report.js +++ b/src/controls/transcript-report.js @@ -29,7 +29,7 @@ class TranscriptReport extends Component {

    Transcript report designing steps can be found in this documentation section. + target="_blank">documentation section.

    ); diff --git a/src/controls/website-visitor-analysis.js b/src/controls/website-visitor-analysis.js index 594654e..2ce275a 100644 --- a/src/controls/website-visitor-analysis.js +++ b/src/controls/website-visitor-analysis.js @@ -28,7 +28,7 @@ class WebsiteVisitorAnalysis extends Component {

    More information about chart data region can be found in this documentation section. + target="_blank">documentation section.

    ); From 0c38269c517ec5a01d1739ab3f0d61e31d40d9e5 Mon Sep 17 00:00:00 2001 From: Saravanan kanagaraj Date: Mon, 12 Oct 2026 17:43:31 +0530 Subject: [PATCH 3/3] feature(REPORT-530050): Bold Reports 15.1 Release changes --- package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 4accbc8..74fd666 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,10 @@ { "name": "react-sample-browser", - "version": "14.1.12", + "version": "15.1.10", "private": true, "dependencies": { - "@boldreports/react-reporting-components": "14.1.12", - "@boldreports/javascript-reporting-extensions": "14.1.12", + "@boldreports/react-reporting-components": "15.1.10", + "@boldreports/javascript-reporting-extensions": "15.1.10", "@testing-library/jest-dom": "5.11.9", "@testing-library/react": "11.2.5", "@testing-library/user-event": "12.8.3",