@dflat-core/web 1.7.2077 → 1.7.2079
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +211 -211
- package/assets/components/modals.scss +216 -216
- package/assets/images/icons/fa/500px.svg +6 -6
- package/assets/images/icons/fa/address-book-o.svg +4 -4
- package/assets/images/icons/fa/address-book.svg +3 -3
- package/assets/images/icons/fa/adjust.svg +1 -1
- package/assets/images/icons/fa/adn.svg +1 -1
- package/assets/images/icons/fa/align-center.svg +2 -2
- package/assets/images/icons/fa/align-justify.svg +2 -2
- package/assets/images/icons/fa/align-left.svg +2 -2
- package/assets/images/icons/fa/align-right.svg +2 -2
- package/assets/images/icons/fa/amazon.svg +5 -5
- package/assets/images/icons/fa/ambulance.svg +3 -3
- package/assets/images/icons/fa/anchor.svg +3 -3
- package/assets/images/icons/fa/android.svg +3 -3
- package/assets/images/icons/fa/angellist.svg +6 -6
- package/assets/images/icons/fa/angle-double-down.svg +2 -2
- package/assets/images/icons/fa/angle-double-left.svg +2 -2
- package/assets/images/icons/fa/angle-double-right.svg +2 -2
- package/assets/images/icons/fa/angle-double-up.svg +2 -2
- package/assets/images/icons/fa/angle-down.svg +1 -1
- package/assets/images/icons/fa/angle-left.svg +1 -1
- package/assets/images/icons/fa/angle-right.svg +1 -1
- package/assets/images/icons/fa/angle-up.svg +1 -1
- package/assets/images/icons/fa/apple.svg +2 -2
- package/assets/images/icons/fa/archive.svg +2 -2
- package/assets/images/icons/fa/area-chart.svg +1 -1
- package/assets/images/icons/fa/arrow-circle-down.svg +2 -2
- package/assets/images/icons/fa/arrow-circle-left.svg +2 -2
- package/assets/images/icons/fa/arrow-circle-o-down.svg +2 -2
- package/assets/images/icons/fa/arrow-circle-o-left.svg +2 -2
- package/assets/images/icons/fa/arrow-circle-o-right.svg +2 -2
- package/assets/images/icons/fa/arrow-circle-o-up.svg +2 -2
- package/assets/images/icons/fa/arrow-circle-right.svg +2 -2
- package/assets/images/icons/fa/arrow-circle-up.svg +2 -2
- package/assets/images/icons/fa/arrow-down.svg +1 -1
- package/assets/images/icons/fa/arrow-left.svg +2 -2
- package/assets/images/icons/fa/arrow-right.svg +1 -1
- package/assets/images/icons/fa/arrow-up.svg +2 -2
- package/assets/images/icons/fa/arrows-alt.svg +3 -3
- package/assets/images/icons/fa/arrows-h.svg +1 -1
- package/assets/images/icons/fa/arrows-v.svg +1 -1
- package/assets/images/icons/fa/arrows.svg +2 -2
- package/assets/images/icons/fa/asl-interpreting.svg +6 -6
- package/assets/images/icons/fa/assistive-listening-systems.svg +5 -5
- package/assets/images/icons/fa/asterisk.svg +2 -2
- package/assets/images/icons/fa/at.svg +4 -4
- package/assets/images/icons/fa/audio-description.svg +5 -5
- package/assets/images/icons/fa/automobile.svg +3 -3
- package/assets/images/icons/fa/backward.svg +1 -1
- package/assets/images/icons/fa/balance-scale.svg +4 -4
- package/assets/images/icons/fa/ban.svg +2 -2
- package/assets/images/icons/fa/bandcamp.svg +1 -1
- package/assets/images/icons/fa/bar-chart-o.svg +1 -1
- package/assets/images/icons/fa/barcode.svg +2 -2
- package/assets/images/icons/fa/bathtub.svg +6 -6
- package/assets/images/icons/fa/battery-0.svg +2 -2
- package/assets/images/icons/fa/battery-1.svg +2 -2
- package/assets/images/icons/fa/battery-2.svg +2 -2
- package/assets/images/icons/fa/battery-3.svg +2 -2
- package/assets/images/icons/fa/battery-4.svg +2 -2
- package/assets/images/icons/fa/beer.svg +1 -1
- package/assets/images/icons/fa/behance-square.svg +3 -3
- package/assets/images/icons/fa/behance.svg +3 -3
- package/assets/images/icons/fa/bell-o.svg +3 -3
- package/assets/images/icons/fa/bell-slash-o.svg +3 -3
- package/assets/images/icons/fa/bell-slash.svg +3 -3
- package/assets/images/icons/fa/bell.svg +2 -2
- package/assets/images/icons/fa/bicycle.svg +4 -4
- package/assets/images/icons/fa/binoculars.svg +2 -2
- package/assets/images/icons/fa/birthday-cake.svg +5 -5
- package/assets/images/icons/fa/bitbucket-square.svg +4 -4
- package/assets/images/icons/fa/bitbucket.svg +4 -4
- package/assets/images/icons/fa/bitcoin.svg +3 -3
- package/assets/images/icons/fa/black-tie.svg +1 -1
- package/assets/images/icons/fa/blind.svg +4 -4
- package/assets/images/icons/fa/bluetooth-b.svg +1 -1
- package/assets/images/icons/fa/bluetooth.svg +2 -2
- package/assets/images/icons/fa/bold.svg +4 -4
- package/assets/images/icons/fa/bomb.svg +4 -4
- package/assets/images/icons/fa/book.svg +4 -4
- package/assets/images/icons/fa/bookmark-o.svg +2 -2
- package/assets/images/icons/fa/bookmark.svg +1 -1
- package/assets/images/icons/fa/braille.svg +7 -7
- package/assets/images/icons/fa/briefcase.svg +2 -2
- package/assets/images/icons/fa/bug.svg +3 -3
- package/assets/images/icons/fa/building-o.svg +10 -10
- package/assets/images/icons/fa/building.svg +8 -8
- package/assets/images/icons/fa/bullhorn.svg +2 -2
- package/assets/images/icons/fa/bullseye.svg +3 -3
- package/assets/images/icons/fa/bus.svg +3 -3
- package/assets/images/icons/fa/buysellads.svg +1 -1
- package/assets/images/icons/fa/cab.svg +3 -3
- package/assets/images/icons/fa/calculator.svg +6 -6
- package/assets/images/icons/fa/calendar-check-o.svg +3 -3
- package/assets/images/icons/fa/calendar-minus-o.svg +3 -3
- package/assets/images/icons/fa/calendar-o.svg +2 -2
- package/assets/images/icons/fa/calendar-plus-o.svg +3 -3
- package/assets/images/icons/fa/calendar-times-o.svg +3 -3
- package/assets/images/icons/fa/calendar.svg +4 -4
- package/assets/images/icons/fa/camera-retro.svg +3 -3
- package/assets/images/icons/fa/camera.svg +2 -2
- package/assets/images/icons/fa/caret-down.svg +1 -1
- package/assets/images/icons/fa/caret-left.svg +1 -1
- package/assets/images/icons/fa/caret-right.svg +1 -1
- package/assets/images/icons/fa/caret-up.svg +1 -1
- package/assets/images/icons/fa/cart-arrow-down.svg +3 -3
- package/assets/images/icons/fa/cart-plus.svg +3 -3
- package/assets/images/icons/fa/cc-amex.svg +9 -9
- package/assets/images/icons/fa/cc-diners-club.svg +3 -3
- package/assets/images/icons/fa/cc-discover.svg +5 -5
- package/assets/images/icons/fa/cc-jcb.svg +4 -4
- package/assets/images/icons/fa/cc-mastercard.svg +11 -11
- package/assets/images/icons/fa/cc-paypal.svg +6 -6
- package/assets/images/icons/fa/cc-stripe.svg +5 -5
- package/assets/images/icons/fa/cc-visa.svg +3 -3
- package/assets/images/icons/fa/cc.svg +4 -4
- package/assets/images/icons/fa/certificate.svg +3 -3
- package/assets/images/icons/fa/chain.svg +4 -4
- package/assets/images/icons/fa/check-circle-o.svg +2 -2
- package/assets/images/icons/fa/check-circle.svg +2 -2
- package/assets/images/icons/fa/check-square-o.svg +3 -3
- package/assets/images/icons/fa/check-square.svg +2 -2
- package/assets/images/icons/fa/check.svg +1 -1
- package/assets/images/icons/fa/chevron-circle-down.svg +2 -2
- package/assets/images/icons/fa/chevron-circle-left.svg +2 -2
- package/assets/images/icons/fa/chevron-circle-right.svg +2 -2
- package/assets/images/icons/fa/chevron-circle-up.svg +2 -2
- package/assets/images/icons/fa/chevron-down.svg +1 -1
- package/assets/images/icons/fa/chevron-left.svg +1 -1
- package/assets/images/icons/fa/chevron-right.svg +1 -1
- package/assets/images/icons/fa/chevron-up.svg +1 -1
- package/assets/images/icons/fa/child.svg +2 -2
- package/assets/images/icons/fa/chrome.svg +2 -2
- package/assets/images/icons/fa/circle-o-notch.svg +2 -2
- package/assets/images/icons/fa/circle-o.svg +2 -2
- package/assets/images/icons/fa/circle-thin.svg +2 -2
- package/assets/images/icons/fa/circle.svg +1 -1
- package/assets/images/icons/fa/clock-o.svg +2 -2
- package/assets/images/icons/fa/clone.svg +2 -2
- package/assets/images/icons/fa/cloud-download.svg +2 -2
- package/assets/images/icons/fa/cloud-upload.svg +2 -2
- package/assets/images/icons/fa/cloud.svg +2 -2
- package/assets/images/icons/fa/cny.svg +2 -2
- package/assets/images/icons/fa/code-fork.svg +3 -3
- package/assets/images/icons/fa/code.svg +2 -2
- package/assets/images/icons/fa/codepen.svg +2 -2
- package/assets/images/icons/fa/codiepie.svg +3 -3
- package/assets/images/icons/fa/coffee.svg +2 -2
- package/assets/images/icons/fa/columns.svg +1 -1
- package/assets/images/icons/fa/comment-o.svg +3 -3
- package/assets/images/icons/fa/comment.svg +2 -2
- package/assets/images/icons/fa/commenting-o.svg +4 -4
- package/assets/images/icons/fa/commenting.svg +3 -3
- package/assets/images/icons/fa/comments-o.svg +4 -4
- package/assets/images/icons/fa/comments.svg +3 -3
- package/assets/images/icons/fa/compass.svg +2 -2
- package/assets/images/icons/fa/compress.svg +2 -2
- package/assets/images/icons/fa/connectdevelop.svg +7 -7
- package/assets/images/icons/fa/contao.svg +3 -3
- package/assets/images/icons/fa/copy.svg +2 -2
- package/assets/images/icons/fa/copyright.svg +3 -3
- package/assets/images/icons/fa/creative-commons.svg +5 -5
- package/assets/images/icons/fa/credit-card-alt.svg +1 -1
- package/assets/images/icons/fa/credit-card.svg +2 -2
- package/assets/images/icons/fa/crop.svg +2 -2
- package/assets/images/icons/fa/crosshairs.svg +3 -3
- package/assets/images/icons/fa/css3.svg +1 -1
- package/assets/images/icons/fa/cube.svg +2 -2
- package/assets/images/icons/fa/cubes.svg +3 -3
- package/assets/images/icons/fa/cut.svg +5 -5
- package/assets/images/icons/fa/cutlery.svg +2 -2
- package/assets/images/icons/fa/dashboard.svg +4 -4
- package/assets/images/icons/fa/dashcube.svg +1 -1
- package/assets/images/icons/fa/database.svg +3 -3
- package/assets/images/icons/fa/deafness.svg +4 -4
- package/assets/images/icons/fa/dedent.svg +3 -3
- package/assets/images/icons/fa/delicious.svg +2 -2
- package/assets/images/icons/fa/desktop.svg +2 -2
- package/assets/images/icons/fa/deviantart.svg +1 -1
- package/assets/images/icons/fa/diamond.svg +2 -2
- package/assets/images/icons/fa/digg.svg +2 -2
- package/assets/images/icons/fa/dollar.svg +4 -4
- package/assets/images/icons/fa/dot-circle-o.svg +2 -2
- package/assets/images/icons/fa/download.svg +2 -2
- package/assets/images/icons/fa/dribbble.svg +4 -4
- package/assets/images/icons/fa/drivers-license-o.svg +4 -4
- package/assets/images/icons/fa/drivers-license.svg +4 -4
- package/assets/images/icons/fa/dropbox.svg +1 -1
- package/assets/images/icons/fa/drupal.svg +5 -5
- package/assets/images/icons/fa/edge.svg +2 -2
- package/assets/images/icons/fa/edit.svg +3 -3
- package/assets/images/icons/fa/eercast.svg +5 -5
- package/assets/images/icons/fa/eject.svg +1 -1
- package/assets/images/icons/fa/ellipsis-h.svg +2 -2
- package/assets/images/icons/fa/ellipsis-v.svg +2 -2
- package/assets/images/icons/fa/envelope-o.svg +3 -3
- package/assets/images/icons/fa/envelope-open-o.svg +4 -4
- package/assets/images/icons/fa/envelope-open.svg +3 -3
- package/assets/images/icons/fa/envelope-square.svg +3 -3
- package/assets/images/icons/fa/envelope.svg +2 -2
- package/assets/images/icons/fa/envira.svg +3 -3
- package/assets/images/icons/fa/eraser.svg +1 -1
- package/assets/images/icons/fa/etsy.svg +3 -3
- package/assets/images/icons/fa/euro.svg +3 -3
- package/assets/images/icons/fa/exchange.svg +2 -2
- package/assets/images/icons/fa/exclamation-circle.svg +2 -2
- package/assets/images/icons/fa/exclamation.svg +1 -1
- package/assets/images/icons/fa/expand.svg +2 -2
- package/assets/images/icons/fa/expeditedssl.svg +5 -5
- package/assets/images/icons/fa/external-link-square.svg +2 -2
- package/assets/images/icons/fa/external-link.svg +2 -2
- package/assets/images/icons/fa/eye-slash.svg +4 -4
- package/assets/images/icons/fa/eye.svg +2 -2
- package/assets/images/icons/fa/eyedropper.svg +2 -2
- package/assets/images/icons/fa/fa.svg +2 -2
- package/assets/images/icons/fa/facebook-f.svg +1 -1
- package/assets/images/icons/fa/facebook-official.svg +1 -1
- package/assets/images/icons/fa/facebook-square.svg +2 -2
- package/assets/images/icons/fa/fast-backward.svg +2 -2
- package/assets/images/icons/fa/fast-forward.svg +2 -2
- package/assets/images/icons/fa/fax.svg +5 -5
- package/assets/images/icons/fa/feed.svg +3 -3
- package/assets/images/icons/fa/female.svg +2 -2
- package/assets/images/icons/fa/fighter-jet.svg +2 -2
- package/assets/images/icons/fa/file-code-o.svg +3 -3
- package/assets/images/icons/fa/file-excel-o.svg +3 -3
- package/assets/images/icons/fa/file-movie-o.svg +2 -2
- package/assets/images/icons/fa/file-o.svg +2 -2
- package/assets/images/icons/fa/file-pdf-o.svg +4 -4
- package/assets/images/icons/fa/file-photo-o.svg +2 -2
- package/assets/images/icons/fa/file-powerpoint-o.svg +2 -2
- package/assets/images/icons/fa/file-sound-o.svg +3 -3
- package/assets/images/icons/fa/file-text-o.svg +3 -3
- package/assets/images/icons/fa/file-text.svg +2 -2
- package/assets/images/icons/fa/file-word-o.svg +3 -3
- package/assets/images/icons/fa/file-zip-o.svg +3 -3
- package/assets/images/icons/fa/file.svg +1 -1
- package/assets/images/icons/fa/film.svg +5 -5
- package/assets/images/icons/fa/filter.svg +1 -1
- package/assets/images/icons/fa/fire-extinguisher.svg +3 -3
- package/assets/images/icons/fa/fire.svg +2 -2
- package/assets/images/icons/fa/firefox.svg +3 -3
- package/assets/images/icons/fa/first-order.svg +4 -4
- package/assets/images/icons/fa/flag-checkered.svg +4 -4
- package/assets/images/icons/fa/flag-o.svg +3 -3
- package/assets/images/icons/fa/flag.svg +2 -2
- package/assets/images/icons/fa/flash.svg +1 -1
- package/assets/images/icons/fa/flask.svg +1 -1
- package/assets/images/icons/fa/flickr.svg +2 -2
- package/assets/images/icons/fa/folder-o.svg +2 -2
- package/assets/images/icons/fa/folder-open-o.svg +3 -3
- package/assets/images/icons/fa/folder-open.svg +2 -2
- package/assets/images/icons/fa/folder.svg +1 -1
- package/assets/images/icons/fa/font.svg +3 -3
- package/assets/images/icons/fa/fonticons.svg +3 -3
- package/assets/images/icons/fa/fort-awesome.svg +4 -4
- package/assets/images/icons/fa/forumbee.svg +2 -2
- package/assets/images/icons/fa/forward.svg +1 -1
- package/assets/images/icons/fa/foursquare.svg +3 -3
- package/assets/images/icons/fa/free-code-camp.svg +7 -7
- package/assets/images/icons/fa/frown-o.svg +3 -3
- package/assets/images/icons/fa/gamepad.svg +3 -3
- package/assets/images/icons/fa/gbp.svg +2 -2
- package/assets/images/icons/fa/ge.svg +6 -6
- package/assets/images/icons/fa/gear.svg +4 -4
- package/assets/images/icons/fa/gears.svg +8 -8
- package/assets/images/icons/fa/genderless.svg +2 -2
- package/assets/images/icons/fa/get-pocket.svg +2 -2
- package/assets/images/icons/fa/gg-circle.svg +2 -2
- package/assets/images/icons/fa/gg.svg +1 -1
- package/assets/images/icons/fa/gift.svg +3 -3
- package/assets/images/icons/fa/git-square.svg +4 -4
- package/assets/images/icons/fa/git.svg +4 -4
- package/assets/images/icons/fa/github-alt.svg +4 -4
- package/assets/images/icons/fa/github-square.svg +5 -5
- package/assets/images/icons/fa/github.svg +5 -5
- package/assets/images/icons/fa/gitlab.svg +1 -1
- package/assets/images/icons/fa/gittip.svg +2 -2
- package/assets/images/icons/fa/glass.svg +1 -1
- package/assets/images/icons/fa/glide-g.svg +4 -4
- package/assets/images/icons/fa/glide.svg +4 -4
- package/assets/images/icons/fa/globe.svg +15 -15
- package/assets/images/icons/fa/google-plus-circle.svg +2 -2
- package/assets/images/icons/fa/google-plus-square.svg +2 -2
- package/assets/images/icons/fa/google-plus.svg +2 -2
- package/assets/images/icons/fa/google-wallet.svg +2 -2
- package/assets/images/icons/fa/google.svg +2 -2
- package/assets/images/icons/fa/grav.svg +7 -7
- package/assets/images/icons/fa/group.svg +4 -4
- package/assets/images/icons/fa/h-square.svg +2 -2
- package/assets/images/icons/fa/hand-grab-o.svg +4 -4
- package/assets/images/icons/fa/hand-lizard-o.svg +3 -3
- package/assets/images/icons/fa/hand-o-down.svg +4 -4
- package/assets/images/icons/fa/hand-o-left.svg +4 -4
- package/assets/images/icons/fa/hand-o-right.svg +4 -4
- package/assets/images/icons/fa/hand-o-up.svg +4 -4
- package/assets/images/icons/fa/hand-peace-o.svg +5 -5
- package/assets/images/icons/fa/hand-pointer-o.svg +4 -4
- package/assets/images/icons/fa/hand-scissors-o.svg +5 -5
- package/assets/images/icons/fa/hand-spock-o.svg +4 -4
- package/assets/images/icons/fa/hand-stop-o.svg +3 -3
- package/assets/images/icons/fa/handshake-o.svg +5 -5
- package/assets/images/icons/fa/hashtag.svg +3 -3
- package/assets/images/icons/fa/hdd-o.svg +3 -3
- package/assets/images/icons/fa/header.svg +5 -5
- package/assets/images/icons/fa/headphones.svg +3 -3
- package/assets/images/icons/fa/heart-o.svg +3 -3
- package/assets/images/icons/fa/heart.svg +2 -2
- package/assets/images/icons/fa/heartbeat.svg +3 -3
- package/assets/images/icons/fa/history.svg +3 -3
- package/assets/images/icons/fa/home.svg +2 -2
- package/assets/images/icons/fa/hospital-o.svg +8 -8
- package/assets/images/icons/fa/hotel.svg +2 -2
- package/assets/images/icons/fa/hourglass-1.svg +2 -2
- package/assets/images/icons/fa/hourglass-2.svg +2 -2
- package/assets/images/icons/fa/hourglass-3.svg +3 -3
- package/assets/images/icons/fa/hourglass-o.svg +3 -3
- package/assets/images/icons/fa/hourglass.svg +3 -3
- package/assets/images/icons/fa/houzz.svg +1 -1
- package/assets/images/icons/fa/html5.svg +1 -1
- package/assets/images/icons/fa/i-cursor.svg +1 -1
- package/assets/images/icons/fa/id-badge.svg +3 -3
- package/assets/images/icons/fa/imdb.svg +4 -4
- package/assets/images/icons/fa/inbox.svg +2 -2
- package/assets/images/icons/fa/indent.svg +3 -3
- package/assets/images/icons/fa/industry.svg +1 -1
- package/assets/images/icons/fa/info-circle.svg +2 -2
- package/assets/images/icons/fa/info.svg +2 -2
- package/assets/images/icons/fa/instagram.svg +4 -4
- package/assets/images/icons/fa/institution.svg +2 -2
- package/assets/images/icons/fa/internet-explorer.svg +3 -3
- package/assets/images/icons/fa/intersex.svg +3 -3
- package/assets/images/icons/fa/ioxhost.svg +3 -3
- package/assets/images/icons/fa/italic.svg +2 -2
- package/assets/images/icons/fa/joomla.svg +5 -5
- package/assets/images/icons/fa/jsfiddle.svg +3 -3
- package/assets/images/icons/fa/key.svg +3 -3
- package/assets/images/icons/fa/keyboard-o.svg +5 -5
- package/assets/images/icons/fa/language.svg +6 -6
- package/assets/images/icons/fa/laptop.svg +2 -2
- package/assets/images/icons/fa/lastfm-square.svg +4 -4
- package/assets/images/icons/fa/lastfm.svg +4 -4
- package/assets/images/icons/fa/leaf.svg +3 -3
- package/assets/images/icons/fa/leanpub.svg +3 -3
- package/assets/images/icons/fa/legal.svg +4 -4
- package/assets/images/icons/fa/lemon-o.svg +4 -4
- package/assets/images/icons/fa/level-down.svg +1 -1
- package/assets/images/icons/fa/level-up.svg +1 -1
- package/assets/images/icons/fa/life-bouy.svg +3 -3
- package/assets/images/icons/fa/lightbulb-o.svg +4 -4
- package/assets/images/icons/fa/line-chart.svg +2 -2
- package/assets/images/icons/fa/linkedin-square.svg +2 -2
- package/assets/images/icons/fa/linkedin.svg +2 -2
- package/assets/images/icons/fa/linode.svg +4 -4
- package/assets/images/icons/fa/linux.svg +16 -16
- package/assets/images/icons/fa/list-alt.svg +5 -5
- package/assets/images/icons/fa/list-ol.svg +4 -4
- package/assets/images/icons/fa/list-ul.svg +3 -3
- package/assets/images/icons/fa/list.svg +5 -5
- package/assets/images/icons/fa/location-arrow.svg +1 -1
- package/assets/images/icons/fa/lock.svg +1 -1
- package/assets/images/icons/fa/long-arrow-down.svg +1 -1
- package/assets/images/icons/fa/long-arrow-left.svg +1 -1
- package/assets/images/icons/fa/long-arrow-right.svg +1 -1
- package/assets/images/icons/fa/long-arrow-up.svg +1 -1
- package/assets/images/icons/fa/low-vision.svg +4 -4
- package/assets/images/icons/fa/magic.svg +2 -2
- package/assets/images/icons/fa/magnet.svg +2 -2
- package/assets/images/icons/fa/mail-forward.svg +2 -2
- package/assets/images/icons/fa/mail-reply-all.svg +2 -2
- package/assets/images/icons/fa/mail-reply.svg +2 -2
- package/assets/images/icons/fa/male.svg +2 -2
- package/assets/images/icons/fa/map-marker.svg +1 -1
- package/assets/images/icons/fa/map-o.svg +2 -2
- package/assets/images/icons/fa/map-pin.svg +2 -2
- package/assets/images/icons/fa/map-signs.svg +2 -2
- package/assets/images/icons/fa/map.svg +2 -2
- package/assets/images/icons/fa/mars-double.svg +4 -4
- package/assets/images/icons/fa/mars-stroke-h.svg +3 -3
- package/assets/images/icons/fa/mars-stroke-v.svg +3 -3
- package/assets/images/icons/fa/mars-stroke.svg +3 -3
- package/assets/images/icons/fa/mars.svg +2 -2
- package/assets/images/icons/fa/maxcdn.svg +1 -1
- package/assets/images/icons/fa/meanpath.svg +3 -3
- package/assets/images/icons/fa/medium.svg +2 -2
- package/assets/images/icons/fa/medkit.svg +2 -2
- package/assets/images/icons/fa/meetup.svg +9 -9
- package/assets/images/icons/fa/meh-o.svg +3 -3
- package/assets/images/icons/fa/mercury.svg +3 -3
- package/assets/images/icons/fa/microchip.svg +5 -5
- package/assets/images/icons/fa/microphone-slash.svg +3 -3
- package/assets/images/icons/fa/microphone.svg +2 -2
- package/assets/images/icons/fa/minus-circle.svg +2 -2
- package/assets/images/icons/fa/minus-square-o.svg +2 -2
- package/assets/images/icons/fa/minus-square.svg +2 -2
- package/assets/images/icons/fa/minus.svg +1 -1
- package/assets/images/icons/fa/mixcloud.svg +4 -4
- package/assets/images/icons/fa/mobile-phone.svg +2 -2
- package/assets/images/icons/fa/modx.svg +1 -1
- package/assets/images/icons/fa/money.svg +2 -2
- package/assets/images/icons/fa/moon-o.svg +2 -2
- package/assets/images/icons/fa/mortar-board.svg +2 -2
- package/assets/images/icons/fa/motorcycle.svg +4 -4
- package/assets/images/icons/fa/mouse-pointer.svg +1 -1
- package/assets/images/icons/fa/music.svg +2 -2
- package/assets/images/icons/fa/navicon.svg +2 -2
- package/assets/images/icons/fa/neuter.svg +2 -2
- package/assets/images/icons/fa/newspaper-o.svg +2 -2
- package/assets/images/icons/fa/object-group.svg +2 -2
- package/assets/images/icons/fa/object-ungroup.svg +2 -2
- package/assets/images/icons/fa/odnoklassniki-square.svg +3 -3
- package/assets/images/icons/fa/odnoklassniki.svg +3 -3
- package/assets/images/icons/fa/opencart.svg +3 -3
- package/assets/images/icons/fa/openid.svg +1 -1
- package/assets/images/icons/fa/opera.svg +3 -3
- package/assets/images/icons/fa/optin-monster.svg +17 -17
- package/assets/images/icons/fa/pagelines.svg +4 -4
- package/assets/images/icons/fa/paint-brush.svg +2 -2
- package/assets/images/icons/fa/paperclip.svg +3 -3
- package/assets/images/icons/fa/paragraph.svg +2 -2
- package/assets/images/icons/fa/paste.svg +2 -2
- package/assets/images/icons/fa/pause-circle-o.svg +2 -2
- package/assets/images/icons/fa/pause-circle.svg +2 -2
- package/assets/images/icons/fa/pause.svg +1 -1
- package/assets/images/icons/fa/paw.svg +4 -4
- package/assets/images/icons/fa/paypal.svg +3 -3
- package/assets/images/icons/fa/pencil-square.svg +2 -2
- package/assets/images/icons/fa/pencil.svg +2 -2
- package/assets/images/icons/fa/percent.svg +3 -3
- package/assets/images/icons/fa/phone-square.svg +4 -4
- package/assets/images/icons/fa/phone.svg +3 -3
- package/assets/images/icons/fa/photo.svg +2 -2
- package/assets/images/icons/fa/pie-chart.svg +1 -1
- package/assets/images/icons/fa/pied-piper-alt.svg +8 -8
- package/assets/images/icons/fa/pied-piper-pp.svg +3 -3
- package/assets/images/icons/fa/pied-piper.svg +3 -3
- package/assets/images/icons/fa/pinterest-p.svg +3 -3
- package/assets/images/icons/fa/pinterest-square.svg +3 -3
- package/assets/images/icons/fa/pinterest.svg +3 -3
- package/assets/images/icons/fa/plane.svg +2 -2
- package/assets/images/icons/fa/play-circle-o.svg +2 -2
- package/assets/images/icons/fa/play-circle.svg +2 -2
- package/assets/images/icons/fa/play.svg +1 -1
- package/assets/images/icons/fa/plug.svg +2 -2
- package/assets/images/icons/fa/plus-circle.svg +2 -2
- package/assets/images/icons/fa/plus-square-o.svg +2 -2
- package/assets/images/icons/fa/plus-square.svg +2 -2
- package/assets/images/icons/fa/plus.svg +1 -1
- package/assets/images/icons/fa/podcast.svg +5 -5
- package/assets/images/icons/fa/power-off.svg +2 -2
- package/assets/images/icons/fa/print.svg +2 -2
- package/assets/images/icons/fa/product-hunt.svg +2 -2
- package/assets/images/icons/fa/puzzle-piece.svg +4 -4
- package/assets/images/icons/fa/qq.svg +4 -4
- package/assets/images/icons/fa/qrcode.svg +2 -2
- package/assets/images/icons/fa/question-circle-o.svg +4 -4
- package/assets/images/icons/fa/question-circle.svg +3 -3
- package/assets/images/icons/fa/question.svg +2 -2
- package/assets/images/icons/fa/quora.svg +3 -3
- package/assets/images/icons/fa/quote-left.svg +2 -2
- package/assets/images/icons/fa/quote-right.svg +2 -2
- package/assets/images/icons/fa/ra.svg +4 -4
- package/assets/images/icons/fa/random.svg +4 -4
- package/assets/images/icons/fa/ravelry.svg +6 -6
- package/assets/images/icons/fa/recycle.svg +4 -4
- package/assets/images/icons/fa/reddit-alien.svg +4 -4
- package/assets/images/icons/fa/reddit-square.svg +4 -4
- package/assets/images/icons/fa/reddit.svg +4 -4
- package/assets/images/icons/fa/refresh.svg +3 -3
- package/assets/images/icons/fa/registered.svg +3 -3
- package/assets/images/icons/fa/remove.svg +2 -2
- package/assets/images/icons/fa/renren.svg +2 -2
- package/assets/images/icons/fa/retweet.svg +3 -3
- package/assets/images/icons/fa/road.svg +2 -2
- package/assets/images/icons/fa/rocket.svg +2 -2
- package/assets/images/icons/fa/rotate-left.svg +2 -2
- package/assets/images/icons/fa/rotate-right.svg +2 -2
- package/assets/images/icons/fa/rss-square.svg +3 -3
- package/assets/images/icons/fa/ruble.svg +2 -2
- package/assets/images/icons/fa/rupee.svg +2 -2
- package/assets/images/icons/fa/safari.svg +6 -6
- package/assets/images/icons/fa/save.svg +2 -2
- package/assets/images/icons/fa/scribd.svg +4 -4
- package/assets/images/icons/fa/search-minus.svg +3 -3
- package/assets/images/icons/fa/search-plus.svg +3 -3
- package/assets/images/icons/fa/search.svg +2 -2
- package/assets/images/icons/fa/sellsy.svg +3 -3
- package/assets/images/icons/fa/send-o.svg +2 -2
- package/assets/images/icons/fa/send.svg +1 -1
- package/assets/images/icons/fa/server.svg +2 -2
- package/assets/images/icons/fa/share-alt-square.svg +2 -2
- package/assets/images/icons/fa/share-alt.svg +2 -2
- package/assets/images/icons/fa/share-square-o.svg +3 -3
- package/assets/images/icons/fa/share-square.svg +2 -2
- package/assets/images/icons/fa/shekel.svg +2 -2
- package/assets/images/icons/fa/shield.svg +2 -2
- package/assets/images/icons/fa/ship.svg +5 -5
- package/assets/images/icons/fa/shirtsinbulk.svg +7 -7
- package/assets/images/icons/fa/shopping-bag.svg +2 -2
- package/assets/images/icons/fa/shopping-basket.svg +4 -4
- package/assets/images/icons/fa/shopping-cart.svg +2 -2
- package/assets/images/icons/fa/shower.svg +6 -6
- package/assets/images/icons/fa/sign-in.svg +2 -2
- package/assets/images/icons/fa/sign-out.svg +2 -2
- package/assets/images/icons/fa/signal.svg +2 -2
- package/assets/images/icons/fa/signing.svg +5 -5
- package/assets/images/icons/fa/simplybuilt.svg +2 -2
- package/assets/images/icons/fa/sitemap.svg +3 -3
- package/assets/images/icons/fa/skyatlas.svg +4 -4
- package/assets/images/icons/fa/skype.svg +4 -4
- package/assets/images/icons/fa/slack.svg +3 -3
- package/assets/images/icons/fa/sliders.svg +2 -2
- package/assets/images/icons/fa/slideshare.svg +4 -4
- package/assets/images/icons/fa/smile-o.svg +3 -3
- package/assets/images/icons/fa/snapchat-ghost.svg +3 -3
- package/assets/images/icons/fa/snapchat-square.svg +4 -4
- package/assets/images/icons/fa/snapchat.svg +4 -4
- package/assets/images/icons/fa/snowflake-o.svg +5 -5
- package/assets/images/icons/fa/soccer-ball-o.svg +2 -2
- package/assets/images/icons/fa/sort-alpha-asc.svg +3 -3
- package/assets/images/icons/fa/sort-alpha-desc.svg +3 -3
- package/assets/images/icons/fa/sort-amount-asc.svg +3 -3
- package/assets/images/icons/fa/sort-amount-desc.svg +3 -3
- package/assets/images/icons/fa/sort-down.svg +1 -1
- package/assets/images/icons/fa/sort-numeric-asc.svg +3 -3
- package/assets/images/icons/fa/sort-numeric-desc.svg +3 -3
- package/assets/images/icons/fa/sort-up.svg +1 -1
- package/assets/images/icons/fa/soundcloud.svg +7 -7
- package/assets/images/icons/fa/space-shuttle.svg +3 -3
- package/assets/images/icons/fa/spinner.svg +4 -4
- package/assets/images/icons/fa/spoon.svg +1 -1
- package/assets/images/icons/fa/spotify.svg +3 -3
- package/assets/images/icons/fa/square-o.svg +2 -2
- package/assets/images/icons/fa/square.svg +1 -1
- package/assets/images/icons/fa/stack-exchange.svg +2 -2
- package/assets/images/icons/fa/stack-overflow.svg +1 -1
- package/assets/images/icons/fa/star-half-empty.svg +2 -2
- package/assets/images/icons/fa/star-half.svg +1 -1
- package/assets/images/icons/fa/star-o.svg +2 -2
- package/assets/images/icons/fa/star.svg +2 -2
- package/assets/images/icons/fa/steam-square.svg +4 -4
- package/assets/images/icons/fa/steam.svg +3 -3
- package/assets/images/icons/fa/step-backward.svg +1 -1
- package/assets/images/icons/fa/step-forward.svg +1 -1
- package/assets/images/icons/fa/stethoscope.svg +3 -3
- package/assets/images/icons/fa/sticky-note-o.svg +2 -2
- package/assets/images/icons/fa/sticky-note.svg +1 -1
- package/assets/images/icons/fa/stop-circle-o.svg +2 -2
- package/assets/images/icons/fa/stop-circle.svg +2 -2
- package/assets/images/icons/fa/stop.svg +1 -1
- package/assets/images/icons/fa/street-view.svg +4 -4
- package/assets/images/icons/fa/strikethrough.svg +3 -3
- package/assets/images/icons/fa/stumbleupon-circle.svg +3 -3
- package/assets/images/icons/fa/stumbleupon.svg +2 -2
- package/assets/images/icons/fa/subscript.svg +3 -3
- package/assets/images/icons/fa/subway.svg +2 -2
- package/assets/images/icons/fa/suitcase.svg +2 -2
- package/assets/images/icons/fa/sun-o.svg +3 -3
- package/assets/images/icons/fa/superpowers.svg +2 -2
- package/assets/images/icons/fa/superscript.svg +3 -3
- package/assets/images/icons/fa/table.svg +5 -5
- package/assets/images/icons/fa/tablet.svg +2 -2
- package/assets/images/icons/fa/tag.svg +2 -2
- package/assets/images/icons/fa/tags.svg +2 -2
- package/assets/images/icons/fa/tasks.svg +2 -2
- package/assets/images/icons/fa/telegram.svg +2 -2
- package/assets/images/icons/fa/tencent-weibo.svg +3 -3
- package/assets/images/icons/fa/terminal.svg +2 -2
- package/assets/images/icons/fa/text-height.svg +4 -4
- package/assets/images/icons/fa/text-width.svg +5 -5
- package/assets/images/icons/fa/th-large.svg +2 -2
- package/assets/images/icons/fa/th-list.svg +3 -3
- package/assets/images/icons/fa/th.svg +4 -4
- package/assets/images/icons/fa/themeisle.svg +8 -8
- package/assets/images/icons/fa/thermometer-0.svg +2 -2
- package/assets/images/icons/fa/thermometer-1.svg +3 -3
- package/assets/images/icons/fa/thermometer-2.svg +3 -3
- package/assets/images/icons/fa/thermometer-3.svg +3 -3
- package/assets/images/icons/fa/thermometer-4.svg +3 -3
- package/assets/images/icons/fa/thumb-tack.svg +2 -2
- package/assets/images/icons/fa/thumbs-down.svg +3 -3
- package/assets/images/icons/fa/thumbs-o-down.svg +4 -4
- package/assets/images/icons/fa/thumbs-o-up.svg +4 -4
- package/assets/images/icons/fa/thumbs-up.svg +3 -3
- package/assets/images/icons/fa/ticket.svg +2 -2
- package/assets/images/icons/fa/times-circle-o.svg +3 -3
- package/assets/images/icons/fa/times-circle.svg +2 -2
- package/assets/images/icons/fa/times-rectangle-o.svg +2 -2
- package/assets/images/icons/fa/times-rectangle.svg +2 -2
- package/assets/images/icons/fa/tint.svg +2 -2
- package/assets/images/icons/fa/toggle-down.svg +2 -2
- package/assets/images/icons/fa/toggle-left.svg +2 -2
- package/assets/images/icons/fa/toggle-off.svg +3 -3
- package/assets/images/icons/fa/toggle-on.svg +2 -2
- package/assets/images/icons/fa/toggle-right.svg +2 -2
- package/assets/images/icons/fa/toggle-up.svg +2 -2
- package/assets/images/icons/fa/trademark.svg +3 -3
- package/assets/images/icons/fa/train.svg +2 -2
- package/assets/images/icons/fa/transgender-alt.svg +4 -4
- package/assets/images/icons/fa/trash-o.svg +3 -3
- package/assets/images/icons/fa/trash.svg +3 -3
- package/assets/images/icons/fa/tree.svg +2 -2
- package/assets/images/icons/fa/trello.svg +2 -2
- package/assets/images/icons/fa/tripadvisor.svg +6 -6
- package/assets/images/icons/fa/trophy.svg +3 -3
- package/assets/images/icons/fa/truck.svg +3 -3
- package/assets/images/icons/fa/tty.svg +5 -5
- package/assets/images/icons/fa/tumblr-square.svg +2 -2
- package/assets/images/icons/fa/tumblr.svg +2 -2
- package/assets/images/icons/fa/turkish-lira.svg +2 -2
- package/assets/images/icons/fa/tv.svg +2 -2
- package/assets/images/icons/fa/twitch.svg +1 -1
- package/assets/images/icons/fa/twitter-square.svg +3 -3
- package/assets/images/icons/fa/twitter.svg +2 -2
- package/assets/images/icons/fa/umbrella.svg +3 -3
- package/assets/images/icons/fa/underline.svg +4 -4
- package/assets/images/icons/fa/universal-access.svg +4 -4
- package/assets/images/icons/fa/unlink.svg +4 -4
- package/assets/images/icons/fa/unlock-alt.svg +2 -2
- package/assets/images/icons/fa/unlock.svg +2 -2
- package/assets/images/icons/fa/unsorted.svg +1 -1
- package/assets/images/icons/fa/upload.svg +2 -2
- package/assets/images/icons/fa/usb.svg +3 -3
- package/assets/images/icons/fa/user-circle-o.svg +2 -2
- package/assets/images/icons/fa/user-circle.svg +2 -2
- package/assets/images/icons/fa/user-md.svg +4 -4
- package/assets/images/icons/fa/user-o.svg +3 -3
- package/assets/images/icons/fa/user-plus.svg +3 -3
- package/assets/images/icons/fa/user-secret.svg +4 -4
- package/assets/images/icons/fa/user-times.svg +3 -3
- package/assets/images/icons/fa/user.svg +2 -2
- package/assets/images/icons/fa/vcard-o.svg +5 -5
- package/assets/images/icons/fa/vcard.svg +4 -4
- package/assets/images/icons/fa/venus-double.svg +4 -4
- package/assets/images/icons/fa/venus-mars.svg +4 -4
- package/assets/images/icons/fa/venus.svg +2 -2
- package/assets/images/icons/fa/viacoin.svg +1 -1
- package/assets/images/icons/fa/viadeo-square.svg +4 -4
- package/assets/images/icons/fa/viadeo.svg +3 -3
- package/assets/images/icons/fa/video-camera.svg +2 -2
- package/assets/images/icons/fa/vimeo-square.svg +2 -2
- package/assets/images/icons/fa/vimeo.svg +2 -2
- package/assets/images/icons/fa/vine.svg +2 -2
- package/assets/images/icons/fa/vk.svg +5 -5
- package/assets/images/icons/fa/volume-control-phone.svg +5 -5
- package/assets/images/icons/fa/volume-down.svg +2 -2
- package/assets/images/icons/fa/volume-off.svg +1 -1
- package/assets/images/icons/fa/volume-up.svg +4 -4
- package/assets/images/icons/fa/warning.svg +2 -2
- package/assets/images/icons/fa/wechat.svg +4 -4
- package/assets/images/icons/fa/weibo.svg +5 -5
- package/assets/images/icons/fa/whatsapp.svg +3 -3
- package/assets/images/icons/fa/wheelchair-alt.svg +3 -3
- package/assets/images/icons/fa/wheelchair.svg +2 -2
- package/assets/images/icons/fa/wifi.svg +3 -3
- package/assets/images/icons/fa/wikipedia-w.svg +3 -3
- package/assets/images/icons/fa/window-maximize.svg +1 -1
- package/assets/images/icons/fa/window-minimize.svg +1 -1
- package/assets/images/icons/fa/window-restore.svg +2 -2
- package/assets/images/icons/fa/windows.svg +1 -1
- package/assets/images/icons/fa/won.svg +3 -3
- package/assets/images/icons/fa/wordpress.svg +5 -5
- package/assets/images/icons/fa/wpbeginner.svg +2 -2
- package/assets/images/icons/fa/wpexplorer.svg +3 -3
- package/assets/images/icons/fa/wpforms.svg +2 -2
- package/assets/images/icons/fa/wrench.svg +2 -2
- package/assets/images/icons/fa/xing-square.svg +2 -2
- package/assets/images/icons/fa/xing.svg +2 -2
- package/assets/images/icons/fa/y-combinator-square.svg +1 -1
- package/assets/images/icons/fa/yahoo.svg +2 -2
- package/assets/images/icons/fa/yc.svg +1 -1
- package/assets/images/icons/fa/yelp.svg +4 -4
- package/assets/images/icons/fa/yoast.svg +2 -2
- package/assets/images/icons/fa/youtube-play.svg +3 -3
- package/assets/images/icons/fa/youtube-square.svg +6 -6
- package/assets/images/icons/fa/youtube.svg +5 -5
- package/assets/site.scss +375 -375
- package/assets/text.scss +8 -0
- package/assets/theme-variables.scss +98 -98
- package/assets/variables.scss +93 -93
- package/fesm2022/dflat-core-web-core-data.mjs +5 -0
- package/fesm2022/dflat-core-web-core-data.mjs.map +1 -1
- package/fesm2022/dflat-core-web-core-model.mjs.map +1 -1
- package/fesm2022/dflat-core-web-core-ux.mjs +547 -68
- package/fesm2022/dflat-core-web-core-ux.mjs.map +1 -1
- package/fesm2022/dflat-core-web-system-data.mjs.map +1 -1
- package/fesm2022/dflat-core-web-system-ux.mjs.map +1 -1
- package/package.json +1 -1
- package/scss/dflat-app.scss +6 -0
- package/types/dflat-core-web-core-data.d.ts +8 -0
- package/types/dflat-core-web-core-model.d.ts +2 -0
- package/types/dflat-core-web-core-ux.d.ts +149 -3
- package/types/dflat-core-web-system-ux.d.ts +1 -1
|
@@ -2,7 +2,7 @@ import { ActionDisplay, AggregateFunction, ApiErrorTypes, ConditionalResults, Co
|
|
|
2
2
|
import * as i1$5 from "@angular/common";
|
|
3
3
|
import { CommonModule, Location } from "@angular/common";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
import { ApplicationRef, ChangeDetectionStrategy, Component, ContentChild, ContentChildren, Directive, ElementRef, EnvironmentInjector, EventEmitter, Host, HostBinding, HostListener, Inject, Injectable, InjectionToken, Injector, Input, LOCALE_ID, NgModule, Optional, Output, Pipe, TemplateRef, ViewChild, ViewChildren, ViewContainerRef, computed, createComponent, forwardRef, inject, signal } from "@angular/core";
|
|
5
|
+
import { ApplicationRef, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ContentChildren, Directive, ElementRef, EnvironmentInjector, EventEmitter, Host, HostBinding, HostListener, Inject, Injectable, InjectionToken, Injector, Input, LOCALE_ID, NgModule, Optional, Output, Pipe, TemplateRef, ViewChild, ViewChildren, ViewContainerRef, computed, createComponent, forwardRef, inject, signal } from "@angular/core";
|
|
6
6
|
import * as i5 from "@angular/forms";
|
|
7
7
|
import { FormControl, FormGroup, FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR, ReactiveFormsModule, UntypedFormControl, UntypedFormGroup, Validators } from "@angular/forms";
|
|
8
8
|
import * as i2$1 from "@angular/router";
|
|
@@ -2953,22 +2953,57 @@ var FilterContext = class FilterContext {
|
|
|
2953
2953
|
this.applyAdditionalQuery();
|
|
2954
2954
|
}
|
|
2955
2955
|
applyAdditionalQuery() {
|
|
2956
|
-
const
|
|
2956
|
+
const filter = {
|
|
2957
|
+
...this.filter$.value,
|
|
2958
|
+
AdditionalQuery: this.buildAdditionalQuery() ?? null
|
|
2959
|
+
};
|
|
2960
|
+
this.setFilter(filter);
|
|
2961
|
+
}
|
|
2962
|
+
buildAdditionalQuery(excludedProperty) {
|
|
2963
|
+
return toAdditionalQuery(this.additionalQuery$.value.Rows.map((row) => {
|
|
2957
2964
|
const conditions = [];
|
|
2958
2965
|
row.ClausesByPropertyName.forEach((element, property) => {
|
|
2966
|
+
if (property === excludedProperty) return;
|
|
2959
2967
|
if (!Utilities.IsNil(element.FilterValue) && element.FilterValue !== "") conditions.push({
|
|
2960
2968
|
Property: property,
|
|
2961
2969
|
Operator: "like",
|
|
2962
2970
|
Value: String(element.FilterValue)
|
|
2963
2971
|
});
|
|
2972
|
+
if (element.FilterValues?.length) conditions.push({
|
|
2973
|
+
Property: property,
|
|
2974
|
+
Operator: "in",
|
|
2975
|
+
Values: element.FilterValues
|
|
2976
|
+
});
|
|
2964
2977
|
});
|
|
2965
2978
|
return { Conditions: conditions };
|
|
2966
|
-
});
|
|
2967
|
-
|
|
2979
|
+
}));
|
|
2980
|
+
}
|
|
2981
|
+
getDistinctValuesFilter(property) {
|
|
2982
|
+
return {
|
|
2968
2983
|
...this.filter$.value,
|
|
2969
|
-
AdditionalQuery:
|
|
2984
|
+
AdditionalQuery: this.buildAdditionalQuery(property) ?? null
|
|
2970
2985
|
};
|
|
2971
|
-
|
|
2986
|
+
}
|
|
2987
|
+
getFilterValues(property) {
|
|
2988
|
+
return this.additionalQuery$.value.Rows[0]?.ClausesByPropertyName.get(property)?.FilterValues ?? [];
|
|
2989
|
+
}
|
|
2990
|
+
setFilterValues(property, values) {
|
|
2991
|
+
if (!property) return;
|
|
2992
|
+
let current = this.additionalQuery$.value;
|
|
2993
|
+
if (current.Rows.length === 0) {
|
|
2994
|
+
if (!values.length) return;
|
|
2995
|
+
current.Rows.push(this.newFilterRow());
|
|
2996
|
+
}
|
|
2997
|
+
const row = current.Rows[0];
|
|
2998
|
+
const clause = row.ClausesByPropertyName.get(property) ?? {
|
|
2999
|
+
PropertyName: property,
|
|
3000
|
+
Operator: FilterOperator.Contains,
|
|
3001
|
+
FilterValue: void 0
|
|
3002
|
+
};
|
|
3003
|
+
clause.FilterValues = values.length ? [...values] : void 0;
|
|
3004
|
+
row.ClausesByPropertyName.set(property, clause);
|
|
3005
|
+
this.additionalQuery$.next(current);
|
|
3006
|
+
this.applyAdditionalQuery();
|
|
2972
3007
|
}
|
|
2973
3008
|
setAggregateClause(aggregationRequest) {
|
|
2974
3009
|
this.setFilter({ AggregateClause: aggregationRequest });
|
|
@@ -9502,6 +9537,10 @@ var PageTabService = class PageTabService {
|
|
|
9502
9537
|
this.router.navigateByUrl(tab.url);
|
|
9503
9538
|
}
|
|
9504
9539
|
close(tab) {
|
|
9540
|
+
if (tab.parentUrl && !this.tabs.some((t) => t.id !== tab.id && t.path === PageTabService.pathOf(tab.parentUrl))) {
|
|
9541
|
+
this.backToParent(tab);
|
|
9542
|
+
return;
|
|
9543
|
+
}
|
|
9505
9544
|
const tabs = this.tabs;
|
|
9506
9545
|
const index = tabs.findIndex((t) => t.id === tab.id);
|
|
9507
9546
|
if (index < 0) return;
|
|
@@ -9517,6 +9556,21 @@ var PageTabService = class PageTabService {
|
|
|
9517
9556
|
this.router.navigateByUrl(neighbour.url);
|
|
9518
9557
|
} else this.router.navigateByUrl("/");
|
|
9519
9558
|
}
|
|
9559
|
+
backToParent(tab) {
|
|
9560
|
+
const parentUrl = tab.parentUrl;
|
|
9561
|
+
if (tab.id === this.activeId) {
|
|
9562
|
+
this.router.navigateByUrl(parentUrl);
|
|
9563
|
+
return;
|
|
9564
|
+
}
|
|
9565
|
+
this.destroyHandle(tab.id);
|
|
9566
|
+
const parent = {
|
|
9567
|
+
id: tab.id,
|
|
9568
|
+
path: PageTabService.pathOf(parentUrl),
|
|
9569
|
+
url: parentUrl,
|
|
9570
|
+
title: tab.parentTitle || this.titleOf(PageTabService.pathOf(parentUrl))
|
|
9571
|
+
};
|
|
9572
|
+
this.tabs$.next(this.tabs.map((t) => t.id === tab.id ? parent : t));
|
|
9573
|
+
}
|
|
9520
9574
|
move(id, position) {
|
|
9521
9575
|
const tabs = [...this.tabs];
|
|
9522
9576
|
const from = tabs.findIndex((t) => t.id === id);
|
|
@@ -9542,7 +9596,11 @@ var PageTabService = class PageTabService {
|
|
|
9542
9596
|
id: this.nextId++,
|
|
9543
9597
|
path: t.path,
|
|
9544
9598
|
url: t.url || t.path,
|
|
9545
|
-
title: t.title || t.path
|
|
9599
|
+
title: t.title || t.path,
|
|
9600
|
+
...t.parentUrl ? {
|
|
9601
|
+
parentUrl: t.parentUrl,
|
|
9602
|
+
parentTitle: t.parentTitle
|
|
9603
|
+
} : {}
|
|
9546
9604
|
}));
|
|
9547
9605
|
if (tabs.length > 0) this.tabs$.next(tabs);
|
|
9548
9606
|
}
|
|
@@ -9551,7 +9609,9 @@ var PageTabService = class PageTabService {
|
|
|
9551
9609
|
localStorage.setItem(PageTabService.storageKey, JSON.stringify(tabs.map((t) => ({
|
|
9552
9610
|
path: t.path,
|
|
9553
9611
|
url: t.url,
|
|
9554
|
-
title: t.title
|
|
9612
|
+
title: t.title,
|
|
9613
|
+
parentUrl: t.parentUrl,
|
|
9614
|
+
parentTitle: t.parentTitle
|
|
9555
9615
|
}))));
|
|
9556
9616
|
} catch {}
|
|
9557
9617
|
}
|
|
@@ -9635,16 +9695,22 @@ var PageTabService = class PageTabService {
|
|
|
9635
9695
|
id: this.toId ?? this.nextId++,
|
|
9636
9696
|
path,
|
|
9637
9697
|
url,
|
|
9638
|
-
|
|
9698
|
+
...this.titlesOf(path, menuTitle)
|
|
9639
9699
|
};
|
|
9640
9700
|
tabs.push(tab);
|
|
9641
|
-
} else {
|
|
9642
|
-
const
|
|
9701
|
+
} else if (tab.path !== path) {
|
|
9702
|
+
const { parentUrl, parentTitle, ...previous } = tab;
|
|
9643
9703
|
tab = {
|
|
9644
|
-
...
|
|
9704
|
+
...previous,
|
|
9645
9705
|
path,
|
|
9646
9706
|
url,
|
|
9647
|
-
|
|
9707
|
+
...this.titlesOf(path, menuTitle, tab)
|
|
9708
|
+
};
|
|
9709
|
+
tabs[tabs.findIndex((t) => t.id === tab.id)] = tab;
|
|
9710
|
+
} else {
|
|
9711
|
+
tab = {
|
|
9712
|
+
...tab,
|
|
9713
|
+
url
|
|
9648
9714
|
};
|
|
9649
9715
|
tabs[tabs.findIndex((t) => t.id === tab.id)] = tab;
|
|
9650
9716
|
}
|
|
@@ -9665,6 +9731,29 @@ var PageTabService = class PageTabService {
|
|
|
9665
9731
|
if (handle?.componentRef) handle.componentRef.destroy();
|
|
9666
9732
|
this.handles.delete(id);
|
|
9667
9733
|
}
|
|
9734
|
+
titlesOf(path, menuTitle, previous) {
|
|
9735
|
+
const detail = menuTitle ? null : PageTabService.detailOf(path);
|
|
9736
|
+
if (!detail) return { title: menuTitle || this.titleOf(path) };
|
|
9737
|
+
const fromList = previous?.path === detail.parentPath;
|
|
9738
|
+
const parentTitle = fromList ? previous.title : this.titleOf(detail.parentPath);
|
|
9739
|
+
return {
|
|
9740
|
+
title: PageTabService.detailTitle(parentTitle, detail.id),
|
|
9741
|
+
parentUrl: fromList ? previous.url : detail.parentPath,
|
|
9742
|
+
parentTitle
|
|
9743
|
+
};
|
|
9744
|
+
}
|
|
9745
|
+
static detailOf(path) {
|
|
9746
|
+
const segments = PageTabService.pathOf(path).split("/").filter((s) => s);
|
|
9747
|
+
const last = segments[segments.length - 1];
|
|
9748
|
+
if (segments.length < 2 || !/^-?\d+$/.test(last ?? "")) return null;
|
|
9749
|
+
return {
|
|
9750
|
+
parentPath: "/" + segments.slice(0, -1).join("/"),
|
|
9751
|
+
id: Number(last)
|
|
9752
|
+
};
|
|
9753
|
+
}
|
|
9754
|
+
static detailTitle(parentTitle, id) {
|
|
9755
|
+
return `${parentTitle} (${id > 0 ? id : "nouveau"})`;
|
|
9756
|
+
}
|
|
9668
9757
|
titleOf(path) {
|
|
9669
9758
|
if (path === "" || path === "/") return "Accueil";
|
|
9670
9759
|
const item = PageTabService.findMenuItem(this.menuItems, path);
|
|
@@ -10041,6 +10130,9 @@ var PageTabsComponent = class PageTabsComponent {
|
|
|
10041
10130
|
this.menuOpen = false;
|
|
10042
10131
|
this.pageTabs.activate(tab);
|
|
10043
10132
|
}
|
|
10133
|
+
closeTitle(tab) {
|
|
10134
|
+
return tab.parentUrl ? `Revenir à « ${tab.parentTitle} »` : "Fermer l'onglet";
|
|
10135
|
+
}
|
|
10044
10136
|
onClose(tab, event) {
|
|
10045
10137
|
event.stopPropagation();
|
|
10046
10138
|
this.pageTabs.close(tab);
|
|
@@ -10147,7 +10239,7 @@ var PageTabsComponent = class PageTabsComponent {
|
|
|
10147
10239
|
descendants: true
|
|
10148
10240
|
}],
|
|
10149
10241
|
ngImport: i0,
|
|
10150
|
-
template: "<!-- Onglets des écrans ouverts : clic pour afficher, croix ou clic du milieu pour fermer, glisser-déposer pour déplacer.\r\n Les onglets qui ne tiennent pas dans la barre sont masqués et listés dans un menu déroulant. -->\r\n<div #frame class=\"page-tabs-frame\" [class.narrow]=\"narrow\">\r\n <div #strip class=\"page-tabs\" role=\"tablist\" aria-label=\"Ecrans ouverts\">\r\n @for (tab of pageTabs.tabs$ | async; track tab.id; let index = $index) {\r\n <div class=\"page-tab\" role=\"tab\" tabindex=\"0\" draggable=\"true\"\r\n [attr.data-tab-id]=\"tab.id\"\r\n [attr.aria-hidden]=\"isHidden(tab) ? true : null\"\r\n [class.hidden-tab]=\"isHidden(tab)\"\r\n [class.active]=\"tab.id === pageTabs.activeId\"\r\n [class.dragging]=\"tab.id === draggedId\"\r\n [class.drop-before]=\"dropIndex === index && dropBefore && !isDragged(index)\"\r\n [class.drop-after]=\"dropIndex === index && !dropBefore && !isDragged(index)\"\r\n [attr.aria-selected]=\"tab.id === pageTabs.activeId\"\r\n [title]=\"tab.title\"\r\n (click)=\"onSelect(tab)\"\r\n (keydown.enter)=\"onSelect(tab)\"\r\n (auxclick)=\"onAuxClick(tab, $event)\"\r\n (dragstart)=\"onDragStart(tab, $event)\"\r\n (dragover)=\"onDragOver(index, $event)\"\r\n (drop)=\"onDrop($event)\"\r\n (dragend)=\"onDragEnd()\">\r\n <span class=\"page-tab-title\">{{ tab.title }}</span>\r\n <button type=\"button\" class=\"page-tab-close\" title=\"
|
|
10242
|
+
template: "<!-- Onglets des écrans ouverts : clic pour afficher, croix ou clic du milieu pour fermer, glisser-déposer pour déplacer.\r\n Les onglets qui ne tiennent pas dans la barre sont masqués et listés dans un menu déroulant. -->\r\n<div #frame class=\"page-tabs-frame\" [class.narrow]=\"narrow\">\r\n <div #strip class=\"page-tabs\" role=\"tablist\" aria-label=\"Ecrans ouverts\">\r\n @for (tab of pageTabs.tabs$ | async; track tab.id; let index = $index) {\r\n <div class=\"page-tab\" role=\"tab\" tabindex=\"0\" draggable=\"true\"\r\n [attr.data-tab-id]=\"tab.id\"\r\n [attr.aria-hidden]=\"isHidden(tab) ? true : null\"\r\n [class.hidden-tab]=\"isHidden(tab)\"\r\n [class.active]=\"tab.id === pageTabs.activeId\"\r\n [class.dragging]=\"tab.id === draggedId\"\r\n [class.drop-before]=\"dropIndex === index && dropBefore && !isDragged(index)\"\r\n [class.drop-after]=\"dropIndex === index && !dropBefore && !isDragged(index)\"\r\n [attr.aria-selected]=\"tab.id === pageTabs.activeId\"\r\n [title]=\"tab.title\"\r\n (click)=\"onSelect(tab)\"\r\n (keydown.enter)=\"onSelect(tab)\"\r\n (auxclick)=\"onAuxClick(tab, $event)\"\r\n (dragstart)=\"onDragStart(tab, $event)\"\r\n (dragover)=\"onDragOver(index, $event)\"\r\n (drop)=\"onDrop($event)\"\r\n (dragend)=\"onDragEnd()\">\r\n <span class=\"page-tab-title\">{{ tab.title }}</span>\r\n <button type=\"button\" class=\"page-tab-close\" [title]=\"closeTitle(tab)\" [attr.aria-label]=\"closeTitle(tab)\"\r\n draggable=\"false\" (click)=\"onClose(tab, $event)\">\r\n <i class=\"fa fa-times\"></i>\r\n </button>\r\n </div>\r\n }\r\n </div>\r\n\r\n @if (hiddenIds.size > 0) {\r\n <div class=\"page-tabs-more\">\r\n <button type=\"button\" class=\"page-tabs-more-button\" [class.open]=\"menuOpen\"\r\n [title]=\"narrow ? 'Écrans ouverts' : hiddenIds.size + ' onglet(s) masqué(s)'\" aria-haspopup=\"menu\" [attr.aria-expanded]=\"menuOpen\"\r\n (click)=\"toggleMenu($event)\">\r\n <i class=\"fa fa-chevron-down\"></i>\r\n </button>\r\n @if (menuOpen) {\r\n <ul class=\"page-tabs-menu\" role=\"menu\">\r\n @for (tab of hiddenTabs; track tab.id) {\r\n <li class=\"page-tabs-menu-item\" role=\"menuitem\" tabindex=\"0\"\r\n [class.active]=\"tab.id === pageTabs.activeId\"\r\n (click)=\"onSelect(tab)\" (keydown.enter)=\"onSelect(tab)\">\r\n <span class=\"page-tab-title\">{{ tab.title }}</span>\r\n <button type=\"button\" class=\"page-tab-close\" [title]=\"closeTitle(tab)\" [attr.aria-label]=\"closeTitle(tab)\"\r\n (click)=\"onClose(tab, $event)\">\r\n <i class=\"fa fa-times\"></i>\r\n </button>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n</div>\r\n",
|
|
10151
10243
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{display:block;flex:1 1 0;min-width:0;height:50px;margin-left:16px}.page-tabs-frame{display:flex;align-items:center;height:100%}.page-tabs{position:relative;flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:2px;height:100%;overflow:hidden}.page-tab{position:relative;display:flex;align-items:center;gap:6px;flex-shrink:0;min-width:90px;max-width:220px;height:30px;padding:0 6px 0 30px;border-radius:5px;color:#fff;font-size:12.5px;cursor:pointer;-webkit-user-select:none;user-select:none}.page-tab:hover{background:#5272d3}.page-tab:focus-visible{outline:2px solid #ffffff;outline-offset:-2px}.page-tab.active{background:#6684e0;font-weight:600}.page-tab.hidden-tab{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none}.page-tab:hover .page-tab-close,.page-tab:focus-visible .page-tab-close{visibility:visible}.page-tab.dragging{opacity:.5}.page-tab.drop-before:before,.page-tab.drop-after:after{content:\"\";position:absolute;top:4px;bottom:4px;width:3px;border-radius:2px;background:#ffd54f}.page-tab.drop-before:before{left:-3px}.page-tab.drop-after:after{right:-3px}.page-tab-title{flex:1 1 auto;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.page-tab-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;padding:0;border:0;border-radius:3px;background:none;color:inherit;font-size:11px;opacity:.7;visibility:hidden;cursor:pointer}.page-tab-close:hover{opacity:1;background:#fff3}.page-tabs-more{position:relative;flex-shrink:0;margin:0 8px 0 12px}.page-tabs-more-button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:5px;background:#6684e0;color:#fff;font-size:12px;cursor:pointer}.page-tabs-more-button i{display:block;line-height:1;transform:translateY(-1px)}.page-tabs-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:3000;min-width:200px;max-width:320px;max-height:60vh;margin:0;padding:4px 0;overflow-y:auto;list-style:none;background:#4465c9;border-radius:5px;box-shadow:0 4px 14px #0003}.page-tabs-menu-item{display:flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;color:#fff;font-size:12.5px;cursor:pointer}.page-tabs-menu-item .page-tab-title{text-align:left}.page-tabs-menu-item .page-tab-close{color:#fff}.page-tabs-menu-item:hover,.page-tabs-menu-item:focus-visible{background:#5272d3;outline:none}.page-tabs-menu-item:hover .page-tab-close,.page-tabs-menu-item:focus-visible .page-tab-close{visibility:visible}.page-tabs-frame.narrow{justify-content:flex-end}.page-tabs-frame.narrow .page-tabs{flex:0 0 0;overflow:hidden}.page-tabs-menu-item.active .page-tab-title{font-weight:600}\n"],
|
|
10152
10244
|
dependencies: [{
|
|
10153
10245
|
kind: "pipe",
|
|
@@ -10169,7 +10261,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
10169
10261
|
selector: "alg-page-tabs",
|
|
10170
10262
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
10171
10263
|
standalone: false,
|
|
10172
|
-
template: "<!-- Onglets des écrans ouverts : clic pour afficher, croix ou clic du milieu pour fermer, glisser-déposer pour déplacer.\r\n Les onglets qui ne tiennent pas dans la barre sont masqués et listés dans un menu déroulant. -->\r\n<div #frame class=\"page-tabs-frame\" [class.narrow]=\"narrow\">\r\n <div #strip class=\"page-tabs\" role=\"tablist\" aria-label=\"Ecrans ouverts\">\r\n @for (tab of pageTabs.tabs$ | async; track tab.id; let index = $index) {\r\n <div class=\"page-tab\" role=\"tab\" tabindex=\"0\" draggable=\"true\"\r\n [attr.data-tab-id]=\"tab.id\"\r\n [attr.aria-hidden]=\"isHidden(tab) ? true : null\"\r\n [class.hidden-tab]=\"isHidden(tab)\"\r\n [class.active]=\"tab.id === pageTabs.activeId\"\r\n [class.dragging]=\"tab.id === draggedId\"\r\n [class.drop-before]=\"dropIndex === index && dropBefore && !isDragged(index)\"\r\n [class.drop-after]=\"dropIndex === index && !dropBefore && !isDragged(index)\"\r\n [attr.aria-selected]=\"tab.id === pageTabs.activeId\"\r\n [title]=\"tab.title\"\r\n (click)=\"onSelect(tab)\"\r\n (keydown.enter)=\"onSelect(tab)\"\r\n (auxclick)=\"onAuxClick(tab, $event)\"\r\n (dragstart)=\"onDragStart(tab, $event)\"\r\n (dragover)=\"onDragOver(index, $event)\"\r\n (drop)=\"onDrop($event)\"\r\n (dragend)=\"onDragEnd()\">\r\n <span class=\"page-tab-title\">{{ tab.title }}</span>\r\n <button type=\"button\" class=\"page-tab-close\" title=\"
|
|
10264
|
+
template: "<!-- Onglets des écrans ouverts : clic pour afficher, croix ou clic du milieu pour fermer, glisser-déposer pour déplacer.\r\n Les onglets qui ne tiennent pas dans la barre sont masqués et listés dans un menu déroulant. -->\r\n<div #frame class=\"page-tabs-frame\" [class.narrow]=\"narrow\">\r\n <div #strip class=\"page-tabs\" role=\"tablist\" aria-label=\"Ecrans ouverts\">\r\n @for (tab of pageTabs.tabs$ | async; track tab.id; let index = $index) {\r\n <div class=\"page-tab\" role=\"tab\" tabindex=\"0\" draggable=\"true\"\r\n [attr.data-tab-id]=\"tab.id\"\r\n [attr.aria-hidden]=\"isHidden(tab) ? true : null\"\r\n [class.hidden-tab]=\"isHidden(tab)\"\r\n [class.active]=\"tab.id === pageTabs.activeId\"\r\n [class.dragging]=\"tab.id === draggedId\"\r\n [class.drop-before]=\"dropIndex === index && dropBefore && !isDragged(index)\"\r\n [class.drop-after]=\"dropIndex === index && !dropBefore && !isDragged(index)\"\r\n [attr.aria-selected]=\"tab.id === pageTabs.activeId\"\r\n [title]=\"tab.title\"\r\n (click)=\"onSelect(tab)\"\r\n (keydown.enter)=\"onSelect(tab)\"\r\n (auxclick)=\"onAuxClick(tab, $event)\"\r\n (dragstart)=\"onDragStart(tab, $event)\"\r\n (dragover)=\"onDragOver(index, $event)\"\r\n (drop)=\"onDrop($event)\"\r\n (dragend)=\"onDragEnd()\">\r\n <span class=\"page-tab-title\">{{ tab.title }}</span>\r\n <button type=\"button\" class=\"page-tab-close\" [title]=\"closeTitle(tab)\" [attr.aria-label]=\"closeTitle(tab)\"\r\n draggable=\"false\" (click)=\"onClose(tab, $event)\">\r\n <i class=\"fa fa-times\"></i>\r\n </button>\r\n </div>\r\n }\r\n </div>\r\n\r\n @if (hiddenIds.size > 0) {\r\n <div class=\"page-tabs-more\">\r\n <button type=\"button\" class=\"page-tabs-more-button\" [class.open]=\"menuOpen\"\r\n [title]=\"narrow ? 'Écrans ouverts' : hiddenIds.size + ' onglet(s) masqué(s)'\" aria-haspopup=\"menu\" [attr.aria-expanded]=\"menuOpen\"\r\n (click)=\"toggleMenu($event)\">\r\n <i class=\"fa fa-chevron-down\"></i>\r\n </button>\r\n @if (menuOpen) {\r\n <ul class=\"page-tabs-menu\" role=\"menu\">\r\n @for (tab of hiddenTabs; track tab.id) {\r\n <li class=\"page-tabs-menu-item\" role=\"menuitem\" tabindex=\"0\"\r\n [class.active]=\"tab.id === pageTabs.activeId\"\r\n (click)=\"onSelect(tab)\" (keydown.enter)=\"onSelect(tab)\">\r\n <span class=\"page-tab-title\">{{ tab.title }}</span>\r\n <button type=\"button\" class=\"page-tab-close\" [title]=\"closeTitle(tab)\" [attr.aria-label]=\"closeTitle(tab)\"\r\n (click)=\"onClose(tab, $event)\">\r\n <i class=\"fa fa-times\"></i>\r\n </button>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n</div>\r\n",
|
|
10173
10265
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{display:block;flex:1 1 0;min-width:0;height:50px;margin-left:16px}.page-tabs-frame{display:flex;align-items:center;height:100%}.page-tabs{position:relative;flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:2px;height:100%;overflow:hidden}.page-tab{position:relative;display:flex;align-items:center;gap:6px;flex-shrink:0;min-width:90px;max-width:220px;height:30px;padding:0 6px 0 30px;border-radius:5px;color:#fff;font-size:12.5px;cursor:pointer;-webkit-user-select:none;user-select:none}.page-tab:hover{background:#5272d3}.page-tab:focus-visible{outline:2px solid #ffffff;outline-offset:-2px}.page-tab.active{background:#6684e0;font-weight:600}.page-tab.hidden-tab{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none}.page-tab:hover .page-tab-close,.page-tab:focus-visible .page-tab-close{visibility:visible}.page-tab.dragging{opacity:.5}.page-tab.drop-before:before,.page-tab.drop-after:after{content:\"\";position:absolute;top:4px;bottom:4px;width:3px;border-radius:2px;background:#ffd54f}.page-tab.drop-before:before{left:-3px}.page-tab.drop-after:after{right:-3px}.page-tab-title{flex:1 1 auto;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.page-tab-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;padding:0;border:0;border-radius:3px;background:none;color:inherit;font-size:11px;opacity:.7;visibility:hidden;cursor:pointer}.page-tab-close:hover{opacity:1;background:#fff3}.page-tabs-more{position:relative;flex-shrink:0;margin:0 8px 0 12px}.page-tabs-more-button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:5px;background:#6684e0;color:#fff;font-size:12px;cursor:pointer}.page-tabs-more-button i{display:block;line-height:1;transform:translateY(-1px)}.page-tabs-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:3000;min-width:200px;max-width:320px;max-height:60vh;margin:0;padding:4px 0;overflow-y:auto;list-style:none;background:#4465c9;border-radius:5px;box-shadow:0 4px 14px #0003}.page-tabs-menu-item{display:flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;color:#fff;font-size:12.5px;cursor:pointer}.page-tabs-menu-item .page-tab-title{text-align:left}.page-tabs-menu-item .page-tab-close{color:#fff}.page-tabs-menu-item:hover,.page-tabs-menu-item:focus-visible{background:#5272d3;outline:none}.page-tabs-menu-item:hover .page-tab-close,.page-tabs-menu-item:focus-visible .page-tab-close{visibility:visible}.page-tabs-frame.narrow{justify-content:flex-end}.page-tabs-frame.narrow .page-tabs{flex:0 0 0;overflow:hidden}.page-tabs-menu-item.active .page-tab-title{font-weight:600}\n"]
|
|
10174
10266
|
}]
|
|
10175
10267
|
}],
|
|
@@ -15082,7 +15174,7 @@ var FieldComponent = class FieldComponent {
|
|
|
15082
15174
|
}],
|
|
15083
15175
|
ngImport: i0,
|
|
15084
15176
|
template: "<div [formGroup]=\"form\" class=\"field-container\">\r\n <ng-container *ngIf=\"field\">\r\n <div [hidden]=\"!!field.IsHidden\" [ngSwitch]=\"field.FilterType\">\r\n <div class=\"label-group\" *ngIf=\"showLabel\">\r\n <label *ngIf=\"field.FilterType != filterType.CheckBox &&\r\n field.FilterType != filterType.HorizComboBox\"\r\n [htmlFor]=\"field.PropertyName\">\r\n {{ field.Label }}\r\n </label>\r\n <img *ngIf=\"field.Required\"\r\n class=\"required-icon\"\r\n [src]=\"this.getRequiredIcon()\"\r\n alt=\"obligatoire\"\r\n />\r\n </div>\r\n\r\n <!--String Input-->\r\n <div *ngSwitchCase=\"filterType.String\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n [formControl]=\"this.control\"\r\n [id]=\"field.PropertyName\"\r\n [type]=\"field.InputType\"\r\n (change)=\"this.onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n focusable\r\n />\r\n </div>\r\n </div>\r\n\r\n <!--Number Input-->\r\n <div *ngSwitchCase=\"filterType.Integer\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n [formControl]=\"this.control\"\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n type=\"number\"\r\n focusable\r\n />\r\n </div>\r\n </div>\r\n <div *ngSwitchCase=\"filterType.Decimal\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n type=\"text\"\r\n inputmode=\"decimal\"\r\n algDecimalInput\r\n />\r\n </div>\r\n </div>\r\n <!--ComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.ComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n placeholder=\"Sélectionner {{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n [clearable]=\"field.IsClearable\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n [selectOnTab]=\"true\"\r\n (change)=\"onValueChanged($event)\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!-- InputSelect -->\r\n <!-- <div *ngSwitchCase=\"this.filterType.Custom\" class=\"form-group input\">\r\n <alg-input-selector #inputSelector\r\n type=\"text\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"this.field.ModalPropertyValue\"\r\n [modalPropertyName]=\"this.field.ModalPropertyName\"\r\n [modalEntityKey]=\"this.field.ModalEntityKey\"\r\n [modalTitle]=\"this.field.ModalTitle\"\r\n [readonly]=\"this.field.ReadOnly\">\r\n </alg-input-selector>\r\n </div> -->\r\n\r\n <!-- InputSelector with button -->\r\n <ng-container *ngSwitchCase=\"this.filterType.Custom\">\r\n <!-- <alg-selector\r\n #inputSelector\r\n type=\"text\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"field.ModalPropertyValue\"\r\n [modalPropertyName]=\"field.ModalPropertyName\"\r\n [modalEntityKey]=\"field.ModalEntityKey\"\r\n [modalTitle]=\"field.ModalTitle\">\r\n </alg-selector> -->\r\n\r\n <!-- *ngSwitchCase=\"filterType.Custom\" -->\r\n <ng-container *ngIf=\"field.ModalOnly\">\r\n <div class=\"pull-left input-select-default with-button\">\r\n <input\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n />\r\n </div> \r\n </ng-container>\r\n\r\n <alg-selector\r\n [field]=\"field\"\r\n [control]=\"this.control\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n \r\n >\r\n <!-- [control]=\"this.form.controls[field.PropertyName]\" -->\r\n </alg-selector>\r\n\r\n </ng-container>\r\n\r\n <!-- TreeSelector -->\r\n <ng-container *ngSwitchCase=\"this.filterType.TreeSelector\">\r\n <alg-input-tree-selector\r\n [items]=\"field.Data\"\r\n [id]=\"field.PropertyName\"\r\n [bindValue]=\"field.ValueMember\"\r\n [bindLabel]=\"field.DisplayMember\"\r\n childrenKey=\"children\"\r\n countKey=\"childrenCount\"\r\n [formControlName]=\"field.PropertyName\"\r\n placeholder=\"{{ field.Label }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </alg-input-tree-selector>\r\n </ng-container>\r\n\r\n <!-- TextWithbutton -->\r\n <ng-container\r\n *ngSwitchCase=\"this.filterType.TextWithButton\"\r\n class=\"form-group\"\r\n >\r\n <div class=\"input-with-button\">\r\n\r\n <input\r\n type=\"text\"\r\n class=\"form-control\"\r\n (change)=\"onValueChanged($event)\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n />\r\n\r\n <button\r\n class=\"btn btn-secondary btn-32 btn-input-select\"\r\n (click)=\"onClick(field)\"\r\n >\r\n <span class=\"fa fa-ellipsis-h\"></span>\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <!--HorizComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.HorizComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n class=\"horiz-combox-box\"\r\n placeholder=\"{{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!--Boolean Input-->\r\n <div *ngSwitchCase=\"filterType.CheckBox\" class=\"form-group\">\r\n <div class=\"checkbox-container\">\r\n <label class=\"switch\" [htmlFor]=\"field.PropertyName\">\r\n <input\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n type=\"checkbox\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <span class=\"slider round\"></span>\r\n </label>\r\n <span class=\"checkbox-label\">{{ field.Label }}</span>\r\n </div>\r\n </div>\r\n\r\n <!--Enum Input-->\r\n <div *ngSwitchCase=\"filterType.RadioButton\" class=\"form-group\">\r\n <div class=\"radio-button-container\">\r\n <form [formGroup]=\"form\" class=\"radio-buttons\">\r\n <div\r\n *ngFor=\"let data of field.Data;let indexOfData = index\" class=\"radio-button\">\r\n <input\r\n type=\"radio\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"getRadioButtonId(field.PropertyName,indexOfData)\"\r\n [value]=\"indexOfData\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <label class=\"radio-button-label\">{{ data }}</label>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n\r\n <!-- Text zone with button -->\r\n <div *ngSwitchCase=\"filterType.TextZoneWithButton\"\r\n class=\"form-group\">\r\n <div class=\"text-zone-and-button\">\r\n <div class=\"text-zone-container\">\r\n <textarea\r\n #textarea\r\n type=\"text\"\r\n class=\"text-area\"\r\n spellcheck=\"false\"\r\n [formControlName]=\"field.ValueMember\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </textarea>\r\n </div>\r\n <div class=\"feedback-and-button\">\r\n <div class=\"feedback\">\r\n <div class=\"feedback-green\" *ngIf=\"field.TextWithStyle.GreenText.length > 0\">\r\n {{ field.TextWithStyle.GreenText }}\r\n </div>\r\n <div class=\"feedback-yellow\" *ngIf=\"field.TextWithStyle.YellowText.length > 0\">\r\n {{ field.TextWithStyle.YellowText }}\r\n </div>\r\n <div class=\"feedback-red\" *ngIf=\"field.TextWithStyle.RedText.length > 0\">\r\n {{ field.TextWithStyle.RedText }}\r\n </div>\r\n </div>\r\n <button\r\n type=\"button\"\r\n id=\"botton-compile\"\r\n class=\"btn btn-primary btn-flat pull-right button\"\r\n (click)=\"onClick(field)\"\r\n >\r\n {{ field.ButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--Date -->\r\n <div *ngSwitchCase=\"filterType.Date\" class=\"form-group\">\r\n <div>\r\n <input\r\n type=\"text\"\r\n [class]=\"this.inputClass\"\r\n placeholder=\"Sélectionner une date\"\r\n [id]=\"field.PropertyName\"\r\n [bsConfig]=\"bsConfig\"\r\n [bsValue]=\"dateValue\"\r\n (bsValueChange)=\"onBsValueChanged($event)\"\r\n [disabled]=\"this.readonly || field.ReadOnly\"\r\n algDatepicker\r\n />\r\n </div>\r\n </div>\r\n <!--DateTime -->\r\n <div *ngSwitchCase=\"filterType.DateTime\" class=\"form-group\">\r\n <div>\r\n <input\r\n type=\"datetime-local\"\r\n [class]=\"this.inputClass\"\r\n [id]=\"field.PropertyName\"\r\n [value]=\"dateTimeLocalValue\"\r\n [disabled]=\"this.readonly || field.ReadOnly\"\r\n (change)=\"onDateTimeLocalChanged($event)\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!-- Text input -->\r\n <div *ngSwitchCase=\"filterType.Text\" class=\"form-group\">\r\n <div>\r\n <textarea\r\n type=\"text\"\r\n rows=\"5\"\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n >\r\n </textarea>\r\n </div>\r\n </div>\r\n\r\n <!-- DropFileZone -->\r\n <div\r\n *ngSwitchCase=\"filterType.DropFileZone\"\r\n class=\"form-group ml-4\"\r\n >\r\n <fieldset>\r\n <input\r\n [id]=\"field.PropertyName\"\r\n type=\"file\"\r\n class=\"ml--3\"\r\n (change)=\"fileEvent($event)\"\r\n />\r\n </fieldset>\r\n </div>\r\n\r\n <!-- Password -->\r\n <div *ngSwitchCase=\"filterType.Password\" class=\"form-group\">\r\n <div class=\"input-with-button\">\r\n <input\r\n class=\"form-control\"\r\n [type]=\"hidePassword ? 'password' : 'text'\"\r\n [formControl]=\"control\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [name]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n autocomplete=\"new-password\"\r\n />\r\n <!-- btn-32 pull-right button -->\r\n <button class=\"btn btn-secondary btn-32 btn-input-select\" (click)=\"showPassword()\">\r\n <i class=\"fa fa-eye\" aria-hidden=\"true\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"this.showValidationErrors()\">\r\n <div class=\"validation-message\">\r\n {{ this.getValidationErrors() }}\r\n </div>\r\n <!-- <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('required')\">\r\n Ce champ est obligatoire\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('min')\">\r\n Minimum: {{field.FieldValidators.MinValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('max')\">\r\n Maximum: {{field.FieldValidators.MaxValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('maxLength')\">\r\n Longueur maximale: {{field.FieldValidators.MaxLength}} caractères\r\n </ng-container> -->\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n</div>\r\n",
|
|
15085
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#
|
|
15177
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#4465c9}input:focus+.slider{box-shadow:0 0 1px #4465c9}input:checked+.slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translate(22px)}.slider.round{border-radius:25px}.slider.round:before{border-radius:50%}\n"],
|
|
15086
15178
|
dependencies: [
|
|
15087
15179
|
{
|
|
15088
15180
|
kind: "directive",
|
|
@@ -15337,7 +15429,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
15337
15429
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
15338
15430
|
standalone: false,
|
|
15339
15431
|
template: "<div [formGroup]=\"form\" class=\"field-container\">\r\n <ng-container *ngIf=\"field\">\r\n <div [hidden]=\"!!field.IsHidden\" [ngSwitch]=\"field.FilterType\">\r\n <div class=\"label-group\" *ngIf=\"showLabel\">\r\n <label *ngIf=\"field.FilterType != filterType.CheckBox &&\r\n field.FilterType != filterType.HorizComboBox\"\r\n [htmlFor]=\"field.PropertyName\">\r\n {{ field.Label }}\r\n </label>\r\n <img *ngIf=\"field.Required\"\r\n class=\"required-icon\"\r\n [src]=\"this.getRequiredIcon()\"\r\n alt=\"obligatoire\"\r\n />\r\n </div>\r\n\r\n <!--String Input-->\r\n <div *ngSwitchCase=\"filterType.String\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n [formControl]=\"this.control\"\r\n [id]=\"field.PropertyName\"\r\n [type]=\"field.InputType\"\r\n (change)=\"this.onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n focusable\r\n />\r\n </div>\r\n </div>\r\n\r\n <!--Number Input-->\r\n <div *ngSwitchCase=\"filterType.Integer\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n [formControl]=\"this.control\"\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n type=\"number\"\r\n focusable\r\n />\r\n </div>\r\n </div>\r\n <div *ngSwitchCase=\"filterType.Decimal\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n type=\"text\"\r\n inputmode=\"decimal\"\r\n algDecimalInput\r\n />\r\n </div>\r\n </div>\r\n <!--ComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.ComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n placeholder=\"Sélectionner {{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n [clearable]=\"field.IsClearable\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n [selectOnTab]=\"true\"\r\n (change)=\"onValueChanged($event)\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!-- InputSelect -->\r\n <!-- <div *ngSwitchCase=\"this.filterType.Custom\" class=\"form-group input\">\r\n <alg-input-selector #inputSelector\r\n type=\"text\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"this.field.ModalPropertyValue\"\r\n [modalPropertyName]=\"this.field.ModalPropertyName\"\r\n [modalEntityKey]=\"this.field.ModalEntityKey\"\r\n [modalTitle]=\"this.field.ModalTitle\"\r\n [readonly]=\"this.field.ReadOnly\">\r\n </alg-input-selector>\r\n </div> -->\r\n\r\n <!-- InputSelector with button -->\r\n <ng-container *ngSwitchCase=\"this.filterType.Custom\">\r\n <!-- <alg-selector\r\n #inputSelector\r\n type=\"text\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"field.ModalPropertyValue\"\r\n [modalPropertyName]=\"field.ModalPropertyName\"\r\n [modalEntityKey]=\"field.ModalEntityKey\"\r\n [modalTitle]=\"field.ModalTitle\">\r\n </alg-selector> -->\r\n\r\n <!-- *ngSwitchCase=\"filterType.Custom\" -->\r\n <ng-container *ngIf=\"field.ModalOnly\">\r\n <div class=\"pull-left input-select-default with-button\">\r\n <input\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n />\r\n </div> \r\n </ng-container>\r\n\r\n <alg-selector\r\n [field]=\"field\"\r\n [control]=\"this.control\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n \r\n >\r\n <!-- [control]=\"this.form.controls[field.PropertyName]\" -->\r\n </alg-selector>\r\n\r\n </ng-container>\r\n\r\n <!-- TreeSelector -->\r\n <ng-container *ngSwitchCase=\"this.filterType.TreeSelector\">\r\n <alg-input-tree-selector\r\n [items]=\"field.Data\"\r\n [id]=\"field.PropertyName\"\r\n [bindValue]=\"field.ValueMember\"\r\n [bindLabel]=\"field.DisplayMember\"\r\n childrenKey=\"children\"\r\n countKey=\"childrenCount\"\r\n [formControlName]=\"field.PropertyName\"\r\n placeholder=\"{{ field.Label }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </alg-input-tree-selector>\r\n </ng-container>\r\n\r\n <!-- TextWithbutton -->\r\n <ng-container\r\n *ngSwitchCase=\"this.filterType.TextWithButton\"\r\n class=\"form-group\"\r\n >\r\n <div class=\"input-with-button\">\r\n\r\n <input\r\n type=\"text\"\r\n class=\"form-control\"\r\n (change)=\"onValueChanged($event)\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n />\r\n\r\n <button\r\n class=\"btn btn-secondary btn-32 btn-input-select\"\r\n (click)=\"onClick(field)\"\r\n >\r\n <span class=\"fa fa-ellipsis-h\"></span>\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <!--HorizComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.HorizComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n class=\"horiz-combox-box\"\r\n placeholder=\"{{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!--Boolean Input-->\r\n <div *ngSwitchCase=\"filterType.CheckBox\" class=\"form-group\">\r\n <div class=\"checkbox-container\">\r\n <label class=\"switch\" [htmlFor]=\"field.PropertyName\">\r\n <input\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n type=\"checkbox\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <span class=\"slider round\"></span>\r\n </label>\r\n <span class=\"checkbox-label\">{{ field.Label }}</span>\r\n </div>\r\n </div>\r\n\r\n <!--Enum Input-->\r\n <div *ngSwitchCase=\"filterType.RadioButton\" class=\"form-group\">\r\n <div class=\"radio-button-container\">\r\n <form [formGroup]=\"form\" class=\"radio-buttons\">\r\n <div\r\n *ngFor=\"let data of field.Data;let indexOfData = index\" class=\"radio-button\">\r\n <input\r\n type=\"radio\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"getRadioButtonId(field.PropertyName,indexOfData)\"\r\n [value]=\"indexOfData\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <label class=\"radio-button-label\">{{ data }}</label>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n\r\n <!-- Text zone with button -->\r\n <div *ngSwitchCase=\"filterType.TextZoneWithButton\"\r\n class=\"form-group\">\r\n <div class=\"text-zone-and-button\">\r\n <div class=\"text-zone-container\">\r\n <textarea\r\n #textarea\r\n type=\"text\"\r\n class=\"text-area\"\r\n spellcheck=\"false\"\r\n [formControlName]=\"field.ValueMember\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </textarea>\r\n </div>\r\n <div class=\"feedback-and-button\">\r\n <div class=\"feedback\">\r\n <div class=\"feedback-green\" *ngIf=\"field.TextWithStyle.GreenText.length > 0\">\r\n {{ field.TextWithStyle.GreenText }}\r\n </div>\r\n <div class=\"feedback-yellow\" *ngIf=\"field.TextWithStyle.YellowText.length > 0\">\r\n {{ field.TextWithStyle.YellowText }}\r\n </div>\r\n <div class=\"feedback-red\" *ngIf=\"field.TextWithStyle.RedText.length > 0\">\r\n {{ field.TextWithStyle.RedText }}\r\n </div>\r\n </div>\r\n <button\r\n type=\"button\"\r\n id=\"botton-compile\"\r\n class=\"btn btn-primary btn-flat pull-right button\"\r\n (click)=\"onClick(field)\"\r\n >\r\n {{ field.ButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--Date -->\r\n <div *ngSwitchCase=\"filterType.Date\" class=\"form-group\">\r\n <div>\r\n <input\r\n type=\"text\"\r\n [class]=\"this.inputClass\"\r\n placeholder=\"Sélectionner une date\"\r\n [id]=\"field.PropertyName\"\r\n [bsConfig]=\"bsConfig\"\r\n [bsValue]=\"dateValue\"\r\n (bsValueChange)=\"onBsValueChanged($event)\"\r\n [disabled]=\"this.readonly || field.ReadOnly\"\r\n algDatepicker\r\n />\r\n </div>\r\n </div>\r\n <!--DateTime -->\r\n <div *ngSwitchCase=\"filterType.DateTime\" class=\"form-group\">\r\n <div>\r\n <input\r\n type=\"datetime-local\"\r\n [class]=\"this.inputClass\"\r\n [id]=\"field.PropertyName\"\r\n [value]=\"dateTimeLocalValue\"\r\n [disabled]=\"this.readonly || field.ReadOnly\"\r\n (change)=\"onDateTimeLocalChanged($event)\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!-- Text input -->\r\n <div *ngSwitchCase=\"filterType.Text\" class=\"form-group\">\r\n <div>\r\n <textarea\r\n type=\"text\"\r\n rows=\"5\"\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n >\r\n </textarea>\r\n </div>\r\n </div>\r\n\r\n <!-- DropFileZone -->\r\n <div\r\n *ngSwitchCase=\"filterType.DropFileZone\"\r\n class=\"form-group ml-4\"\r\n >\r\n <fieldset>\r\n <input\r\n [id]=\"field.PropertyName\"\r\n type=\"file\"\r\n class=\"ml--3\"\r\n (change)=\"fileEvent($event)\"\r\n />\r\n </fieldset>\r\n </div>\r\n\r\n <!-- Password -->\r\n <div *ngSwitchCase=\"filterType.Password\" class=\"form-group\">\r\n <div class=\"input-with-button\">\r\n <input\r\n class=\"form-control\"\r\n [type]=\"hidePassword ? 'password' : 'text'\"\r\n [formControl]=\"control\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [name]=\"field.PropertyName\"\r\n [readonly]=\"this.readonly || field.ReadOnly\"\r\n autocomplete=\"new-password\"\r\n />\r\n <!-- btn-32 pull-right button -->\r\n <button class=\"btn btn-secondary btn-32 btn-input-select\" (click)=\"showPassword()\">\r\n <i class=\"fa fa-eye\" aria-hidden=\"true\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"this.showValidationErrors()\">\r\n <div class=\"validation-message\">\r\n {{ this.getValidationErrors() }}\r\n </div>\r\n <!-- <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('required')\">\r\n Ce champ est obligatoire\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('min')\">\r\n Minimum: {{field.FieldValidators.MinValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('max')\">\r\n Maximum: {{field.FieldValidators.MaxValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('maxLength')\">\r\n Longueur maximale: {{field.FieldValidators.MaxLength}} caractères\r\n </ng-container> -->\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n</div>\r\n",
|
|
15340
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#
|
|
15432
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#4465c9}input:focus+.slider{box-shadow:0 0 1px #4465c9}input:checked+.slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translate(22px)}.slider.round{border-radius:25px}.slider.round:before{border-radius:50%}\n"]
|
|
15341
15433
|
}]
|
|
15342
15434
|
}],
|
|
15343
15435
|
ctorParameters: () => [{ type: ValidationService }],
|
|
@@ -16750,7 +16842,7 @@ var MobileMenuComponent = class MobileMenuComponent {
|
|
|
16750
16842
|
inline: "inline"
|
|
16751
16843
|
},
|
|
16752
16844
|
ngImport: i0,
|
|
16753
|
-
template: "<button type=\"button\" [class.mm-fab]=\"!inline\" [class.mm-inline]=\"inline\" [class.open]=\"open\" (click)=\"toggle()\" [title]=\"open ? 'Fermer le menu' : 'Menu de l\\'écran'\">\
|
|
16845
|
+
template: "<button type=\"button\" [class.mm-fab]=\"!inline\" [class.mm-inline]=\"inline\" [class.open]=\"open\" (click)=\"toggle()\" [title]=\"open ? 'Fermer le menu' : 'Menu de l\\'écran'\">\n <i class=\"fa\" [class.fa-ellipsis-v]=\"!open\" [class.fa-times]=\"open\"></i>\n</button>\n\n<ng-container *ngIf=\"open\">\n <div class=\"mm-scrim\" (click)=\"close()\"></div>\n <div class=\"mm-sheet\" role=\"dialog\" aria-label=\"Menu de l'écran\">\n <div class=\"mm-header\">\n <span class=\"mm-title\">{{ title || 'Menu' }}</span>\n <button type=\"button\" class=\"mm-close\" title=\"Fermer le menu\" aria-label=\"Fermer le menu\" (click)=\"close()\">\n <i class=\"fa fa-times\"></i>\n </button>\n </div>\n\n <ul class=\"mm-list\">\n <li class=\"mm-item\" (click)=\"openNavigation()\"><i class=\"fa fa-bars mm-icon\"></i><span>Menu de l'application</span></li>\n <li class=\"mm-item\" (click)=\"goHome()\"><i class=\"fa fa-home mm-icon\"></i><span>Accueil</span></li>\n </ul>\n\n <ng-container *ngIf=\"visibleActions.length\">\n <div class=\"mm-section\">Actions</div>\n <ul class=\"mm-list\">\n <ng-container *ngFor=\"let a of visibleActions\">\n <li *ngIf=\"{ disabled: (a.disabled$ | async) } as state\" class=\"mm-item\" [class.disabled]=\"state.disabled\" (click)=\"execute(a, state.disabled)\">\n <img class=\"mm-icon mm-action-icon\" [src]=\"getActionImageUrl(a.icon)\" alt=\"\" />\n <span>{{ a.title }}</span>\n </li>\n </ng-container>\n </ul>\n </ng-container>\n\n <ng-container *ngIf=\"facade?.config?.viewChooser as chooser\">\n <div class=\"mm-section\">Affichage</div>\n <ul class=\"mm-list mm-view-menu\" (click)=\"$event.stopPropagation()\">\n <alg-grid-view-menu [chooser]=\"chooser\" [mobile]=\"true\" (done)=\"close()\"></alg-grid-view-menu>\n </ul>\n </ng-container>\n </div>\n</ng-container>\n",
|
|
16754
16846
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.mm-fab{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:1031;width:54px;height:54px;border:none;border-radius:50%;background:var(--orange-algorima, #f59d0f);color:#fff;font-size:20px;box-shadow:0 6px 16px #f59d0f73;cursor:pointer}.mm-fab.open{background:#4465c9;box-shadow:0 6px 16px #0000004d}.mm-inline{display:flex;align-items:center;justify-content:center;width:32px;height:30px;padding:0;border:none;border-radius:5px;background:transparent;color:#fff;font-size:18px;cursor:pointer}.mm-inline:hover,.mm-inline.open{background:#6684e0}.mm-scrim{position:fixed;inset:0;z-index:1029;background:#0f142873}.mm-sheet{position:fixed;inset:0;z-index:3100;overflow-y:auto;padding:0 0 calc(16px + env(safe-area-inset-bottom,0px));background:#fff}.mm-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;height:50px;padding:0 8px 0 18px;padding-top:env(safe-area-inset-top,0px);background:#4465c9;color:#fff}.mm-close{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-left:auto;border:none;border-radius:5px;background:transparent;color:#fff;font-size:18px;cursor:pointer}.mm-grab{width:40px;height:4px;margin:0 auto 8px;border-radius:2px;background:#dbe4ff}.mm-title{min-width:0;overflow:hidden;font-size:15px;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.mm-section{padding:10px 18px 4px;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#9fa9c7}.mm-list{margin:0;padding:0;list-style:none}.mm-item{display:flex;align-items:center;gap:12px;padding:11px 18px;font-size:14px;color:#4d5a81;cursor:pointer}.mm-item:active,.mm-item:hover{background:#ebf0ff}.mm-item.disabled{opacity:.45;cursor:default}.mm-icon{width:18px;text-align:center;color:#4465c9}.mm-action-icon{height:18px}.mm-view-menu ::ng-deep .gvm-item{padding:10px 18px;font-size:14px}\n"],
|
|
16755
16847
|
dependencies: [
|
|
16756
16848
|
{
|
|
@@ -16801,7 +16893,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
16801
16893
|
selector: "alg-mobile-menu",
|
|
16802
16894
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
16803
16895
|
standalone: false,
|
|
16804
|
-
template: "<button type=\"button\" [class.mm-fab]=\"!inline\" [class.mm-inline]=\"inline\" [class.open]=\"open\" (click)=\"toggle()\" [title]=\"open ? 'Fermer le menu' : 'Menu de l\\'écran'\">\
|
|
16896
|
+
template: "<button type=\"button\" [class.mm-fab]=\"!inline\" [class.mm-inline]=\"inline\" [class.open]=\"open\" (click)=\"toggle()\" [title]=\"open ? 'Fermer le menu' : 'Menu de l\\'écran'\">\n <i class=\"fa\" [class.fa-ellipsis-v]=\"!open\" [class.fa-times]=\"open\"></i>\n</button>\n\n<ng-container *ngIf=\"open\">\n <div class=\"mm-scrim\" (click)=\"close()\"></div>\n <div class=\"mm-sheet\" role=\"dialog\" aria-label=\"Menu de l'écran\">\n <div class=\"mm-header\">\n <span class=\"mm-title\">{{ title || 'Menu' }}</span>\n <button type=\"button\" class=\"mm-close\" title=\"Fermer le menu\" aria-label=\"Fermer le menu\" (click)=\"close()\">\n <i class=\"fa fa-times\"></i>\n </button>\n </div>\n\n <ul class=\"mm-list\">\n <li class=\"mm-item\" (click)=\"openNavigation()\"><i class=\"fa fa-bars mm-icon\"></i><span>Menu de l'application</span></li>\n <li class=\"mm-item\" (click)=\"goHome()\"><i class=\"fa fa-home mm-icon\"></i><span>Accueil</span></li>\n </ul>\n\n <ng-container *ngIf=\"visibleActions.length\">\n <div class=\"mm-section\">Actions</div>\n <ul class=\"mm-list\">\n <ng-container *ngFor=\"let a of visibleActions\">\n <li *ngIf=\"{ disabled: (a.disabled$ | async) } as state\" class=\"mm-item\" [class.disabled]=\"state.disabled\" (click)=\"execute(a, state.disabled)\">\n <img class=\"mm-icon mm-action-icon\" [src]=\"getActionImageUrl(a.icon)\" alt=\"\" />\n <span>{{ a.title }}</span>\n </li>\n </ng-container>\n </ul>\n </ng-container>\n\n <ng-container *ngIf=\"facade?.config?.viewChooser as chooser\">\n <div class=\"mm-section\">Affichage</div>\n <ul class=\"mm-list mm-view-menu\" (click)=\"$event.stopPropagation()\">\n <alg-grid-view-menu [chooser]=\"chooser\" [mobile]=\"true\" (done)=\"close()\"></alg-grid-view-menu>\n </ul>\n </ng-container>\n </div>\n</ng-container>\n",
|
|
16805
16897
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.mm-fab{position:fixed;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:1031;width:54px;height:54px;border:none;border-radius:50%;background:var(--orange-algorima, #f59d0f);color:#fff;font-size:20px;box-shadow:0 6px 16px #f59d0f73;cursor:pointer}.mm-fab.open{background:#4465c9;box-shadow:0 6px 16px #0000004d}.mm-inline{display:flex;align-items:center;justify-content:center;width:32px;height:30px;padding:0;border:none;border-radius:5px;background:transparent;color:#fff;font-size:18px;cursor:pointer}.mm-inline:hover,.mm-inline.open{background:#6684e0}.mm-scrim{position:fixed;inset:0;z-index:1029;background:#0f142873}.mm-sheet{position:fixed;inset:0;z-index:3100;overflow-y:auto;padding:0 0 calc(16px + env(safe-area-inset-bottom,0px));background:#fff}.mm-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;height:50px;padding:0 8px 0 18px;padding-top:env(safe-area-inset-top,0px);background:#4465c9;color:#fff}.mm-close{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-left:auto;border:none;border-radius:5px;background:transparent;color:#fff;font-size:18px;cursor:pointer}.mm-grab{width:40px;height:4px;margin:0 auto 8px;border-radius:2px;background:#dbe4ff}.mm-title{min-width:0;overflow:hidden;font-size:15px;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.mm-section{padding:10px 18px 4px;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#9fa9c7}.mm-list{margin:0;padding:0;list-style:none}.mm-item{display:flex;align-items:center;gap:12px;padding:11px 18px;font-size:14px;color:#4d5a81;cursor:pointer}.mm-item:active,.mm-item:hover{background:#ebf0ff}.mm-item.disabled{opacity:.45;cursor:default}.mm-icon{width:18px;text-align:center;color:#4465c9}.mm-action-icon{height:18px}.mm-view-menu ::ng-deep .gvm-item{padding:10px 18px;font-size:14px}\n"]
|
|
16806
16898
|
}]
|
|
16807
16899
|
}],
|
|
@@ -16957,8 +17049,8 @@ var ActionPanelComponent = class ActionPanelComponent {
|
|
|
16957
17049
|
guid: "guid"
|
|
16958
17050
|
},
|
|
16959
17051
|
ngImport: i0,
|
|
16960
|
-
template: "<!-- Téléphone (narrow) : seulement le titre et la recherche, sur fond bleu ; les actions passent par le menu de l'écran. -->\r\n<div class=\"action-panel\" [class.narrow]=\"this.facade.layout.narrow$ | async\">\r\n <div class=\"action-panel-container\">\r\n <ng-container *ngIf=\"this.facade.layout.showActionTitle$ |async\">\r\n <div class=\"action-title\">\r\n <h1>{{ this.title }}</h1>\r\n <span>|</span>\r\n </div>\r\n </ng-container>\r\n \r\n <!-- ACTIONS-->\r\n <ng-container *ngIf=\"this.fields.length && this.facade.layout.showFilterButton$ |async\">\r\n <div class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n id=\"toggleFilter\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"Afficher/Masquer les filtres\"\r\n (click)=\"toggleFilterView()\"\r\n >\r\n <!-- <div class=\"pull-left action-icon\"><i class=\"fa fa-filter fa-lg\"></i></div> -->\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl('filter-solid')\"\r\n alt=\"Afficher/Masquer les filtres\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n \r\n \r\n\r\n <ng-container *ngIf=\"this.facade.layout.showActionSearchBar$ | async\">\r\n <div class=\"input-img\">\r\n <input\r\n \r\n type=\"text\"\r\n class=\"form-control search-bar-action\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [placeholder]=\"this.searchText\"\r\n [(ngModel)]=\"keyword\"\r\n (ngModelChange)=\"handleKeywordsChanged($event)\"\r\n focusable\r\n />\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngFor=\"let action of actions\">\r\n <div\r\n *ngIf=\"action.isVisible && action.showTitle\"\r\n class=\"button-container\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [disabled]=\"action.disabled$ | async\">\r\n\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n <div class=\"action-label\">\r\n <span>{{ action.title }}</span>\r\n </div>\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"action.isVisible && !action.showTitle\" class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [disabled]=\"! this.enableActions() || action.disabled\"\r\n >\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-content select=\"[actions-content]\"> </ng-content>\r\n\r\n <!-- Téléphone : menu de l'écran (actions, affichage, navigation) derrière trois points. -->\r\n <alg-mobile-menu *ngIf=\"this.facade.layout.narrow$ | async\" class=\"action-mobile-menu\" [inline]=\"true\"\r\n [entityKey]=\"this.entityKey\" [guid]=\"this.guid\" [title]=\"this.title\"></alg-mobile-menu>\r\n </div>\r\n</div>\r\n",
|
|
16961
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:invert(
|
|
17052
|
+
template: "<!-- Téléphone (narrow) : seulement le titre et la recherche, sur fond bleu ; les actions passent par le menu de l'écran. -->\r\n<div class=\"action-panel\" [class.narrow]=\"this.facade.layout.narrow$ | async\">\r\n <div class=\"action-panel-container\">\r\n <ng-container *ngIf=\"this.facade.layout.showActionTitle$ |async\">\r\n <div class=\"action-title\">\r\n <h1>{{ this.title }}</h1>\r\n <span>|</span>\r\n </div>\r\n </ng-container>\r\n \r\n <!-- ACTIONS-->\r\n <ng-container *ngIf=\"this.fields.length && this.facade.layout.showFilterButton$ |async\">\r\n <div class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n id=\"toggleFilter\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"Afficher/Masquer les filtres\"\r\n (click)=\"toggleFilterView()\"\r\n >\r\n <!-- <div class=\"pull-left action-icon\"><i class=\"fa fa-filter fa-lg\"></i></div> -->\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl('filter-solid')\"\r\n alt=\"Afficher/Masquer les filtres\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n \r\n \r\n\r\n <ng-container *ngIf=\"this.facade.layout.showActionSearchBar$ | async\">\r\n <div class=\"input-img\">\r\n <i class=\"fa fa-search search-icon\"></i>\r\n <input\r\n \r\n type=\"text\"\r\n class=\"form-control search-bar-action\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [placeholder]=\"this.searchText\"\r\n [(ngModel)]=\"keyword\"\r\n (ngModelChange)=\"handleKeywordsChanged($event)\"\r\n focusable\r\n />\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngFor=\"let action of actions\">\r\n <div\r\n *ngIf=\"action.isVisible && action.showTitle\"\r\n class=\"button-container\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [class.save-active]=\"action.name === 'save' && !(action.disabled$ | async)\"\r\n [disabled]=\"action.disabled$ | async\">\r\n\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n <div class=\"action-label\">\r\n <span>{{ action.title }}</span>\r\n </div>\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"action.isVisible && !action.showTitle\" class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [class.save-active]=\"action.name === 'save' && this.enableActions() && !action.disabled\"\r\n [disabled]=\"! this.enableActions() || action.disabled\"\r\n >\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-content select=\"[actions-content]\"> </ng-content>\r\n\r\n <!-- Téléphone : menu de l'écran (actions, affichage, navigation) derrière trois points. -->\r\n <alg-mobile-menu *ngIf=\"this.facade.layout.narrow$ | async\" class=\"action-mobile-menu\" [inline]=\"true\"\r\n [entityKey]=\"this.entityKey\" [guid]=\"this.guid\" [title]=\"this.title\"></alg-mobile-menu>\r\n </div>\r\n</div>\r\n",
|
|
17053
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:brightness(0) saturate(100%) invert(36%) sepia(91%) saturate(628%) hue-rotate(191deg) brightness(89%) contrast(85%) brightness(75%)}.search-bar-action{height:26px;min-height:26px;border-radius:5px}.input-img{position:relative;margin:0 5px 0 0;min-width:250px}.input-img .search-icon{position:absolute;top:50%;left:9px;transform:translateY(-50%);font-size:12px;color:#9fa9c7;pointer-events:none;z-index:1}.input-img .search-bar-action{padding-left:27px}.input-img .search-pin{position:absolute;top:5px;left:5px;height:16px;width:16px}.action-panel.narrow{background:#4465c9;border-bottom:none;padding:6px 0}.action-panel.narrow .action-panel-container{width:auto;min-height:30px;padding:0 8px;gap:8px}.action-panel.narrow .action-panel-container>div{padding:0}.action-panel.narrow .action-panel-container .button-container,.action-panel.narrow .action-panel-container ::ng-deep [actions-content]{display:none!important}.action-panel.narrow .action-panel-container .action-title{flex:0 1 auto;min-width:0}.action-panel.narrow .action-panel-container .action-title h1{overflow:hidden;height:30px;padding:0 12px;border-radius:5px;background:#6684e0;color:#fff;font-size:12.5px;font-weight:600;line-height:30px;white-space:nowrap;text-overflow:ellipsis}.action-panel.narrow .action-panel-container .action-title span{display:none}.action-panel.narrow .action-panel-container .input-img{flex:1 1 auto;min-width:0;margin:0}.action-panel.narrow .action-panel-container .action-mobile-menu{flex:none;margin-left:auto}.action-panel.narrow .action-panel-container .search-bar-action{width:100%;height:30px;border:none}.action-btn.save-active{color:#d1353a}.action-btn.save-active .action-icon{filter:brightness(0) saturate(100%) invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}\n"],
|
|
16962
17054
|
dependencies: [
|
|
16963
17055
|
{
|
|
16964
17056
|
kind: "directive",
|
|
@@ -17040,8 +17132,8 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
17040
17132
|
selector: "alg-action-panel",
|
|
17041
17133
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
17042
17134
|
standalone: false,
|
|
17043
|
-
template: "<!-- Téléphone (narrow) : seulement le titre et la recherche, sur fond bleu ; les actions passent par le menu de l'écran. -->\r\n<div class=\"action-panel\" [class.narrow]=\"this.facade.layout.narrow$ | async\">\r\n <div class=\"action-panel-container\">\r\n <ng-container *ngIf=\"this.facade.layout.showActionTitle$ |async\">\r\n <div class=\"action-title\">\r\n <h1>{{ this.title }}</h1>\r\n <span>|</span>\r\n </div>\r\n </ng-container>\r\n \r\n <!-- ACTIONS-->\r\n <ng-container *ngIf=\"this.fields.length && this.facade.layout.showFilterButton$ |async\">\r\n <div class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n id=\"toggleFilter\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"Afficher/Masquer les filtres\"\r\n (click)=\"toggleFilterView()\"\r\n >\r\n <!-- <div class=\"pull-left action-icon\"><i class=\"fa fa-filter fa-lg\"></i></div> -->\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl('filter-solid')\"\r\n alt=\"Afficher/Masquer les filtres\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n \r\n \r\n\r\n <ng-container *ngIf=\"this.facade.layout.showActionSearchBar$ | async\">\r\n <div class=\"input-img\">\r\n <input\r\n \r\n type=\"text\"\r\n class=\"form-control search-bar-action\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [placeholder]=\"this.searchText\"\r\n [(ngModel)]=\"keyword\"\r\n (ngModelChange)=\"handleKeywordsChanged($event)\"\r\n focusable\r\n />\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngFor=\"let action of actions\">\r\n <div\r\n *ngIf=\"action.isVisible && action.showTitle\"\r\n class=\"button-container\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [disabled]=\"action.disabled$ | async\">\r\n\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n <div class=\"action-label\">\r\n <span>{{ action.title }}</span>\r\n </div>\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"action.isVisible && !action.showTitle\" class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [disabled]=\"! this.enableActions() || action.disabled\"\r\n >\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-content select=\"[actions-content]\"> </ng-content>\r\n\r\n <!-- Téléphone : menu de l'écran (actions, affichage, navigation) derrière trois points. -->\r\n <alg-mobile-menu *ngIf=\"this.facade.layout.narrow$ | async\" class=\"action-mobile-menu\" [inline]=\"true\"\r\n [entityKey]=\"this.entityKey\" [guid]=\"this.guid\" [title]=\"this.title\"></alg-mobile-menu>\r\n </div>\r\n</div>\r\n",
|
|
17044
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:invert(
|
|
17135
|
+
template: "<!-- Téléphone (narrow) : seulement le titre et la recherche, sur fond bleu ; les actions passent par le menu de l'écran. -->\r\n<div class=\"action-panel\" [class.narrow]=\"this.facade.layout.narrow$ | async\">\r\n <div class=\"action-panel-container\">\r\n <ng-container *ngIf=\"this.facade.layout.showActionTitle$ |async\">\r\n <div class=\"action-title\">\r\n <h1>{{ this.title }}</h1>\r\n <span>|</span>\r\n </div>\r\n </ng-container>\r\n \r\n <!-- ACTIONS-->\r\n <ng-container *ngIf=\"this.fields.length && this.facade.layout.showFilterButton$ |async\">\r\n <div class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n id=\"toggleFilter\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"Afficher/Masquer les filtres\"\r\n (click)=\"toggleFilterView()\"\r\n >\r\n <!-- <div class=\"pull-left action-icon\"><i class=\"fa fa-filter fa-lg\"></i></div> -->\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl('filter-solid')\"\r\n alt=\"Afficher/Masquer les filtres\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n \r\n \r\n\r\n <ng-container *ngIf=\"this.facade.layout.showActionSearchBar$ | async\">\r\n <div class=\"input-img\">\r\n <i class=\"fa fa-search search-icon\"></i>\r\n <input\r\n \r\n type=\"text\"\r\n class=\"form-control search-bar-action\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [placeholder]=\"this.searchText\"\r\n [(ngModel)]=\"keyword\"\r\n (ngModelChange)=\"handleKeywordsChanged($event)\"\r\n focusable\r\n />\r\n </div>\r\n </ng-container>\r\n \r\n <ng-container *ngFor=\"let action of actions\">\r\n <div\r\n *ngIf=\"action.isVisible && action.showTitle\"\r\n class=\"button-container\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [class.save-active]=\"action.name === 'save' && !(action.disabled$ | async)\"\r\n [disabled]=\"action.disabled$ | async\">\r\n\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n <div class=\"action-label\">\r\n <span>{{ action.title }}</span>\r\n </div>\r\n </button>\r\n </div>\r\n\r\n <div *ngIf=\"action.isVisible && !action.showTitle\" class=\"button-container img\">\r\n <button\r\n type=\"button\"\r\n class=\"btn btn-svg action-btn\"\r\n data-toggle=\"tooltip\"\r\n title=\"{{ action.title }}\"\r\n (click)=\"this.executeAction(action)\"\r\n [class.save-active]=\"action.name === 'save' && this.enableActions() && !action.disabled\"\r\n [disabled]=\"! this.enableActions() || action.disabled\"\r\n >\r\n <img\r\n class=\"action-icon\"\r\n [src]=\"getImageUrl(action.icon)\"\r\n alt=\"{{ action.title }}\"\r\n />\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-content select=\"[actions-content]\"> </ng-content>\r\n\r\n <!-- Téléphone : menu de l'écran (actions, affichage, navigation) derrière trois points. -->\r\n <alg-mobile-menu *ngIf=\"this.facade.layout.narrow$ | async\" class=\"action-mobile-menu\" [inline]=\"true\"\r\n [entityKey]=\"this.entityKey\" [guid]=\"this.guid\" [title]=\"this.title\"></alg-mobile-menu>\r\n </div>\r\n</div>\r\n",
|
|
17136
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:brightness(0) saturate(100%) invert(36%) sepia(91%) saturate(628%) hue-rotate(191deg) brightness(89%) contrast(85%) brightness(75%)}.search-bar-action{height:26px;min-height:26px;border-radius:5px}.input-img{position:relative;margin:0 5px 0 0;min-width:250px}.input-img .search-icon{position:absolute;top:50%;left:9px;transform:translateY(-50%);font-size:12px;color:#9fa9c7;pointer-events:none;z-index:1}.input-img .search-bar-action{padding-left:27px}.input-img .search-pin{position:absolute;top:5px;left:5px;height:16px;width:16px}.action-panel.narrow{background:#4465c9;border-bottom:none;padding:6px 0}.action-panel.narrow .action-panel-container{width:auto;min-height:30px;padding:0 8px;gap:8px}.action-panel.narrow .action-panel-container>div{padding:0}.action-panel.narrow .action-panel-container .button-container,.action-panel.narrow .action-panel-container ::ng-deep [actions-content]{display:none!important}.action-panel.narrow .action-panel-container .action-title{flex:0 1 auto;min-width:0}.action-panel.narrow .action-panel-container .action-title h1{overflow:hidden;height:30px;padding:0 12px;border-radius:5px;background:#6684e0;color:#fff;font-size:12.5px;font-weight:600;line-height:30px;white-space:nowrap;text-overflow:ellipsis}.action-panel.narrow .action-panel-container .action-title span{display:none}.action-panel.narrow .action-panel-container .input-img{flex:1 1 auto;min-width:0;margin:0}.action-panel.narrow .action-panel-container .action-mobile-menu{flex:none;margin-left:auto}.action-panel.narrow .action-panel-container .search-bar-action{width:100%;height:30px;border:none}.action-btn.save-active{color:#d1353a}.action-btn.save-active .action-icon{filter:brightness(0) saturate(100%) invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}\n"]
|
|
17045
17137
|
}]
|
|
17046
17138
|
}],
|
|
17047
17139
|
ctorParameters: () => [
|
|
@@ -17247,7 +17339,7 @@ var CustomSortComponent = class CustomSortComponent {
|
|
|
17247
17339
|
isStandalone: true,
|
|
17248
17340
|
selector: "alg-custom-sort",
|
|
17249
17341
|
ngImport: i0,
|
|
17250
|
-
template: "<div class=\"custom-sort\">\
|
|
17342
|
+
template: "<div class=\"custom-sort\">\n <div class=\"custom-sort-level\" *ngFor=\"let level of levels; let i = index\">\n <span class=\"custom-sort-label\">{{ i === 0 ? 'Trier par' : 'Puis par' }}</span>\n <select class=\"form-control\" [(ngModel)]=\"level.property\">\n <option *ngFor=\"let col of sortableColumns(i)\" [value]=\"col.Property\">{{ col.Name || col.Property }}</option>\n </select>\n <select class=\"form-control custom-sort-direction\" [(ngModel)]=\"level.direction\">\n <option value=\"asc\">Croissant</option>\n <option value=\"desc\">Décroissant</option>\n </select>\n <button type=\"button\" class=\"custom-sort-icon\" title=\"Monter\" [disabled]=\"i === 0\" (click)=\"moveLevel(i, -1)\">\n <i class=\"fa fa-arrow-up\"></i>\n </button>\n <button type=\"button\" class=\"custom-sort-icon\" title=\"Descendre\" [disabled]=\"i === levels.length - 1\" (click)=\"moveLevel(i, 1)\">\n <i class=\"fa fa-arrow-down\"></i>\n </button>\n <button type=\"button\" class=\"custom-sort-icon\" title=\"Retirer\" (click)=\"removeLevel(i)\">\n <i class=\"fa fa-times\"></i>\n </button>\n </div>\n <button type=\"button\" class=\"custom-sort-add\" [disabled]=\"sortableColumns(-1).length === 0\" (click)=\"addLevel()\">\n <i class=\"fa fa-plus\"></i> Ajouter un niveau\n </button>\n</div>\n",
|
|
17251
17343
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.custom-sort{padding:12px 16px 4px;color:#3c5dc4;font-size:12.5px}.custom-sort-level{display:flex;align-items:center;gap:6px;margin-bottom:6px}.custom-sort-level select{flex:1 1 auto;min-width:0;height:28px;padding:2px 6px;font-size:12.5px}.custom-sort-level .custom-sort-direction{flex:0 0 120px}.custom-sort-label{flex:0 0 64px}.custom-sort-icon{width:26px;height:26px;padding:0;border:0;border-radius:4px;background:none;color:#3c5dc4;cursor:pointer}.custom-sort-icon:hover:not(:disabled){background:#dbe4ff}.custom-sort-icon:disabled{opacity:.3;cursor:default}.custom-sort-add{margin:4px 0 8px 70px;padding:0;border:0;background:none;color:#3c5dc4;cursor:pointer}.custom-sort-add:disabled{opacity:.4;cursor:default}\n"],
|
|
17252
17344
|
dependencies: [
|
|
17253
17345
|
{
|
|
@@ -17321,7 +17413,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
17321
17413
|
standalone: true,
|
|
17322
17414
|
imports: [CommonModule, FormsModule],
|
|
17323
17415
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
17324
|
-
template: "<div class=\"custom-sort\">\
|
|
17416
|
+
template: "<div class=\"custom-sort\">\n <div class=\"custom-sort-level\" *ngFor=\"let level of levels; let i = index\">\n <span class=\"custom-sort-label\">{{ i === 0 ? 'Trier par' : 'Puis par' }}</span>\n <select class=\"form-control\" [(ngModel)]=\"level.property\">\n <option *ngFor=\"let col of sortableColumns(i)\" [value]=\"col.Property\">{{ col.Name || col.Property }}</option>\n </select>\n <select class=\"form-control custom-sort-direction\" [(ngModel)]=\"level.direction\">\n <option value=\"asc\">Croissant</option>\n <option value=\"desc\">Décroissant</option>\n </select>\n <button type=\"button\" class=\"custom-sort-icon\" title=\"Monter\" [disabled]=\"i === 0\" (click)=\"moveLevel(i, -1)\">\n <i class=\"fa fa-arrow-up\"></i>\n </button>\n <button type=\"button\" class=\"custom-sort-icon\" title=\"Descendre\" [disabled]=\"i === levels.length - 1\" (click)=\"moveLevel(i, 1)\">\n <i class=\"fa fa-arrow-down\"></i>\n </button>\n <button type=\"button\" class=\"custom-sort-icon\" title=\"Retirer\" (click)=\"removeLevel(i)\">\n <i class=\"fa fa-times\"></i>\n </button>\n </div>\n <button type=\"button\" class=\"custom-sort-add\" [disabled]=\"sortableColumns(-1).length === 0\" (click)=\"addLevel()\">\n <i class=\"fa fa-plus\"></i> Ajouter un niveau\n </button>\n</div>\n",
|
|
17325
17417
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.custom-sort{padding:12px 16px 4px;color:#3c5dc4;font-size:12.5px}.custom-sort-level{display:flex;align-items:center;gap:6px;margin-bottom:6px}.custom-sort-level select{flex:1 1 auto;min-width:0;height:28px;padding:2px 6px;font-size:12.5px}.custom-sort-level .custom-sort-direction{flex:0 0 120px}.custom-sort-label{flex:0 0 64px}.custom-sort-icon{width:26px;height:26px;padding:0;border:0;border-radius:4px;background:none;color:#3c5dc4;cursor:pointer}.custom-sort-icon:hover:not(:disabled){background:#dbe4ff}.custom-sort-icon:disabled{opacity:.3;cursor:default}.custom-sort-add{margin:4px 0 8px 70px;padding:0;border:0;background:none;color:#3c5dc4;cursor:pointer}.custom-sort-add:disabled{opacity:.4;cursor:default}\n"]
|
|
17326
17418
|
}]
|
|
17327
17419
|
}]
|
|
@@ -17499,6 +17591,222 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
17499
17591
|
args: ["rowRef"]
|
|
17500
17592
|
}] }
|
|
17501
17593
|
});
|
|
17594
|
+
var GridDistinctFilterComponent = class GridDistinctFilterComponent {
|
|
17595
|
+
constructor() {
|
|
17596
|
+
this.done = new EventEmitter();
|
|
17597
|
+
this.loaded = new EventEmitter();
|
|
17598
|
+
this.dataService = inject(DataService, { optional: true });
|
|
17599
|
+
this.cd = inject(ChangeDetectorRef);
|
|
17600
|
+
this.values = [];
|
|
17601
|
+
this.hasMore = false;
|
|
17602
|
+
this.loading = false;
|
|
17603
|
+
this.error = false;
|
|
17604
|
+
this.search = "";
|
|
17605
|
+
this.selected = /* @__PURE__ */ new Set();
|
|
17606
|
+
this.search$ = new Subject();
|
|
17607
|
+
this.subscriptions = new Subscription();
|
|
17608
|
+
}
|
|
17609
|
+
static {
|
|
17610
|
+
this.PageSize = 50;
|
|
17611
|
+
}
|
|
17612
|
+
ngOnInit() {
|
|
17613
|
+
this.facade.filter.getFilterValues(this.property).forEach((v) => this.selected.add(v));
|
|
17614
|
+
this.subscriptions.add(this.search$.pipe(debounceTime(300)).subscribe(() => this.load(true)));
|
|
17615
|
+
this.load(true);
|
|
17616
|
+
}
|
|
17617
|
+
ngOnDestroy() {
|
|
17618
|
+
this.subscriptions.unsubscribe();
|
|
17619
|
+
this.request?.unsubscribe();
|
|
17620
|
+
}
|
|
17621
|
+
load(reset) {
|
|
17622
|
+
if (!this.dataService) return;
|
|
17623
|
+
this.request?.unsubscribe();
|
|
17624
|
+
if (reset) {
|
|
17625
|
+
this.values = [];
|
|
17626
|
+
this.hasMore = false;
|
|
17627
|
+
}
|
|
17628
|
+
this.loading = true;
|
|
17629
|
+
this.error = false;
|
|
17630
|
+
const filter = this.facade.filter.getDistinctValuesFilter(this.property);
|
|
17631
|
+
this.request = this.dataService.distinctValues(this.entityKey, filter, this.property, this.search.trim(), this.values.length, GridDistinctFilterComponent.PageSize).subscribe({
|
|
17632
|
+
next: (result) => {
|
|
17633
|
+
this.values = [...this.values, ...(result?.Values ?? []).filter((v) => v !== null && v !== void 0)];
|
|
17634
|
+
this.hasMore = !!result?.HasMore;
|
|
17635
|
+
this.loading = false;
|
|
17636
|
+
this.cd.markForCheck();
|
|
17637
|
+
if (reset) this.loaded.emit();
|
|
17638
|
+
},
|
|
17639
|
+
error: () => {
|
|
17640
|
+
this.loading = false;
|
|
17641
|
+
this.error = true;
|
|
17642
|
+
this.cd.markForCheck();
|
|
17643
|
+
}
|
|
17644
|
+
});
|
|
17645
|
+
}
|
|
17646
|
+
onSearchChange() {
|
|
17647
|
+
this.search$.next(this.search);
|
|
17648
|
+
}
|
|
17649
|
+
onScroll(event) {
|
|
17650
|
+
const list = event.target;
|
|
17651
|
+
if (this.hasMore && !this.loading && list.scrollTop + list.clientHeight >= list.scrollHeight - 24) this.load(false);
|
|
17652
|
+
}
|
|
17653
|
+
key(value) {
|
|
17654
|
+
return String(value);
|
|
17655
|
+
}
|
|
17656
|
+
label(value) {
|
|
17657
|
+
if (value === true) return "Oui";
|
|
17658
|
+
if (value === false) return "Non";
|
|
17659
|
+
const text = String(value);
|
|
17660
|
+
const date = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})/.exec(text);
|
|
17661
|
+
if (date) {
|
|
17662
|
+
const [, y, m, d, hh, mm] = date;
|
|
17663
|
+
return hh === "00" && mm === "00" ? `${d}/${m}/${y}` : `${d}/${m}/${y} ${hh}:${mm}`;
|
|
17664
|
+
}
|
|
17665
|
+
return text;
|
|
17666
|
+
}
|
|
17667
|
+
isSelected(value) {
|
|
17668
|
+
return this.selected.has(this.key(value));
|
|
17669
|
+
}
|
|
17670
|
+
toggle(value) {
|
|
17671
|
+
const key = this.key(value);
|
|
17672
|
+
if (this.selected.has(key)) this.selected.delete(key);
|
|
17673
|
+
else this.selected.add(key);
|
|
17674
|
+
}
|
|
17675
|
+
allShownSelected() {
|
|
17676
|
+
return this.values.length > 0 && this.values.every((v) => this.isSelected(v));
|
|
17677
|
+
}
|
|
17678
|
+
toggleAllShown() {
|
|
17679
|
+
const select = !this.allShownSelected();
|
|
17680
|
+
this.values.forEach((v) => select ? this.selected.add(this.key(v)) : this.selected.delete(this.key(v)));
|
|
17681
|
+
}
|
|
17682
|
+
apply() {
|
|
17683
|
+
this.facade.filter.setFilterValues(this.property, [...this.selected]);
|
|
17684
|
+
this.done.emit();
|
|
17685
|
+
}
|
|
17686
|
+
clear() {
|
|
17687
|
+
this.selected.clear();
|
|
17688
|
+
this.facade.filter.setFilterValues(this.property, []);
|
|
17689
|
+
this.done.emit();
|
|
17690
|
+
}
|
|
17691
|
+
static {
|
|
17692
|
+
this.ɵfac = i0.ɵɵngDeclareFactory({
|
|
17693
|
+
minVersion: "12.0.0",
|
|
17694
|
+
version: "22.2.1",
|
|
17695
|
+
ngImport: i0,
|
|
17696
|
+
type: GridDistinctFilterComponent,
|
|
17697
|
+
deps: [],
|
|
17698
|
+
target: i0.ɵɵFactoryTarget.Component
|
|
17699
|
+
});
|
|
17700
|
+
}
|
|
17701
|
+
static {
|
|
17702
|
+
this.ɵcmp = i0.ɵɵngDeclareComponent({
|
|
17703
|
+
minVersion: "14.0.0",
|
|
17704
|
+
version: "22.2.1",
|
|
17705
|
+
type: GridDistinctFilterComponent,
|
|
17706
|
+
isStandalone: true,
|
|
17707
|
+
selector: "alg-grid-distinct-filter",
|
|
17708
|
+
inputs: {
|
|
17709
|
+
facade: "facade",
|
|
17710
|
+
entityKey: "entityKey",
|
|
17711
|
+
property: "property"
|
|
17712
|
+
},
|
|
17713
|
+
outputs: {
|
|
17714
|
+
done: "done",
|
|
17715
|
+
loaded: "loaded"
|
|
17716
|
+
},
|
|
17717
|
+
ngImport: i0,
|
|
17718
|
+
template: "<li class=\"gdf-panel\">\r\n <input class=\"gdf-search\" type=\"text\" placeholder=\"Rechercher…\" [(ngModel)]=\"search\" (ngModelChange)=\"onSearchChange()\" />\r\n\r\n <div *ngIf=\"values.length\" class=\"gdf-item gdf-all\" (click)=\"toggleAllShown()\">\r\n <input type=\"checkbox\" tabindex=\"-1\" [checked]=\"allShownSelected()\" (click)=\"$event.preventDefault()\" />\r\n <span class=\"gdf-label\">{{ search.trim() ? '(Ajouter les valeurs trouvées)' : '(Tout sélectionner)' }}</span>\r\n </div>\r\n\r\n <!-- Valeurs distinctes : page suivante chargée en défilant vers le bas. -->\r\n <ul class=\"gdf-list\" (scroll)=\"onScroll($event)\">\r\n <li *ngFor=\"let value of values\" class=\"gdf-item\" [class.checked]=\"isSelected(value)\" [title]=\"label(value)\" (click)=\"toggle(value)\">\r\n <input type=\"checkbox\" tabindex=\"-1\" [checked]=\"isSelected(value)\" (click)=\"$event.preventDefault()\" />\r\n <span class=\"gdf-label\">{{ label(value) }}</span>\r\n </li>\r\n <li *ngIf=\"loading\" class=\"gdf-info\">Chargement…</li>\r\n <li *ngIf=\"error\" class=\"gdf-info\">Valeurs indisponibles pour cette colonne</li>\r\n <li *ngIf=\"!loading && !error && !values.length\" class=\"gdf-info\">Aucune valeur</li>\r\n </ul>\r\n\r\n <div class=\"gdf-footer\">\r\n <span class=\"gdf-count\">{{ selected.size ? selected.size + (selected.size > 1 ? ' valeurs cochées' : ' valeur cochée') : '' }}</span>\r\n <button type=\"button\" class=\"gdf-btn\" (click)=\"clear()\">Effacer</button>\r\n <button type=\"button\" class=\"gdf-btn primary\" (click)=\"apply()\">OK</button>\r\n </div>\r\n</li>\r\n",
|
|
17719
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{display:contents}li{list-style:none}.gdf-panel{display:flex;flex-direction:column;width:240px;padding:4px 0;cursor:default}.gdf-search{margin:2px 8px 4px;padding:3px 6px;border:1px solid #DBE4FF;border-radius:4px;font-size:12px;outline:none}.gdf-search:focus{border-color:#4465c9}.gdf-list{max-height:240px;margin:0;padding:0;overflow-y:auto}.gdf-item{display:flex;align-items:center;gap:8px;padding:4px 12px;white-space:nowrap;cursor:pointer;font-size:12px;color:#4d5a81}.gdf-item:hover{background:#ebf0ff}.gdf-item.checked{color:#4465c9}.gdf-item input[type=checkbox]{width:14px;margin:0;pointer-events:none}.gdf-all{border-bottom:1px solid #ebf0ff}.gdf-label{flex:1;overflow:hidden;text-overflow:ellipsis}.gdf-info{padding:4px 12px;font-size:12px;color:#9fa9c7}.gdf-footer{display:flex;align-items:center;gap:6px;padding:6px 8px 2px;border-top:1px solid #ebf0ff}.gdf-count{flex:1;font-size:11px;color:#9fa9c7}.gdf-btn{padding:1px 10px;border:1px solid #DBE4FF;border-radius:4px;background:#fff;color:#4465c9;font-size:12px;cursor:pointer}.gdf-btn.primary{background:#4465c9;border-color:#4465c9;color:#fff}\n"],
|
|
17720
|
+
dependencies: [
|
|
17721
|
+
{
|
|
17722
|
+
kind: "ngmodule",
|
|
17723
|
+
type: CommonModule
|
|
17724
|
+
},
|
|
17725
|
+
{
|
|
17726
|
+
kind: "directive",
|
|
17727
|
+
type: i1$5.NgForOf,
|
|
17728
|
+
selector: "[ngFor][ngForOf]",
|
|
17729
|
+
inputs: [
|
|
17730
|
+
"ngForOf",
|
|
17731
|
+
"ngForTrackBy",
|
|
17732
|
+
"ngForTemplate"
|
|
17733
|
+
]
|
|
17734
|
+
},
|
|
17735
|
+
{
|
|
17736
|
+
kind: "directive",
|
|
17737
|
+
type: i1$5.NgIf,
|
|
17738
|
+
selector: "[ngIf]",
|
|
17739
|
+
inputs: [
|
|
17740
|
+
"ngIf",
|
|
17741
|
+
"ngIfThen",
|
|
17742
|
+
"ngIfElse"
|
|
17743
|
+
]
|
|
17744
|
+
},
|
|
17745
|
+
{
|
|
17746
|
+
kind: "ngmodule",
|
|
17747
|
+
type: FormsModule
|
|
17748
|
+
},
|
|
17749
|
+
{
|
|
17750
|
+
kind: "directive",
|
|
17751
|
+
type: i5.DefaultValueAccessor,
|
|
17752
|
+
selector: "input:not([type=checkbox]):not([ngNoCva])[formControlName],textarea:not([ngNoCva])[formControlName],input:not([type=checkbox]):not([ngNoCva])[formControl],textarea:not([ngNoCva])[formControl],input:not([type=checkbox]):not([ngNoCva])[ngModel],textarea:not([ngNoCva])[ngModel],[ngDefaultControl]"
|
|
17753
|
+
},
|
|
17754
|
+
{
|
|
17755
|
+
kind: "directive",
|
|
17756
|
+
type: i5.NgControlStatus,
|
|
17757
|
+
selector: "[formControlName],[ngModel],[formControl]"
|
|
17758
|
+
},
|
|
17759
|
+
{
|
|
17760
|
+
kind: "directive",
|
|
17761
|
+
type: i5.NgModel,
|
|
17762
|
+
selector: "[ngModel]:not([formControlName]):not([formControl])",
|
|
17763
|
+
inputs: [
|
|
17764
|
+
"name",
|
|
17765
|
+
"disabled",
|
|
17766
|
+
"ngModel",
|
|
17767
|
+
"ngModelOptions"
|
|
17768
|
+
],
|
|
17769
|
+
outputs: ["ngModelChange"],
|
|
17770
|
+
exportAs: ["ngModel"]
|
|
17771
|
+
}
|
|
17772
|
+
],
|
|
17773
|
+
changeDetection: i0.ChangeDetectionStrategy.Eager
|
|
17774
|
+
});
|
|
17775
|
+
}
|
|
17776
|
+
};
|
|
17777
|
+
i0.ɵɵngDeclareClassMetadata({
|
|
17778
|
+
minVersion: "12.0.0",
|
|
17779
|
+
version: "22.2.1",
|
|
17780
|
+
ngImport: i0,
|
|
17781
|
+
type: GridDistinctFilterComponent,
|
|
17782
|
+
decorators: [{
|
|
17783
|
+
type: Component,
|
|
17784
|
+
args: [{
|
|
17785
|
+
selector: "alg-grid-distinct-filter",
|
|
17786
|
+
standalone: true,
|
|
17787
|
+
imports: [CommonModule, FormsModule],
|
|
17788
|
+
changeDetection: ChangeDetectionStrategy.Eager,
|
|
17789
|
+
template: "<li class=\"gdf-panel\">\r\n <input class=\"gdf-search\" type=\"text\" placeholder=\"Rechercher…\" [(ngModel)]=\"search\" (ngModelChange)=\"onSearchChange()\" />\r\n\r\n <div *ngIf=\"values.length\" class=\"gdf-item gdf-all\" (click)=\"toggleAllShown()\">\r\n <input type=\"checkbox\" tabindex=\"-1\" [checked]=\"allShownSelected()\" (click)=\"$event.preventDefault()\" />\r\n <span class=\"gdf-label\">{{ search.trim() ? '(Ajouter les valeurs trouvées)' : '(Tout sélectionner)' }}</span>\r\n </div>\r\n\r\n <!-- Valeurs distinctes : page suivante chargée en défilant vers le bas. -->\r\n <ul class=\"gdf-list\" (scroll)=\"onScroll($event)\">\r\n <li *ngFor=\"let value of values\" class=\"gdf-item\" [class.checked]=\"isSelected(value)\" [title]=\"label(value)\" (click)=\"toggle(value)\">\r\n <input type=\"checkbox\" tabindex=\"-1\" [checked]=\"isSelected(value)\" (click)=\"$event.preventDefault()\" />\r\n <span class=\"gdf-label\">{{ label(value) }}</span>\r\n </li>\r\n <li *ngIf=\"loading\" class=\"gdf-info\">Chargement…</li>\r\n <li *ngIf=\"error\" class=\"gdf-info\">Valeurs indisponibles pour cette colonne</li>\r\n <li *ngIf=\"!loading && !error && !values.length\" class=\"gdf-info\">Aucune valeur</li>\r\n </ul>\r\n\r\n <div class=\"gdf-footer\">\r\n <span class=\"gdf-count\">{{ selected.size ? selected.size + (selected.size > 1 ? ' valeurs cochées' : ' valeur cochée') : '' }}</span>\r\n <button type=\"button\" class=\"gdf-btn\" (click)=\"clear()\">Effacer</button>\r\n <button type=\"button\" class=\"gdf-btn primary\" (click)=\"apply()\">OK</button>\r\n </div>\r\n</li>\r\n",
|
|
17790
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{display:contents}li{list-style:none}.gdf-panel{display:flex;flex-direction:column;width:240px;padding:4px 0;cursor:default}.gdf-search{margin:2px 8px 4px;padding:3px 6px;border:1px solid #DBE4FF;border-radius:4px;font-size:12px;outline:none}.gdf-search:focus{border-color:#4465c9}.gdf-list{max-height:240px;margin:0;padding:0;overflow-y:auto}.gdf-item{display:flex;align-items:center;gap:8px;padding:4px 12px;white-space:nowrap;cursor:pointer;font-size:12px;color:#4d5a81}.gdf-item:hover{background:#ebf0ff}.gdf-item.checked{color:#4465c9}.gdf-item input[type=checkbox]{width:14px;margin:0;pointer-events:none}.gdf-all{border-bottom:1px solid #ebf0ff}.gdf-label{flex:1;overflow:hidden;text-overflow:ellipsis}.gdf-info{padding:4px 12px;font-size:12px;color:#9fa9c7}.gdf-footer{display:flex;align-items:center;gap:6px;padding:6px 8px 2px;border-top:1px solid #ebf0ff}.gdf-count{flex:1;font-size:11px;color:#9fa9c7}.gdf-btn{padding:1px 10px;border:1px solid #DBE4FF;border-radius:4px;background:#fff;color:#4465c9;font-size:12px;cursor:pointer}.gdf-btn.primary{background:#4465c9;border-color:#4465c9;color:#fff}\n"]
|
|
17791
|
+
}]
|
|
17792
|
+
}],
|
|
17793
|
+
propDecorators: {
|
|
17794
|
+
facade: [{
|
|
17795
|
+
type: Input,
|
|
17796
|
+
args: [{ required: true }]
|
|
17797
|
+
}],
|
|
17798
|
+
entityKey: [{
|
|
17799
|
+
type: Input,
|
|
17800
|
+
args: [{ required: true }]
|
|
17801
|
+
}],
|
|
17802
|
+
property: [{
|
|
17803
|
+
type: Input,
|
|
17804
|
+
args: [{ required: true }]
|
|
17805
|
+
}],
|
|
17806
|
+
done: [{ type: Output }],
|
|
17807
|
+
loaded: [{ type: Output }]
|
|
17808
|
+
}
|
|
17809
|
+
});
|
|
17502
17810
|
var GridStylePipe = class GridStylePipe {
|
|
17503
17811
|
transform(type, context, args = {}) {
|
|
17504
17812
|
if (!context) return "";
|
|
@@ -18910,8 +19218,8 @@ var DataGridComponent = class DataGridComponent {
|
|
|
18910
19218
|
}
|
|
18911
19219
|
],
|
|
18912
19220
|
ngImport: i0,
|
|
18913
|
-
template: "<div #datagridContainer [class]=\"this.datagridClass\" tabindex=\"-1\" (keydown)=\"onGridKeyDown($event)\" (scroll)=\"onGridScroll($event)\"\r\n (copy)=\"onCopy($event)\" (paste)=\"onPaste($event)\" (contextmenu)=\"openEmptyAreaContextMenu($event)\">\r\n <ng-container>\r\n <table class=\"data-grid-datatable\">\r\n <ng-container *ngIf=\"this.facade.style as ctx\">\r\n <ng-container *ngIf=\"this.facade.config.columns$ | async as rcolumns\">\r\n <thead>\r\n <tr>\r\n <th class=\"header row-state\" (click)=\"addFilterQuery()\"></th>\r\n <!-- En-tête : poignée de déplacement à gauche, intitulé, indicateur de tri,\r\n flèche du menu (tri, agrégation) à droite. Le clic ne trie plus. -->\r\n <th #thHeader *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-col-' + col.Property\"\r\n [attr.class]=\"'header' | gridStyle : ctx : { column : col }\"\r\n [style.width.px]=\"colWidth(col)\" [style.min-width.px]=\"colWidth(col)\" [style.max-width.px]=\"colWidth(col)\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n <div class=\"header-cell\"\r\n [class.col-dragging]=\"draggedColumn === col.Property\">\r\n <span class=\"header-handle\" title=\"Déplacer la colonne\"\r\n (mousedown)=\"onHeaderMouseDown(col, $event)\">\r\n <i class=\"fa fa-ellipsis-v\"></i>\r\n </span>\r\n <label>{{ getHeaderLabel(col) }}</label>\r\n <i *ngIf=\"this.facade.filter.isAsc(col.Property)\" class=\"fa fa-long-arrow-up header-sort\" title=\"Tri croissant\"></i>\r\n <i *ngIf=\"this.facade.filter.isDesc(col.Property)\" class=\"fa fa-long-arrow-down header-sort\" title=\"Tri décroissant\"></i>\r\n <sup *ngIf=\"this.facade.filter.sortRank(col.Property) > 0\" class=\"header-sort-rank\"\r\n title=\"Rang dans le tri personnalisé\">{{ this.facade.filter.sortRank(col.Property) }}</sup>\r\n <i *ngIf=\"activeAggregations[col.Property]\" class=\"header-agg\" [title]=\"'Agrégation : ' + aggregationLabel(activeAggregations[col.Property])\">Σ</i>\r\n <!-- Dernière colonne suivie de la colonne vide de fin : sa flèche est dans la colonne vide. -->\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n *ngIf=\"!(ctx.enableLastColumnResize && i === rcolumns.length - 1)\"\r\n [class.open]=\"headerMenu?.column.Property === col.Property\"\r\n (click)=\"toggleHeaderMenu(col, $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n <!-- Bord droit : largeur de la colonne (tirer), ajustée au contenu (double clic). -->\r\n <span class=\"col-resizer\" title=\"Largeur de la colonne (double clic : ajuster au contenu)\"\r\n (mousedown)=\"startResize(col, $event)\" (dblclick)=\"autoFitColumn(col, $event)\"\r\n (click)=\"$event.stopPropagation()\"></span>\r\n </th>\r\n <th *ngIf=\"ctx.enableLastColumnResize\" #lastColumnHeader class=\"header last-column\"\r\n (contextmenu)=\"openHeaderContextMenu($event, rcolumns[rcolumns.length - 1])\">\r\n <div class=\"header-cell header-cell-end\" *ngIf=\"rcolumns.length > 0\">\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n [class.open]=\"headerMenu?.column.Property === rcolumns[rcolumns.length - 1].Property\"\r\n (click)=\"toggleHeaderMenu(rcolumns[rcolumns.length - 1], $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n </th>\r\n\r\n </tr>\r\n <ng-container *ngIf=\"this.facade.filter.additionalQuery$ | async as additionalQuery\">\r\n <tr #thFilterRows *ngFor=\"let filterRow of additionalQuery.Rows;let i = index\" >\r\n <th class=\"filter-header row-state\" (click)=\"removeFilterQuery(i)\"></th>\r\n <th class=\"filter-header\" [ngClass]=\"{disabled: !col.IsFilterEnabled}\" *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-filter-' + i\">\r\n <input *ngIf=\"col.IsFilterEnabled\" type=\"text\"\r\n class=\"filter-header-input\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [attr.id]=\"guid.toString() + '-filter-input-' + col.Property\"\r\n [(ngModel)]=\"filterRow.ClausesByPropertyName.get(col.Property).FilterValue\"\r\n (ngModelChange)=\"handleFilterChanged($event, filterRow, col.Property)\"\r\n (change)=\"validateFilterChanged($event, filterRow, col.Property)\"\r\n />\r\n </th>\r\n <ng-container>\r\n <th #lastColumnFilter class=\"filter-header last-column\"></th>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </thead>\r\n\r\n <tbody>\r\n <ng-container *ngIf=\"this.facade.data\">\r\n <ng-container *ngFor=\"let row of this.data.Values; let r = index;\">\r\n <tr\r\n [class]=\"'alternating' | gridStyle : ctx : { row : row, index : r, maxIndex : this.data.Values.length, hasAggregates: hasAggregates }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n [attr.id]=\"guid.toString() + '-row-' + row.Id\"\r\n (mousedown)=\"onRowMouseDown(row, $event)\"\r\n (mouseup)=\"onRowMouseUp(row, $event)\"\r\n (click)=\"onRowClick(row, $event)\"\r\n\r\n [rowRef]=\"guid + '-row-' + row.Id\"\r\n >\r\n\r\n <th [attr.class]=\"'rowstate' | gridStyle : ctx : { row : row }\">\r\n <ng-container *ngIf=\"selectionStyler.isModified(row) && !selectionStyler.isInvalid(row) && !selectionStyler.isWarning(row)\">\r\n <div class=\"new-rowstate\"><span>...</span></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/error.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isWarning(row) && !selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/warning.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ctx.displayDetail\">\r\n <button type=\"button\" [attr.id]=\"row.Id + '_button'\" class=\"toggle-button btn\" (click)=\"toggleDetail(row)\">\r\n <i class=\"fa fa-chevron-right fa-custom\"></i>\r\n </button>\r\n </ng-container>\r\n </th>\r\n\r\n <td *ngFor=\"let column of rcolumns; index as i\"\r\n [attr.id]=\"cellId(row, column)\"\r\n [style.max-width.px]=\"colWidth(column)\" [attr.data-sized]=\"colWidth(column) ? '' : null\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\"\r\n [class]=\"'cell' | gridStyle : ctx : { row : row,column : column,index : r }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n (mousedown)=\"onCellMouseDown(r, i, $event)\"\r\n (mouseenter)=\"onCellMouseEnter(r, i, $event)\"\r\n (click)=\"onCellClick(row, column)\"\r\n (dblclick)=\"onCellDblClick(row, column)\">\r\n\r\n <alg-datagrid-cell #dataGridCellComponent\r\n class=\"gridcell-container\"\r\n [entity]=\"row\"\r\n [isEditable]=\"canEditCell(row, column)\"\r\n [property]=\"column.Property\"\r\n [managed]=\"true\"\r\n [mode]=\"showEditor(row, column) ? 'edit' : 'view'\"\r\n [class.grid-cursor]=\"isCursorCell(row, column)\"\r\n [class.grid-range]=\"isInRange(r, i)\"\r\n (contextmenu)=\"openContextMenu($event, row, column)\">\r\n\r\n <ng-template alg-editMode>\r\n <!-- Éditeur du champ du formulaire qui correspond à la colonne (sinon déduit de la colonne), à la hauteur de la ligne. -->\r\n <alg-field class=\"grid-editor\"\r\n [field]=\"getEditField(column)\"\r\n [form]=\"getRowForm(row)\"\r\n [showLabel]=\"false\"\r\n (propertyChanged)=\"onCellChanged(row, $event)\"\r\n >\r\n <!-- [focusable]=\"cellFocus\" -->\r\n </alg-field>\r\n </ng-template>\r\n <ng-template alg-viewMode>\r\n\r\n <div [ngSwitch]=\"column.Display?.type\" *ngIf=\"!isUndefined(row[column.Property])\">\r\n <div *ngSwitchCase=\"'url'\">\r\n <a [routerLink]=\"[$safeNavigationMigration(column.Display?.baseUrl),row[column.Property]]\">\r\n {{ row.Id || row[column.Property] }}\r\n </a>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"20\" [imageWidth]=\"20\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img-file'\" class=\"image\">\r\n\r\n <alg-image\r\n [imageUrl]=\"this.getImageUrl(row,column)\" [wide]=\"true\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'wide-img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\" [wide]=\"true\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{row[column.Property]| date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'boolean'\">{{row[column.Property] ? 'OUI' : 'NON'}} </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">{{row[column.Property] | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\"\r\n class=\"money\">\r\n {{\r\n row[column.Property]\r\n | currency: column.Display?.currency\r\n || (column.Display?.sourceProperty && row[column.Display?.sourceProperty] ? row[column.Display?.sourceProperty] : false)\r\n || 'EUR' : 'symbol'\r\n\r\n | todefine: $safeNavigationMigration(column.Display?.handleError)\r\n }}\r\n\r\n <div class=\"tool-tip\" *ngIf=\"ctx.showOnToolTip(row,column)\">\r\n {{ctx.showOnToolTip(row,column)}}\r\n </div>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'percent'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | percent : column.Display?.format\r\n || '1.0-2' | todefine: $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | number: column.Display?.format\r\n || '1.0-3' | todefine : $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] | tofixedsizeinteger : $safeNavigationMigration(column.Display?.completingCaracter) : $safeNavigationMigration(column.Display?.width) }}\r\n </span>\r\n <span *ngSwitchDefault [innerText]=\"column.Property == 'Id' ? (row[column.Property] < 0 ? '' : row[column.Property]) : row[column.Property]\">\r\n </span>\r\n </div>\r\n\r\n <div *ngIf=\"isUndefined(row[column.Property])\">\r\n <span *ngIf=\"!isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\" class=\"mw-invalid\">\r\n {{ column.Display?.nullCaseText }}\r\n </span>\r\n\r\n <span *ngIf=\"isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\">\r\n \r\n </span>\r\n </div>\r\n\r\n </ng-template>\r\n\r\n </alg-datagrid-cell>\r\n </td>\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <!-- Colonne vide de fin : clic droit = menu de la dernière colonne. -->\r\n <td (contextmenu)=\"openContextMenu($event, row, rcolumns[rcolumns.length - 1])\"></td>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </tbody>\r\n\r\n <tfoot>\r\n <tr class=\"empty-row\" *ngIf=\"hasAggregates\">\r\n <td></td>\r\n </tr>\r\n <tr class=\"aggregation-row\" *ngIf=\"hasAggregates\">\r\n <td class=\"row-state\"></td>\r\n <td *ngFor=\"let column of rcolumns; index as i\" [attr.class]=\"'cell' | gridStyle : ctx : { column : column, index : i }\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n\r\n <ng-container *ngFor=\"let agg of columnAggregates[column.Property]\">\r\n\r\n <span class=\"agg-label\">{{ aggregationLabel(agg.op) }}</span>\r\n <span [ngSwitch]=\"agg.op === 'COUNT' ? 'count' : column.Display?.type\">\r\n\r\n <span *ngSwitchCase=\"'count'\">{{ agg.value | number: '1.0-0' }}</span>\r\n <span *ngSwitchCase=\"'percent'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\" class=\"money\">\r\n {{ agg.value | currency: getColCurrency(column) }}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\">\r\n {{agg.value | number: column.Display?.format || '1.0-3'}}\r\n </span>\r\n\r\n <span *ngSwitchDefault>\r\n {{agg.value}}\r\n </span>\r\n\r\n </span>\r\n\r\n </ng-container>\r\n\r\n </td>\r\n\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <td class=\"last-column\"></td>\r\n </ng-container>\r\n\r\n </tr>\r\n </tfoot>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </ng-container>\r\n</div>\r\n\r\n\r\n<!-- Emplacement visé par une colonne déplacée : trait orange sur la séparation des deux en-têtes. -->\r\n<div class=\"col-drop-indicator\" *ngIf=\"dropIndicator\"\r\n [ngStyle]=\"{ left: dropIndicator.left + 'px', top: dropIndicator.top + 'px', height: dropIndicator.height + 'px' }\"></div>\r\n\r\n<!-- Menu d'une colonne (flèche de l'en-tête ou clic droit sur une cellule), en trois zones séparées\r\n par un trait : Tri, Actions (celles du panneau des actions), Fonctions (sous-menu « Fonctions »). -->\r\n<div class=\"header-menu\" *ngIf=\"headerMenu\"\r\n [ngStyle]=\"{ top: headerMenu.y + 'px', left: headerMenu.x + 'px', visibility: headerMenu.ready ? 'visible' : 'hidden' }\"\r\n (click)=\"$event.stopPropagation()\" (contextmenu)=\"$event.preventDefault()\">\r\n <ul>\r\n <!-- Tri -->\r\n <li [class.checked]=\"this.facade.filter.isAsc(headerMenu.column.Property)\" (click)=\"sortColumn('asc')\"\r\n (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-sort-amount-asc\"></i><span>Trier par ordre croissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.isDesc(headerMenu.column.Property)\" (click)=\"sortColumn('desc')\"\r\n (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-sort-amount-desc\"></i><span>Trier par ordre décroissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.getSortList().length > 1\" (click)=\"openCustomSort()\"\r\n (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-sort\"></i><span>Tri personnalisé…</span>\r\n </li>\r\n <!-- Filtre sur la valeur de la cellule (clic droit sur une cellule) : première ligne des filtres composés. -->\r\n <li *ngIf=\"cellFilterValue() !== undefined\" (click)=\"filterOnCell()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-filter\"></i><span>Filtrer sur « {{ cellFilterLabel() }} »</span>\r\n </li>\r\n <!-- Affichage : vues personnalisées (cochée = affichée), puis « Modifier… ». -->\r\n <li *ngIf=\"this.facade.config.viewChooser\" class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'columns'\"\r\n (mouseenter)=\"setSubmenu('columns')\" (click)=\"setSubmenu('columns')\">\r\n <i class=\"fa fa-columns\"></i><span>Affichage</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu header-submenu-columns\" *ngIf=\"headerMenu.submenu === 'columns'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <alg-grid-view-menu [chooser]=\"this.facade.config.viewChooser\" (done)=\"closeViewMenu()\" (loaded)=\"onViewMenuLoaded()\"></alg-grid-view-menu>\r\n </ul>\r\n </li>\r\n <!-- Colonnes figées à gauche, de la première jusqu'à celle-ci. -->\r\n <li [class.checked]=\"isFrozen(columnIndex(headerMenu.column))\" (click)=\"toggleFrozen()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-thumb-tack\"></i>\r\n <span>{{ frozenUntil === columnIndex(headerMenu.column) ? 'Libérer les colonnes' : 'Figer jusqu\\'à cette colonne' }}</span>\r\n </li>\r\n <li *ngIf=\"frozenUntil !== undefined && frozenUntil !== columnIndex(headerMenu.column)\"\r\n (click)=\"unfreezeColumns()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-unlock\"></i><span>Libérer les colonnes</span>\r\n </li>\r\n\r\n <!-- Actions -->\r\n <ng-container *ngIf=\"visibleActions.length > 0\">\r\n <li class=\"separator\"></li>\r\n <ng-container *ngFor=\"let action of visibleActions\">\r\n <ng-container *ngIf=\"{ disabled: (action.disabled$ | async) } as state\">\r\n <li class=\"menu-action\" [class.disabled]=\"state.disabled\"\r\n (click)=\"executeMenuAction(action, state.disabled)\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <img class=\"menu-action-icon\" [src]=\"getActionImageUrl(action.icon)\" [alt]=\"action.title\" />\r\n <span>{{ action.title }}</span>\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Affichage -->\r\n <li class=\"separator\"></li>\r\n <li class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'display'\"\r\n (mouseenter)=\"setSubmenu('display')\" (click)=\"setSubmenu('display')\">\r\n <i class=\"fa fa-calculator\"></i><span>Fonctions</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu\" *ngIf=\"headerMenu.submenu === 'display'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <li *ngFor=\"let op of getAggregationOptions(headerMenu.column)\"\r\n [class.checked]=\"activeAggregations[headerMenu.column.Property] === op\"\r\n (click)=\"aggregateColumn(op)\">\r\n <i class=\"fa fa-check\"></i><span>{{ aggregationLabel(op) }}</span>\r\n </li>\r\n <ng-container *ngIf=\"activeAggregations[headerMenu.column.Property]\">\r\n <li class=\"separator\"></li>\r\n <li (click)=\"aggregateColumn(null)\">\r\n <i class=\"fa fa-times\"></i><span>Ne plus afficher</span>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n",
|
|
18914
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{flex:1}.header.last-column{border-left:none!important;width:100%}table thead .sorting,table thead .sorting_asc,table thead .sorting_desc,table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table thead th:first-child,table tfoot tr:first-child{position:sticky;left:0;z-index:2}table tbody th:first-child{position:sticky;left:0;z-index:1;border-right:none}table tbody th:first-child div{text-align:center;vertical-align:middle;line-height:20px}table tbody tr.row-odd th:first-child{background:#ebf0ff}table tbody tr.selected.row-odd.mw-invalid th:first-child,table tbody tr.selected.row-even.mw-invalid th:first-child,table tbody tr.selected.row-odd.mw-warning th:first-child,table tbody tr.selected.row-even.mw-warning th:first-child,table tbody tr.selected.row-even th:first-child,table tbody tr.selected.row-odd th:first-child{background-color:#8ea7f8;color:#fff}table tbody tr.row-odd.mw-invalid th:first-child,table tbody tr.row-even.mw-invalid th:first-child{background-color:#f2dede}table tbody tr.row-odd.mw-warning th:first-child,table tbody tr.row-even.mw-warning th:first-child{background-color:#fff4de}table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:#fff;border-left:1px solid #3C5DC4;border-bottom:1px solid #3C5DC4}table thead .sorting{background-image:none;cursor:pointer}table thead .sorting_asc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxNjIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxNTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+z5ABTAAAAI5JREFUeNpi/P//PwO1ABMDFQELIQXVjfe4gFQbEJe11iv9otRl2UCcBcSphBQy4gszoKu0gNROIJYB4jtA7AF03V2SXQY0iBFIFUMNAgEVIM6DipPsTQcgDkQTSwRia5IMA9rOC6RqgVgQTQokXgOUZyfFZSFQF/zAgh2BOIjkCBjQRDtq2Khh9DAMIMAAT9AmNBDSXegAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_desc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxQTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxOTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+1fsfwAAAAJdJREFUeNpi/P//PwO1ABMDFcGoYaOG0cMwFmyC1Y33IoHUAiD+h8MBGa31SvOJddk6IN4PxBxY8FEgXkO0N4G2/gRSLUD8GU3qPRA3A+U/kxpmIBege2U9EB/ApYERX6kBDDtlILUDiFWA+AkQuwNddY2s2ARqvAukJgDxbyCehM8gnLGJBmYDsSoQTyWkkHHQFo4AAQYAAA0piq4hbqwAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-image:none}.checkbok-container{align-items:center;margin:0;padding:0}.gridcell-container{padding:0;min-width:fit-content}.gridcell-container input[type=number]{display:block;size:1;font-size:10pt;width:100%!important;height:100%;margin:0!important;border:2px solid #F78383}.datagrid-custom-container{height:100%;overflow:auto;margin-left:-1px}.data-grid-datatable{table-layout:fixed;cursor:pointer;border-spacing:0px}.data-grid-datatable td{box-shadow:none;padding:2px 5px;white-space:nowrap}.data-grid-datatable td.row-state{padding:2px 5px;width:16px}.data-grid-datatable td.img{padding:2px 5px}.data-grid-datatable td.row-state img{height:16px;width:16px;margin-top:-3px;padding:0}.data-grid-datatable tr{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.header{vertical-align:bottom;padding:2px 5px 2px 0;font-weight:400;color:#3c5dc4;white-space:nowrap;line-height:25px;min-width:32px;margin-bottom:5px}.header.img{min-width:16px}.header.row-state{min-width:27px;position:-webkit-sticky;position:sticky;top:0;left:0;z-index:2;background:#fff;border-left:none;border-right:none}.filter-header{background-color:#f7f7f7!important}.filter-header.disabled{background-color:#9fa9c7!important}.filter-header.row-state:hover:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"57\" height=\"57\" viewBox=\"0 0 57 57\">%0D%0A <path id=\"Rond_Croix\" data-name=\"Rond Croix\" d=\"M28.5,57A28.5,28.5,0,0,1,8.347,8.347,28.5,28.5,0,1,1,48.652,48.652,28.317,28.317,0,0,1,28.5,57Zm0-24.036h0l11.9,11.9L44.869,40.4,32.964,28.5,44.869,16.593,40.4,12.129,28.5,24.034,16.594,12.129l-4.465,4.464L24.034,28.5,12.129,40.4l4.463,4.465L28.5,32.965Z\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 0 0 3px;filter:brightness(0) saturate(100%) invert(70%) sepia(93%) saturate(1540%) hue-rotate(309deg) brightness(105%) contrast(94%)}.filter-header-input{height:calc(100% - 2px);width:calc(100% - 2px);margin:0;border:none!important;background-color:#f7f7f7;padding:0 0 0 5px;color:#4d5a81}.header.row-state:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->%0D%0A<path fill=\"currentColor\" d=\"M3.9 54.9C10.5 40.9 24.5 32 40 32l432 0c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9 320 448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6l0-79.1L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z\"/></svg>');background-repeat:no-repeat;margin:0 0 3px 5px;filter:brightness(0) saturate(100%) invert(56%) sepia(79%) saturate(2301%) hue-rotate(202deg) brightness(92%) contrast(91%)}.filter-header.last-column{border-left:none!important}.header label{cursor:pointer;margin-bottom:0;margin-right:10px;padding-left:5px;width:100%}.row-odd{background-color:#ebf0ff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.row-even{background-color:#f7faff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.error-row-icon{padding:2px;width:20px}.selected{background-color:#8ea7f8;color:#fff}.mw-invalid{font-weight:600;background-color:#f2dede;border:1px solid var(--red-error)}.mw-invalid td{background-color:#f2dede!important}.data-grid-datatable tbody tr.mw-invalid>td,.data-grid-datatable tbody tr.mw-invalid>th{box-shadow:inset 0 1px 0 var(--red-error),inset 0 -1px 0 var(--red-error)}span.mw-invalid{padding:0 3px;color:var(--red-error);background-color:transparent}.mw-warning.selected,.mw-invalid.selected{background-color:#8ea7f8}.mw-warning.selected td,.mw-invalid.selected td{background-color:#8ea7f8!important}.mw-warning{font-weight:600;background-color:#fff4de;border:1px solid var(--orange-algorima)}.mw-warning td{background-color:#fff4de!important}.mw-modified{font-weight:600;border:1px solid var(--main-bg-color)}.first-row{border-top:none}.last-row,.last-row td{border-bottom:none!important}.data-grid-datatable>tbody>tr{z-index:50}.image{position:relative;display:flex;flex-direction:row}.image img{height:20px;width:auto}td.money{position:relative}.tool-tip{visibility:hidden;background-color:#424242;color:#fff;text-align:left;border-radius:3px;font-size:15px;position:absolute;z-index:1;top:-10%;left:150%;opacity:0;transition:opacity .3s;padding:5px 15px;white-space:nowrap;overflow:visible}.tool-tip:after{content:\" \";position:absolute;top:50%;right:100%;margin-top:-5px;border-width:5px;border-style:solid;border-color:transparent rgb(66,66,66) transparent transparent}.image:hover .tool-tip{visibility:visible;opacity:1}td.money:hover .tool-tip{visibility:visible;opacity:1;left:100%;height:28px;font-size:13px;margin-top:0;padding:5px 10px 10px}.disabled{pointer-events:none}.edit-mode{background-color:#fff;border:1px solid #4465C9;min-width:90px!important;height:30px!important}.edit-mode .form-group{min-height:0px}.edit-mode .inactivated{background-color:#dbe4ff80}.edit-mode .inactivated-fo{background-color:#dbe4ff}.edit-mode .ecartclass{border:2px solid #4465C9}.edit-mode .error-cell{font-weight:700;color:#f78383!important}.edit-mode .selected{color:#4d5a81}.highlight-1,.highlight-1.selected,.edit-mode.highlight-1.selected{background-color:#4d5a81!important;color:#fff!important}.highlight-2,.highlight-2.selected,.edit-mode.highlight-2.selected{background-color:#dbe4ff!important;color:#4d5a81!important}.highlight-3,.highlight-3.selected,.edit-mode.highlight-3.selected{background-color:#4465c9!important;color:#fff!important}.highlight-4,.highlight-4.selected,.edit-mode.highlight-4.selected{background-color:#f78383!important;color:#fff!important}.highlight-5,.highlight-5.selected{background-color:#4465c9!important;color:#fff}.fixed-column{position:-webkit-sticky;position:sticky;left:27px;z-index:2!important;border-left:none}.fixed-header{position:-webkit-sticky;position:sticky;left:27px;z-index:3!important;background:#fff}.has-focus{padding:0!important}.has-focus ::ng-deep input,.has-focus ::ng-deep input:focus-visible,.has-focus ::ng-deep input:focus{border-radius:.1;outline:none!important;width:100%;height:29px;min-height:0;margin:0;border:1px solid #4465C9}.has-focus ::ng-deep .form-group{margin-bottom:0;min-height:0}.has-focus ::ng-deep .field-container{margin-bottom:0}.edit-mode.has-focus{width:90px!important}.bordered{border-left:1px solid #14358f!important;border-right:1px solid #14358f!important}.match-keywords{color:var(--main-bg-color);font-weight:700}.datagrid-img img{height:20px;width:20px}.right-align{text-align:right}.left-align{text-align:left}.detail-div{height:0px;overflow:hidden;transition:all .2s linear;width:100%}.fa-custom{font-size:smaller}.detail-div-show{height:150px;transition:all .2s linear}.toggleable{visibility:collapse}.toggleable-show{visibility:visible}.toggle-button-down{transform:rotate(90deg);transition:all .2s linear}.no-result{color:#5272d3;height:100%;width:100%;padding:15px 15px 150px}.new-rowstate{display:flex;flex-direction:row;align-items:center;align-self:center;height:100%;width:100%}.new-rowstate span{height:100%;width:100%;margin-top:-6px}.context-menu{position:absolute;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 12px #0000004d;padding:8px;z-index:1000;min-width:75px;max-width:250px;transition:all .3s ease-in-out}.context-menu ul{list-style:none;margin:0;padding:0}.context-menu li{padding:10px 14px;cursor:pointer;border-radius:8px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.context-menu li:hover{background:linear-gradient(135deg,#ffffff4d,#ffffff1a);transform:scale(1.02)}.context-menu li:active{transform:scale(.98)}.grid-container{overflow:auto;position:relative}.aggregation-row{position:sticky;bottom:0;z-index:50;background:#f7faff!important;background-color:#f7faff!important;font-weight:700;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important}.aggregation-row td{background:#f7faff!important;background-color:#f7faff!important;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important;border-left:none!important;border-right:none!important}.empty-row td{padding:0}.col-resizer{position:absolute;top:0;right:-5px;z-index:4;width:10px;height:100%;cursor:col-resize}.col-resizer:hover{background:#3c5dc440}.data-grid-datatable td[data-sized]{overflow:hidden;text-overflow:ellipsis}:where(.data-grid-datatable tbody tr,.data-grid-datatable tfoot tr){background-color:#fff}.data-grid-datatable td[data-frozen]{position:sticky;z-index:1;background-color:inherit}.data-grid-datatable thead th[data-frozen]{position:sticky;z-index:3}.data-grid-datatable td[data-frozen]:has(+td:not([data-frozen])),.data-grid-datatable thead th[data-frozen]:has(+th:not([data-frozen])){box-shadow:inset -2px 0 #3c5dc459}table thead th.header{background-image:none!important;cursor:default}.header-cell{position:relative;display:flex;align-items:center;gap:2px}.header-cell label{flex:1 1 auto;cursor:default;margin:0;padding-left:2px;overflow:hidden;text-overflow:ellipsis}.header-cell.col-dragging{opacity:.8}.dg-column-ghost{border:1px solid #C1D0FD;box-sizing:border-box}.col-drop-indicator{position:fixed;z-index:3100;width:1px;border-radius:0;background:var(--orange-algorima, #f59d0f);pointer-events:none}.header-cell-end{justify-content:flex-end;align-items:center;height:25px}.header-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;box-sizing:content-box;width:17px;height:20px;padding:0 2px;color:#3c5dc4;opacity:.35;cursor:grab}.header-handle:hover{opacity:1}.header-handle:active{cursor:grabbing}.header-sort,.header-agg{flex-shrink:0;color:#3c5dc4;font-size:11px;font-style:normal}.header-menu-button{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:18px;padding:0;border:0;border-radius:3px;background:none;color:#3c5dc4;opacity:.5;cursor:pointer}.header-menu-button:hover,.header-menu-button.open{opacity:1;background:#4465c926}.header-menu{position:fixed;z-index:3000;width:230px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003}.header-menu ul{margin:0;padding:0;list-style:none}.header-menu li{display:flex;align-items:center;gap:8px;padding:5px 12px;color:#3c5dc4;font-size:12.5px;cursor:pointer}.header-menu li i{width:14px;text-align:center;visibility:visible}.header-menu li:hover{background:#dbe4ff}.header-menu li.checked{font-weight:600}.header-menu li.separator{height:1px;margin:4px 0;padding:0;background:#dbe4ff;cursor:default}.header-menu li .fa-check{visibility:hidden}.header-menu li.checked>.fa-check{visibility:visible}.header-menu li.menu-action.disabled{opacity:.45;cursor:default}.header-menu li.menu-action.disabled:hover{background:none}.header-menu .menu-action-icon{width:14px;height:14px}.header-menu li.has-submenu{position:relative}.header-menu li.has-submenu.open{background:#dbe4ff}.header-menu li.has-submenu .submenu-caret{margin-left:auto}.header-menu .header-submenu{position:absolute;top:-5px;left:100%;width:200px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003;font-weight:400}.header-menu .header-submenu.left{left:auto;right:100%}.header-menu .header-submenu.header-submenu-columns{width:240px;max-height:320px;overflow-y:auto}.header-menu .header-submenu .column-choice input[type=checkbox]{width:14px;margin:0;pointer-events:none}.header-menu .header-submenu .submenu-loading{opacity:.6;cursor:default}.header-menu .header-submenu .view-lock{margin-left:auto;padding-left:8px;opacity:.5;font-size:11px}.header-menu .header-submenu.up{top:auto;bottom:-5px}.header-sort-rank{flex-shrink:0;color:#3c5dc4;font-size:9px}.aggregation-row .agg-label{margin-right:4px;color:#3c5dc4;font-size:10.5px;opacity:.7}.datagrid-custom-container:focus,.datagrid-custom-container:focus-visible{outline:none}.data-grid-datatable td .image ::ng-deep img{display:block}.data-grid-datatable td:has(>.grid-cursor){outline:2px solid #4465C9;outline-offset:-2px}.data-grid-datatable td:has(>.grid-range){background-color:#4465c940!important;box-shadow:inset 0 0 0 1px #4465c980;color:#4d5a81!important}.data-grid-datatable td:has(>.grid-range) ::ng-deep *{color:#4d5a81!important}.data-grid-datatable td:has(.grid-editor){padding:0!important;background-color:#fff}.grid-editor{display:block;height:23px;overflow:visible;color:#4d5a81}.grid-editor ::ng-deep .field-container,.grid-editor ::ng-deep .form-group,.grid-editor ::ng-deep .form-group>div,.grid-editor ::ng-deep .checkbox-container{margin:0!important;padding:0;min-height:0!important;height:23px}.grid-editor ::ng-deep .validation-message,.grid-editor ::ng-deep .checkbox-label{display:none}.grid-editor ::ng-deep input,.grid-editor ::ng-deep input:focus,.grid-editor ::ng-deep textarea{box-sizing:border-box;width:100%;height:23px!important;min-height:0!important;margin:0!important;padding:0 4px;border:1px solid #4465C9;border-radius:0;box-shadow:none;font-size:inherit;line-height:normal;resize:none}.grid-editor ::ng-deep input.ng-invalid.ng-touched,.grid-editor ::ng-deep input.ng-invalid.ng-dirty{border-color:#f78383}.grid-editor ::ng-deep input[type=checkbox]{width:auto}.grid-editor ::ng-deep .ng-select .ng-select-container{color:#4d5a81;min-height:0!important;height:23px!important;border-radius:0;border-color:#4465c9}.grid-editor ::ng-deep .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container{padding-top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container .ng-input>input{height:100%!important;border:none}.grid-editor ::ng-deep .form-group>div{flex:1;min-width:0;width:100%}.grid-editor ::ng-deep .ng-select{width:100%}.grid-editor ::ng-deep alg-selector{display:flex;width:100%;height:23px}.grid-editor ::ng-deep .input-select-default,.grid-editor ::ng-deep .input-select-default.with-button{flex:1;min-width:0;padding-right:0;margin-right:0}.grid-editor ::ng-deep .input-group-btn{float:none}.grid-editor ::ng-deep .btn,.grid-editor ::ng-deep .btn-32,.grid-editor ::ng-deep .btn-input-select{height:23px;width:23px;padding:0;line-height:1;border-radius:0}.grid-editor ::ng-deep .input-with-button{display:flex;height:23px}.grid-editor ::ng-deep .switch{margin:2px 0 0 4px;transform:scale(.7);transform-origin:left top}::ng-deep body.dg-column-dragging,::ng-deep body.dg-column-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}\n"],
|
|
19221
|
+
template: "<div #datagridContainer [class]=\"this.datagridClass\" tabindex=\"-1\" (keydown)=\"onGridKeyDown($event)\" (scroll)=\"onGridScroll($event)\"\r\n (copy)=\"onCopy($event)\" (paste)=\"onPaste($event)\" (contextmenu)=\"openEmptyAreaContextMenu($event)\">\r\n <ng-container>\r\n <table class=\"data-grid-datatable\">\r\n <ng-container *ngIf=\"this.facade.style as ctx\">\r\n <ng-container *ngIf=\"this.facade.config.columns$ | async as rcolumns\">\r\n <thead>\r\n <tr>\r\n <th class=\"header row-state\" (click)=\"addFilterQuery()\"></th>\r\n <!-- En-tête : poignée de déplacement à gauche, intitulé, indicateur de tri,\r\n flèche du menu (tri, agrégation) à droite. Le clic ne trie plus. -->\r\n <th #thHeader *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-col-' + col.Property\"\r\n [attr.class]=\"'header' | gridStyle : ctx : { column : col }\"\r\n [style.width.px]=\"colWidth(col)\" [style.min-width.px]=\"colWidth(col)\" [style.max-width.px]=\"colWidth(col)\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n <div class=\"header-cell\"\r\n [class.col-dragging]=\"draggedColumn === col.Property\">\r\n <span class=\"header-handle\" title=\"Déplacer la colonne\"\r\n (mousedown)=\"onHeaderMouseDown(col, $event)\">\r\n <i class=\"fa fa-ellipsis-v\"></i>\r\n </span>\r\n <label>{{ getHeaderLabel(col) }}</label>\r\n <i *ngIf=\"this.facade.filter.isAsc(col.Property)\" class=\"fa fa-long-arrow-up header-sort\" title=\"Tri croissant\"></i>\r\n <i *ngIf=\"this.facade.filter.isDesc(col.Property)\" class=\"fa fa-long-arrow-down header-sort\" title=\"Tri décroissant\"></i>\r\n <sup *ngIf=\"this.facade.filter.sortRank(col.Property) > 0\" class=\"header-sort-rank\"\r\n title=\"Rang dans le tri personnalisé\">{{ this.facade.filter.sortRank(col.Property) }}</sup>\r\n <i *ngIf=\"activeAggregations[col.Property]\" class=\"header-agg\" [title]=\"'Agrégation : ' + aggregationLabel(activeAggregations[col.Property])\">Σ</i>\r\n <!-- Dernière colonne suivie de la colonne vide de fin : sa flèche est dans la colonne vide. -->\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n *ngIf=\"!(ctx.enableLastColumnResize && i === rcolumns.length - 1)\"\r\n [class.open]=\"headerMenu?.column.Property === col.Property\"\r\n (click)=\"toggleHeaderMenu(col, $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n <!-- Bord droit : largeur de la colonne (tirer), ajustée au contenu (double clic). -->\r\n <span class=\"col-resizer\" title=\"Largeur de la colonne (double clic : ajuster au contenu)\"\r\n (mousedown)=\"startResize(col, $event)\" (dblclick)=\"autoFitColumn(col, $event)\"\r\n (click)=\"$event.stopPropagation()\"></span>\r\n </th>\r\n <th *ngIf=\"ctx.enableLastColumnResize\" #lastColumnHeader class=\"header last-column\"\r\n (contextmenu)=\"openHeaderContextMenu($event, rcolumns[rcolumns.length - 1])\">\r\n <div class=\"header-cell header-cell-end\" *ngIf=\"rcolumns.length > 0\">\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n [class.open]=\"headerMenu?.column.Property === rcolumns[rcolumns.length - 1].Property\"\r\n (click)=\"toggleHeaderMenu(rcolumns[rcolumns.length - 1], $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n </th>\r\n\r\n </tr>\r\n <ng-container *ngIf=\"this.facade.filter.additionalQuery$ | async as additionalQuery\">\r\n <tr #thFilterRows *ngFor=\"let filterRow of additionalQuery.Rows;let i = index\" >\r\n <th class=\"filter-header row-state\" (click)=\"removeFilterQuery(i)\"></th>\r\n <th class=\"filter-header\" [ngClass]=\"{disabled: !col.IsFilterEnabled}\" *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-filter-' + i\">\r\n <input *ngIf=\"col.IsFilterEnabled\" type=\"text\"\r\n class=\"filter-header-input\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [attr.id]=\"guid.toString() + '-filter-input-' + col.Property\"\r\n [placeholder]=\"filterRow.ClausesByPropertyName.get(col.Property).FilterValues?.length ? 'Filtre avancé : ' + filterRow.ClausesByPropertyName.get(col.Property).FilterValues.length + ' valeur(s)' : ''\"\r\n [(ngModel)]=\"filterRow.ClausesByPropertyName.get(col.Property).FilterValue\"\r\n (ngModelChange)=\"handleFilterChanged($event, filterRow, col.Property)\"\r\n (change)=\"validateFilterChanged($event, filterRow, col.Property)\"\r\n />\r\n </th>\r\n <ng-container>\r\n <th #lastColumnFilter class=\"filter-header last-column\"></th>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </thead>\r\n\r\n <tbody>\r\n <ng-container *ngIf=\"this.facade.data\">\r\n <ng-container *ngFor=\"let row of this.data.Values; let r = index;\">\r\n <tr\r\n [class]=\"'alternating' | gridStyle : ctx : { row : row, index : r, maxIndex : this.data.Values.length, hasAggregates: hasAggregates }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n [attr.id]=\"guid.toString() + '-row-' + row.Id\"\r\n (mousedown)=\"onRowMouseDown(row, $event)\"\r\n (mouseup)=\"onRowMouseUp(row, $event)\"\r\n (click)=\"onRowClick(row, $event)\"\r\n\r\n [rowRef]=\"guid + '-row-' + row.Id\"\r\n >\r\n\r\n <th [attr.class]=\"'rowstate' | gridStyle : ctx : { row : row }\">\r\n <ng-container *ngIf=\"selectionStyler.isModified(row) && !selectionStyler.isInvalid(row) && !selectionStyler.isWarning(row)\">\r\n <div class=\"new-rowstate\"><span>...</span></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/error.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isWarning(row) && !selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/warning.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ctx.displayDetail\">\r\n <button type=\"button\" [attr.id]=\"row.Id + '_button'\" class=\"toggle-button btn\" (click)=\"toggleDetail(row)\">\r\n <i class=\"fa fa-chevron-right fa-custom\"></i>\r\n </button>\r\n </ng-container>\r\n </th>\r\n\r\n <td *ngFor=\"let column of rcolumns; index as i\"\r\n [attr.id]=\"cellId(row, column)\"\r\n [style.max-width.px]=\"colWidth(column)\" [attr.data-sized]=\"colWidth(column) ? '' : null\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\"\r\n [class]=\"'cell' | gridStyle : ctx : { row : row,column : column,index : r }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n (mousedown)=\"onCellMouseDown(r, i, $event)\"\r\n (mouseenter)=\"onCellMouseEnter(r, i, $event)\"\r\n (click)=\"onCellClick(row, column)\"\r\n (dblclick)=\"onCellDblClick(row, column)\">\r\n\r\n <alg-datagrid-cell #dataGridCellComponent\r\n class=\"gridcell-container\"\r\n [entity]=\"row\"\r\n [isEditable]=\"canEditCell(row, column)\"\r\n [property]=\"column.Property\"\r\n [managed]=\"true\"\r\n [mode]=\"showEditor(row, column) ? 'edit' : 'view'\"\r\n [class.grid-cursor]=\"isCursorCell(row, column)\"\r\n [class.grid-range]=\"isInRange(r, i)\"\r\n (contextmenu)=\"openContextMenu($event, row, column)\">\r\n\r\n <ng-template alg-editMode>\r\n <!-- Éditeur du champ du formulaire qui correspond à la colonne (sinon déduit de la colonne), à la hauteur de la ligne. -->\r\n <alg-field class=\"grid-editor\"\r\n [field]=\"getEditField(column)\"\r\n [form]=\"getRowForm(row)\"\r\n [showLabel]=\"false\"\r\n (propertyChanged)=\"onCellChanged(row, $event)\"\r\n >\r\n <!-- [focusable]=\"cellFocus\" -->\r\n </alg-field>\r\n </ng-template>\r\n <ng-template alg-viewMode>\r\n\r\n <div [ngSwitch]=\"column.Display?.type\" *ngIf=\"!isUndefined(row[column.Property])\">\r\n <div *ngSwitchCase=\"'url'\">\r\n <a [routerLink]=\"[$safeNavigationMigration(column.Display?.baseUrl),row[column.Property]]\">\r\n {{ row.Id || row[column.Property] }}\r\n </a>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"20\" [imageWidth]=\"20\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img-file'\" class=\"image\">\r\n\r\n <alg-image\r\n [imageUrl]=\"this.getImageUrl(row,column)\" [wide]=\"true\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'wide-img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\" [wide]=\"true\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{row[column.Property]| date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'boolean'\">{{row[column.Property] ? 'OUI' : 'NON'}} </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">{{row[column.Property] | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\"\r\n class=\"money\">\r\n {{\r\n row[column.Property]\r\n | currency: column.Display?.currency\r\n || (column.Display?.sourceProperty && row[column.Display?.sourceProperty] ? row[column.Display?.sourceProperty] : false)\r\n || 'EUR' : 'symbol'\r\n\r\n | todefine: $safeNavigationMigration(column.Display?.handleError)\r\n }}\r\n\r\n <div class=\"tool-tip\" *ngIf=\"ctx.showOnToolTip(row,column)\">\r\n {{ctx.showOnToolTip(row,column)}}\r\n </div>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'percent'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | percent : column.Display?.format\r\n || '1.0-2' | todefine: $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | number: column.Display?.format\r\n || '1.0-3' | todefine : $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] | tofixedsizeinteger : $safeNavigationMigration(column.Display?.completingCaracter) : $safeNavigationMigration(column.Display?.width) }}\r\n </span>\r\n <span *ngSwitchDefault [innerText]=\"column.Property == 'Id' ? (row[column.Property] < 0 ? '' : row[column.Property]) : row[column.Property]\">\r\n </span>\r\n </div>\r\n\r\n <div *ngIf=\"isUndefined(row[column.Property])\">\r\n <span *ngIf=\"!isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\" class=\"mw-invalid\">\r\n {{ column.Display?.nullCaseText }}\r\n </span>\r\n\r\n <span *ngIf=\"isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\">\r\n \r\n </span>\r\n </div>\r\n\r\n </ng-template>\r\n\r\n </alg-datagrid-cell>\r\n </td>\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <!-- Colonne vide de fin : clic droit = menu de la dernière colonne. -->\r\n <td (contextmenu)=\"openContextMenu($event, row, rcolumns[rcolumns.length - 1])\"></td>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </tbody>\r\n\r\n <tfoot>\r\n <tr class=\"empty-row\" *ngIf=\"hasAggregates\">\r\n <td></td>\r\n </tr>\r\n <tr class=\"aggregation-row\" *ngIf=\"hasAggregates\">\r\n <td class=\"row-state\"></td>\r\n <td *ngFor=\"let column of rcolumns; index as i\" [attr.class]=\"'cell' | gridStyle : ctx : { column : column, index : i }\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n\r\n <ng-container *ngFor=\"let agg of columnAggregates[column.Property]\">\r\n\r\n <span class=\"agg-label\">{{ aggregationLabel(agg.op) }}</span>\r\n <span [ngSwitch]=\"agg.op === 'COUNT' ? 'count' : column.Display?.type\">\r\n\r\n <span *ngSwitchCase=\"'count'\">{{ agg.value | number: '1.0-0' }}</span>\r\n <span *ngSwitchCase=\"'percent'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\" class=\"money\">\r\n {{ agg.value | currency: getColCurrency(column) }}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\">\r\n {{agg.value | number: column.Display?.format || '1.0-3'}}\r\n </span>\r\n\r\n <span *ngSwitchDefault>\r\n {{agg.value}}\r\n </span>\r\n\r\n </span>\r\n\r\n </ng-container>\r\n\r\n </td>\r\n\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <td class=\"last-column\"></td>\r\n </ng-container>\r\n\r\n </tr>\r\n </tfoot>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </ng-container>\r\n</div>\r\n\r\n\r\n<!-- Emplacement visé par une colonne déplacée : trait orange sur la séparation des deux en-têtes. -->\r\n<div class=\"col-drop-indicator\" *ngIf=\"dropIndicator\"\r\n [ngStyle]=\"{ left: dropIndicator.left + 'px', top: dropIndicator.top + 'px', height: dropIndicator.height + 'px' }\"></div>\r\n\r\n<!-- Menu d'une colonne (flèche de l'en-tête ou clic droit sur une cellule), en trois zones séparées\r\n par un trait : Tri (sous-menu « Trier »), Actions (celles du panneau des actions), Fonctions (sous-menu « Fonctions »). -->\r\n<div class=\"header-menu\" *ngIf=\"headerMenu\"\r\n [ngStyle]=\"{ top: headerMenu.y + 'px', left: headerMenu.x + 'px', visibility: headerMenu.ready ? 'visible' : 'hidden' }\"\r\n (click)=\"$event.stopPropagation()\" (contextmenu)=\"$event.preventDefault()\">\r\n <ul>\r\n <!-- Tri : sous-menu « Trier » (croissant, décroissant, personnalisé). -->\r\n <li class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'sort'\"\r\n [class.checked]=\"this.facade.filter.isAsc(headerMenu.column.Property) || this.facade.filter.isDesc(headerMenu.column.Property) || this.facade.filter.getSortList().length > 1\"\r\n (mouseenter)=\"setSubmenu('sort')\" (click)=\"setSubmenu('sort')\">\r\n <i class=\"fa fa-sort\"></i><span>Trier</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu\" *ngIf=\"headerMenu.submenu === 'sort'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <li [class.checked]=\"this.facade.filter.isAsc(headerMenu.column.Property)\" (click)=\"sortColumn('asc')\">\r\n <i class=\"fa fa-sort-amount-asc\"></i><span>Par ordre croissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.isDesc(headerMenu.column.Property)\" (click)=\"sortColumn('desc')\">\r\n <i class=\"fa fa-sort-amount-desc\"></i><span>Par ordre décroissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.getSortList().length > 1\" (click)=\"openCustomSort()\">\r\n <i class=\"fa fa-sort\"></i><span>Tri personnalisé…</span>\r\n </li>\r\n </ul>\r\n </li>\r\n <!-- Filtre sur la valeur de la cellule (clic droit sur une cellule) : première ligne des filtres composés. -->\r\n <li *ngIf=\"cellFilterValue() !== undefined\" (click)=\"filterOnCell()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-filter\"></i><span>Filtrer sur « {{ cellFilterLabel() }} »</span>\r\n </li>\r\n <!-- Filtre avancé : valeurs distinctes de la colonne sur les résultats, à cocher (condition « dans la liste »). -->\r\n <li *ngIf=\"headerMenu.column.IsFilterEnabled\" class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'distinct'\"\r\n [class.checked]=\"this.facade.filter.getFilterValues(headerMenu.column.Property).length > 0\"\r\n (mouseenter)=\"setSubmenu('distinct')\" (click)=\"setSubmenu('distinct')\">\r\n <i class=\"fa fa-filter\"></i><span>Filtre avancé</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu header-submenu-distinct\" *ngIf=\"headerMenu.submenu === 'distinct'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <alg-grid-distinct-filter [facade]=\"this.facade\" [entityKey]=\"this.entityKey\" [property]=\"headerMenu.column.Property\"\r\n (done)=\"closeViewMenu()\" (loaded)=\"onViewMenuLoaded()\"></alg-grid-distinct-filter>\r\n </ul>\r\n </li>\r\n <!-- Affichage : vues personnalisées (cochée = affichée), puis « Modifier… ». -->\r\n <li *ngIf=\"this.facade.config.viewChooser\" class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'columns'\"\r\n (mouseenter)=\"setSubmenu('columns')\" (click)=\"setSubmenu('columns')\">\r\n <i class=\"fa fa-columns\"></i><span>Affichage</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu header-submenu-columns\" *ngIf=\"headerMenu.submenu === 'columns'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <alg-grid-view-menu [chooser]=\"this.facade.config.viewChooser\" (done)=\"closeViewMenu()\" (loaded)=\"onViewMenuLoaded()\"></alg-grid-view-menu>\r\n </ul>\r\n </li>\r\n <!-- Colonnes figées à gauche, de la première jusqu'à celle-ci. -->\r\n <li [class.checked]=\"isFrozen(columnIndex(headerMenu.column))\" (click)=\"toggleFrozen()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-thumb-tack\"></i>\r\n <span>{{ frozenUntil === columnIndex(headerMenu.column) ? 'Libérer les colonnes' : 'Figer jusqu\\'à cette colonne' }}</span>\r\n </li>\r\n <li *ngIf=\"frozenUntil !== undefined && frozenUntil !== columnIndex(headerMenu.column)\"\r\n (click)=\"unfreezeColumns()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-unlock\"></i><span>Libérer les colonnes</span>\r\n </li>\r\n\r\n <!-- Actions -->\r\n <ng-container *ngIf=\"visibleActions.length > 0\">\r\n <li class=\"separator\"></li>\r\n <ng-container *ngFor=\"let action of visibleActions\">\r\n <ng-container *ngIf=\"{ disabled: (action.disabled$ | async) } as state\">\r\n <li class=\"menu-action\" [class.disabled]=\"state.disabled\"\r\n (click)=\"executeMenuAction(action, state.disabled)\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <img class=\"menu-action-icon\" [src]=\"getActionImageUrl(action.icon)\" [alt]=\"action.title\" />\r\n <span>{{ action.title }}</span>\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Affichage -->\r\n <li class=\"separator\"></li>\r\n <li class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'display'\"\r\n (mouseenter)=\"setSubmenu('display')\" (click)=\"setSubmenu('display')\">\r\n <i class=\"fa fa-calculator\"></i><span>Fonctions</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu\" *ngIf=\"headerMenu.submenu === 'display'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <li *ngFor=\"let op of getAggregationOptions(headerMenu.column)\"\r\n [class.checked]=\"activeAggregations[headerMenu.column.Property] === op\"\r\n (click)=\"aggregateColumn(op)\">\r\n <i class=\"fa fa-check\"></i><span>{{ aggregationLabel(op) }}</span>\r\n </li>\r\n <ng-container *ngIf=\"activeAggregations[headerMenu.column.Property]\">\r\n <li class=\"separator\"></li>\r\n <li (click)=\"aggregateColumn(null)\">\r\n <i class=\"fa fa-times\"></i><span>Ne plus afficher</span>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n",
|
|
19222
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{flex:1}.header.last-column{border-left:none!important;width:100%}table thead .sorting,table thead .sorting_asc,table thead .sorting_desc,table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table thead th:first-child,table tfoot tr:first-child{position:sticky;left:0;z-index:2}table tbody th:first-child{position:sticky;left:0;z-index:1;border-right:none}table tbody th:first-child div{text-align:center;vertical-align:middle;line-height:20px}table tbody tr.row-odd th:first-child{background:#ebf0ff}table tbody tr.selected.row-odd.mw-invalid th:first-child,table tbody tr.selected.row-even.mw-invalid th:first-child,table tbody tr.selected.row-odd.mw-warning th:first-child,table tbody tr.selected.row-even.mw-warning th:first-child,table tbody tr.selected.row-even th:first-child,table tbody tr.selected.row-odd th:first-child{background-color:#8ea7f8;color:#fff}table tbody tr.row-odd.mw-invalid th:first-child,table tbody tr.row-even.mw-invalid th:first-child{background-color:#f2dede}table tbody tr.row-odd.mw-warning th:first-child,table tbody tr.row-even.mw-warning th:first-child{background-color:#fff4de}table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:#fff;border-left:1px solid #3C5DC4;border-bottom:1px solid #3C5DC4}table thead .sorting{background-image:none;cursor:pointer}table thead .sorting_asc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxNjIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxNTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+z5ABTAAAAI5JREFUeNpi/P//PwO1ABMDFQELIQXVjfe4gFQbEJe11iv9otRl2UCcBcSphBQy4gszoKu0gNROIJYB4jtA7AF03V2SXQY0iBFIFUMNAgEVIM6DipPsTQcgDkQTSwRia5IMA9rOC6RqgVgQTQokXgOUZyfFZSFQF/zAgh2BOIjkCBjQRDtq2Khh9DAMIMAAT9AmNBDSXegAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_desc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxQTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxOTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+1fsfwAAAAJdJREFUeNpi/P//PwO1ABMDFcGoYaOG0cMwFmyC1Y33IoHUAiD+h8MBGa31SvOJddk6IN4PxBxY8FEgXkO0N4G2/gRSLUD8GU3qPRA3A+U/kxpmIBege2U9EB/ApYERX6kBDDtlILUDiFWA+AkQuwNddY2s2ARqvAukJgDxbyCehM8gnLGJBmYDsSoQTyWkkHHQFo4AAQYAAA0piq4hbqwAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-image:none}.checkbok-container{align-items:center;margin:0;padding:0}.gridcell-container{padding:0;min-width:fit-content}.gridcell-container input[type=number]{display:block;size:1;font-size:10pt;width:100%!important;height:100%;margin:0!important;border:2px solid #F78383}.datagrid-custom-container{height:100%;overflow:auto;margin-left:-1px}.data-grid-datatable{table-layout:fixed;cursor:pointer;border-spacing:0px}.data-grid-datatable td{box-shadow:none;padding:2px 5px;white-space:nowrap}.data-grid-datatable td.row-state{padding:2px 5px;width:16px}.data-grid-datatable td.img{padding:2px 5px}.data-grid-datatable td.row-state img{height:16px;width:16px;margin-top:-3px;padding:0}.data-grid-datatable tr{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.header{vertical-align:bottom;padding:2px 5px 2px 0;font-weight:400;color:#3c5dc4;white-space:nowrap;line-height:25px;min-width:32px;margin-bottom:5px}.header.img{min-width:16px}.header.row-state{min-width:27px;position:-webkit-sticky;position:sticky;top:0;left:0;z-index:2;background:#fff;border-left:none;border-right:none}.filter-header{background-color:#f7f7f7!important}.filter-header.disabled{background-color:#9fa9c7!important}.filter-header.row-state:hover:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"57\" height=\"57\" viewBox=\"0 0 57 57\">%0D%0A <path id=\"Rond_Croix\" data-name=\"Rond Croix\" d=\"M28.5,57A28.5,28.5,0,0,1,8.347,8.347,28.5,28.5,0,1,1,48.652,48.652,28.317,28.317,0,0,1,28.5,57Zm0-24.036h0l11.9,11.9L44.869,40.4,32.964,28.5,44.869,16.593,40.4,12.129,28.5,24.034,16.594,12.129l-4.465,4.464L24.034,28.5,12.129,40.4l4.463,4.465L28.5,32.965Z\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 0 0 3px;filter:brightness(0) saturate(100%) invert(70%) sepia(93%) saturate(1540%) hue-rotate(309deg) brightness(105%) contrast(94%)}.filter-header-input{height:calc(100% - 2px);width:calc(100% - 2px);margin:0;border:none!important;background-color:#f7f7f7;padding:0 0 0 5px;color:#4d5a81}.header.row-state:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->%0D%0A<path fill=\"currentColor\" d=\"M3.9 54.9C10.5 40.9 24.5 32 40 32l432 0c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9 320 448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6l0-79.1L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z\"/></svg>');background-repeat:no-repeat;margin:0 0 3px 5px;filter:brightness(0) saturate(100%) invert(56%) sepia(79%) saturate(2301%) hue-rotate(202deg) brightness(92%) contrast(91%)}.filter-header.last-column{border-left:none!important}.header label{cursor:pointer;margin-bottom:0;margin-right:10px;padding-left:5px;width:100%}.row-odd{background-color:#ebf0ff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.row-even{background-color:#f7faff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.error-row-icon{padding:2px;width:20px}.selected{background-color:#8ea7f8;color:#fff}.mw-invalid{font-weight:600;background-color:#f2dede;border:1px solid var(--red-error)}.mw-invalid td{background-color:#f2dede!important}.data-grid-datatable tbody tr.mw-invalid>td,.data-grid-datatable tbody tr.mw-invalid>th{box-shadow:inset 0 1px 0 var(--red-error),inset 0 -1px 0 var(--red-error)}span.mw-invalid{padding:0 3px;color:var(--red-error);background-color:transparent}.mw-warning.selected,.mw-invalid.selected{background-color:#8ea7f8}.mw-warning.selected td,.mw-invalid.selected td{background-color:#8ea7f8!important}.mw-warning{font-weight:600;background-color:#fff4de;border:1px solid var(--orange-algorima)}.mw-warning td{background-color:#fff4de!important}.mw-modified{font-weight:600;border:1px solid var(--main-bg-color)}.first-row{border-top:none}.last-row,.last-row td{border-bottom:none!important}.data-grid-datatable>tbody>tr{z-index:50}.image{position:relative;display:flex;flex-direction:row}.image img{height:20px;width:auto}td.money{position:relative}.tool-tip{visibility:hidden;background-color:#424242;color:#fff;text-align:left;border-radius:3px;font-size:15px;position:absolute;z-index:1;top:-10%;left:150%;opacity:0;transition:opacity .3s;padding:5px 15px;white-space:nowrap;overflow:visible}.tool-tip:after{content:\" \";position:absolute;top:50%;right:100%;margin-top:-5px;border-width:5px;border-style:solid;border-color:transparent rgb(66,66,66) transparent transparent}.image:hover .tool-tip{visibility:visible;opacity:1}td.money:hover .tool-tip{visibility:visible;opacity:1;left:100%;height:28px;font-size:13px;margin-top:0;padding:5px 10px 10px}.disabled{pointer-events:none}.edit-mode{background-color:#fff;border:1px solid #4465C9;min-width:90px!important;height:30px!important}.edit-mode .form-group{min-height:0px}.edit-mode .inactivated{background-color:#dbe4ff80}.edit-mode .inactivated-fo{background-color:#dbe4ff}.edit-mode .ecartclass{border:2px solid #4465C9}.edit-mode .error-cell{font-weight:700;color:#f78383!important}.edit-mode .selected{color:#4d5a81}.highlight-1,.highlight-1.selected,.edit-mode.highlight-1.selected{background-color:#4d5a81!important;color:#fff!important}.highlight-2,.highlight-2.selected,.edit-mode.highlight-2.selected{background-color:#dbe4ff!important;color:#4d5a81!important}.highlight-3,.highlight-3.selected,.edit-mode.highlight-3.selected{background-color:#4465c9!important;color:#fff!important}.highlight-4,.highlight-4.selected,.edit-mode.highlight-4.selected{background-color:#f78383!important;color:#fff!important}.highlight-5,.highlight-5.selected{background-color:#4465c9!important;color:#fff}.fixed-column{position:-webkit-sticky;position:sticky;left:27px;z-index:2!important;border-left:none}.fixed-header{position:-webkit-sticky;position:sticky;left:27px;z-index:3!important;background:#fff}.has-focus{padding:0!important}.has-focus ::ng-deep input,.has-focus ::ng-deep input:focus-visible,.has-focus ::ng-deep input:focus{border-radius:.1;outline:none!important;width:100%;height:29px;min-height:0;margin:0;border:1px solid #4465C9}.has-focus ::ng-deep .form-group{margin-bottom:0;min-height:0}.has-focus ::ng-deep .field-container{margin-bottom:0}.edit-mode.has-focus{width:90px!important}.bordered{border-left:1px solid #14358f!important;border-right:1px solid #14358f!important}.match-keywords{color:var(--main-bg-color);font-weight:700}.datagrid-img img{height:20px;width:20px}.right-align{text-align:right}.left-align{text-align:left}.detail-div{height:0px;overflow:hidden;transition:all .2s linear;width:100%}.fa-custom{font-size:smaller}.detail-div-show{height:150px;transition:all .2s linear}.toggleable{visibility:collapse}.toggleable-show{visibility:visible}.toggle-button-down{transform:rotate(90deg);transition:all .2s linear}.no-result{color:#5272d3;height:100%;width:100%;padding:15px 15px 150px}.new-rowstate{display:flex;flex-direction:row;align-items:center;align-self:center;height:100%;width:100%}.new-rowstate span{height:100%;width:100%;margin-top:-6px}.context-menu{position:absolute;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 12px #0000004d;padding:8px;z-index:1000;min-width:75px;max-width:250px;transition:all .3s ease-in-out}.context-menu ul{list-style:none;margin:0;padding:0}.context-menu li{padding:10px 14px;cursor:pointer;border-radius:8px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.context-menu li:hover{background:linear-gradient(135deg,#ffffff4d,#ffffff1a);transform:scale(1.02)}.context-menu li:active{transform:scale(.98)}.grid-container{overflow:auto;position:relative}.aggregation-row{position:sticky;bottom:0;z-index:50;background:#f7faff!important;background-color:#f7faff!important;font-weight:700;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important}.aggregation-row td{background:#f7faff!important;background-color:#f7faff!important;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important;border-left:none!important;border-right:none!important}.empty-row td{padding:0}.col-resizer{position:absolute;top:0;right:-5px;z-index:4;width:10px;height:100%;cursor:col-resize}.col-resizer:hover{background:#3c5dc440}.data-grid-datatable td[data-sized]{overflow:hidden;text-overflow:ellipsis}:where(.data-grid-datatable tbody tr,.data-grid-datatable tfoot tr){background-color:#fff}.data-grid-datatable td[data-frozen]{position:sticky;z-index:1;background-color:inherit}.data-grid-datatable thead th[data-frozen]{position:sticky;z-index:3}.data-grid-datatable td[data-frozen]:has(+td:not([data-frozen])),.data-grid-datatable thead th[data-frozen]:has(+th:not([data-frozen])){box-shadow:inset -2px 0 #3c5dc459}table thead th.header{background-image:none!important;cursor:default}.header-cell{position:relative;display:flex;align-items:center;gap:2px}.header-cell label{flex:1 1 auto;cursor:default;margin:0;padding-left:2px;overflow:hidden;text-overflow:ellipsis}.header-cell.col-dragging{opacity:.8}.dg-column-ghost{border:1px solid #C1D0FD;box-sizing:border-box}.col-drop-indicator{position:fixed;z-index:3100;width:1px;border-radius:0;background:var(--orange-algorima, #f59d0f);pointer-events:none}.header-cell-end{justify-content:flex-end;align-items:center;height:25px}.header-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;box-sizing:content-box;width:17px;height:20px;padding:0 2px;color:#3c5dc4;opacity:.35;cursor:grab}.header-handle:hover{opacity:1}.header-handle:active{cursor:grabbing}.header-sort,.header-agg{flex-shrink:0;color:#3c5dc4;font-size:11px;font-style:normal}.header-menu-button{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:18px;padding:0;border:0;border-radius:3px;background:none;color:#3c5dc4;opacity:.5;cursor:pointer}.header-menu-button:hover,.header-menu-button.open{opacity:1;background:#4465c926}.header-menu{position:fixed;z-index:3000;width:230px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003}.header-menu ul{margin:0;padding:0;list-style:none}.header-menu li{display:flex;align-items:center;gap:8px;padding:5px 12px;color:#3c5dc4;font-size:12.5px;cursor:pointer}.header-menu li i{width:14px;text-align:center;visibility:visible}.header-menu li:hover{background:#dbe4ff}.header-menu li.checked{font-weight:600}.header-menu li.separator{height:1px;margin:4px 0;padding:0;background:#dbe4ff;cursor:default}.header-menu li .fa-check{visibility:hidden}.header-menu li.checked>.fa-check{visibility:visible}.header-menu li.menu-action.disabled{opacity:.45;cursor:default}.header-menu li.menu-action.disabled:hover{background:none}.header-menu .menu-action-icon{width:14px;height:14px;filter:brightness(0) saturate(100%) invert(36%) sepia(91%) saturate(628%) hue-rotate(191deg) brightness(89%) contrast(85%) brightness(75%)}.header-menu li.has-submenu{position:relative}.header-menu li.has-submenu.open{background:#dbe4ff}.header-menu li.has-submenu .submenu-caret{margin-left:auto}.header-menu .header-submenu{position:absolute;top:-5px;left:100%;width:200px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003;font-weight:400}.header-menu .header-submenu.left{left:auto;right:100%}.header-menu .header-submenu.header-submenu-distinct{width:240px}.header-menu .header-submenu.header-submenu-columns{width:240px;max-height:320px;overflow-y:auto}.header-menu .header-submenu .column-choice input[type=checkbox]{width:14px;margin:0;pointer-events:none}.header-menu .header-submenu .submenu-loading{opacity:.6;cursor:default}.header-menu .header-submenu .view-lock{margin-left:auto;padding-left:8px;opacity:.5;font-size:11px}.header-menu .header-submenu.up{top:auto;bottom:-5px}.header-sort-rank{flex-shrink:0;color:#3c5dc4;font-size:9px}.aggregation-row .agg-label{margin-right:4px;color:#3c5dc4;font-size:10.5px;opacity:.7}.datagrid-custom-container:focus,.datagrid-custom-container:focus-visible{outline:none}.data-grid-datatable td .image ::ng-deep img{display:block}.data-grid-datatable td:has(>.grid-cursor){outline:2px solid #4465C9;outline-offset:-2px}.data-grid-datatable td:has(>.grid-range){background-color:#4465c940!important;box-shadow:inset 0 0 0 1px #4465c980;color:#4d5a81!important}.data-grid-datatable td:has(>.grid-range) ::ng-deep *{color:#4d5a81!important}.data-grid-datatable td:has(.grid-editor){padding:0!important;background-color:#fff}.grid-editor{display:block;height:23px;overflow:visible;color:#4d5a81}.grid-editor ::ng-deep .field-container,.grid-editor ::ng-deep .form-group,.grid-editor ::ng-deep .form-group>div,.grid-editor ::ng-deep .checkbox-container{margin:0!important;padding:0;min-height:0!important;height:23px}.grid-editor ::ng-deep .validation-message,.grid-editor ::ng-deep .checkbox-label{display:none}.grid-editor ::ng-deep input,.grid-editor ::ng-deep input:focus,.grid-editor ::ng-deep textarea{box-sizing:border-box;width:100%;height:23px!important;min-height:0!important;margin:0!important;padding:0 4px;border:1px solid #4465C9;border-radius:0;box-shadow:none;font-size:inherit;line-height:normal;resize:none}.grid-editor ::ng-deep input.ng-invalid.ng-touched,.grid-editor ::ng-deep input.ng-invalid.ng-dirty{border-color:#f78383}.grid-editor ::ng-deep input[type=checkbox]{width:auto}.grid-editor ::ng-deep .ng-select .ng-select-container{color:#4d5a81;min-height:0!important;height:23px!important;border-radius:0;border-color:#4465c9}.grid-editor ::ng-deep .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container{padding-top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container .ng-input>input{height:100%!important;border:none}.grid-editor ::ng-deep .form-group>div{flex:1;min-width:0;width:100%}.grid-editor ::ng-deep .ng-select{width:100%}.grid-editor ::ng-deep alg-selector{display:flex;width:100%;height:23px}.grid-editor ::ng-deep .input-select-default,.grid-editor ::ng-deep .input-select-default.with-button{flex:1;min-width:0;padding-right:0;margin-right:0}.grid-editor ::ng-deep .input-group-btn{float:none}.grid-editor ::ng-deep .btn,.grid-editor ::ng-deep .btn-32,.grid-editor ::ng-deep .btn-input-select{height:23px;width:23px;padding:0;line-height:1;border-radius:0}.grid-editor ::ng-deep .input-with-button{display:flex;height:23px}.grid-editor ::ng-deep .switch{margin:2px 0 0 4px;transform:scale(.7);transform-origin:left top}::ng-deep body.dg-column-dragging,::ng-deep body.dg-column-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}\n"],
|
|
18915
19223
|
dependencies: [
|
|
18916
19224
|
{
|
|
18917
19225
|
kind: "directive",
|
|
@@ -19017,6 +19325,17 @@ var DataGridComponent = class DataGridComponent {
|
|
|
19017
19325
|
inputs: ["chooser", "mobile"],
|
|
19018
19326
|
outputs: ["done", "loaded"]
|
|
19019
19327
|
},
|
|
19328
|
+
{
|
|
19329
|
+
kind: "component",
|
|
19330
|
+
type: GridDistinctFilterComponent,
|
|
19331
|
+
selector: "alg-grid-distinct-filter",
|
|
19332
|
+
inputs: [
|
|
19333
|
+
"facade",
|
|
19334
|
+
"entityKey",
|
|
19335
|
+
"property"
|
|
19336
|
+
],
|
|
19337
|
+
outputs: ["done", "loaded"]
|
|
19338
|
+
},
|
|
19020
19339
|
{
|
|
19021
19340
|
kind: "component",
|
|
19022
19341
|
type: ImageComponent,
|
|
@@ -19130,8 +19449,8 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
19130
19449
|
provide: RowRefHost,
|
|
19131
19450
|
useExisting: forwardRef(() => DataGridComponent)
|
|
19132
19451
|
}],
|
|
19133
|
-
template: "<div #datagridContainer [class]=\"this.datagridClass\" tabindex=\"-1\" (keydown)=\"onGridKeyDown($event)\" (scroll)=\"onGridScroll($event)\"\r\n (copy)=\"onCopy($event)\" (paste)=\"onPaste($event)\" (contextmenu)=\"openEmptyAreaContextMenu($event)\">\r\n <ng-container>\r\n <table class=\"data-grid-datatable\">\r\n <ng-container *ngIf=\"this.facade.style as ctx\">\r\n <ng-container *ngIf=\"this.facade.config.columns$ | async as rcolumns\">\r\n <thead>\r\n <tr>\r\n <th class=\"header row-state\" (click)=\"addFilterQuery()\"></th>\r\n <!-- En-tête : poignée de déplacement à gauche, intitulé, indicateur de tri,\r\n flèche du menu (tri, agrégation) à droite. Le clic ne trie plus. -->\r\n <th #thHeader *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-col-' + col.Property\"\r\n [attr.class]=\"'header' | gridStyle : ctx : { column : col }\"\r\n [style.width.px]=\"colWidth(col)\" [style.min-width.px]=\"colWidth(col)\" [style.max-width.px]=\"colWidth(col)\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n <div class=\"header-cell\"\r\n [class.col-dragging]=\"draggedColumn === col.Property\">\r\n <span class=\"header-handle\" title=\"Déplacer la colonne\"\r\n (mousedown)=\"onHeaderMouseDown(col, $event)\">\r\n <i class=\"fa fa-ellipsis-v\"></i>\r\n </span>\r\n <label>{{ getHeaderLabel(col) }}</label>\r\n <i *ngIf=\"this.facade.filter.isAsc(col.Property)\" class=\"fa fa-long-arrow-up header-sort\" title=\"Tri croissant\"></i>\r\n <i *ngIf=\"this.facade.filter.isDesc(col.Property)\" class=\"fa fa-long-arrow-down header-sort\" title=\"Tri décroissant\"></i>\r\n <sup *ngIf=\"this.facade.filter.sortRank(col.Property) > 0\" class=\"header-sort-rank\"\r\n title=\"Rang dans le tri personnalisé\">{{ this.facade.filter.sortRank(col.Property) }}</sup>\r\n <i *ngIf=\"activeAggregations[col.Property]\" class=\"header-agg\" [title]=\"'Agrégation : ' + aggregationLabel(activeAggregations[col.Property])\">Σ</i>\r\n <!-- Dernière colonne suivie de la colonne vide de fin : sa flèche est dans la colonne vide. -->\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n *ngIf=\"!(ctx.enableLastColumnResize && i === rcolumns.length - 1)\"\r\n [class.open]=\"headerMenu?.column.Property === col.Property\"\r\n (click)=\"toggleHeaderMenu(col, $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n <!-- Bord droit : largeur de la colonne (tirer), ajustée au contenu (double clic). -->\r\n <span class=\"col-resizer\" title=\"Largeur de la colonne (double clic : ajuster au contenu)\"\r\n (mousedown)=\"startResize(col, $event)\" (dblclick)=\"autoFitColumn(col, $event)\"\r\n (click)=\"$event.stopPropagation()\"></span>\r\n </th>\r\n <th *ngIf=\"ctx.enableLastColumnResize\" #lastColumnHeader class=\"header last-column\"\r\n (contextmenu)=\"openHeaderContextMenu($event, rcolumns[rcolumns.length - 1])\">\r\n <div class=\"header-cell header-cell-end\" *ngIf=\"rcolumns.length > 0\">\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n [class.open]=\"headerMenu?.column.Property === rcolumns[rcolumns.length - 1].Property\"\r\n (click)=\"toggleHeaderMenu(rcolumns[rcolumns.length - 1], $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n </th>\r\n\r\n </tr>\r\n <ng-container *ngIf=\"this.facade.filter.additionalQuery$ | async as additionalQuery\">\r\n <tr #thFilterRows *ngFor=\"let filterRow of additionalQuery.Rows;let i = index\" >\r\n <th class=\"filter-header row-state\" (click)=\"removeFilterQuery(i)\"></th>\r\n <th class=\"filter-header\" [ngClass]=\"{disabled: !col.IsFilterEnabled}\" *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-filter-' + i\">\r\n <input *ngIf=\"col.IsFilterEnabled\" type=\"text\"\r\n class=\"filter-header-input\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [attr.id]=\"guid.toString() + '-filter-input-' + col.Property\"\r\n [(ngModel)]=\"filterRow.ClausesByPropertyName.get(col.Property).FilterValue\"\r\n (ngModelChange)=\"handleFilterChanged($event, filterRow, col.Property)\"\r\n (change)=\"validateFilterChanged($event, filterRow, col.Property)\"\r\n />\r\n </th>\r\n <ng-container>\r\n <th #lastColumnFilter class=\"filter-header last-column\"></th>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </thead>\r\n\r\n <tbody>\r\n <ng-container *ngIf=\"this.facade.data\">\r\n <ng-container *ngFor=\"let row of this.data.Values; let r = index;\">\r\n <tr\r\n [class]=\"'alternating' | gridStyle : ctx : { row : row, index : r, maxIndex : this.data.Values.length, hasAggregates: hasAggregates }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n [attr.id]=\"guid.toString() + '-row-' + row.Id\"\r\n (mousedown)=\"onRowMouseDown(row, $event)\"\r\n (mouseup)=\"onRowMouseUp(row, $event)\"\r\n (click)=\"onRowClick(row, $event)\"\r\n\r\n [rowRef]=\"guid + '-row-' + row.Id\"\r\n >\r\n\r\n <th [attr.class]=\"'rowstate' | gridStyle : ctx : { row : row }\">\r\n <ng-container *ngIf=\"selectionStyler.isModified(row) && !selectionStyler.isInvalid(row) && !selectionStyler.isWarning(row)\">\r\n <div class=\"new-rowstate\"><span>...</span></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/error.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isWarning(row) && !selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/warning.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ctx.displayDetail\">\r\n <button type=\"button\" [attr.id]=\"row.Id + '_button'\" class=\"toggle-button btn\" (click)=\"toggleDetail(row)\">\r\n <i class=\"fa fa-chevron-right fa-custom\"></i>\r\n </button>\r\n </ng-container>\r\n </th>\r\n\r\n <td *ngFor=\"let column of rcolumns; index as i\"\r\n [attr.id]=\"cellId(row, column)\"\r\n [style.max-width.px]=\"colWidth(column)\" [attr.data-sized]=\"colWidth(column) ? '' : null\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\"\r\n [class]=\"'cell' | gridStyle : ctx : { row : row,column : column,index : r }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n (mousedown)=\"onCellMouseDown(r, i, $event)\"\r\n (mouseenter)=\"onCellMouseEnter(r, i, $event)\"\r\n (click)=\"onCellClick(row, column)\"\r\n (dblclick)=\"onCellDblClick(row, column)\">\r\n\r\n <alg-datagrid-cell #dataGridCellComponent\r\n class=\"gridcell-container\"\r\n [entity]=\"row\"\r\n [isEditable]=\"canEditCell(row, column)\"\r\n [property]=\"column.Property\"\r\n [managed]=\"true\"\r\n [mode]=\"showEditor(row, column) ? 'edit' : 'view'\"\r\n [class.grid-cursor]=\"isCursorCell(row, column)\"\r\n [class.grid-range]=\"isInRange(r, i)\"\r\n (contextmenu)=\"openContextMenu($event, row, column)\">\r\n\r\n <ng-template alg-editMode>\r\n <!-- Éditeur du champ du formulaire qui correspond à la colonne (sinon déduit de la colonne), à la hauteur de la ligne. -->\r\n <alg-field class=\"grid-editor\"\r\n [field]=\"getEditField(column)\"\r\n [form]=\"getRowForm(row)\"\r\n [showLabel]=\"false\"\r\n (propertyChanged)=\"onCellChanged(row, $event)\"\r\n >\r\n <!-- [focusable]=\"cellFocus\" -->\r\n </alg-field>\r\n </ng-template>\r\n <ng-template alg-viewMode>\r\n\r\n <div [ngSwitch]=\"column.Display?.type\" *ngIf=\"!isUndefined(row[column.Property])\">\r\n <div *ngSwitchCase=\"'url'\">\r\n <a [routerLink]=\"[$safeNavigationMigration(column.Display?.baseUrl),row[column.Property]]\">\r\n {{ row.Id || row[column.Property] }}\r\n </a>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"20\" [imageWidth]=\"20\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img-file'\" class=\"image\">\r\n\r\n <alg-image\r\n [imageUrl]=\"this.getImageUrl(row,column)\" [wide]=\"true\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'wide-img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\" [wide]=\"true\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{row[column.Property]| date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'boolean'\">{{row[column.Property] ? 'OUI' : 'NON'}} </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">{{row[column.Property] | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\"\r\n class=\"money\">\r\n {{\r\n row[column.Property]\r\n | currency: column.Display?.currency\r\n || (column.Display?.sourceProperty && row[column.Display?.sourceProperty] ? row[column.Display?.sourceProperty] : false)\r\n || 'EUR' : 'symbol'\r\n\r\n | todefine: $safeNavigationMigration(column.Display?.handleError)\r\n }}\r\n\r\n <div class=\"tool-tip\" *ngIf=\"ctx.showOnToolTip(row,column)\">\r\n {{ctx.showOnToolTip(row,column)}}\r\n </div>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'percent'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | percent : column.Display?.format\r\n || '1.0-2' | todefine: $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | number: column.Display?.format\r\n || '1.0-3' | todefine : $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] | tofixedsizeinteger : $safeNavigationMigration(column.Display?.completingCaracter) : $safeNavigationMigration(column.Display?.width) }}\r\n </span>\r\n <span *ngSwitchDefault [innerText]=\"column.Property == 'Id' ? (row[column.Property] < 0 ? '' : row[column.Property]) : row[column.Property]\">\r\n </span>\r\n </div>\r\n\r\n <div *ngIf=\"isUndefined(row[column.Property])\">\r\n <span *ngIf=\"!isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\" class=\"mw-invalid\">\r\n {{ column.Display?.nullCaseText }}\r\n </span>\r\n\r\n <span *ngIf=\"isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\">\r\n \r\n </span>\r\n </div>\r\n\r\n </ng-template>\r\n\r\n </alg-datagrid-cell>\r\n </td>\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <!-- Colonne vide de fin : clic droit = menu de la dernière colonne. -->\r\n <td (contextmenu)=\"openContextMenu($event, row, rcolumns[rcolumns.length - 1])\"></td>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </tbody>\r\n\r\n <tfoot>\r\n <tr class=\"empty-row\" *ngIf=\"hasAggregates\">\r\n <td></td>\r\n </tr>\r\n <tr class=\"aggregation-row\" *ngIf=\"hasAggregates\">\r\n <td class=\"row-state\"></td>\r\n <td *ngFor=\"let column of rcolumns; index as i\" [attr.class]=\"'cell' | gridStyle : ctx : { column : column, index : i }\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n\r\n <ng-container *ngFor=\"let agg of columnAggregates[column.Property]\">\r\n\r\n <span class=\"agg-label\">{{ aggregationLabel(agg.op) }}</span>\r\n <span [ngSwitch]=\"agg.op === 'COUNT' ? 'count' : column.Display?.type\">\r\n\r\n <span *ngSwitchCase=\"'count'\">{{ agg.value | number: '1.0-0' }}</span>\r\n <span *ngSwitchCase=\"'percent'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\" class=\"money\">\r\n {{ agg.value | currency: getColCurrency(column) }}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\">\r\n {{agg.value | number: column.Display?.format || '1.0-3'}}\r\n </span>\r\n\r\n <span *ngSwitchDefault>\r\n {{agg.value}}\r\n </span>\r\n\r\n </span>\r\n\r\n </ng-container>\r\n\r\n </td>\r\n\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <td class=\"last-column\"></td>\r\n </ng-container>\r\n\r\n </tr>\r\n </tfoot>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </ng-container>\r\n</div>\r\n\r\n\r\n<!-- Emplacement visé par une colonne déplacée : trait orange sur la séparation des deux en-têtes. -->\r\n<div class=\"col-drop-indicator\" *ngIf=\"dropIndicator\"\r\n [ngStyle]=\"{ left: dropIndicator.left + 'px', top: dropIndicator.top + 'px', height: dropIndicator.height + 'px' }\"></div>\r\n\r\n<!-- Menu d'une colonne (flèche de l'en-tête ou clic droit sur une cellule), en trois zones séparées\r\n par un trait : Tri, Actions (celles du panneau des actions), Fonctions (sous-menu « Fonctions »). -->\r\n<div class=\"header-menu\" *ngIf=\"headerMenu\"\r\n [ngStyle]=\"{ top: headerMenu.y + 'px', left: headerMenu.x + 'px', visibility: headerMenu.ready ? 'visible' : 'hidden' }\"\r\n (click)=\"$event.stopPropagation()\" (contextmenu)=\"$event.preventDefault()\">\r\n <ul>\r\n <!-- Tri -->\r\n <li [class.checked]=\"this.facade.filter.isAsc(headerMenu.column.Property)\" (click)=\"sortColumn('asc')\"\r\n (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-sort-amount-asc\"></i><span>Trier par ordre croissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.isDesc(headerMenu.column.Property)\" (click)=\"sortColumn('desc')\"\r\n (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-sort-amount-desc\"></i><span>Trier par ordre décroissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.getSortList().length > 1\" (click)=\"openCustomSort()\"\r\n (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-sort\"></i><span>Tri personnalisé…</span>\r\n </li>\r\n <!-- Filtre sur la valeur de la cellule (clic droit sur une cellule) : première ligne des filtres composés. -->\r\n <li *ngIf=\"cellFilterValue() !== undefined\" (click)=\"filterOnCell()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-filter\"></i><span>Filtrer sur « {{ cellFilterLabel() }} »</span>\r\n </li>\r\n <!-- Affichage : vues personnalisées (cochée = affichée), puis « Modifier… ». -->\r\n <li *ngIf=\"this.facade.config.viewChooser\" class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'columns'\"\r\n (mouseenter)=\"setSubmenu('columns')\" (click)=\"setSubmenu('columns')\">\r\n <i class=\"fa fa-columns\"></i><span>Affichage</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu header-submenu-columns\" *ngIf=\"headerMenu.submenu === 'columns'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <alg-grid-view-menu [chooser]=\"this.facade.config.viewChooser\" (done)=\"closeViewMenu()\" (loaded)=\"onViewMenuLoaded()\"></alg-grid-view-menu>\r\n </ul>\r\n </li>\r\n <!-- Colonnes figées à gauche, de la première jusqu'à celle-ci. -->\r\n <li [class.checked]=\"isFrozen(columnIndex(headerMenu.column))\" (click)=\"toggleFrozen()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-thumb-tack\"></i>\r\n <span>{{ frozenUntil === columnIndex(headerMenu.column) ? 'Libérer les colonnes' : 'Figer jusqu\\'à cette colonne' }}</span>\r\n </li>\r\n <li *ngIf=\"frozenUntil !== undefined && frozenUntil !== columnIndex(headerMenu.column)\"\r\n (click)=\"unfreezeColumns()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-unlock\"></i><span>Libérer les colonnes</span>\r\n </li>\r\n\r\n <!-- Actions -->\r\n <ng-container *ngIf=\"visibleActions.length > 0\">\r\n <li class=\"separator\"></li>\r\n <ng-container *ngFor=\"let action of visibleActions\">\r\n <ng-container *ngIf=\"{ disabled: (action.disabled$ | async) } as state\">\r\n <li class=\"menu-action\" [class.disabled]=\"state.disabled\"\r\n (click)=\"executeMenuAction(action, state.disabled)\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <img class=\"menu-action-icon\" [src]=\"getActionImageUrl(action.icon)\" [alt]=\"action.title\" />\r\n <span>{{ action.title }}</span>\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Affichage -->\r\n <li class=\"separator\"></li>\r\n <li class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'display'\"\r\n (mouseenter)=\"setSubmenu('display')\" (click)=\"setSubmenu('display')\">\r\n <i class=\"fa fa-calculator\"></i><span>Fonctions</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu\" *ngIf=\"headerMenu.submenu === 'display'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <li *ngFor=\"let op of getAggregationOptions(headerMenu.column)\"\r\n [class.checked]=\"activeAggregations[headerMenu.column.Property] === op\"\r\n (click)=\"aggregateColumn(op)\">\r\n <i class=\"fa fa-check\"></i><span>{{ aggregationLabel(op) }}</span>\r\n </li>\r\n <ng-container *ngIf=\"activeAggregations[headerMenu.column.Property]\">\r\n <li class=\"separator\"></li>\r\n <li (click)=\"aggregateColumn(null)\">\r\n <i class=\"fa fa-times\"></i><span>Ne plus afficher</span>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n",
|
|
19134
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{flex:1}.header.last-column{border-left:none!important;width:100%}table thead .sorting,table thead .sorting_asc,table thead .sorting_desc,table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table thead th:first-child,table tfoot tr:first-child{position:sticky;left:0;z-index:2}table tbody th:first-child{position:sticky;left:0;z-index:1;border-right:none}table tbody th:first-child div{text-align:center;vertical-align:middle;line-height:20px}table tbody tr.row-odd th:first-child{background:#ebf0ff}table tbody tr.selected.row-odd.mw-invalid th:first-child,table tbody tr.selected.row-even.mw-invalid th:first-child,table tbody tr.selected.row-odd.mw-warning th:first-child,table tbody tr.selected.row-even.mw-warning th:first-child,table tbody tr.selected.row-even th:first-child,table tbody tr.selected.row-odd th:first-child{background-color:#8ea7f8;color:#fff}table tbody tr.row-odd.mw-invalid th:first-child,table tbody tr.row-even.mw-invalid th:first-child{background-color:#f2dede}table tbody tr.row-odd.mw-warning th:first-child,table tbody tr.row-even.mw-warning th:first-child{background-color:#fff4de}table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:#fff;border-left:1px solid #3C5DC4;border-bottom:1px solid #3C5DC4}table thead .sorting{background-image:none;cursor:pointer}table thead .sorting_asc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxNjIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxNTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+z5ABTAAAAI5JREFUeNpi/P//PwO1ABMDFQELIQXVjfe4gFQbEJe11iv9otRl2UCcBcSphBQy4gszoKu0gNROIJYB4jtA7AF03V2SXQY0iBFIFUMNAgEVIM6DipPsTQcgDkQTSwRia5IMA9rOC6RqgVgQTQokXgOUZyfFZSFQF/zAgh2BOIjkCBjQRDtq2Khh9DAMIMAAT9AmNBDSXegAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_desc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxQTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxOTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+1fsfwAAAAJdJREFUeNpi/P//PwO1ABMDFcGoYaOG0cMwFmyC1Y33IoHUAiD+h8MBGa31SvOJddk6IN4PxBxY8FEgXkO0N4G2/gRSLUD8GU3qPRA3A+U/kxpmIBege2U9EB/ApYERX6kBDDtlILUDiFWA+AkQuwNddY2s2ARqvAukJgDxbyCehM8gnLGJBmYDsSoQTyWkkHHQFo4AAQYAAA0piq4hbqwAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-image:none}.checkbok-container{align-items:center;margin:0;padding:0}.gridcell-container{padding:0;min-width:fit-content}.gridcell-container input[type=number]{display:block;size:1;font-size:10pt;width:100%!important;height:100%;margin:0!important;border:2px solid #F78383}.datagrid-custom-container{height:100%;overflow:auto;margin-left:-1px}.data-grid-datatable{table-layout:fixed;cursor:pointer;border-spacing:0px}.data-grid-datatable td{box-shadow:none;padding:2px 5px;white-space:nowrap}.data-grid-datatable td.row-state{padding:2px 5px;width:16px}.data-grid-datatable td.img{padding:2px 5px}.data-grid-datatable td.row-state img{height:16px;width:16px;margin-top:-3px;padding:0}.data-grid-datatable tr{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.header{vertical-align:bottom;padding:2px 5px 2px 0;font-weight:400;color:#3c5dc4;white-space:nowrap;line-height:25px;min-width:32px;margin-bottom:5px}.header.img{min-width:16px}.header.row-state{min-width:27px;position:-webkit-sticky;position:sticky;top:0;left:0;z-index:2;background:#fff;border-left:none;border-right:none}.filter-header{background-color:#f7f7f7!important}.filter-header.disabled{background-color:#9fa9c7!important}.filter-header.row-state:hover:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"57\" height=\"57\" viewBox=\"0 0 57 57\">%0D%0A <path id=\"Rond_Croix\" data-name=\"Rond Croix\" d=\"M28.5,57A28.5,28.5,0,0,1,8.347,8.347,28.5,28.5,0,1,1,48.652,48.652,28.317,28.317,0,0,1,28.5,57Zm0-24.036h0l11.9,11.9L44.869,40.4,32.964,28.5,44.869,16.593,40.4,12.129,28.5,24.034,16.594,12.129l-4.465,4.464L24.034,28.5,12.129,40.4l4.463,4.465L28.5,32.965Z\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 0 0 3px;filter:brightness(0) saturate(100%) invert(70%) sepia(93%) saturate(1540%) hue-rotate(309deg) brightness(105%) contrast(94%)}.filter-header-input{height:calc(100% - 2px);width:calc(100% - 2px);margin:0;border:none!important;background-color:#f7f7f7;padding:0 0 0 5px;color:#4d5a81}.header.row-state:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->%0D%0A<path fill=\"currentColor\" d=\"M3.9 54.9C10.5 40.9 24.5 32 40 32l432 0c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9 320 448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6l0-79.1L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z\"/></svg>');background-repeat:no-repeat;margin:0 0 3px 5px;filter:brightness(0) saturate(100%) invert(56%) sepia(79%) saturate(2301%) hue-rotate(202deg) brightness(92%) contrast(91%)}.filter-header.last-column{border-left:none!important}.header label{cursor:pointer;margin-bottom:0;margin-right:10px;padding-left:5px;width:100%}.row-odd{background-color:#ebf0ff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.row-even{background-color:#f7faff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.error-row-icon{padding:2px;width:20px}.selected{background-color:#8ea7f8;color:#fff}.mw-invalid{font-weight:600;background-color:#f2dede;border:1px solid var(--red-error)}.mw-invalid td{background-color:#f2dede!important}.data-grid-datatable tbody tr.mw-invalid>td,.data-grid-datatable tbody tr.mw-invalid>th{box-shadow:inset 0 1px 0 var(--red-error),inset 0 -1px 0 var(--red-error)}span.mw-invalid{padding:0 3px;color:var(--red-error);background-color:transparent}.mw-warning.selected,.mw-invalid.selected{background-color:#8ea7f8}.mw-warning.selected td,.mw-invalid.selected td{background-color:#8ea7f8!important}.mw-warning{font-weight:600;background-color:#fff4de;border:1px solid var(--orange-algorima)}.mw-warning td{background-color:#fff4de!important}.mw-modified{font-weight:600;border:1px solid var(--main-bg-color)}.first-row{border-top:none}.last-row,.last-row td{border-bottom:none!important}.data-grid-datatable>tbody>tr{z-index:50}.image{position:relative;display:flex;flex-direction:row}.image img{height:20px;width:auto}td.money{position:relative}.tool-tip{visibility:hidden;background-color:#424242;color:#fff;text-align:left;border-radius:3px;font-size:15px;position:absolute;z-index:1;top:-10%;left:150%;opacity:0;transition:opacity .3s;padding:5px 15px;white-space:nowrap;overflow:visible}.tool-tip:after{content:\" \";position:absolute;top:50%;right:100%;margin-top:-5px;border-width:5px;border-style:solid;border-color:transparent rgb(66,66,66) transparent transparent}.image:hover .tool-tip{visibility:visible;opacity:1}td.money:hover .tool-tip{visibility:visible;opacity:1;left:100%;height:28px;font-size:13px;margin-top:0;padding:5px 10px 10px}.disabled{pointer-events:none}.edit-mode{background-color:#fff;border:1px solid #4465C9;min-width:90px!important;height:30px!important}.edit-mode .form-group{min-height:0px}.edit-mode .inactivated{background-color:#dbe4ff80}.edit-mode .inactivated-fo{background-color:#dbe4ff}.edit-mode .ecartclass{border:2px solid #4465C9}.edit-mode .error-cell{font-weight:700;color:#f78383!important}.edit-mode .selected{color:#4d5a81}.highlight-1,.highlight-1.selected,.edit-mode.highlight-1.selected{background-color:#4d5a81!important;color:#fff!important}.highlight-2,.highlight-2.selected,.edit-mode.highlight-2.selected{background-color:#dbe4ff!important;color:#4d5a81!important}.highlight-3,.highlight-3.selected,.edit-mode.highlight-3.selected{background-color:#4465c9!important;color:#fff!important}.highlight-4,.highlight-4.selected,.edit-mode.highlight-4.selected{background-color:#f78383!important;color:#fff!important}.highlight-5,.highlight-5.selected{background-color:#4465c9!important;color:#fff}.fixed-column{position:-webkit-sticky;position:sticky;left:27px;z-index:2!important;border-left:none}.fixed-header{position:-webkit-sticky;position:sticky;left:27px;z-index:3!important;background:#fff}.has-focus{padding:0!important}.has-focus ::ng-deep input,.has-focus ::ng-deep input:focus-visible,.has-focus ::ng-deep input:focus{border-radius:.1;outline:none!important;width:100%;height:29px;min-height:0;margin:0;border:1px solid #4465C9}.has-focus ::ng-deep .form-group{margin-bottom:0;min-height:0}.has-focus ::ng-deep .field-container{margin-bottom:0}.edit-mode.has-focus{width:90px!important}.bordered{border-left:1px solid #14358f!important;border-right:1px solid #14358f!important}.match-keywords{color:var(--main-bg-color);font-weight:700}.datagrid-img img{height:20px;width:20px}.right-align{text-align:right}.left-align{text-align:left}.detail-div{height:0px;overflow:hidden;transition:all .2s linear;width:100%}.fa-custom{font-size:smaller}.detail-div-show{height:150px;transition:all .2s linear}.toggleable{visibility:collapse}.toggleable-show{visibility:visible}.toggle-button-down{transform:rotate(90deg);transition:all .2s linear}.no-result{color:#5272d3;height:100%;width:100%;padding:15px 15px 150px}.new-rowstate{display:flex;flex-direction:row;align-items:center;align-self:center;height:100%;width:100%}.new-rowstate span{height:100%;width:100%;margin-top:-6px}.context-menu{position:absolute;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 12px #0000004d;padding:8px;z-index:1000;min-width:75px;max-width:250px;transition:all .3s ease-in-out}.context-menu ul{list-style:none;margin:0;padding:0}.context-menu li{padding:10px 14px;cursor:pointer;border-radius:8px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.context-menu li:hover{background:linear-gradient(135deg,#ffffff4d,#ffffff1a);transform:scale(1.02)}.context-menu li:active{transform:scale(.98)}.grid-container{overflow:auto;position:relative}.aggregation-row{position:sticky;bottom:0;z-index:50;background:#f7faff!important;background-color:#f7faff!important;font-weight:700;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important}.aggregation-row td{background:#f7faff!important;background-color:#f7faff!important;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important;border-left:none!important;border-right:none!important}.empty-row td{padding:0}.col-resizer{position:absolute;top:0;right:-5px;z-index:4;width:10px;height:100%;cursor:col-resize}.col-resizer:hover{background:#3c5dc440}.data-grid-datatable td[data-sized]{overflow:hidden;text-overflow:ellipsis}:where(.data-grid-datatable tbody tr,.data-grid-datatable tfoot tr){background-color:#fff}.data-grid-datatable td[data-frozen]{position:sticky;z-index:1;background-color:inherit}.data-grid-datatable thead th[data-frozen]{position:sticky;z-index:3}.data-grid-datatable td[data-frozen]:has(+td:not([data-frozen])),.data-grid-datatable thead th[data-frozen]:has(+th:not([data-frozen])){box-shadow:inset -2px 0 #3c5dc459}table thead th.header{background-image:none!important;cursor:default}.header-cell{position:relative;display:flex;align-items:center;gap:2px}.header-cell label{flex:1 1 auto;cursor:default;margin:0;padding-left:2px;overflow:hidden;text-overflow:ellipsis}.header-cell.col-dragging{opacity:.8}.dg-column-ghost{border:1px solid #C1D0FD;box-sizing:border-box}.col-drop-indicator{position:fixed;z-index:3100;width:1px;border-radius:0;background:var(--orange-algorima, #f59d0f);pointer-events:none}.header-cell-end{justify-content:flex-end;align-items:center;height:25px}.header-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;box-sizing:content-box;width:17px;height:20px;padding:0 2px;color:#3c5dc4;opacity:.35;cursor:grab}.header-handle:hover{opacity:1}.header-handle:active{cursor:grabbing}.header-sort,.header-agg{flex-shrink:0;color:#3c5dc4;font-size:11px;font-style:normal}.header-menu-button{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:18px;padding:0;border:0;border-radius:3px;background:none;color:#3c5dc4;opacity:.5;cursor:pointer}.header-menu-button:hover,.header-menu-button.open{opacity:1;background:#4465c926}.header-menu{position:fixed;z-index:3000;width:230px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003}.header-menu ul{margin:0;padding:0;list-style:none}.header-menu li{display:flex;align-items:center;gap:8px;padding:5px 12px;color:#3c5dc4;font-size:12.5px;cursor:pointer}.header-menu li i{width:14px;text-align:center;visibility:visible}.header-menu li:hover{background:#dbe4ff}.header-menu li.checked{font-weight:600}.header-menu li.separator{height:1px;margin:4px 0;padding:0;background:#dbe4ff;cursor:default}.header-menu li .fa-check{visibility:hidden}.header-menu li.checked>.fa-check{visibility:visible}.header-menu li.menu-action.disabled{opacity:.45;cursor:default}.header-menu li.menu-action.disabled:hover{background:none}.header-menu .menu-action-icon{width:14px;height:14px}.header-menu li.has-submenu{position:relative}.header-menu li.has-submenu.open{background:#dbe4ff}.header-menu li.has-submenu .submenu-caret{margin-left:auto}.header-menu .header-submenu{position:absolute;top:-5px;left:100%;width:200px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003;font-weight:400}.header-menu .header-submenu.left{left:auto;right:100%}.header-menu .header-submenu.header-submenu-columns{width:240px;max-height:320px;overflow-y:auto}.header-menu .header-submenu .column-choice input[type=checkbox]{width:14px;margin:0;pointer-events:none}.header-menu .header-submenu .submenu-loading{opacity:.6;cursor:default}.header-menu .header-submenu .view-lock{margin-left:auto;padding-left:8px;opacity:.5;font-size:11px}.header-menu .header-submenu.up{top:auto;bottom:-5px}.header-sort-rank{flex-shrink:0;color:#3c5dc4;font-size:9px}.aggregation-row .agg-label{margin-right:4px;color:#3c5dc4;font-size:10.5px;opacity:.7}.datagrid-custom-container:focus,.datagrid-custom-container:focus-visible{outline:none}.data-grid-datatable td .image ::ng-deep img{display:block}.data-grid-datatable td:has(>.grid-cursor){outline:2px solid #4465C9;outline-offset:-2px}.data-grid-datatable td:has(>.grid-range){background-color:#4465c940!important;box-shadow:inset 0 0 0 1px #4465c980;color:#4d5a81!important}.data-grid-datatable td:has(>.grid-range) ::ng-deep *{color:#4d5a81!important}.data-grid-datatable td:has(.grid-editor){padding:0!important;background-color:#fff}.grid-editor{display:block;height:23px;overflow:visible;color:#4d5a81}.grid-editor ::ng-deep .field-container,.grid-editor ::ng-deep .form-group,.grid-editor ::ng-deep .form-group>div,.grid-editor ::ng-deep .checkbox-container{margin:0!important;padding:0;min-height:0!important;height:23px}.grid-editor ::ng-deep .validation-message,.grid-editor ::ng-deep .checkbox-label{display:none}.grid-editor ::ng-deep input,.grid-editor ::ng-deep input:focus,.grid-editor ::ng-deep textarea{box-sizing:border-box;width:100%;height:23px!important;min-height:0!important;margin:0!important;padding:0 4px;border:1px solid #4465C9;border-radius:0;box-shadow:none;font-size:inherit;line-height:normal;resize:none}.grid-editor ::ng-deep input.ng-invalid.ng-touched,.grid-editor ::ng-deep input.ng-invalid.ng-dirty{border-color:#f78383}.grid-editor ::ng-deep input[type=checkbox]{width:auto}.grid-editor ::ng-deep .ng-select .ng-select-container{color:#4d5a81;min-height:0!important;height:23px!important;border-radius:0;border-color:#4465c9}.grid-editor ::ng-deep .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container{padding-top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container .ng-input>input{height:100%!important;border:none}.grid-editor ::ng-deep .form-group>div{flex:1;min-width:0;width:100%}.grid-editor ::ng-deep .ng-select{width:100%}.grid-editor ::ng-deep alg-selector{display:flex;width:100%;height:23px}.grid-editor ::ng-deep .input-select-default,.grid-editor ::ng-deep .input-select-default.with-button{flex:1;min-width:0;padding-right:0;margin-right:0}.grid-editor ::ng-deep .input-group-btn{float:none}.grid-editor ::ng-deep .btn,.grid-editor ::ng-deep .btn-32,.grid-editor ::ng-deep .btn-input-select{height:23px;width:23px;padding:0;line-height:1;border-radius:0}.grid-editor ::ng-deep .input-with-button{display:flex;height:23px}.grid-editor ::ng-deep .switch{margin:2px 0 0 4px;transform:scale(.7);transform-origin:left top}::ng-deep body.dg-column-dragging,::ng-deep body.dg-column-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}\n"]
|
|
19452
|
+
template: "<div #datagridContainer [class]=\"this.datagridClass\" tabindex=\"-1\" (keydown)=\"onGridKeyDown($event)\" (scroll)=\"onGridScroll($event)\"\r\n (copy)=\"onCopy($event)\" (paste)=\"onPaste($event)\" (contextmenu)=\"openEmptyAreaContextMenu($event)\">\r\n <ng-container>\r\n <table class=\"data-grid-datatable\">\r\n <ng-container *ngIf=\"this.facade.style as ctx\">\r\n <ng-container *ngIf=\"this.facade.config.columns$ | async as rcolumns\">\r\n <thead>\r\n <tr>\r\n <th class=\"header row-state\" (click)=\"addFilterQuery()\"></th>\r\n <!-- En-tête : poignée de déplacement à gauche, intitulé, indicateur de tri,\r\n flèche du menu (tri, agrégation) à droite. Le clic ne trie plus. -->\r\n <th #thHeader *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-col-' + col.Property\"\r\n [attr.class]=\"'header' | gridStyle : ctx : { column : col }\"\r\n [style.width.px]=\"colWidth(col)\" [style.min-width.px]=\"colWidth(col)\" [style.max-width.px]=\"colWidth(col)\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n <div class=\"header-cell\"\r\n [class.col-dragging]=\"draggedColumn === col.Property\">\r\n <span class=\"header-handle\" title=\"Déplacer la colonne\"\r\n (mousedown)=\"onHeaderMouseDown(col, $event)\">\r\n <i class=\"fa fa-ellipsis-v\"></i>\r\n </span>\r\n <label>{{ getHeaderLabel(col) }}</label>\r\n <i *ngIf=\"this.facade.filter.isAsc(col.Property)\" class=\"fa fa-long-arrow-up header-sort\" title=\"Tri croissant\"></i>\r\n <i *ngIf=\"this.facade.filter.isDesc(col.Property)\" class=\"fa fa-long-arrow-down header-sort\" title=\"Tri décroissant\"></i>\r\n <sup *ngIf=\"this.facade.filter.sortRank(col.Property) > 0\" class=\"header-sort-rank\"\r\n title=\"Rang dans le tri personnalisé\">{{ this.facade.filter.sortRank(col.Property) }}</sup>\r\n <i *ngIf=\"activeAggregations[col.Property]\" class=\"header-agg\" [title]=\"'Agrégation : ' + aggregationLabel(activeAggregations[col.Property])\">Σ</i>\r\n <!-- Dernière colonne suivie de la colonne vide de fin : sa flèche est dans la colonne vide. -->\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n *ngIf=\"!(ctx.enableLastColumnResize && i === rcolumns.length - 1)\"\r\n [class.open]=\"headerMenu?.column.Property === col.Property\"\r\n (click)=\"toggleHeaderMenu(col, $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n <!-- Bord droit : largeur de la colonne (tirer), ajustée au contenu (double clic). -->\r\n <span class=\"col-resizer\" title=\"Largeur de la colonne (double clic : ajuster au contenu)\"\r\n (mousedown)=\"startResize(col, $event)\" (dblclick)=\"autoFitColumn(col, $event)\"\r\n (click)=\"$event.stopPropagation()\"></span>\r\n </th>\r\n <th *ngIf=\"ctx.enableLastColumnResize\" #lastColumnHeader class=\"header last-column\"\r\n (contextmenu)=\"openHeaderContextMenu($event, rcolumns[rcolumns.length - 1])\">\r\n <div class=\"header-cell header-cell-end\" *ngIf=\"rcolumns.length > 0\">\r\n <button type=\"button\" class=\"header-menu-button\" title=\"Trier, agréger\"\r\n [class.open]=\"headerMenu?.column.Property === rcolumns[rcolumns.length - 1].Property\"\r\n (click)=\"toggleHeaderMenu(rcolumns[rcolumns.length - 1], $event)\">\r\n <i class=\"fa fa-caret-down\"></i>\r\n </button>\r\n </div>\r\n </th>\r\n\r\n </tr>\r\n <ng-container *ngIf=\"this.facade.filter.additionalQuery$ | async as additionalQuery\">\r\n <tr #thFilterRows *ngFor=\"let filterRow of additionalQuery.Rows;let i = index\" >\r\n <th class=\"filter-header row-state\" (click)=\"removeFilterQuery(i)\"></th>\r\n <th class=\"filter-header\" [ngClass]=\"{disabled: !col.IsFilterEnabled}\" *ngFor=\"let col of rcolumns;let i = index\"\r\n [attr.id]=\"guid.toString() + '-filter-' + i\">\r\n <input *ngIf=\"col.IsFilterEnabled\" type=\"text\"\r\n class=\"filter-header-input\"\r\n name=\"keyword\"\r\n #uniquename=\"ngModel\"\r\n [attr.id]=\"guid.toString() + '-filter-input-' + col.Property\"\r\n [placeholder]=\"filterRow.ClausesByPropertyName.get(col.Property).FilterValues?.length ? 'Filtre avancé : ' + filterRow.ClausesByPropertyName.get(col.Property).FilterValues.length + ' valeur(s)' : ''\"\r\n [(ngModel)]=\"filterRow.ClausesByPropertyName.get(col.Property).FilterValue\"\r\n (ngModelChange)=\"handleFilterChanged($event, filterRow, col.Property)\"\r\n (change)=\"validateFilterChanged($event, filterRow, col.Property)\"\r\n />\r\n </th>\r\n <ng-container>\r\n <th #lastColumnFilter class=\"filter-header last-column\"></th>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </thead>\r\n\r\n <tbody>\r\n <ng-container *ngIf=\"this.facade.data\">\r\n <ng-container *ngFor=\"let row of this.data.Values; let r = index;\">\r\n <tr\r\n [class]=\"'alternating' | gridStyle : ctx : { row : row, index : r, maxIndex : this.data.Values.length, hasAggregates: hasAggregates }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n [attr.id]=\"guid.toString() + '-row-' + row.Id\"\r\n (mousedown)=\"onRowMouseDown(row, $event)\"\r\n (mouseup)=\"onRowMouseUp(row, $event)\"\r\n (click)=\"onRowClick(row, $event)\"\r\n\r\n [rowRef]=\"guid + '-row-' + row.Id\"\r\n >\r\n\r\n <th [attr.class]=\"'rowstate' | gridStyle : ctx : { row : row }\">\r\n <ng-container *ngIf=\"selectionStyler.isModified(row) && !selectionStyler.isInvalid(row) && !selectionStyler.isWarning(row)\">\r\n <div class=\"new-rowstate\"><span>...</span></div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/error.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectionStyler.isWarning(row) && !selectionStyler.isInvalid(row)\">\r\n <div> <img class=\"error-row-icon\" src=\"assets/images/warning.svg\" /> </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ctx.displayDetail\">\r\n <button type=\"button\" [attr.id]=\"row.Id + '_button'\" class=\"toggle-button btn\" (click)=\"toggleDetail(row)\">\r\n <i class=\"fa fa-chevron-right fa-custom\"></i>\r\n </button>\r\n </ng-container>\r\n </th>\r\n\r\n <td *ngFor=\"let column of rcolumns; index as i\"\r\n [attr.id]=\"cellId(row, column)\"\r\n [style.max-width.px]=\"colWidth(column)\" [attr.data-sized]=\"colWidth(column) ? '' : null\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\"\r\n [class]=\"'cell' | gridStyle : ctx : { row : row,column : column,index : r }\"\r\n [class.selected]=\"isRowSelected(row)\"\r\n (mousedown)=\"onCellMouseDown(r, i, $event)\"\r\n (mouseenter)=\"onCellMouseEnter(r, i, $event)\"\r\n (click)=\"onCellClick(row, column)\"\r\n (dblclick)=\"onCellDblClick(row, column)\">\r\n\r\n <alg-datagrid-cell #dataGridCellComponent\r\n class=\"gridcell-container\"\r\n [entity]=\"row\"\r\n [isEditable]=\"canEditCell(row, column)\"\r\n [property]=\"column.Property\"\r\n [managed]=\"true\"\r\n [mode]=\"showEditor(row, column) ? 'edit' : 'view'\"\r\n [class.grid-cursor]=\"isCursorCell(row, column)\"\r\n [class.grid-range]=\"isInRange(r, i)\"\r\n (contextmenu)=\"openContextMenu($event, row, column)\">\r\n\r\n <ng-template alg-editMode>\r\n <!-- Éditeur du champ du formulaire qui correspond à la colonne (sinon déduit de la colonne), à la hauteur de la ligne. -->\r\n <alg-field class=\"grid-editor\"\r\n [field]=\"getEditField(column)\"\r\n [form]=\"getRowForm(row)\"\r\n [showLabel]=\"false\"\r\n (propertyChanged)=\"onCellChanged(row, $event)\"\r\n >\r\n <!-- [focusable]=\"cellFocus\" -->\r\n </alg-field>\r\n </ng-template>\r\n <ng-template alg-viewMode>\r\n\r\n <div [ngSwitch]=\"column.Display?.type\" *ngIf=\"!isUndefined(row[column.Property])\">\r\n <div *ngSwitchCase=\"'url'\">\r\n <a [routerLink]=\"[$safeNavigationMigration(column.Display?.baseUrl),row[column.Property]]\">\r\n {{ row.Id || row[column.Property] }}\r\n </a>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"20\" [imageWidth]=\"20\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'img-file'\" class=\"image\">\r\n\r\n <alg-image\r\n [imageUrl]=\"this.getImageUrl(row,column)\" [wide]=\"true\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"'wide-img'\" class=\"image\">\r\n <img *ngIf=\"column.Display?.imagePath?.length == 0\"\r\n [src]=\"(column.Display?.imgBase || '') + (column.Display?.sourceProperty ? row[column.Display?.sourceProperty] : row[column.Property])\" />\r\n\r\n <alg-image *ngIf=\"column.Display?.imagePath?.length != 0\" [wide]=\"true\"\r\n [imageUrl]=\"this.getEnumImageUrl(row,column)\" [imageHeight]=\"40\" [imageWidth]=\"40\">\r\n </alg-image>\r\n\r\n <div class=\"tool-tip\" *ngIf=\"!isUndefined(column.ToolTipProperty)\">\r\n {{ row[column.ToolTipProperty] }}\r\n </div>\r\n </div>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{row[column.Property]| date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'boolean'\">{{row[column.Property] ? 'OUI' : 'NON'}} </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">{{row[column.Property] | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\"\r\n class=\"money\">\r\n {{\r\n row[column.Property]\r\n | currency: column.Display?.currency\r\n || (column.Display?.sourceProperty && row[column.Display?.sourceProperty] ? row[column.Display?.sourceProperty] : false)\r\n || 'EUR' : 'symbol'\r\n\r\n | todefine: $safeNavigationMigration(column.Display?.handleError)\r\n }}\r\n\r\n <div class=\"tool-tip\" *ngIf=\"ctx.showOnToolTip(row,column)\">\r\n {{ctx.showOnToolTip(row,column)}}\r\n </div>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'percent'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | percent : column.Display?.format\r\n || '1.0-2' | todefine: $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] * $safeNavigationMigration(column.Display?.multiplier) | number: column.Display?.format\r\n || '1.0-3' | todefine : $safeNavigationMigration(column.Display?.handleError)}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\"\r\n [class.red]=\"!row[column.Property] && column.Display?.handleError\">\r\n {{row[column.Property] | tofixedsizeinteger : $safeNavigationMigration(column.Display?.completingCaracter) : $safeNavigationMigration(column.Display?.width) }}\r\n </span>\r\n <span *ngSwitchDefault [innerText]=\"column.Property == 'Id' ? (row[column.Property] < 0 ? '' : row[column.Property]) : row[column.Property]\">\r\n </span>\r\n </div>\r\n\r\n <div *ngIf=\"isUndefined(row[column.Property])\">\r\n <span *ngIf=\"!isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\" class=\"mw-invalid\">\r\n {{ column.Display?.nullCaseText }}\r\n </span>\r\n\r\n <span *ngIf=\"isUndefined($safeNavigationMigration(column.Display?.nullCaseText))\">\r\n \r\n </span>\r\n </div>\r\n\r\n </ng-template>\r\n\r\n </alg-datagrid-cell>\r\n </td>\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <!-- Colonne vide de fin : clic droit = menu de la dernière colonne. -->\r\n <td (contextmenu)=\"openContextMenu($event, row, rcolumns[rcolumns.length - 1])\"></td>\r\n </ng-container>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n </tbody>\r\n\r\n <tfoot>\r\n <tr class=\"empty-row\" *ngIf=\"hasAggregates\">\r\n <td></td>\r\n </tr>\r\n <tr class=\"aggregation-row\" *ngIf=\"hasAggregates\">\r\n <td class=\"row-state\"></td>\r\n <td *ngFor=\"let column of rcolumns; index as i\" [attr.class]=\"'cell' | gridStyle : ctx : { column : column, index : i }\"\r\n [attr.data-frozen]=\"isFrozen(i) ? '' : null\" [style.left.px]=\"frozenLeft(i)\">\r\n\r\n <ng-container *ngFor=\"let agg of columnAggregates[column.Property]\">\r\n\r\n <span class=\"agg-label\">{{ aggregationLabel(agg.op) }}</span>\r\n <span [ngSwitch]=\"agg.op === 'COUNT' ? 'count' : column.Display?.type\">\r\n\r\n <span *ngSwitchCase=\"'count'\">{{ agg.value | number: '1.0-0' }}</span>\r\n <span *ngSwitchCase=\"'percent'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n <span *ngSwitchCase=\"'fixedsizeinteger'\">{{ agg.value | number: column.Display?.format || '1.0-3' }}</span>\r\n\r\n <span *ngSwitchCase=\"'money'\" class=\"money\">\r\n {{ agg.value | currency: getColCurrency(column) }}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'date'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'datetime'\">\r\n {{agg.value | date: column.Display?.format || 'dd/MM/yyyy HH:mm:ss'}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'number'\">\r\n {{agg.value | number: column.Display?.format || '1.0-3'}}\r\n </span>\r\n\r\n <span *ngSwitchDefault>\r\n {{agg.value}}\r\n </span>\r\n\r\n </span>\r\n\r\n </ng-container>\r\n\r\n </td>\r\n\r\n <ng-container *ngIf=\"ctx.enableLastColumnResize\">\r\n <td class=\"last-column\"></td>\r\n </ng-container>\r\n\r\n </tr>\r\n </tfoot>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </ng-container>\r\n</div>\r\n\r\n\r\n<!-- Emplacement visé par une colonne déplacée : trait orange sur la séparation des deux en-têtes. -->\r\n<div class=\"col-drop-indicator\" *ngIf=\"dropIndicator\"\r\n [ngStyle]=\"{ left: dropIndicator.left + 'px', top: dropIndicator.top + 'px', height: dropIndicator.height + 'px' }\"></div>\r\n\r\n<!-- Menu d'une colonne (flèche de l'en-tête ou clic droit sur une cellule), en trois zones séparées\r\n par un trait : Tri (sous-menu « Trier »), Actions (celles du panneau des actions), Fonctions (sous-menu « Fonctions »). -->\r\n<div class=\"header-menu\" *ngIf=\"headerMenu\"\r\n [ngStyle]=\"{ top: headerMenu.y + 'px', left: headerMenu.x + 'px', visibility: headerMenu.ready ? 'visible' : 'hidden' }\"\r\n (click)=\"$event.stopPropagation()\" (contextmenu)=\"$event.preventDefault()\">\r\n <ul>\r\n <!-- Tri : sous-menu « Trier » (croissant, décroissant, personnalisé). -->\r\n <li class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'sort'\"\r\n [class.checked]=\"this.facade.filter.isAsc(headerMenu.column.Property) || this.facade.filter.isDesc(headerMenu.column.Property) || this.facade.filter.getSortList().length > 1\"\r\n (mouseenter)=\"setSubmenu('sort')\" (click)=\"setSubmenu('sort')\">\r\n <i class=\"fa fa-sort\"></i><span>Trier</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu\" *ngIf=\"headerMenu.submenu === 'sort'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <li [class.checked]=\"this.facade.filter.isAsc(headerMenu.column.Property)\" (click)=\"sortColumn('asc')\">\r\n <i class=\"fa fa-sort-amount-asc\"></i><span>Par ordre croissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.isDesc(headerMenu.column.Property)\" (click)=\"sortColumn('desc')\">\r\n <i class=\"fa fa-sort-amount-desc\"></i><span>Par ordre décroissant</span>\r\n </li>\r\n <li [class.checked]=\"this.facade.filter.getSortList().length > 1\" (click)=\"openCustomSort()\">\r\n <i class=\"fa fa-sort\"></i><span>Tri personnalisé…</span>\r\n </li>\r\n </ul>\r\n </li>\r\n <!-- Filtre sur la valeur de la cellule (clic droit sur une cellule) : première ligne des filtres composés. -->\r\n <li *ngIf=\"cellFilterValue() !== undefined\" (click)=\"filterOnCell()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-filter\"></i><span>Filtrer sur « {{ cellFilterLabel() }} »</span>\r\n </li>\r\n <!-- Filtre avancé : valeurs distinctes de la colonne sur les résultats, à cocher (condition « dans la liste »). -->\r\n <li *ngIf=\"headerMenu.column.IsFilterEnabled\" class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'distinct'\"\r\n [class.checked]=\"this.facade.filter.getFilterValues(headerMenu.column.Property).length > 0\"\r\n (mouseenter)=\"setSubmenu('distinct')\" (click)=\"setSubmenu('distinct')\">\r\n <i class=\"fa fa-filter\"></i><span>Filtre avancé</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu header-submenu-distinct\" *ngIf=\"headerMenu.submenu === 'distinct'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <alg-grid-distinct-filter [facade]=\"this.facade\" [entityKey]=\"this.entityKey\" [property]=\"headerMenu.column.Property\"\r\n (done)=\"closeViewMenu()\" (loaded)=\"onViewMenuLoaded()\"></alg-grid-distinct-filter>\r\n </ul>\r\n </li>\r\n <!-- Affichage : vues personnalisées (cochée = affichée), puis « Modifier… ». -->\r\n <li *ngIf=\"this.facade.config.viewChooser\" class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'columns'\"\r\n (mouseenter)=\"setSubmenu('columns')\" (click)=\"setSubmenu('columns')\">\r\n <i class=\"fa fa-columns\"></i><span>Affichage</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu header-submenu-columns\" *ngIf=\"headerMenu.submenu === 'columns'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <alg-grid-view-menu [chooser]=\"this.facade.config.viewChooser\" (done)=\"closeViewMenu()\" (loaded)=\"onViewMenuLoaded()\"></alg-grid-view-menu>\r\n </ul>\r\n </li>\r\n <!-- Colonnes figées à gauche, de la première jusqu'à celle-ci. -->\r\n <li [class.checked]=\"isFrozen(columnIndex(headerMenu.column))\" (click)=\"toggleFrozen()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-thumb-tack\"></i>\r\n <span>{{ frozenUntil === columnIndex(headerMenu.column) ? 'Libérer les colonnes' : 'Figer jusqu\\'à cette colonne' }}</span>\r\n </li>\r\n <li *ngIf=\"frozenUntil !== undefined && frozenUntil !== columnIndex(headerMenu.column)\"\r\n (click)=\"unfreezeColumns()\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <i class=\"fa fa-unlock\"></i><span>Libérer les colonnes</span>\r\n </li>\r\n\r\n <!-- Actions -->\r\n <ng-container *ngIf=\"visibleActions.length > 0\">\r\n <li class=\"separator\"></li>\r\n <ng-container *ngFor=\"let action of visibleActions\">\r\n <ng-container *ngIf=\"{ disabled: (action.disabled$ | async) } as state\">\r\n <li class=\"menu-action\" [class.disabled]=\"state.disabled\"\r\n (click)=\"executeMenuAction(action, state.disabled)\" (mouseenter)=\"setSubmenu(undefined)\">\r\n <img class=\"menu-action-icon\" [src]=\"getActionImageUrl(action.icon)\" [alt]=\"action.title\" />\r\n <span>{{ action.title }}</span>\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Affichage -->\r\n <li class=\"separator\"></li>\r\n <li class=\"has-submenu\" [class.open]=\"headerMenu.submenu === 'display'\"\r\n (mouseenter)=\"setSubmenu('display')\" (click)=\"setSubmenu('display')\">\r\n <i class=\"fa fa-calculator\"></i><span>Fonctions</span><i class=\"fa fa-caret-right submenu-caret\"></i>\r\n\r\n <ul class=\"header-submenu\" *ngIf=\"headerMenu.submenu === 'display'\"\r\n [class.left]=\"headerMenu.submenuLeft\" [class.up]=\"headerMenu.submenuUp\"\r\n (click)=\"$event.stopPropagation()\">\r\n <li *ngFor=\"let op of getAggregationOptions(headerMenu.column)\"\r\n [class.checked]=\"activeAggregations[headerMenu.column.Property] === op\"\r\n (click)=\"aggregateColumn(op)\">\r\n <i class=\"fa fa-check\"></i><span>{{ aggregationLabel(op) }}</span>\r\n </li>\r\n <ng-container *ngIf=\"activeAggregations[headerMenu.column.Property]\">\r\n <li class=\"separator\"></li>\r\n <li (click)=\"aggregateColumn(null)\">\r\n <i class=\"fa fa-times\"></i><span>Ne plus afficher</span>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ul>\r\n</div>\r\n\r\n",
|
|
19453
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{flex:1}.header.last-column{border-left:none!important;width:100%}table thead .sorting,table thead .sorting_asc,table thead .sorting_desc,table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table thead th:first-child,table tfoot tr:first-child{position:sticky;left:0;z-index:2}table tbody th:first-child{position:sticky;left:0;z-index:1;border-right:none}table tbody th:first-child div{text-align:center;vertical-align:middle;line-height:20px}table tbody tr.row-odd th:first-child{background:#ebf0ff}table tbody tr.selected.row-odd.mw-invalid th:first-child,table tbody tr.selected.row-even.mw-invalid th:first-child,table tbody tr.selected.row-odd.mw-warning th:first-child,table tbody tr.selected.row-even.mw-warning th:first-child,table tbody tr.selected.row-even th:first-child,table tbody tr.selected.row-odd th:first-child{background-color:#8ea7f8;color:#fff}table tbody tr.row-odd.mw-invalid th:first-child,table tbody tr.row-even.mw-invalid th:first-child{background-color:#f2dede}table tbody tr.row-odd.mw-warning th:first-child,table tbody tr.row-even.mw-warning th:first-child{background-color:#fff4de}table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:#fff;border-left:1px solid #3C5DC4;border-bottom:1px solid #3C5DC4}table thead .sorting{background-image:none;cursor:pointer}table thead .sorting_asc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxNjIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxNTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+z5ABTAAAAI5JREFUeNpi/P//PwO1ABMDFQELIQXVjfe4gFQbEJe11iv9otRl2UCcBcSphBQy4gszoKu0gNROIJYB4jtA7AF03V2SXQY0iBFIFUMNAgEVIM6DipPsTQcgDkQTSwRia5IMA9rOC6RqgVgQTQokXgOUZyfFZSFQF/zAgh2BOIjkCBjQRDtq2Khh9DAMIMAAT9AmNBDSXegAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_desc{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowMTgwMTE3NDA3MjA2ODExQjM4MkY2QzVGRUYwRTJDNCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4MkFEQzYxQTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4MkFEQzYxOTIyQzExMUUxQTFGMUFEQUQ1QjJBNTM4QyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IE1hY2ludG9zaCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjAyODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAxODAxMTc0MDcyMDY4MTFCMzgyRjZDNUZFRjBFMkM0Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+1fsfwAAAAJdJREFUeNpi/P//PwO1ABMDFcGoYaOG0cMwFmyC1Y33IoHUAiD+h8MBGa31SvOJddk6IN4PxBxY8FEgXkO0N4G2/gRSLUD8GU3qPRA3A+U/kxpmIBege2U9EB/ApYERX6kBDDtlILUDiFWA+AkQuwNddY2s2ARqvAukJgDxbyCehM8gnLGJBmYDsSoQTyWkkHHQFo4AAQYAAA0piq4hbqwAAAAASUVORK5CYII=);cursor:pointer}table thead .sorting_asc_disabled,table thead .sorting_desc_disabled{background-image:none}.checkbok-container{align-items:center;margin:0;padding:0}.gridcell-container{padding:0;min-width:fit-content}.gridcell-container input[type=number]{display:block;size:1;font-size:10pt;width:100%!important;height:100%;margin:0!important;border:2px solid #F78383}.datagrid-custom-container{height:100%;overflow:auto;margin-left:-1px}.data-grid-datatable{table-layout:fixed;cursor:pointer;border-spacing:0px}.data-grid-datatable td{box-shadow:none;padding:2px 5px;white-space:nowrap}.data-grid-datatable td.row-state{padding:2px 5px;width:16px}.data-grid-datatable td.img{padding:2px 5px}.data-grid-datatable td.row-state img{height:16px;width:16px;margin-top:-3px;padding:0}.data-grid-datatable tr{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.header{vertical-align:bottom;padding:2px 5px 2px 0;font-weight:400;color:#3c5dc4;white-space:nowrap;line-height:25px;min-width:32px;margin-bottom:5px}.header.img{min-width:16px}.header.row-state{min-width:27px;position:-webkit-sticky;position:sticky;top:0;left:0;z-index:2;background:#fff;border-left:none;border-right:none}.filter-header{background-color:#f7f7f7!important}.filter-header.disabled{background-color:#9fa9c7!important}.filter-header.row-state:hover:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"57\" height=\"57\" viewBox=\"0 0 57 57\">%0D%0A <path id=\"Rond_Croix\" data-name=\"Rond Croix\" d=\"M28.5,57A28.5,28.5,0,0,1,8.347,8.347,28.5,28.5,0,1,1,48.652,48.652,28.317,28.317,0,0,1,28.5,57Zm0-24.036h0l11.9,11.9L44.869,40.4,32.964,28.5,44.869,16.593,40.4,12.129,28.5,24.034,16.594,12.129l-4.465,4.464L24.034,28.5,12.129,40.4l4.463,4.465L28.5,32.965Z\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 0 0 3px;filter:brightness(0) saturate(100%) invert(70%) sepia(93%) saturate(1540%) hue-rotate(309deg) brightness(105%) contrast(94%)}.filter-header-input{height:calc(100% - 2px);width:calc(100% - 2px);margin:0;border:none!important;background-color:#f7f7f7;padding:0 0 0 5px;color:#4d5a81}.header.row-state:before{position:relative;display:block;float:left;width:16px;height:16px;content:\" \";background-size:16px 16px;-webkit-background-size:16px 16px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.-->%0D%0A<path fill=\"currentColor\" d=\"M3.9 54.9C10.5 40.9 24.5 32 40 32l432 0c15.5 0 29.5 8.9 36.1 22.9s4.6 30.5-5.2 42.5L320 320.9 320 448c0 12.1-6.8 23.2-17.7 28.6s-23.8 4.3-33.5-3l-64-48c-8.1-6-12.8-15.5-12.8-25.6l0-79.1L9 97.3C-.7 85.4-2.8 68.8 3.9 54.9z\"/></svg>');background-repeat:no-repeat;margin:0 0 3px 5px;filter:brightness(0) saturate(100%) invert(56%) sepia(79%) saturate(2301%) hue-rotate(202deg) brightness(92%) contrast(91%)}.filter-header.last-column{border-left:none!important}.header label{cursor:pointer;margin-bottom:0;margin-right:10px;padding-left:5px;width:100%}.row-odd{background-color:#ebf0ff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.row-even{background-color:#f7faff;border-left:1px solid #C1D0FD;border-bottom:1px solid #C1D0FD}.error-row-icon{padding:2px;width:20px}.selected{background-color:#8ea7f8;color:#fff}.mw-invalid{font-weight:600;background-color:#f2dede;border:1px solid var(--red-error)}.mw-invalid td{background-color:#f2dede!important}.data-grid-datatable tbody tr.mw-invalid>td,.data-grid-datatable tbody tr.mw-invalid>th{box-shadow:inset 0 1px 0 var(--red-error),inset 0 -1px 0 var(--red-error)}span.mw-invalid{padding:0 3px;color:var(--red-error);background-color:transparent}.mw-warning.selected,.mw-invalid.selected{background-color:#8ea7f8}.mw-warning.selected td,.mw-invalid.selected td{background-color:#8ea7f8!important}.mw-warning{font-weight:600;background-color:#fff4de;border:1px solid var(--orange-algorima)}.mw-warning td{background-color:#fff4de!important}.mw-modified{font-weight:600;border:1px solid var(--main-bg-color)}.first-row{border-top:none}.last-row,.last-row td{border-bottom:none!important}.data-grid-datatable>tbody>tr{z-index:50}.image{position:relative;display:flex;flex-direction:row}.image img{height:20px;width:auto}td.money{position:relative}.tool-tip{visibility:hidden;background-color:#424242;color:#fff;text-align:left;border-radius:3px;font-size:15px;position:absolute;z-index:1;top:-10%;left:150%;opacity:0;transition:opacity .3s;padding:5px 15px;white-space:nowrap;overflow:visible}.tool-tip:after{content:\" \";position:absolute;top:50%;right:100%;margin-top:-5px;border-width:5px;border-style:solid;border-color:transparent rgb(66,66,66) transparent transparent}.image:hover .tool-tip{visibility:visible;opacity:1}td.money:hover .tool-tip{visibility:visible;opacity:1;left:100%;height:28px;font-size:13px;margin-top:0;padding:5px 10px 10px}.disabled{pointer-events:none}.edit-mode{background-color:#fff;border:1px solid #4465C9;min-width:90px!important;height:30px!important}.edit-mode .form-group{min-height:0px}.edit-mode .inactivated{background-color:#dbe4ff80}.edit-mode .inactivated-fo{background-color:#dbe4ff}.edit-mode .ecartclass{border:2px solid #4465C9}.edit-mode .error-cell{font-weight:700;color:#f78383!important}.edit-mode .selected{color:#4d5a81}.highlight-1,.highlight-1.selected,.edit-mode.highlight-1.selected{background-color:#4d5a81!important;color:#fff!important}.highlight-2,.highlight-2.selected,.edit-mode.highlight-2.selected{background-color:#dbe4ff!important;color:#4d5a81!important}.highlight-3,.highlight-3.selected,.edit-mode.highlight-3.selected{background-color:#4465c9!important;color:#fff!important}.highlight-4,.highlight-4.selected,.edit-mode.highlight-4.selected{background-color:#f78383!important;color:#fff!important}.highlight-5,.highlight-5.selected{background-color:#4465c9!important;color:#fff}.fixed-column{position:-webkit-sticky;position:sticky;left:27px;z-index:2!important;border-left:none}.fixed-header{position:-webkit-sticky;position:sticky;left:27px;z-index:3!important;background:#fff}.has-focus{padding:0!important}.has-focus ::ng-deep input,.has-focus ::ng-deep input:focus-visible,.has-focus ::ng-deep input:focus{border-radius:.1;outline:none!important;width:100%;height:29px;min-height:0;margin:0;border:1px solid #4465C9}.has-focus ::ng-deep .form-group{margin-bottom:0;min-height:0}.has-focus ::ng-deep .field-container{margin-bottom:0}.edit-mode.has-focus{width:90px!important}.bordered{border-left:1px solid #14358f!important;border-right:1px solid #14358f!important}.match-keywords{color:var(--main-bg-color);font-weight:700}.datagrid-img img{height:20px;width:20px}.right-align{text-align:right}.left-align{text-align:left}.detail-div{height:0px;overflow:hidden;transition:all .2s linear;width:100%}.fa-custom{font-size:smaller}.detail-div-show{height:150px;transition:all .2s linear}.toggleable{visibility:collapse}.toggleable-show{visibility:visible}.toggle-button-down{transform:rotate(90deg);transition:all .2s linear}.no-result{color:#5272d3;height:100%;width:100%;padding:15px 15px 150px}.new-rowstate{display:flex;flex-direction:row;align-items:center;align-self:center;height:100%;width:100%}.new-rowstate span{height:100%;width:100%;margin-top:-6px}.context-menu{position:absolute;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 12px #0000004d;padding:8px;z-index:1000;min-width:75px;max-width:250px;transition:all .3s ease-in-out}.context-menu ul{list-style:none;margin:0;padding:0}.context-menu li{padding:10px 14px;cursor:pointer;border-radius:8px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.context-menu li:hover{background:linear-gradient(135deg,#ffffff4d,#ffffff1a);transform:scale(1.02)}.context-menu li:active{transform:scale(.98)}.grid-container{overflow:auto;position:relative}.aggregation-row{position:sticky;bottom:0;z-index:50;background:#f7faff!important;background-color:#f7faff!important;font-weight:700;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important}.aggregation-row td{background:#f7faff!important;background-color:#f7faff!important;border-top:1px solid #4D5A81!important;border-bottom:1px solid #4D5A81!important;border-left:none!important;border-right:none!important}.empty-row td{padding:0}.col-resizer{position:absolute;top:0;right:-5px;z-index:4;width:10px;height:100%;cursor:col-resize}.col-resizer:hover{background:#3c5dc440}.data-grid-datatable td[data-sized]{overflow:hidden;text-overflow:ellipsis}:where(.data-grid-datatable tbody tr,.data-grid-datatable tfoot tr){background-color:#fff}.data-grid-datatable td[data-frozen]{position:sticky;z-index:1;background-color:inherit}.data-grid-datatable thead th[data-frozen]{position:sticky;z-index:3}.data-grid-datatable td[data-frozen]:has(+td:not([data-frozen])),.data-grid-datatable thead th[data-frozen]:has(+th:not([data-frozen])){box-shadow:inset -2px 0 #3c5dc459}table thead th.header{background-image:none!important;cursor:default}.header-cell{position:relative;display:flex;align-items:center;gap:2px}.header-cell label{flex:1 1 auto;cursor:default;margin:0;padding-left:2px;overflow:hidden;text-overflow:ellipsis}.header-cell.col-dragging{opacity:.8}.dg-column-ghost{border:1px solid #C1D0FD;box-sizing:border-box}.col-drop-indicator{position:fixed;z-index:3100;width:1px;border-radius:0;background:var(--orange-algorima, #f59d0f);pointer-events:none}.header-cell-end{justify-content:flex-end;align-items:center;height:25px}.header-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;box-sizing:content-box;width:17px;height:20px;padding:0 2px;color:#3c5dc4;opacity:.35;cursor:grab}.header-handle:hover{opacity:1}.header-handle:active{cursor:grabbing}.header-sort,.header-agg{flex-shrink:0;color:#3c5dc4;font-size:11px;font-style:normal}.header-menu-button{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:18px;padding:0;border:0;border-radius:3px;background:none;color:#3c5dc4;opacity:.5;cursor:pointer}.header-menu-button:hover,.header-menu-button.open{opacity:1;background:#4465c926}.header-menu{position:fixed;z-index:3000;width:230px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003}.header-menu ul{margin:0;padding:0;list-style:none}.header-menu li{display:flex;align-items:center;gap:8px;padding:5px 12px;color:#3c5dc4;font-size:12.5px;cursor:pointer}.header-menu li i{width:14px;text-align:center;visibility:visible}.header-menu li:hover{background:#dbe4ff}.header-menu li.checked{font-weight:600}.header-menu li.separator{height:1px;margin:4px 0;padding:0;background:#dbe4ff;cursor:default}.header-menu li .fa-check{visibility:hidden}.header-menu li.checked>.fa-check{visibility:visible}.header-menu li.menu-action.disabled{opacity:.45;cursor:default}.header-menu li.menu-action.disabled:hover{background:none}.header-menu .menu-action-icon{width:14px;height:14px;filter:brightness(0) saturate(100%) invert(36%) sepia(91%) saturate(628%) hue-rotate(191deg) brightness(89%) contrast(85%) brightness(75%)}.header-menu li.has-submenu{position:relative}.header-menu li.has-submenu.open{background:#dbe4ff}.header-menu li.has-submenu .submenu-caret{margin-left:auto}.header-menu .header-submenu{position:absolute;top:-5px;left:100%;width:200px;padding:4px 0;background:#fff;border:1px solid #DBE4FF;border-radius:5px;box-shadow:0 4px 14px #0003;font-weight:400}.header-menu .header-submenu.left{left:auto;right:100%}.header-menu .header-submenu.header-submenu-distinct{width:240px}.header-menu .header-submenu.header-submenu-columns{width:240px;max-height:320px;overflow-y:auto}.header-menu .header-submenu .column-choice input[type=checkbox]{width:14px;margin:0;pointer-events:none}.header-menu .header-submenu .submenu-loading{opacity:.6;cursor:default}.header-menu .header-submenu .view-lock{margin-left:auto;padding-left:8px;opacity:.5;font-size:11px}.header-menu .header-submenu.up{top:auto;bottom:-5px}.header-sort-rank{flex-shrink:0;color:#3c5dc4;font-size:9px}.aggregation-row .agg-label{margin-right:4px;color:#3c5dc4;font-size:10.5px;opacity:.7}.datagrid-custom-container:focus,.datagrid-custom-container:focus-visible{outline:none}.data-grid-datatable td .image ::ng-deep img{display:block}.data-grid-datatable td:has(>.grid-cursor){outline:2px solid #4465C9;outline-offset:-2px}.data-grid-datatable td:has(>.grid-range){background-color:#4465c940!important;box-shadow:inset 0 0 0 1px #4465c980;color:#4d5a81!important}.data-grid-datatable td:has(>.grid-range) ::ng-deep *{color:#4d5a81!important}.data-grid-datatable td:has(.grid-editor){padding:0!important;background-color:#fff}.grid-editor{display:block;height:23px;overflow:visible;color:#4d5a81}.grid-editor ::ng-deep .field-container,.grid-editor ::ng-deep .form-group,.grid-editor ::ng-deep .form-group>div,.grid-editor ::ng-deep .checkbox-container{margin:0!important;padding:0;min-height:0!important;height:23px}.grid-editor ::ng-deep .validation-message,.grid-editor ::ng-deep .checkbox-label{display:none}.grid-editor ::ng-deep input,.grid-editor ::ng-deep input:focus,.grid-editor ::ng-deep textarea{box-sizing:border-box;width:100%;height:23px!important;min-height:0!important;margin:0!important;padding:0 4px;border:1px solid #4465C9;border-radius:0;box-shadow:none;font-size:inherit;line-height:normal;resize:none}.grid-editor ::ng-deep input.ng-invalid.ng-touched,.grid-editor ::ng-deep input.ng-invalid.ng-dirty{border-color:#f78383}.grid-editor ::ng-deep input[type=checkbox]{width:auto}.grid-editor ::ng-deep .ng-select .ng-select-container{color:#4d5a81;min-height:0!important;height:23px!important;border-radius:0;border-color:#4465c9}.grid-editor ::ng-deep .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container{padding-top:0}.grid-editor ::ng-deep .ng-select .ng-select-container .ng-value-container .ng-input>input{height:100%!important;border:none}.grid-editor ::ng-deep .form-group>div{flex:1;min-width:0;width:100%}.grid-editor ::ng-deep .ng-select{width:100%}.grid-editor ::ng-deep alg-selector{display:flex;width:100%;height:23px}.grid-editor ::ng-deep .input-select-default,.grid-editor ::ng-deep .input-select-default.with-button{flex:1;min-width:0;padding-right:0;margin-right:0}.grid-editor ::ng-deep .input-group-btn{float:none}.grid-editor ::ng-deep .btn,.grid-editor ::ng-deep .btn-32,.grid-editor ::ng-deep .btn-input-select{height:23px;width:23px;padding:0;line-height:1;border-radius:0}.grid-editor ::ng-deep .input-with-button{display:flex;height:23px}.grid-editor ::ng-deep .switch{margin:2px 0 0 4px;transform:scale(.7);transform-origin:left top}::ng-deep body.dg-column-dragging,::ng-deep body.dg-column-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}\n"]
|
|
19135
19454
|
}]
|
|
19136
19455
|
}],
|
|
19137
19456
|
ctorParameters: () => [
|
|
@@ -20165,6 +20484,8 @@ var FilterSummaryPanelComponent = class FilterSummaryPanelComponent {
|
|
|
20165
20484
|
this.currentCriteria = null;
|
|
20166
20485
|
this.hiddenFilters = [];
|
|
20167
20486
|
this.destroy$ = new Subject();
|
|
20487
|
+
this.keptFilters = /* @__PURE__ */ new Set();
|
|
20488
|
+
this.openedProperty = null;
|
|
20168
20489
|
}
|
|
20169
20490
|
ngOnInit() {
|
|
20170
20491
|
this.facade = this.entityFacadeRegistryService.getFacade(this.entityKey, this.guid);
|
|
@@ -20203,12 +20524,21 @@ var FilterSummaryPanelComponent = class FilterSummaryPanelComponent {
|
|
|
20203
20524
|
}
|
|
20204
20525
|
}
|
|
20205
20526
|
updateFieldSummary(field) {
|
|
20206
|
-
|
|
20207
|
-
|
|
20527
|
+
let displayedVal = this.getFilterSummaryValue(field);
|
|
20528
|
+
const kept = this.canOpenList(field);
|
|
20529
|
+
if (displayedVal !== null && displayedVal !== void 0) {
|
|
20530
|
+
if (kept) this.keptFilters.add(field.PropertyName);
|
|
20531
|
+
} else if (kept && this.keptFilters.has(field.PropertyName)) displayedVal = this.emptyLabel(field);
|
|
20532
|
+
else return;
|
|
20533
|
+
this.filterList.push({
|
|
20208
20534
|
DisplayedValue: displayedVal,
|
|
20209
20535
|
Field: field
|
|
20210
20536
|
});
|
|
20211
20537
|
}
|
|
20538
|
+
emptyLabel(field) {
|
|
20539
|
+
const item = (Array.isArray(field.OriginalData) ? field.OriginalData : Array.isArray(field.Data) ? field.Data : []).find((d) => d?.[field.ValueMember] === -1);
|
|
20540
|
+
return item?.[field.DisplayMember] != null ? `${item[field.DisplayMember]}` : "Tous";
|
|
20541
|
+
}
|
|
20212
20542
|
getFilterSummaryValue(field) {
|
|
20213
20543
|
if (!field) return null;
|
|
20214
20544
|
const fv = this.currentCriteria != null ? this.currentCriteria[field.PropertyName] : this.wrapper.form.get(field.PropertyName)?.value;
|
|
@@ -20223,10 +20553,42 @@ var FilterSummaryPanelComponent = class FilterSummaryPanelComponent {
|
|
|
20223
20553
|
else return null;
|
|
20224
20554
|
return displayedValue;
|
|
20225
20555
|
}
|
|
20556
|
+
set listSelect(select) {
|
|
20557
|
+
if (select) setTimeout(() => {
|
|
20558
|
+
select.open();
|
|
20559
|
+
select.focus();
|
|
20560
|
+
});
|
|
20561
|
+
}
|
|
20562
|
+
canOpenList(field) {
|
|
20563
|
+
return (field.FilterType === FilterType.ComboBox || field.FilterType === FilterType.HorizComboBox) && Array.isArray(field.Data) && !field.MultipleSelection && !field.ReadOnly && !(field.PropertyName in this.facade.filter.lockedPanel);
|
|
20564
|
+
}
|
|
20565
|
+
openList(field) {
|
|
20566
|
+
this.openedProperty = field.PropertyName;
|
|
20567
|
+
}
|
|
20568
|
+
closeList() {
|
|
20569
|
+
this.openedProperty = null;
|
|
20570
|
+
}
|
|
20571
|
+
currentValue(field) {
|
|
20572
|
+
return this.currentCriteria != null ? this.currentCriteria[field.PropertyName] : this.wrapper.form.get(field.PropertyName)?.value;
|
|
20573
|
+
}
|
|
20574
|
+
selectValue(field, item) {
|
|
20575
|
+
this.closeList();
|
|
20576
|
+
if (Utilities.IsNil(item)) return;
|
|
20577
|
+
this.keptFilters.add(field.PropertyName);
|
|
20578
|
+
this.wrapper.form.get(field.PropertyName)?.setValue(item[field.ValueMember], { emitEvent: false });
|
|
20579
|
+
this.facade.filter.setFilter(this.wrapper.form.getRawValue());
|
|
20580
|
+
}
|
|
20581
|
+
canClear(field) {
|
|
20582
|
+
return field.IsClearable && !(field.PropertyName in this.facade.filter.lockedPanel);
|
|
20583
|
+
}
|
|
20226
20584
|
resetFormControl(field) {
|
|
20227
|
-
if (!
|
|
20585
|
+
if (!this.canClear(field)) return;
|
|
20586
|
+
this.keptFilters.delete(field.PropertyName);
|
|
20228
20587
|
const currentValue = this.currentCriteria != null ? this.currentCriteria[field.PropertyName] : this.wrapper.form.get(field.PropertyName)?.value;
|
|
20229
|
-
if (Utilities.IsNil(currentValue) || currentValue === -1 || Utilities.isEmptyString(currentValue))
|
|
20588
|
+
if (Utilities.IsNil(currentValue) || currentValue === -1 || Utilities.isEmptyString(currentValue)) {
|
|
20589
|
+
this.updateSummary();
|
|
20590
|
+
return;
|
|
20591
|
+
}
|
|
20230
20592
|
let newValue;
|
|
20231
20593
|
if (field.FilterType === FilterType.ComboBox) newValue = field.Data?.find((d) => d[field.ValueMember] === -1) ? -1 : null;
|
|
20232
20594
|
else if (field.FilterType === FilterType.String) newValue = "";
|
|
@@ -20297,28 +20659,138 @@ var FilterSummaryPanelComponent = class FilterSummaryPanelComponent {
|
|
|
20297
20659
|
entityKey: "entityKey",
|
|
20298
20660
|
guid: "guid"
|
|
20299
20661
|
},
|
|
20300
|
-
|
|
20301
|
-
|
|
20302
|
-
|
|
20303
|
-
|
|
20304
|
-
|
|
20305
|
-
type: i1$5.NgForOf,
|
|
20306
|
-
selector: "[ngFor][ngForOf]",
|
|
20307
|
-
inputs: [
|
|
20308
|
-
"ngForOf",
|
|
20309
|
-
"ngForTrackBy",
|
|
20310
|
-
"ngForTemplate"
|
|
20311
|
-
]
|
|
20312
|
-
}, {
|
|
20313
|
-
kind: "directive",
|
|
20314
|
-
type: i1$5.NgIf,
|
|
20315
|
-
selector: "[ngIf]",
|
|
20316
|
-
inputs: [
|
|
20317
|
-
"ngIf",
|
|
20318
|
-
"ngIfThen",
|
|
20319
|
-
"ngIfElse"
|
|
20320
|
-
]
|
|
20662
|
+
viewQueries: [{
|
|
20663
|
+
propertyName: "listSelect",
|
|
20664
|
+
first: true,
|
|
20665
|
+
predicate: ["listSelect"],
|
|
20666
|
+
descendants: true
|
|
20321
20667
|
}],
|
|
20668
|
+
ngImport: i0,
|
|
20669
|
+
template: "<!-- <div class=\"clearfix\" *ngIf=\"!isEmptyFilter()\">\r\n <div class=\"filter-summary\">\r\n <div class=\"filter\" [formGroup]=\"wrapper.form\">\r\n <ng-container *ngIf=\"filterList\">\r\n \r\n <div *ngFor=\"let field of Fields\" class=\"option\">\r\n <div [ngSwitch]=\"field.FilterType\">\r\n <div *ngSwitchCase=\"filterType.String\" class=\"form-group\">\r\n <input\r\n class=\"form-control\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n [type]=\"field.InputType\"\r\n />\r\n </div>\r\n <div\r\n *ngSwitchCase=\"filterType.Integer\"\r\n class=\"form-group\"\r\n >\r\n <div>\r\n <input\r\n class=\"form-control\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n type=\"number\"\r\n focusable\r\n ng-pattern=\"/^[0-9]+$/\"\r\n tabindex=\"0\"\r\n />\r\n </div>\r\n <div *ngSwitchCase=\"filterType.ComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n placeholder=\"Sélectionner {{\r\n field.Label\r\n }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n [clearable]=\"field.IsClearable\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n [selectOnTab]=\"true\"\r\n [readonly]=\"field.ReadOnly\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div> -->\r\n\r\n\r\n<div class=\"clearfix\" *ngIf=\"!isEmptyFilter()\">\r\n <!-- Filtre fixé par la vue affichée : non modifiable à l'écran. -->\r\n <div class=\"view-filter\" *ngIf=\"viewFilterText\" [class.editing]=\"editingViewFilter\">\r\n <i class=\"fa\" [class.fa-lock]=\"!editingViewFilter\" [class.fa-unlock]=\"editingViewFilter\"></i>\r\n <span class=\"view-filter-text\" [title]=\"viewFilterText\">{{ viewFilterText }}</span>\r\n <!-- Mode édition (propriétaire de la vue ou administrateur) : filtres débloqués, puis réenregistrés. -->\r\n <ng-container *ngIf=\"canEditViewFilter\">\r\n <button *ngIf=\"!editingViewFilter\" type=\"button\" class=\"view-filter-btn\" title=\"Débloquer les filtres de la vue pour les modifier\"\r\n (click)=\"editViewFilter()\"><i class=\"fa fa-pencil\"></i> Modifier</button>\r\n <ng-container *ngIf=\"editingViewFilter\">\r\n <button type=\"button\" class=\"view-filter-btn primary\" title=\"Enregistrer dans la vue le tri et les filtres de l'écran\"\r\n (click)=\"saveViewFilter()\"><i class=\"fa fa-check\"></i> Enregistrer</button>\r\n <button type=\"button\" class=\"view-filter-btn\" title=\"Revenir aux filtres de la vue\" (click)=\"cancelViewFilter()\">Annuler</button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"filter-summary\" *ngIf=\"filterList.length\">\r\n <div class=\"filter\">\r\n <ng-container *ngIf=\"filterList\">\r\n <div *ngFor=\"let field of filterList\">\r\n <!-- Filtre à choix limités : un clic sur le rappel déroule sa liste dessous, le rappel reste affiché tel quel.\r\n La croix rouge supprime le filtre et son rappel,\r\n qui reste sinon affiché même sans valeur (« Tous »). -->\r\n <ng-container *ngIf=\"canOpenList(field.Field); else plainOption\">\r\n <div class=\"option list opens-list\" [class.opened]=\"openedProperty === field.Field.PropertyName\"\r\n title=\"Choisir {{ field.Field.Label }}\" (click)=\"openList(field.Field)\">\r\n {{field.Field.Label + ' : '+ field.DisplayedValue}}\r\n <i class=\"fa fa-caret-down option-caret\"></i>\r\n <i *ngIf=\"canClear(field.Field)\" class=\"fa fa-times option-clear\" title=\"Supprimer le filtre {{ field.Field.Label }}\"\r\n (click)=\"$event.stopPropagation(); resetFormControl(field.Field)\"></i>\r\n <!-- Liste invisible posée sur le rappel : seule sa liste déroulée s'affiche. -->\r\n <ng-select *ngIf=\"openedProperty === field.Field.PropertyName\"\r\n #listSelect\r\n class=\"option-select\"\r\n appendTo=\"body\"\r\n panelClass=\"filter-summary-panel\"\r\n [searchable]=\"false\"\r\n [items]=\"field.Field.Data\"\r\n [bindLabel]=\"field.Field.DisplayMember\"\r\n [bindValue]=\"field.Field.ValueMember\"\r\n [clearable]=\"false\"\r\n [ngModel]=\"currentValue(field.Field)\"\r\n (click)=\"$event.stopPropagation()\"\r\n (change)=\"selectValue(field.Field, $event)\"\r\n (close)=\"closeList()\"\r\n >\r\n </ng-select>\r\n </div>\r\n </ng-container>\r\n <ng-template #plainOption>\r\n <div class=\"option list\">\r\n {{field.Field.Label + ' : '+ field.DisplayedValue}}\r\n <i *ngIf=\"canClear(field.Field)\" class=\"fa fa-times option-clear\" title=\"Supprimer le filtre {{ field.Field.Label }}\"\r\n (click)=\"resetFormControl(field.Field)\"></i>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
20670
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.view-filter{display:flex;align-items:center;gap:6px;padding:4px 8px;border-bottom:solid 1px var(--main-bg-color);color:#4465c9;font-size:12px}.view-filter>.fa{opacity:.7}.view-filter.editing{background:#ebf0ff}.view-filter-text{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-filter-btn{flex:none;padding:1px 8px;border:1px solid #DBE4FF;border-radius:4px;background:#fff;color:#4465c9;font-size:12px;cursor:pointer}.view-filter-btn.primary{background:#4465c9;border-color:#4465c9;color:#fff}.filter-summary{padding:2px 3px;border-bottom:solid 1px var(--main-bg-color);display:flex}.option alg-field .form-group{display:flex!important}.filter-summary .filter{display:flex;flex-direction:row;padding:2px}.filter-summary .filter .option{display:block;float:left;position:relative;background-color:#dbe4ff;text-transform:capitalize;color:#4465c9;padding:5px 10px;margin:0 5px 0 0;border-radius:20px;cursor:pointer;-webkit-transition:background-color .1s ease-out;-moz-transition:background-color .1s ease-out;-o-transition:background-color .1s ease-out;transition:background-color .1s ease-out;border-left:1px solid #ffffff}.filter-summary .filter .option.list{display:flex;align-items:center;gap:6px;cursor:default}.filter-summary .filter .option.list .option-caret,.filter-summary .filter .option.list .option-clear{display:inline-block;padding:0 2px;cursor:pointer;opacity:.7}.filter-summary .filter .option.list .option-caret:hover,.filter-summary .filter .option.list .option-clear:hover{opacity:1}.filter-summary .filter .option.list .option-clear{color:#f78383;visibility:hidden}.filter-summary .filter .option.list:hover .option-clear{visibility:visible}.filter-summary .filter .option.list.opens-list{cursor:pointer}.filter-summary .filter .option.list.opened{border-radius:4px 4px 0 0;box-shadow:inset 0 0 0 1px #4465c9}.filter-summary .filter .option-select{position:absolute;inset:0;opacity:0}.filter-summary .filter .option-select ::ng-deep .ng-select-container{min-height:0;height:100%;cursor:pointer}::ng-deep .ng-dropdown-panel.filter-summary-panel{min-width:180px;margin-top:-1px;border:1px solid #4465C9;border-radius:0 0 4px 4px;overflow:hidden;box-shadow:0 4px 12px #0000001f}::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option{padding:5px 10px;background-color:#fff;color:#4465c9;font-weight:400}::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option.ng-option-marked,::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{background-color:#dbe4ff;color:#4465c9}::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option .ng-option-label{font-weight:400}.filter-summary .filter:before,.filter-summary .filter:after{content:\"\";display:table}.filter-summary:before,.filter-summary:after{content:\"\";display:table}\n"],
|
|
20671
|
+
dependencies: [
|
|
20672
|
+
{
|
|
20673
|
+
kind: "directive",
|
|
20674
|
+
type: i1$5.NgForOf,
|
|
20675
|
+
selector: "[ngFor][ngForOf]",
|
|
20676
|
+
inputs: [
|
|
20677
|
+
"ngForOf",
|
|
20678
|
+
"ngForTrackBy",
|
|
20679
|
+
"ngForTemplate"
|
|
20680
|
+
]
|
|
20681
|
+
},
|
|
20682
|
+
{
|
|
20683
|
+
kind: "directive",
|
|
20684
|
+
type: i1$5.NgIf,
|
|
20685
|
+
selector: "[ngIf]",
|
|
20686
|
+
inputs: [
|
|
20687
|
+
"ngIf",
|
|
20688
|
+
"ngIfThen",
|
|
20689
|
+
"ngIfElse"
|
|
20690
|
+
]
|
|
20691
|
+
},
|
|
20692
|
+
{
|
|
20693
|
+
kind: "directive",
|
|
20694
|
+
type: i5.NgControlStatus,
|
|
20695
|
+
selector: "[formControlName],[ngModel],[formControl]"
|
|
20696
|
+
},
|
|
20697
|
+
{
|
|
20698
|
+
kind: "directive",
|
|
20699
|
+
type: i5.NgModel,
|
|
20700
|
+
selector: "[ngModel]:not([formControlName]):not([formControl])",
|
|
20701
|
+
inputs: [
|
|
20702
|
+
"name",
|
|
20703
|
+
"disabled",
|
|
20704
|
+
"ngModel",
|
|
20705
|
+
"ngModelOptions"
|
|
20706
|
+
],
|
|
20707
|
+
outputs: ["ngModelChange"],
|
|
20708
|
+
exportAs: ["ngModel"]
|
|
20709
|
+
},
|
|
20710
|
+
{
|
|
20711
|
+
kind: "component",
|
|
20712
|
+
type: i6.NgSelectComponent,
|
|
20713
|
+
selector: "ng-select",
|
|
20714
|
+
inputs: [
|
|
20715
|
+
"ariaLabelDropdown",
|
|
20716
|
+
"ariaLabel",
|
|
20717
|
+
"markFirst",
|
|
20718
|
+
"placeholder",
|
|
20719
|
+
"fixedPlaceholder",
|
|
20720
|
+
"notFoundText",
|
|
20721
|
+
"typeToSearchText",
|
|
20722
|
+
"preventToggleOnRightClick",
|
|
20723
|
+
"addTagText",
|
|
20724
|
+
"loadingText",
|
|
20725
|
+
"clearAllText",
|
|
20726
|
+
"removeText",
|
|
20727
|
+
"dropdownPosition",
|
|
20728
|
+
"appendTo",
|
|
20729
|
+
"outsideClickEvent",
|
|
20730
|
+
"loading",
|
|
20731
|
+
"closeOnSelect",
|
|
20732
|
+
"closeOnScroll",
|
|
20733
|
+
"hideSelected",
|
|
20734
|
+
"selectOnTab",
|
|
20735
|
+
"openOnEnter",
|
|
20736
|
+
"maxSelectedItems",
|
|
20737
|
+
"groupBy",
|
|
20738
|
+
"groupValue",
|
|
20739
|
+
"bufferAmount",
|
|
20740
|
+
"virtualScroll",
|
|
20741
|
+
"selectableGroup",
|
|
20742
|
+
"tabFocusOnClearButton",
|
|
20743
|
+
"selectableGroupAsModel",
|
|
20744
|
+
"searchFn",
|
|
20745
|
+
"trackByFn",
|
|
20746
|
+
"clearOnBackspace",
|
|
20747
|
+
"labelForId",
|
|
20748
|
+
"inputAttrs",
|
|
20749
|
+
"tabIndex",
|
|
20750
|
+
"readonly",
|
|
20751
|
+
"searchWhileComposing",
|
|
20752
|
+
"minTermLength",
|
|
20753
|
+
"editableSearchTerm",
|
|
20754
|
+
"ngClass",
|
|
20755
|
+
"panelClass",
|
|
20756
|
+
"typeahead",
|
|
20757
|
+
"multiple",
|
|
20758
|
+
"addTag",
|
|
20759
|
+
"searchable",
|
|
20760
|
+
"clearable",
|
|
20761
|
+
"clearKeepsDisabledOptions",
|
|
20762
|
+
"deselectOnClick",
|
|
20763
|
+
"clearSearchOnAdd",
|
|
20764
|
+
"compareWith",
|
|
20765
|
+
"keyDownFn",
|
|
20766
|
+
"popover",
|
|
20767
|
+
"bindLabel",
|
|
20768
|
+
"bindValue",
|
|
20769
|
+
"appearance",
|
|
20770
|
+
"isOpen",
|
|
20771
|
+
"items"
|
|
20772
|
+
],
|
|
20773
|
+
outputs: [
|
|
20774
|
+
"bindLabelChange",
|
|
20775
|
+
"bindValueChange",
|
|
20776
|
+
"appearanceChange",
|
|
20777
|
+
"isOpenChange",
|
|
20778
|
+
"itemsChange",
|
|
20779
|
+
"blur",
|
|
20780
|
+
"focus",
|
|
20781
|
+
"change",
|
|
20782
|
+
"open",
|
|
20783
|
+
"close",
|
|
20784
|
+
"search",
|
|
20785
|
+
"clear",
|
|
20786
|
+
"add",
|
|
20787
|
+
"remove",
|
|
20788
|
+
"scroll",
|
|
20789
|
+
"scrollToEnd"
|
|
20790
|
+
],
|
|
20791
|
+
exportAs: ["ngSelect"]
|
|
20792
|
+
}
|
|
20793
|
+
],
|
|
20322
20794
|
changeDetection: i0.ChangeDetectionStrategy.Eager
|
|
20323
20795
|
});
|
|
20324
20796
|
}
|
|
@@ -20334,8 +20806,8 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
20334
20806
|
selector: "alg-filter-summary-panel",
|
|
20335
20807
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
20336
20808
|
standalone: false,
|
|
20337
|
-
template: "<!-- <div class=\"clearfix\" *ngIf=\"!isEmptyFilter()\">\r\n <div class=\"filter-summary\">\r\n <div class=\"filter\" [formGroup]=\"wrapper.form\">\r\n <ng-container *ngIf=\"filterList\">\r\n \r\n <div *ngFor=\"let field of Fields\" class=\"option\">\r\n <div [ngSwitch]=\"field.FilterType\">\r\n <div *ngSwitchCase=\"filterType.String\" class=\"form-group\">\r\n <input\r\n class=\"form-control\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n [type]=\"field.InputType\"\r\n />\r\n </div>\r\n <div\r\n *ngSwitchCase=\"filterType.Integer\"\r\n class=\"form-group\"\r\n >\r\n <div>\r\n <input\r\n class=\"form-control\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n type=\"number\"\r\n focusable\r\n ng-pattern=\"/^[0-9]+$/\"\r\n tabindex=\"0\"\r\n />\r\n </div>\r\n <div *ngSwitchCase=\"filterType.ComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n placeholder=\"Sélectionner {{\r\n field.Label\r\n }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n [clearable]=\"field.IsClearable\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n [selectOnTab]=\"true\"\r\n [readonly]=\"field.ReadOnly\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div> -->\r\n\r\n\r\n<div class=\"clearfix\" *ngIf=\"!isEmptyFilter()\">\r\n <!-- Filtre fixé par la vue affichée : non modifiable à l'écran. -->\r\n <div class=\"view-filter\" *ngIf=\"viewFilterText\" [class.editing]=\"editingViewFilter\">\r\n <i class=\"fa\" [class.fa-lock]=\"!editingViewFilter\" [class.fa-unlock]=\"editingViewFilter\"></i>\r\n <span class=\"view-filter-text\" [title]=\"viewFilterText\">{{ viewFilterText }}</span>\r\n <!-- Mode édition (propriétaire de la vue ou administrateur) : filtres débloqués, puis réenregistrés. -->\r\n <ng-container *ngIf=\"canEditViewFilter\">\r\n <button *ngIf=\"!editingViewFilter\" type=\"button\" class=\"view-filter-btn\" title=\"Débloquer les filtres de la vue pour les modifier\"\r\n (click)=\"editViewFilter()\"><i class=\"fa fa-pencil\"></i> Modifier</button>\r\n <ng-container *ngIf=\"editingViewFilter\">\r\n <button type=\"button\" class=\"view-filter-btn primary\" title=\"Enregistrer dans la vue le tri et les filtres de l'écran\"\r\n (click)=\"saveViewFilter()\"><i class=\"fa fa-check\"></i> Enregistrer</button>\r\n <button type=\"button\" class=\"view-filter-btn\" title=\"Revenir aux filtres de la vue\" (click)=\"cancelViewFilter()\">Annuler</button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"filter-summary\" *ngIf=\"filterList.length\">\r\n <div class=\"filter\">\r\n <ng-container *ngIf=\"filterList\">\r\n <div *ngFor=\"let field of filterList\">\r\n <div class=\"option\" [class.
|
|
20338
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.view-filter{display:flex;align-items:center;gap:6px;padding:4px 8px;border-bottom:solid 1px var(--main-bg-color);color:#4465c9;font-size:12px}.view-filter>.fa{opacity:.7}.view-filter.editing{background:#ebf0ff}.view-filter-text{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-filter-btn{flex:none;padding:1px 8px;border:1px solid #DBE4FF;border-radius:4px;background:#fff;color:#4465c9;font-size:12px;cursor:pointer}.view-filter-btn.primary{background:#4465c9;border-color:#4465c9;color:#fff}.filter-summary{padding:2px 3px;border-bottom:solid 1px var(--main-bg-color);display:flex}.option alg-field .form-group{display:flex!important}.filter-summary .filter{display:flex;flex-direction:row;padding:2px}.filter-summary .filter .option{display:block;float:left;position:relative;background-color:#dbe4ff;text-transform:capitalize;color:#4465c9;padding:5px 10px;margin:0 5px 0 0;border-radius:20px;cursor:pointer;-webkit-transition:background-color .1s ease-out;-moz-transition:background-color .1s ease-out;-o-transition:background-color .1s ease-out;transition:background-color .1s ease-out;border-left:1px solid #ffffff}.filter-summary .filter .option.
|
|
20809
|
+
template: "<!-- <div class=\"clearfix\" *ngIf=\"!isEmptyFilter()\">\r\n <div class=\"filter-summary\">\r\n <div class=\"filter\" [formGroup]=\"wrapper.form\">\r\n <ng-container *ngIf=\"filterList\">\r\n \r\n <div *ngFor=\"let field of Fields\" class=\"option\">\r\n <div [ngSwitch]=\"field.FilterType\">\r\n <div *ngSwitchCase=\"filterType.String\" class=\"form-group\">\r\n <input\r\n class=\"form-control\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n [type]=\"field.InputType\"\r\n />\r\n </div>\r\n <div\r\n *ngSwitchCase=\"filterType.Integer\"\r\n class=\"form-group\"\r\n >\r\n <div>\r\n <input\r\n class=\"form-control\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n type=\"number\"\r\n focusable\r\n ng-pattern=\"/^[0-9]+$/\"\r\n tabindex=\"0\"\r\n />\r\n </div>\r\n <div *ngSwitchCase=\"filterType.ComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n placeholder=\"Sélectionner {{\r\n field.Label\r\n }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n [clearable]=\"field.IsClearable\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n [selectOnTab]=\"true\"\r\n [readonly]=\"field.ReadOnly\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div> -->\r\n\r\n\r\n<div class=\"clearfix\" *ngIf=\"!isEmptyFilter()\">\r\n <!-- Filtre fixé par la vue affichée : non modifiable à l'écran. -->\r\n <div class=\"view-filter\" *ngIf=\"viewFilterText\" [class.editing]=\"editingViewFilter\">\r\n <i class=\"fa\" [class.fa-lock]=\"!editingViewFilter\" [class.fa-unlock]=\"editingViewFilter\"></i>\r\n <span class=\"view-filter-text\" [title]=\"viewFilterText\">{{ viewFilterText }}</span>\r\n <!-- Mode édition (propriétaire de la vue ou administrateur) : filtres débloqués, puis réenregistrés. -->\r\n <ng-container *ngIf=\"canEditViewFilter\">\r\n <button *ngIf=\"!editingViewFilter\" type=\"button\" class=\"view-filter-btn\" title=\"Débloquer les filtres de la vue pour les modifier\"\r\n (click)=\"editViewFilter()\"><i class=\"fa fa-pencil\"></i> Modifier</button>\r\n <ng-container *ngIf=\"editingViewFilter\">\r\n <button type=\"button\" class=\"view-filter-btn primary\" title=\"Enregistrer dans la vue le tri et les filtres de l'écran\"\r\n (click)=\"saveViewFilter()\"><i class=\"fa fa-check\"></i> Enregistrer</button>\r\n <button type=\"button\" class=\"view-filter-btn\" title=\"Revenir aux filtres de la vue\" (click)=\"cancelViewFilter()\">Annuler</button>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"filter-summary\" *ngIf=\"filterList.length\">\r\n <div class=\"filter\">\r\n <ng-container *ngIf=\"filterList\">\r\n <div *ngFor=\"let field of filterList\">\r\n <!-- Filtre à choix limités : un clic sur le rappel déroule sa liste dessous, le rappel reste affiché tel quel.\r\n La croix rouge supprime le filtre et son rappel,\r\n qui reste sinon affiché même sans valeur (« Tous »). -->\r\n <ng-container *ngIf=\"canOpenList(field.Field); else plainOption\">\r\n <div class=\"option list opens-list\" [class.opened]=\"openedProperty === field.Field.PropertyName\"\r\n title=\"Choisir {{ field.Field.Label }}\" (click)=\"openList(field.Field)\">\r\n {{field.Field.Label + ' : '+ field.DisplayedValue}}\r\n <i class=\"fa fa-caret-down option-caret\"></i>\r\n <i *ngIf=\"canClear(field.Field)\" class=\"fa fa-times option-clear\" title=\"Supprimer le filtre {{ field.Field.Label }}\"\r\n (click)=\"$event.stopPropagation(); resetFormControl(field.Field)\"></i>\r\n <!-- Liste invisible posée sur le rappel : seule sa liste déroulée s'affiche. -->\r\n <ng-select *ngIf=\"openedProperty === field.Field.PropertyName\"\r\n #listSelect\r\n class=\"option-select\"\r\n appendTo=\"body\"\r\n panelClass=\"filter-summary-panel\"\r\n [searchable]=\"false\"\r\n [items]=\"field.Field.Data\"\r\n [bindLabel]=\"field.Field.DisplayMember\"\r\n [bindValue]=\"field.Field.ValueMember\"\r\n [clearable]=\"false\"\r\n [ngModel]=\"currentValue(field.Field)\"\r\n (click)=\"$event.stopPropagation()\"\r\n (change)=\"selectValue(field.Field, $event)\"\r\n (close)=\"closeList()\"\r\n >\r\n </ng-select>\r\n </div>\r\n </ng-container>\r\n <ng-template #plainOption>\r\n <div class=\"option list\">\r\n {{field.Field.Label + ' : '+ field.DisplayedValue}}\r\n <i *ngIf=\"canClear(field.Field)\" class=\"fa fa-times option-clear\" title=\"Supprimer le filtre {{ field.Field.Label }}\"\r\n (click)=\"resetFormControl(field.Field)\"></i>\r\n </div>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
20810
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.view-filter{display:flex;align-items:center;gap:6px;padding:4px 8px;border-bottom:solid 1px var(--main-bg-color);color:#4465c9;font-size:12px}.view-filter>.fa{opacity:.7}.view-filter.editing{background:#ebf0ff}.view-filter-text{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-filter-btn{flex:none;padding:1px 8px;border:1px solid #DBE4FF;border-radius:4px;background:#fff;color:#4465c9;font-size:12px;cursor:pointer}.view-filter-btn.primary{background:#4465c9;border-color:#4465c9;color:#fff}.filter-summary{padding:2px 3px;border-bottom:solid 1px var(--main-bg-color);display:flex}.option alg-field .form-group{display:flex!important}.filter-summary .filter{display:flex;flex-direction:row;padding:2px}.filter-summary .filter .option{display:block;float:left;position:relative;background-color:#dbe4ff;text-transform:capitalize;color:#4465c9;padding:5px 10px;margin:0 5px 0 0;border-radius:20px;cursor:pointer;-webkit-transition:background-color .1s ease-out;-moz-transition:background-color .1s ease-out;-o-transition:background-color .1s ease-out;transition:background-color .1s ease-out;border-left:1px solid #ffffff}.filter-summary .filter .option.list{display:flex;align-items:center;gap:6px;cursor:default}.filter-summary .filter .option.list .option-caret,.filter-summary .filter .option.list .option-clear{display:inline-block;padding:0 2px;cursor:pointer;opacity:.7}.filter-summary .filter .option.list .option-caret:hover,.filter-summary .filter .option.list .option-clear:hover{opacity:1}.filter-summary .filter .option.list .option-clear{color:#f78383;visibility:hidden}.filter-summary .filter .option.list:hover .option-clear{visibility:visible}.filter-summary .filter .option.list.opens-list{cursor:pointer}.filter-summary .filter .option.list.opened{border-radius:4px 4px 0 0;box-shadow:inset 0 0 0 1px #4465c9}.filter-summary .filter .option-select{position:absolute;inset:0;opacity:0}.filter-summary .filter .option-select ::ng-deep .ng-select-container{min-height:0;height:100%;cursor:pointer}::ng-deep .ng-dropdown-panel.filter-summary-panel{min-width:180px;margin-top:-1px;border:1px solid #4465C9;border-radius:0 0 4px 4px;overflow:hidden;box-shadow:0 4px 12px #0000001f}::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option{padding:5px 10px;background-color:#fff;color:#4465c9;font-weight:400}::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option.ng-option-marked,::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{background-color:#dbe4ff;color:#4465c9}::ng-deep .ng-dropdown-panel.filter-summary-panel .ng-dropdown-panel-items .ng-option .ng-option-label{font-weight:400}.filter-summary .filter:before,.filter-summary .filter:after{content:\"\";display:table}.filter-summary:before,.filter-summary:after{content:\"\";display:table}\n"]
|
|
20339
20811
|
}]
|
|
20340
20812
|
}],
|
|
20341
20813
|
ctorParameters: () => [
|
|
@@ -20345,7 +20817,11 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
20345
20817
|
],
|
|
20346
20818
|
propDecorators: {
|
|
20347
20819
|
entityKey: [{ type: Input }],
|
|
20348
|
-
guid: [{ type: Input }]
|
|
20820
|
+
guid: [{ type: Input }],
|
|
20821
|
+
listSelect: [{
|
|
20822
|
+
type: ViewChild,
|
|
20823
|
+
args: ["listSelect"]
|
|
20824
|
+
}]
|
|
20349
20825
|
}
|
|
20350
20826
|
});
|
|
20351
20827
|
var ViewModelLoaderService = class ViewModelLoaderService {
|
|
@@ -20750,7 +21226,7 @@ var PropertyEditorComponent = class PropertyEditorComponent {
|
|
|
20750
21226
|
}],
|
|
20751
21227
|
ngImport: i0,
|
|
20752
21228
|
template: "<form class=\"propertyGridform\">\r\n <ng-container *ngIf=\"this.viewModel$ | async as vm\">\r\n <alg-editor-tabset #tabs class=\"property-grid-tabset\" [sectionContext]=\"facade.sections\">\r\n <alg-editor-tab [active]=\"1 == 1\">\r\n <div [attr.id]=\"'content-0'\" class=\"property-grid-tab\">\r\n <div class=\"property-container\">\r\n <ng-container *ngIf=\"propertyForm\">\r\n <ng-container\r\n *ngFor=\" let section of vm.FieldSections;let i = index\">\r\n <div class=\"property-section-container\"\r\n [hidden]=\"this.isSectionHidden(section)\">\r\n <div class=\"property-section-title\">\r\n {{ section.Name }}\r\n </div>\r\n\r\n <div class=\"property-section-content\">\r\n <ng-container\r\n *ngFor=\"let field of section.FieldViewModels;let j = index\">\r\n <!-- [class.property-row-center]=\"field.FilterType ==filterTypes.CheckBox\" -->\r\n <div class=\"property-row\"\r\n [hidden]=\"field.IsHidden ||this.isFieldHidden(field)\">\r\n <alg-field\r\n [field]=\"field\"\r\n [form]=\"propertyForm\"\r\n (propertyChanged)=\"onPropertyChanged($event)\"\r\n [readonly]=\"this.readonly\"\r\n >\r\n <!-- [readonly]=\"this.readonly\" -->\r\n </alg-field>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </alg-editor-tab>\r\n <ng-container *ngIf=\"facade.sections.sections$ | async as dynamicSections\">\r\n <ng-container *ngFor=\"let section of dynamicSections; let x = index\">\r\n <alg-editor-tab \r\n [title]=\"section.Name\" \r\n [active]=\"false\"\r\n [iconUrl]=\"section.IconUrl\"\r\n [hidden]=\"!section.IsVisible\">\r\n <ng-template #templateContainer></ng-template>\r\n </alg-editor-tab>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </alg-editor-tabset>\r\n </ng-container>\r\n</form>\r\n",
|
|
20753
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.propertyGridform{height:100%;width:100%}.property-grid-tabset{height:100%}.property-grid-tab{height:100%;width:100%;padding:5px}.property-row-center{padding-top:21px}.property-section-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));align-items:flex-start;align-content:flex-start;gap:10px;margin:0 10px}.property-section-container{display:flex;flex-direction:column;background:#f7faff;border-radius:5px;border:1px solid #C1D0FD;padding-bottom:10px}.property-section-title{display:block;font-size:14px;background:#f7faff;border-bottom:none;padding:2px 0;margin:10px;line-height:24px;font-weight:700;border-bottom:solid 1px #C1D0FD;color:#4d5a81}.property-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;padding:5px;height:100%;overflow:auto}.property-row{display:flex;flex-wrap:wrap;align-items:center;flex:25%;gap:10px}.property-label{color:#4465c9}.property-label span{padding-top:5px;display:inline-block;margin-right:5px}.property-label.invalid{color:red}.property-input{flex:2;min-width:200px}.checkbox-container{display:flex;align-items:center;gap:5px}.validation-error{color:red;font-size:.9rem}\n", ".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.search-bar-action{height:26px;min-height:26px;border-radius:5px}.input-img{position:relative;margin:0 5px 0 0;min-width:250px}.input-img .search-pin{position:absolute;top:5px;left:5px;height:16px;width:16px}.action-panel.narrow{background:#4465c9;border-bottom:none;padding:6px 0}.action-panel.narrow .action-panel-container{width:auto;min-height:30px;padding:0 8px;gap:8px}.action-panel.narrow .action-panel-container>div{padding:0}.action-panel.narrow .action-panel-container .button-container,.action-panel.narrow .action-panel-container ::ng-deep [actions-content]{display:none!important}.action-panel.narrow .action-panel-container .action-title{flex:0 1 auto;min-width:0}.action-panel.narrow .action-panel-container .action-title h1{overflow:hidden;height:30px;padding:0 12px;border-radius:5px;background:#6684e0;color:#fff;font-size:12.5px;font-weight:600;line-height:30px;white-space:nowrap;text-overflow:ellipsis}.action-panel.narrow .action-panel-container .action-title span{display:none}.action-panel.narrow .action-panel-container .input-img{flex:1 1 auto;min-width:0;margin:0}.action-panel.narrow .action-panel-container .action-mobile-menu{flex:none;margin-left:auto}.action-panel.narrow .action-panel-container .search-bar-action{width:100%;height:30px;border:none}\n"],
|
|
21229
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.propertyGridform{height:100%;width:100%}.property-grid-tabset{height:100%}.property-grid-tab{height:100%;width:100%;padding:5px}.property-row-center{padding-top:21px}.property-section-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));align-items:flex-start;align-content:flex-start;gap:10px;margin:0 10px}.property-section-container{display:flex;flex-direction:column;background:#f7faff;border-radius:5px;border:1px solid #C1D0FD;padding-bottom:10px}.property-section-title{display:block;font-size:14px;background:#f7faff;border-bottom:none;padding:2px 0;margin:10px;line-height:24px;font-weight:700;border-bottom:solid 1px #C1D0FD;color:#4d5a81}.property-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;padding:5px;height:100%;overflow:auto}.property-row{display:flex;flex-wrap:wrap;align-items:center;flex:25%;gap:10px}.property-label{color:#4465c9}.property-label span{padding-top:5px;display:inline-block;margin-right:5px}.property-label.invalid{color:red}.property-input{flex:2;min-width:200px}.checkbox-container{display:flex;align-items:center;gap:5px}.validation-error{color:red;font-size:.9rem}\n", ".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:brightness(0) saturate(100%) invert(36%) sepia(91%) saturate(628%) hue-rotate(191deg) brightness(89%) contrast(85%) brightness(75%)}.search-bar-action{height:26px;min-height:26px;border-radius:5px}.input-img{position:relative;margin:0 5px 0 0;min-width:250px}.input-img .search-icon{position:absolute;top:50%;left:9px;transform:translateY(-50%);font-size:12px;color:#9fa9c7;pointer-events:none;z-index:1}.input-img .search-bar-action{padding-left:27px}.input-img .search-pin{position:absolute;top:5px;left:5px;height:16px;width:16px}.action-panel.narrow{background:#4465c9;border-bottom:none;padding:6px 0}.action-panel.narrow .action-panel-container{width:auto;min-height:30px;padding:0 8px;gap:8px}.action-panel.narrow .action-panel-container>div{padding:0}.action-panel.narrow .action-panel-container .button-container,.action-panel.narrow .action-panel-container ::ng-deep [actions-content]{display:none!important}.action-panel.narrow .action-panel-container .action-title{flex:0 1 auto;min-width:0}.action-panel.narrow .action-panel-container .action-title h1{overflow:hidden;height:30px;padding:0 12px;border-radius:5px;background:#6684e0;color:#fff;font-size:12.5px;font-weight:600;line-height:30px;white-space:nowrap;text-overflow:ellipsis}.action-panel.narrow .action-panel-container .action-title span{display:none}.action-panel.narrow .action-panel-container .input-img{flex:1 1 auto;min-width:0;margin:0}.action-panel.narrow .action-panel-container .action-mobile-menu{flex:none;margin-left:auto}.action-panel.narrow .action-panel-container .search-bar-action{width:100%;height:30px;border:none}.action-btn.save-active{color:#d1353a}.action-btn.save-active .action-icon{filter:brightness(0) saturate(100%) invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}\n"],
|
|
20754
21230
|
dependencies: [
|
|
20755
21231
|
{
|
|
20756
21232
|
kind: "directive",
|
|
@@ -20849,7 +21325,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
20849
21325
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
20850
21326
|
standalone: false,
|
|
20851
21327
|
template: "<form class=\"propertyGridform\">\r\n <ng-container *ngIf=\"this.viewModel$ | async as vm\">\r\n <alg-editor-tabset #tabs class=\"property-grid-tabset\" [sectionContext]=\"facade.sections\">\r\n <alg-editor-tab [active]=\"1 == 1\">\r\n <div [attr.id]=\"'content-0'\" class=\"property-grid-tab\">\r\n <div class=\"property-container\">\r\n <ng-container *ngIf=\"propertyForm\">\r\n <ng-container\r\n *ngFor=\" let section of vm.FieldSections;let i = index\">\r\n <div class=\"property-section-container\"\r\n [hidden]=\"this.isSectionHidden(section)\">\r\n <div class=\"property-section-title\">\r\n {{ section.Name }}\r\n </div>\r\n\r\n <div class=\"property-section-content\">\r\n <ng-container\r\n *ngFor=\"let field of section.FieldViewModels;let j = index\">\r\n <!-- [class.property-row-center]=\"field.FilterType ==filterTypes.CheckBox\" -->\r\n <div class=\"property-row\"\r\n [hidden]=\"field.IsHidden ||this.isFieldHidden(field)\">\r\n <alg-field\r\n [field]=\"field\"\r\n [form]=\"propertyForm\"\r\n (propertyChanged)=\"onPropertyChanged($event)\"\r\n [readonly]=\"this.readonly\"\r\n >\r\n <!-- [readonly]=\"this.readonly\" -->\r\n </alg-field>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </alg-editor-tab>\r\n <ng-container *ngIf=\"facade.sections.sections$ | async as dynamicSections\">\r\n <ng-container *ngFor=\"let section of dynamicSections; let x = index\">\r\n <alg-editor-tab \r\n [title]=\"section.Name\" \r\n [active]=\"false\"\r\n [iconUrl]=\"section.IconUrl\"\r\n [hidden]=\"!section.IsVisible\">\r\n <ng-template #templateContainer></ng-template>\r\n </alg-editor-tab>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </alg-editor-tabset>\r\n </ng-container>\r\n</form>\r\n",
|
|
20852
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.propertyGridform{height:100%;width:100%}.property-grid-tabset{height:100%}.property-grid-tab{height:100%;width:100%;padding:5px}.property-row-center{padding-top:21px}.property-section-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));align-items:flex-start;align-content:flex-start;gap:10px;margin:0 10px}.property-section-container{display:flex;flex-direction:column;background:#f7faff;border-radius:5px;border:1px solid #C1D0FD;padding-bottom:10px}.property-section-title{display:block;font-size:14px;background:#f7faff;border-bottom:none;padding:2px 0;margin:10px;line-height:24px;font-weight:700;border-bottom:solid 1px #C1D0FD;color:#4d5a81}.property-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;padding:5px;height:100%;overflow:auto}.property-row{display:flex;flex-wrap:wrap;align-items:center;flex:25%;gap:10px}.property-label{color:#4465c9}.property-label span{padding-top:5px;display:inline-block;margin-right:5px}.property-label.invalid{color:red}.property-input{flex:2;min-width:200px}.checkbox-container{display:flex;align-items:center;gap:5px}.validation-error{color:red;font-size:.9rem}\n", ".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.search-bar-action{height:26px;min-height:26px;border-radius:5px}.input-img{position:relative;margin:0 5px 0 0;min-width:250px}.input-img .search-pin{position:absolute;top:5px;left:5px;height:16px;width:16px}.action-panel.narrow{background:#4465c9;border-bottom:none;padding:6px 0}.action-panel.narrow .action-panel-container{width:auto;min-height:30px;padding:0 8px;gap:8px}.action-panel.narrow .action-panel-container>div{padding:0}.action-panel.narrow .action-panel-container .button-container,.action-panel.narrow .action-panel-container ::ng-deep [actions-content]{display:none!important}.action-panel.narrow .action-panel-container .action-title{flex:0 1 auto;min-width:0}.action-panel.narrow .action-panel-container .action-title h1{overflow:hidden;height:30px;padding:0 12px;border-radius:5px;background:#6684e0;color:#fff;font-size:12.5px;font-weight:600;line-height:30px;white-space:nowrap;text-overflow:ellipsis}.action-panel.narrow .action-panel-container .action-title span{display:none}.action-panel.narrow .action-panel-container .input-img{flex:1 1 auto;min-width:0;margin:0}.action-panel.narrow .action-panel-container .action-mobile-menu{flex:none;margin-left:auto}.action-panel.narrow .action-panel-container .search-bar-action{width:100%;height:30px;border:none}\n"]
|
|
21328
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.propertyGridform{height:100%;width:100%}.property-grid-tabset{height:100%}.property-grid-tab{height:100%;width:100%;padding:5px}.property-row-center{padding-top:21px}.property-section-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));align-items:flex-start;align-content:flex-start;gap:10px;margin:0 10px}.property-section-container{display:flex;flex-direction:column;background:#f7faff;border-radius:5px;border:1px solid #C1D0FD;padding-bottom:10px}.property-section-title{display:block;font-size:14px;background:#f7faff;border-bottom:none;padding:2px 0;margin:10px;line-height:24px;font-weight:700;border-bottom:solid 1px #C1D0FD;color:#4d5a81}.property-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;padding:5px;height:100%;overflow:auto}.property-row{display:flex;flex-wrap:wrap;align-items:center;flex:25%;gap:10px}.property-label{color:#4465c9}.property-label span{padding-top:5px;display:inline-block;margin-right:5px}.property-label.invalid{color:red}.property-input{flex:2;min-width:200px}.checkbox-container{display:flex;align-items:center;gap:5px}.validation-error{color:red;font-size:.9rem}\n", ".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.action-panel{display:block;height:auto;border-bottom:solid 1px #3C5DC4;width:auto;overflow:hidden;padding:3px 0}.action-panel-container{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;justify-items:center;justify-content:flex-start;width:30000px;padding:2px 5px;min-height:34px}.action-panel-container .input-img{margin-right:5px;min-width:150px}.action-panel-container>div{padding:2px;margin-right:0}.action-panel-container>button{padding:2px;margin-right:0}.action-panel-container .button-container{margin-right:3px;padding:3px;height:30px}.action-panel-container .button-container .img{padding:3px;margin-right:0}.action-panel-container .button-container:hover{background-color:#eaeaea}.action-panel-container .action-title{display:flex}.action-panel-container .action-title h1{display:block;font-size:14px;background:#fff;border-bottom:none;padding:2px 0 2px 10px;margin:0;line-height:24px;font-weight:700}.action-panel-container .action-title span{display:flex;margin:0 8px;padding:0;font-size:15px;flex-wrap:nowrap}.action-label{display:flex;flex-wrap:nowrap}.action-icon{margin:0 2px;filter:brightness(0) saturate(100%) invert(36%) sepia(91%) saturate(628%) hue-rotate(191deg) brightness(89%) contrast(85%) brightness(75%)}.search-bar-action{height:26px;min-height:26px;border-radius:5px}.input-img{position:relative;margin:0 5px 0 0;min-width:250px}.input-img .search-icon{position:absolute;top:50%;left:9px;transform:translateY(-50%);font-size:12px;color:#9fa9c7;pointer-events:none;z-index:1}.input-img .search-bar-action{padding-left:27px}.input-img .search-pin{position:absolute;top:5px;left:5px;height:16px;width:16px}.action-panel.narrow{background:#4465c9;border-bottom:none;padding:6px 0}.action-panel.narrow .action-panel-container{width:auto;min-height:30px;padding:0 8px;gap:8px}.action-panel.narrow .action-panel-container>div{padding:0}.action-panel.narrow .action-panel-container .button-container,.action-panel.narrow .action-panel-container ::ng-deep [actions-content]{display:none!important}.action-panel.narrow .action-panel-container .action-title{flex:0 1 auto;min-width:0}.action-panel.narrow .action-panel-container .action-title h1{overflow:hidden;height:30px;padding:0 12px;border-radius:5px;background:#6684e0;color:#fff;font-size:12.5px;font-weight:600;line-height:30px;white-space:nowrap;text-overflow:ellipsis}.action-panel.narrow .action-panel-container .action-title span{display:none}.action-panel.narrow .action-panel-container .input-img{flex:1 1 auto;min-width:0;margin:0}.action-panel.narrow .action-panel-container .action-mobile-menu{flex:none;margin-left:auto}.action-panel.narrow .action-panel-container .search-bar-action{width:100%;height:30px;border:none}.action-btn.save-active{color:#d1353a}.action-btn.save-active .action-icon{filter:brightness(0) saturate(100%) invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}\n"]
|
|
20853
21329
|
}]
|
|
20854
21330
|
}],
|
|
20855
21331
|
ctorParameters: () => [
|
|
@@ -21525,7 +22001,7 @@ var CardListComponent = class CardListComponent {
|
|
|
21525
22001
|
guid: "guid"
|
|
21526
22002
|
},
|
|
21527
22003
|
ngImport: i0,
|
|
21528
|
-
template: "<div class=\"card-list\" (scroll)=\"onScroll($event)\" role=\"list\">\
|
|
22004
|
+
template: "<div class=\"card-list\" (scroll)=\"onScroll($event)\" role=\"list\">\n <div *ngIf=\"card === null\" class=\"card-info\">Pas de vue Carte pour cette table.</div>\n\n <ng-container *ngIf=\"card\">\n <button type=\"button\" *ngFor=\"let row of items; trackBy: trackById\" class=\"card-item\" role=\"listitem\"\n [class.selected]=\"isSelected(row)\" [class.no-image]=\"!hasImage()\" (click)=\"open(row)\">\n <span class=\"card-image\" *ngIf=\"hasImage()\">\n <img *ngIf=\"imageUrl(row) as url; else initialsTpl\" [src]=\"url\" alt=\"\" />\n <ng-template #initialsTpl><span class=\"card-initials\">{{ initials(row) }}</span></ng-template>\n </span>\n <span class=\"card-main\">\n <span class=\"card-title\" *ngIf=\"card.title\">{{ valueOf(row, card.title) }}</span>\n <span class=\"card-text\" *ngIf=\"card.text\">{{ valueOf(row, card.text) }}</span>\n <span class=\"card-detail\" *ngIf=\"card.detail\">{{ valueOf(row, card.detail) }}</span>\n </span>\n <span class=\"card-badge\" *ngIf=\"card.badge && valueOf(row, card.badge) as badge\">{{ badge }}</span>\n </button>\n\n <div class=\"card-info\" *ngIf=\"!items.length && !loading\">Aucun élément</div>\n <button type=\"button\" class=\"card-more\" *ngIf=\"hasMore\" [disabled]=\"loading\" (click)=\"loadMore()\">\n {{ loading ? 'Chargement…' : 'Afficher les suivants' }}\n </button>\n </ng-container>\n</div>\n",
|
|
21529
22005
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%}.card-list{flex:1 1 auto;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));align-content:start;gap:8px;padding:10px;background:#f4f6fb}.card-list>.card-info,.card-list>.card-more{grid-column:1/-1}.card-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:10px 12px;border:1px solid #DBE4FF;border-radius:0 4px 4px 0;background:#fff;color:#4d5a81;font:inherit;text-align:left;cursor:pointer}.card-item.no-image{grid-template-columns:minmax(0,1fr) auto}.card-item:hover{border-color:#5272d3}.card-item:focus-visible{outline:2px solid #5272D3;outline-offset:1px}.card-item.selected{border-color:#5272d3;box-shadow:inset 3px 0 #5272d3}.card-image{width:44px;height:44px;border-radius:4px;background:#ebf0ff;display:grid;place-items:center;overflow:hidden}.card-image img{max-width:100%;max-height:100%;object-fit:contain}.card-initials{color:#4465c9;font-weight:700;font-size:13px}.card-main{min-width:0;display:flex;flex-direction:column}.card-title,.card-text,.card-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-title{font-size:12px;color:#4465c9}.card-text{font-size:14px;font-weight:700}.card-detail{font-size:12px;color:#9fa9c7}.card-badge{padding:1px 8px;border-radius:999px;background:#ebf0ff;color:#4465c9;font-size:11px;font-weight:700;white-space:nowrap}.card-info{padding:16px;text-align:center;color:#9fa9c7}.card-more{justify-self:center;margin:4px 0 8px;padding:6px 14px;border:1px solid #C1D0FD;border-radius:999px;background:#fff;color:#4465c9;font:inherit;cursor:pointer}.card-more:disabled{cursor:progress;opacity:.7}\n"],
|
|
21530
22006
|
dependencies: [{
|
|
21531
22007
|
kind: "directive",
|
|
@@ -21561,7 +22037,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
21561
22037
|
selector: "alg-card-list",
|
|
21562
22038
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
21563
22039
|
standalone: false,
|
|
21564
|
-
template: "<div class=\"card-list\" (scroll)=\"onScroll($event)\" role=\"list\">\
|
|
22040
|
+
template: "<div class=\"card-list\" (scroll)=\"onScroll($event)\" role=\"list\">\n <div *ngIf=\"card === null\" class=\"card-info\">Pas de vue Carte pour cette table.</div>\n\n <ng-container *ngIf=\"card\">\n <button type=\"button\" *ngFor=\"let row of items; trackBy: trackById\" class=\"card-item\" role=\"listitem\"\n [class.selected]=\"isSelected(row)\" [class.no-image]=\"!hasImage()\" (click)=\"open(row)\">\n <span class=\"card-image\" *ngIf=\"hasImage()\">\n <img *ngIf=\"imageUrl(row) as url; else initialsTpl\" [src]=\"url\" alt=\"\" />\n <ng-template #initialsTpl><span class=\"card-initials\">{{ initials(row) }}</span></ng-template>\n </span>\n <span class=\"card-main\">\n <span class=\"card-title\" *ngIf=\"card.title\">{{ valueOf(row, card.title) }}</span>\n <span class=\"card-text\" *ngIf=\"card.text\">{{ valueOf(row, card.text) }}</span>\n <span class=\"card-detail\" *ngIf=\"card.detail\">{{ valueOf(row, card.detail) }}</span>\n </span>\n <span class=\"card-badge\" *ngIf=\"card.badge && valueOf(row, card.badge) as badge\">{{ badge }}</span>\n </button>\n\n <div class=\"card-info\" *ngIf=\"!items.length && !loading\">Aucun élément</div>\n <button type=\"button\" class=\"card-more\" *ngIf=\"hasMore\" [disabled]=\"loading\" (click)=\"loadMore()\">\n {{ loading ? 'Chargement…' : 'Afficher les suivants' }}\n </button>\n </ng-container>\n</div>\n",
|
|
21565
22041
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:100%}.card-list{flex:1 1 auto;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));align-content:start;gap:8px;padding:10px;background:#f4f6fb}.card-list>.card-info,.card-list>.card-more{grid-column:1/-1}.card-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:10px 12px;border:1px solid #DBE4FF;border-radius:0 4px 4px 0;background:#fff;color:#4d5a81;font:inherit;text-align:left;cursor:pointer}.card-item.no-image{grid-template-columns:minmax(0,1fr) auto}.card-item:hover{border-color:#5272d3}.card-item:focus-visible{outline:2px solid #5272D3;outline-offset:1px}.card-item.selected{border-color:#5272d3;box-shadow:inset 3px 0 #5272d3}.card-image{width:44px;height:44px;border-radius:4px;background:#ebf0ff;display:grid;place-items:center;overflow:hidden}.card-image img{max-width:100%;max-height:100%;object-fit:contain}.card-initials{color:#4465c9;font-weight:700;font-size:13px}.card-main{min-width:0;display:flex;flex-direction:column}.card-title,.card-text,.card-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-title{font-size:12px;color:#4465c9}.card-text{font-size:14px;font-weight:700}.card-detail{font-size:12px;color:#9fa9c7}.card-badge{padding:1px 8px;border-radius:999px;background:#ebf0ff;color:#4465c9;font-size:11px;font-weight:700;white-space:nowrap}.card-info{padding:16px;text-align:center;color:#9fa9c7}.card-more{justify-self:center;margin:4px 0 8px;padding:6px 14px;border:1px solid #C1D0FD;border-radius:999px;background:#fff;color:#4465c9;font:inherit;cursor:pointer}.card-more:disabled{cursor:progress;opacity:.7}\n"]
|
|
21566
22042
|
}]
|
|
21567
22043
|
}],
|
|
@@ -21870,7 +22346,7 @@ var StandardPageLayoutComponent = class StandardPageLayoutComponent {
|
|
|
21870
22346
|
}
|
|
21871
22347
|
],
|
|
21872
22348
|
ngImport: i0,
|
|
21873
|
-
template: "<div class=\"page-container\"\
|
|
22349
|
+
template: "<div class=\"page-container\"\n [class.narrow]=\"this.facade?.layout?.narrow$ | async\"\n [class.mobile-editor-open]=\"this.facade?.layout?.mobileEditorOpen$ | async\"\n [class.editor-dirty]=\"editorDirty\"\n layoutHandler\n [entityKey]=\"this.layoutKey\"\n [layoutContext]=\"this.facade.layout\"\n [middlePanel]=\"middlePanel\"\n \n #layoutHandler=\"layoutHandler\"\n tabindex=\"0\"\n baseShortcuts\n [facade]=\"this.facade\"\n #baseShortcuts=\"baseShortcuts\"\n >\n <!-- [rightPanel]=\"rightPanel?.nativeElement\"\n [_separator]=\"separator?.nativeElement\"\n -->\n <div class=\"panel-container\" [id]=\"layoutKey\">\n <div class=\"middle-panel\" #middlePanel>\n\n <!-- <div \n *ngIf=\"this.facade.layout.showFilterPanel$ |async\" \n class=\"left-panel-container\" hideOnThreshold>\n <ng-content select=\"[leftContent]\"></ng-content>\n </div> -->\n <div class=\"middle-panel-content\">\n <ng-content class=\"action-panel\" select=\"[actionsContent]\"></ng-content>\n <div class=\"middle-panel-header\">\n <ng-content select=\"[middleHeader]\"></ng-content>\n </div>\n \n <div class=\"middle-panel-main\">\n <ng-content select=\"[middleContent]\"></ng-content>\n </div>\n <div class=\"middle-panel-footer\">\n <ng-content select=\"[middleFooter]\"></ng-content>\n </div>\n \n </div>\n </div>\n <ng-container *ngIf=\"facade.layout.propertyPanelVisible$ | async\" >\n <div class=\"separator-container\"\n (mousedown)=\"layoutHandler.startResizing($event)\"\n (mouseup)=\"layoutHandler.stopResizing($event)\"\n [id]=\"layoutHandler.entityKey\"\n #separator\n >\n <button type=\"button\" class=\"toggle-btn\"\n title=\"Affichage Horizontal/Vertical\"\n (click)=\"toggleLayout()\">\n <div class=\"arrow\"></div>\n </button>\n\n <!-- <button class=\"expand-btn\"\n (click)=\"layoutHandler.expandPropertyflexGrow($event)\">\n <div class=\"arrow\"></div>\n </button> -->\n </div>\n\n <div class=\"right-panel-container\" [id]=\"layoutHandler.entityKey\" #rightPanel>\n <!-- Écran étroit : éditeur en plein écran, avec le retour à la liste de cartes. -->\n <div class=\"mobile-editor-bar\">\n <button type=\"button\" class=\"mobile-editor-button\" title=\"Revenir à la liste\" aria-label=\"Revenir à la liste\" (click)=\"backToList($event)\">\n <i class=\"fa fa-arrow-left\"></i>\n </button>\n <button type=\"button\" class=\"mobile-editor-button\" *ngIf=\"editorDirty\" title=\"Enregistrer\" aria-label=\"Enregistrer\" (click)=\"saveMobileEditor($event)\">\n <i class=\"fa fa-floppy-o\"></i>\n </button>\n </div>\n <ng-content select=\"[rightContent]\"></ng-content>\n </div>\n </ng-container>\n </div>\n</div>\n",
|
|
21874
22350
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.page-container{width:100%;height:100%}.panel-container{display:flex;width:100%;height:100%;flex-grow:1;overflow:auto}.left-panel-container{order:-1;width:20%;flex-grow:0;flex-shrink:0;border-right:solid 1px var(--main-bg-color)}.right-panel-container{flex-basis:0;overflow:hidden}.middle-panel{display:flex;overflow:hidden;flex-basis:0;flex-grow:1}.middle-panel-content{display:flex;flex-direction:column;width:100%;height:100%}.middle-panel-header{padding:0}.middle-panel-main{flex-grow:1;overflow:auto;padding:0}.middle-panel-footer{padding:0}.main-component{width:100%;height:100%;overflow:auto}.left-side-panel h1,.right-side-panel h1,.middle-panel h1{display:block;font-size:12pt;background:#fff;border-bottom:solid 1px var(--main-bg-color);padding:2px 10px;margin:0;line-height:33px}.separator-container{cursor:col-resize;position:relative;display:flex;align-items:center;justify-content:center;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAACXBIWXMAAA7CAAAOwgEVKEqAAAAAIGNIUk0AAHonAACAgwAA+mQAAIDSAAB2hgAA7OkAADmeAAAV/sZ+0zoAAAAeSURBVHjaYvj//z8DDC9duhTBgWHCAgAAAAD//wMAbP4vwvVSoTUAAAAASUVORK5CYII=) repeat scroll 0 0 transparent;background-color:#c1d0fd}.separator-container:hover{background-color:#dbe4ff}.separator-container.vertical{flex-direction:row;width:100%;height:10px;cursor:row-resize}.separator-container.vertical button.expand-btn{width:40px;height:10px}.separator-container.vertical button.toggle-btn{width:20px;height:10px}.separator-container.horizontal{flex-direction:column;width:10px;cursor:col-resize}.separator-container.horizontal button.expand-btn{width:10px;height:40px}.separator-container.horizontal button.toggle-btn{width:10px;height:20px}.toggle-btn,.expand-btn{display:block;width:14px;height:40px;background:none;border:none;cursor:pointer;display:flex;align-items:center;align-self:center;justify-content:center;transition:padding .3s ease;color:#fff;background-color:#8ea7f8;padding:0;z-index:10}.arrow{width:100%;height:100%;filter:brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(258deg) brightness(108%) contrast(101%)}.arrow-left{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"27.946\" height=\"45.317\" viewBox=\"0 0 27.946 45.317\">%0D%0A <path id=\"\\c0_gauche\" data-name=\"\\c0 gauche\" d=\"M331.646,880.287l-17.372,17.372,17.372,17.371-5.287,5.287L303.7,897.659,326.359,875Z\" transform=\"translate(-303.7 -875)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.arrow-right{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"27.946\" height=\"45.317\" viewBox=\"0 0 27.946 45.317\">%0D%0A <path fillColor=\"currentColor\" id=\"\\c0_doite\" data-name=\"\\c0 doite\" d=\"M346.487,875l22.659,22.659-22.659,22.659L341.2,915.03l17.372-17.371L341.2,880.287Z\" transform=\"translate(-341.2 -875)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.arrow-up{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"45.317\" height=\"27.946\" viewBox=\"0 0 45.317 27.946\">%0D%0A <path id=\"En_haut\" data-name=\"En haut\" d=\"M435.259,877l22.659,22.659-5.287,5.287-17.372-17.372-17.372,17.372-5.287-5.287Z\" transform=\"translate(-412.6 -877)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.arrow-down{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"45.317\" height=\"27.946\" viewBox=\"0 0 45.317 27.946\">%0D%0A <path id=\"En_bas\" data-name=\"En bas\" d=\"M489.53,877.6l5.287,5.287-22.659,22.659L449.5,882.887l5.287-5.287,17.372,17.371Z\" transform=\"translate(-449.5 -877.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.toggle-btn{position:absolute;top:0;left:0;height:20px;width:20px}.mobile-editor-bar{display:none}.page-container.narrow .middle-panel-footer,.page-container.narrow .separator-container,.page-container.narrow .right-panel-container{display:none!important}.page-container.narrow .middle-panel{flex:1 1 auto!important;width:100%!important;max-width:100%!important}.page-container.narrow.mobile-editor-open{position:relative}.page-container.narrow.mobile-editor-open .right-panel-container{display:flex!important;flex-direction:column;position:absolute;inset:0;z-index:1040;width:100%!important;max-width:100%!important;height:100%!important;background:#fff;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0px)}.page-container.narrow.mobile-editor-open .right-panel-container ::ng-deep>:not(.mobile-editor-bar){flex:1 1 0;min-height:0;overflow:auto}.page-container.narrow.mobile-editor-open .mobile-editor-bar{display:flex;align-items:center;flex:none;position:relative;z-index:30;height:44px;gap:4px;padding:0 4px;background:var(--main-bg-color, #3b57b8)}.page-container.narrow.mobile-editor-open .mobile-editor-button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:44px;height:40px;padding:0;touch-action:manipulation;border:none;border-radius:8px;font-size:18px!important;background:transparent;color:#fff;font:inherit;font-weight:600;cursor:pointer}.page-container.narrow.mobile-editor-open .mobile-editor-button:hover,.page-container.narrow.mobile-editor-open .mobile-editor-button:focus-visible{background:#ffffff29;outline:none}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-bar{position:absolute;top:0;left:0;z-index:30;height:42px;padding:6px 0 6px 8px;gap:6px;background:transparent}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-button{width:36px;height:30px;border-radius:5px;background:#dbe4ff;color:#4465c9;font-size:15px!important}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-button:hover,:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-button:focus-visible{background:#4465c9;color:#f7faff}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .property-grid-tabset>.tabset>.tabset-nav-frame{padding-left:44px}:host ::ng-deep .page-container.narrow.mobile-editor-open.editor-dirty .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .property-grid-tabset>.tabset>.tabset-nav-frame{padding-left:86px}\n"],
|
|
21875
22351
|
dependencies: [
|
|
21876
22352
|
{
|
|
@@ -21923,7 +22399,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
21923
22399
|
selector: "alg-standard-page-layout",
|
|
21924
22400
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
21925
22401
|
standalone: false,
|
|
21926
|
-
template: "<div class=\"page-container\"\
|
|
22402
|
+
template: "<div class=\"page-container\"\n [class.narrow]=\"this.facade?.layout?.narrow$ | async\"\n [class.mobile-editor-open]=\"this.facade?.layout?.mobileEditorOpen$ | async\"\n [class.editor-dirty]=\"editorDirty\"\n layoutHandler\n [entityKey]=\"this.layoutKey\"\n [layoutContext]=\"this.facade.layout\"\n [middlePanel]=\"middlePanel\"\n \n #layoutHandler=\"layoutHandler\"\n tabindex=\"0\"\n baseShortcuts\n [facade]=\"this.facade\"\n #baseShortcuts=\"baseShortcuts\"\n >\n <!-- [rightPanel]=\"rightPanel?.nativeElement\"\n [_separator]=\"separator?.nativeElement\"\n -->\n <div class=\"panel-container\" [id]=\"layoutKey\">\n <div class=\"middle-panel\" #middlePanel>\n\n <!-- <div \n *ngIf=\"this.facade.layout.showFilterPanel$ |async\" \n class=\"left-panel-container\" hideOnThreshold>\n <ng-content select=\"[leftContent]\"></ng-content>\n </div> -->\n <div class=\"middle-panel-content\">\n <ng-content class=\"action-panel\" select=\"[actionsContent]\"></ng-content>\n <div class=\"middle-panel-header\">\n <ng-content select=\"[middleHeader]\"></ng-content>\n </div>\n \n <div class=\"middle-panel-main\">\n <ng-content select=\"[middleContent]\"></ng-content>\n </div>\n <div class=\"middle-panel-footer\">\n <ng-content select=\"[middleFooter]\"></ng-content>\n </div>\n \n </div>\n </div>\n <ng-container *ngIf=\"facade.layout.propertyPanelVisible$ | async\" >\n <div class=\"separator-container\"\n (mousedown)=\"layoutHandler.startResizing($event)\"\n (mouseup)=\"layoutHandler.stopResizing($event)\"\n [id]=\"layoutHandler.entityKey\"\n #separator\n >\n <button type=\"button\" class=\"toggle-btn\"\n title=\"Affichage Horizontal/Vertical\"\n (click)=\"toggleLayout()\">\n <div class=\"arrow\"></div>\n </button>\n\n <!-- <button class=\"expand-btn\"\n (click)=\"layoutHandler.expandPropertyflexGrow($event)\">\n <div class=\"arrow\"></div>\n </button> -->\n </div>\n\n <div class=\"right-panel-container\" [id]=\"layoutHandler.entityKey\" #rightPanel>\n <!-- Écran étroit : éditeur en plein écran, avec le retour à la liste de cartes. -->\n <div class=\"mobile-editor-bar\">\n <button type=\"button\" class=\"mobile-editor-button\" title=\"Revenir à la liste\" aria-label=\"Revenir à la liste\" (click)=\"backToList($event)\">\n <i class=\"fa fa-arrow-left\"></i>\n </button>\n <button type=\"button\" class=\"mobile-editor-button\" *ngIf=\"editorDirty\" title=\"Enregistrer\" aria-label=\"Enregistrer\" (click)=\"saveMobileEditor($event)\">\n <i class=\"fa fa-floppy-o\"></i>\n </button>\n </div>\n <ng-content select=\"[rightContent]\"></ng-content>\n </div>\n </ng-container>\n </div>\n</div>\n",
|
|
21927
22403
|
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}.page-container{width:100%;height:100%}.panel-container{display:flex;width:100%;height:100%;flex-grow:1;overflow:auto}.left-panel-container{order:-1;width:20%;flex-grow:0;flex-shrink:0;border-right:solid 1px var(--main-bg-color)}.right-panel-container{flex-basis:0;overflow:hidden}.middle-panel{display:flex;overflow:hidden;flex-basis:0;flex-grow:1}.middle-panel-content{display:flex;flex-direction:column;width:100%;height:100%}.middle-panel-header{padding:0}.middle-panel-main{flex-grow:1;overflow:auto;padding:0}.middle-panel-footer{padding:0}.main-component{width:100%;height:100%;overflow:auto}.left-side-panel h1,.right-side-panel h1,.middle-panel h1{display:block;font-size:12pt;background:#fff;border-bottom:solid 1px var(--main-bg-color);padding:2px 10px;margin:0;line-height:33px}.separator-container{cursor:col-resize;position:relative;display:flex;align-items:center;justify-content:center;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAACXBIWXMAAA7CAAAOwgEVKEqAAAAAIGNIUk0AAHonAACAgwAA+mQAAIDSAAB2hgAA7OkAADmeAAAV/sZ+0zoAAAAeSURBVHjaYvj//z8DDC9duhTBgWHCAgAAAAD//wMAbP4vwvVSoTUAAAAASUVORK5CYII=) repeat scroll 0 0 transparent;background-color:#c1d0fd}.separator-container:hover{background-color:#dbe4ff}.separator-container.vertical{flex-direction:row;width:100%;height:10px;cursor:row-resize}.separator-container.vertical button.expand-btn{width:40px;height:10px}.separator-container.vertical button.toggle-btn{width:20px;height:10px}.separator-container.horizontal{flex-direction:column;width:10px;cursor:col-resize}.separator-container.horizontal button.expand-btn{width:10px;height:40px}.separator-container.horizontal button.toggle-btn{width:10px;height:20px}.toggle-btn,.expand-btn{display:block;width:14px;height:40px;background:none;border:none;cursor:pointer;display:flex;align-items:center;align-self:center;justify-content:center;transition:padding .3s ease;color:#fff;background-color:#8ea7f8;padding:0;z-index:10}.arrow{width:100%;height:100%;filter:brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(258deg) brightness(108%) contrast(101%)}.arrow-left{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"27.946\" height=\"45.317\" viewBox=\"0 0 27.946 45.317\">%0D%0A <path id=\"\\c0_gauche\" data-name=\"\\c0 gauche\" d=\"M331.646,880.287l-17.372,17.372,17.372,17.371-5.287,5.287L303.7,897.659,326.359,875Z\" transform=\"translate(-303.7 -875)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.arrow-right{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"27.946\" height=\"45.317\" viewBox=\"0 0 27.946 45.317\">%0D%0A <path fillColor=\"currentColor\" id=\"\\c0_doite\" data-name=\"\\c0 doite\" d=\"M346.487,875l22.659,22.659-22.659,22.659L341.2,915.03l17.372-17.371L341.2,880.287Z\" transform=\"translate(-341.2 -875)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.arrow-up{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"45.317\" height=\"27.946\" viewBox=\"0 0 45.317 27.946\">%0D%0A <path id=\"En_haut\" data-name=\"En haut\" d=\"M435.259,877l22.659,22.659-5.287,5.287-17.372-17.372-17.372,17.372-5.287-5.287Z\" transform=\"translate(-412.6 -877)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.arrow-down{background:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"45.317\" height=\"27.946\" viewBox=\"0 0 45.317 27.946\">%0D%0A <path id=\"En_bas\" data-name=\"En bas\" d=\"M489.53,877.6l5.287,5.287-22.659,22.659L449.5,882.887l5.287-5.287,17.372,17.371Z\" transform=\"translate(-449.5 -877.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;background-size:8px 8px;background-position:center}.toggle-btn{position:absolute;top:0;left:0;height:20px;width:20px}.mobile-editor-bar{display:none}.page-container.narrow .middle-panel-footer,.page-container.narrow .separator-container,.page-container.narrow .right-panel-container{display:none!important}.page-container.narrow .middle-panel{flex:1 1 auto!important;width:100%!important;max-width:100%!important}.page-container.narrow.mobile-editor-open{position:relative}.page-container.narrow.mobile-editor-open .right-panel-container{display:flex!important;flex-direction:column;position:absolute;inset:0;z-index:1040;width:100%!important;max-width:100%!important;height:100%!important;background:#fff;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0px)}.page-container.narrow.mobile-editor-open .right-panel-container ::ng-deep>:not(.mobile-editor-bar){flex:1 1 0;min-height:0;overflow:auto}.page-container.narrow.mobile-editor-open .mobile-editor-bar{display:flex;align-items:center;flex:none;position:relative;z-index:30;height:44px;gap:4px;padding:0 4px;background:var(--main-bg-color, #3b57b8)}.page-container.narrow.mobile-editor-open .mobile-editor-button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:44px;height:40px;padding:0;touch-action:manipulation;border:none;border-radius:8px;font-size:18px!important;background:transparent;color:#fff;font:inherit;font-weight:600;cursor:pointer}.page-container.narrow.mobile-editor-open .mobile-editor-button:hover,.page-container.narrow.mobile-editor-open .mobile-editor-button:focus-visible{background:#ffffff29;outline:none}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-bar{position:absolute;top:0;left:0;z-index:30;height:42px;padding:6px 0 6px 8px;gap:6px;background:transparent}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-button{width:36px;height:30px;border-radius:5px;background:#dbe4ff;color:#4465c9;font-size:15px!important}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-button:hover,:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .mobile-editor-button:focus-visible{background:#4465c9;color:#f7faff}:host ::ng-deep .page-container.narrow.mobile-editor-open .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .property-grid-tabset>.tabset>.tabset-nav-frame{padding-left:44px}:host ::ng-deep .page-container.narrow.mobile-editor-open.editor-dirty .right-panel-container:has(.property-grid-tabset .tabset-nav-frame:not(.nav-none)) .property-grid-tabset>.tabset>.tabset-nav-frame{padding-left:86px}\n"]
|
|
21928
22404
|
}]
|
|
21929
22405
|
}],
|
|
@@ -22165,7 +22641,7 @@ var GridFieldComponent = class GridFieldComponent {
|
|
|
22165
22641
|
}],
|
|
22166
22642
|
ngImport: i0,
|
|
22167
22643
|
template: "<div [formGroup]=\"form\" class=\"field-container\">\r\n <ng-container *ngIf=\"field\">\r\n <div [hidden]=\"!!field.IsHidden\" [ngSwitch]=\"field.FilterType\">\r\n <div class=\"label-group\" *ngIf=\"showLabel\">\r\n <label *ngIf=\"field.FilterType != filterType.CheckBox && field.FilterType != filterType.HorizComboBox\"\r\n [htmlFor]=\"field.PropertyName\">\r\n {{ field.Label }}\r\n </label>\r\n <img\r\n *ngIf=\"field.Required\"\r\n class=\"required-icon\"\r\n [src]=\"this.getRequiredIcon()\"\r\n alt=\"obligatoire\"\r\n />\r\n </div>\r\n\r\n <!--String Input-->\r\n <div *ngSwitchCase=\"filterType.String\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n [type]=\"field.InputType\"\r\n (change)=\"this.onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n focusable\r\n />\r\n <!-- [(ngModel)]=\"this.entity[field.PropertyName]\" -->\r\n </div>\r\n </div>\r\n\r\n <!--Number Input-->\r\n <div *ngSwitchCase=\"filterType.Integer\" class=\"form-group\">\r\n <div>\r\n <!-- [readonly]=\"field.ReadOnly\" -->\r\n <input\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n type=\"number\"\r\n focusable ng-pattern=\"/^[0-9]+$/\" tabindex=\"0\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!--ComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.ComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n placeholder=\"Sélectionner {{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n [clearable]=\"field.IsClearable\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n [selectOnTab]=\"true\"\r\n (change)=\"onValueChanged($event)\"\r\n [readonly]=\"field.ReadOnly\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!-- InputSelect -->\r\n <!-- <div *ngSwitchCase=\"this.filterType.Custom\" class=\"form-group input\">\r\n <alg-input-selector #inputSelector\r\n type=\"text\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"this.field.ModalPropertyValue\"\r\n [modalPropertyName]=\"this.field.ModalPropertyName\"\r\n [modalEntityKey]=\"this.field.ModalEntityKey\"\r\n [modalTitle]=\"this.field.ModalTitle\"\r\n [readonly]=\"this.field.ReadOnly\">\r\n </alg-input-selector>\r\n </div> -->\r\n\r\n <!-- InputSelector with button -->\r\n <ng-container *ngSwitchCase=\"this.filterType.Custom\">\r\n <!-- <alg-selector\r\n #inputSelector\r\n type=\"text\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"field.ModalPropertyValue\"\r\n [modalPropertyName]=\"field.ModalPropertyName\"\r\n [modalEntityKey]=\"field.ModalEntityKey\"\r\n [modalTitle]=\"field.ModalTitle\">\r\n </alg-selector> -->\r\n\r\n <!-- *ngSwitchCase=\"filterType.Custom\" -->\r\n <ng-container *ngIf=\"field.ModalOnly\">\r\n <div class=\"pull-left input-select-default with-button\">\r\n <input\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n />\r\n </div> \r\n </ng-container>\r\n\r\n <alg-selector\r\n [field]=\"field\"\r\n [control]=\"this.control\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n \r\n >\r\n <!-- [control]=\"this.form.controls[field.PropertyName]\" -->\r\n </alg-selector>\r\n\r\n </ng-container>\r\n\r\n <!-- TreeSelector -->\r\n <ng-container *ngSwitchCase=\"this.filterType.TreeSelector\">\r\n <alg-input-tree-selector\r\n [items]=\"field.Data\"\r\n [id]=\"field.PropertyName\"\r\n [bindValue]=\"field.ValueMember\"\r\n [bindLabel]=\"field.DisplayMember\"\r\n childrenKey=\"children\"\r\n countKey=\"childrenCount\"\r\n [formControlName]=\"field.PropertyName\"\r\n placeholder=\"{{ field.Label }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </alg-input-tree-selector>\r\n </ng-container>\r\n\r\n <!-- TextWithbutton -->\r\n <ng-container\r\n *ngSwitchCase=\"this.filterType.TextWithButton\"\r\n class=\"form-group\"\r\n >\r\n <div class=\"input-with-button\">\r\n\r\n <input\r\n type=\"text\"\r\n class=\"form-control\"\r\n (change)=\"onValueChanged($event)\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"this.field.ReadOnly\"\r\n />\r\n\r\n <button\r\n class=\"btn btn-secondary btn-32 btn-input-select\"\r\n (click)=\"onClick(field)\"\r\n >\r\n <span class=\"fa fa-ellipsis-h\"></span>\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <!--HorizComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.HorizComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n class=\"horiz-combox-box\"\r\n placeholder=\"{{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!--Boolean Input-->\r\n <div *ngSwitchCase=\"filterType.CheckBox\" class=\"form-group\">\r\n <div class=\"checkbox-container\">\r\n <label class=\"switch\" [htmlFor]=\"field.PropertyName\">\r\n <input\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n type=\"checkbox\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <span class=\"slider round\"></span>\r\n </label>\r\n <span class=\"checkbox-label\">{{ field.Label }}</span>\r\n </div>\r\n </div>\r\n\r\n <!--Enum Input-->\r\n <div *ngSwitchCase=\"filterType.RadioButton\" class=\"form-group\">\r\n <div class=\"radio-button-container\">\r\n <form [formGroup]=\"form\" class=\"radio-buttons\">\r\n <div\r\n *ngFor=\"let data of field.Data;let indexOfData = index\" class=\"radio-button\">\r\n <input\r\n type=\"radio\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"getRadioButtonId(field.PropertyName,indexOfData)\"\r\n [value]=\"indexOfData\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <!-- [formControl]=\"this.formControl\" -->\r\n <label class=\"radio-button-label\">{{ data }}</label>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n\r\n <!-- Text zone with button -->\r\n <div *ngSwitchCase=\"filterType.TextZoneWithButton\"\r\n class=\"form-group\">\r\n <div class=\"text-zone-and-button\">\r\n <div class=\"text-zone-container\">\r\n <textarea\r\n #textarea\r\n type=\"text\"\r\n class=\"text-area\"\r\n spellcheck=\"false\"\r\n [formControlName]=\"field.ValueMember\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </textarea>\r\n </div>\r\n <div class=\"feedback-and-button\">\r\n <div class=\"feedback\">\r\n <div\r\n class=\"feedback-green\"\r\n *ngIf=\"field.TextWithStyle.GreenText.length > 0\"\r\n >\r\n {{ field.TextWithStyle.GreenText }}\r\n </div>\r\n <div\r\n class=\"feedback-yellow\"\r\n *ngIf=\"\r\n field.TextWithStyle.YellowText.length > 0\r\n \"\r\n >\r\n {{ field.TextWithStyle.YellowText }}\r\n </div>\r\n <div\r\n class=\"feedback-red\"\r\n *ngIf=\"field.TextWithStyle.RedText.length > 0\"\r\n >\r\n {{ field.TextWithStyle.RedText }}\r\n </div>\r\n </div>\r\n <button\r\n type=\"button\"\r\n id=\"botton-compile\"\r\n class=\"btn btn-primary btn-flat pull-right button\"\r\n (click)=\"onClick(field)\"\r\n >\r\n {{ field.ButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--Date -->\r\n <div *ngSwitchCase=\"filterType.Date\" class=\"form-group\">\r\n <div>\r\n <input\r\n type=\"text\"\r\n [class]=\"this.inputClass\"\r\n placeholder=\"Sélectionner une date\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [bsConfig]=\"bsConfig\"\r\n (bsValueChange)=\"onBsValueChanged($event)\"\r\n algDatepicker\r\n />\r\n <!-- (change)=\"onBsValueChanged($event)\" -->\r\n </div>\r\n </div>\r\n <!-- Text input -->\r\n <div *ngSwitchCase=\"filterType.DateTime\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n [type]=\"field.InputType\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!-- Text input -->\r\n <div *ngSwitchCase=\"filterType.Text\" class=\"form-group\">\r\n <div>\r\n <textarea\r\n type=\"text\"\r\n rows=\"5\"\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n >\r\n </textarea>\r\n </div>\r\n </div>\r\n\r\n <!-- DropFileZone -->\r\n <div\r\n *ngSwitchCase=\"filterType.DropFileZone\"\r\n class=\"form-group ml-4\"\r\n >\r\n <fieldset>\r\n <input\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n type=\"file\"\r\n class=\"ml--3\"\r\n (change)=\"fileEvent($event)\"\r\n />\r\n </fieldset>\r\n </div>\r\n\r\n <!-- Password -->\r\n <div *ngSwitchCase=\"filterType.Password\" class=\"form-group\">\r\n <div class=\"d-flex\">\r\n <div class=\"w-100 ml-15px\">\r\n <input\r\n [type]=\"hidePassword ? 'password' : 'text'\"\r\n [formControl]=\"control\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [name]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n autocomplete=\"new-password\"\r\n />\r\n </div>\r\n <!-- btn-32 pull-right button -->\r\n <button class=\"btn btn-secondary\" (click)=\"showPassword()\">\r\n <i class=\"fa fa-eye\" aria-hidden=\"true\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"this.hasValidationErrors()\">\r\n <div class=\"validation-message\">\r\n {{ this.getValidationErrors() }}\r\n </div>\r\n <!-- <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('required')\">\r\n Ce champ est obligatoire\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('min')\">\r\n Minimum: {{field.FieldValidators.MinValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('max')\">\r\n Maximum: {{field.FieldValidators.MaxValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('maxLength')\">\r\n Longueur maximale: {{field.FieldValidators.MaxLength}} caractères\r\n </ng-container> -->\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n</div>\r\n",
|
|
22168
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#
|
|
22644
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#4465c9}input:focus+.slider{box-shadow:0 0 1px #4465c9}input:checked+.slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translate(22px)}.slider.round{border-radius:25px}.slider.round:before{border-radius:50%}\n"],
|
|
22169
22645
|
dependencies: [
|
|
22170
22646
|
{
|
|
22171
22647
|
kind: "directive",
|
|
@@ -22415,7 +22891,7 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
22415
22891
|
changeDetection: ChangeDetectionStrategy.Eager,
|
|
22416
22892
|
standalone: false,
|
|
22417
22893
|
template: "<div [formGroup]=\"form\" class=\"field-container\">\r\n <ng-container *ngIf=\"field\">\r\n <div [hidden]=\"!!field.IsHidden\" [ngSwitch]=\"field.FilterType\">\r\n <div class=\"label-group\" *ngIf=\"showLabel\">\r\n <label *ngIf=\"field.FilterType != filterType.CheckBox && field.FilterType != filterType.HorizComboBox\"\r\n [htmlFor]=\"field.PropertyName\">\r\n {{ field.Label }}\r\n </label>\r\n <img\r\n *ngIf=\"field.Required\"\r\n class=\"required-icon\"\r\n [src]=\"this.getRequiredIcon()\"\r\n alt=\"obligatoire\"\r\n />\r\n </div>\r\n\r\n <!--String Input-->\r\n <div *ngSwitchCase=\"filterType.String\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n [type]=\"field.InputType\"\r\n (change)=\"this.onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n focusable\r\n />\r\n <!-- [(ngModel)]=\"this.entity[field.PropertyName]\" -->\r\n </div>\r\n </div>\r\n\r\n <!--Number Input-->\r\n <div *ngSwitchCase=\"filterType.Integer\" class=\"form-group\">\r\n <div>\r\n <!-- [readonly]=\"field.ReadOnly\" -->\r\n <input\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n (input)=\"onValueInput($event)\"\r\n type=\"number\"\r\n focusable ng-pattern=\"/^[0-9]+$/\" tabindex=\"0\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!--ComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.ComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n placeholder=\"Sélectionner {{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n [clearable]=\"field.IsClearable\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n [selectOnTab]=\"true\"\r\n (change)=\"onValueChanged($event)\"\r\n [readonly]=\"field.ReadOnly\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!-- InputSelect -->\r\n <!-- <div *ngSwitchCase=\"this.filterType.Custom\" class=\"form-group input\">\r\n <alg-input-selector #inputSelector\r\n type=\"text\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"this.field.ModalPropertyValue\"\r\n [modalPropertyName]=\"this.field.ModalPropertyName\"\r\n [modalEntityKey]=\"this.field.ModalEntityKey\"\r\n [modalTitle]=\"this.field.ModalTitle\"\r\n [readonly]=\"this.field.ReadOnly\">\r\n </alg-input-selector>\r\n </div> -->\r\n\r\n <!-- InputSelector with button -->\r\n <ng-container *ngSwitchCase=\"this.filterType.Custom\">\r\n <!-- <alg-selector\r\n #inputSelector\r\n type=\"text\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [modalPropertyValue]=\"field.ModalPropertyValue\"\r\n [modalPropertyName]=\"field.ModalPropertyName\"\r\n [modalEntityKey]=\"field.ModalEntityKey\"\r\n [modalTitle]=\"field.ModalTitle\">\r\n </alg-selector> -->\r\n\r\n <!-- *ngSwitchCase=\"filterType.Custom\" -->\r\n <ng-container *ngIf=\"field.ModalOnly\">\r\n <div class=\"pull-left input-select-default with-button\">\r\n <input\r\n class=\"form-control\"\r\n [readonly]=\"true\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n />\r\n </div> \r\n </ng-container>\r\n\r\n <alg-selector\r\n [field]=\"field\"\r\n [control]=\"this.control\"\r\n (change)=\"this.inputSelectorChanged($event)\"\r\n \r\n >\r\n <!-- [control]=\"this.form.controls[field.PropertyName]\" -->\r\n </alg-selector>\r\n\r\n </ng-container>\r\n\r\n <!-- TreeSelector -->\r\n <ng-container *ngSwitchCase=\"this.filterType.TreeSelector\">\r\n <alg-input-tree-selector\r\n [items]=\"field.Data\"\r\n [id]=\"field.PropertyName\"\r\n [bindValue]=\"field.ValueMember\"\r\n [bindLabel]=\"field.DisplayMember\"\r\n childrenKey=\"children\"\r\n countKey=\"childrenCount\"\r\n [formControlName]=\"field.PropertyName\"\r\n placeholder=\"{{ field.Label }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </alg-input-tree-selector>\r\n </ng-container>\r\n\r\n <!-- TextWithbutton -->\r\n <ng-container\r\n *ngSwitchCase=\"this.filterType.TextWithButton\"\r\n class=\"form-group\"\r\n >\r\n <div class=\"input-with-button\">\r\n\r\n <input\r\n type=\"text\"\r\n class=\"form-control\"\r\n (change)=\"onValueChanged($event)\"\r\n [name]=\"this.field.PropertyName\"\r\n [id]=\"this.field.PropertyName\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"this.field.ReadOnly\"\r\n />\r\n\r\n <button\r\n class=\"btn btn-secondary btn-32 btn-input-select\"\r\n (click)=\"onClick(field)\"\r\n >\r\n <span class=\"fa fa-ellipsis-h\"></span>\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <!--HorizComboBox Input-->\r\n <div *ngSwitchCase=\"filterType.HorizComboBox\" class=\"form-group\">\r\n <div>\r\n <ng-select\r\n appendTo=\"body\"\r\n class=\"horiz-combox-box\"\r\n placeholder=\"{{ field.Label }}\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [items]=\"field.Data\"\r\n [multiple]=\"field.MultipleSelection\"\r\n [hideSelected]=\"field.HideSelected\"\r\n bindValue=\"{{ field.ValueMember }}\"\r\n bindLabel=\"{{ field.DisplayMember }}\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </ng-select>\r\n </div>\r\n </div>\r\n\r\n <!--Boolean Input-->\r\n <div *ngSwitchCase=\"filterType.CheckBox\" class=\"form-group\">\r\n <div class=\"checkbox-container\">\r\n <label class=\"switch\" [htmlFor]=\"field.PropertyName\">\r\n <input\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n type=\"checkbox\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <span class=\"slider round\"></span>\r\n </label>\r\n <span class=\"checkbox-label\">{{ field.Label }}</span>\r\n </div>\r\n </div>\r\n\r\n <!--Enum Input-->\r\n <div *ngSwitchCase=\"filterType.RadioButton\" class=\"form-group\">\r\n <div class=\"radio-button-container\">\r\n <form [formGroup]=\"form\" class=\"radio-buttons\">\r\n <div\r\n *ngFor=\"let data of field.Data;let indexOfData = index\" class=\"radio-button\">\r\n <input\r\n type=\"radio\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"getRadioButtonId(field.PropertyName,indexOfData)\"\r\n [value]=\"indexOfData\"\r\n (change)=\"onValueChanged($event)\"\r\n />\r\n <!-- [formControl]=\"this.formControl\" -->\r\n <label class=\"radio-button-label\">{{ data }}</label>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n\r\n <!-- Text zone with button -->\r\n <div *ngSwitchCase=\"filterType.TextZoneWithButton\"\r\n class=\"form-group\">\r\n <div class=\"text-zone-and-button\">\r\n <div class=\"text-zone-container\">\r\n <textarea\r\n #textarea\r\n type=\"text\"\r\n class=\"text-area\"\r\n spellcheck=\"false\"\r\n [formControlName]=\"field.ValueMember\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n >\r\n </textarea>\r\n </div>\r\n <div class=\"feedback-and-button\">\r\n <div class=\"feedback\">\r\n <div\r\n class=\"feedback-green\"\r\n *ngIf=\"field.TextWithStyle.GreenText.length > 0\"\r\n >\r\n {{ field.TextWithStyle.GreenText }}\r\n </div>\r\n <div\r\n class=\"feedback-yellow\"\r\n *ngIf=\"\r\n field.TextWithStyle.YellowText.length > 0\r\n \"\r\n >\r\n {{ field.TextWithStyle.YellowText }}\r\n </div>\r\n <div\r\n class=\"feedback-red\"\r\n *ngIf=\"field.TextWithStyle.RedText.length > 0\"\r\n >\r\n {{ field.TextWithStyle.RedText }}\r\n </div>\r\n </div>\r\n <button\r\n type=\"button\"\r\n id=\"botton-compile\"\r\n class=\"btn btn-primary btn-flat pull-right button\"\r\n (click)=\"onClick(field)\"\r\n >\r\n {{ field.ButtonLabel }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--Date -->\r\n <div *ngSwitchCase=\"filterType.Date\" class=\"form-group\">\r\n <div>\r\n <input\r\n type=\"text\"\r\n [class]=\"this.inputClass\"\r\n placeholder=\"Sélectionner une date\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [bsConfig]=\"bsConfig\"\r\n (bsValueChange)=\"onBsValueChanged($event)\"\r\n algDatepicker\r\n />\r\n <!-- (change)=\"onBsValueChanged($event)\" -->\r\n </div>\r\n </div>\r\n <!-- Text input -->\r\n <div *ngSwitchCase=\"filterType.DateTime\" class=\"form-group\">\r\n <div>\r\n <input\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [id]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n [type]=\"field.InputType\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!-- Text input -->\r\n <div *ngSwitchCase=\"filterType.Text\" class=\"form-group\">\r\n <div>\r\n <textarea\r\n type=\"text\"\r\n rows=\"5\"\r\n [class]=\"this.inputClass\"\r\n [formControlName]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n >\r\n </textarea>\r\n </div>\r\n </div>\r\n\r\n <!-- DropFileZone -->\r\n <div\r\n *ngSwitchCase=\"filterType.DropFileZone\"\r\n class=\"form-group ml-4\"\r\n >\r\n <fieldset>\r\n <input\r\n [id]=\"field.PropertyName\"\r\n (change)=\"onValueChanged($event)\"\r\n type=\"file\"\r\n class=\"ml--3\"\r\n (change)=\"fileEvent($event)\"\r\n />\r\n </fieldset>\r\n </div>\r\n\r\n <!-- Password -->\r\n <div *ngSwitchCase=\"filterType.Password\" class=\"form-group\">\r\n <div class=\"d-flex\">\r\n <div class=\"w-100 ml-15px\">\r\n <input\r\n [type]=\"hidePassword ? 'password' : 'text'\"\r\n [formControl]=\"control\"\r\n (change)=\"onValueChanged($event)\"\r\n [id]=\"field.PropertyName\"\r\n [name]=\"field.PropertyName\"\r\n [readonly]=\"field.ReadOnly\"\r\n autocomplete=\"new-password\"\r\n />\r\n </div>\r\n <!-- btn-32 pull-right button -->\r\n <button class=\"btn btn-secondary\" (click)=\"showPassword()\">\r\n <i class=\"fa fa-eye\" aria-hidden=\"true\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"this.hasValidationErrors()\">\r\n <div class=\"validation-message\">\r\n {{ this.getValidationErrors() }}\r\n </div>\r\n <!-- <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('required')\">\r\n Ce champ est obligatoire\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('min')\">\r\n Minimum: {{field.FieldValidators.MinValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('max')\">\r\n Maximum: {{field.FieldValidators.MaxValue}}\r\n </ng-container>\r\n <ng-container *ngIf=\"this.form.controls[field.PropertyName]?.hasError('maxLength')\">\r\n Longueur maximale: {{field.FieldValidators.MaxLength}} caractères\r\n </ng-container> -->\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n</div>\r\n",
|
|
22418
|
-
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#
|
|
22894
|
+
styles: [".home-page{font-family:Open sans,sans-serif;background:#fff;-webkit-font-smoothing:antialiased;height:100%;width:100%;padding:16px}.main-container{margin:0 50px}.main-container-modal{width:calc(100% - 50px);margin:10px 25px 0}.moyen-titre{font-weight:700;font-size:24px;color:#4d5a81;margin:8px 0;border-bottom:solid 1px #DBE4FF}.grand-titre{font-weight:700;font-size:28px;color:#4d5a81;margin:0 0 8px}.petit-titre{font-weight:700;font-size:16px;color:#4d5a81;margin:0 0 8px}.petit-titre.underlined{border-bottom:solid 1px #4D5A81}.paragraph{padding:0 15px}.paragraph-highlight{padding:5px 15px 0 12px;border-left:5px solid #8EA7F8;border-bottom:1px solid #DBE4FF;border-top:1px solid #DBE4FF;border-right:1px solid #DBE4FF;background-color:#f7faff}.highlight{background-color:#f7faff;border:1px solid #DBE4FF;border-radius:5px;padding:15px;color:#3c5dc4;margin:0 0 16px}.highlight p{margin-bottom:0}.highlight:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"53.294\" height=\"50.629\" viewBox=\"0 0 53.294 50.629\">%0D%0A <path id=\"allerg\\e8ne\" d=\"M830.494,25.793l-5.814,6.783.727,8.963-8.721,1.938-4.6,7.752L803.847,47.6l-8.236,3.634-4.6-7.51-8.721-1.938.727-8.963L777.2,26.035l5.814-6.783-.727-8.963,8.721-1.938L795.61.6l8.236,3.634L812.083.6l4.6,7.752,8.721,1.938-.727,8.963Zm-24.467,2.422V13.681h-4.845V28.216Zm0,9.69V33.06h-4.845v4.845Z\" transform=\"translate(-777.2 -0.6)\"/>%0D%0A</svg>%0D%0A');background-repeat:no-repeat;margin:0 8px 24px 0;filter:invert(31%) sepia(51%) saturate(1323%) hue-rotate(199deg) brightness(99%) contrast(94%)}.notification{background-color:#dbe4ff;border:1px solid #C4D0F9;border-radius:5px;color:#4d5a81;margin:16px;padding:5px 15px;text-align:justify}.notification:before{position:relative;display:block;float:left;width:24px;height:24px;content:\" \";background-size:24px 24px;-webkit-background-size:24px 24px;background-image:url('data:image/svg+xml,<svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"info-circle\" class=\"svg-inline--fa fa-info-circle fa-w-16\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z\"></path></svg>');background-repeat:no-repeat;margin:0 8px 0 0;filter:invert(31%) sepia(8%) saturate(2329%) hue-rotate(188deg) brightness(103%) contrast(85%)}.notification-text{padding:0 15px 0 30px;font-size:16px}:host{width:100%}.input-select-default{width:100%}.input-select-default.with-button{padding-right:35px;margin-right:-32px}.btn-input-select{padding:6px 10px 8px 8px;border-top-right-radius:0;border-bottom-right-radius:0;width:32px;border-color:#adb5bd}.form-group{display:flex;flex-direction:column}.field-container{margin-bottom:5px}.comboBox-icon-and-text{display:inline-block}.comboBox-icon{margin-right:5px;margin-bottom:5px}.comboBox-text{padding-right:10px}.checkbox-label{margin-left:5px;margin-top:5px;flex:1}.checkbox-input{width:17px;height:17px}.radio-button-container{border:1px solid #cbc8d0;border-radius:5px;width:100%;margin-top:5px;padding-top:12px;display:flex;flex-direction:row;flex-wrap:wrap}.under-line{margin:3px 10px 5px}.radio-buttons{margin:0;display:flex;flex-direction:column}.radio-button{margin-right:20px}.radio-buttons input{margin-right:0;margin-left:10px;margin-top:0;height:18px;width:18px;min-height:18px;flex-grow:0}.radio-button-label{margin-right:10px;margin-bottom:12px;margin-left:5px;vertical-align:middle}.text-zone-and-button{width:100%;display:flex;flex-direction:column}.text-area{background-color:#343a40;border-radius:5px;color:#e6e65f;caret-color:#ff0;font-family:monospace;font-weight:700;font-size:large;width:100%;height:200px;padding:10px;cursor:text}.feedback-and-button,.input-with-button{display:flex;flex-direction:row;width:100%}.input-with-button input{margin-right:3px}.button{margin-right:0;margin-top:5px;float:right}.feedback{width:100%;float:left;padding-left:10px}.feedback-green{float:left;width:90%;color:green;font-weight:700}.feedback-yellow{float:left;width:90%;color:orange;font-weight:700}.feedback-red{float:left;width:90%;color:var(--red-error);font-weight:700}.errorMessage{display:block;color:var(--red-error);width:100%}.validation-message{color:#a94442!important;display:inline-block;font-size:small;margin:3px}::ng-deep .ng-select.horiz-combox-box{height:30px;width:230px}::ng-deep .ng-select.horiz-combox-box .ng-select-container{height:30px;width:230px}.ng-select.horiz-combox-box ::ng-deep .ng-select-container .ng-placeholder{color:#3e4152}.input alg-input-selector{width:73.6%;margin:.75rem 0 .75rem .95rem}.ml-15px{margin-left:15px;margin-top:.4em}.textButton{margin-top:.4em;padding-bottom:.4em;margin-right:.8rem}fieldset input.ml--3{margin-left:-3%!important}.label-group{color:var(--main-bg-color)}.label-group span{padding-top:5px;display:inline-block;margin-right:5px}.label-group .required-icon{height:8px;margin:-6px 0 5px 5px;filter:invert(25%) sepia(61%) saturate(2196%) hue-rotate(334deg) brightness(100%) contrast(94%)}.checkbox-container{display:flex;flex-direction:row;align-items:center}.switch{position:relative;display:inline-block;width:48px;height:26px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s}.slider:before{position:absolute;content:\"\";height:18px;width:18px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s}input:checked+.slider{background-color:#4465c9}input:focus+.slider{box-shadow:0 0 1px #4465c9}input:checked+.slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translate(22px)}.slider.round{border-radius:25px}.slider.round:before{border-radius:50%}\n"]
|
|
22419
22895
|
}]
|
|
22420
22896
|
}],
|
|
22421
22897
|
ctorParameters: () => [{ type: ValidationService }],
|
|
@@ -22975,7 +23451,8 @@ var CoreUxModule = class CoreUxModule {
|
|
|
22975
23451
|
DatePickerDirective,
|
|
22976
23452
|
GridStylePipe,
|
|
22977
23453
|
RowRefDirective,
|
|
22978
|
-
GridViewMenuComponent
|
|
23454
|
+
GridViewMenuComponent,
|
|
23455
|
+
GridDistinctFilterComponent
|
|
22979
23456
|
],
|
|
22980
23457
|
exports: [
|
|
22981
23458
|
ActionsComponent,
|
|
@@ -23171,7 +23648,8 @@ var CoreUxModule = class CoreUxModule {
|
|
|
23171
23648
|
FormsModule,
|
|
23172
23649
|
ReactiveFormsModule,
|
|
23173
23650
|
NgSelectModule,
|
|
23174
|
-
GridViewMenuComponent
|
|
23651
|
+
GridViewMenuComponent,
|
|
23652
|
+
GridDistinctFilterComponent
|
|
23175
23653
|
]
|
|
23176
23654
|
});
|
|
23177
23655
|
}
|
|
@@ -23194,7 +23672,8 @@ i0.ɵɵngDeclareClassMetadata({
|
|
|
23194
23672
|
DatePickerDirective,
|
|
23195
23673
|
GridStylePipe,
|
|
23196
23674
|
RowRefDirective,
|
|
23197
|
-
GridViewMenuComponent
|
|
23675
|
+
GridViewMenuComponent,
|
|
23676
|
+
GridDistinctFilterComponent
|
|
23198
23677
|
],
|
|
23199
23678
|
declarations: [...components],
|
|
23200
23679
|
exports: [...components, DatePickerDirective],
|