From 46ed2f84685932ed1b818f8a9681c3da1f4482fd Mon Sep 17 00:00:00 2001 From: Younes ENNAJI Date: Sat, 8 Mar 2025 12:02:07 +0000 Subject: [PATCH] update symfony demo --- demo/symfony/composer.lock | 4 +- demo/symfony/config/packages/flasher.yaml | 13 ++- .../symfony/config/packages/web_profiler.yaml | 2 +- .../public/vendor/flasher/flasher-noty.min.js | 2 +- .../vendor/flasher/flasher-notyf.min.js | 2 +- .../vendor/flasher/flasher-sweetalert.min.js | 2 +- .../vendor/flasher/flasher-toastr.min.js | 2 +- .../public/vendor/flasher/flasher.min.css | 20 ++++- .../public/vendor/flasher/flasher.min.js | 2 +- .../public/vendor/flasher/manifest.json | 46 +++++++++-- .../flasher/themes/amazon/amazon.min.css | 1 + .../flasher/themes/amazon/amazon.min.js | 1 + .../vendor/flasher/themes/amber/amber.min.css | 1 + .../vendor/flasher/themes/amber/amber.min.js | 1 + .../flasher/themes/aurora/aurora.min.css | 1 + .../flasher/themes/aurora/aurora.min.js | 1 + .../flasher/themes/crystal/crystal.min.css | 1 + .../flasher/themes/crystal/crystal.min.js | 1 + .../flasher/themes/emerald/emerald.min.css | 1 + .../flasher/themes/emerald/emerald.min.js | 1 + .../flasher/themes/facebook/facebook.min.css | 1 + .../flasher/themes/facebook/facebook.min.js | 1 + .../flasher/themes/flasher/flasher.min.css | 1 + .../flasher/themes/flasher/flasher.min.js | 1 + .../flasher/themes/google/google.min.css | 1 + .../flasher/themes/google/google.min.js | 1 + .../vendor/flasher/themes/ios/ios.min.css | 1 + .../vendor/flasher/themes/ios/ios.min.js | 1 + .../vendor/flasher/themes/jade/jade.min.css | 1 + .../vendor/flasher/themes/jade/jade.min.js | 1 + .../flasher/themes/material/material.min.css | 1 + .../flasher/themes/material/material.min.js | 1 + .../flasher/themes/minimal/minimal.min.css | 1 + .../flasher/themes/minimal/minimal.min.js | 1 + .../vendor/flasher/themes/neon/neon.min.css | 1 + .../vendor/flasher/themes/neon/neon.min.js | 1 + .../vendor/flasher/themes/onyx/onyx.min.css | 1 + .../vendor/flasher/themes/onyx/onyx.min.js | 1 + .../vendor/flasher/themes/ruby/ruby.min.css | 1 + .../vendor/flasher/themes/ruby/ruby.min.js | 1 + .../flasher/themes/sapphire/sapphire.min.css | 1 + .../flasher/themes/sapphire/sapphire.min.js | 1 + .../vendor/flasher/themes/slack/slack.min.css | 1 + .../vendor/flasher/themes/slack/slack.min.js | 1 + .../symfony/src/Controller/HomeController.php | 80 ++++++++++++++++--- demo/symfony/templates/base.html.twig | 11 +-- 46 files changed, 186 insertions(+), 34 deletions(-) create mode 100644 demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/amber/amber.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/amber/amber.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/google/google.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/google/google.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/ios/ios.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/ios/ios.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/jade/jade.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/jade/jade.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/material/material.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/material/material.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/neon/neon.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/neon/neon.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.js create mode 100644 demo/symfony/public/vendor/flasher/themes/slack/slack.min.css create mode 100644 demo/symfony/public/vendor/flasher/themes/slack/slack.min.js diff --git a/demo/symfony/composer.lock b/demo/symfony/composer.lock index 0eb3a9fd..4364a418 100644 --- a/demo/symfony/composer.lock +++ b/demo/symfony/composer.lock @@ -2844,11 +2844,11 @@ }, { "name": "php-flasher/php-flasher", - "version": "2.1.4.x-dev", + "version": "2.x-dev", "dist": { "type": "path", "url": "../..", - "reference": "1b3b0bd08f88defc3195023741a3094a568a0b9e" + "reference": "2a3ff7beaf4b12fc03463bd5f1a838a019688a43" }, "require": { "ext-intl": "*", diff --git a/demo/symfony/config/packages/flasher.yaml b/demo/symfony/config/packages/flasher.yaml index 0193aba2..e070ba81 100644 --- a/demo/symfony/config/packages/flasher.yaml +++ b/demo/symfony/config/packages/flasher.yaml @@ -1,7 +1,7 @@ - flasher: # Default notification library (e.g., 'flasher', 'toastr', 'noty', etc.) - default: flasher + # themes: flasher, crystal, emerald, sapphire + default: theme.flasher # Path to the main JavaScript file of PHPFlasher main_script: '/vendor/flasher/flasher.min.js' @@ -19,7 +19,7 @@ flasher: # Global options options: # timeout in milliseconds - timeout: 5000 + timeout: 10000 position: 'top-right' # Map Symfony session keys to PHPFlasher notification types @@ -33,3 +33,10 @@ flasher: filter: # Limit number of displayed notifications # limit: 5 + + plugins: + theme.jade: + scripts: ['/vendor/flasher/themes/jade/jade.min.js'] + styles: + # - '/vendor/flasher/flasher.min.css' + - '/vendor/flasher/themes/jade/jade.min.css' diff --git a/demo/symfony/config/packages/web_profiler.yaml b/demo/symfony/config/packages/web_profiler.yaml index b9461110..d1a73dcc 100644 --- a/demo/symfony/config/packages/web_profiler.yaml +++ b/demo/symfony/config/packages/web_profiler.yaml @@ -1,6 +1,6 @@ when@dev: web_profiler: - toolbar: true + toolbar: false intercept_redirects: false framework: diff --git a/demo/symfony/public/vendor/flasher/flasher-noty.min.js b/demo/symfony/public/vendor/flasher/flasher-noty.min.js index a644ef19..d003f8cb 100644 --- a/demo/symfony/public/vendor/flasher/flasher-noty.min.js +++ b/demo/symfony/public/vendor/flasher/flasher-noty.min.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@flasher/flasher"),require("noty")):"function"==typeof define&&define.amd?define(["@flasher/flasher","noty"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).Noty=t(e.flasher,e.Noty)}(this,(function(e,t){"use strict";class s{success(e,t,s){this.flash("success",e,t,s)}error(e,t,s){this.flash("error",e,t,s)}info(e,t,s){this.flash("info",e,t,s)}warning(e,t,s){this.flash("warning",e,t,s)}flash(e,t,s,o){if("object"==typeof e?(e=(o=e).type,t=o.message,s=o.title):"object"==typeof t?(t=(o=t).message,s=o.title):"object"==typeof s&&(s=(o=s).title),void 0===t)throw new Error("message option is required");const n={type:e,message:t,title:s||e,options:o||{},metadata:{plugin:""}};this.renderOptions(o||{}),this.renderEnvelopes([n])}}const o=new class extends s{renderEnvelopes(e){e.forEach((e=>{var s;const o=Object.assign({text:e.message,type:e.type},e.options),n=new t(o);n.show(),null===(s=n.layoutDom)||void 0===s||(s.dataset.turboTemporary="")}))}renderOptions(e){t.overrideDefaults(Object.assign({timeout:e.timeout||5e3},e))}};return e.addPlugin("noty",o),o})); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@flasher/flasher"),require("noty")):"function"==typeof define&&define.amd?define(["@flasher/flasher","noty"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).Noty=t(e.flasher,e.Noty)}(this,(function(e,t){"use strict";class s{success(e,t,s){this.flash("success",e,t,s)}error(e,t,s){this.flash("error",e,t,s)}info(e,t,s){this.flash("info",e,t,s)}warning(e,t,s){this.flash("warning",e,t,s)}flash(e,t,s,o){let i,n,r,a={};if("object"==typeof e?(a=Object.assign({},e),i=a.type,n=a.message,r=a.title,delete a.type,delete a.message,delete a.title):"object"==typeof t?(a=Object.assign({},t),i=e,n=a.message,r=a.title,delete a.message,delete a.title):"object"==typeof s?(a=Object.assign({},s),i=e,n=t,r=a.title,delete a.title):(i=e,n=t,r=s,a=o||{}),!i)throw new Error("Type is required for notifications");if(null==n)throw new Error("Message is required for notifications");const l={type:i,message:n,title:r||i,options:a,metadata:{plugin:""}};this.renderOptions(a),this.renderEnvelopes([l])}}const o=new class extends s{constructor(){super(...arguments),this.defaultOptions={timeout:1e4}}renderEnvelopes(e){(null==e?void 0:e.length)&&e.forEach((e=>{try{const s=Object.assign({text:e.message,type:e.type},this.defaultOptions);e.options&&Object.assign(s,e.options);const o=new t(s);o.show();const i=o.layoutDom;i&&"object"==typeof i.dataset&&(i.dataset.turboTemporary="")}catch(t){console.error("PHPFlasher Noty: Error rendering notification",t,e)}}))}renderOptions(e){e&&(Object.assign(this.defaultOptions,e),t.overrideDefaults(this.defaultOptions))}};return e.addPlugin("noty",o),o})); diff --git a/demo/symfony/public/vendor/flasher/flasher-notyf.min.js b/demo/symfony/public/vendor/flasher/flasher-notyf.min.js index 821cbb5a..4c5846b3 100644 --- a/demo/symfony/public/vendor/flasher/flasher-notyf.min.js +++ b/demo/symfony/public/vendor/flasher/flasher-notyf.min.js @@ -1 +1 @@ -!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?module.exports=i(require("@flasher/flasher")):"function"==typeof define&&define.amd?define(["@flasher/flasher"],i):(t="undefined"!=typeof globalThis?globalThis:t||self).notyf=i(t.flasher)}(this,(function(t){"use strict";class i{success(t,i,e){this.flash("success",t,i,e)}error(t,i,e){this.flash("error",t,i,e)}info(t,i,e){this.flash("info",t,i,e)}warning(t,i,e){this.flash("warning",t,i,e)}flash(t,i,e,n){if("object"==typeof t?(t=(n=t).type,i=n.message,e=n.title):"object"==typeof i?(i=(n=i).message,e=n.title):"object"==typeof e&&(e=(n=e).title),void 0===i)throw new Error("message option is required");const o={type:t,message:i,title:e||t,options:n||{},metadata:{plugin:""}};this.renderOptions(n||{}),this.renderEnvelopes([o])}}var e,n=function(){return n=Object.assign||function(t){for(var i,e=1,n=arguments.length;e{var i;const e=Object.assign(Object.assign({},t),t.options);null===(i=this.notyf)||void 0===i||i.open(e)})),this.notyf.view.container.dataset.turboTemporary="",this.notyf.view.a11yContainer.dataset.turboTemporary=""}renderOptions(t){const i=Object.assign({duration:t.duration||5e3},t);i.types=i.types||[],i.types.push({type:"info",className:"notyf__toast--info",background:"#5784E5",icon:{className:"notyf__icon--info",tagName:"i"}}),i.types.push({type:"warning",className:"notyf__toast--warning",background:"#E3A008",icon:{className:"notyf__icon--warning",tagName:"i"}}),this.notyf=this.notyf||new p(i)}};return t.addPlugin("notyf",f),f})); +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@flasher/flasher")):"function"==typeof define&&define.amd?define(["@flasher/flasher"],e):(t="undefined"!=typeof globalThis?globalThis:t||self).notyf=e(t.flasher)}(this,(function(t){"use strict";class e{success(t,e,i){this.flash("success",t,e,i)}error(t,e,i){this.flash("error",t,e,i)}info(t,e,i){this.flash("info",t,e,i)}warning(t,e,i){this.flash("warning",t,e,i)}flash(t,e,i,n){let o,s,a,r={};if("object"==typeof t?(r=Object.assign({},t),o=r.type,s=r.message,a=r.title,delete r.type,delete r.message,delete r.title):"object"==typeof e?(r=Object.assign({},e),o=t,s=r.message,a=r.title,delete r.message,delete r.title):"object"==typeof i?(r=Object.assign({},i),o=t,s=e,a=r.title,delete r.title):(o=t,s=e,a=i,r=n||{}),!o)throw new Error("Type is required for notifications");if(null==s)throw new Error("Message is required for notifications");const c={type:o,message:s,title:a||o,options:r,metadata:{plugin:""}};this.renderOptions(r),this.renderEnvelopes([c])}}var i,n=function(){return n=Object.assign||function(t){for(var e,i=1,n=arguments.length;i{var e;try{const i=Object.assign(Object.assign({},t),t.options);null===(e=this.notyf)||void 0===e||e.open(i)}catch(e){console.error("PHPFlasher Notyf: Error rendering notification",e,t)}}));try{if(this.notyf){const t=this.notyf.view.container,e=this.notyf.view.a11yContainer;t&&t.dataset&&(t.dataset.turboTemporary=""),e&&e.dataset&&(e.dataset.turboTemporary="")}}catch(t){console.error("PHPFlasher Notyf: Error setting Turbo compatibility",t)}}renderOptions(t){if(!t)return;const e=Object.assign({duration:t.duration||1e4},t);e.types=e.types||[],this.addTypeIfNotExists(e.types,{type:"info",className:"notyf__toast--info",background:"#5784E5",icon:{className:"notyf__icon--info",tagName:"i"}}),this.addTypeIfNotExists(e.types,{type:"warning",className:"notyf__toast--warning",background:"#E3A008",icon:{className:"notyf__icon--warning",tagName:"i"}}),this.notyf=this.notyf||new p(e)}initializeNotyf(){this.notyf||this.renderOptions({duration:1e4,position:{x:"right",y:"top"},dismissible:!0})}addTypeIfNotExists(t,e){t.some((t=>t.type===e.type))||t.push(e)}};return t.addPlugin("notyf",f),f})); diff --git a/demo/symfony/public/vendor/flasher/flasher-sweetalert.min.js b/demo/symfony/public/vendor/flasher/flasher-sweetalert.min.js index b06f1f8d..0929e9e7 100644 --- a/demo/symfony/public/vendor/flasher/flasher-sweetalert.min.js +++ b/demo/symfony/public/vendor/flasher/flasher-sweetalert.min.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@flasher/flasher"),require("sweetalert2")):"function"==typeof define&&define.amd?define(["@flasher/flasher","sweetalert2"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).sweetalert=t(e.flasher,e.Swal)}(this,(function(e,t){"use strict";function s(e,t,s,n){return new(s||(s=Promise))((function(i,r){function o(e){try{a(n.next(e))}catch(e){r(e)}}function l(e){try{a(n.throw(e))}catch(e){r(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,l)}a((n=n.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class n{success(e,t,s){this.flash("success",e,t,s)}error(e,t,s){this.flash("error",e,t,s)}info(e,t,s){this.flash("info",e,t,s)}warning(e,t,s){this.flash("warning",e,t,s)}flash(e,t,s,n){if("object"==typeof e?(e=(n=e).type,t=n.message,s=n.title):"object"==typeof t?(t=(n=t).message,s=n.title):"object"==typeof s&&(s=(n=s).title),void 0===t)throw new Error("message option is required");const i={type:e,message:t,title:s||e,options:n||{},metadata:{plugin:""}};this.renderOptions(n||{}),this.renderEnvelopes([i])}}const i=new class extends n{renderEnvelopes(e){return s(this,void 0,void 0,(function*(){for(const t of e)yield this.renderEnvelope(t)}))}renderOptions(e){this.sweetalert=this.sweetalert||t.mixin(Object.assign({timer:e.timer||5e3,timerProgressBar:e.timerProgressBar||!0},e)),document.addEventListener("turbo:before-cache",(()=>{var e;t.isVisible()&&(null===(e=t.getPopup())||void 0===e||e.style.setProperty("animation-duration","0ms"),t.close())}))}renderEnvelope(e){return s(this,void 0,void 0,(function*(){var t;let{options:s}=e;s=Object.assign(Object.assign({},s),{icon:(null==s?void 0:s.icon)||e.type,text:(null==s?void 0:s.text)||e.message}),yield null===(t=this.sweetalert)||void 0===t?void 0:t.fire(s).then((t=>{window.dispatchEvent(new CustomEvent("flasher:sweetalert:promise",{detail:{promise:t,envelope:e}}))}))}))}};return e.addPlugin("sweetalert",i),i})); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@flasher/flasher"),require("sweetalert2")):"function"==typeof define&&define.amd?define(["@flasher/flasher","sweetalert2"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).sweetalert=t(e.flasher,e.Swal)}(this,(function(e,t){"use strict";function r(e,t,r,s){return new(r||(r=Promise))((function(i,n){function o(e){try{a(s.next(e))}catch(e){n(e)}}function l(e){try{a(s.throw(e))}catch(e){n(e)}}function a(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,l)}a((s=s.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class s{success(e,t,r){this.flash("success",e,t,r)}error(e,t,r){this.flash("error",e,t,r)}info(e,t,r){this.flash("info",e,t,r)}warning(e,t,r){this.flash("warning",e,t,r)}flash(e,t,r,s){let i,n,o,l={};if("object"==typeof e?(l=Object.assign({},e),i=l.type,n=l.message,o=l.title,delete l.type,delete l.message,delete l.title):"object"==typeof t?(l=Object.assign({},t),i=e,n=l.message,o=l.title,delete l.message,delete l.title):"object"==typeof r?(l=Object.assign({},r),i=e,n=t,o=l.title,delete l.title):(i=e,n=t,o=r,l=s||{}),!i)throw new Error("Type is required for notifications");if(null==n)throw new Error("Message is required for notifications");const a={type:i,message:n,title:o||i,options:l,metadata:{plugin:""}};this.renderOptions(l),this.renderEnvelopes([a])}}const i=new class extends s{renderEnvelopes(e){return r(this,void 0,void 0,(function*(){this.sweetalert||this.initializeSweetAlert();try{for(const t of e)yield this.renderEnvelope(t)}catch(e){console.error("PHPFlasher SweetAlert: Error rendering envelopes",e)}}))}renderOptions(e){try{this.sweetalert=this.sweetalert||t.mixin(Object.assign({timer:e.timer||1e4,timerProgressBar:e.timerProgressBar||!0},e)),this.setupTurboCompatibility()}catch(e){console.error("PHPFlasher SweetAlert: Error applying options",e)}}renderEnvelope(e){return r(this,void 0,void 0,(function*(){var t;try{let{options:r}=e;r=Object.assign(Object.assign({},r),{icon:(null==r?void 0:r.icon)||e.type,text:(null==r?void 0:r.text)||e.message});const s=yield null===(t=this.sweetalert)||void 0===t?void 0:t.fire(r);this.dispatchResultEvent(s,e)}catch(t){console.error("PHPFlasher SweetAlert: Error rendering envelope",t,e)}}))}initializeSweetAlert(){this.sweetalert||this.renderOptions({timer:1e4,timerProgressBar:!0})}setupTurboCompatibility(){document.addEventListener("turbo:before-cache",(()=>{if(t.isVisible()){const e=t.getPopup();e&&e.style.setProperty("animation-duration","0ms"),t.close()}}))}dispatchResultEvent(e,t){e&&window.dispatchEvent(new CustomEvent("flasher:sweetalert:promise",{detail:{promise:e,envelope:t}}))}};return e.addPlugin("sweetalert",i),i})); diff --git a/demo/symfony/public/vendor/flasher/flasher-toastr.min.js b/demo/symfony/public/vendor/flasher/flasher-toastr.min.js index 06f5c9ba..d85bd313 100644 --- a/demo/symfony/public/vendor/flasher/flasher-toastr.min.js +++ b/demo/symfony/public/vendor/flasher/flasher-toastr.min.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@flasher/flasher"),require("toastr")):"function"==typeof define&&define.amd?define(["@flasher/flasher","toastr"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).toastr=t(e.flasher,e.toastr)}(this,(function(e,t){"use strict";class s{success(e,t,s){this.flash("success",e,t,s)}error(e,t,s){this.flash("error",e,t,s)}info(e,t,s){this.flash("info",e,t,s)}warning(e,t,s){this.flash("warning",e,t,s)}flash(e,t,s,r){if("object"==typeof e?(e=(r=e).type,t=r.message,s=r.title):"object"==typeof t?(t=(r=t).message,s=r.title):"object"==typeof s&&(s=(r=s).title),void 0===t)throw new Error("message option is required");const o={type:e,message:t,title:s||e,options:r||{},metadata:{plugin:""}};this.renderOptions(r||{}),this.renderEnvelopes([o])}}const r=new class extends s{renderEnvelopes(e){e.forEach((e=>{const{message:s,title:r,type:o,options:i}=e,n=t[o](s,r,i);n&&n.parent().attr("data-turbo-temporary","")}))}renderOptions(e){t.options=Object.assign({timeOut:e.timeOut||5e3,progressBar:e.progressBar||!0},e)}};return e.addPlugin("toastr",r),r})); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@flasher/flasher"),require("toastr")):"function"==typeof define&&define.amd?define(["@flasher/flasher","toastr"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).toastr=t(e.flasher,e.toastr)}(this,(function(e,t){"use strict";class r{success(e,t,r){this.flash("success",e,t,r)}error(e,t,r){this.flash("error",e,t,r)}info(e,t,r){this.flash("info",e,t,r)}warning(e,t,r){this.flash("warning",e,t,r)}flash(e,t,r,s){let o,i,n,a={};if("object"==typeof e?(a=Object.assign({},e),o=a.type,i=a.message,n=a.title,delete a.type,delete a.message,delete a.title):"object"==typeof t?(a=Object.assign({},t),o=e,i=a.message,n=a.title,delete a.message,delete a.title):"object"==typeof r?(a=Object.assign({},r),o=e,i=t,n=a.title,delete a.title):(o=e,i=t,n=r,a=s||{}),!o)throw new Error("Type is required for notifications");if(null==i)throw new Error("Message is required for notifications");const l={type:o,message:i,title:n||o,options:a,metadata:{plugin:""}};this.renderOptions(a),this.renderEnvelopes([l])}}const s=new class extends r{renderEnvelopes(e){(null==e?void 0:e.length)&&this.isDependencyAvailable()&&e.forEach((e=>{try{const{message:r,title:s,type:o,options:i}=e,n=t[o](r,s,i);if(n&&n.parent)try{const e=n.parent();e&&"function"==typeof e.attr&&e.attr("data-turbo-temporary","")}catch(e){console.error("PHPFlasher Toastr: Error setting Turbo compatibility",e)}}catch(t){console.error("PHPFlasher Toastr: Error rendering notification",t,e)}}))}renderOptions(e){if(this.isDependencyAvailable())try{t.options=Object.assign({timeOut:e.timeOut||1e4,progressBar:e.progressBar||!0},e)}catch(e){console.error("PHPFlasher Toastr: Error applying options",e)}}isDependencyAvailable(){return!(!window.jQuery&&!window.$)||(console.error("PHPFlasher Toastr: jQuery is required but not loaded. Make sure jQuery is loaded before using Toastr."),!1)}};return e.addPlugin("toastr",s),s})); diff --git a/demo/symfony/public/vendor/flasher/flasher.min.css b/demo/symfony/public/vendor/flasher/flasher.min.css index 188be96d..a7b0ad10 100644 --- a/demo/symfony/public/vendor/flasher/flasher.min.css +++ b/demo/symfony/public/vendor/flasher/flasher.min.css @@ -1,2 +1,18 @@ -:root{--background-color:#fff;--text-color:#4b5563;--dark-background-color:#0f172a;--dark-text-color:#fff;--success-color:#10b981;--info-color:#3b82f6;--warning-color:#f59e0b;--error-color:#ef4444;--success-color-light:#d4f7eb;--info-color-light:#d4e1f7;--warning-color-light:#fce8cf;--error-color-light:#f9d2d2}.fl-wrapper{position:fixed;-webkit-transition:all 1s ease-in-out;-moz-transition:all 1s ease-in-out;transition:all 1s ease-in-out;width:24em;z-index:10}@media only screen and (width <= 480px){.fl-wrapper{left:5%;right:5%;width:90%}}.fl-wrapper[data-position^=top-]{top:.5em}.fl-wrapper[data-position^=bottom-]{bottom:.5em}.fl-wrapper[data-position$=-right]{right:.5em}.fl-wrapper[data-position$=-right] .fl-container{-webkit-transform:translateX(110%);-moz-transform:translateX(110%);-ms-transform:translateX(110%);transform:translateX(110%)}.fl-wrapper[data-position$=-left]{left:.5em}.fl-wrapper[data-position$=-left] .fl-container{-webkit-transform:translateX(-110%);-moz-transform:translateX(-110%);-ms-transform:translateX(-110%);transform:translateX(-110%)}.fl-wrapper[data-position$=-center]{left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.fl-wrapper[data-position=top-center] .fl-container{-webkit-transform:translateY(-100vh);-moz-transform:translateY(-100vh);-ms-transform:translateY(-100vh);transform:translateY(-100vh)}.fl-wrapper[data-position=bottom-center] .fl-container{-webkit-transform:translateY(100vh);-moz-transform:translateY(100vh);-ms-transform:translateY(100vh);transform:translateY(100vh)}.fl-container{color:var(--text-color);opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px);-webkit-transition:all .5s ease-in-out;-moz-transition:all .5s ease-in-out;transition:all .5s ease-in-out}.fl-container.fl-show{opacity:1;-webkit-transform:translate(0)!important;-moz-transform:translate(0)!important;-ms-transform:translate(0)!important;transform:translate(0)!important}.fl-container.fl-rtl{direction:rtl}.fl-icon{border-radius:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#fff;display:inline-block;height:1em;margin:0;min-height:1em;min-width:1em;position:relative;-webkit-transition:all 1s;-moz-transition:all 1s;transition:all 1s;width:1em}.fl-icon:after,.fl-icon:before{border-width:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;content:"";position:absolute;-webkit-transition:all 1s;-moz-transition:all 1s;transition:all 1s}.fl-success .fl-icon:after,.fl-success .fl-icon:before{background-color:currentcolor;border-radius:.1em;height:.6em;left:.35em;top:.6em;-webkit-transform:rotate(-135deg);-moz-transform:rotate(-135deg);-ms-transform:rotate(-135deg);transform:rotate(-135deg);-webkit-transform-origin:.08em .08em;-moz-transform-origin:.08em .08em;-ms-transform-origin:.08em .08em;transform-origin:.08em .08em;width:.16em}.fl-success .fl-icon:after{height:.16em;width:.4em}.fl-info .fl-icon:after,.fl-info .fl-icon:before{background-color:currentcolor;border-radius:.03em;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:.15em}.fl-info .fl-icon:before{height:.38em;top:.4em}.fl-info .fl-icon:after{-webkit-box-shadow:-.06em .19em,-.06em .44em,.06em .44em;box-shadow:-.06em .19em,-.06em .44em,.06em .44em;height:.13em;top:.21em}.fl-warning .fl-icon:after,.fl-warning .fl-icon:before{background-color:currentcolor;border-radius:.03em;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:.15em}.fl-warning .fl-icon:before{height:.38em;top:.21em}.fl-warning .fl-icon:after{height:.13em;top:.65em}.fl-error .fl-icon:after,.fl-error .fl-icon:before{background-color:currentcolor;border-radius:.1em;height:.7em;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) rotate(-135deg);-moz-transform:translate(-50%,-50%) rotate(-135deg);-ms-transform:translate(-50%,-50%) rotate(-135deg);transform:translate(-50%,-50%) rotate(-135deg);width:.16em}.fl-error .fl-icon:after{-webkit-transform:translate(-50%,-50%) rotate(-45deg);-moz-transform:translate(-50%,-50%) rotate(-45deg);-ms-transform:translate(-50%,-50%) rotate(-45deg);transform:translate(-50%,-50%) rotate(-45deg)}.fl-success .fl-icon{background-color:var(--success-color)}.fl-info .fl-icon{background-color:var(--info-color)}.fl-warning .fl-icon{background-color:var(--warning-color)}.fl-error .fl-icon{background-color:var(--error-color)}.fl-progress-bar{bottom:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:.125em;left:0;position:absolute;right:0}.fl-success .fl-progress-bar{background-color:var(--success-color-light)}.fl-success .fl-progress-bar .fl-progress{background-color:var(--success-color)}.fl-info .fl-progress-bar{background-color:var(--info-color-light)}.fl-info .fl-progress-bar .fl-progress{background-color:var(--info-color)}.fl-warning .fl-progress-bar{background-color:var(--warning-color-light)}.fl-warning .fl-progress-bar .fl-progress{background-color:var(--warning-color)}.fl-error .fl-progress-bar{background-color:var(--error-color-light)}.fl-error .fl-progress-bar .fl-progress{background-color:var(--error-color)} -body.fl-dark .fl-flasher,html.fl-dark .fl-flasher{--background-color:var(--dark-background-color);--text-color:var(--dark-text-color)}.fl-flasher{background-color:var(--background-color);border-bottom:none;-webkit-box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);color:var(--text-color);line-height:1.5;margin:.75em 0;padding:.75em;position:relative;word-break:break-word}.fl-flasher.fl-rtl{border-radius:0 .375em .375em 0}.fl-flasher:not(.fl-rtl){border-radius:.375em 0 0 .375em}.fl-flasher .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-flasher .fl-icon{font-size:2.5em}.fl-flasher .fl-message,.fl-flasher .fl-title{display:block;line-height:1.25em;margin-left:1em;margin-right:1em}.fl-flasher .fl-title{font-size:1em;font-weight:700}.fl-flasher .fl-message{font-size:.875em;margin-top:.25em}.fl-flasher .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:transparent;border:none;color:#a8aaab;cursor:pointer;display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:inline-flex;font-size:25px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;line-height:0;margin:-.5rem;padding:.5rem;position:absolute;right:.5rem;top:1rem;-webkit-transition:color .3s ease,-webkit-transform .3s ease;transition:color .3s ease,-webkit-transform .3s ease;-moz-transition:color .3s ease,transform .3s ease,-moz-transform .3s ease;transition:color .3s ease,transform .3s ease;transition:color .3s ease,transform .3s ease,-webkit-transform .3s ease,-moz-transform .3s ease}.fl-flasher .fl-close:hover{color:#8e9192;-webkit-transform:scale(1.1);-moz-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}.fl-flasher.fl-rtl .fl-close{left:.5rem;right:auto}.fl-flasher.fl-success{border-left:.8em solid var(--success-color)}.fl-flasher.fl-success.fl-rtl{border-left:none;border-right:.8em solid var(--success-color)}.fl-flasher.fl-success:not(.fl-rtl){border-left:.8em solid var(--success-color);border-right:none}.fl-flasher.fl-success .fl-title{color:var(--success-color)}.fl-flasher.fl-info{border-left:.8em solid var(--info-color)}.fl-flasher.fl-info.fl-rtl{border-left:none;border-right:.8em solid var(--info-color)}.fl-flasher.fl-info:not(.fl-rtl){border-left:.8em solid var(--info-color);border-right:none}.fl-flasher.fl-info .fl-title{color:var(--info-color)}.fl-flasher.fl-warning{border-left:.8em solid var(--warning-color)}.fl-flasher.fl-warning.fl-rtl{border-left:none;border-right:.8em solid var(--warning-color)}.fl-flasher.fl-warning:not(.fl-rtl){border-left:.8em solid var(--warning-color);border-right:none}.fl-flasher.fl-warning .fl-title{color:var(--warning-color)}.fl-flasher.fl-error{border-left:.8em solid var(--error-color)}.fl-flasher.fl-error.fl-rtl{border-left:none;border-right:.8em solid var(--error-color)}.fl-flasher.fl-error:not(.fl-rtl){border-left:.8em solid var(--error-color);border-right:none}.fl-flasher.fl-error .fl-title{color:var(--error-color)} \ No newline at end of file +:root{--fl-success:#10b981;--fl-info:#3b82f6;--fl-warning:#f59e0b;--fl-error:#ef4444;--fl-success-light:color-mix(in srgb,var(--fl-success) 10%,transparent);--fl-info-light:color-mix(in srgb,var(--fl-info) 10%,transparent);--fl-warning-light:color-mix(in srgb,var(--fl-warning) 10%,transparent);--fl-error-light:color-mix(in srgb,var(--fl-error) 10%,transparent);--fl-white:#fff;--fl-black:#000;--fl-bg-light:var(--fl-white);--fl-bg-dark:#0f172a;--fl-text-light:#4b5563;--fl-text-dark:var(--fl-white);--fl-font:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--fl-border-radius:4px;--fl-shadow:0 4px 12px rgba(0,0,0,.15);--fl-shadow-dark:0 4px 12px rgba(0,0,0,.35);--fl-transition:0.4s cubic-bezier(0.23,1,0.32,1);--background-color:var(--fl-bg-light);--text-color:var(--fl-text-light);--dark-background-color:var(--fl-bg-dark);--dark-text-color:var(--fl-text-dark);--success-color:var(--fl-success);--info-color:var(--fl-info);--warning-color:var(--fl-warning);--error-color:var(--fl-error);--success-color-light:var(--fl-success-light);--info-color-light:var(--fl-info-light);--warning-color-light:var(--fl-warning-light);--error-color-light:var(--fl-error-light)}.fl-wrapper{pointer-events:none;position:fixed;-webkit-transition:all .4s cubic-bezier(.23,1,.32,1);-moz-transition:all .4s cubic-bezier(.23,1,.32,1);transition:all .4s cubic-bezier(.23,1,.32,1);width:24em;z-index:1000}.fl-wrapper .fl-container{border-radius:var(--fl-border-radius,4px);opacity:0;pointer-events:auto;-webkit-transition:opacity .4s cubic-bezier(.23,1,.32,1),-webkit-transform .4s cubic-bezier(.23,1,.32,1);transition:opacity .4s cubic-bezier(.23,1,.32,1),-webkit-transform .4s cubic-bezier(.23,1,.32,1);-moz-transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .4s cubic-bezier(.23,1,.32,1),-moz-transform .4s cubic-bezier(.23,1,.32,1);transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .4s cubic-bezier(.23,1,.32,1);transition:transform .4s cubic-bezier(.23,1,.32,1),opacity .4s cubic-bezier(.23,1,.32,1),-webkit-transform .4s cubic-bezier(.23,1,.32,1),-moz-transform .4s cubic-bezier(.23,1,.32,1)}.fl-wrapper .fl-container.fl-show{opacity:1;-webkit-transform:translate(0) scale(1)!important;-moz-transform:translate(0) scale(1)!important;-ms-transform:translate(0) scale(1)!important;transform:translate(0) scale(1)!important}.fl-wrapper.fl-stacked .fl-container:not(:last-child){margin-bottom:.5em}.fl-wrapper[data-position^=top-]{top:.75em}.fl-wrapper[data-position^=bottom-]{bottom:.75em}.fl-wrapper[data-position^=center-]{top:50%}.fl-wrapper[data-position$=-right]{right:.75em}.fl-wrapper[data-position$=-left]{left:.75em}.fl-wrapper[data-position$=-center]{left:50%}.fl-wrapper[data-position=center-left]{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.fl-wrapper[data-position=center-left] .fl-container{-webkit-transform:translateX(-110%);-moz-transform:translateX(-110%);-ms-transform:translateX(-110%);transform:translateX(-110%)}.fl-wrapper[data-position=center-right]{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.fl-wrapper[data-position=center-right] .fl-container{-webkit-transform:translateX(110%);-moz-transform:translateX(110%);-ms-transform:translateX(110%);transform:translateX(110%)}.fl-wrapper[data-position=center-center]{-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.fl-wrapper[data-position=center-center] .fl-container{opacity:0;-webkit-transform:translate(0) scale(.5);-moz-transform:translate(0) scale(.5);-ms-transform:translate(0) scale(.5);transform:translate(0) scale(.5);-webkit-transition:opacity .5s cubic-bezier(.23,1,.32,1),-webkit-transform .5s cubic-bezier(.23,1,.32,1);transition:opacity .5s cubic-bezier(.23,1,.32,1),-webkit-transform .5s cubic-bezier(.23,1,.32,1);-moz-transition:transform .5s cubic-bezier(.23,1,.32,1),opacity .5s cubic-bezier(.23,1,.32,1),-moz-transform .5s cubic-bezier(.23,1,.32,1);transition:transform .5s cubic-bezier(.23,1,.32,1),opacity .5s cubic-bezier(.23,1,.32,1);transition:transform .5s cubic-bezier(.23,1,.32,1),opacity .5s cubic-bezier(.23,1,.32,1),-webkit-transform .5s cubic-bezier(.23,1,.32,1),-moz-transform .5s cubic-bezier(.23,1,.32,1)}.fl-wrapper[data-position=bottom-center],.fl-wrapper[data-position=top-center]{-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.fl-wrapper[data-position=top-center] .fl-container{-webkit-transform:translateY(-150%);-moz-transform:translateY(-150%);-ms-transform:translateY(-150%);transform:translateY(-150%)}.fl-wrapper[data-position=bottom-center] .fl-container{-webkit-transform:translateY(150%);-moz-transform:translateY(150%);-ms-transform:translateY(150%);transform:translateY(150%)}.fl-wrapper[data-position=bottom-right] .fl-container,.fl-wrapper[data-position=top-right] .fl-container{-webkit-transform:translateX(110%);-moz-transform:translateX(110%);-ms-transform:translateX(110%);transform:translateX(110%)}.fl-wrapper[data-position=bottom-left] .fl-container,.fl-wrapper[data-position=top-left] .fl-container{-webkit-transform:translateX(-110%);-moz-transform:translateX(-110%);-ms-transform:translateX(-110%);transform:translateX(-110%)}@media screen and (max-width:768px){.fl-wrapper{left:7.5%;right:7.5%;width:85%}.fl-wrapper[data-position$=-center],.fl-wrapper[data-position$=-left],.fl-wrapper[data-position$=-right]{left:50%;right:auto}.fl-wrapper[data-position^=top-]{top:.75em;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.fl-wrapper[data-position^=bottom-]{bottom:.75em;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.fl-wrapper[data-position^=center-]{top:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}}@media screen and (max-width:480px){.fl-wrapper{left:5%;right:5%;width:90%}}@media (prefers-color-scheme:dark){.fl-wrapper.fl-auto-dark .fl-container{-webkit-box-shadow:var(--fl-shadow-dark,0 4px 12px rgba(0,0,0,.35));box-shadow:var(--fl-shadow-dark,0 4px 12px rgba(0,0,0,.35))}}.fl-wrapper .fl-container.fl-dismissing{opacity:0;-webkit-transition:all .3s ease-out;-moz-transition:all .3s ease-out;transition:all .3s ease-out}.fl-wrapper .fl-container.fl-dismissing[data-position=bottom-right],.fl-wrapper .fl-container.fl-dismissing[data-position=top-right]{-webkit-transform:translateX(110%);-moz-transform:translateX(110%);-ms-transform:translateX(110%);transform:translateX(110%)}.fl-wrapper .fl-container.fl-dismissing[data-position=bottom-left],.fl-wrapper .fl-container.fl-dismissing[data-position=top-left]{-webkit-transform:translateX(-110%);-moz-transform:translateX(-110%);-ms-transform:translateX(-110%);transform:translateX(-110%)}.fl-wrapper .fl-container.fl-dismissing[data-position=top-center]{-webkit-transform:translateY(-150%);-moz-transform:translateY(-150%);-ms-transform:translateY(-150%);transform:translateY(-150%)}.fl-wrapper .fl-container.fl-dismissing[data-position=center-center]{-webkit-transform:scale(.5);-moz-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5);-webkit-transition:opacity .4s ease-out,-webkit-transform .4s ease-out;transition:opacity .4s ease-out,-webkit-transform .4s ease-out;-moz-transition:opacity .4s ease-out,transform .4s ease-out,-moz-transform .4s ease-out;transition:opacity .4s ease-out,transform .4s ease-out;transition:opacity .4s ease-out,transform .4s ease-out,-webkit-transform .4s ease-out,-moz-transform .4s ease-out}.fl-wrapper .fl-container.fl-dismissing[data-position=bottom-center]{-webkit-transform:translateY(150%);-moz-transform:translateY(150%);-ms-transform:translateY(150%);transform:translateY(150%)}.fl-wrapper .fl-container.fl-dismissing[data-position=center-left]{-webkit-transform:translateX(-110%);-moz-transform:translateX(-110%);-ms-transform:translateX(-110%);transform:translateX(-110%)}.fl-wrapper .fl-container.fl-dismissing[data-position=center-right]{-webkit-transform:translateX(110%);-moz-transform:translateX(110%);-ms-transform:translateX(110%);transform:translateX(110%)}@media (prefers-reduced-motion:reduce){.fl-wrapper,.fl-wrapper .fl-container{-webkit-transition:none!important;-moz-transition:none!important;transition:none!important}}.fl-container{color:var(--text-color,var(--fl-text-light));opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px);-webkit-transition:all .4s cubic-bezier(.23,1,.32,1);-moz-transition:all .4s cubic-bezier(.23,1,.32,1);transition:all .4s cubic-bezier(.23,1,.32,1);will-change:opacity,transform}.fl-container.fl-show{opacity:1;-webkit-transform:translate(0)!important;-moz-transform:translate(0)!important;-ms-transform:translate(0)!important;transform:translate(0)!important}.fl-container.fl-rtl{direction:rtl;text-align:right}.fl-progress-bar{bottom:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:.125em;left:0;overflow:hidden;position:absolute;right:0}.fl-success .fl-progress-bar{background-color:var(--success-color-light,var(--fl-success-light))}.fl-success .fl-progress-bar .fl-progress{background-color:var(--success-color,var(--fl-success));height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%;will-change:transform}.fl-info .fl-progress-bar{background-color:var(--info-color-light,var(--fl-info-light))}.fl-info .fl-progress-bar .fl-progress{background-color:var(--info-color,var(--fl-info));height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%;will-change:transform}.fl-warning .fl-progress-bar{background-color:var(--warning-color-light,var(--fl-warning-light))}.fl-warning .fl-progress-bar .fl-progress{background-color:var(--warning-color,var(--fl-warning));height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%;will-change:transform}.fl-error .fl-progress-bar{background-color:var(--error-color-light,var(--fl-error-light))}.fl-error .fl-progress-bar .fl-progress{background-color:var(--error-color,var(--fl-error));height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%;will-change:transform}.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}.fl-icon{border-radius:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#fff;display:inline-block;height:1em;margin:0;min-height:1em;min-width:1em;position:relative;-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;-moz-transition:transform .2s ease, -moz-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease, -webkit-transform .2s ease, -moz-transform .2s ease;width:1em}.fl-icon:after,.fl-icon:before{border-width:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;content:"";position:absolute;-webkit-transition:inherit;-moz-transition:inherit;transition:inherit}.fl-success .fl-icon:after,.fl-success .fl-icon:before{background-color:currentcolor;border-radius:.1em;height:.6em;left:.35em;top:.6em;-webkit-transform:rotate(-135deg);-moz-transform:rotate(-135deg);-ms-transform:rotate(-135deg);transform:rotate(-135deg);-webkit-transform-origin:.08em .08em;-moz-transform-origin:.08em .08em;-ms-transform-origin:.08em .08em;transform-origin:.08em .08em;width:.16em}.fl-success .fl-icon:after{height:.16em;width:.4em}.fl-info .fl-icon:after,.fl-info .fl-icon:before{background-color:currentcolor;border-radius:.03em;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:.15em}.fl-info .fl-icon:before{height:.38em;top:.4em}.fl-info .fl-icon:after{-webkit-box-shadow:-.06em .19em,-.06em .44em,.06em .44em;box-shadow:-.06em .19em,-.06em .44em,.06em .44em;height:.13em;top:.21em}.fl-warning .fl-icon:after,.fl-warning .fl-icon:before{background-color:currentcolor;border-radius:.03em;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);width:.15em}.fl-warning .fl-icon:before{height:.38em;top:.21em}.fl-warning .fl-icon:after{height:.13em;top:.65em}.fl-error .fl-icon:after,.fl-error .fl-icon:before{background-color:currentcolor;border-radius:.1em;height:.7em;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) rotate(-135deg);-moz-transform:translate(-50%,-50%) rotate(-135deg);-ms-transform:translate(-50%,-50%) rotate(-135deg);transform:translate(-50%,-50%) rotate(-135deg);width:.16em}.fl-error .fl-icon:after{-webkit-transform:translate(-50%,-50%) rotate(-45deg);-moz-transform:translate(-50%,-50%) rotate(-45deg);-ms-transform:translate(-50%,-50%) rotate(-45deg);transform:translate(-50%,-50%) rotate(-45deg)}.fl-success .fl-icon{background-color:var(--success-color,var(--fl-success))}.fl-info .fl-icon{background-color:var(--info-color,var(--fl-info))}.fl-warning .fl-icon{background-color:var(--warning-color,var(--fl-warning))}.fl-error .fl-icon{background-color:var(--error-color,var(--fl-error))} +.fl-amazon{--amazon-bg-light:#fff;--amazon-bg-dark:#202124;--amazon-text-light:#0f1111;--amazon-text-secondary-light:#565959;--amazon-text-dark:#fff;--amazon-text-secondary-dark:#b6b6b6;--amazon-border-light:#ddd;--amazon-border-dark:#3f3f3f;--amazon-yellow:#ffd814;--amazon-orange:#f90;--amazon-success-bg:#f0fff5;--amazon-success-border:#7fda95;--amazon-success-icon:#007600;--amazon-info-bg:#f3f9ff;--amazon-info-border:#7fb4da;--amazon-info-icon:#0066c0;--amazon-warning-bg:#fffcf3;--amazon-warning-border:#ffd996;--amazon-warning-icon:#c45500;--amazon-error-bg:#fff5f5;--amazon-error-border:#ff8f8f;--amazon-error-icon:#c40000;--amazon-success-bg-dark:#082d11;--amazon-success-border-dark:#1e6e2c;--amazon-success-icon-dark:#7fda95;--amazon-info-bg-dark:#0a1c2e;--amazon-info-border-dark:#1a5183;--amazon-info-icon-dark:#7fb4da;--amazon-warning-bg-dark:#342a0a;--amazon-warning-border-dark:#705711;--amazon-warning-icon-dark:#ffd996;--amazon-error-bg-dark:#2b0c0c;--amazon-error-border-dark:#721c1c;--amazon-error-icon-dark:#ff8f8f;--amazon-animation-duration:0.2s}@-webkit-keyframes amazonSlideDown{0%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes amazonSlideDown{0%{opacity:0;-moz-transform:translateY(-10px);transform:translateY(-10px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes amazonSlideDown{0%{opacity:0;-webkit-transform:translateY(-10px);-moz-transform:translateY(-10px);transform:translateY(-10px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-amazon{-webkit-animation:amazonSlideDown var(--amazon-animation-duration) ease-out;-moz-animation:amazonSlideDown var(--amazon-animation-duration) ease-out;animation:amazonSlideDown var(--amazon-animation-duration) ease-out;font-family:Arial,sans-serif;margin:10px 0;max-width:500px;position:relative;width:100%}.fl-amazon .fl-amazon-alert{background-color:var(--amazon-bg-light);border:1px solid;border-left:4px solid;border-radius:8px;-webkit-box-shadow:0 2px 5px rgba(15,17,17,.15);box-shadow:0 2px 5px rgba(15,17,17,.15);color:var(--amazon-text-light);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:14px}.fl-amazon .fl-alert-content{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-amazon .fl-icon-container{color:currentColor;-webkit-flex-shrink:0;flex-shrink:0;margin-right:12px}.fl-amazon .fl-text-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;min-width:0}.fl-amazon .fl-alert-title{font-size:16px;font-weight:700;margin-bottom:4px}.fl-amazon .fl-alert-message{color:var(--amazon-text-secondary-light);font-size:14px;line-height:20px}.fl-amazon .fl-alert-actions{margin-left:16px}.fl-amazon .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;color:var(--amazon-text-secondary-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:30px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;padding:0;-webkit-transition:all .2s;-moz-transition:all .2s;transition:all .2s;width:30px}.fl-amazon .fl-close:hover{background-color:rgba(0,0,0,.05);color:var(--amazon-text-light)}.fl-amazon.fl-success .fl-amazon-alert{background-color:var(--amazon-success-bg);border-color:var(--amazon-success-border)}.fl-amazon.fl-success .fl-icon-container{color:var(--amazon-success-icon)}.fl-amazon.fl-info .fl-amazon-alert{background-color:var(--amazon-info-bg);border-color:var(--amazon-info-border)}.fl-amazon.fl-info .fl-icon-container{color:var(--amazon-info-icon)}.fl-amazon.fl-warning .fl-amazon-alert{background-color:var(--amazon-warning-bg);border-color:var(--amazon-warning-border)}.fl-amazon.fl-warning .fl-icon-container{color:var(--amazon-warning-icon)}.fl-amazon.fl-error .fl-amazon-alert{background-color:var(--amazon-error-bg);border-color:var(--amazon-error-border)}.fl-amazon.fl-error .fl-icon-container{color:var(--amazon-error-icon)}.fl-amazon.fl-rtl{direction:rtl}.fl-amazon.fl-rtl .fl-icon-container{margin-left:12px;margin-right:0}.fl-amazon.fl-rtl .fl-alert-actions{margin-left:0;margin-right:16px}.fl-amazon.fl-rtl .fl-amazon-alert{border-left-width:1px;border-right-width:4px}@media (prefers-reduced-motion:reduce){.fl-amazon{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-amazon.fl-auto-dark .fl-amazon-alert,body.fl-dark .fl-amazon .fl-amazon-alert,html.fl-dark .fl-amazon .fl-amazon-alert{background-color:var(--amazon-bg-dark);border-color:var(--amazon-border-dark);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.3);box-shadow:0 2px 5px rgba(0,0,0,.3);color:var(--amazon-text-dark)}.fl-amazon.fl-auto-dark .fl-alert-message,.fl-amazon.fl-auto-dark .fl-close,body.fl-dark .fl-amazon .fl-alert-message,body.fl-dark .fl-amazon .fl-close,html.fl-dark .fl-amazon .fl-alert-message,html.fl-dark .fl-amazon .fl-close{color:var(--amazon-text-secondary-dark)}.fl-amazon.fl-auto-dark .fl-close:hover,body.fl-dark .fl-amazon .fl-close:hover,html.fl-dark .fl-amazon .fl-close:hover{background-color:hsla(0,0%,100%,.1);color:var(--amazon-text-dark)}.fl-amazon.fl-auto-dark.fl-success .fl-amazon-alert,body.fl-dark .fl-amazon.fl-success .fl-amazon-alert,html.fl-dark .fl-amazon.fl-success .fl-amazon-alert{background-color:var(--amazon-success-bg-dark);border-color:var(--amazon-success-border-dark)}.fl-amazon.fl-auto-dark.fl-success .fl-icon-container,body.fl-dark .fl-amazon.fl-success .fl-icon-container,html.fl-dark .fl-amazon.fl-success .fl-icon-container{color:var(--amazon-success-icon-dark)}.fl-amazon.fl-auto-dark.fl-info .fl-amazon-alert,body.fl-dark .fl-amazon.fl-info .fl-amazon-alert,html.fl-dark .fl-amazon.fl-info .fl-amazon-alert{background-color:var(--amazon-info-bg-dark);border-color:var(--amazon-info-border-dark)}.fl-amazon.fl-auto-dark.fl-info .fl-icon-container,body.fl-dark .fl-amazon.fl-info .fl-icon-container,html.fl-dark .fl-amazon.fl-info .fl-icon-container{color:var(--amazon-info-icon-dark)}.fl-amazon.fl-auto-dark.fl-warning .fl-amazon-alert,body.fl-dark .fl-amazon.fl-warning .fl-amazon-alert,html.fl-dark .fl-amazon.fl-warning .fl-amazon-alert{background-color:var(--amazon-warning-bg-dark);border-color:var(--amazon-warning-border-dark)}.fl-amazon.fl-auto-dark.fl-warning .fl-icon-container,body.fl-dark .fl-amazon.fl-warning .fl-icon-container,html.fl-dark .fl-amazon.fl-warning .fl-icon-container{color:var(--amazon-warning-icon-dark)}.fl-amazon.fl-auto-dark.fl-error .fl-amazon-alert,body.fl-dark .fl-amazon.fl-error .fl-amazon-alert,html.fl-dark .fl-amazon.fl-error .fl-amazon-alert{background-color:var(--amazon-error-bg-dark);border-color:var(--amazon-error-border-dark)}.fl-amazon.fl-auto-dark.fl-error .fl-icon-container,body.fl-dark .fl-amazon.fl-error .fl-icon-container,html.fl-dark .fl-amazon.fl-error .fl-icon-container{color:var(--amazon-error-icon-dark)} +.fl-amber{--amber-bg-light:#fff;--amber-bg-dark:#1e293b;--amber-text-light:#4b5563;--amber-text-dark:#f1f5f9;--amber-shadow:0 5px 15px rgba(0,0,0,.08);--amber-shadow-dark:0 5px 15px rgba(0,0,0,.2);--amber-border-radius:0.4rem;--amber-success:#10b981;--amber-info:#3b82f6;--amber-warning:#f59e0b;--amber-error:#ef4444}@-webkit-keyframes amberIn{0%{opacity:0;-webkit-transform:translateY(-12px);transform:translateY(-12px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes amberIn{0%{opacity:0;-moz-transform:translateY(-12px);transform:translateY(-12px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes amberIn{0%{opacity:0;-webkit-transform:translateY(-12px);-moz-transform:translateY(-12px);transform:translateY(-12px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-amber{-webkit-animation:amberIn .3s ease-out;-moz-animation:amberIn .3s ease-out;animation:amberIn .3s ease-out;background-color:var(--amber-bg-light);border-radius:var(--amber-border-radius);-webkit-box-shadow:var(--amber-shadow);box-shadow:var(--amber-shadow);color:var(--amber-text-light);font-family:var(--fl-font),serif;margin:.6rem 0;padding:.85rem 1rem;position:relative;will-change:transform,opacity}.fl-amber:last-child{margin-bottom:0}.fl-amber .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-amber .fl-icon{font-size:1.85em;margin-right:.8rem}.fl-amber .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-amber .fl-message{font-size:.875em;line-height:1.4}.fl-amber .fl-close{background:none;border:none;color:currentColor;cursor:pointer;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.15rem;margin-left:1rem;opacity:.6;padding:.25rem;touch-action:manipulation;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s}.fl-amber .fl-close:focus,.fl-amber .fl-close:hover{opacity:1}.fl-amber .fl-progress-bar{bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-amber .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-amber.fl-success .fl-close{color:var(--amber-success)}.fl-amber.fl-info .fl-close{color:var(--amber-info)}.fl-amber.fl-warning .fl-close{color:var(--amber-warning)}.fl-amber.fl-error .fl-close{color:var(--amber-error)}.fl-amber.fl-rtl{direction:rtl}.fl-amber.fl-rtl .fl-icon{margin-left:.8rem;margin-right:0}.fl-amber.fl-rtl .fl-close{margin-left:0;margin-right:1rem}.fl-amber.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-amber{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-amber.fl-auto-dark,body.fl-dark .fl-amber,html.fl-dark .fl-amber{background-color:var(--amber-bg-dark);-webkit-box-shadow:var(--amber-shadow-dark);box-shadow:var(--amber-shadow-dark);color:var(--amber-text-dark)} +.fl-aurora{--aurora-bg-light:hsla(0,0%,100%,.95);--aurora-bg-dark:rgba(20,20,28,.92);--aurora-text-light:#1e293b;--aurora-text-dark:#f8fafc;--aurora-shadow:0 8px 25px rgba(0,0,0,.08);--aurora-shadow-dark:0 10px 30px rgba(0,0,0,.16);--aurora-border-radius:16px;--aurora-blur:15px;--aurora-success-gradient:linear-gradient(135deg,rgba(16,185,129,.08),rgba(16,185,129,.2));--aurora-info-gradient:linear-gradient(135deg,rgba(59,130,246,.08),rgba(59,130,246,.2));--aurora-warning-gradient:linear-gradient(135deg,rgba(245,158,11,.08),rgba(245,158,11,.2));--aurora-error-gradient:linear-gradient(135deg,rgba(239,68,68,.08),rgba(239,68,68,.2));--aurora-success:#10b981;--aurora-info:#3b82f6;--aurora-warning:#f59e0b;--aurora-error:#ef4444}@-webkit-keyframes auroraFadeIn{0%{opacity:0;-webkit-transform:translateY(-12px) scale(.98);transform:translateY(-12px) scale(.98)}to{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-moz-keyframes auroraFadeIn{0%{opacity:0;-moz-transform:translateY(-12px) scale(.98);transform:translateY(-12px) scale(.98)}to{opacity:1;-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@keyframes auroraFadeIn{0%{opacity:0;-webkit-transform:translateY(-12px) scale(.98);-moz-transform:translateY(-12px) scale(.98);transform:translateY(-12px) scale(.98)}to{opacity:1;-webkit-transform:translateY(0) scale(1);-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}.fl-aurora{-webkit-animation:auroraFadeIn .35s cubic-bezier(.21,1.02,.73,1);-moz-animation:auroraFadeIn .35s cubic-bezier(.21,1.02,.73,1);animation:auroraFadeIn .35s cubic-bezier(.21,1.02,.73,1);backdrop-filter:blur(var(--aurora-blur));-webkit-backdrop-filter:blur(var(--aurora-blur));background-color:var(--aurora-bg-light);border-radius:var(--aurora-border-radius);-webkit-box-shadow:var(--aurora-shadow);box-shadow:var(--aurora-shadow);color:var(--aurora-text-light);font-family:var(--fl-font),sans-serif;margin:10px 0;overflow:hidden;padding:16px 18px;position:relative;will-change:transform,opacity}.fl-aurora:before{border-radius:inherit;content:"";inset:0;opacity:.8;position:absolute;z-index:0}.fl-aurora .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;position:relative;z-index:1}.fl-aurora .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.9375rem;font-weight:500;line-height:1.5;margin-right:10px}.fl-aurora .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:rgba(0,0,0,.05);border:none;border-radius:50%;color:inherit;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1rem;height:28px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;opacity:.7;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease;width:28px}.fl-aurora .fl-close:focus,.fl-aurora .fl-close:hover{background:rgba(0,0,0,.1);opacity:1}.fl-aurora .fl-progress-bar{border-radius:6px;bottom:2px;height:3px;left:2px;opacity:.7;overflow:hidden;position:absolute;right:2px;z-index:1}.fl-aurora .fl-progress{height:100%;width:100%}.fl-aurora.fl-success:before{background:var(--aurora-success-gradient)}.fl-aurora.fl-success .fl-progress{background-color:var(--aurora-success)}.fl-aurora.fl-info:before{background:var(--aurora-info-gradient)}.fl-aurora.fl-info .fl-progress{background-color:var(--aurora-info)}.fl-aurora.fl-warning:before{background:var(--aurora-warning-gradient)}.fl-aurora.fl-warning .fl-progress{background-color:var(--aurora-warning)}.fl-aurora.fl-error:before{background:var(--aurora-error-gradient)}.fl-aurora.fl-error .fl-progress{background-color:var(--aurora-error)}.fl-aurora.fl-rtl{direction:rtl}.fl-aurora.fl-rtl .fl-message{margin-left:10px;margin-right:0}.fl-aurora.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-aurora{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-aurora.fl-auto-dark,body.fl-dark .fl-aurora,html.fl-dark .fl-aurora{background-color:var(--aurora-bg-dark);-webkit-box-shadow:var(--aurora-shadow-dark);box-shadow:var(--aurora-shadow-dark);color:var(--aurora-text-dark)}.fl-aurora.fl-auto-dark .fl-close,body.fl-dark .fl-aurora .fl-close,html.fl-dark .fl-aurora .fl-close{background:hsla(0,0%,100%,.1)}.fl-aurora.fl-auto-dark .fl-close:focus,.fl-aurora.fl-auto-dark .fl-close:hover,body.fl-dark .fl-aurora .fl-close:focus,body.fl-dark .fl-aurora .fl-close:hover,html.fl-dark .fl-aurora .fl-close:focus,html.fl-dark .fl-aurora .fl-close:hover{background:hsla(0,0%,100%,.15)}.fl-aurora.fl-auto-dark.fl-success:before,body.fl-dark .fl-aurora.fl-success:before,html.fl-dark .fl-aurora.fl-success:before{background:-webkit-linear-gradient(315deg,rgba(16,185,129,.1),rgba(16,185,129,.25));background:-moz-linear-gradient(315deg,rgba(16,185,129,.1),rgba(16,185,129,.25));background:linear-gradient(135deg,rgba(16,185,129,.1),rgba(16,185,129,.25))}.fl-aurora.fl-auto-dark.fl-info:before,body.fl-dark .fl-aurora.fl-info:before,html.fl-dark .fl-aurora.fl-info:before{background:-webkit-linear-gradient(315deg,rgba(59,130,246,.1),rgba(59,130,246,.25));background:-moz-linear-gradient(315deg,rgba(59,130,246,.1),rgba(59,130,246,.25));background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(59,130,246,.25))}.fl-aurora.fl-auto-dark.fl-warning:before,body.fl-dark .fl-aurora.fl-warning:before,html.fl-dark .fl-aurora.fl-warning:before{background:-webkit-linear-gradient(315deg,rgba(245,158,11,.1),rgba(245,158,11,.25));background:-moz-linear-gradient(315deg,rgba(245,158,11,.1),rgba(245,158,11,.25));background:linear-gradient(135deg,rgba(245,158,11,.1),rgba(245,158,11,.25))}.fl-aurora.fl-auto-dark.fl-error:before,body.fl-dark .fl-aurora.fl-error:before,html.fl-dark .fl-aurora.fl-error:before{background:-webkit-linear-gradient(315deg,rgba(239,68,68,.1),rgba(239,68,68,.25));background:-moz-linear-gradient(315deg,rgba(239,68,68,.1),rgba(239,68,68,.25));background:linear-gradient(135deg,rgba(239,68,68,.1),rgba(239,68,68,.25))} +.fl-crystal{--crystal-bg-light:#fff;--crystal-bg-dark:rgba(30,30,30,.95);--crystal-text-light:#2c3e50;--crystal-text-dark:hsla(0,0%,100%,.95);--crystal-shadow:rgba(0,0,0,.08);--crystal-shadow-dark:rgba(0,0,0,.25)}@-webkit-keyframes crystalIn{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes crystalIn{0%{opacity:0;-moz-transform:translateY(-20px);transform:translateY(-20px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes crystalIn{0%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);transform:translateY(-20px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes crystalPulse{0%{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}50%{-webkit-box-shadow:0 4px 12px var(--crystal-shadow);box-shadow:0 4px 12px var(--crystal-shadow)}to{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}}@-moz-keyframes crystalPulse{0%{box-shadow:0 2px 8px var(--crystal-shadow)}50%{box-shadow:0 4px 12px var(--crystal-shadow)}to{box-shadow:0 2px 8px var(--crystal-shadow)}}@keyframes crystalPulse{0%{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}50%{-webkit-box-shadow:0 4px 12px var(--crystal-shadow);box-shadow:0 4px 12px var(--crystal-shadow)}to{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}}.fl-crystal{-webkit-animation:crystalIn .3s ease-out;-moz-animation:crystalIn .3s ease-out;animation:crystalIn .3s ease-out;background:var(--crystal-bg-light,var(--fl-bg-light));border-radius:var(--fl-border-radius,4px);-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow);font-family:var(--fl-font),serif;margin:0 0 1rem;max-width:380px;position:relative;-webkit-transition:-webkit-box-shadow .3s ease;transition:-webkit-box-shadow .3s ease;-moz-transition:box-shadow .3s ease;transition:box-shadow .3s ease;transition:box-shadow .3s ease, -webkit-box-shadow .3s ease;will-change:transform,opacity}.fl-crystal:hover{-webkit-animation:crystalPulse 2s ease-in-out infinite;-moz-animation:crystalPulse 2s ease-in-out infinite;animation:crystalPulse 2s ease-in-out infinite}.fl-crystal:last-child{margin-bottom:0}.fl-crystal .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;gap:.75rem;padding:1rem 2.5rem 1rem 1rem}.fl-crystal .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-crystal .fl-message{color:var(--crystal-text-light,var(--fl-text-light));font-size:.9375rem;line-height:1.4;margin:0}.fl-crystal .fl-close{background:none;border:none;color:currentColor;cursor:pointer;font-size:1.25rem;line-height:1;opacity:.5;padding:.25rem;position:absolute;right:.75rem;top:50%;touch-action:manipulation;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease}.fl-crystal .fl-close:focus,.fl-crystal .fl-close:hover{opacity:1;-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-crystal .fl-progress-bar{bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-crystal .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-crystal.fl-success,.fl-crystal.fl-success .fl-message{color:var(--success-color,var(--fl-success))}.fl-crystal.fl-error,.fl-crystal.fl-error .fl-message{color:var(--error-color,var(--fl-error))}.fl-crystal.fl-warning,.fl-crystal.fl-warning .fl-message{color:var(--warning-color,var(--fl-warning))}.fl-crystal.fl-info,.fl-crystal.fl-info .fl-message{color:var(--info-color,var(--fl-info))}.fl-crystal.fl-rtl{direction:rtl}.fl-crystal.fl-rtl .fl-content{padding:1rem 1rem 1rem 2.5rem}.fl-crystal.fl-rtl .fl-close{left:.75rem;right:auto}.fl-crystal.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-crystal{-webkit-animation:none;-moz-animation:none;animation:none}.fl-crystal:hover{-webkit-animation:none;-moz-animation:none;animation:none;-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}}.fl-crystal.fl-auto-dark,body.fl-dark .fl-crystal,html.fl-dark .fl-crystal{background-color:var(--crystal-bg-dark,var(--fl-bg-dark));-webkit-box-shadow:0 2px 8px var(--crystal-shadow-dark);box-shadow:0 2px 8px var(--crystal-shadow-dark)}.fl-crystal.fl-auto-dark .fl-message,body.fl-dark .fl-crystal .fl-message,html.fl-dark .fl-crystal .fl-message{color:var(--crystal-text-dark,var(--fl-text-dark))}.fl-crystal.fl-auto-dark:hover,body.fl-dark .fl-crystal:hover,html.fl-dark .fl-crystal:hover{-webkit-animation:none;-moz-animation:none;animation:none;-webkit-box-shadow:0 4px 16px var(--crystal-shadow-dark);box-shadow:0 4px 16px var(--crystal-shadow-dark)} +.fl-emerald{--emerald-bg-light:hsla(0,0%,100%,.9);--emerald-bg-dark:rgba(30,30,30,.9);--emerald-text-light:#333;--emerald-text-dark:hsla(0,0%,100%,.9);--emerald-shadow:rgba(0,0,0,.1);--emerald-blur:8px;--emerald-success:var(--success-color,#16a085);--emerald-error:var(--error-color,#e74c3c);--emerald-warning:var(--warning-color,#f39c12);--emerald-info:var(--info-color,#3498db)}@-webkit-keyframes emeraldIn{0%{opacity:0;-webkit-transform:scale(.5) translateY(20px);transform:scale(.5) translateY(20px)}60%{opacity:1;-webkit-transform:scale(1.1) translateY(-5px);transform:scale(1.1) translateY(-5px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-moz-keyframes emeraldIn{0%{opacity:0;-moz-transform:scale(.5) translateY(20px);transform:scale(.5) translateY(20px)}60%{opacity:1;-moz-transform:scale(1.1) translateY(-5px);transform:scale(1.1) translateY(-5px)}to{opacity:1;-moz-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes emeraldIn{0%{opacity:0;-webkit-transform:scale(.5) translateY(20px);-moz-transform:scale(.5) translateY(20px);transform:scale(.5) translateY(20px)}60%{opacity:1;-webkit-transform:scale(1.1) translateY(-5px);-moz-transform:scale(1.1) translateY(-5px);transform:scale(1.1) translateY(-5px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);-moz-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}.fl-emerald{-webkit-animation:emeraldIn .5s cubic-bezier(.23,1,.32,1);-moz-animation:emeraldIn .5s cubic-bezier(.23,1,.32,1);animation:emeraldIn .5s cubic-bezier(.23,1,.32,1);backdrop-filter:blur(var(--emerald-blur));-webkit-backdrop-filter:blur(var(--emerald-blur));background:var(--emerald-bg-light);border-radius:10px;-webkit-box-shadow:0 10px 20px var(--emerald-shadow);box-shadow:0 10px 20px var(--emerald-shadow);color:var(--emerald-text-light);font-family:"Inter",var(--fl-font),serif;margin:0 0 .5rem;overflow:hidden;padding:1rem 1.5rem 1rem 1rem;position:relative}.fl-emerald .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-emerald .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.9rem;font-weight:500;line-height:1.4}.fl-emerald .fl-close{background:transparent;border:none;color:currentColor;cursor:pointer;font-size:1.3rem;margin-left:auto;opacity:.7;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;transition:opacity .2s ease}.fl-emerald .fl-close:focus,.fl-emerald .fl-close:hover{opacity:1}.fl-emerald.fl-success{color:var(--emerald-success)}.fl-emerald.fl-error{color:var(--emerald-error)}.fl-emerald.fl-warning{color:var(--emerald-warning)}.fl-emerald.fl-info{color:var(--emerald-info)}.fl-emerald.fl-rtl{direction:rtl;padding:1rem 1rem 1rem 1.5rem}.fl-emerald.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-emerald.fl-rtl .fl-close{margin-left:0;margin-right:auto}@media (prefers-reduced-motion:reduce){.fl-emerald{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-emerald.fl-auto-dark,body.fl-dark .fl-emerald,html.fl-dark .fl-emerald{background:var(--emerald-bg-dark)}.fl-emerald.fl-auto-dark .fl-message,body.fl-dark .fl-emerald .fl-message,html.fl-dark .fl-emerald .fl-message{color:var(--emerald-text-dark)} +.fl-facebook{--fb-bg-light:#fff;--fb-bg-dark:#242526;--fb-text-light:#050505;--fb-text-secondary-light:#65676b;--fb-text-dark:#e4e6eb;--fb-text-secondary-dark:#b0b3b8;--fb-hover-light:#f0f2f5;--fb-hover-dark:#3a3b3c;--fb-border-light:#e4e6eb;--fb-border-dark:#3e4042;--fb-blue:#1876f2;--fb-name-color:#050505;--fb-name-color-dark:#e4e6eb;--fb-success:#31a24c;--fb-info:#1876f2;--fb-warning:#f7b928;--fb-error:#e41e3f;--fb-success-bg:#e7f3ff;--fb-info-bg:#e7f3ff;--fb-warning-bg:#fff5cc;--fb-error-bg:#ffebe9;--fb-success-bg-dark:#263c4b;--fb-info-bg-dark:#263c4b;--fb-warning-bg-dark:#3e3c26;--fb-error-bg-dark:#472835;--fb-animation-duration:0.2s}@-webkit-keyframes fbFadeIn{0%{opacity:0;-webkit-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes fbFadeIn{0%{opacity:0;-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes fbFadeIn{0%{opacity:0;-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-facebook{-webkit-animation:fbFadeIn var(--fb-animation-duration) ease-out;-moz-animation:fbFadeIn var(--fb-animation-duration) ease-out;animation:fbFadeIn var(--fb-animation-duration) ease-out;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:8px 0;max-width:450px;position:relative;width:100%}.fl-facebook .fl-fb-notification{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;background-color:var(--fb-bg-light);border-radius:8px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(0,0,0,.1);color:var(--fb-text-light);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:12px;-webkit-transition:background-color .1s ease;-moz-transition:background-color .1s ease;transition:background-color .1s ease}.fl-facebook .fl-fb-notification:hover{background-color:var(--fb-hover-light)}.fl-facebook .fl-icon-container{-webkit-flex-shrink:0;flex-shrink:0;margin-right:12px}.fl-facebook .fl-fb-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:36px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;width:36px}.fl-facebook .fl-fb-icon svg{color:#fff}.fl-facebook .fl-fb-icon-success{background-color:var(--fb-success)}.fl-facebook .fl-fb-icon-info{background-color:var(--fb-info)}.fl-facebook .fl-fb-icon-warning{background-color:var(--fb-warning)}.fl-facebook .fl-fb-icon-error{background-color:var(--fb-error)}.fl-facebook .fl-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;min-width:0}.fl-facebook .fl-message{font-size:15px;line-height:1.33;margin-bottom:4px}.fl-facebook .fl-user-name{color:var(--fb-name-color);font-weight:600;margin-right:4px}.fl-facebook .fl-meta{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-facebook .fl-time{color:var(--fb-text-secondary-light);font-size:13px}.fl-facebook .fl-actions{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;margin-left:12px}.fl-facebook .fl-button{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:var(--fb-hover-light);border:none;border-radius:50%;color:var(--fb-text-secondary-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:32px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:8px;-webkit-transition:background-color .1s;-moz-transition:background-color .1s;transition:background-color .1s;width:32px}.fl-facebook .fl-button:hover{background-color:var(--fb-border-light)}.fl-facebook .fl-button-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center}.fl-facebook.fl-rtl{direction:rtl}.fl-facebook.fl-rtl .fl-icon-container{margin-left:12px;margin-right:0}.fl-facebook.fl-rtl .fl-user-name{margin-left:4px;margin-right:0}.fl-facebook.fl-rtl .fl-actions{margin-left:0;margin-right:12px}.fl-facebook.fl-rtl .fl-button{margin-left:0;margin-right:8px}@media (prefers-reduced-motion:reduce){.fl-facebook{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-facebook.fl-auto-dark .fl-fb-notification,body.fl-dark .fl-facebook .fl-fb-notification,html.fl-dark .fl-facebook .fl-fb-notification{background-color:var(--fb-bg-dark);-webkit-box-shadow:0 1px 2px rgba(0,0,0,.2);box-shadow:0 1px 2px rgba(0,0,0,.2);color:var(--fb-text-dark)}.fl-facebook.fl-auto-dark .fl-fb-notification:hover,body.fl-dark .fl-facebook .fl-fb-notification:hover,html.fl-dark .fl-facebook .fl-fb-notification:hover{background-color:var(--fb-hover-dark)}.fl-facebook.fl-auto-dark .fl-user-name,body.fl-dark .fl-facebook .fl-user-name,html.fl-dark .fl-facebook .fl-user-name{color:var(--fb-name-color-dark)}.fl-facebook.fl-auto-dark .fl-time,body.fl-dark .fl-facebook .fl-time,html.fl-dark .fl-facebook .fl-time{color:var(--fb-text-secondary-dark)}.fl-facebook.fl-auto-dark .fl-button,body.fl-dark .fl-facebook .fl-button,html.fl-dark .fl-facebook .fl-button{background:var(--fb-hover-dark);color:var(--fb-text-secondary-dark)}.fl-facebook.fl-auto-dark .fl-button:hover,body.fl-dark .fl-facebook .fl-button:hover,html.fl-dark .fl-facebook .fl-button:hover{background-color:var(--fb-border-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-success,body.fl-dark .fl-facebook .fl-fb-icon-success,html.fl-dark .fl-facebook .fl-fb-icon-success{background-color:var(--fb-success-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-success svg,body.fl-dark .fl-facebook .fl-fb-icon-success svg,html.fl-dark .fl-facebook .fl-fb-icon-success svg{color:var(--fb-success)}.fl-facebook.fl-auto-dark .fl-fb-icon-info,body.fl-dark .fl-facebook .fl-fb-icon-info,html.fl-dark .fl-facebook .fl-fb-icon-info{background-color:var(--fb-info-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-info svg,body.fl-dark .fl-facebook .fl-fb-icon-info svg,html.fl-dark .fl-facebook .fl-fb-icon-info svg{color:var(--fb-info)}.fl-facebook.fl-auto-dark .fl-fb-icon-warning,body.fl-dark .fl-facebook .fl-fb-icon-warning,html.fl-dark .fl-facebook .fl-fb-icon-warning{background-color:var(--fb-warning-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-warning svg,body.fl-dark .fl-facebook .fl-fb-icon-warning svg,html.fl-dark .fl-facebook .fl-fb-icon-warning svg{color:var(--fb-warning)}.fl-facebook.fl-auto-dark .fl-fb-icon-error,body.fl-dark .fl-facebook .fl-fb-icon-error,html.fl-dark .fl-facebook .fl-fb-icon-error{background-color:var(--fb-error-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-error svg,body.fl-dark .fl-facebook .fl-fb-icon-error svg,html.fl-dark .fl-facebook .fl-fb-icon-error svg{color:var(--fb-error)} +@-webkit-keyframes flasherIn{0%{opacity:0;-webkit-transform:translateX(-10px);transform:translateX(-10px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-moz-keyframes flasherIn{0%{opacity:0;-moz-transform:translateX(-10px);transform:translateX(-10px)}to{opacity:1;-moz-transform:translateX(0);transform:translateX(0)}}@keyframes flasherIn{0%{opacity:0;-webkit-transform:translateX(-10px);-moz-transform:translateX(-10px);transform:translateX(-10px)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);transform:translateX(0)}}.fl-flasher{-webkit-animation:flasherIn .3s ease-out;-moz-animation:flasherIn .3s ease-out;animation:flasherIn .3s ease-out;background-color:var(--background-color,var(--fl-bg-light));border-bottom:none;-webkit-box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);color:var(--text-color,var(--fl-text-light));font-family:var(--fl-font),serif;line-height:1.5;margin:.75em 0;padding:.75em;position:relative;-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;-moz-transition:transform .2s ease, -moz-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease, -webkit-transform .2s ease, -moz-transform .2s ease;will-change:transform,opacity;word-break:break-word}.fl-flasher:hover{-webkit-transform:translateY(-2px);-moz-transform:translateY(-2px);-ms-transform:translateY(-2px);transform:translateY(-2px)}.fl-flasher:last-child{margin-bottom:0}.fl-flasher.fl-rtl{border-radius:0 .375em .375em 0}.fl-flasher:not(.fl-rtl){border-radius:.375em 0 0 .375em}.fl-flasher .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-flasher .fl-icon{font-size:2.5em}.fl-flasher .fl-message,.fl-flasher .fl-title{display:block;line-height:1.25em;margin-left:1em;margin-right:1em}.fl-flasher .fl-title{font-size:1em;font-weight:600}.fl-flasher .fl-message{font-size:.875em;margin-top:.25em}.fl-flasher .fl-close{background:none;border:none;color:currentColor;cursor:pointer;font-size:1.25rem;line-height:1;opacity:.5;padding:.25rem;position:absolute;right:.75rem;top:50%;touch-action:manipulation;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;transition:opacity .2s ease}.fl-flasher .fl-close:focus,.fl-flasher .fl-close:hover{opacity:1}.fl-flasher.fl-rtl{direction:rtl}.fl-flasher.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-flasher.fl-rtl .fl-close{left:.75rem;right:auto}.fl-flasher.fl-success{border-left:.8em solid var(--success-color,var(--fl-success))}.fl-flasher.fl-success.fl-rtl{border-left:none;border-right:.8em solid var(--success-color,var(--fl-success))}.fl-flasher.fl-success:not(.fl-rtl){border-left:.8em solid var(--success-color,var(--fl-success));border-right:none}.fl-flasher.fl-success .fl-close,.fl-flasher.fl-success .fl-title{color:var(--success-color,var(--fl-success))}.fl-flasher.fl-success .fl-close:focus,.fl-flasher.fl-success .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher.fl-info{border-left:.8em solid var(--info-color,var(--fl-info))}.fl-flasher.fl-info.fl-rtl{border-left:none;border-right:.8em solid var(--info-color,var(--fl-info))}.fl-flasher.fl-info:not(.fl-rtl){border-left:.8em solid var(--info-color,var(--fl-info));border-right:none}.fl-flasher.fl-info .fl-close,.fl-flasher.fl-info .fl-title{color:var(--info-color,var(--fl-info))}.fl-flasher.fl-info .fl-close:focus,.fl-flasher.fl-info .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher.fl-warning{border-left:.8em solid var(--warning-color,var(--fl-warning))}.fl-flasher.fl-warning.fl-rtl{border-left:none;border-right:.8em solid var(--warning-color,var(--fl-warning))}.fl-flasher.fl-warning:not(.fl-rtl){border-left:.8em solid var(--warning-color,var(--fl-warning));border-right:none}.fl-flasher.fl-warning .fl-close,.fl-flasher.fl-warning .fl-title{color:var(--warning-color,var(--fl-warning))}.fl-flasher.fl-warning .fl-close:focus,.fl-flasher.fl-warning .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher.fl-error{border-left:.8em solid var(--error-color,var(--fl-error))}.fl-flasher.fl-error.fl-rtl{border-left:none;border-right:.8em solid var(--error-color,var(--fl-error))}.fl-flasher.fl-error:not(.fl-rtl){border-left:.8em solid var(--error-color,var(--fl-error));border-right:none}.fl-flasher.fl-error .fl-close,.fl-flasher.fl-error .fl-title{color:var(--error-color,var(--fl-error))}.fl-flasher.fl-error .fl-close:focus,.fl-flasher.fl-error .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher .fl-progress-bar{bottom:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:.125em;left:0;overflow:hidden;position:absolute;right:0}.fl-flasher.fl-success .fl-progress-bar{background-color:var(--success-color-light,var(--fl-success-light))}.fl-flasher.fl-success .fl-progress-bar .fl-progress{background-color:var(--success-color,var(--fl-success));height:100%;width:100%}.fl-flasher.fl-info .fl-progress-bar{background-color:var(--info-color-light,var(--fl-info-light))}.fl-flasher.fl-info .fl-progress-bar .fl-progress{background-color:var(--info-color,var(--fl-info));height:100%;width:100%}.fl-flasher.fl-warning .fl-progress-bar{background-color:var(--warning-color-light,var(--fl-warning-light))}.fl-flasher.fl-warning .fl-progress-bar .fl-progress{background-color:var(--warning-color,var(--fl-warning));height:100%;width:100%}.fl-flasher.fl-error .fl-progress-bar{background-color:var(--error-color-light,var(--fl-error-light))}.fl-flasher.fl-error .fl-progress-bar .fl-progress{background-color:var(--error-color,var(--fl-error));height:100%;width:100%}@media (prefers-color-scheme:dark){.fl-flasher.fl-auto-dark{background-color:var(--dark-background-color,var(--fl-bg-dark));color:var(--dark-text-color,var(--fl-text-dark))}}body.fl-dark .fl-flasher,html.fl-dark .fl-flasher{background-color:var(--dark-background-color,var(--fl-bg-dark));color:var(--dark-text-color,var(--fl-text-dark))}@media (prefers-reduced-motion:reduce){.fl-flasher{-webkit-animation:none;-moz-animation:none;animation:none}.fl-flasher:hover{-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.fl-flasher .fl-close:focus,.fl-flasher .fl-close:hover{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}} +.fl-google{--md-bg-light:#fff;--md-bg-dark:#2d2d2d;--md-text-light:rgba(0,0,0,.87);--md-text-secondary-light:rgba(0,0,0,.6);--md-text-dark:hsla(0,0%,100%,.87);--md-text-secondary-dark:hsla(0,0%,100%,.6);--md-elevation:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);--md-elevation-dark:0 3px 5px -1px rgba(0,0,0,.4),0 6px 10px 0 rgba(0,0,0,.28),0 1px 18px 0 rgba(0,0,0,.24);--md-border-radius:4px;--md-success:#43a047;--md-info:#1e88e5;--md-warning:#fb8c00;--md-error:#e53935;--md-animation-duration:0.3s;--md-ripple-duration:0.6s}@-webkit-keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes mdSlideUp{0%{opacity:0;-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);transform:scale(4)}}@-moz-keyframes mdRipple{to{opacity:0;-moz-transform:scale(4);transform:scale(4)}}@keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);-moz-transform:scale(4);transform:scale(4)}}.fl-google{-webkit-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);-moz-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);font-family:Roboto,Segoe UI,Helvetica,Arial,sans-serif;margin:8px 0;max-width:400px;position:relative;width:100%}.fl-google .fl-md-card{background-color:var(--md-bg-light);border-radius:var(--md-border-radius);-webkit-box-shadow:var(--md-elevation);box-shadow:var(--md-elevation);color:var(--md-text-light);overflow:hidden}.fl-google .fl-content{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:16px}.fl-google .fl-icon-wrapper{color:var(--md-text-secondary-light);-webkit-flex-shrink:0;flex-shrink:0;margin-right:16px}.fl-google .fl-text-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-google .fl-title{font-size:1rem;font-weight:500;margin-bottom:4px}.fl-google .fl-message{color:var(--md-text-secondary-light);font-size:.875rem;line-height:1.43}.fl-google .fl-actions{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;justify-content:flex-end;padding:8px}.fl-google .fl-action-button{background:transparent;border:none;border-radius:4px;color:currentColor;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;letter-spacing:.0892857143em;overflow:hidden;padding:8px 12px;position:relative;text-transform:uppercase;-webkit-transition:background-color .2s;-moz-transition:background-color .2s;transition:background-color .2s}.fl-google .fl-action-button:focus,.fl-google .fl-action-button:hover{background-color:rgba(0,0,0,.04)}.fl-google .fl-action-button:after{background:currentColor;border-radius:50%;content:"";height:5px;opacity:0;pointer-events:none;position:absolute;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);width:5px}.fl-google .fl-action-button:active:after{-webkit-animation:mdRipple var(--md-ripple-duration) linear;-moz-animation:mdRipple var(--md-ripple-duration) linear;animation:mdRipple var(--md-ripple-duration) linear;opacity:.3}.fl-google.fl-success .fl-action-button,.fl-google.fl-success .fl-icon-wrapper{color:var(--md-success)}.fl-google.fl-info .fl-action-button,.fl-google.fl-info .fl-icon-wrapper{color:var(--md-info)}.fl-google.fl-warning .fl-action-button,.fl-google.fl-warning .fl-icon-wrapper{color:var(--md-warning)}.fl-google.fl-error .fl-action-button,.fl-google.fl-error .fl-icon-wrapper{color:var(--md-error)}.fl-google .fl-progress-bar{bottom:0;height:4px;left:0;overflow:hidden;position:absolute;right:0}.fl-google .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-google.fl-success .fl-progress{background-color:var(--md-success)}.fl-google.fl-info .fl-progress{background-color:var(--md-info)}.fl-google.fl-warning .fl-progress{background-color:var(--md-warning)}.fl-google.fl-error .fl-progress{background-color:var(--md-error)}.fl-google.fl-rtl{direction:rtl}.fl-google.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-google.fl-rtl .fl-icon-wrapper{margin-left:16px;margin-right:0}.fl-google.fl-rtl .fl-actions{-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;justify-content:flex-start}.fl-google.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-google,.fl-google .fl-action-button:active:after{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-google.fl-auto-dark .fl-md-card,body.fl-dark .fl-google .fl-md-card,html.fl-dark .fl-google .fl-md-card{background-color:var(--md-bg-dark);-webkit-box-shadow:var(--md-elevation-dark);box-shadow:var(--md-elevation-dark);color:var(--md-text-dark)}.fl-google.fl-auto-dark .fl-message,body.fl-dark .fl-google .fl-message,html.fl-dark .fl-google .fl-message{color:var(--md-text-secondary-dark)}.fl-google.fl-auto-dark .fl-action-button:focus,.fl-google.fl-auto-dark .fl-action-button:hover,body.fl-dark .fl-google .fl-action-button:focus,body.fl-dark .fl-google .fl-action-button:hover,html.fl-dark .fl-google .fl-action-button:focus,html.fl-dark .fl-google .fl-action-button:hover{background-color:hsla(0,0%,100%,.08)} +.fl-ios{--ios-bg-light:hsla(0,0%,100%,.85);--ios-bg-dark:rgba(30,30,30,.85);--ios-text-light:#000;--ios-text-secondary-light:#6e6e6e;--ios-text-dark:#fff;--ios-text-secondary-dark:#a8a8a8;--ios-border-radius:13px;--ios-shadow:0 2px 12px rgba(0,0,0,.15);--ios-shadow-dark:0 2px 12px rgba(0,0,0,.35);--ios-icon-size:18px;--ios-blur:30px;--ios-success:#34c759;--ios-info:#007aff;--ios-warning:#ff9500;--ios-error:#ff3b30;--ios-animation-duration:0.4s}@-webkit-keyframes iosSlideIn{0%{opacity:0;-webkit-transform:translateY(-15px) scale(.96);transform:translateY(-15px) scale(.96)}to{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-moz-keyframes iosSlideIn{0%{opacity:0;-moz-transform:translateY(-15px) scale(.96);transform:translateY(-15px) scale(.96)}to{opacity:1;-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@keyframes iosSlideIn{0%{opacity:0;-webkit-transform:translateY(-15px) scale(.96);-moz-transform:translateY(-15px) scale(.96);transform:translateY(-15px) scale(.96)}to{opacity:1;-webkit-transform:translateY(0) scale(1);-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-webkit-keyframes iosExpand{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}@-moz-keyframes iosExpand{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}@keyframes iosExpand{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}.fl-ios{-webkit-animation:iosSlideIn var(--ios-animation-duration) cubic-bezier(.23,1,.32,1);-moz-animation:iosSlideIn var(--ios-animation-duration) cubic-bezier(.23,1,.32,1);animation:iosSlideIn var(--ios-animation-duration) cubic-bezier(.23,1,.32,1);font-family:-apple-system,BlinkMacSystemFont,San Francisco,Helvetica Neue,Helvetica,Arial,sans-serif;margin:10px 0;max-width:400px;position:relative;width:100%;will-change:transform,opacity}.fl-ios .fl-ios-notification{backdrop-filter:blur(var(--ios-blur));-webkit-backdrop-filter:blur(var(--ios-blur));background-color:var(--ios-bg-light);border-radius:var(--ios-border-radius);-webkit-box-shadow:var(--ios-shadow);box-shadow:var(--ios-shadow);color:var(--ios-text-light);padding:12px 15px;position:relative}.fl-ios .fl-header{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;margin-bottom:8px;padding-right:20px}.fl-ios .fl-app-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:currentColor;border-radius:5px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:22px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-right:8px;width:22px}.fl-ios .fl-icon-svg{color:#fff;height:14px;width:14px}.fl-ios .fl-app-info{-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;align-items:baseline;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.fl-ios .fl-app-name{font-size:.85rem;font-weight:600}.fl-ios .fl-time{color:var(--ios-text-secondary-light);-webkit-flex-shrink:0;flex-shrink:0;font-size:.75rem;margin-left:5px}.fl-ios .fl-content{-webkit-animation:iosExpand .3s forwards;-moz-animation:iosExpand .3s forwards;animation:iosExpand .3s forwards;-webkit-animation-delay:.1s;-moz-animation-delay:.1s;animation-delay:.1s;overflow:hidden}.fl-ios .fl-message{font-size:.95rem;line-height:1.3;margin:0;padding-right:15px}.fl-ios .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:rgba(0,0,0,.1);border:none;border-radius:50%;color:var(--ios-text-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;font-size:14px;height:18px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;line-height:1;opacity:.7;padding:0;position:absolute;right:12px;top:10px;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;width:18px}.fl-ios .fl-close:focus,.fl-ios .fl-close:hover{opacity:1}.fl-ios.fl-success .fl-app-icon{color:var(--ios-success)}.fl-ios.fl-info .fl-app-icon{color:var(--ios-info)}.fl-ios.fl-warning .fl-app-icon{color:var(--ios-warning)}.fl-ios.fl-error .fl-app-icon{color:var(--ios-error)}.fl-ios.fl-rtl{direction:rtl}.fl-ios.fl-rtl .fl-header{padding-left:20px;padding-right:0}.fl-ios.fl-rtl .fl-app-icon{margin-left:8px;margin-right:0}.fl-ios.fl-rtl .fl-time{margin-left:0;margin-right:5px}.fl-ios.fl-rtl .fl-message{padding-left:15px;padding-right:0}.fl-ios.fl-rtl .fl-close{left:12px;right:auto}@media (prefers-reduced-motion:reduce){.fl-ios{-webkit-animation:none;-moz-animation:none;animation:none}.fl-ios .fl-content{-webkit-animation:none;-moz-animation:none;animation:none;max-height:none;opacity:1}}@media screen and (max-width:480px){.fl-ios{width:100%}}.fl-ios.fl-auto-dark .fl-ios-notification,body.fl-dark .fl-ios .fl-ios-notification,html.fl-dark .fl-ios .fl-ios-notification{background-color:var(--ios-bg-dark);-webkit-box-shadow:var(--ios-shadow-dark);box-shadow:var(--ios-shadow-dark);color:var(--ios-text-dark)}.fl-ios.fl-auto-dark .fl-time,body.fl-dark .fl-ios .fl-time,html.fl-dark .fl-ios .fl-time{color:var(--ios-text-secondary-dark)}.fl-ios.fl-auto-dark .fl-close,body.fl-dark .fl-ios .fl-close,html.fl-dark .fl-ios .fl-close{background-color:hsla(0,0%,100%,.2);color:var(--ios-text-dark)} +.fl-jade{--jade-text-light:#5f6c7b;--jade-text-dark:#e2e8f0;--jade-shadow:0 8px 24px hsla(210,8%,62%,.1);--jade-shadow-dark:0 8px 24px rgba(0,0,0,.2);--jade-border-radius:1rem;--jade-transition:0.3s cubic-bezier(0.4,0,0.2,1);--jade-success-bg:#f0fdf4;--jade-success-color:#16a34a;--jade-info-bg:#eff6ff;--jade-info-color:#3b82f6;--jade-warning-bg:#fffbeb;--jade-warning-color:#f59e0b;--jade-error-bg:#fef2f2;--jade-error-color:#dc2626;--jade-success-bg-dark:rgba(22,163,74,.15);--jade-info-bg-dark:rgba(59,130,246,.15);--jade-warning-bg-dark:rgba(245,158,11,.15);--jade-error-bg-dark:rgba(220,38,38,.15)}@-webkit-keyframes jadeIn{0%{opacity:0;-webkit-transform:translateY(-10px) scale(.95);transform:translateY(-10px) scale(.95)}to{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-moz-keyframes jadeIn{0%{opacity:0;-moz-transform:translateY(-10px) scale(.95);transform:translateY(-10px) scale(.95)}to{opacity:1;-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@keyframes jadeIn{0%{opacity:0;-webkit-transform:translateY(-10px) scale(.95);-moz-transform:translateY(-10px) scale(.95);transform:translateY(-10px) scale(.95)}to{opacity:1;-webkit-transform:translateY(0) scale(1);-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}.fl-jade{-webkit-animation:jadeIn .4s var(--jade-transition);-moz-animation:jadeIn .4s var(--jade-transition);animation:jadeIn .4s var(--jade-transition);border:1px solid transparent;border-radius:var(--jade-border-radius);-webkit-box-shadow:var(--jade-shadow);box-shadow:var(--jade-shadow);font-family:var(--fl-font),serif;margin:.5rem 0;overflow:hidden;padding:1rem 1.25rem;position:relative;will-change:transform,opacity}.fl-jade:last-child{margin-bottom:0}.fl-jade .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-jade .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.875rem;font-weight:500;line-height:1.5;padding-right:.75rem}.fl-jade .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.125rem;height:1.875rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;opacity:.6;padding:.375rem;-webkit-transition:all var(--jade-transition);-moz-transition:all var(--jade-transition);transition:all var(--jade-transition);width:1.875rem}.fl-jade .fl-close:focus,.fl-jade .fl-close:hover{background-color:rgba(0,0,0,.05);opacity:1}.fl-jade .fl-progress-bar{border-radius:0 0 var(--jade-border-radius) var(--jade-border-radius);bottom:0;height:3px;left:0;opacity:.7;overflow:hidden;position:absolute;right:0}.fl-jade .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-jade.fl-success{background-color:var(--jade-success-bg);border-color:rgba(22,163,74,.1)}.fl-jade.fl-success,.fl-jade.fl-success .fl-close{color:var(--jade-success-color)}.fl-jade.fl-success .fl-close:focus,.fl-jade.fl-success .fl-close:hover{background-color:rgba(22,163,74,.1)}.fl-jade.fl-success .fl-progress-bar .fl-progress{background-color:var(--jade-success-color)}.fl-jade.fl-info{background-color:var(--jade-info-bg);border-color:rgba(59,130,246,.1)}.fl-jade.fl-info,.fl-jade.fl-info .fl-close{color:var(--jade-info-color)}.fl-jade.fl-info .fl-close:focus,.fl-jade.fl-info .fl-close:hover{background-color:rgba(59,130,246,.1)}.fl-jade.fl-info .fl-progress-bar .fl-progress{background-color:var(--jade-info-color)}.fl-jade.fl-warning{background-color:var(--jade-warning-bg);border-color:rgba(245,158,11,.1)}.fl-jade.fl-warning,.fl-jade.fl-warning .fl-close{color:var(--jade-warning-color)}.fl-jade.fl-warning .fl-close:focus,.fl-jade.fl-warning .fl-close:hover{background-color:rgba(245,158,11,.1)}.fl-jade.fl-warning .fl-progress-bar .fl-progress{background-color:var(--jade-warning-color)}.fl-jade.fl-error{background-color:var(--jade-error-bg);border-color:rgba(220,38,38,.1)}.fl-jade.fl-error,.fl-jade.fl-error .fl-close{color:var(--jade-error-color)}.fl-jade.fl-error .fl-close:focus,.fl-jade.fl-error .fl-close:hover{background-color:rgba(220,38,38,.1)}.fl-jade.fl-error .fl-progress-bar .fl-progress{background-color:var(--jade-error-color)}.fl-jade.fl-rtl{direction:rtl}.fl-jade.fl-rtl .fl-message{padding-left:.75rem;padding-right:0}.fl-jade.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-jade{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-jade.fl-auto-dark,body.fl-dark .fl-jade,html.fl-dark .fl-jade{-webkit-box-shadow:var(--jade-shadow-dark);box-shadow:var(--jade-shadow-dark);color:var(--jade-text-dark)}.fl-jade.fl-auto-dark.fl-success,body.fl-dark .fl-jade.fl-success,html.fl-dark .fl-jade.fl-success{background-color:var(--jade-success-bg-dark);border-color:rgba(22,163,74,.2)}.fl-jade.fl-auto-dark.fl-info,body.fl-dark .fl-jade.fl-info,html.fl-dark .fl-jade.fl-info{background-color:var(--jade-info-bg-dark);border-color:rgba(59,130,246,.2)}.fl-jade.fl-auto-dark.fl-warning,body.fl-dark .fl-jade.fl-warning,html.fl-dark .fl-jade.fl-warning{background-color:var(--jade-warning-bg-dark);border-color:rgba(245,158,11,.2)}.fl-jade.fl-auto-dark.fl-error,body.fl-dark .fl-jade.fl-error,html.fl-dark .fl-jade.fl-error{background-color:var(--jade-error-bg-dark);border-color:rgba(220,38,38,.2)}.fl-jade.fl-auto-dark .fl-close:focus,.fl-jade.fl-auto-dark .fl-close:hover,body.fl-dark .fl-jade .fl-close:focus,body.fl-dark .fl-jade .fl-close:hover,html.fl-dark .fl-jade .fl-close:focus,html.fl-dark .fl-jade .fl-close:hover{background-color:hsla(0,0%,100%,.1)} +.fl-material{--md-bg-light:#fff;--md-bg-dark:#2d2d2d;--md-text-light:rgba(0,0,0,.87);--md-text-secondary-light:rgba(0,0,0,.6);--md-text-dark:hsla(0,0%,100%,.87);--md-text-secondary-dark:hsla(0,0%,100%,.6);--md-elevation:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);--md-elevation-dark:0 3px 5px -1px rgba(0,0,0,.4),0 6px 10px 0 rgba(0,0,0,.28),0 1px 18px 0 rgba(0,0,0,.24);--md-border-radius:4px;--md-success:#43a047;--md-info:#1e88e5;--md-warning:#fb8c00;--md-error:#e53935;--md-animation-duration:0.3s;--md-ripple-duration:0.6s}@-webkit-keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes mdSlideUp{0%{opacity:0;-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);transform:scale(4)}}@-moz-keyframes mdRipple{to{opacity:0;-moz-transform:scale(4);transform:scale(4)}}@keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);-moz-transform:scale(4);transform:scale(4)}}.fl-material{-webkit-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);-moz-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);font-family:Roboto,Segoe UI,Helvetica,Arial,sans-serif;margin:8px 0;max-width:400px;position:relative;width:100%}.fl-material .fl-md-card{background-color:var(--md-bg-light);border-radius:var(--md-border-radius);-webkit-box-shadow:var(--md-elevation);box-shadow:var(--md-elevation);color:var(--md-text-light);overflow:hidden}.fl-material .fl-content{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:16px}.fl-material .fl-text-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-material .fl-message{color:var(--md-text-secondary-light);font-size:.875rem;line-height:1.43}.fl-material .fl-actions{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;justify-content:flex-end;padding:8px}.fl-material .fl-action-button{background:transparent;border:none;border-radius:4px;color:currentColor;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;letter-spacing:.0892857143em;overflow:hidden;padding:8px 12px;position:relative;text-transform:uppercase;-webkit-transition:background-color .2s;-moz-transition:background-color .2s;transition:background-color .2s}.fl-material .fl-action-button:focus,.fl-material .fl-action-button:hover{background-color:rgba(0,0,0,.04)}.fl-material .fl-action-button:after{background:currentColor;border-radius:50%;content:"";height:5px;opacity:0;pointer-events:none;position:absolute;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);width:5px}.fl-material .fl-action-button:active:after{-webkit-animation:mdRipple var(--md-ripple-duration) linear;-moz-animation:mdRipple var(--md-ripple-duration) linear;animation:mdRipple var(--md-ripple-duration) linear;opacity:.3}.fl-material.fl-success .fl-action-button,.fl-material.fl-success .fl-icon-wrapper{color:var(--md-success)}.fl-material.fl-info .fl-action-button,.fl-material.fl-info .fl-icon-wrapper{color:var(--md-info)}.fl-material.fl-warning .fl-action-button,.fl-material.fl-warning .fl-icon-wrapper{color:var(--md-warning)}.fl-material.fl-error .fl-action-button,.fl-material.fl-error .fl-icon-wrapper{color:var(--md-error)}.fl-material .fl-progress-bar{bottom:0;height:4px;left:0;overflow:hidden;position:absolute;right:0}.fl-material .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-material.fl-success .fl-progress{background-color:var(--md-success)}.fl-material.fl-info .fl-progress{background-color:var(--md-info)}.fl-material.fl-warning .fl-progress{background-color:var(--md-warning)}.fl-material.fl-error .fl-progress{background-color:var(--md-error)}.fl-material.fl-rtl{direction:rtl}.fl-material.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-material.fl-rtl .fl-icon-wrapper{margin-left:16px;margin-right:0}.fl-material.fl-rtl .fl-actions{-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;justify-content:flex-start}.fl-material.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-material,.fl-material .fl-action-button:active:after{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-material.fl-auto-dark .fl-md-card,body.fl-dark .fl-material .fl-md-card,html.fl-dark .fl-material .fl-md-card{background-color:var(--md-bg-dark);-webkit-box-shadow:var(--md-elevation-dark);box-shadow:var(--md-elevation-dark);color:var(--md-text-dark)}.fl-material.fl-auto-dark .fl-message,body.fl-dark .fl-material .fl-message,html.fl-dark .fl-material .fl-message{color:var(--md-text-secondary-dark)}.fl-material.fl-auto-dark .fl-action-button:focus,.fl-material.fl-auto-dark .fl-action-button:hover,body.fl-dark .fl-material .fl-action-button:focus,body.fl-dark .fl-material .fl-action-button:hover,html.fl-dark .fl-material .fl-action-button:focus,html.fl-dark .fl-material .fl-action-button:hover{background-color:hsla(0,0%,100%,.08)} +.fl-minimal{--minimal-bg-light:hsla(0,0%,100%,.8);--minimal-bg-dark:rgba(25,25,25,.8);--minimal-text-light:#333;--minimal-text-dark:#f5f5f5;--minimal-shadow:0 2px 8px rgba(0,0,0,.08);--minimal-shadow-dark:0 2px 8px rgba(0,0,0,.15);--minimal-border-radius:6px;--minimal-border-color:rgba(0,0,0,.05);--minimal-border-color-dark:hsla(0,0%,100%,.1);--minimal-success:rgba(34,197,94,.9);--minimal-info:rgba(14,165,233,.9);--minimal-warning:rgba(245,158,11,.9);--minimal-error:rgba(239,68,68,.9)}@-webkit-keyframes minimalIn{0%{opacity:0;-webkit-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes minimalIn{0%{opacity:0;-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes minimalIn{0%{opacity:0;-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-minimal{-webkit-animation:minimalIn .2s ease-out;-moz-animation:minimalIn .2s ease-out;animation:minimalIn .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:var(--minimal-bg-light);border:1px solid var(--minimal-border-color);border-radius:var(--minimal-border-radius);-webkit-box-shadow:var(--minimal-shadow);box-shadow:var(--minimal-shadow);color:var(--minimal-text-light);font-family:-apple-system,BlinkMacSystemFont,var(--fl-font),sans-serif;margin:.5rem 0;max-width:320px;padding:.75rem 1rem;position:relative;will-change:transform,opacity}.fl-minimal:last-child{margin-bottom:0}.fl-minimal .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;gap:.75rem}.fl-minimal .fl-dot{border-radius:50%;-webkit-flex-shrink:0;flex-shrink:0;height:8px;width:8px}.fl-minimal .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.875rem;font-weight:450;line-height:1.4;margin:0}.fl-minimal .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;color:currentColor;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1rem;height:1.5rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;opacity:.5;padding:.25rem;-webkit-transition:opacity .15s;-moz-transition:opacity .15s;transition:opacity .15s;width:1.5rem}.fl-minimal .fl-close:focus,.fl-minimal .fl-close:hover{opacity:.8}.fl-minimal .fl-progress-bar{border-radius:0 0 var(--minimal-border-radius) var(--minimal-border-radius);bottom:0;height:2px;left:0;opacity:.7;overflow:hidden;position:absolute;right:0}.fl-minimal .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-minimal.fl-success .fl-dot,.fl-minimal.fl-success .fl-progress-bar .fl-progress{background-color:var(--minimal-success)}.fl-minimal.fl-info .fl-dot,.fl-minimal.fl-info .fl-progress-bar .fl-progress{background-color:var(--minimal-info)}.fl-minimal.fl-warning .fl-dot,.fl-minimal.fl-warning .fl-progress-bar .fl-progress{background-color:var(--minimal-warning)}.fl-minimal.fl-error .fl-dot,.fl-minimal.fl-error .fl-progress-bar .fl-progress{background-color:var(--minimal-error)}.fl-minimal.fl-rtl{direction:rtl}.fl-minimal.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-minimal{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-minimal.fl-auto-dark,body.fl-dark .fl-minimal,html.fl-dark .fl-minimal{background-color:var(--minimal-bg-dark);border-color:var(--minimal-border-color-dark);-webkit-box-shadow:var(--minimal-shadow-dark);box-shadow:var(--minimal-shadow-dark);color:var(--minimal-text-dark)} +.fl-neon{--neon-bg-light:hsla(0,0%,100%,.9);--neon-bg-dark:rgba(15,23,42,.9);--neon-text-light:#334155;--neon-text-dark:#f1f5f9;--neon-shadow:0 8px 30px rgba(0,0,0,.12);--neon-shadow-dark:0 8px 30px rgba(0,0,0,.25);--neon-border-radius:12px;--neon-success:#10b981;--neon-info:#3b82f6;--neon-warning:#f59e0b;--neon-error:#ef4444;--neon-glow-strength:10px;--neon-animation-duration:0.35s}@-webkit-keyframes neonEntrance{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(-15px);transform:translateY(-15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes neonEntrance{0%{filter:blur(3px);opacity:0;-moz-transform:translateY(-15px);transform:translateY(-15px)}to{filter:blur(0);opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes neonEntrance{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(-15px);-moz-transform:translateY(-15px);transform:translateY(-15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes neonGlow{0%,to{-webkit-filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor);filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor)}50%{-webkit-filter:drop-shadow(0 0 -webkit-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 calc(var(--neon-glow-strength)*.7) currentColor)}}@-moz-keyframes neonGlow{0%,to{filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor)}50%{filter:drop-shadow(0 0 -moz-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 calc(var(--neon-glow-strength)*.7) currentColor)}}@keyframes neonGlow{0%,to{-webkit-filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor);filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor)}50%{-webkit-filter:drop-shadow(0 0 -webkit-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 -moz-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 calc(var(--neon-glow-strength)*.7) currentColor)}}.fl-neon{-webkit-animation:neonEntrance var(--neon-animation-duration) ease-out;-moz-animation:neonEntrance var(--neon-animation-duration) ease-out;animation:neonEntrance var(--neon-animation-duration) ease-out;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--neon-bg-light);border-radius:var(--neon-border-radius);-webkit-box-shadow:var(--neon-shadow);box-shadow:var(--neon-shadow);color:var(--neon-text-light);font-family:"Inter",var(--fl-font),sans-serif;margin:12px 0;padding:14px 18px;position:relative;will-change:transform,opacity,filter}.fl-neon .fl-icon-box{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-animation:neonGlow 3s ease-in-out infinite;-moz-animation:neonGlow 3s ease-in-out infinite;animation:neonGlow 3s ease-in-out infinite;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:24px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;left:16px;position:absolute;top:-12px;width:24px}.fl-neon .fl-icon-box:before{border-radius:50%;content:"";height:100%;opacity:.4;position:absolute;width:100%}.fl-neon .fl-icon-box:after{border-radius:50%;content:"";height:10px;position:relative;width:10px;z-index:1}.fl-neon .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-neon .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.9375rem;font-weight:500;line-height:1.5}.fl-neon .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;color:inherit;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.2rem;height:28px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:16px;opacity:.6;padding:0;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease;width:28px}.fl-neon .fl-close:focus,.fl-neon .fl-close:hover{background-color:rgba(0,0,0,.06);opacity:1}.fl-neon .fl-progress-bar{border-radius:0 0 var(--neon-border-radius) var(--neon-border-radius);bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-neon .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-neon.fl-success .fl-icon-box{color:var(--neon-success)}.fl-neon.fl-success .fl-icon-box:after,.fl-neon.fl-success .fl-icon-box:before,.fl-neon.fl-success .fl-progress{background-color:var(--neon-success)}.fl-neon.fl-info .fl-icon-box{color:var(--neon-info)}.fl-neon.fl-info .fl-icon-box:after,.fl-neon.fl-info .fl-icon-box:before,.fl-neon.fl-info .fl-progress{background-color:var(--neon-info)}.fl-neon.fl-warning .fl-icon-box{color:var(--neon-warning)}.fl-neon.fl-warning .fl-icon-box:after,.fl-neon.fl-warning .fl-icon-box:before,.fl-neon.fl-warning .fl-progress{background-color:var(--neon-warning)}.fl-neon.fl-error .fl-icon-box{color:var(--neon-error)}.fl-neon.fl-error .fl-icon-box:after,.fl-neon.fl-error .fl-icon-box:before,.fl-neon.fl-error .fl-progress{background-color:var(--neon-error)}.fl-neon.fl-rtl{direction:rtl}.fl-neon.fl-rtl .fl-icon-box{left:auto;right:16px}.fl-neon.fl-rtl .fl-close{margin-left:0;margin-right:16px}.fl-neon.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-neon,.fl-neon .fl-icon-box{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-neon.fl-auto-dark,body.fl-dark .fl-neon,html.fl-dark .fl-neon{background-color:var(--neon-bg-dark);-webkit-box-shadow:var(--neon-shadow-dark);box-shadow:var(--neon-shadow-dark);color:var(--neon-text-dark)}.fl-neon.fl-auto-dark .fl-close:focus,.fl-neon.fl-auto-dark .fl-close:hover,body.fl-dark .fl-neon .fl-close:focus,body.fl-dark .fl-neon .fl-close:hover,html.fl-dark .fl-neon .fl-close:focus,html.fl-dark .fl-neon .fl-close:hover{background-color:hsla(0,0%,100%,.1)} +.fl-onyx{--onyx-bg-light:#fff;--onyx-bg-dark:#1e1e1e;--onyx-text-light:#333;--onyx-text-dark:#f5f5f5;--onyx-shadow:0 8px 30px rgba(0,0,0,.12);--onyx-shadow-dark:0 8px 30px rgba(0,0,0,.25);--onyx-border-radius:1rem;--onyx-success:#10b981;--onyx-info:#3b82f6;--onyx-warning:#f59e0b;--onyx-error:#ef4444}@-webkit-keyframes onyxIn{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(15px);transform:translateY(15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes onyxIn{0%{filter:blur(3px);opacity:0;-moz-transform:translateY(15px);transform:translateY(15px)}to{filter:blur(0);opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes onyxIn{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(15px);-moz-transform:translateY(15px);transform:translateY(15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-onyx{-webkit-animation:onyxIn .4s cubic-bezier(.16,1,.3,1);-moz-animation:onyxIn .4s cubic-bezier(.16,1,.3,1);animation:onyxIn .4s cubic-bezier(.16,1,.3,1);background-color:var(--onyx-bg-light);border-radius:var(--onyx-border-radius);-webkit-box-shadow:var(--onyx-shadow);box-shadow:var(--onyx-shadow);color:var(--onyx-text-light);font-family:var(--fl-font),serif;margin:.75rem 0;overflow:hidden;padding:1rem 1.25rem;position:relative;will-change:transform,opacity,filter}.fl-onyx:after,.fl-onyx:before{border-radius:50%;content:"";height:6px;position:absolute;width:6px;z-index:1}.fl-onyx:before{left:10px;top:10px}.fl-onyx:after{bottom:10px;right:10px}.fl-onyx .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding-left:.4rem}.fl-onyx .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;position:relative}.fl-onyx .fl-message{font-size:.925rem;font-weight:400;letter-spacing:.01rem;line-height:1.5}.fl-onyx .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;color:currentColor;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.25rem;height:1.75rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:1rem;opacity:.6;padding:.25rem;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease;width:1.75rem}.fl-onyx .fl-close:focus,.fl-onyx .fl-close:hover{background-color:rgba(0,0,0,.05);opacity:1}.fl-onyx .fl-progress-bar{bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-onyx .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-onyx.fl-success .fl-progress-bar .fl-progress,.fl-onyx.fl-success:after,.fl-onyx.fl-success:before{background-color:var(--onyx-success)}.fl-onyx.fl-info .fl-progress-bar .fl-progress,.fl-onyx.fl-info:after,.fl-onyx.fl-info:before{background-color:var(--onyx-info)}.fl-onyx.fl-warning .fl-progress-bar .fl-progress,.fl-onyx.fl-warning:after,.fl-onyx.fl-warning:before{background-color:var(--onyx-warning)}.fl-onyx.fl-error .fl-progress-bar .fl-progress,.fl-onyx.fl-error:after,.fl-onyx.fl-error:before{background-color:var(--onyx-error)}.fl-onyx.fl-rtl{direction:rtl}.fl-onyx.fl-rtl .fl-content{padding-left:0;padding-right:.4rem}.fl-onyx.fl-rtl .fl-close{margin-left:0;margin-right:1rem}.fl-onyx.fl-rtl:before{left:auto;right:10px}.fl-onyx.fl-rtl:after{left:10px;right:auto}.fl-onyx.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-onyx{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-onyx.fl-auto-dark,body.fl-dark .fl-onyx,html.fl-dark .fl-onyx{background-color:var(--onyx-bg-dark);-webkit-box-shadow:var(--onyx-shadow-dark);box-shadow:var(--onyx-shadow-dark);color:var(--onyx-text-dark)}.fl-onyx.fl-auto-dark .fl-close:focus,.fl-onyx.fl-auto-dark .fl-close:hover,body.fl-dark .fl-onyx .fl-close:focus,body.fl-dark .fl-onyx .fl-close:hover,html.fl-dark .fl-onyx .fl-close:focus,html.fl-dark .fl-onyx .fl-close:hover{background-color:hsla(0,0%,100%,.1)} +.fl-ruby{--ruby-text:#fff;--ruby-text-dark:#f8fafc;--ruby-border-radius:1.125rem;--ruby-shadow:0 10px 25px -3px rgba(0,0,0,.2);--ruby-success-gradient:linear-gradient(135deg,#059669,#10b981);--ruby-info-gradient:linear-gradient(135deg,#2563eb,#3b82f6);--ruby-warning-gradient:linear-gradient(135deg,#d97706,#f59e0b);--ruby-error-gradient:linear-gradient(135deg,#b91c1c,#ef4444)}@-webkit-keyframes rubyShine{0%{left:-100%;opacity:.6}60%{left:100%;opacity:.6}to{left:100%;opacity:0}}@-moz-keyframes rubyShine{0%{left:-100%;opacity:.6}60%{left:100%;opacity:.6}to{left:100%;opacity:0}}@keyframes rubyShine{0%{left:-100%;opacity:.6}60%{left:100%;opacity:.6}to{left:100%;opacity:0}}@-webkit-keyframes rubyIn{0%{opacity:0;-webkit-transform:scale(.96);transform:scale(.96)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-moz-keyframes rubyIn{0%{opacity:0;-moz-transform:scale(.96);transform:scale(.96)}to{opacity:1;-moz-transform:scale(1);transform:scale(1)}}@keyframes rubyIn{0%{opacity:0;-webkit-transform:scale(.96);-moz-transform:scale(.96);transform:scale(.96)}to{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1)}}.fl-ruby{-webkit-animation:rubyIn .35s cubic-bezier(.21,1.02,.73,1);-moz-animation:rubyIn .35s cubic-bezier(.21,1.02,.73,1);animation:rubyIn .35s cubic-bezier(.21,1.02,.73,1);border-radius:var(--ruby-border-radius);-webkit-box-shadow:var(--ruby-shadow);box-shadow:var(--ruby-shadow);color:var(--ruby-text);font-family:var(--fl-font),serif;margin:.75rem 0;overflow:hidden;padding:0;position:relative;will-change:transform,opacity}.fl-ruby .fl-shine{-webkit-animation:rubyShine 6s infinite;-moz-animation:rubyShine 6s infinite;animation:rubyShine 6s infinite;-webkit-animation-delay:1s;-moz-animation-delay:1s;animation-delay:1s;background:-webkit-gradient(linear,left top, right top,from(hsla(0,0%,100%,0)),color-stop(50%, hsla(0,0%,100%,.3)),to(hsla(0,0%,100%,0)));background:-webkit-linear-gradient(left,hsla(0,0%,100%,0),hsla(0,0%,100%,.3) 50%,hsla(0,0%,100%,0));background:-moz-linear-gradient(left,hsla(0,0%,100%,0),hsla(0,0%,100%,.3) 50%,hsla(0,0%,100%,0));background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.3) 50%,hsla(0,0%,100%,0));height:100%;left:-100%;position:absolute;top:0;-webkit-transform:skewX(-20deg);-moz-transform:skewX(-20deg);-ms-transform:skewX(-20deg);transform:skewX(-20deg);width:50%;z-index:1}.fl-ruby .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:.9rem 1.1rem;position:relative;z-index:2}.fl-ruby .fl-icon-circle{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:hsla(0,0%,100%,.25);border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:2.25rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-right:1rem;width:2.25rem}.fl-ruby .fl-icon{background-color:transparent;color:var(--ruby-text);font-size:1rem;margin:0}.fl-ruby .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-ruby .fl-message{font-size:.925rem;font-weight:500;line-height:1.5}.fl-ruby .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:var(--ruby-text);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.1rem;height:1.6rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:.75rem;opacity:.8;padding:.1rem;-webkit-transition:all .2s;-moz-transition:all .2s;transition:all .2s;width:1.6rem}.fl-ruby .fl-close:focus,.fl-ruby .fl-close:hover{background:hsla(0,0%,100%,.3);opacity:1;-webkit-transform:scale(1.05);-moz-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}.fl-ruby .fl-progress-bar{background-color:rgba(0,0,0,.1);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;right:0;z-index:3}.fl-ruby .fl-progress-bar .fl-progress{background:hsla(0,0%,100%,.4);height:100%;width:100%}.fl-ruby.fl-success{background:var(--ruby-success-gradient)}.fl-ruby.fl-info{background:var(--ruby-info-gradient)}.fl-ruby.fl-warning{background:var(--ruby-warning-gradient)}.fl-ruby.fl-error{background:var(--ruby-error-gradient)}.fl-ruby.fl-rtl{direction:rtl}.fl-ruby.fl-rtl .fl-icon-circle{margin-left:1rem;margin-right:0}.fl-ruby.fl-rtl .fl-close{margin-left:0;margin-right:.75rem}.fl-ruby.fl-rtl .fl-shine{-webkit-transform:skewX(20deg);-moz-transform:skewX(20deg);-ms-transform:skewX(20deg);transform:skewX(20deg)}.fl-ruby.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-ruby{-webkit-animation:none;-moz-animation:none;animation:none}.fl-ruby .fl-shine{display:none}} +.fl-sapphire{--sapphire-bg-base:rgba(30,30,30,.9);--sapphire-text:#f0f0f0;--sapphire-shadow:rgba(0,0,0,.15);--sapphire-progress-bg:hsla(0,0%,100%,.2);--sapphire-progress-fill:hsla(0,0%,100%,.9);--sapphire-success:rgba(16,185,129,.95);--sapphire-error:rgba(239,68,68,.95);--sapphire-warning:rgba(245,158,11,.95);--sapphire-info:rgba(59,130,246,.95);--sapphire-animation:0.4s cubic-bezier(0.25,0.46,0.45,0.94)}@-webkit-keyframes sapphireIn{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}60%{-webkit-transform:translateY(-3px);transform:translateY(-3px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes sapphireIn{0%{opacity:0;-moz-transform:translateY(10px);transform:translateY(10px)}60%{-moz-transform:translateY(-3px);transform:translateY(-3px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes sapphireIn{0%{opacity:0;-webkit-transform:translateY(10px);-moz-transform:translateY(10px);transform:translateY(10px)}60%{-webkit-transform:translateY(-3px);-moz-transform:translateY(-3px);transform:translateY(-3px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-sapphire{-webkit-animation:sapphireIn var(--sapphire-animation);-moz-animation:sapphireIn var(--sapphire-animation);animation:sapphireIn var(--sapphire-animation);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:var(--sapphire-bg-base);border-radius:.5em;-webkit-box-shadow:0 6px 16px var(--sapphire-shadow);box-shadow:0 6px 16px var(--sapphire-shadow);color:var(--sapphire-text);font-family:Roboto,var(--fl-font),serif;margin:0 0 .75em;min-width:200px;padding:1em 1.5em;position:relative;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;transition:all .3s ease;will-change:transform,opacity}.fl-sapphire:last-child{margin-bottom:0}.fl-sapphire .fl-message{color:var(--sapphire-text);font-size:.925em;line-height:1.4}.fl-sapphire .fl-progress-bar{background-color:var(--sapphire-progress-bg);border-radius:0 0 .375em .375em;bottom:0;height:4px;left:0;overflow:hidden;position:absolute;right:0}.fl-sapphire .fl-progress-bar .fl-progress{background-color:var(--sapphire-progress-fill);height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%;will-change:transform}.fl-sapphire.fl-success{background-color:var(--sapphire-success)}.fl-sapphire.fl-error{background-color:var(--sapphire-error)}.fl-sapphire.fl-warning{background-color:var(--sapphire-warning)}.fl-sapphire.fl-info{background-color:var(--sapphire-info)}.fl-sapphire.fl-rtl{direction:rtl}.fl-sapphire.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-sapphire{-webkit-animation:none;-moz-animation:none;animation:none}} +.fl-slack{--slack-bg-light:#fff;--slack-bg-dark:#1a1d21;--slack-hover-light:#f8f8f8;--slack-hover-dark:#222529;--slack-text-light:#1d1c1d;--slack-text-secondary-light:#616061;--slack-text-dark:#e0e0e0;--slack-text-secondary-dark:#ababad;--slack-border-light:#e0e0e0;--slack-border-dark:#393a3e;--slack-shadow:0 1px 0 rgba(0,0,0,.1);--slack-shadow-dark:0 1px 0 rgba(0,0,0,.2);--slack-avatar-size:36px;--slack-success:#2bac76;--slack-info:#1264a3;--slack-warning:#e8912d;--slack-error:#e01e5a;--slack-animation-duration:150ms}@-webkit-keyframes slackFadeIn{0%{opacity:0}to{opacity:1}}@-moz-keyframes slackFadeIn{0%{opacity:0}to{opacity:1}}@keyframes slackFadeIn{0%{opacity:0}to{opacity:1}}.fl-slack{-webkit-animation:slackFadeIn var(--slack-animation-duration) ease-out;-moz-animation:slackFadeIn var(--slack-animation-duration) ease-out;animation:slackFadeIn var(--slack-animation-duration) ease-out;font-family:Lato,Slack-Lato,Helvetica Neue,Helvetica,sans-serif;margin:4px 0;max-width:500px;position:relative;width:100%}.fl-slack .fl-slack-message{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;background-color:var(--slack-bg-light);border:1px solid var(--slack-border-light);border-radius:4px;-webkit-box-shadow:var(--slack-shadow);box-shadow:var(--slack-shadow);color:var(--slack-text-light);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:8px 20px 8px 8px;-webkit-transition:background-color .1s ease;-moz-transition:background-color .1s ease;transition:background-color .1s ease}.fl-slack .fl-slack-message:hover{background-color:var(--slack-hover-light)}.fl-slack .fl-avatar{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:currentColor;border-radius:4px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:var(--slack-avatar-size);-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-right:8px;width:var(--slack-avatar-size)}.fl-slack .fl-type-icon{color:#fff;font-size:16px;font-weight:700}.fl-slack .fl-message-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;min-width:0}.fl-slack .fl-message-text{font-size:15px;line-height:1.46668;word-break:break-word}.fl-slack .fl-actions{opacity:0;position:absolute;right:6px;top:8px;-webkit-transition:opacity .1s ease;-moz-transition:opacity .1s ease;transition:opacity .1s ease;visibility:hidden}.fl-slack .fl-slack-message:hover .fl-actions{opacity:1;visibility:visible}.fl-slack .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:4px;color:var(--slack-text-secondary-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;padding:4px}.fl-slack .fl-close:hover{background-color:var(--slack-hover-light);color:var(--slack-text-light)}.fl-slack.fl-success .fl-avatar{color:var(--slack-success)}.fl-slack.fl-info .fl-avatar{color:var(--slack-info)}.fl-slack.fl-warning .fl-avatar{color:var(--slack-warning)}.fl-slack.fl-error .fl-avatar{color:var(--slack-error)}.fl-slack.fl-rtl{direction:rtl}.fl-slack.fl-rtl .fl-avatar{margin-left:8px;margin-right:0}.fl-slack.fl-rtl .fl-username{margin-left:4px;margin-right:0}.fl-slack.fl-rtl .fl-actions{left:6px;right:auto}.fl-slack.fl-rtl .fl-slack-message{padding:8px 8px 8px 20px}@media (prefers-reduced-motion:reduce){.fl-slack{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-slack.fl-auto-dark .fl-slack-message,body.fl-dark .fl-slack .fl-slack-message,html.fl-dark .fl-slack .fl-slack-message{background-color:var(--slack-bg-dark);border-color:var(--slack-border-dark);-webkit-box-shadow:var(--slack-shadow-dark);box-shadow:var(--slack-shadow-dark);color:var(--slack-text-dark)}.fl-slack.fl-auto-dark .fl-slack-message:hover,body.fl-dark .fl-slack .fl-slack-message:hover,html.fl-dark .fl-slack .fl-slack-message:hover{background-color:var(--slack-hover-dark)}.fl-slack.fl-auto-dark .fl-close,body.fl-dark .fl-slack .fl-close,html.fl-dark .fl-slack .fl-close{color:var(--slack-text-secondary-dark)}.fl-slack.fl-auto-dark .fl-close:hover,body.fl-dark .fl-slack .fl-close:hover,html.fl-dark .fl-slack .fl-close:hover{background-color:var(--slack-hover-dark);color:var(--slack-text-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/flasher.min.js b/demo/symfony/public/vendor/flasher/flasher.min.js index 2804f952..c32876c2 100644 --- a/demo/symfony/public/vendor/flasher/flasher.min.js +++ b/demo/symfony/public/vendor/flasher/flasher.min.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).flasher=t()}(this,(function(){"use strict";function e(e,t,s,n){return new(s||(s=Promise))((function(o,i){function r(e){try{a(n.next(e))}catch(e){i(e)}}function l(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(r,l)}a((n=n.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class t{success(e,t,s){this.flash("success",e,t,s)}error(e,t,s){this.flash("error",e,t,s)}info(e,t,s){this.flash("info",e,t,s)}warning(e,t,s){this.flash("warning",e,t,s)}flash(e,t,s,n){if("object"==typeof e?(e=(n=e).type,t=n.message,s=n.title):"object"==typeof t?(t=(n=t).message,s=n.title):"object"==typeof s&&(s=(n=s).title),void 0===t)throw new Error("message option is required");const o={type:e,message:t,title:s||e,options:n||{},metadata:{plugin:""}};this.renderOptions(n||{}),this.renderEnvelopes([o])}}class s extends t{constructor(e){super(),this.options={timeout:null,timeouts:{success:5e3,info:5e3,error:5e3,warning:5e3},fps:30,position:"top-right",direction:"top",rtl:!1,style:{},escapeHtml:!1},this.theme=e}renderEnvelopes(e){const t=()=>e.forEach((e=>{var t,s,n,o;const i=null!==(s=null!==(t=this.options.timeout)&&void 0!==t?t:this.options.timeouts[e.type])&&void 0!==s?s:5e3,r=Object.assign(Object.assign(Object.assign({},this.options),e.options),{timeout:null!==(n=e.options.timeout)&&void 0!==n?n:i,escapeHtml:null!==(o=e.options.escapeHtml)&&void 0!==o?o:this.options.escapeHtml});this.addToContainer(this.createContainer(r),e,r)}));"loading"===document.readyState?document.addEventListener("DOMContentLoaded",t):t()}renderOptions(e){this.options=Object.assign(Object.assign({},this.options),e)}createContainer(e){let t=document.querySelector(`.fl-wrapper[data-position="${e.position}"]`);return t||(t=document.createElement("div"),t.className="fl-wrapper",t.dataset.position=e.position,Object.entries(e.style).forEach((([e,s])=>t.style.setProperty(e,s))),document.body.appendChild(t)),t.dataset.turboTemporary="",t}addToContainer(e,t,s){var n;s.escapeHtml&&(t.title=this.escapeHtml(t.title),t.message=this.escapeHtml(t.message));const o=this.stringToHTML(this.theme.render(t));o.classList.add(...("fl-container"+(s.rtl?" fl-rtl":"")).split(" ")),"bottom"===s.direction?e.append(o):e.prepend(o),requestAnimationFrame((()=>o.classList.add("fl-show"))),null===(n=o.querySelector(".fl-close"))||void 0===n||n.addEventListener("click",(e=>{e.stopPropagation(),this.removeNotification(o)})),this.addProgressBar(o,s)}addProgressBar(e,{timeout:t,fps:s}){if(t<=0||s<=0)return;const n=e.querySelector(".fl-progress-bar");if(!n)return;const o=document.createElement("span");o.classList.add("fl-progress"),n.append(o);const i=1e3/s;let r=0;const l=()=>{r+=1;const s=100*(1-i*(r/t));o.style.width=`${s}%`,s<=0&&(clearInterval(a),this.removeNotification(e))};let a=window.setInterval(l,i);e.addEventListener("mouseout",(()=>a=window.setInterval(l,i))),e.addEventListener("mouseover",(()=>clearInterval(a)))}removeNotification(e){e.classList.remove("fl-show"),e.ontransitionend=()=>{var t,s;!(null===(t=e.parentElement)||void 0===t?void 0:t.hasChildNodes())&&(null===(s=e.parentElement)||void 0===s||s.remove()),e.remove()}}stringToHTML(e){const t=document.createElement("template");return t.innerHTML=e.trim(),t.content.firstElementChild}escapeHtml(e){return null==e?"":e.replace(/[&<>"'`=\/]/g,(e=>({"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"=","/":"/"}[e])))}}const n=new class extends t{constructor(){super(...arguments),this.defaultPlugin="flasher",this.plugins=new Map,this.themes=new Map}render(t){return e(this,void 0,void 0,(function*(){const e=this.resolveResponse(t);yield this.addAssets([{urls:e.styles,nonce:e.context.csp_style_nonce,type:"style"},{urls:e.scripts,nonce:e.context.csp_script_nonce,type:"script"}]),this.renderOptions(e.options),this.renderEnvelopes(e.envelopes)}))}renderEnvelopes(e){const t={};e.forEach((e=>{const s=this.resolvePluginAlias(e.metadata.plugin);t[s]=t[s]||[],t[s].push(e)})),Object.entries(t).forEach((([e,t])=>{this.use(e).renderEnvelopes(t)}))}renderOptions(e){Object.entries(e).forEach((([e,t])=>{this.use(e).renderOptions(t)}))}addPlugin(e,t){this.plugins.set(e,t)}addTheme(e,t){this.themes.set(e,t)}use(e){e=this.resolvePluginAlias(e),this.resolvePlugin(e);const t=this.plugins.get(e);if(!t)throw new Error(`Unable to resolve "${e}" plugin, did you forget to register it?`);return t}create(e){return this.use(e)}resolveResponse(e){const t=Object.assign({envelopes:[],options:{},scripts:[],styles:[],context:{}},e);return Object.entries(t.options).forEach((([e,s])=>{t.options[e]=this.resolveOptions(s)})),t.context.csp_style_nonce=t.context.csp_style_nonce||"",t.context.csp_script_nonce=t.context.csp_script_nonce||"",t.envelopes.forEach((s=>{s.metadata=s.metadata||{},s.metadata.plugin=this.resolvePluginAlias(s.metadata.plugin),this.addThemeStyles(t,s.metadata.plugin),s.options=this.resolveOptions(s.options),s.context=e.context})),t}resolveOptions(e){return Object.entries(e).forEach((([t,s])=>{e[t]=this.resolveFunction(s)})),e}resolveFunction(e){var t,s;if("string"!=typeof e)return e;const n=e.match(/^function\s*(\w*)\s*\(([^)]*)\)\s*\{([\s\S]*)\}$/)||e.match(/^\s*(\(([^)]*)\)|[^=]+)\s*=>\s*([\s\S]+)$/);if(!n)return e;const o=null!==(s=null===(t=n[2])||void 0===t?void 0:t.split(",").map((e=>e.trim())))&&void 0!==s?s:[];let i=n[3].trim();i.startsWith("{")||(i=`{ return ${i}; }`);try{return new Function(...o,i)}catch(t){return console.error("Error converting string to function:",t),e}}resolvePlugin(e){if(this.plugins.get(e)||!e.includes("theme."))return;const t=this.themes.get(e.replace("theme.",""));t&&this.addPlugin(e,new s(t))}resolvePluginAlias(e){return"flasher"===(e=e||this.defaultPlugin)?"theme.flasher":e}addAssets(t){return e(this,void 0,void 0,(function*(){for(const{urls:e,nonce:s,type:n}of t)for(const t of e)yield this.loadAsset(t,s,n)}))}loadAsset(t,s,n){return e(this,void 0,void 0,(function*(){if(document.querySelector(`${"style"===n?"link":"script"}[src="${t}"]`))return;const e=document.createElement("style"===n?"link":"script");return"style"===n?(e.rel="stylesheet",e.href=t):(e.type="text/javascript",e.src=t),s&&e.setAttribute("nonce",s),document.head.appendChild(e),new Promise(((s,n)=>{e.onload=()=>s(),e.onerror=()=>n(new Error(`Failed to load ${t}`))}))}))}addThemeStyles(e,t){var s;if("flasher"!==t&&!t.includes("theme."))return;t=t.replace("theme.","");const n=(null===(s=this.themes.get(t))||void 0===s?void 0:s.styles)||[];e.styles=Array.from(new Set([...e.styles,...n]))}};return n.addTheme("flasher",{render:e=>{const{type:t,title:s,message:n}=e,o="error"===t||"warning"===t;return`\n
\n
\n
\n
\n ${s}\n ${n}\n
\n \n
\n \n
`}}),n})); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).flasher=t()}(this,(function(){"use strict";function e(e,t,s,n){return new(s||(s=Promise))((function(r,o){function i(e){try{a(n.next(e))}catch(e){o(e)}}function l(e){try{a(n.throw(e))}catch(e){o(e)}}function a(e){var t;e.done?r(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(i,l)}a((n=n.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;class t{success(e,t,s){this.flash("success",e,t,s)}error(e,t,s){this.flash("error",e,t,s)}info(e,t,s){this.flash("info",e,t,s)}warning(e,t,s){this.flash("warning",e,t,s)}flash(e,t,s,n){let r,o,i,l={};if("object"==typeof e?(l=Object.assign({},e),r=l.type,o=l.message,i=l.title,delete l.type,delete l.message,delete l.title):"object"==typeof t?(l=Object.assign({},t),r=e,o=l.message,i=l.title,delete l.message,delete l.title):"object"==typeof s?(l=Object.assign({},s),r=e,o=t,i=l.title,delete l.title):(r=e,o=t,i=s,l=n||{}),!r)throw new Error("Type is required for notifications");if(null==o)throw new Error("Message is required for notifications");const a={type:r,message:o,title:i||r,options:l,metadata:{plugin:""}};this.renderOptions(l),this.renderEnvelopes([a])}}class s extends t{constructor(e){if(super(),this.options={timeout:null,timeouts:{success:1e4,info:1e4,error:1e4,warning:1e4},fps:30,position:"top-right",direction:"top",rtl:!1,style:{},escapeHtml:!1},!e)throw new Error("Theme is required");if("function"!=typeof e.render)throw new TypeError("Theme must have a render function");this.theme=e}renderEnvelopes(e){if(!(null==e?void 0:e.length))return;const t=()=>{e.forEach((e=>{var t,s,n,r;try{const o=null!==(s=null!==(t=this.options.timeout)&&void 0!==t?t:this.options.timeouts[e.type])&&void 0!==s?s:1e4,i=Object.assign(Object.assign(Object.assign({},this.options),e.options),{timeout:null!==(n=e.options.timeout)&&void 0!==n?n:o,escapeHtml:null!==(r=e.options.escapeHtml)&&void 0!==r?r:this.options.escapeHtml}),l=this.createContainer(i),a={direction:i.direction,timeout:Number(i.timeout||0),fps:i.fps,rtl:i.rtl,escapeHtml:i.escapeHtml};this.addToContainer(l,e,a)}catch(t){console.error("PHPFlasher: Error rendering envelope",t,e)}}))};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",t):t()}renderOptions(e){e&&(this.options=Object.assign(Object.assign({},this.options),e))}createContainer(e){let t=document.querySelector(`.fl-wrapper[data-position="${e.position}"]`);return t||(t=document.createElement("div"),t.className="fl-wrapper",t.dataset.position=e.position,Object.entries(e.style).forEach((([e,s])=>{null!=s&&t.style.setProperty(e,String(s))})),document.body.appendChild(t)),t.dataset.turboTemporary="",t}addToContainer(e,t,s){s.escapeHtml&&(t.title=this.escapeHtml(t.title),t.message=this.escapeHtml(t.message));const n=this.stringToHTML(this.theme.render(t));n.classList.add("fl-container"),s.rtl&&n.classList.add("fl-rtl"),"bottom"===s.direction?e.append(n):e.prepend(n),requestAnimationFrame((()=>n.classList.add("fl-show")));const r=n.querySelector(".fl-close");r&&r.addEventListener("click",(e=>{e.stopPropagation(),this.removeNotification(n)})),s.timeout>0&&this.addTimer(n,s)}addTimer(e,{timeout:t,fps:s}){if(t<=0)return;const n=1e3/s;let r,o=0;const i=()=>{o+=n;const s=e.querySelector(".fl-progress-bar");if(s){let e=s.querySelector(".fl-progress");e||(e=document.createElement("span"),e.classList.add("fl-progress"),s.append(e));const n=100*(1-o/t);e.style.width=`${Math.max(0,n)}%`}o>=t&&(clearInterval(r),this.removeNotification(e))};r=window.setInterval(i,n),e.addEventListener("mouseout",(()=>{clearInterval(r),r=window.setInterval(i,n)})),e.addEventListener("mouseover",(()=>clearInterval(r)))}removeNotification(e){e&&(e.classList.remove("fl-show"),e.ontransitionend=()=>{const t=e.parentElement;e.remove(),t&&!t.hasChildNodes()&&t.remove()})}stringToHTML(e){const t=document.createElement("template");return t.innerHTML=e.trim(),t.content.firstElementChild}escapeHtml(e){if(null==e)return"";const t={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"=","/":"/"};return e.replace(/[&<>"'`=/]/g,(e=>t[e]||e))}}const n=new class extends t{constructor(){super(...arguments),this.defaultPlugin="flasher",this.plugins=new Map,this.themes=new Map,this.loadedAssets=new Set}render(t){return e(this,void 0,void 0,(function*(){const e=this.resolveResponse(t);try{yield this.addAssets([{urls:e.styles,nonce:e.context.csp_style_nonce,type:"style"},{urls:e.scripts,nonce:e.context.csp_script_nonce,type:"script"}]),this.renderOptions(e.options),this.renderEnvelopes(e.envelopes)}catch(e){console.error("PHPFlasher: Error rendering notifications",e)}}))}renderEnvelopes(e){if(!(null==e?void 0:e.length))return;const t={};e.forEach((e=>{const s=this.resolvePluginAlias(e.metadata.plugin);t[s]=t[s]||[],t[s].push(e)})),Object.entries(t).forEach((([e,t])=>{try{this.use(e).renderEnvelopes(t)}catch(t){console.error(`PHPFlasher: Error rendering envelopes for plugin "${e}"`,t)}}))}renderOptions(e){e&&Object.entries(e).forEach((([e,t])=>{try{this.use(e).renderOptions(t)}catch(t){console.error(`PHPFlasher: Error applying options for plugin "${e}"`,t)}}))}addPlugin(e,t){if(!e||!t)throw new Error("Both plugin name and instance are required");this.plugins.set(e,t)}addTheme(e,t){if(!e||!t)throw new Error("Both theme name and definition are required");this.themes.set(e,t)}use(e){const t=this.resolvePluginAlias(e);this.resolvePlugin(t);const s=this.plugins.get(t);if(!s)throw new Error(`Unable to resolve "${t}" plugin, did you forget to register it?`);return s}create(e){return this.use(e)}resolveResponse(e){const t=Object.assign({envelopes:[],options:{},scripts:[],styles:[],context:{}},e);return Object.entries(t.options).forEach((([e,s])=>{t.options[e]=this.resolveOptions(s)})),t.context.csp_style_nonce=t.context.csp_style_nonce||"",t.context.csp_script_nonce=t.context.csp_script_nonce||"",t.envelopes.forEach((s=>{s.metadata=s.metadata||{},s.metadata.plugin=this.resolvePluginAlias(s.metadata.plugin),this.addThemeStyles(t,s.metadata.plugin),s.options=this.resolveOptions(s.options),s.context=e.context})),t}resolveOptions(e){if(!e)return{};const t=Object.assign({},e);return Object.entries(t).forEach((([e,s])=>{t[e]=this.resolveFunction(s)})),t}resolveFunction(e){var t,s;if("string"!=typeof e)return e;const n=e.match(/^function\s*(\w*)\s*\(([^)]*)\)\s*\{([\s\S]*)\}$/)||e.match(/^\s*(\(([^)]*)\)|[^=]+)\s*=>\s*([\s\S]+)$/);if(!n)return e;const r=null!==(s=null===(t=n[2])||void 0===t?void 0:t.split(",").map((e=>e.trim())))&&void 0!==s?s:[];let o=n[3].trim();o.startsWith("{")||(o=`{ return ${o}; }`);try{return new Function(...r,o)}catch(t){return console.error("PHPFlasher: Error converting string to function:",t),e}}resolvePlugin(e){if(this.plugins.get(e)||!e.includes("theme."))return;const t=e.replace("theme.",""),n=this.themes.get(t);n&&this.addPlugin(e,new s(n))}resolvePluginAlias(e){return"flasher"===(e=e||this.defaultPlugin)?"theme.flasher":e}addAssets(t){return e(this,void 0,void 0,(function*(){try{const e=t.filter((e=>"style"===e.type)),s=[];for(const{urls:t,nonce:n,type:r}of e)if(null==t?void 0:t.length)for(const e of t)e&&!this.loadedAssets.has(e)&&(s.push(this.loadAsset(e,n,r)),this.loadedAssets.add(e));yield Promise.all(s);const n=t.filter((e=>"script"===e.type));for(const{urls:e,nonce:t,type:s}of n)if(null==e?void 0:e.length)for(const n of e)n&&!this.loadedAssets.has(n)&&(yield this.loadAsset(n,t,s),this.loadedAssets.add(n))}catch(e){console.error("PHPFlasher: Error loading assets",e)}}))}loadAsset(e,t,s){return document.querySelector(`${"style"===s?"link":"script"}[src="${e}"]`)?Promise.resolve():new Promise(((n,r)=>{const o=document.createElement("style"===s?"link":"script");"style"===s?(o.rel="stylesheet",o.href=e):(o.type="text/javascript",o.src=e),t&&o.setAttribute("nonce",t),o.onload=()=>n(),o.onerror=()=>r(new Error(`Failed to load ${e}`)),document.head.appendChild(o)}))}addThemeStyles(e,t){if("flasher"!==t&&!t.includes("theme."))return;const s=t.replace("theme.",""),n=this.themes.get(s);if(!(null==n?void 0:n.styles))return;const r=Array.isArray(n.styles)?n.styles:[n.styles];e.styles=Array.from(new Set([...e.styles,...r]))}};return n.addTheme("flasher",{render:e=>{const{type:t,title:s,message:n}=e,r="error"===t||"warning"===t,o=r?"alert":"status",i=r?"assertive":"polite",l=s||t.charAt(0).toUpperCase()+t.slice(1);return`\n
\n
\n
\n
\n ${l}\n ${n}\n
\n \n
\n \n \n \n
`}}),"undefined"!=typeof window&&(window.flasher=n),n})); diff --git a/demo/symfony/public/vendor/flasher/manifest.json b/demo/symfony/public/vendor/flasher/manifest.json index d929b0a4..2efd99b7 100644 --- a/demo/symfony/public/vendor/flasher/manifest.json +++ b/demo/symfony/public/vendor/flasher/manifest.json @@ -1,17 +1,51 @@ { - "/vendor/flasher/flasher.min.js": "/vendor/flasher/flasher.min.js?id=9a255a6680873c0d5fc3d394a2ba3195", - "/vendor/flasher/flasher.min.css": "/vendor/flasher/flasher.min.css?id=7a96e40c68626198d5128ad2fb5d77e0", + "/vendor/flasher/flasher.min.js": "/vendor/flasher/flasher.min.js?id=2d20fa21f78414571c3878794170542b", + "/vendor/flasher/flasher.min.css": "/vendor/flasher/flasher.min.css?id=9ca8061ffa988c921675331af27e55b9", + "/vendor/flasher/themes/amazon/amazon.min.css": "/vendor/flasher/themes/amazon/amazon.min.css?id=623a3ecb638606497a685a7e94255c09", + "/vendor/flasher/themes/amazon/amazon.min.js": "/vendor/flasher/themes/amazon/amazon.min.js?id=94817ca77f2d8c2f48608dd37ae2dff4", + "/vendor/flasher/themes/sapphire/sapphire.min.css": "/vendor/flasher/themes/sapphire/sapphire.min.css?id=1bad527f1ceb7cdffba5ac2f376189bf", + "/vendor/flasher/themes/sapphire/sapphire.min.js": "/vendor/flasher/themes/sapphire/sapphire.min.js?id=c3a92eed351e15d41d4a5dd92d6297c7", + "/vendor/flasher/themes/google/google.min.js": "/vendor/flasher/themes/google/google.min.js?id=6a452aa9c8dab6d34ccd1aeda9a769f5", + "/vendor/flasher/themes/google/google.min.css": "/vendor/flasher/themes/google/google.min.css?id=96c08fb2a49adbe69fdee0475db97c06", + "/vendor/flasher/themes/flasher/flasher.min.js": "/vendor/flasher/themes/flasher/flasher.min.js?id=205db37e7f508491972d900d0a62922b", + "/vendor/flasher/themes/flasher/flasher.min.css": "/vendor/flasher/themes/flasher/flasher.min.css?id=333bca1d86d382d934cd579f6f9ac353", + "/vendor/flasher/themes/aurora/aurora.min.css": "/vendor/flasher/themes/aurora/aurora.min.css?id=52a3279048769655be3f71412d67ac31", + "/vendor/flasher/themes/aurora/aurora.min.js": "/vendor/flasher/themes/aurora/aurora.min.js?id=f813d37daa54a81002496816423b2ec5", + "/vendor/flasher/themes/crystal/crystal.min.css": "/vendor/flasher/themes/crystal/crystal.min.css?id=6f136a98caca6a0c42c0e2f9fd7e9e4b", + "/vendor/flasher/themes/crystal/crystal.min.js": "/vendor/flasher/themes/crystal/crystal.min.js?id=45a6926e54d296dcdaf5f8a479f38d7a", + "/vendor/flasher/themes/minimal/minimal.min.css": "/vendor/flasher/themes/minimal/minimal.min.css?id=e74b9e28c83293a0d79a646f7787da68", + "/vendor/flasher/themes/minimal/minimal.min.js": "/vendor/flasher/themes/minimal/minimal.min.js?id=e33c7625470985224f4f42a8c03b6757", + "/vendor/flasher/themes/ios/ios.min.js": "/vendor/flasher/themes/ios/ios.min.js?id=e62854748d31c84a8af058554b9251c3", + "/vendor/flasher/themes/ios/ios.min.css": "/vendor/flasher/themes/ios/ios.min.css?id=f62e0e8c410b6ed9d06756535782f90f", + "/vendor/flasher/themes/onyx/onyx.min.css": "/vendor/flasher/themes/onyx/onyx.min.css?id=0fc8b9d1a91901a5467028bfd4615d23", + "/vendor/flasher/themes/onyx/onyx.min.js": "/vendor/flasher/themes/onyx/onyx.min.js?id=21ae12a70bcbf60e2ec664ced0ab6888", + "/vendor/flasher/themes/amber/amber.min.js": "/vendor/flasher/themes/amber/amber.min.js?id=245c1730483317901ee25b06ee504ab7", + "/vendor/flasher/themes/amber/amber.min.css": "/vendor/flasher/themes/amber/amber.min.css?id=ae7c5d0e9635745db8fe1d03022fd171", + "/vendor/flasher/themes/facebook/facebook.min.js": "/vendor/flasher/themes/facebook/facebook.min.js?id=5957b8247403ea13fc29293dc0ed8c69", + "/vendor/flasher/themes/facebook/facebook.min.css": "/vendor/flasher/themes/facebook/facebook.min.css?id=02ef374ba75a182826480db5fec71b79", + "/vendor/flasher/themes/neon/neon.min.css": "/vendor/flasher/themes/neon/neon.min.css?id=031c06089f46c2acec307459893abc9f", + "/vendor/flasher/themes/neon/neon.min.js": "/vendor/flasher/themes/neon/neon.min.js?id=cf0a7a4c67660e0c9398274914516e44", + "/vendor/flasher/themes/slack/slack.min.js": "/vendor/flasher/themes/slack/slack.min.js?id=c4bf1903174982e322199b9d77c2eeee", + "/vendor/flasher/themes/slack/slack.min.css": "/vendor/flasher/themes/slack/slack.min.css?id=4df3ed039e9f95a387e7c6708335f501", + "/vendor/flasher/themes/jade/jade.min.js": "/vendor/flasher/themes/jade/jade.min.js?id=9fb5fc81a13f6228da7bdfb9e8debb09", + "/vendor/flasher/themes/jade/jade.min.css": "/vendor/flasher/themes/jade/jade.min.css?id=a2a9a00a263f67a7cd6833f7d6e2a015", + "/vendor/flasher/themes/material/material.min.js": "/vendor/flasher/themes/material/material.min.js?id=249b7fd595f98f9d30d344760029b2d3", + "/vendor/flasher/themes/material/material.min.css": "/vendor/flasher/themes/material/material.min.css?id=a31663e3a404fa1f00f1914bb49139e7", + "/vendor/flasher/themes/ruby/ruby.min.css": "/vendor/flasher/themes/ruby/ruby.min.css?id=408cd06189b57c775678415d3c88ce24", + "/vendor/flasher/themes/ruby/ruby.min.js": "/vendor/flasher/themes/ruby/ruby.min.js?id=768bec05286e0429512bb64ac688ab33", + "/vendor/flasher/themes/emerald/emerald.min.css": "/vendor/flasher/themes/emerald/emerald.min.css?id=f5ef96feac67af325788e22afa644fce", + "/vendor/flasher/themes/emerald/emerald.min.js": "/vendor/flasher/themes/emerald/emerald.min.js?id=0fbba5d71d9206ab6f452c3b94d51a28", "/vendor/flasher/mint.css": "/vendor/flasher/mint.css?id=348f135fff639305dde0005c647c1d20", - "/vendor/flasher/flasher-noty.min.js": "/vendor/flasher/flasher-noty.min.js?id=d7d160fe2043e65250dfcaa5590d2e28", + "/vendor/flasher/flasher-noty.min.js": "/vendor/flasher/flasher-noty.min.js?id=745c58b03b20161745f05229c7e0ddad", "/vendor/flasher/noty.css": "/vendor/flasher/noty.css?id=bf51111a785e04cc8c86a7786e855484", "/vendor/flasher/noty.min.js": "/vendor/flasher/noty.min.js?id=840a31ddb720ff391cfc386c009d3422", - "/vendor/flasher/flasher-notyf.min.js": "/vendor/flasher/flasher-notyf.min.js?id=d8778adb84f0e2521d413c9ca995309c", + "/vendor/flasher/flasher-notyf.min.js": "/vendor/flasher/flasher-notyf.min.js?id=1177c4554468e76e9877ec0fdc133e1a", "/vendor/flasher/flasher-notyf.min.css": "/vendor/flasher/flasher-notyf.min.css?id=53f57ecf59a7045f8029243bde3ed054", "/vendor/flasher/toastr.min.css": "/vendor/flasher/toastr.min.css?id=f284028c678041d687c6f1be6968f68a", - "/vendor/flasher/flasher-toastr.min.js": "/vendor/flasher/flasher-toastr.min.js?id=e0d38991a82d544068555ff7c2a2339b", + "/vendor/flasher/flasher-toastr.min.js": "/vendor/flasher/flasher-toastr.min.js?id=6e79f51a11a2b977b0e0eba8ee37c1d9", "/vendor/flasher/toastr.min.js": "/vendor/flasher/toastr.min.js?id=8ee1218b09fb02d43fcf0b84e30637ad", "/vendor/flasher/jquery.min.js": "/vendor/flasher/jquery.min.js?id=2c872dbe60f4ba70fb85356113d8b35e", "/vendor/flasher/sweetalert2.min.js": "/vendor/flasher/sweetalert2.min.js?id=52e4f161dbe2cf71c99dfef9f94fb1ff", "/vendor/flasher/sweetalert2.min.css": "/vendor/flasher/sweetalert2.min.css?id=a45abfe01a51ef4b1a068fb739f4e540", - "/vendor/flasher/flasher-sweetalert.min.js": "/vendor/flasher/flasher-sweetalert.min.js?id=4ede7e66493a3432961bb00ce83dd4da" + "/vendor/flasher/flasher-sweetalert.min.js": "/vendor/flasher/flasher-sweetalert.min.js?id=bb1df6a783dd98547ccc21338b1c7d5d" } \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.css b/demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.css new file mode 100644 index 00000000..c34fe7fa --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.css @@ -0,0 +1 @@ +.fl-amazon{--amazon-bg-light:#fff;--amazon-bg-dark:#202124;--amazon-text-light:#0f1111;--amazon-text-secondary-light:#565959;--amazon-text-dark:#fff;--amazon-text-secondary-dark:#b6b6b6;--amazon-border-light:#ddd;--amazon-border-dark:#3f3f3f;--amazon-yellow:#ffd814;--amazon-orange:#f90;--amazon-success-bg:#f0fff5;--amazon-success-border:#7fda95;--amazon-success-icon:#007600;--amazon-info-bg:#f3f9ff;--amazon-info-border:#7fb4da;--amazon-info-icon:#0066c0;--amazon-warning-bg:#fffcf3;--amazon-warning-border:#ffd996;--amazon-warning-icon:#c45500;--amazon-error-bg:#fff5f5;--amazon-error-border:#ff8f8f;--amazon-error-icon:#c40000;--amazon-success-bg-dark:#082d11;--amazon-success-border-dark:#1e6e2c;--amazon-success-icon-dark:#7fda95;--amazon-info-bg-dark:#0a1c2e;--amazon-info-border-dark:#1a5183;--amazon-info-icon-dark:#7fb4da;--amazon-warning-bg-dark:#342a0a;--amazon-warning-border-dark:#705711;--amazon-warning-icon-dark:#ffd996;--amazon-error-bg-dark:#2b0c0c;--amazon-error-border-dark:#721c1c;--amazon-error-icon-dark:#ff8f8f;--amazon-animation-duration:0.2s}@-webkit-keyframes amazonSlideDown{0%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes amazonSlideDown{0%{opacity:0;-moz-transform:translateY(-10px);transform:translateY(-10px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes amazonSlideDown{0%{opacity:0;-webkit-transform:translateY(-10px);-moz-transform:translateY(-10px);transform:translateY(-10px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-amazon{-webkit-animation:amazonSlideDown var(--amazon-animation-duration) ease-out;-moz-animation:amazonSlideDown var(--amazon-animation-duration) ease-out;animation:amazonSlideDown var(--amazon-animation-duration) ease-out;font-family:Arial,sans-serif;margin:10px 0;max-width:500px;position:relative;width:100%}.fl-amazon .fl-amazon-alert{background-color:var(--amazon-bg-light);border:1px solid;border-left:4px solid;border-radius:8px;-webkit-box-shadow:0 2px 5px rgba(15,17,17,.15);box-shadow:0 2px 5px rgba(15,17,17,.15);color:var(--amazon-text-light);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:14px}.fl-amazon .fl-alert-content{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-amazon .fl-icon-container{color:currentColor;-webkit-flex-shrink:0;flex-shrink:0;margin-right:12px}.fl-amazon .fl-text-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;min-width:0}.fl-amazon .fl-alert-title{font-size:16px;font-weight:700;margin-bottom:4px}.fl-amazon .fl-alert-message{color:var(--amazon-text-secondary-light);font-size:14px;line-height:20px}.fl-amazon .fl-alert-actions{margin-left:16px}.fl-amazon .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;color:var(--amazon-text-secondary-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:30px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;padding:0;-webkit-transition:all .2s;-moz-transition:all .2s;transition:all .2s;width:30px}.fl-amazon .fl-close:hover{background-color:rgba(0,0,0,.05);color:var(--amazon-text-light)}.fl-amazon.fl-success .fl-amazon-alert{background-color:var(--amazon-success-bg);border-color:var(--amazon-success-border)}.fl-amazon.fl-success .fl-icon-container{color:var(--amazon-success-icon)}.fl-amazon.fl-info .fl-amazon-alert{background-color:var(--amazon-info-bg);border-color:var(--amazon-info-border)}.fl-amazon.fl-info .fl-icon-container{color:var(--amazon-info-icon)}.fl-amazon.fl-warning .fl-amazon-alert{background-color:var(--amazon-warning-bg);border-color:var(--amazon-warning-border)}.fl-amazon.fl-warning .fl-icon-container{color:var(--amazon-warning-icon)}.fl-amazon.fl-error .fl-amazon-alert{background-color:var(--amazon-error-bg);border-color:var(--amazon-error-border)}.fl-amazon.fl-error .fl-icon-container{color:var(--amazon-error-icon)}.fl-amazon.fl-rtl{direction:rtl}.fl-amazon.fl-rtl .fl-icon-container{margin-left:12px;margin-right:0}.fl-amazon.fl-rtl .fl-alert-actions{margin-left:0;margin-right:16px}.fl-amazon.fl-rtl .fl-amazon-alert{border-left-width:1px;border-right-width:4px}@media (prefers-reduced-motion:reduce){.fl-amazon{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-amazon.fl-auto-dark .fl-amazon-alert,body.fl-dark .fl-amazon .fl-amazon-alert,html.fl-dark .fl-amazon .fl-amazon-alert{background-color:var(--amazon-bg-dark);border-color:var(--amazon-border-dark);-webkit-box-shadow:0 2px 5px rgba(0,0,0,.3);box-shadow:0 2px 5px rgba(0,0,0,.3);color:var(--amazon-text-dark)}.fl-amazon.fl-auto-dark .fl-alert-message,.fl-amazon.fl-auto-dark .fl-close,body.fl-dark .fl-amazon .fl-alert-message,body.fl-dark .fl-amazon .fl-close,html.fl-dark .fl-amazon .fl-alert-message,html.fl-dark .fl-amazon .fl-close{color:var(--amazon-text-secondary-dark)}.fl-amazon.fl-auto-dark .fl-close:hover,body.fl-dark .fl-amazon .fl-close:hover,html.fl-dark .fl-amazon .fl-close:hover{background-color:hsla(0,0%,100%,.1);color:var(--amazon-text-dark)}.fl-amazon.fl-auto-dark.fl-success .fl-amazon-alert,body.fl-dark .fl-amazon.fl-success .fl-amazon-alert,html.fl-dark .fl-amazon.fl-success .fl-amazon-alert{background-color:var(--amazon-success-bg-dark);border-color:var(--amazon-success-border-dark)}.fl-amazon.fl-auto-dark.fl-success .fl-icon-container,body.fl-dark .fl-amazon.fl-success .fl-icon-container,html.fl-dark .fl-amazon.fl-success .fl-icon-container{color:var(--amazon-success-icon-dark)}.fl-amazon.fl-auto-dark.fl-info .fl-amazon-alert,body.fl-dark .fl-amazon.fl-info .fl-amazon-alert,html.fl-dark .fl-amazon.fl-info .fl-amazon-alert{background-color:var(--amazon-info-bg-dark);border-color:var(--amazon-info-border-dark)}.fl-amazon.fl-auto-dark.fl-info .fl-icon-container,body.fl-dark .fl-amazon.fl-info .fl-icon-container,html.fl-dark .fl-amazon.fl-info .fl-icon-container{color:var(--amazon-info-icon-dark)}.fl-amazon.fl-auto-dark.fl-warning .fl-amazon-alert,body.fl-dark .fl-amazon.fl-warning .fl-amazon-alert,html.fl-dark .fl-amazon.fl-warning .fl-amazon-alert{background-color:var(--amazon-warning-bg-dark);border-color:var(--amazon-warning-border-dark)}.fl-amazon.fl-auto-dark.fl-warning .fl-icon-container,body.fl-dark .fl-amazon.fl-warning .fl-icon-container,html.fl-dark .fl-amazon.fl-warning .fl-icon-container{color:var(--amazon-warning-icon-dark)}.fl-amazon.fl-auto-dark.fl-error .fl-amazon-alert,body.fl-dark .fl-amazon.fl-error .fl-amazon-alert,html.fl-dark .fl-amazon.fl-error .fl-amazon-alert{background-color:var(--amazon-error-bg-dark);border-color:var(--amazon-error-border-dark)}.fl-amazon.fl-auto-dark.fl-error .fl-icon-container,body.fl-dark .fl-amazon.fl-error .fl-icon-container,html.fl-dark .fl-amazon.fl-error .fl-icon-container{color:var(--amazon-error-icon-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.js b/demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.js new file mode 100644 index 00000000..39ab80e2 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/amazon/amazon.min.js @@ -0,0 +1 @@ +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("amazon",{render:e=>{const{type:n,message:t}=e,i="error"===n||"warning"===n;return`\n
\n
\n
\n
\n ${(()=>{switch(n){case"success":return'\n \n ';case"error":return'\n \n ';case"warning":return'\n \n ';case"info":return'\n \n '}return""})()}\n
\n
\n
${(()=>{switch(n){case"success":return"Success!";case"error":return"Problem";case"warning":return"Warning";case"info":return"Information";default:return"Alert"}})()}
\n
${t}
\n
\n
\n
\n \n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/amber/amber.min.css b/demo/symfony/public/vendor/flasher/themes/amber/amber.min.css new file mode 100644 index 00000000..708e1555 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/amber/amber.min.css @@ -0,0 +1 @@ +.fl-amber{--amber-bg-light:#fff;--amber-bg-dark:#1e293b;--amber-text-light:#4b5563;--amber-text-dark:#f1f5f9;--amber-shadow:0 5px 15px rgba(0,0,0,.08);--amber-shadow-dark:0 5px 15px rgba(0,0,0,.2);--amber-border-radius:0.4rem;--amber-success:#10b981;--amber-info:#3b82f6;--amber-warning:#f59e0b;--amber-error:#ef4444}@-webkit-keyframes amberIn{0%{opacity:0;-webkit-transform:translateY(-12px);transform:translateY(-12px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes amberIn{0%{opacity:0;-moz-transform:translateY(-12px);transform:translateY(-12px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes amberIn{0%{opacity:0;-webkit-transform:translateY(-12px);-moz-transform:translateY(-12px);transform:translateY(-12px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-amber{-webkit-animation:amberIn .3s ease-out;-moz-animation:amberIn .3s ease-out;animation:amberIn .3s ease-out;background-color:var(--amber-bg-light);border-radius:var(--amber-border-radius);-webkit-box-shadow:var(--amber-shadow);box-shadow:var(--amber-shadow);color:var(--amber-text-light);font-family:var(--fl-font),serif;margin:.6rem 0;padding:.85rem 1rem;position:relative;will-change:transform,opacity}.fl-amber:last-child{margin-bottom:0}.fl-amber .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-amber .fl-icon{font-size:1.85em;margin-right:.8rem}.fl-amber .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-amber .fl-message{font-size:.875em;line-height:1.4}.fl-amber .fl-close{background:none;border:none;color:currentColor;cursor:pointer;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.15rem;margin-left:1rem;opacity:.6;padding:.25rem;touch-action:manipulation;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s}.fl-amber .fl-close:focus,.fl-amber .fl-close:hover{opacity:1}.fl-amber .fl-progress-bar{bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-amber .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-amber.fl-success .fl-close{color:var(--amber-success)}.fl-amber.fl-info .fl-close{color:var(--amber-info)}.fl-amber.fl-warning .fl-close{color:var(--amber-warning)}.fl-amber.fl-error .fl-close{color:var(--amber-error)}.fl-amber.fl-rtl{direction:rtl}.fl-amber.fl-rtl .fl-icon{margin-left:.8rem;margin-right:0}.fl-amber.fl-rtl .fl-close{margin-left:0;margin-right:1rem}.fl-amber.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-amber{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-amber.fl-auto-dark,body.fl-dark .fl-amber,html.fl-dark .fl-amber{background-color:var(--amber-bg-dark);-webkit-box-shadow:var(--amber-shadow-dark);box-shadow:var(--amber-shadow-dark);color:var(--amber-text-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/amber/amber.min.js b/demo/symfony/public/vendor/flasher/themes/amber/amber.min.js new file mode 100644 index 00000000..bfc05f98 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/amber/amber.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("amber",{render:e=>{const{type:s,message:i}=e,n="error"===s||"warning"===s;return`\n
\n
\n
\n
\n
${i}
\n
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.css b/demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.css new file mode 100644 index 00000000..5c41abd7 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.css @@ -0,0 +1 @@ +.fl-aurora{--aurora-bg-light:hsla(0,0%,100%,.95);--aurora-bg-dark:rgba(20,20,28,.92);--aurora-text-light:#1e293b;--aurora-text-dark:#f8fafc;--aurora-shadow:0 8px 25px rgba(0,0,0,.08);--aurora-shadow-dark:0 10px 30px rgba(0,0,0,.16);--aurora-border-radius:16px;--aurora-blur:15px;--aurora-success-gradient:linear-gradient(135deg,rgba(16,185,129,.08),rgba(16,185,129,.2));--aurora-info-gradient:linear-gradient(135deg,rgba(59,130,246,.08),rgba(59,130,246,.2));--aurora-warning-gradient:linear-gradient(135deg,rgba(245,158,11,.08),rgba(245,158,11,.2));--aurora-error-gradient:linear-gradient(135deg,rgba(239,68,68,.08),rgba(239,68,68,.2));--aurora-success:#10b981;--aurora-info:#3b82f6;--aurora-warning:#f59e0b;--aurora-error:#ef4444}@-webkit-keyframes auroraFadeIn{0%{opacity:0;-webkit-transform:translateY(-12px) scale(.98);transform:translateY(-12px) scale(.98)}to{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-moz-keyframes auroraFadeIn{0%{opacity:0;-moz-transform:translateY(-12px) scale(.98);transform:translateY(-12px) scale(.98)}to{opacity:1;-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@keyframes auroraFadeIn{0%{opacity:0;-webkit-transform:translateY(-12px) scale(.98);-moz-transform:translateY(-12px) scale(.98);transform:translateY(-12px) scale(.98)}to{opacity:1;-webkit-transform:translateY(0) scale(1);-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}.fl-aurora{-webkit-animation:auroraFadeIn .35s cubic-bezier(.21,1.02,.73,1);-moz-animation:auroraFadeIn .35s cubic-bezier(.21,1.02,.73,1);animation:auroraFadeIn .35s cubic-bezier(.21,1.02,.73,1);backdrop-filter:blur(var(--aurora-blur));-webkit-backdrop-filter:blur(var(--aurora-blur));background-color:var(--aurora-bg-light);border-radius:var(--aurora-border-radius);-webkit-box-shadow:var(--aurora-shadow);box-shadow:var(--aurora-shadow);color:var(--aurora-text-light);font-family:var(--fl-font),sans-serif;margin:10px 0;overflow:hidden;padding:16px 18px;position:relative;will-change:transform,opacity}.fl-aurora:before{border-radius:inherit;content:"";inset:0;opacity:.8;position:absolute;z-index:0}.fl-aurora .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;position:relative;z-index:1}.fl-aurora .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.9375rem;font-weight:500;line-height:1.5;margin-right:10px}.fl-aurora .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:rgba(0,0,0,.05);border:none;border-radius:50%;color:inherit;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1rem;height:28px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;opacity:.7;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease;width:28px}.fl-aurora .fl-close:focus,.fl-aurora .fl-close:hover{background:rgba(0,0,0,.1);opacity:1}.fl-aurora .fl-progress-bar{border-radius:6px;bottom:2px;height:3px;left:2px;opacity:.7;overflow:hidden;position:absolute;right:2px;z-index:1}.fl-aurora .fl-progress{height:100%;width:100%}.fl-aurora.fl-success:before{background:var(--aurora-success-gradient)}.fl-aurora.fl-success .fl-progress{background-color:var(--aurora-success)}.fl-aurora.fl-info:before{background:var(--aurora-info-gradient)}.fl-aurora.fl-info .fl-progress{background-color:var(--aurora-info)}.fl-aurora.fl-warning:before{background:var(--aurora-warning-gradient)}.fl-aurora.fl-warning .fl-progress{background-color:var(--aurora-warning)}.fl-aurora.fl-error:before{background:var(--aurora-error-gradient)}.fl-aurora.fl-error .fl-progress{background-color:var(--aurora-error)}.fl-aurora.fl-rtl{direction:rtl}.fl-aurora.fl-rtl .fl-message{margin-left:10px;margin-right:0}.fl-aurora.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-aurora{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-aurora.fl-auto-dark,body.fl-dark .fl-aurora,html.fl-dark .fl-aurora{background-color:var(--aurora-bg-dark);-webkit-box-shadow:var(--aurora-shadow-dark);box-shadow:var(--aurora-shadow-dark);color:var(--aurora-text-dark)}.fl-aurora.fl-auto-dark .fl-close,body.fl-dark .fl-aurora .fl-close,html.fl-dark .fl-aurora .fl-close{background:hsla(0,0%,100%,.1)}.fl-aurora.fl-auto-dark .fl-close:focus,.fl-aurora.fl-auto-dark .fl-close:hover,body.fl-dark .fl-aurora .fl-close:focus,body.fl-dark .fl-aurora .fl-close:hover,html.fl-dark .fl-aurora .fl-close:focus,html.fl-dark .fl-aurora .fl-close:hover{background:hsla(0,0%,100%,.15)}.fl-aurora.fl-auto-dark.fl-success:before,body.fl-dark .fl-aurora.fl-success:before,html.fl-dark .fl-aurora.fl-success:before{background:-webkit-linear-gradient(315deg,rgba(16,185,129,.1),rgba(16,185,129,.25));background:-moz-linear-gradient(315deg,rgba(16,185,129,.1),rgba(16,185,129,.25));background:linear-gradient(135deg,rgba(16,185,129,.1),rgba(16,185,129,.25))}.fl-aurora.fl-auto-dark.fl-info:before,body.fl-dark .fl-aurora.fl-info:before,html.fl-dark .fl-aurora.fl-info:before{background:-webkit-linear-gradient(315deg,rgba(59,130,246,.1),rgba(59,130,246,.25));background:-moz-linear-gradient(315deg,rgba(59,130,246,.1),rgba(59,130,246,.25));background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(59,130,246,.25))}.fl-aurora.fl-auto-dark.fl-warning:before,body.fl-dark .fl-aurora.fl-warning:before,html.fl-dark .fl-aurora.fl-warning:before{background:-webkit-linear-gradient(315deg,rgba(245,158,11,.1),rgba(245,158,11,.25));background:-moz-linear-gradient(315deg,rgba(245,158,11,.1),rgba(245,158,11,.25));background:linear-gradient(135deg,rgba(245,158,11,.1),rgba(245,158,11,.25))}.fl-aurora.fl-auto-dark.fl-error:before,body.fl-dark .fl-aurora.fl-error:before,html.fl-dark .fl-aurora.fl-error:before{background:-webkit-linear-gradient(315deg,rgba(239,68,68,.1),rgba(239,68,68,.25));background:-moz-linear-gradient(315deg,rgba(239,68,68,.1),rgba(239,68,68,.25));background:linear-gradient(135deg,rgba(239,68,68,.1),rgba(239,68,68,.25))} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.js b/demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.js new file mode 100644 index 00000000..fa0f777c --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/aurora/aurora.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("aurora",{render:e=>{const{type:s,message:i}=e,n="error"===s||"warning"===s;return`\n
\n
\n
${i}
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.css b/demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.css new file mode 100644 index 00000000..eb3475c6 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.css @@ -0,0 +1 @@ +.fl-crystal{--crystal-bg-light:#fff;--crystal-bg-dark:rgba(30,30,30,.95);--crystal-text-light:#2c3e50;--crystal-text-dark:hsla(0,0%,100%,.95);--crystal-shadow:rgba(0,0,0,.08);--crystal-shadow-dark:rgba(0,0,0,.25)}@-webkit-keyframes crystalIn{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes crystalIn{0%{opacity:0;-moz-transform:translateY(-20px);transform:translateY(-20px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes crystalIn{0%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);transform:translateY(-20px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes crystalPulse{0%{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}50%{-webkit-box-shadow:0 4px 12px var(--crystal-shadow);box-shadow:0 4px 12px var(--crystal-shadow)}to{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}}@-moz-keyframes crystalPulse{0%{box-shadow:0 2px 8px var(--crystal-shadow)}50%{box-shadow:0 4px 12px var(--crystal-shadow)}to{box-shadow:0 2px 8px var(--crystal-shadow)}}@keyframes crystalPulse{0%{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}50%{-webkit-box-shadow:0 4px 12px var(--crystal-shadow);box-shadow:0 4px 12px var(--crystal-shadow)}to{-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}}.fl-crystal{-webkit-animation:crystalIn .3s ease-out;-moz-animation:crystalIn .3s ease-out;animation:crystalIn .3s ease-out;background:var(--crystal-bg-light,var(--fl-bg-light));border-radius:var(--fl-border-radius,4px);-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow);font-family:var(--fl-font),serif;margin:0 0 1rem;max-width:380px;position:relative;-webkit-transition:-webkit-box-shadow .3s ease;transition:-webkit-box-shadow .3s ease;-moz-transition:box-shadow .3s ease;transition:box-shadow .3s ease;transition:box-shadow .3s ease, -webkit-box-shadow .3s ease;will-change:transform,opacity}.fl-crystal:hover{-webkit-animation:crystalPulse 2s ease-in-out infinite;-moz-animation:crystalPulse 2s ease-in-out infinite;animation:crystalPulse 2s ease-in-out infinite}.fl-crystal:last-child{margin-bottom:0}.fl-crystal .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;gap:.75rem;padding:1rem 2.5rem 1rem 1rem}.fl-crystal .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-crystal .fl-message{color:var(--crystal-text-light,var(--fl-text-light));font-size:.9375rem;line-height:1.4;margin:0}.fl-crystal .fl-close{background:none;border:none;color:currentColor;cursor:pointer;font-size:1.25rem;line-height:1;opacity:.5;padding:.25rem;position:absolute;right:.75rem;top:50%;touch-action:manipulation;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease}.fl-crystal .fl-close:focus,.fl-crystal .fl-close:hover{opacity:1;-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-crystal .fl-progress-bar{bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-crystal .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-crystal.fl-success,.fl-crystal.fl-success .fl-message{color:var(--success-color,var(--fl-success))}.fl-crystal.fl-error,.fl-crystal.fl-error .fl-message{color:var(--error-color,var(--fl-error))}.fl-crystal.fl-warning,.fl-crystal.fl-warning .fl-message{color:var(--warning-color,var(--fl-warning))}.fl-crystal.fl-info,.fl-crystal.fl-info .fl-message{color:var(--info-color,var(--fl-info))}.fl-crystal.fl-rtl{direction:rtl}.fl-crystal.fl-rtl .fl-content{padding:1rem 1rem 1rem 2.5rem}.fl-crystal.fl-rtl .fl-close{left:.75rem;right:auto}.fl-crystal.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-crystal{-webkit-animation:none;-moz-animation:none;animation:none}.fl-crystal:hover{-webkit-animation:none;-moz-animation:none;animation:none;-webkit-box-shadow:0 2px 8px var(--crystal-shadow);box-shadow:0 2px 8px var(--crystal-shadow)}}.fl-crystal.fl-auto-dark,body.fl-dark .fl-crystal,html.fl-dark .fl-crystal{background-color:var(--crystal-bg-dark,var(--fl-bg-dark));-webkit-box-shadow:0 2px 8px var(--crystal-shadow-dark);box-shadow:0 2px 8px var(--crystal-shadow-dark)}.fl-crystal.fl-auto-dark .fl-message,body.fl-dark .fl-crystal .fl-message,html.fl-dark .fl-crystal .fl-message{color:var(--crystal-text-dark,var(--fl-text-dark))}.fl-crystal.fl-auto-dark:hover,body.fl-dark .fl-crystal:hover,html.fl-dark .fl-crystal:hover{-webkit-animation:none;-moz-animation:none;animation:none;-webkit-box-shadow:0 4px 16px var(--crystal-shadow-dark);box-shadow:0 4px 16px var(--crystal-shadow-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.js b/demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.js new file mode 100644 index 00000000..9e2152c1 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/crystal/crystal.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("crystal",{render:e=>{const{type:s,message:n}=e,t="error"===s||"warning"===s;return`\n
\n
\n
\n

${n}

\n
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.css b/demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.css new file mode 100644 index 00000000..c0d62eac --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.css @@ -0,0 +1 @@ +.fl-emerald{--emerald-bg-light:hsla(0,0%,100%,.9);--emerald-bg-dark:rgba(30,30,30,.9);--emerald-text-light:#333;--emerald-text-dark:hsla(0,0%,100%,.9);--emerald-shadow:rgba(0,0,0,.1);--emerald-blur:8px;--emerald-success:var(--success-color,#16a085);--emerald-error:var(--error-color,#e74c3c);--emerald-warning:var(--warning-color,#f39c12);--emerald-info:var(--info-color,#3498db)}@-webkit-keyframes emeraldIn{0%{opacity:0;-webkit-transform:scale(.5) translateY(20px);transform:scale(.5) translateY(20px)}60%{opacity:1;-webkit-transform:scale(1.1) translateY(-5px);transform:scale(1.1) translateY(-5px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-moz-keyframes emeraldIn{0%{opacity:0;-moz-transform:scale(.5) translateY(20px);transform:scale(.5) translateY(20px)}60%{opacity:1;-moz-transform:scale(1.1) translateY(-5px);transform:scale(1.1) translateY(-5px)}to{opacity:1;-moz-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes emeraldIn{0%{opacity:0;-webkit-transform:scale(.5) translateY(20px);-moz-transform:scale(.5) translateY(20px);transform:scale(.5) translateY(20px)}60%{opacity:1;-webkit-transform:scale(1.1) translateY(-5px);-moz-transform:scale(1.1) translateY(-5px);transform:scale(1.1) translateY(-5px)}to{opacity:1;-webkit-transform:scale(1) translateY(0);-moz-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}.fl-emerald{-webkit-animation:emeraldIn .5s cubic-bezier(.23,1,.32,1);-moz-animation:emeraldIn .5s cubic-bezier(.23,1,.32,1);animation:emeraldIn .5s cubic-bezier(.23,1,.32,1);backdrop-filter:blur(var(--emerald-blur));-webkit-backdrop-filter:blur(var(--emerald-blur));background:var(--emerald-bg-light);border-radius:10px;-webkit-box-shadow:0 10px 20px var(--emerald-shadow);box-shadow:0 10px 20px var(--emerald-shadow);color:var(--emerald-text-light);font-family:"Inter",var(--fl-font),serif;margin:0 0 .5rem;overflow:hidden;padding:1rem 1.5rem 1rem 1rem;position:relative}.fl-emerald .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-emerald .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.9rem;font-weight:500;line-height:1.4}.fl-emerald .fl-close{background:transparent;border:none;color:currentColor;cursor:pointer;font-size:1.3rem;margin-left:auto;opacity:.7;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;transition:opacity .2s ease}.fl-emerald .fl-close:focus,.fl-emerald .fl-close:hover{opacity:1}.fl-emerald.fl-success{color:var(--emerald-success)}.fl-emerald.fl-error{color:var(--emerald-error)}.fl-emerald.fl-warning{color:var(--emerald-warning)}.fl-emerald.fl-info{color:var(--emerald-info)}.fl-emerald.fl-rtl{direction:rtl;padding:1rem 1rem 1rem 1.5rem}.fl-emerald.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-emerald.fl-rtl .fl-close{margin-left:0;margin-right:auto}@media (prefers-reduced-motion:reduce){.fl-emerald{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-emerald.fl-auto-dark,body.fl-dark .fl-emerald,html.fl-dark .fl-emerald{background:var(--emerald-bg-dark)}.fl-emerald.fl-auto-dark .fl-message,body.fl-dark .fl-emerald .fl-message,html.fl-dark .fl-emerald .fl-message{color:var(--emerald-text-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.js b/demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.js new file mode 100644 index 00000000..00a7e293 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/emerald/emerald.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("emerald",{render:e=>{const{type:s,message:n}=e,t="error"===s||"warning"===s;return`\n
\n
\n
${n}
\n \n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.css b/demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.css new file mode 100644 index 00000000..4924b3fd --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.css @@ -0,0 +1 @@ +.fl-facebook{--fb-bg-light:#fff;--fb-bg-dark:#242526;--fb-text-light:#050505;--fb-text-secondary-light:#65676b;--fb-text-dark:#e4e6eb;--fb-text-secondary-dark:#b0b3b8;--fb-hover-light:#f0f2f5;--fb-hover-dark:#3a3b3c;--fb-border-light:#e4e6eb;--fb-border-dark:#3e4042;--fb-blue:#1876f2;--fb-name-color:#050505;--fb-name-color-dark:#e4e6eb;--fb-success:#31a24c;--fb-info:#1876f2;--fb-warning:#f7b928;--fb-error:#e41e3f;--fb-success-bg:#e7f3ff;--fb-info-bg:#e7f3ff;--fb-warning-bg:#fff5cc;--fb-error-bg:#ffebe9;--fb-success-bg-dark:#263c4b;--fb-info-bg-dark:#263c4b;--fb-warning-bg-dark:#3e3c26;--fb-error-bg-dark:#472835;--fb-animation-duration:0.2s}@-webkit-keyframes fbFadeIn{0%{opacity:0;-webkit-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes fbFadeIn{0%{opacity:0;-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes fbFadeIn{0%{opacity:0;-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-facebook{-webkit-animation:fbFadeIn var(--fb-animation-duration) ease-out;-moz-animation:fbFadeIn var(--fb-animation-duration) ease-out;animation:fbFadeIn var(--fb-animation-duration) ease-out;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:8px 0;max-width:450px;position:relative;width:100%}.fl-facebook .fl-fb-notification{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;background-color:var(--fb-bg-light);border-radius:8px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(0,0,0,.1);color:var(--fb-text-light);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:12px;-webkit-transition:background-color .1s ease;-moz-transition:background-color .1s ease;transition:background-color .1s ease}.fl-facebook .fl-fb-notification:hover{background-color:var(--fb-hover-light)}.fl-facebook .fl-icon-container{-webkit-flex-shrink:0;flex-shrink:0;margin-right:12px}.fl-facebook .fl-fb-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:36px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;width:36px}.fl-facebook .fl-fb-icon svg{color:#fff}.fl-facebook .fl-fb-icon-success{background-color:var(--fb-success)}.fl-facebook .fl-fb-icon-info{background-color:var(--fb-info)}.fl-facebook .fl-fb-icon-warning{background-color:var(--fb-warning)}.fl-facebook .fl-fb-icon-error{background-color:var(--fb-error)}.fl-facebook .fl-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;min-width:0}.fl-facebook .fl-message{font-size:15px;line-height:1.33;margin-bottom:4px}.fl-facebook .fl-user-name{color:var(--fb-name-color);font-weight:600;margin-right:4px}.fl-facebook .fl-meta{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-facebook .fl-time{color:var(--fb-text-secondary-light);font-size:13px}.fl-facebook .fl-actions{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;margin-left:12px}.fl-facebook .fl-button{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:var(--fb-hover-light);border:none;border-radius:50%;color:var(--fb-text-secondary-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:32px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:8px;-webkit-transition:background-color .1s;-moz-transition:background-color .1s;transition:background-color .1s;width:32px}.fl-facebook .fl-button:hover{background-color:var(--fb-border-light)}.fl-facebook .fl-button-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center}.fl-facebook.fl-rtl{direction:rtl}.fl-facebook.fl-rtl .fl-icon-container{margin-left:12px;margin-right:0}.fl-facebook.fl-rtl .fl-user-name{margin-left:4px;margin-right:0}.fl-facebook.fl-rtl .fl-actions{margin-left:0;margin-right:12px}.fl-facebook.fl-rtl .fl-button{margin-left:0;margin-right:8px}@media (prefers-reduced-motion:reduce){.fl-facebook{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-facebook.fl-auto-dark .fl-fb-notification,body.fl-dark .fl-facebook .fl-fb-notification,html.fl-dark .fl-facebook .fl-fb-notification{background-color:var(--fb-bg-dark);-webkit-box-shadow:0 1px 2px rgba(0,0,0,.2);box-shadow:0 1px 2px rgba(0,0,0,.2);color:var(--fb-text-dark)}.fl-facebook.fl-auto-dark .fl-fb-notification:hover,body.fl-dark .fl-facebook .fl-fb-notification:hover,html.fl-dark .fl-facebook .fl-fb-notification:hover{background-color:var(--fb-hover-dark)}.fl-facebook.fl-auto-dark .fl-user-name,body.fl-dark .fl-facebook .fl-user-name,html.fl-dark .fl-facebook .fl-user-name{color:var(--fb-name-color-dark)}.fl-facebook.fl-auto-dark .fl-time,body.fl-dark .fl-facebook .fl-time,html.fl-dark .fl-facebook .fl-time{color:var(--fb-text-secondary-dark)}.fl-facebook.fl-auto-dark .fl-button,body.fl-dark .fl-facebook .fl-button,html.fl-dark .fl-facebook .fl-button{background:var(--fb-hover-dark);color:var(--fb-text-secondary-dark)}.fl-facebook.fl-auto-dark .fl-button:hover,body.fl-dark .fl-facebook .fl-button:hover,html.fl-dark .fl-facebook .fl-button:hover{background-color:var(--fb-border-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-success,body.fl-dark .fl-facebook .fl-fb-icon-success,html.fl-dark .fl-facebook .fl-fb-icon-success{background-color:var(--fb-success-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-success svg,body.fl-dark .fl-facebook .fl-fb-icon-success svg,html.fl-dark .fl-facebook .fl-fb-icon-success svg{color:var(--fb-success)}.fl-facebook.fl-auto-dark .fl-fb-icon-info,body.fl-dark .fl-facebook .fl-fb-icon-info,html.fl-dark .fl-facebook .fl-fb-icon-info{background-color:var(--fb-info-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-info svg,body.fl-dark .fl-facebook .fl-fb-icon-info svg,html.fl-dark .fl-facebook .fl-fb-icon-info svg{color:var(--fb-info)}.fl-facebook.fl-auto-dark .fl-fb-icon-warning,body.fl-dark .fl-facebook .fl-fb-icon-warning,html.fl-dark .fl-facebook .fl-fb-icon-warning{background-color:var(--fb-warning-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-warning svg,body.fl-dark .fl-facebook .fl-fb-icon-warning svg,html.fl-dark .fl-facebook .fl-fb-icon-warning svg{color:var(--fb-warning)}.fl-facebook.fl-auto-dark .fl-fb-icon-error,body.fl-dark .fl-facebook .fl-fb-icon-error,html.fl-dark .fl-facebook .fl-fb-icon-error{background-color:var(--fb-error-bg-dark)}.fl-facebook.fl-auto-dark .fl-fb-icon-error svg,body.fl-dark .fl-facebook .fl-fb-icon-error svg,html.fl-dark .fl-facebook .fl-fb-icon-error svg{color:var(--fb-error)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.js b/demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.js new file mode 100644 index 00000000..efd1bfee --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/facebook/facebook.min.js @@ -0,0 +1 @@ +!function(n,i){"object"==typeof exports&&"undefined"!=typeof module?i(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],i):i((n="undefined"!=typeof globalThis?globalThis:n||self).flasher)}(this,(function(n){"use strict";const i={render:n=>{var i;const{type:s,message:e}=n,t="error"===s||"warning"===s,l=t?"alert":"status",o=t?"assertive":"polite",c=String((null===(i=n.options)||void 0===i?void 0:i.timestamp)||"2025-03-02 06:49:21").split(" ")[1].substring(0,5);return`\n `}};n.addTheme("facebook",i)})); diff --git a/demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.css b/demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.css new file mode 100644 index 00000000..422f1ecc --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.css @@ -0,0 +1 @@ +@-webkit-keyframes flasherIn{0%{opacity:0;-webkit-transform:translateX(-10px);transform:translateX(-10px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-moz-keyframes flasherIn{0%{opacity:0;-moz-transform:translateX(-10px);transform:translateX(-10px)}to{opacity:1;-moz-transform:translateX(0);transform:translateX(0)}}@keyframes flasherIn{0%{opacity:0;-webkit-transform:translateX(-10px);-moz-transform:translateX(-10px);transform:translateX(-10px)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);transform:translateX(0)}}.fl-flasher{-webkit-animation:flasherIn .3s ease-out;-moz-animation:flasherIn .3s ease-out;animation:flasherIn .3s ease-out;background-color:var(--background-color,var(--fl-bg-light));border-bottom:none;-webkit-box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);color:var(--text-color,var(--fl-text-light));font-family:var(--fl-font),serif;line-height:1.5;margin:.75em 0;padding:.75em;position:relative;-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;-moz-transition:transform .2s ease, -moz-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease, -webkit-transform .2s ease, -moz-transform .2s ease;will-change:transform,opacity;word-break:break-word}.fl-flasher:hover{-webkit-transform:translateY(-2px);-moz-transform:translateY(-2px);-ms-transform:translateY(-2px);transform:translateY(-2px)}.fl-flasher:last-child{margin-bottom:0}.fl-flasher.fl-rtl{border-radius:0 .375em .375em 0}.fl-flasher:not(.fl-rtl){border-radius:.375em 0 0 .375em}.fl-flasher .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-flasher .fl-icon{font-size:2.5em}.fl-flasher .fl-message,.fl-flasher .fl-title{display:block;line-height:1.25em;margin-left:1em;margin-right:1em}.fl-flasher .fl-title{font-size:1em;font-weight:600}.fl-flasher .fl-message{font-size:.875em;margin-top:.25em}.fl-flasher .fl-close{background:none;border:none;color:currentColor;cursor:pointer;font-size:1.25rem;line-height:1;opacity:.5;padding:.25rem;position:absolute;right:.75rem;top:50%;touch-action:manipulation;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;transition:opacity .2s ease}.fl-flasher .fl-close:focus,.fl-flasher .fl-close:hover{opacity:1}.fl-flasher.fl-rtl{direction:rtl}.fl-flasher.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-flasher.fl-rtl .fl-close{left:.75rem;right:auto}.fl-flasher.fl-success{border-left:.8em solid var(--success-color,var(--fl-success))}.fl-flasher.fl-success.fl-rtl{border-left:none;border-right:.8em solid var(--success-color,var(--fl-success))}.fl-flasher.fl-success:not(.fl-rtl){border-left:.8em solid var(--success-color,var(--fl-success));border-right:none}.fl-flasher.fl-success .fl-close,.fl-flasher.fl-success .fl-title{color:var(--success-color,var(--fl-success))}.fl-flasher.fl-success .fl-close:focus,.fl-flasher.fl-success .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher.fl-info{border-left:.8em solid var(--info-color,var(--fl-info))}.fl-flasher.fl-info.fl-rtl{border-left:none;border-right:.8em solid var(--info-color,var(--fl-info))}.fl-flasher.fl-info:not(.fl-rtl){border-left:.8em solid var(--info-color,var(--fl-info));border-right:none}.fl-flasher.fl-info .fl-close,.fl-flasher.fl-info .fl-title{color:var(--info-color,var(--fl-info))}.fl-flasher.fl-info .fl-close:focus,.fl-flasher.fl-info .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher.fl-warning{border-left:.8em solid var(--warning-color,var(--fl-warning))}.fl-flasher.fl-warning.fl-rtl{border-left:none;border-right:.8em solid var(--warning-color,var(--fl-warning))}.fl-flasher.fl-warning:not(.fl-rtl){border-left:.8em solid var(--warning-color,var(--fl-warning));border-right:none}.fl-flasher.fl-warning .fl-close,.fl-flasher.fl-warning .fl-title{color:var(--warning-color,var(--fl-warning))}.fl-flasher.fl-warning .fl-close:focus,.fl-flasher.fl-warning .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher.fl-error{border-left:.8em solid var(--error-color,var(--fl-error))}.fl-flasher.fl-error.fl-rtl{border-left:none;border-right:.8em solid var(--error-color,var(--fl-error))}.fl-flasher.fl-error:not(.fl-rtl){border-left:.8em solid var(--error-color,var(--fl-error));border-right:none}.fl-flasher.fl-error .fl-close,.fl-flasher.fl-error .fl-title{color:var(--error-color,var(--fl-error))}.fl-flasher.fl-error .fl-close:focus,.fl-flasher.fl-error .fl-close:hover{-webkit-transform:translateY(-50%) scale(1.1);-moz-transform:translateY(-50%) scale(1.1);-ms-transform:translateY(-50%) scale(1.1);transform:translateY(-50%) scale(1.1)}.fl-flasher .fl-progress-bar{bottom:0;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:.125em;left:0;overflow:hidden;position:absolute;right:0}.fl-flasher.fl-success .fl-progress-bar{background-color:var(--success-color-light,var(--fl-success-light))}.fl-flasher.fl-success .fl-progress-bar .fl-progress{background-color:var(--success-color,var(--fl-success));height:100%;width:100%}.fl-flasher.fl-info .fl-progress-bar{background-color:var(--info-color-light,var(--fl-info-light))}.fl-flasher.fl-info .fl-progress-bar .fl-progress{background-color:var(--info-color,var(--fl-info));height:100%;width:100%}.fl-flasher.fl-warning .fl-progress-bar{background-color:var(--warning-color-light,var(--fl-warning-light))}.fl-flasher.fl-warning .fl-progress-bar .fl-progress{background-color:var(--warning-color,var(--fl-warning));height:100%;width:100%}.fl-flasher.fl-error .fl-progress-bar{background-color:var(--error-color-light,var(--fl-error-light))}.fl-flasher.fl-error .fl-progress-bar .fl-progress{background-color:var(--error-color,var(--fl-error));height:100%;width:100%}@media (prefers-color-scheme:dark){.fl-flasher.fl-auto-dark{background-color:var(--dark-background-color,var(--fl-bg-dark));color:var(--dark-text-color,var(--fl-text-dark))}}body.fl-dark .fl-flasher,html.fl-dark .fl-flasher{background-color:var(--dark-background-color,var(--fl-bg-dark));color:var(--dark-text-color,var(--fl-text-dark))}@media (prefers-reduced-motion:reduce){.fl-flasher{-webkit-animation:none;-moz-animation:none;animation:none}.fl-flasher:hover{-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.fl-flasher .fl-close:focus,.fl-flasher .fl-close:hover{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.js b/demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.js new file mode 100644 index 00000000..e3ad67b5 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/flasher/flasher.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("flasher",{render:e=>{const{type:s,title:n,message:a}=e,t="error"===s||"warning"===s,l=t?"alert":"status",i=t?"assertive":"polite",r=n||s.charAt(0).toUpperCase()+s.slice(1);return`\n
\n
\n
\n
\n ${r}\n ${a}\n
\n \n
\n \n \n \n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/google/google.min.css b/demo/symfony/public/vendor/flasher/themes/google/google.min.css new file mode 100644 index 00000000..8333e0b7 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/google/google.min.css @@ -0,0 +1 @@ +.fl-google{--md-bg-light:#fff;--md-bg-dark:#2d2d2d;--md-text-light:rgba(0,0,0,.87);--md-text-secondary-light:rgba(0,0,0,.6);--md-text-dark:hsla(0,0%,100%,.87);--md-text-secondary-dark:hsla(0,0%,100%,.6);--md-elevation:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);--md-elevation-dark:0 3px 5px -1px rgba(0,0,0,.4),0 6px 10px 0 rgba(0,0,0,.28),0 1px 18px 0 rgba(0,0,0,.24);--md-border-radius:4px;--md-success:#43a047;--md-info:#1e88e5;--md-warning:#fb8c00;--md-error:#e53935;--md-animation-duration:0.3s;--md-ripple-duration:0.6s}@-webkit-keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes mdSlideUp{0%{opacity:0;-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);transform:scale(4)}}@-moz-keyframes mdRipple{to{opacity:0;-moz-transform:scale(4);transform:scale(4)}}@keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);-moz-transform:scale(4);transform:scale(4)}}.fl-google{-webkit-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);-moz-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);font-family:Roboto,Segoe UI,Helvetica,Arial,sans-serif;margin:8px 0;max-width:400px;position:relative;width:100%}.fl-google .fl-md-card{background-color:var(--md-bg-light);border-radius:var(--md-border-radius);-webkit-box-shadow:var(--md-elevation);box-shadow:var(--md-elevation);color:var(--md-text-light);overflow:hidden}.fl-google .fl-content{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:16px}.fl-google .fl-icon-wrapper{color:var(--md-text-secondary-light);-webkit-flex-shrink:0;flex-shrink:0;margin-right:16px}.fl-google .fl-text-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-google .fl-title{font-size:1rem;font-weight:500;margin-bottom:4px}.fl-google .fl-message{color:var(--md-text-secondary-light);font-size:.875rem;line-height:1.43}.fl-google .fl-actions{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;justify-content:flex-end;padding:8px}.fl-google .fl-action-button{background:transparent;border:none;border-radius:4px;color:currentColor;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;letter-spacing:.0892857143em;overflow:hidden;padding:8px 12px;position:relative;text-transform:uppercase;-webkit-transition:background-color .2s;-moz-transition:background-color .2s;transition:background-color .2s}.fl-google .fl-action-button:focus,.fl-google .fl-action-button:hover{background-color:rgba(0,0,0,.04)}.fl-google .fl-action-button:after{background:currentColor;border-radius:50%;content:"";height:5px;opacity:0;pointer-events:none;position:absolute;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);width:5px}.fl-google .fl-action-button:active:after{-webkit-animation:mdRipple var(--md-ripple-duration) linear;-moz-animation:mdRipple var(--md-ripple-duration) linear;animation:mdRipple var(--md-ripple-duration) linear;opacity:.3}.fl-google.fl-success .fl-action-button,.fl-google.fl-success .fl-icon-wrapper{color:var(--md-success)}.fl-google.fl-info .fl-action-button,.fl-google.fl-info .fl-icon-wrapper{color:var(--md-info)}.fl-google.fl-warning .fl-action-button,.fl-google.fl-warning .fl-icon-wrapper{color:var(--md-warning)}.fl-google.fl-error .fl-action-button,.fl-google.fl-error .fl-icon-wrapper{color:var(--md-error)}.fl-google .fl-progress-bar{bottom:0;height:4px;left:0;overflow:hidden;position:absolute;right:0}.fl-google .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-google.fl-success .fl-progress{background-color:var(--md-success)}.fl-google.fl-info .fl-progress{background-color:var(--md-info)}.fl-google.fl-warning .fl-progress{background-color:var(--md-warning)}.fl-google.fl-error .fl-progress{background-color:var(--md-error)}.fl-google.fl-rtl{direction:rtl}.fl-google.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-google.fl-rtl .fl-icon-wrapper{margin-left:16px;margin-right:0}.fl-google.fl-rtl .fl-actions{-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;justify-content:flex-start}.fl-google.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-google,.fl-google .fl-action-button:active:after{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-google.fl-auto-dark .fl-md-card,body.fl-dark .fl-google .fl-md-card,html.fl-dark .fl-google .fl-md-card{background-color:var(--md-bg-dark);-webkit-box-shadow:var(--md-elevation-dark);box-shadow:var(--md-elevation-dark);color:var(--md-text-dark)}.fl-google.fl-auto-dark .fl-message,body.fl-dark .fl-google .fl-message,html.fl-dark .fl-google .fl-message{color:var(--md-text-secondary-dark)}.fl-google.fl-auto-dark .fl-action-button:focus,.fl-google.fl-auto-dark .fl-action-button:hover,body.fl-dark .fl-google .fl-action-button:focus,body.fl-dark .fl-google .fl-action-button:hover,html.fl-dark .fl-google .fl-action-button:focus,html.fl-dark .fl-google .fl-action-button:hover{background-color:hsla(0,0%,100%,.08)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/google/google.min.js b/demo/symfony/public/vendor/flasher/themes/google/google.min.js new file mode 100644 index 00000000..d36a5d47 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/google/google.min.js @@ -0,0 +1 @@ +!function(s,e){"object"==typeof exports&&"undefined"!=typeof module?e(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],e):e((s="undefined"!=typeof globalThis?globalThis:s||self).flasher)}(this,(function(s){"use strict";s.addTheme("google",{render:s=>{const{type:e,message:n,title:i}=s,l="error"===e||"warning"===e,t=i?`
${i}
`:"";return`\n
\n
\n
\n
\n ${(()=>{switch(e){case"success":return'\n \n ';case"error":return'\n \n ';case"warning":return'\n \n ';case"info":return'\n \n '}return""})()}\n
\n
\n ${t}\n
${n}
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/ios/ios.min.css b/demo/symfony/public/vendor/flasher/themes/ios/ios.min.css new file mode 100644 index 00000000..0a7d7ef6 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/ios/ios.min.css @@ -0,0 +1 @@ +.fl-ios{--ios-bg-light:hsla(0,0%,100%,.85);--ios-bg-dark:rgba(30,30,30,.85);--ios-text-light:#000;--ios-text-secondary-light:#6e6e6e;--ios-text-dark:#fff;--ios-text-secondary-dark:#a8a8a8;--ios-border-radius:13px;--ios-shadow:0 2px 12px rgba(0,0,0,.15);--ios-shadow-dark:0 2px 12px rgba(0,0,0,.35);--ios-icon-size:18px;--ios-blur:30px;--ios-success:#34c759;--ios-info:#007aff;--ios-warning:#ff9500;--ios-error:#ff3b30;--ios-animation-duration:0.4s}@-webkit-keyframes iosSlideIn{0%{opacity:0;-webkit-transform:translateY(-15px) scale(.96);transform:translateY(-15px) scale(.96)}to{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-moz-keyframes iosSlideIn{0%{opacity:0;-moz-transform:translateY(-15px) scale(.96);transform:translateY(-15px) scale(.96)}to{opacity:1;-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@keyframes iosSlideIn{0%{opacity:0;-webkit-transform:translateY(-15px) scale(.96);-moz-transform:translateY(-15px) scale(.96);transform:translateY(-15px) scale(.96)}to{opacity:1;-webkit-transform:translateY(0) scale(1);-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-webkit-keyframes iosExpand{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}@-moz-keyframes iosExpand{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}@keyframes iosExpand{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}.fl-ios{-webkit-animation:iosSlideIn var(--ios-animation-duration) cubic-bezier(.23,1,.32,1);-moz-animation:iosSlideIn var(--ios-animation-duration) cubic-bezier(.23,1,.32,1);animation:iosSlideIn var(--ios-animation-duration) cubic-bezier(.23,1,.32,1);font-family:-apple-system,BlinkMacSystemFont,San Francisco,Helvetica Neue,Helvetica,Arial,sans-serif;margin:10px 0;max-width:400px;position:relative;width:100%;will-change:transform,opacity}.fl-ios .fl-ios-notification{backdrop-filter:blur(var(--ios-blur));-webkit-backdrop-filter:blur(var(--ios-blur));background-color:var(--ios-bg-light);border-radius:var(--ios-border-radius);-webkit-box-shadow:var(--ios-shadow);box-shadow:var(--ios-shadow);color:var(--ios-text-light);padding:12px 15px;position:relative}.fl-ios .fl-header{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;margin-bottom:8px;padding-right:20px}.fl-ios .fl-app-icon{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:currentColor;border-radius:5px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:22px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-right:8px;width:22px}.fl-ios .fl-icon-svg{color:#fff;height:14px;width:14px}.fl-ios .fl-app-info{-webkit-box-align:baseline;-webkit-align-items:baseline;-moz-box-align:baseline;align-items:baseline;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;justify-content:space-between}.fl-ios .fl-app-name{font-size:.85rem;font-weight:600}.fl-ios .fl-time{color:var(--ios-text-secondary-light);-webkit-flex-shrink:0;flex-shrink:0;font-size:.75rem;margin-left:5px}.fl-ios .fl-content{-webkit-animation:iosExpand .3s forwards;-moz-animation:iosExpand .3s forwards;animation:iosExpand .3s forwards;-webkit-animation-delay:.1s;-moz-animation-delay:.1s;animation-delay:.1s;overflow:hidden}.fl-ios .fl-message{font-size:.95rem;line-height:1.3;margin:0;padding-right:15px}.fl-ios .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:rgba(0,0,0,.1);border:none;border-radius:50%;color:var(--ios-text-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;font-size:14px;height:18px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;line-height:1;opacity:.7;padding:0;position:absolute;right:12px;top:10px;-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;width:18px}.fl-ios .fl-close:focus,.fl-ios .fl-close:hover{opacity:1}.fl-ios.fl-success .fl-app-icon{color:var(--ios-success)}.fl-ios.fl-info .fl-app-icon{color:var(--ios-info)}.fl-ios.fl-warning .fl-app-icon{color:var(--ios-warning)}.fl-ios.fl-error .fl-app-icon{color:var(--ios-error)}.fl-ios.fl-rtl{direction:rtl}.fl-ios.fl-rtl .fl-header{padding-left:20px;padding-right:0}.fl-ios.fl-rtl .fl-app-icon{margin-left:8px;margin-right:0}.fl-ios.fl-rtl .fl-time{margin-left:0;margin-right:5px}.fl-ios.fl-rtl .fl-message{padding-left:15px;padding-right:0}.fl-ios.fl-rtl .fl-close{left:12px;right:auto}@media (prefers-reduced-motion:reduce){.fl-ios{-webkit-animation:none;-moz-animation:none;animation:none}.fl-ios .fl-content{-webkit-animation:none;-moz-animation:none;animation:none;max-height:none;opacity:1}}@media screen and (max-width:480px){.fl-ios{width:100%}}.fl-ios.fl-auto-dark .fl-ios-notification,body.fl-dark .fl-ios .fl-ios-notification,html.fl-dark .fl-ios .fl-ios-notification{background-color:var(--ios-bg-dark);-webkit-box-shadow:var(--ios-shadow-dark);box-shadow:var(--ios-shadow-dark);color:var(--ios-text-dark)}.fl-ios.fl-auto-dark .fl-time,body.fl-dark .fl-ios .fl-time,html.fl-dark .fl-ios .fl-time{color:var(--ios-text-secondary-dark)}.fl-ios.fl-auto-dark .fl-close,body.fl-dark .fl-ios .fl-close,html.fl-dark .fl-ios .fl-close{background-color:hsla(0,0%,100%,.2);color:var(--ios-text-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/ios/ios.min.js b/demo/symfony/public/vendor/flasher/themes/ios/ios.min.js new file mode 100644 index 00000000..565e208d --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/ios/ios.min.js @@ -0,0 +1 @@ +!function(e,i){"object"==typeof exports&&"undefined"!=typeof module?i(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],i):i((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";const i={render:e=>{const{type:i,message:s,title:n}=e,t="error"===i||"warning"===i,l=t?"alert":"status",a=t?"assertive":"polite",r=(new Date).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}),o=n||"PHPFlasher";return`\n
\n
\n
\n
\n ${(()=>{switch(i){case"success":return'\n \n ';case"error":return'\n \n ';case"warning":return'\n \n ';case"info":return'\n \n '}return""})()}\n
\n
\n
${o}
\n
${r}
\n
\n
\n
\n
${s}
\n
\n \n
\n
`}};e.addTheme("ios",i)})); diff --git a/demo/symfony/public/vendor/flasher/themes/jade/jade.min.css b/demo/symfony/public/vendor/flasher/themes/jade/jade.min.css new file mode 100644 index 00000000..2799b10c --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/jade/jade.min.css @@ -0,0 +1 @@ +.fl-jade{--jade-text-light:#5f6c7b;--jade-text-dark:#e2e8f0;--jade-shadow:0 8px 24px hsla(210,8%,62%,.1);--jade-shadow-dark:0 8px 24px rgba(0,0,0,.2);--jade-border-radius:1rem;--jade-transition:0.3s cubic-bezier(0.4,0,0.2,1);--jade-success-bg:#f0fdf4;--jade-success-color:#16a34a;--jade-info-bg:#eff6ff;--jade-info-color:#3b82f6;--jade-warning-bg:#fffbeb;--jade-warning-color:#f59e0b;--jade-error-bg:#fef2f2;--jade-error-color:#dc2626;--jade-success-bg-dark:rgba(22,163,74,.15);--jade-info-bg-dark:rgba(59,130,246,.15);--jade-warning-bg-dark:rgba(245,158,11,.15);--jade-error-bg-dark:rgba(220,38,38,.15)}@-webkit-keyframes jadeIn{0%{opacity:0;-webkit-transform:translateY(-10px) scale(.95);transform:translateY(-10px) scale(.95)}to{opacity:1;-webkit-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@-moz-keyframes jadeIn{0%{opacity:0;-moz-transform:translateY(-10px) scale(.95);transform:translateY(-10px) scale(.95)}to{opacity:1;-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}@keyframes jadeIn{0%{opacity:0;-webkit-transform:translateY(-10px) scale(.95);-moz-transform:translateY(-10px) scale(.95);transform:translateY(-10px) scale(.95)}to{opacity:1;-webkit-transform:translateY(0) scale(1);-moz-transform:translateY(0) scale(1);transform:translateY(0) scale(1)}}.fl-jade{-webkit-animation:jadeIn .4s var(--jade-transition);-moz-animation:jadeIn .4s var(--jade-transition);animation:jadeIn .4s var(--jade-transition);border:1px solid transparent;border-radius:var(--jade-border-radius);-webkit-box-shadow:var(--jade-shadow);box-shadow:var(--jade-shadow);font-family:var(--fl-font),serif;margin:.5rem 0;overflow:hidden;padding:1rem 1.25rem;position:relative;will-change:transform,opacity}.fl-jade:last-child{margin-bottom:0}.fl-jade .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-jade .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.875rem;font-weight:500;line-height:1.5;padding-right:.75rem}.fl-jade .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.125rem;height:1.875rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;opacity:.6;padding:.375rem;-webkit-transition:all var(--jade-transition);-moz-transition:all var(--jade-transition);transition:all var(--jade-transition);width:1.875rem}.fl-jade .fl-close:focus,.fl-jade .fl-close:hover{background-color:rgba(0,0,0,.05);opacity:1}.fl-jade .fl-progress-bar{border-radius:0 0 var(--jade-border-radius) var(--jade-border-radius);bottom:0;height:3px;left:0;opacity:.7;overflow:hidden;position:absolute;right:0}.fl-jade .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-jade.fl-success{background-color:var(--jade-success-bg);border-color:rgba(22,163,74,.1)}.fl-jade.fl-success,.fl-jade.fl-success .fl-close{color:var(--jade-success-color)}.fl-jade.fl-success .fl-close:focus,.fl-jade.fl-success .fl-close:hover{background-color:rgba(22,163,74,.1)}.fl-jade.fl-success .fl-progress-bar .fl-progress{background-color:var(--jade-success-color)}.fl-jade.fl-info{background-color:var(--jade-info-bg);border-color:rgba(59,130,246,.1)}.fl-jade.fl-info,.fl-jade.fl-info .fl-close{color:var(--jade-info-color)}.fl-jade.fl-info .fl-close:focus,.fl-jade.fl-info .fl-close:hover{background-color:rgba(59,130,246,.1)}.fl-jade.fl-info .fl-progress-bar .fl-progress{background-color:var(--jade-info-color)}.fl-jade.fl-warning{background-color:var(--jade-warning-bg);border-color:rgba(245,158,11,.1)}.fl-jade.fl-warning,.fl-jade.fl-warning .fl-close{color:var(--jade-warning-color)}.fl-jade.fl-warning .fl-close:focus,.fl-jade.fl-warning .fl-close:hover{background-color:rgba(245,158,11,.1)}.fl-jade.fl-warning .fl-progress-bar .fl-progress{background-color:var(--jade-warning-color)}.fl-jade.fl-error{background-color:var(--jade-error-bg);border-color:rgba(220,38,38,.1)}.fl-jade.fl-error,.fl-jade.fl-error .fl-close{color:var(--jade-error-color)}.fl-jade.fl-error .fl-close:focus,.fl-jade.fl-error .fl-close:hover{background-color:rgba(220,38,38,.1)}.fl-jade.fl-error .fl-progress-bar .fl-progress{background-color:var(--jade-error-color)}.fl-jade.fl-rtl{direction:rtl}.fl-jade.fl-rtl .fl-message{padding-left:.75rem;padding-right:0}.fl-jade.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-jade{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-jade.fl-auto-dark,body.fl-dark .fl-jade,html.fl-dark .fl-jade{-webkit-box-shadow:var(--jade-shadow-dark);box-shadow:var(--jade-shadow-dark);color:var(--jade-text-dark)}.fl-jade.fl-auto-dark.fl-success,body.fl-dark .fl-jade.fl-success,html.fl-dark .fl-jade.fl-success{background-color:var(--jade-success-bg-dark);border-color:rgba(22,163,74,.2)}.fl-jade.fl-auto-dark.fl-info,body.fl-dark .fl-jade.fl-info,html.fl-dark .fl-jade.fl-info{background-color:var(--jade-info-bg-dark);border-color:rgba(59,130,246,.2)}.fl-jade.fl-auto-dark.fl-warning,body.fl-dark .fl-jade.fl-warning,html.fl-dark .fl-jade.fl-warning{background-color:var(--jade-warning-bg-dark);border-color:rgba(245,158,11,.2)}.fl-jade.fl-auto-dark.fl-error,body.fl-dark .fl-jade.fl-error,html.fl-dark .fl-jade.fl-error{background-color:var(--jade-error-bg-dark);border-color:rgba(220,38,38,.2)}.fl-jade.fl-auto-dark .fl-close:focus,.fl-jade.fl-auto-dark .fl-close:hover,body.fl-dark .fl-jade .fl-close:focus,body.fl-dark .fl-jade .fl-close:hover,html.fl-dark .fl-jade .fl-close:focus,html.fl-dark .fl-jade .fl-close:hover{background-color:hsla(0,0%,100%,.1)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/jade/jade.min.js b/demo/symfony/public/vendor/flasher/themes/jade/jade.min.js new file mode 100644 index 00000000..9d0d97fb --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/jade/jade.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("jade",{render:e=>{const{type:s,message:i}=e,n="error"===s||"warning"===s;return`\n
\n
\n
${i}
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/material/material.min.css b/demo/symfony/public/vendor/flasher/themes/material/material.min.css new file mode 100644 index 00000000..18a1fb5f --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/material/material.min.css @@ -0,0 +1 @@ +.fl-material{--md-bg-light:#fff;--md-bg-dark:#2d2d2d;--md-text-light:rgba(0,0,0,.87);--md-text-secondary-light:rgba(0,0,0,.6);--md-text-dark:hsla(0,0%,100%,.87);--md-text-secondary-dark:hsla(0,0%,100%,.6);--md-elevation:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);--md-elevation-dark:0 3px 5px -1px rgba(0,0,0,.4),0 6px 10px 0 rgba(0,0,0,.28),0 1px 18px 0 rgba(0,0,0,.24);--md-border-radius:4px;--md-success:#43a047;--md-info:#1e88e5;--md-warning:#fb8c00;--md-error:#e53935;--md-animation-duration:0.3s;--md-ripple-duration:0.6s}@-webkit-keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes mdSlideUp{0%{opacity:0;-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes mdSlideUp{0%{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);transform:translateY(20px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);transform:scale(4)}}@-moz-keyframes mdRipple{to{opacity:0;-moz-transform:scale(4);transform:scale(4)}}@keyframes mdRipple{to{opacity:0;-webkit-transform:scale(4);-moz-transform:scale(4);transform:scale(4)}}.fl-material{-webkit-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);-moz-animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);animation:mdSlideUp var(--md-animation-duration) cubic-bezier(.4,0,.2,1);font-family:Roboto,Segoe UI,Helvetica,Arial,sans-serif;margin:8px 0;max-width:400px;position:relative;width:100%}.fl-material .fl-md-card{background-color:var(--md-bg-light);border-radius:var(--md-border-radius);-webkit-box-shadow:var(--md-elevation);box-shadow:var(--md-elevation);color:var(--md-text-light);overflow:hidden}.fl-material .fl-content{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:16px}.fl-material .fl-text-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-material .fl-message{color:var(--md-text-secondary-light);font-size:.875rem;line-height:1.43}.fl-material .fl-actions{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;justify-content:flex-end;padding:8px}.fl-material .fl-action-button{background:transparent;border:none;border-radius:4px;color:currentColor;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;letter-spacing:.0892857143em;overflow:hidden;padding:8px 12px;position:relative;text-transform:uppercase;-webkit-transition:background-color .2s;-moz-transition:background-color .2s;transition:background-color .2s}.fl-material .fl-action-button:focus,.fl-material .fl-action-button:hover{background-color:rgba(0,0,0,.04)}.fl-material .fl-action-button:after{background:currentColor;border-radius:50%;content:"";height:5px;opacity:0;pointer-events:none;position:absolute;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);width:5px}.fl-material .fl-action-button:active:after{-webkit-animation:mdRipple var(--md-ripple-duration) linear;-moz-animation:mdRipple var(--md-ripple-duration) linear;animation:mdRipple var(--md-ripple-duration) linear;opacity:.3}.fl-material.fl-success .fl-action-button,.fl-material.fl-success .fl-icon-wrapper{color:var(--md-success)}.fl-material.fl-info .fl-action-button,.fl-material.fl-info .fl-icon-wrapper{color:var(--md-info)}.fl-material.fl-warning .fl-action-button,.fl-material.fl-warning .fl-icon-wrapper{color:var(--md-warning)}.fl-material.fl-error .fl-action-button,.fl-material.fl-error .fl-icon-wrapper{color:var(--md-error)}.fl-material .fl-progress-bar{bottom:0;height:4px;left:0;overflow:hidden;position:absolute;right:0}.fl-material .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-material.fl-success .fl-progress{background-color:var(--md-success)}.fl-material.fl-info .fl-progress{background-color:var(--md-info)}.fl-material.fl-warning .fl-progress{background-color:var(--md-warning)}.fl-material.fl-error .fl-progress{background-color:var(--md-error)}.fl-material.fl-rtl{direction:rtl}.fl-material.fl-rtl .fl-content{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-webkit-flex-direction:row-reverse;-moz-box-orient:horizontal;-moz-box-direction:reverse;flex-direction:row-reverse}.fl-material.fl-rtl .fl-icon-wrapper{margin-left:16px;margin-right:0}.fl-material.fl-rtl .fl-actions{-webkit-box-pack:start;-webkit-justify-content:flex-start;-moz-box-pack:start;justify-content:flex-start}.fl-material.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-material,.fl-material .fl-action-button:active:after{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-material.fl-auto-dark .fl-md-card,body.fl-dark .fl-material .fl-md-card,html.fl-dark .fl-material .fl-md-card{background-color:var(--md-bg-dark);-webkit-box-shadow:var(--md-elevation-dark);box-shadow:var(--md-elevation-dark);color:var(--md-text-dark)}.fl-material.fl-auto-dark .fl-message,body.fl-dark .fl-material .fl-message,html.fl-dark .fl-material .fl-message{color:var(--md-text-secondary-dark)}.fl-material.fl-auto-dark .fl-action-button:focus,.fl-material.fl-auto-dark .fl-action-button:hover,body.fl-dark .fl-material .fl-action-button:focus,body.fl-dark .fl-material .fl-action-button:hover,html.fl-dark .fl-material .fl-action-button:focus,html.fl-dark .fl-material .fl-action-button:hover{background-color:hsla(0,0%,100%,.08)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/material/material.min.js b/demo/symfony/public/vendor/flasher/themes/material/material.min.js new file mode 100644 index 00000000..b9cf7e20 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/material/material.min.js @@ -0,0 +1 @@ +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("material",{render:e=>{const{type:n,message:s}=e,i="error"===n||"warning"===n;return`\n
\n
\n
\n
\n
${s}
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.css b/demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.css new file mode 100644 index 00000000..d621f2b0 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.css @@ -0,0 +1 @@ +.fl-minimal{--minimal-bg-light:hsla(0,0%,100%,.8);--minimal-bg-dark:rgba(25,25,25,.8);--minimal-text-light:#333;--minimal-text-dark:#f5f5f5;--minimal-shadow:0 2px 8px rgba(0,0,0,.08);--minimal-shadow-dark:0 2px 8px rgba(0,0,0,.15);--minimal-border-radius:6px;--minimal-border-color:rgba(0,0,0,.05);--minimal-border-color-dark:hsla(0,0%,100%,.1);--minimal-success:rgba(34,197,94,.9);--minimal-info:rgba(14,165,233,.9);--minimal-warning:rgba(245,158,11,.9);--minimal-error:rgba(239,68,68,.9)}@-webkit-keyframes minimalIn{0%{opacity:0;-webkit-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes minimalIn{0%{opacity:0;-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes minimalIn{0%{opacity:0;-webkit-transform:translateY(-8px);-moz-transform:translateY(-8px);transform:translateY(-8px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-minimal{-webkit-animation:minimalIn .2s ease-out;-moz-animation:minimalIn .2s ease-out;animation:minimalIn .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:var(--minimal-bg-light);border:1px solid var(--minimal-border-color);border-radius:var(--minimal-border-radius);-webkit-box-shadow:var(--minimal-shadow);box-shadow:var(--minimal-shadow);color:var(--minimal-text-light);font-family:-apple-system,BlinkMacSystemFont,var(--fl-font),sans-serif;margin:.5rem 0;max-width:320px;padding:.75rem 1rem;position:relative;will-change:transform,opacity}.fl-minimal:last-child{margin-bottom:0}.fl-minimal .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;gap:.75rem}.fl-minimal .fl-dot{border-radius:50%;-webkit-flex-shrink:0;flex-shrink:0;height:8px;width:8px}.fl-minimal .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.875rem;font-weight:450;line-height:1.4;margin:0}.fl-minimal .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;color:currentColor;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1rem;height:1.5rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;opacity:.5;padding:.25rem;-webkit-transition:opacity .15s;-moz-transition:opacity .15s;transition:opacity .15s;width:1.5rem}.fl-minimal .fl-close:focus,.fl-minimal .fl-close:hover{opacity:.8}.fl-minimal .fl-progress-bar{border-radius:0 0 var(--minimal-border-radius) var(--minimal-border-radius);bottom:0;height:2px;left:0;opacity:.7;overflow:hidden;position:absolute;right:0}.fl-minimal .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-minimal.fl-success .fl-dot,.fl-minimal.fl-success .fl-progress-bar .fl-progress{background-color:var(--minimal-success)}.fl-minimal.fl-info .fl-dot,.fl-minimal.fl-info .fl-progress-bar .fl-progress{background-color:var(--minimal-info)}.fl-minimal.fl-warning .fl-dot,.fl-minimal.fl-warning .fl-progress-bar .fl-progress{background-color:var(--minimal-warning)}.fl-minimal.fl-error .fl-dot,.fl-minimal.fl-error .fl-progress-bar .fl-progress{background-color:var(--minimal-error)}.fl-minimal.fl-rtl{direction:rtl}.fl-minimal.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-minimal{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-minimal.fl-auto-dark,body.fl-dark .fl-minimal,html.fl-dark .fl-minimal{background-color:var(--minimal-bg-dark);border-color:var(--minimal-border-color-dark);-webkit-box-shadow:var(--minimal-shadow-dark);box-shadow:var(--minimal-shadow-dark);color:var(--minimal-text-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.js b/demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.js new file mode 100644 index 00000000..af718471 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/minimal/minimal.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("minimal",{render:e=>{const{type:s,message:i}=e,n="error"===s||"warning"===s;return`\n
\n
\n
${i}
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/neon/neon.min.css b/demo/symfony/public/vendor/flasher/themes/neon/neon.min.css new file mode 100644 index 00000000..e2f6ff52 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/neon/neon.min.css @@ -0,0 +1 @@ +.fl-neon{--neon-bg-light:hsla(0,0%,100%,.9);--neon-bg-dark:rgba(15,23,42,.9);--neon-text-light:#334155;--neon-text-dark:#f1f5f9;--neon-shadow:0 8px 30px rgba(0,0,0,.12);--neon-shadow-dark:0 8px 30px rgba(0,0,0,.25);--neon-border-radius:12px;--neon-success:#10b981;--neon-info:#3b82f6;--neon-warning:#f59e0b;--neon-error:#ef4444;--neon-glow-strength:10px;--neon-animation-duration:0.35s}@-webkit-keyframes neonEntrance{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(-15px);transform:translateY(-15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes neonEntrance{0%{filter:blur(3px);opacity:0;-moz-transform:translateY(-15px);transform:translateY(-15px)}to{filter:blur(0);opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes neonEntrance{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(-15px);-moz-transform:translateY(-15px);transform:translateY(-15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes neonGlow{0%,to{-webkit-filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor);filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor)}50%{-webkit-filter:drop-shadow(0 0 -webkit-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 calc(var(--neon-glow-strength)*.7) currentColor)}}@-moz-keyframes neonGlow{0%,to{filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor)}50%{filter:drop-shadow(0 0 -moz-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 calc(var(--neon-glow-strength)*.7) currentColor)}}@keyframes neonGlow{0%,to{-webkit-filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor);filter:drop-shadow(0 0 var(--neon-glow-strength) currentColor)}50%{-webkit-filter:drop-shadow(0 0 -webkit-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 -moz-calc(var(--neon-glow-strength)*.7) currentColor);filter:drop-shadow(0 0 calc(var(--neon-glow-strength)*.7) currentColor)}}.fl-neon{-webkit-animation:neonEntrance var(--neon-animation-duration) ease-out;-moz-animation:neonEntrance var(--neon-animation-duration) ease-out;animation:neonEntrance var(--neon-animation-duration) ease-out;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--neon-bg-light);border-radius:var(--neon-border-radius);-webkit-box-shadow:var(--neon-shadow);box-shadow:var(--neon-shadow);color:var(--neon-text-light);font-family:"Inter",var(--fl-font),sans-serif;margin:12px 0;padding:14px 18px;position:relative;will-change:transform,opacity,filter}.fl-neon .fl-icon-box{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;-webkit-animation:neonGlow 3s ease-in-out infinite;-moz-animation:neonGlow 3s ease-in-out infinite;animation:neonGlow 3s ease-in-out infinite;border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;height:24px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;left:16px;position:absolute;top:-12px;width:24px}.fl-neon .fl-icon-box:before{border-radius:50%;content:"";height:100%;opacity:.4;position:absolute;width:100%}.fl-neon .fl-icon-box:after{border-radius:50%;content:"";height:10px;position:relative;width:10px;z-index:1}.fl-neon .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex}.fl-neon .fl-message{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;font-size:.9375rem;font-weight:500;line-height:1.5}.fl-neon .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;color:inherit;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.2rem;height:28px;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:16px;opacity:.6;padding:0;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease;width:28px}.fl-neon .fl-close:focus,.fl-neon .fl-close:hover{background-color:rgba(0,0,0,.06);opacity:1}.fl-neon .fl-progress-bar{border-radius:0 0 var(--neon-border-radius) var(--neon-border-radius);bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-neon .fl-progress-bar .fl-progress{height:100%;width:100%}.fl-neon.fl-success .fl-icon-box{color:var(--neon-success)}.fl-neon.fl-success .fl-icon-box:after,.fl-neon.fl-success .fl-icon-box:before,.fl-neon.fl-success .fl-progress{background-color:var(--neon-success)}.fl-neon.fl-info .fl-icon-box{color:var(--neon-info)}.fl-neon.fl-info .fl-icon-box:after,.fl-neon.fl-info .fl-icon-box:before,.fl-neon.fl-info .fl-progress{background-color:var(--neon-info)}.fl-neon.fl-warning .fl-icon-box{color:var(--neon-warning)}.fl-neon.fl-warning .fl-icon-box:after,.fl-neon.fl-warning .fl-icon-box:before,.fl-neon.fl-warning .fl-progress{background-color:var(--neon-warning)}.fl-neon.fl-error .fl-icon-box{color:var(--neon-error)}.fl-neon.fl-error .fl-icon-box:after,.fl-neon.fl-error .fl-icon-box:before,.fl-neon.fl-error .fl-progress{background-color:var(--neon-error)}.fl-neon.fl-rtl{direction:rtl}.fl-neon.fl-rtl .fl-icon-box{left:auto;right:16px}.fl-neon.fl-rtl .fl-close{margin-left:0;margin-right:16px}.fl-neon.fl-rtl .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-neon,.fl-neon .fl-icon-box{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-neon.fl-auto-dark,body.fl-dark .fl-neon,html.fl-dark .fl-neon{background-color:var(--neon-bg-dark);-webkit-box-shadow:var(--neon-shadow-dark);box-shadow:var(--neon-shadow-dark);color:var(--neon-text-dark)}.fl-neon.fl-auto-dark .fl-close:focus,.fl-neon.fl-auto-dark .fl-close:hover,body.fl-dark .fl-neon .fl-close:focus,body.fl-dark .fl-neon .fl-close:hover,html.fl-dark .fl-neon .fl-close:focus,html.fl-dark .fl-neon .fl-close:hover{background-color:hsla(0,0%,100%,.1)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/neon/neon.min.js b/demo/symfony/public/vendor/flasher/themes/neon/neon.min.js new file mode 100644 index 00000000..1b15d5d8 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/neon/neon.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("neon",{render:e=>{const{type:s,message:n}=e,i="error"===s||"warning"===s;return`\n
\n
\n
${n}
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.css b/demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.css new file mode 100644 index 00000000..e263e788 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.css @@ -0,0 +1 @@ +.fl-onyx{--onyx-bg-light:#fff;--onyx-bg-dark:#1e1e1e;--onyx-text-light:#333;--onyx-text-dark:#f5f5f5;--onyx-shadow:0 8px 30px rgba(0,0,0,.12);--onyx-shadow-dark:0 8px 30px rgba(0,0,0,.25);--onyx-border-radius:1rem;--onyx-success:#10b981;--onyx-info:#3b82f6;--onyx-warning:#f59e0b;--onyx-error:#ef4444}@-webkit-keyframes onyxIn{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(15px);transform:translateY(15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes onyxIn{0%{filter:blur(3px);opacity:0;-moz-transform:translateY(15px);transform:translateY(15px)}to{filter:blur(0);opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes onyxIn{0%{-webkit-filter:blur(3px);filter:blur(3px);opacity:0;-webkit-transform:translateY(15px);-moz-transform:translateY(15px);transform:translateY(15px)}to{-webkit-filter:blur(0);filter:blur(0);opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-onyx{-webkit-animation:onyxIn .4s cubic-bezier(.16,1,.3,1);-moz-animation:onyxIn .4s cubic-bezier(.16,1,.3,1);animation:onyxIn .4s cubic-bezier(.16,1,.3,1);background-color:var(--onyx-bg-light);border-radius:var(--onyx-border-radius);-webkit-box-shadow:var(--onyx-shadow);box-shadow:var(--onyx-shadow);color:var(--onyx-text-light);font-family:var(--fl-font),serif;margin:.75rem 0;overflow:hidden;padding:1rem 1.25rem;position:relative;will-change:transform,opacity,filter}.fl-onyx:after,.fl-onyx:before{border-radius:50%;content:"";height:6px;position:absolute;width:6px;z-index:1}.fl-onyx:before{left:10px;top:10px}.fl-onyx:after{bottom:10px;right:10px}.fl-onyx .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding-left:.4rem}.fl-onyx .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;position:relative}.fl-onyx .fl-message{font-size:.925rem;font-weight:400;letter-spacing:.01rem;line-height:1.5}.fl-onyx .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:50%;color:currentColor;cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.25rem;height:1.75rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:1rem;opacity:.6;padding:.25rem;-webkit-transition:all .2s ease;-moz-transition:all .2s ease;transition:all .2s ease;width:1.75rem}.fl-onyx .fl-close:focus,.fl-onyx .fl-close:hover{background-color:rgba(0,0,0,.05);opacity:1}.fl-onyx .fl-progress-bar{bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.fl-onyx .fl-progress-bar .fl-progress{height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%}.fl-onyx.fl-success .fl-progress-bar .fl-progress,.fl-onyx.fl-success:after,.fl-onyx.fl-success:before{background-color:var(--onyx-success)}.fl-onyx.fl-info .fl-progress-bar .fl-progress,.fl-onyx.fl-info:after,.fl-onyx.fl-info:before{background-color:var(--onyx-info)}.fl-onyx.fl-warning .fl-progress-bar .fl-progress,.fl-onyx.fl-warning:after,.fl-onyx.fl-warning:before{background-color:var(--onyx-warning)}.fl-onyx.fl-error .fl-progress-bar .fl-progress,.fl-onyx.fl-error:after,.fl-onyx.fl-error:before{background-color:var(--onyx-error)}.fl-onyx.fl-rtl{direction:rtl}.fl-onyx.fl-rtl .fl-content{padding-left:0;padding-right:.4rem}.fl-onyx.fl-rtl .fl-close{margin-left:0;margin-right:1rem}.fl-onyx.fl-rtl:before{left:auto;right:10px}.fl-onyx.fl-rtl:after{left:10px;right:auto}.fl-onyx.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-onyx{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-onyx.fl-auto-dark,body.fl-dark .fl-onyx,html.fl-dark .fl-onyx{background-color:var(--onyx-bg-dark);-webkit-box-shadow:var(--onyx-shadow-dark);box-shadow:var(--onyx-shadow-dark);color:var(--onyx-text-dark)}.fl-onyx.fl-auto-dark .fl-close:focus,.fl-onyx.fl-auto-dark .fl-close:hover,body.fl-dark .fl-onyx .fl-close:focus,body.fl-dark .fl-onyx .fl-close:hover,html.fl-dark .fl-onyx .fl-close:focus,html.fl-dark .fl-onyx .fl-close:hover{background-color:hsla(0,0%,100%,.1)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.js b/demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.js new file mode 100644 index 00000000..3ec6bc43 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/onyx/onyx.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("onyx",{render:e=>{const{type:s,message:n}=e,i="error"===s||"warning"===s;return`\n
\n
\n
\n
${n}
\n
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.css b/demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.css new file mode 100644 index 00000000..0a2cd365 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.css @@ -0,0 +1 @@ +.fl-ruby{--ruby-text:#fff;--ruby-text-dark:#f8fafc;--ruby-border-radius:1.125rem;--ruby-shadow:0 10px 25px -3px rgba(0,0,0,.2);--ruby-success-gradient:linear-gradient(135deg,#059669,#10b981);--ruby-info-gradient:linear-gradient(135deg,#2563eb,#3b82f6);--ruby-warning-gradient:linear-gradient(135deg,#d97706,#f59e0b);--ruby-error-gradient:linear-gradient(135deg,#b91c1c,#ef4444)}@-webkit-keyframes rubyShine{0%{left:-100%;opacity:.6}60%{left:100%;opacity:.6}to{left:100%;opacity:0}}@-moz-keyframes rubyShine{0%{left:-100%;opacity:.6}60%{left:100%;opacity:.6}to{left:100%;opacity:0}}@keyframes rubyShine{0%{left:-100%;opacity:.6}60%{left:100%;opacity:.6}to{left:100%;opacity:0}}@-webkit-keyframes rubyIn{0%{opacity:0;-webkit-transform:scale(.96);transform:scale(.96)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-moz-keyframes rubyIn{0%{opacity:0;-moz-transform:scale(.96);transform:scale(.96)}to{opacity:1;-moz-transform:scale(1);transform:scale(1)}}@keyframes rubyIn{0%{opacity:0;-webkit-transform:scale(.96);-moz-transform:scale(.96);transform:scale(.96)}to{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1)}}.fl-ruby{-webkit-animation:rubyIn .35s cubic-bezier(.21,1.02,.73,1);-moz-animation:rubyIn .35s cubic-bezier(.21,1.02,.73,1);animation:rubyIn .35s cubic-bezier(.21,1.02,.73,1);border-radius:var(--ruby-border-radius);-webkit-box-shadow:var(--ruby-shadow);box-shadow:var(--ruby-shadow);color:var(--ruby-text);font-family:var(--fl-font),serif;margin:.75rem 0;overflow:hidden;padding:0;position:relative;will-change:transform,opacity}.fl-ruby .fl-shine{-webkit-animation:rubyShine 6s infinite;-moz-animation:rubyShine 6s infinite;animation:rubyShine 6s infinite;-webkit-animation-delay:1s;-moz-animation-delay:1s;animation-delay:1s;background:-webkit-gradient(linear,left top, right top,from(hsla(0,0%,100%,0)),color-stop(50%, hsla(0,0%,100%,.3)),to(hsla(0,0%,100%,0)));background:-webkit-linear-gradient(left,hsla(0,0%,100%,0),hsla(0,0%,100%,.3) 50%,hsla(0,0%,100%,0));background:-moz-linear-gradient(left,hsla(0,0%,100%,0),hsla(0,0%,100%,.3) 50%,hsla(0,0%,100%,0));background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.3) 50%,hsla(0,0%,100%,0));height:100%;left:-100%;position:absolute;top:0;-webkit-transform:skewX(-20deg);-moz-transform:skewX(-20deg);-ms-transform:skewX(-20deg);transform:skewX(-20deg);width:50%;z-index:1}.fl-ruby .fl-content{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:.9rem 1.1rem;position:relative;z-index:2}.fl-ruby .fl-icon-circle{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:hsla(0,0%,100%,.25);border-radius:50%;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:2.25rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-right:1rem;width:2.25rem}.fl-ruby .fl-icon{background-color:transparent;color:var(--ruby-text);font-size:1rem;margin:0}.fl-ruby .fl-text{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1}.fl-ruby .fl-message{font-size:.925rem;font-weight:500;line-height:1.5}.fl-ruby .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:var(--ruby-text);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;font-size:1.1rem;height:1.6rem;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-left:.75rem;opacity:.8;padding:.1rem;-webkit-transition:all .2s;-moz-transition:all .2s;transition:all .2s;width:1.6rem}.fl-ruby .fl-close:focus,.fl-ruby .fl-close:hover{background:hsla(0,0%,100%,.3);opacity:1;-webkit-transform:scale(1.05);-moz-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}.fl-ruby .fl-progress-bar{background-color:rgba(0,0,0,.1);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;right:0;z-index:3}.fl-ruby .fl-progress-bar .fl-progress{background:hsla(0,0%,100%,.4);height:100%;width:100%}.fl-ruby.fl-success{background:var(--ruby-success-gradient)}.fl-ruby.fl-info{background:var(--ruby-info-gradient)}.fl-ruby.fl-warning{background:var(--ruby-warning-gradient)}.fl-ruby.fl-error{background:var(--ruby-error-gradient)}.fl-ruby.fl-rtl{direction:rtl}.fl-ruby.fl-rtl .fl-icon-circle{margin-left:1rem;margin-right:0}.fl-ruby.fl-rtl .fl-close{margin-left:0;margin-right:.75rem}.fl-ruby.fl-rtl .fl-shine{-webkit-transform:skewX(20deg);-moz-transform:skewX(20deg);-ms-transform:skewX(20deg);transform:skewX(20deg)}.fl-ruby.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-ruby{-webkit-animation:none;-moz-animation:none;animation:none}.fl-ruby .fl-shine{display:none}} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.js b/demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.js new file mode 100644 index 00000000..7134e4e1 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/ruby/ruby.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("ruby",{render:e=>{const{type:s,message:i}=e,n="error"===s||"warning"===s;return`\n
\n
\n
\n
\n
\n
\n
\n
${i}
\n
\n \n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.css b/demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.css new file mode 100644 index 00000000..e061486a --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.css @@ -0,0 +1 @@ +.fl-sapphire{--sapphire-bg-base:rgba(30,30,30,.9);--sapphire-text:#f0f0f0;--sapphire-shadow:rgba(0,0,0,.15);--sapphire-progress-bg:hsla(0,0%,100%,.2);--sapphire-progress-fill:hsla(0,0%,100%,.9);--sapphire-success:rgba(16,185,129,.95);--sapphire-error:rgba(239,68,68,.95);--sapphire-warning:rgba(245,158,11,.95);--sapphire-info:rgba(59,130,246,.95);--sapphire-animation:0.4s cubic-bezier(0.25,0.46,0.45,0.94)}@-webkit-keyframes sapphireIn{0%{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}60%{-webkit-transform:translateY(-3px);transform:translateY(-3px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes sapphireIn{0%{opacity:0;-moz-transform:translateY(10px);transform:translateY(10px)}60%{-moz-transform:translateY(-3px);transform:translateY(-3px)}to{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes sapphireIn{0%{opacity:0;-webkit-transform:translateY(10px);-moz-transform:translateY(10px);transform:translateY(10px)}60%{-webkit-transform:translateY(-3px);-moz-transform:translateY(-3px);transform:translateY(-3px)}to{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}.fl-sapphire{-webkit-animation:sapphireIn var(--sapphire-animation);-moz-animation:sapphireIn var(--sapphire-animation);animation:sapphireIn var(--sapphire-animation);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:var(--sapphire-bg-base);border-radius:.5em;-webkit-box-shadow:0 6px 16px var(--sapphire-shadow);box-shadow:0 6px 16px var(--sapphire-shadow);color:var(--sapphire-text);font-family:Roboto,var(--fl-font),serif;margin:0 0 .75em;min-width:200px;padding:1em 1.5em;position:relative;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;transition:all .3s ease;will-change:transform,opacity}.fl-sapphire:last-child{margin-bottom:0}.fl-sapphire .fl-message{color:var(--sapphire-text);font-size:.925em;line-height:1.4}.fl-sapphire .fl-progress-bar{background-color:var(--sapphire-progress-bg);border-radius:0 0 .375em .375em;bottom:0;height:4px;left:0;overflow:hidden;position:absolute;right:0}.fl-sapphire .fl-progress-bar .fl-progress{background-color:var(--sapphire-progress-fill);height:100%;-webkit-transform-origin:left center;-moz-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center;width:100%;will-change:transform}.fl-sapphire.fl-success{background-color:var(--sapphire-success)}.fl-sapphire.fl-error{background-color:var(--sapphire-error)}.fl-sapphire.fl-warning{background-color:var(--sapphire-warning)}.fl-sapphire.fl-info{background-color:var(--sapphire-info)}.fl-sapphire.fl-rtl{direction:rtl}.fl-sapphire.fl-rtl .fl-progress .fl-progress{-webkit-transform-origin:right center;-moz-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}@media (prefers-reduced-motion:reduce){.fl-sapphire{-webkit-animation:none;-moz-animation:none;animation:none}} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.js b/demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.js new file mode 100644 index 00000000..2e085080 --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/sapphire/sapphire.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("sapphire",{render:e=>{const{type:s,message:i}=e,n="error"===s||"warning"===s;return`\n
\n
\n ${i}\n
\n
\n
\n
\n
`}})})); diff --git a/demo/symfony/public/vendor/flasher/themes/slack/slack.min.css b/demo/symfony/public/vendor/flasher/themes/slack/slack.min.css new file mode 100644 index 00000000..72bc82db --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/slack/slack.min.css @@ -0,0 +1 @@ +.fl-slack{--slack-bg-light:#fff;--slack-bg-dark:#1a1d21;--slack-hover-light:#f8f8f8;--slack-hover-dark:#222529;--slack-text-light:#1d1c1d;--slack-text-secondary-light:#616061;--slack-text-dark:#e0e0e0;--slack-text-secondary-dark:#ababad;--slack-border-light:#e0e0e0;--slack-border-dark:#393a3e;--slack-shadow:0 1px 0 rgba(0,0,0,.1);--slack-shadow-dark:0 1px 0 rgba(0,0,0,.2);--slack-avatar-size:36px;--slack-success:#2bac76;--slack-info:#1264a3;--slack-warning:#e8912d;--slack-error:#e01e5a;--slack-animation-duration:150ms}@-webkit-keyframes slackFadeIn{0%{opacity:0}to{opacity:1}}@-moz-keyframes slackFadeIn{0%{opacity:0}to{opacity:1}}@keyframes slackFadeIn{0%{opacity:0}to{opacity:1}}.fl-slack{-webkit-animation:slackFadeIn var(--slack-animation-duration) ease-out;-moz-animation:slackFadeIn var(--slack-animation-duration) ease-out;animation:slackFadeIn var(--slack-animation-duration) ease-out;font-family:Lato,Slack-Lato,Helvetica Neue,Helvetica,sans-serif;margin:4px 0;max-width:500px;position:relative;width:100%}.fl-slack .fl-slack-message{-webkit-box-align:start;-webkit-align-items:flex-start;-moz-box-align:start;align-items:flex-start;background-color:var(--slack-bg-light);border:1px solid var(--slack-border-light);border-radius:4px;-webkit-box-shadow:var(--slack-shadow);box-shadow:var(--slack-shadow);color:var(--slack-text-light);display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;padding:8px 20px 8px 8px;-webkit-transition:background-color .1s ease;-moz-transition:background-color .1s ease;transition:background-color .1s ease}.fl-slack .fl-slack-message:hover{background-color:var(--slack-hover-light)}.fl-slack .fl-avatar{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background-color:currentColor;border-radius:4px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:var(--slack-avatar-size);-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;margin-right:8px;width:var(--slack-avatar-size)}.fl-slack .fl-type-icon{color:#fff;font-size:16px;font-weight:700}.fl-slack .fl-message-content{-webkit-box-flex:1;-webkit-flex:1;-moz-box-flex:1;flex:1;min-width:0}.fl-slack .fl-message-text{font-size:15px;line-height:1.46668;word-break:break-word}.fl-slack .fl-actions{opacity:0;position:absolute;right:6px;top:8px;-webkit-transition:opacity .1s ease;-moz-transition:opacity .1s ease;transition:opacity .1s ease;visibility:hidden}.fl-slack .fl-slack-message:hover .fl-actions{opacity:1;visibility:visible}.fl-slack .fl-close{-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;align-items:center;background:none;border:none;border-radius:4px;color:var(--slack-text-secondary-light);cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;justify-content:center;padding:4px}.fl-slack .fl-close:hover{background-color:var(--slack-hover-light);color:var(--slack-text-light)}.fl-slack.fl-success .fl-avatar{color:var(--slack-success)}.fl-slack.fl-info .fl-avatar{color:var(--slack-info)}.fl-slack.fl-warning .fl-avatar{color:var(--slack-warning)}.fl-slack.fl-error .fl-avatar{color:var(--slack-error)}.fl-slack.fl-rtl{direction:rtl}.fl-slack.fl-rtl .fl-avatar{margin-left:8px;margin-right:0}.fl-slack.fl-rtl .fl-username{margin-left:4px;margin-right:0}.fl-slack.fl-rtl .fl-actions{left:6px;right:auto}.fl-slack.fl-rtl .fl-slack-message{padding:8px 8px 8px 20px}@media (prefers-reduced-motion:reduce){.fl-slack{-webkit-animation:none;-moz-animation:none;animation:none}}.fl-slack.fl-auto-dark .fl-slack-message,body.fl-dark .fl-slack .fl-slack-message,html.fl-dark .fl-slack .fl-slack-message{background-color:var(--slack-bg-dark);border-color:var(--slack-border-dark);-webkit-box-shadow:var(--slack-shadow-dark);box-shadow:var(--slack-shadow-dark);color:var(--slack-text-dark)}.fl-slack.fl-auto-dark .fl-slack-message:hover,body.fl-dark .fl-slack .fl-slack-message:hover,html.fl-dark .fl-slack .fl-slack-message:hover{background-color:var(--slack-hover-dark)}.fl-slack.fl-auto-dark .fl-close,body.fl-dark .fl-slack .fl-close,html.fl-dark .fl-slack .fl-close{color:var(--slack-text-secondary-dark)}.fl-slack.fl-auto-dark .fl-close:hover,body.fl-dark .fl-slack .fl-close:hover,html.fl-dark .fl-slack .fl-close:hover{background-color:var(--slack-hover-dark);color:var(--slack-text-dark)} \ No newline at end of file diff --git a/demo/symfony/public/vendor/flasher/themes/slack/slack.min.js b/demo/symfony/public/vendor/flasher/themes/slack/slack.min.js new file mode 100644 index 00000000..d89293fe --- /dev/null +++ b/demo/symfony/public/vendor/flasher/themes/slack/slack.min.js @@ -0,0 +1 @@ +!function(e,s){"object"==typeof exports&&"undefined"!=typeof module?s(require("../../index.ts")):"function"==typeof define&&define.amd?define(["../../index.ts"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).flasher)}(this,(function(e){"use strict";e.addTheme("slack",{render:e=>{const{type:s,message:i}=e,n="error"===s||"warning"===s;return`\n
\n
\n
\n ${(()=>{switch(s){case"success":return'
';case"error":return'
';case"warning":return'
!
';case"info":return'
i
'}return""})()}\n
\n
\n
${i}
\n
\n
\n \n
\n
\n
`}})})); diff --git a/demo/symfony/src/Controller/HomeController.php b/demo/symfony/src/Controller/HomeController.php index 8945a898..be4c1f13 100644 --- a/demo/symfony/src/Controller/HomeController.php +++ b/demo/symfony/src/Controller/HomeController.php @@ -1,8 +1,9 @@ timerProgressBar()->success('hello from Home Controller'); - noty()->layout('topCenter')->success('hello from Home Controller'); - notyf()->ripple(false)->warning('hello from Home Controller'); - toastr()->positionClass('toast-bottom-left')->error('hello from Home Controller'); - flash()->use('flasher')->success('hello from flasher factory'); + $themes = [ + // 'flasher', + // 'amber', + // 'sapphire', + // 'crystal', - flash()->created(new Book('lord of the rings')); - flash()->saved(new Book('harry potter')); + // 'emerald', + // 'ruby', + // 'onyx', - flash()->updated(); - flash()->deleted(); + 'jade', + //,'aurora', + // 'neon', + // 'minimal', + + // 'material', + // 'google', + + // 'ios', + // 'slack', + // 'facebook', + // 'amazon', + ]; + + $positions = [ + 'top-left', + 'top-right', + 'bottom-left', + 'bottom-right', + 'top-center', + 'bottom-center', + 'center-left', + 'center-right', + 'center-center', + ]; + + $messages = [ + 'success' => 'Your profile has been updated successfully', + 'info' => 'New: You can now export your reports in PDF format', + 'warning' => 'Your premium subscription will expire in 3 days', + 'error' => 'Payment failed: Your card has been declined', + ]; + + foreach ($themes as $index => $theme) { + foreach ($messages as $type => $message) { + $position = $positions[$index % \count($positions)]; + + // $message = \sprintf('%s: %s', $theme, $message); + + // flash() + // ->use("theme.$theme") + // ->option('position', $position) + // ->$type($message); + } + } + + $plugins = [ + // 'noty', + // 'notyf', + // 'sweetalert', + 'toastr', + ]; + + foreach ($plugins as $plugin) { + foreach ($messages as $type => $message) { + flash() + ->use($plugin) + ->$type($message); + } + } return $this->render('home/index.html.twig'); } diff --git a/demo/symfony/templates/base.html.twig b/demo/symfony/templates/base.html.twig index 1069c147..5312acde 100644 --- a/demo/symfony/templates/base.html.twig +++ b/demo/symfony/templates/base.html.twig @@ -1,14 +1,15 @@ - {% block title %}Welcome!{% endblock %} - {% block stylesheets %} - {% endblock %} - {% block javascripts %} - {% endblock %} + + + + + {% block stylesheets %}{% endblock %} + {% block javascripts %}{% endblock %} {% block body %}{% endblock %}