@bagelink/vue 1.4.165 → 1.4.167

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.vue.d.ts","sourceRoot":"","sources":["../../../src/components/analytics/BarChart.vue"],"names":[],"mappings":"AA8QA,UAAU,cAAc;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;CACf;AAED,UAAU,SAAS;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,EAAE,cAAc,EAAE,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,UAAU,KAAK;IACd,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,SAAS,EAAE,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC5B;;UAZO,MAAM;WACL,MAAM;aAMJ,OAAO;sBALE,MAAM;YAChB,MAAM;YACN,MAAM;cACJ,OAAO;aACR,MAAM;SAEV,OAAO;cACF,OAAO;uBACE,MAAM;yBACJ,MAAM;;;;AAgU7B,wBASG"}
1
+ {"version":3,"file":"BarChart.vue.d.ts","sourceRoot":"","sources":["../../../src/components/analytics/BarChart.vue"],"names":[],"mappings":"AAyQA,UAAU,cAAc;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;CACf;AAED,UAAU,SAAS;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,EAAE,cAAc,EAAE,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,UAAU,KAAK;IACd,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,SAAS,EAAE,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC5B;;UAZO,MAAM;WACL,MAAM;aAMJ,OAAO;sBALE,MAAM;YAChB,MAAM;YACN,MAAM;cACJ,OAAO;aACR,MAAM;SAEV,OAAO;cACF,OAAO;uBACE,MAAM;yBACJ,MAAM;;;;AAsT7B,wBASG"}
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({}),t=Object.create,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.getPrototypeOf,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},c=(e,t,a,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var c=i(t),l=0,u=c.length,d;l<u;l++)d=c[l],!o.call(e,d)&&d!==a&&n(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(s=r(t,d))||s.enumerable});return e},l=(e,r,i)=>(i=e==null?{}:t(a(e)),c(r||!e||!e.__esModule?n(i,`default`,{value:e,enumerable:!0}):i,e));const u=l(require(`vue`)),d=l(require(`vue-router`));var f=(0,u.defineComponent)({__name:`Accordion`,setup(e){let t=(0,u.reactive)({openItem:void 0});return(0,u.provide)(`accordionState`,t),(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`div`,null,[(0,u.renderSlot)(e.$slots,`default`)]))}}),p=f;const m=[`aria-expanded`,`aria-controls`],h={class:`accordion-label`},g=[`id`,`aria-hidden`];var _=(0,u.defineComponent)({__name:`AccordionItem`,props:{label:{},id:{},open:{type:Boolean},iconType:{},iconPosition:{},flat:{type:Boolean},iconClass:{}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,i=(0,u.ref)(!!n.open),a=(0,u.computed)({get:()=>i.value,set:e=>{i.value=e,r(`update:open`,e)}}),o=(0,u.inject)(`accordionState`),s=n.id||Math.random().toString(36).slice(7),c=(0,u.computed)(()=>n.iconType===`plus_minus`?a.value?`remove`:`add`:`expand_more`),l=(0,u.computed)(()=>n.iconPosition||`end`);(0,u.watch)(()=>n.open,()=>a.value=n.open,{immediate:!0}),o&&(0,u.watch)(()=>o.openItem,e=>{e!==s&&(a.value=!1)},{immediate:!0});function d(){a.value=!a.value,o&&(a.value?o.openItem=s:o.openItem===s&&(o.openItem=void 0))}return(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{class:(0,u.normalizeClass)([`accordion-item txt-start`,[{flat:e.flat}]])},[(0,u.createElementVNode)(`button`,{"aria-expanded":(0,u.unref)(a)?`true`:`false`,class:`accordion-head`,"aria-controls":`accordion-body-${(0,u.unref)(s)}`,onClick:t[0]||=e=>d()},[l.value===`start`?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,{key:0,class:(0,u.normalizeClass)([`accordion-icon`,[e.iconClass,{open:(0,u.unref)(a)&&e.iconType===`expand_more`}]])},[(0,u.createVNode)((0,u.unref)($),{icon:c.value},null,8,[`icon`])],2)):(0,u.createCommentVNode)(``,!0),(0,u.renderSlot)(e.$slots,`head`,{},()=>[(0,u.createElementVNode)(`span`,h,(0,u.toDisplayString)(e.label),1)],!0),l.value===`end`?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,{key:1,class:(0,u.normalizeClass)([`accordion-icon`,[e.iconClass,{open:(0,u.unref)(a)&&e.iconType===`expand_more`}]])},[(0,u.createVNode)((0,u.unref)($),{icon:c.value},null,8,[`icon`])],2)):(0,u.createCommentVNode)(``,!0)],8,m),(0,u.createVNode)(u.Transition,{name:`expand`},{default:(0,u.withCtx)(()=>[(0,u.unref)(a)?((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:0,id:`accordion-body-${(0,u.unref)(s)}`,class:`accordion-body`,"aria-hidden":(0,u.unref)(a)?`false`:`true`},[(0,u.renderSlot)(e.$slots,`default`,{},void 0,!0)],8,g)):(0,u.createCommentVNode)(``,!0)]),_:3})],2))}}),v=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},y=v(_,[[`__scopeId`,`data-v-46e7dfbc`]]);const b={class:`relative`};var x=(0,u.defineComponent)({__name:`AddressSearch`,emits:[`addressSelected`],setup(e,{emit:t}){let n=t,r=(0,u.ref)(``),i=(0,u.ref)([]),a=(0,u.ref)();function o(e){n(`addressSelected`,e),i.value=[],r.value=``}async function s(){var e;let t=r.value.replaceAll(/\s+/g,`+`),n=`https://nominatim.openstreetmap.org/search?format=json&q=${encodeURI(t)}`,o=await fetch(n);i.value=await o.json()||[],(e=a.value)?.show()}return(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`div`,b,[(0,u.createVNode)((0,u.unref)(rs),{ref_key:`suggestion`,ref:a,noAutoFocus:!0,placement:`bottom-start`},{trigger:(0,u.withCtx)(()=>[(0,u.createVNode)((0,u.unref)(H),{modelValue:(0,u.unref)(r),"onUpdate:modelValue":t[0]||=e=>(0,u.isRef)(r)?r.value=e:r=e,placeholder:`Enter address`,onDebounce:s},null,8,[`modelValue`])]),default:(0,u.withCtx)(()=>[(0,u.createVNode)((0,u.unref)(dw),{class:`-mt-2 hm-300px`},{default:(0,u.withCtx)(()=>[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)((0,u.unref)(i),(e,t)=>((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(aw),{key:t,icon:`location_on`,title:e.display_name,onClick:t=>o(e)},null,8,[`title`,`onClick`]))),128))]),_:1})]),_:1},512)]))}}),S=x;const C={key:1,class:`bgl_btn-flex`};var w=(0,u.defineComponent)({__name:`Btn`,props:{disabled:{type:Boolean,default:!1},icon:{},iconEnd:{},iconSize:{},iconMobileSize:{},color:{},theme:{},flat:{type:Boolean},border:{type:Boolean,default:!1},outline:{type:Boolean,default:!1},thin:{type:Boolean},size:{},type:{default:`button`},loading:{type:Boolean,default:!1},role:{default:`button`},value:{},to:{},href:{},round:{type:Boolean,default:!1},is:{default:`button`},ripple:{type:Boolean,default:!0},fullWidth:{type:Boolean,default:!1},fullWidthMobile:{type:Boolean,default:!1},alignTxt:{default:`center`},alignTxtMobile:{default:`center`},onClick:{type:Function,default:()=>``},confirm:{type:[Boolean,String]}},emits:[`confirmed`],setup(e,{emit:t}){let n=e,r=t,i=(0,u.ref)(!1);function a(){i.value=window.innerWidth<=910}(0,u.onMounted)(()=>{a(),window.addEventListener(`resize`,a)}),(0,u.onUnmounted)(()=>{window.removeEventListener(`resize`,a)});async function o(e){if(n.confirm){let{confirmModal:t}=CD(),i=typeof n.confirm==`string`?n.confirm:`Are you sure?`,a=await t({title:`Confirm`,message:i});if(!a)return;n.onClick(e),r(`confirmed`,e)}else n.onClick(e)}let s=(0,u.computed)(()=>{if(n.iconSize!==void 0)return n.iconSize;let e={xs:.7,"extra-small":.7,s:.9,small:.9,m:1,medium:1,l:1.3,large:1.3,xl:1.6,"extra-large":1.6};return n.size&&e[n.size]?e[n.size]:i.value?1:1.2}),c=(0,u.computed)(()=>n.disabled?n.is:n.to?d.RouterLink:n.href?`a`:n.is),l=(0,u.computed)(()=>{let e={};return n.disabled||(n.to?e.to=n.to:n.href&&(e.href=n.href)),!n.to&&!n.href&&(e.role=n.role,e.type=n.type),e}),f=(0,u.useSlots)();return(e,t)=>{let n=(0,u.resolveDirective)(`ripple`);return(0,u.withDirectives)(((0,u.openBlock)(),(0,u.createBlock)((0,u.resolveDynamicComponent)(c.value),(0,u.mergeProps)(l.value,{disabled:e.disabled,class:[`bgl_btn`,{"bgl_btn-icon":e.icon&&!(0,u.unref)(f).default&&!e.value,thin:e.thin,bgl_btn_xsSize:e.size===`xs`||e.size===`extra-small`,bgl_btn_sSize:e.size===`s`||e.size===`small`,bgl_btn_mSize:e.size===`m`||e.size===`medium`,bgl_btn_lSize:e.size===`l`||e.size===`large`,bgl_btn_xlSize:e.size===`xl`||e.size===`extra-large`,bgl_btn_fullWidth:e.fullWidth,bgl_btn_fullWidthMobile:e.fullWidthMobile,bgl_btn_alignStart:e.alignTxt===`start`,bgl_btn_alignEnd:e.alignTxt===`end`,bgl_btn_alignStartMobile:e.alignTxtMobile===`start`,bgl_btn_alignEndMobile:e.alignTxtMobile===`end`,round:e.round,bgl_btn_flat:e.flat,"bgl_btn-border":e.border||e.outline,[`bgl_btn-${e.color}`]:e.color,[`bgl_btn-${e.theme}`]:e.theme}],tabindex:e.disabled?-1:0,onClick:(0,u.withModifiers)(o,[`stop`]),onKeydown:[(0,u.withKeys)(o,[`enter`]),(0,u.withKeys)(o,[`space`])]}),{default:(0,u.withCtx)(()=>[e.loading?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(_w),{key:0,class:`h-100p`,size:`15`})):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,C,[e.icon?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)($),{key:0,icon:e.icon,class:`transition-400`,size:s.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):(0,u.createCommentVNode)(``,!0),(0,u.renderSlot)(e.$slots,`default`,{},void 0,!0),!(0,u.unref)(f).default&&e.value?((0,u.openBlock)(),(0,u.createElementBlock)(u.Fragment,{key:1},[(0,u.createTextVNode)((0,u.toDisplayString)(e.value),1)],64)):(0,u.createCommentVNode)(``,!0),e.iconEnd?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)($),{key:2,icon:e.iconEnd,class:`transition-400`,size:s.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):(0,u.createCommentVNode)(``,!0)]))]),_:3},16,[`disabled`,`class`,`tabindex`])),[[n,e.ripple]])}}}),T=v(w,[[`__scopeId`,`data-v-ce661abc`]]);const E=[`dismissable`],D={class:`m-0`};var O=(0,u.defineComponent)({__name:`Alert`,props:{message:{},thin:{type:Boolean},outline:{type:Boolean},dismissable:{type:Boolean},type:{default:`info`},icon:{}},setup(e){let t=(0,u.ref)(!1),n={info:`var(--bgl-primary)`,warning:`var(--bgl-yellow)`,error:`var(--bgl-red)`};return(e,r)=>t.value?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:0,class:(0,u.normalizeClass)([`alert`,[e.type,{thin:e.thin,outline:e.outline}]]),dismissable:e.dismissable},[e.icon===`none`?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)($),{key:0,class:`alert_icon`,icon:e.icon||e.type,size:1.7,color:n[e.type]},null,8,[`icon`,`color`])),(0,u.renderSlot)(e.$slots,`default`,{},()=>[(0,u.createElementVNode)(`p`,D,(0,u.toDisplayString)(e.message),1)],!0),(0,u.createVNode)(T,{flat:``,thin:``,class:`alert_close`,icon:`close`,onClick:r[0]||=e=>t.value=!0})],10,E))}}),k=v(O,[[`__scopeId`,`data-v-02bbea09`]]);const A={class:`flex space-between pb-1`},j={class:`flex align-center gap-05`},M={class:`white-space light m_txt14`},N={key:0,class:`flex align-center gap-025`},P={key:0,class:`absolute inset flex justify-content-center rounded`};var F=(0,u.defineComponent)({__name:`BarChart`,props:{title:{},data:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{type:Boolean,default:!1},maxBars:{default:30},loading:{type:Boolean,default:!1},rtl:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0}},setup(e){let t=e,n=(0,u.ref)(0),r=(0,u.ref)(!1),i=(0,u.ref)(!1),a=(0,u.ref)(null),o=(0,u.ref)(null),s=(0,u.computed)(()=>{if(!t.data||t.data.length===0)return[];let e=Math.max(...t.data.map(e=>e.value),1);return t.data.map(t=>({...t,height:Math.max(t.value/e*100,2),displayLabel:p(t.date)}))}),c=(0,u.computed)(()=>e=>{if(!t.animated)return 1;if(!i.value)return 0;let r=s.value.length,a=e/r,o=Math.max(0,Math.min(1,(n.value-a)*r));return o});function l(e){return 1-(1-e)**3}function d(){if(r.value||!t.animated)return;console.log(`🎯 TrendChart: Starting animation with ${t.animationDuration}ms duration`),r.value=!0,n.value=0;let e=performance.now();function i(a){let o=a-e,s=Math.min(o/t.animationDuration,1),c=l(s);n.value=c,s<1?requestAnimationFrame(i):(r.value=!1,console.log(`✅ TrendChart: Animation completed`))}requestAnimationFrame(i)}function f(){!o.value||a.value||(a.value=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!i.value&&(console.log(`👀 TrendChart: Entered viewport, starting animation in ${t.animationStartDelay}ms`),i.value=!0,setTimeout(()=>{d()},t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),a.value.observe(o.value))}(0,u.onMounted)(()=>{t.animated?f():(i.value=!0,n.value=1)}),(0,u.onUnmounted)(()=>{a.value&&a.value.disconnect()});function p(e){let t=new Date(e);return t.toLocaleDateString(`he-IL`,{month:`short`,day:`numeric`})}function m(e,t=!1){return t?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function h(e){let n=m(e.value,t.currency),r=`${t.prefix}${n}${t.suffix}`,i=[`${e.displayLabel}`,`<b>${r}</b>`];return e.secondaryValues&&Array.isArray(e.secondaryValues)&&e.secondaryValues.forEach(e=>{let t=m(e.value,e.currency||!1),n=`${e.prefix||``}${t}${e.suffix||``}`;i.push(`${e.label}: <b>${n}</b>`)}),`<div class="trendTooltip">${i.join(`<p>`)}</div>`}return(e,t)=>{let n=(0,u.resolveDirective)(`tooltip`);return(0,u.openBlock)(),(0,u.createElementBlock)(`div`,{ref_key:`chartRef`,ref:o,class:`h-100p flex column flex-stretch`},[(0,u.createElementVNode)(`div`,A,[(0,u.createElementVNode)(`div`,j,[(0,u.createVNode)((0,u.unref)($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),(0,u.createElementVNode)(`p`,M,(0,u.toDisplayString)(e.title),1)]),e.percentageChange===0?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,N,[(0,u.createVNode)((0,u.unref)($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:(0,u.normalizeClass)(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),(0,u.createElementVNode)(`span`,{class:(0,u.normalizeClass)([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},(0,u.toDisplayString)(Math.abs(e.percentageChange))+`% `,3)]))]),(0,u.createElementVNode)(`div`,{class:(0,u.normalizeClass)([`flex w-100p align-items-end mt-auto gap-075 overflow justify-content-start`,[e.rtl?`rtl`:`ltr`]])},[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(s.value,(t,r)=>(0,u.withDirectives)(((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:r,class:`flex-grow txt-center hover transition-400 relative barWrap mb-1`,style:(0,u.normalizeStyle)({width:`max(2rem, ${100/s.value.length}%)`,opacity:c.value(r),transition:e.animated?`opacity 0.3s ease-out`:`none`})},[(0,u.createElementVNode)(`div`,{class:`bar radius-05 transition-400`,style:(0,u.normalizeStyle)({height:`${t.height*1.8}px`,background:`linear-gradient(180deg, ${e.color}60, ${e.color}30)`,minHeight:`4px`})},null,4),s.value.length<=15||r%Math.ceil(s.value.length/8)===0?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,{key:0,class:(0,u.normalizeClass)([`txt-9 block line-height-1 -bottom-075 white-space color-gray absolute`,e.rtl?`rtl`:`ltr`])},(0,u.toDisplayString)(t.displayLabel),3)):(0,u.createCommentVNode)(``,!0)],4)),[[n,{content:h(t),html:!0}]])),128))],2),e.loading?((0,u.openBlock)(),(0,u.createElementBlock)(`div`,P,[e.loading?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(_w),{key:0})):(0,u.createCommentVNode)(``,!0)])):(0,u.createCommentVNode)(``,!0)],512)}}}),I=F;const ee={class:`flex space-between pb-1`},L={class:`flex align-center gap-05`},R={class:`white-space light m_txt14`},te={key:0,class:`flex align-center gap-025`},ne={class:`chart-container flex-grow w-100p relative`},re=[`width`,`height`],z={class:`grid`},B=[`x1`,`y1`,`x2`,`y2`],ie=[`x`,`y`,`text-anchor`],ae=[`x1`,`y1`,`x2`,`y2`],oe=[`x1`,`y1`,`x2`,`y2`],se=[`d`,`stroke`],ce={key:0},le=[`cx`,`cy`,`fill`],ue={class:`x-labels`},de=[`x`,`y`];var fe=(0,u.defineComponent)({__name:`LineChart`,props:{data:{},title:{default:`Line Chart`},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},height:{default:200},showPoints:{type:Boolean,default:!0},currency:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0},percentageChange:{default:0}},setup(e){let t=e,n=(0,u.ref)(),r=(0,u.ref)(),i=(0,u.ref)(600),a=(0,u.ref)(t.height),o=(0,u.ref)(0),s=(0,u.ref)(!1),c=(0,u.ref)(!1),l=null,d={top:20,inline_end:30,bottom:25,inline_start:60},f=(0,u.computed)(()=>i.value-d.inline_start-d.inline_end),p=(0,u.computed)(()=>a.value-d.top-d.bottom),m=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?d.inline_end:d.inline_start}),h=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?m.value+f.value+10:m.value-10}),g=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?`start`:`end`}),_=(0,u.computed)(()=>Math.max(...t.data.map(e=>e.value),0)),v=(0,u.computed)(()=>Math.min(...t.data.map(e=>e.value),0)),y=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`,n=t.data.length-1;return t=>{let r=t/n*f.value;return e?f.value-r:r}}),b=(0,u.computed)(()=>{let e=_.value-v.value||1;return t=>p.value-(t-v.value)/e*p.value}),x=(0,u.computed)(()=>{if(t.data.length===0)return``;let e=t.data.length,n=t.animated?Math.ceil(e*o.value):e,r=t.data.slice(0,Math.max(1,n)),i=r.map((e,t)=>`${t===0?`M`:`L`} ${m.value+y.value(t)} ${d.top+b.value(e.value)}`).join(` `);return i}),S=(0,u.computed)(()=>{if(!t.animated)return t.data;let e=t.data.length,n=Math.ceil(e*o.value);return t.data.slice(0,Math.max(1,n))}),C=(0,u.computed)(()=>{let e=[],t=p.value/4;for(let n=0;n<=4;n++){let r=n*t,i=_.value-n/4*(_.value-v.value);e.push({y:r,value:i})}return e});function w(e){return t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function T(e){let t=new Date(e);return t.toLocaleDateString(`he-IL`,{month:`short`,day:`numeric`})}function E(e){let t=[`${T(e.date)}`,`<b>${w(e.value)}</b>`];return e.label&&t.push(`<b>${e.label}</b>`),`<div class="lineTooltip">${t.join(`<p>`)}</div>`}let D=()=>{typeof window>`u`||(l=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!c.value&&(c.value=!0,setTimeout(()=>{O()},100+t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),r.value?l.observe(r.value):setTimeout(()=>{r.value&&l&&l.observe(r.value)},100))},O=()=>{console.log(`Starting LineChart animation for "${t.title}" (duration: ${t.animationDuration}ms, start delay: ${t.animationStartDelay}ms)`),s.value=!0,o.value=0;let e=Date.now(),n=()=>{let r=Date.now()-e,i=Math.min(r/t.animationDuration,1);o.value=k(i),i<1?requestAnimationFrame(n):(s.value=!1,console.log(`LineChart animation completed for "${t.title}"`))};requestAnimationFrame(n)},k=e=>1-(1-e)**3;return(0,u.onMounted)(()=>{n.value&&(i.value=n.value.clientWidth||600),t.animated?D():o.value=1}),(0,u.onUnmounted)(()=>{l&&l.disconnect()}),(e,t)=>{let o=(0,u.resolveDirective)(`tooltip`);return(0,u.openBlock)(),(0,u.createElementBlock)(`div`,{ref_key:`chartRef`,ref:r,class:`line-chart h-100p flex column flex-stretch`},[(0,u.createElementVNode)(`div`,ee,[(0,u.createElementVNode)(`div`,L,[(0,u.createVNode)((0,u.unref)($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),(0,u.createElementVNode)(`p`,R,(0,u.toDisplayString)(e.title),1)]),e.percentageChange===0?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,te,[(0,u.createVNode)((0,u.unref)($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:(0,u.normalizeClass)(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),(0,u.createElementVNode)(`span`,{class:(0,u.normalizeClass)([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},(0,u.toDisplayString)(Math.abs(e.percentageChange))+`% `,3)]))]),(0,u.createElementVNode)(`div`,ne,[((0,u.openBlock)(),(0,u.createElementBlock)(`svg`,{ref_key:`svgRef`,ref:n,width:i.value,height:a.value,class:`chart-svg h-100p w-100p`},[(0,u.createElementVNode)(`g`,z,[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(C.value,e=>((0,u.openBlock)(),(0,u.createElementBlock)(`line`,{key:e.y,x1:m.value,y1:d.top+e.y,x2:m.value+f.value,y2:d.top+e.y,stroke:`#e0e0e0`,"stroke-width":`1`},null,8,B))),128)),((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(C.value,e=>((0,u.openBlock)(),(0,u.createElementBlock)(`text`,{key:`label-${e.y}`,x:h.value,y:d.top+e.y+4,class:`grid-label`,"text-anchor":g.value},(0,u.toDisplayString)(w(e.value)),9,ie))),128))]),(0,u.createElementVNode)(`line`,{x1:m.value,y1:d.top+p.value,x2:m.value+f.value,y2:d.top+p.value,stroke:`#ccc`,"stroke-width":`2`},null,8,ae),(0,u.createElementVNode)(`line`,{x1:m.value,y1:d.top,x2:m.value,y2:d.top+p.value,stroke:`#ccc`,"stroke-width":`2`},null,8,oe),(0,u.createElementVNode)(`path`,{d:x.value,stroke:e.color,"stroke-width":`3`,fill:`none`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,se),e.showPoints?((0,u.openBlock)(),(0,u.createElementBlock)(`g`,ce,[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(S.value,(t,n)=>(0,u.withDirectives)(((0,u.openBlock)(),(0,u.createElementBlock)(`circle`,{key:n,cx:m.value+y.value(n),cy:d.top+b.value(t.value),r:`4`,fill:e.color,class:`data-point`},null,8,le)),[[o,{content:E(t),html:!0}]])),128))])):(0,u.createCommentVNode)(``,!0),(0,u.createElementVNode)(`g`,ue,[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(S.value.filter((e,t)=>t%Math.ceil(S.value.length/6)===0),(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`text`,{key:t,x:m.value+y.value(S.value.findIndex(t=>t===e)),y:d.top+p.value+15,class:`axis-label`,"text-anchor":`middle`},(0,u.toDisplayString)(T(e.date)),9,de))),128))])],8,re))])],512)}}}),pe=v(fe,[[`__scopeId`,`data-v-ceb26ffc`]]);const me={class:`mb-1 flex space-between align-items-start m_mb-05 w-100p`},he={class:`flex gap-025`},ge={class:`txt14 m-0 line-height-12 light opacity-6`},_e={key:0,class:`txt12 color-gray`},ve={class:`flex`},ye={key:0,class:`kpi-prefix txt16 semi color-gray`},be={class:`kpi-main-value bold txt28 m_txt24 line-height-1`},xe={key:1,class:`kpi-suffix txt16 semi color-gray`};var Se=(0,u.defineComponent)({__name:`KpiCard`,props:{title:{},value:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{},loading:{type:Boolean,default:!1},subtitle:{default:``}},setup(e){let t=e,n=(0,u.computed)(()=>t.percentageChange>=0),r=(0,u.computed)(()=>typeof t.value==`string`?t.value:t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:t.currency,minimumFractionDigits:0}).format(t.value):t.value.toLocaleString()),i=(0,u.computed)(()=>n.value?`var(--bgl-green)`:`var(--bgl-red)`);return(e,t)=>((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(fr),{class:`flex column space-between align-items-start py-1 px-1-5 m_p-1 relative`},{default:(0,u.withCtx)(()=>[(0,u.createElementVNode)(`div`,me,[(0,u.createElementVNode)(`div`,he,[(0,u.createVNode)((0,u.unref)($),{name:e.icon,size:`1`,color:e.color,class:`line-height-0`,weight:`300`},null,8,[`name`,`color`]),(0,u.createElementVNode)(`div`,null,[(0,u.createElementVNode)(`h3`,ge,(0,u.toDisplayString)(e.title),1),e.subtitle?((0,u.openBlock)(),(0,u.createElementBlock)(`p`,_e,(0,u.toDisplayString)(e.subtitle),1)):(0,u.createCommentVNode)(``,!0)])]),e.percentageChange===0?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:0,class:`kpi-trend flex gap-025 txt12 bold ms-auto`,style:(0,u.normalizeStyle)({color:i.value})},[(0,u.createVNode)((0,u.unref)($),{name:n.value?`trending_up`:`trending_down`},null,8,[`name`]),(0,u.createElementVNode)(`span`,null,(0,u.toDisplayString)(Math.abs(e.percentageChange).toFixed(1))+`%`,1)],4))]),(0,u.createElementVNode)(`div`,ve,[(0,u.createElementVNode)(`div`,{class:(0,u.normalizeClass)([`flex align-items-baseline gap-025 w100p`,{loading:e.loading}])},[e.prefix?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,ye,(0,u.toDisplayString)(e.prefix),1)):(0,u.createCommentVNode)(``,!0),(0,u.createElementVNode)(`span`,be,(0,u.toDisplayString)(e.loading?`...`:r.value),1),e.suffix?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,xe,(0,u.toDisplayString)(e.suffix),1)):(0,u.createCommentVNode)(``,!0)],2)])]),_:1}))}}),Ce=v(Se,[[`__scopeId`,`data-v-3883b5a7`]]);const we={class:`flex space-between pb-1`},Te={class:`flex align-center gap-05`},Ee={class:`white-space light m_txt14`},De={key:0,class:`flex align-center gap-025`},Oe=[`width`,`height`],ke=[`transform`],Ae=[`d`,`fill`],je={key:0,class:`center-text`},Me={x:`0`,y:`-8`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-label txt12 opacity-7`},Ne={x:`0`,y:`12`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-value txt20 bold`},Pe={key:1,class:`connector-lines`},Fe=[`points`],Ie={key:2,class:`chart-labels`},Le={key:0},Re=[`x`,`y`,`fill`],ze=[`x`,`y`,`fill`],Be=[`x`,`y`,`text-anchor`,`fill`],Ve=[`x`,`y`,`text-anchor`],He=[`x`,`y`,`text-anchor`],Ue={key:0,class:`legend mx-auto display-flex column gap-05 min-w-100px`},We={key:0,class:`flex-shrink-1 flex-grow-1`},Ge={class:`bold`},Ke={class:`opacity-6 txt12`};var qe=(0,u.defineComponent)({__name:`PieChart`,props:{data:{},title:{default:`Pie Chart`},icon:{default:`bx-pie-chart-alt`},color:{default:`#3B82F6`},colors:{},size:{default:200},showLegend:{type:Boolean,default:!0},donut:{type:Boolean,default:!1},thickness:{default:.6},centerLabel:{default:`Total`},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationDelay:{default:200},animationStartDelay:{default:0},centerValue:{},showCenterTotal:{type:Boolean,default:!0},percentageChange:{default:0},showLabelsOnChart:{type:Boolean,default:!1},showConnectorLines:{type:Boolean,default:!1},labelColor:{default:`#333`}},setup(e,{expose:t}){let n=e,r=(0,u.computed)(()=>{if(n.colors&&n.colors.length>0)return n.colors;let e=n.color,t=[1,.8,.6,.4,.85,.7,.5,.3,.9,.75];return t.map(t=>{let n=e.replace(`#`,``),r=parseInt(n.substr(0,2),16),i=parseInt(n.substr(2,2),16),a=parseInt(n.substr(4,2),16);return`rgba(${r}, ${i}, ${a}, ${t})`})}),i=(0,u.ref)(0),a=(0,u.ref)(!1),o=(0,u.ref)(),s=(0,u.ref)(!1);(0,u.onMounted)(()=>{n.animated?l():i.value=1}),(0,u.onUnmounted)(()=>{c&&c.disconnect()});let c=null,l=()=>{typeof window>`u`||(c=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!s.value&&(s.value=!0,setTimeout(()=>{d()},100+n.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),o.value?c.observe(o.value):setTimeout(()=>{o.value&&c&&c.observe(o.value)},100))},d=()=>{let e=n.animationDelay>0?`staggered with delay`:`quick stagger`;console.log(`Starting animation for "${n.title}" - ${e} mode (duration: ${n.animationDuration}ms, start delay: ${n.animationStartDelay}ms)`),a.value=!0,i.value=0;let t=Date.now(),r=()=>{let e=Date.now()-t,o=Math.min(e/n.animationDuration,1);i.value=f(o),o<1?requestAnimationFrame(r):(a.value=!1,console.log(`Animation completed`))};requestAnimationFrame(r)},f=e=>1-(1-e)**3,p=()=>{n.animated&&d()};t({restartAnimation:p});let m=(0,u.computed)(()=>n.showConnectorLines?{width:n.size+200,height:n.size+100}:{width:n.size,height:n.size}),h=(0,u.computed)(()=>n.showConnectorLines?{x:m.value.width/2-10,y:m.value.height/2}:{x:n.size/2,y:n.size/2}),g=(0,u.computed)(()=>n.data.reduce((e,t)=>e+t.value,0)),_=e=>{let t=(e.startAngle+e.endAngle)/2,r=t*Math.PI/180,i=n.size/2-10,a=n.donut?i*.8:i*.7;return{x:Math.cos(r)*a,y:Math.sin(r)*a}},v=e=>{let t=(e.startAngle+e.endAngle)/2,r=t*Math.PI/180,i=n.size/2-10,a=n.donut?i*n.thickness:i*.5,o=i+15,s=Math.cos(r)*a,c=Math.sin(r)*a,l=Math.cos(r)*o,u=Math.sin(r)*o,d=l+(l>0?8:-8),f=u;return{innerX:s,innerY:c,outerX:l,outerY:u,labelX:d,labelY:f,textAnchor:l>0?`start`:`end`}},y=(0,u.computed)(()=>n.centerValue===void 0?n.showCenterTotal?g.value:0:n.centerValue),b=(0,u.computed)(()=>{let e=0;return n.data.map((t,a)=>{let o=t.value/g.value,s=o*360,c=e,l=e+s;e+=s;let u=100,d=n.animationDelay>0?u+a*n.animationDelay:u+a*50,f=i.value*n.animationDuration,p=!n.animated||f>=d;if(n.animated&&a===0&&console.log(`Animation progress: ${(i.value*100).toFixed(1)}%, elapsed: ${f.toFixed(0)}ms`),p)a<3&&console.log(`Segment ${a} visible! - delay: ${d}ms, elapsed: ${f.toFixed(0)}ms`);else return a<3&&console.log(`Segment ${a} waiting - needs ${d}ms, current: ${f.toFixed(0)}ms`),{...t,percentage:o,angle:0,startAngle:c,endAngle:c,path:``,color:t.color||r.value[a%r.value.length],visible:!1};let m=c*Math.PI/180,h=l*Math.PI/180,_=n.size/2-10,v=n.donut?_*n.thickness:0,y=l-c,b=y>180?1:0,C=n.donut?S(m,h,_,v,b):x(m,h,_,b);return{...t,percentage:o,angle:y,startAngle:c,endAngle:l,path:C,color:t.color||r.value[a%r.value.length],visible:!0}})});function x(e,t,n,r){let i=Math.cos(e)*n,a=Math.sin(e)*n,o=Math.cos(t)*n,s=Math.sin(t)*n;return`M 0 0 L ${i} ${a} A ${n} ${n} 0 ${r} 1 ${o} ${s} Z`}function S(e,t,n,r,i){let a=Math.cos(e)*n,o=Math.sin(e)*n,s=Math.cos(t)*n,c=Math.sin(t)*n,l=Math.cos(e)*r,u=Math.sin(e)*r,d=Math.cos(t)*r,f=Math.sin(t)*r;return`M ${a} ${o} A ${n} ${n} 0 ${i} 1 ${s} ${c} L ${d} ${f} A ${r} ${r} 0 ${i} 0 ${l} ${u} Z`}function C(e){return e.toLocaleString()}function w(e){return`${(e*100).toFixed(1)}%`}function T(e){return`<div class="pieTooltip">
1
+ var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({}),t=Object.create,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=Object.getOwnPropertyNames,a=Object.getPrototypeOf,o=Object.prototype.hasOwnProperty,s=(e,t)=>{for(var r in t)n(e,r,{get:t[r],enumerable:!0})},c=(e,t,a,s)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var c=i(t),l=0,u=c.length,d;l<u;l++)d=c[l],!o.call(e,d)&&d!==a&&n(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(s=r(t,d))||s.enumerable});return e},l=(e,r,i)=>(i=e==null?{}:t(a(e)),c(r||!e||!e.__esModule?n(i,`default`,{value:e,enumerable:!0}):i,e));const u=l(require(`vue`)),d=l(require(`vue-router`));var f=(0,u.defineComponent)({__name:`Accordion`,setup(e){let t=(0,u.reactive)({openItem:void 0});return(0,u.provide)(`accordionState`,t),(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`div`,null,[(0,u.renderSlot)(e.$slots,`default`)]))}}),p=f;const m=[`aria-expanded`,`aria-controls`],h={class:`accordion-label`},g=[`id`,`aria-hidden`];var _=(0,u.defineComponent)({__name:`AccordionItem`,props:{label:{},id:{},open:{type:Boolean},iconType:{},iconPosition:{},flat:{type:Boolean},iconClass:{}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,i=(0,u.ref)(!!n.open),a=(0,u.computed)({get:()=>i.value,set:e=>{i.value=e,r(`update:open`,e)}}),o=(0,u.inject)(`accordionState`),s=n.id||Math.random().toString(36).slice(7),c=(0,u.computed)(()=>n.iconType===`plus_minus`?a.value?`remove`:`add`:`expand_more`),l=(0,u.computed)(()=>n.iconPosition||`end`);(0,u.watch)(()=>n.open,()=>a.value=n.open,{immediate:!0}),o&&(0,u.watch)(()=>o.openItem,e=>{e!==s&&(a.value=!1)},{immediate:!0});function d(){a.value=!a.value,o&&(a.value?o.openItem=s:o.openItem===s&&(o.openItem=void 0))}return(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{class:(0,u.normalizeClass)([`accordion-item txt-start`,[{flat:e.flat}]])},[(0,u.createElementVNode)(`button`,{"aria-expanded":(0,u.unref)(a)?`true`:`false`,class:`accordion-head`,"aria-controls":`accordion-body-${(0,u.unref)(s)}`,onClick:t[0]||=e=>d()},[l.value===`start`?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,{key:0,class:(0,u.normalizeClass)([`accordion-icon`,[e.iconClass,{open:(0,u.unref)(a)&&e.iconType===`expand_more`}]])},[(0,u.createVNode)((0,u.unref)($),{icon:c.value},null,8,[`icon`])],2)):(0,u.createCommentVNode)(``,!0),(0,u.renderSlot)(e.$slots,`head`,{},()=>[(0,u.createElementVNode)(`span`,h,(0,u.toDisplayString)(e.label),1)],!0),l.value===`end`?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,{key:1,class:(0,u.normalizeClass)([`accordion-icon`,[e.iconClass,{open:(0,u.unref)(a)&&e.iconType===`expand_more`}]])},[(0,u.createVNode)((0,u.unref)($),{icon:c.value},null,8,[`icon`])],2)):(0,u.createCommentVNode)(``,!0)],8,m),(0,u.createVNode)(u.Transition,{name:`expand`},{default:(0,u.withCtx)(()=>[(0,u.unref)(a)?((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:0,id:`accordion-body-${(0,u.unref)(s)}`,class:`accordion-body`,"aria-hidden":(0,u.unref)(a)?`false`:`true`},[(0,u.renderSlot)(e.$slots,`default`,{},void 0,!0)],8,g)):(0,u.createCommentVNode)(``,!0)]),_:3})],2))}}),v=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},y=v(_,[[`__scopeId`,`data-v-46e7dfbc`]]);const b={class:`relative`};var x=(0,u.defineComponent)({__name:`AddressSearch`,emits:[`addressSelected`],setup(e,{emit:t}){let n=t,r=(0,u.ref)(``),i=(0,u.ref)([]),a=(0,u.ref)();function o(e){n(`addressSelected`,e),i.value=[],r.value=``}async function s(){var e;let t=r.value.replaceAll(/\s+/g,`+`),n=`https://nominatim.openstreetmap.org/search?format=json&q=${encodeURI(t)}`,o=await fetch(n);i.value=await o.json()||[],(e=a.value)?.show()}return(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`div`,b,[(0,u.createVNode)((0,u.unref)(rs),{ref_key:`suggestion`,ref:a,noAutoFocus:!0,placement:`bottom-start`},{trigger:(0,u.withCtx)(()=>[(0,u.createVNode)((0,u.unref)(H),{modelValue:(0,u.unref)(r),"onUpdate:modelValue":t[0]||=e=>(0,u.isRef)(r)?r.value=e:r=e,placeholder:`Enter address`,onDebounce:s},null,8,[`modelValue`])]),default:(0,u.withCtx)(()=>[(0,u.createVNode)((0,u.unref)(dw),{class:`-mt-2 hm-300px`},{default:(0,u.withCtx)(()=>[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)((0,u.unref)(i),(e,t)=>((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(aw),{key:t,icon:`location_on`,title:e.display_name,onClick:t=>o(e)},null,8,[`title`,`onClick`]))),128))]),_:1})]),_:1},512)]))}}),S=x;const C={key:1,class:`bgl_btn-flex`};var w=(0,u.defineComponent)({__name:`Btn`,props:{disabled:{type:Boolean,default:!1},icon:{},iconEnd:{},iconSize:{},iconMobileSize:{},color:{},theme:{},flat:{type:Boolean},border:{type:Boolean,default:!1},outline:{type:Boolean,default:!1},thin:{type:Boolean},size:{},type:{default:`button`},loading:{type:Boolean,default:!1},role:{default:`button`},value:{},to:{},href:{},round:{type:Boolean,default:!1},is:{default:`button`},ripple:{type:Boolean,default:!0},fullWidth:{type:Boolean,default:!1},fullWidthMobile:{type:Boolean,default:!1},alignTxt:{default:`center`},alignTxtMobile:{default:`center`},onClick:{type:Function,default:()=>``},confirm:{type:[Boolean,String]}},emits:[`confirmed`],setup(e,{emit:t}){let n=e,r=t,i=(0,u.ref)(!1);function a(){i.value=window.innerWidth<=910}(0,u.onMounted)(()=>{a(),window.addEventListener(`resize`,a)}),(0,u.onUnmounted)(()=>{window.removeEventListener(`resize`,a)});async function o(e){if(n.confirm){let{confirmModal:t}=CD(),i=typeof n.confirm==`string`?n.confirm:`Are you sure?`,a=await t({title:`Confirm`,message:i});if(!a)return;n.onClick(e),r(`confirmed`,e)}else n.onClick(e)}let s=(0,u.computed)(()=>{if(n.iconSize!==void 0)return n.iconSize;let e={xs:.7,"extra-small":.7,s:.9,small:.9,m:1,medium:1,l:1.3,large:1.3,xl:1.6,"extra-large":1.6};return n.size&&e[n.size]?e[n.size]:i.value?1:1.2}),c=(0,u.computed)(()=>n.disabled?n.is:n.to?d.RouterLink:n.href?`a`:n.is),l=(0,u.computed)(()=>{let e={};return n.disabled||(n.to?e.to=n.to:n.href&&(e.href=n.href)),!n.to&&!n.href&&(e.role=n.role,e.type=n.type),e}),f=(0,u.useSlots)();return(e,t)=>{let n=(0,u.resolveDirective)(`ripple`);return(0,u.withDirectives)(((0,u.openBlock)(),(0,u.createBlock)((0,u.resolveDynamicComponent)(c.value),(0,u.mergeProps)(l.value,{disabled:e.disabled,class:[`bgl_btn`,{"bgl_btn-icon":e.icon&&!(0,u.unref)(f).default&&!e.value,thin:e.thin,bgl_btn_xsSize:e.size===`xs`||e.size===`extra-small`,bgl_btn_sSize:e.size===`s`||e.size===`small`,bgl_btn_mSize:e.size===`m`||e.size===`medium`,bgl_btn_lSize:e.size===`l`||e.size===`large`,bgl_btn_xlSize:e.size===`xl`||e.size===`extra-large`,bgl_btn_fullWidth:e.fullWidth,bgl_btn_fullWidthMobile:e.fullWidthMobile,bgl_btn_alignStart:e.alignTxt===`start`,bgl_btn_alignEnd:e.alignTxt===`end`,bgl_btn_alignStartMobile:e.alignTxtMobile===`start`,bgl_btn_alignEndMobile:e.alignTxtMobile===`end`,round:e.round,bgl_btn_flat:e.flat,"bgl_btn-border":e.border||e.outline,[`bgl_btn-${e.color}`]:e.color,[`bgl_btn-${e.theme}`]:e.theme}],tabindex:e.disabled?-1:0,onClick:(0,u.withModifiers)(o,[`stop`]),onKeydown:[(0,u.withKeys)(o,[`enter`]),(0,u.withKeys)(o,[`space`])]}),{default:(0,u.withCtx)(()=>[e.loading?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(_w),{key:0,class:`h-100p`,size:`15`})):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,C,[e.icon?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)($),{key:0,icon:e.icon,class:`transition-400`,size:s.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):(0,u.createCommentVNode)(``,!0),(0,u.renderSlot)(e.$slots,`default`,{},void 0,!0),!(0,u.unref)(f).default&&e.value?((0,u.openBlock)(),(0,u.createElementBlock)(u.Fragment,{key:1},[(0,u.createTextVNode)((0,u.toDisplayString)(e.value),1)],64)):(0,u.createCommentVNode)(``,!0),e.iconEnd?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)($),{key:2,icon:e.iconEnd,class:`transition-400`,size:s.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):(0,u.createCommentVNode)(``,!0)]))]),_:3},16,[`disabled`,`class`,`tabindex`])),[[n,e.ripple]])}}}),T=v(w,[[`__scopeId`,`data-v-ce661abc`]]);const E=[`dismissable`],D={class:`m-0`};var O=(0,u.defineComponent)({__name:`Alert`,props:{message:{},thin:{type:Boolean},outline:{type:Boolean},dismissable:{type:Boolean},type:{default:`info`},icon:{}},setup(e){let t=(0,u.ref)(!1),n={info:`var(--bgl-primary)`,warning:`var(--bgl-yellow)`,error:`var(--bgl-red)`};return(e,r)=>t.value?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:0,class:(0,u.normalizeClass)([`alert`,[e.type,{thin:e.thin,outline:e.outline}]]),dismissable:e.dismissable},[e.icon===`none`?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)($),{key:0,class:`alert_icon`,icon:e.icon||e.type,size:1.7,color:n[e.type]},null,8,[`icon`,`color`])),(0,u.renderSlot)(e.$slots,`default`,{},()=>[(0,u.createElementVNode)(`p`,D,(0,u.toDisplayString)(e.message),1)],!0),(0,u.createVNode)(T,{flat:``,thin:``,class:`alert_close`,icon:`close`,onClick:r[0]||=e=>t.value=!0})],10,E))}}),k=v(O,[[`__scopeId`,`data-v-02bbea09`]]);const A={class:`flex space-between pb-1`},j={class:`flex align-center gap-05`},M={class:`white-space light m_txt14`},N={key:0,class:`flex align-center gap-025`},P={key:0,class:`absolute inset flex justify-content-center rounded`};var F=(0,u.defineComponent)({__name:`BarChart`,props:{title:{},data:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{type:Boolean,default:!1},maxBars:{default:30},loading:{type:Boolean,default:!1},rtl:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0}},setup(e){let t=e,n=(0,u.ref)(0),r=(0,u.ref)(!1),i=(0,u.ref)(!1),a=(0,u.ref)(null),o=(0,u.ref)(null),s=(0,u.computed)(()=>{if(!t.data||t.data.length===0)return[];let e=Math.max(...t.data.map(e=>e.value),1);return t.data.map(t=>({...t,height:Math.max(t.value/e*100,2),displayLabel:ID(t.date,`MMM`)}))}),c=(0,u.computed)(()=>e=>{if(!t.animated)return 1;if(!i.value)return 0;let r=s.value.length,a=e/r,o=Math.max(0,Math.min(1,(n.value-a)*r));return o});function l(e){return 1-(1-e)**3}function d(){if(r.value||!t.animated)return;console.log(`🎯 TrendChart: Starting animation with ${t.animationDuration}ms duration`),r.value=!0,n.value=0;let e=performance.now();function i(a){let o=a-e,s=Math.min(o/t.animationDuration,1),c=l(s);n.value=c,s<1?requestAnimationFrame(i):(r.value=!1,console.log(`✅ TrendChart: Animation completed`))}requestAnimationFrame(i)}function f(){!o.value||a.value||(a.value=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!i.value&&(console.log(`👀 TrendChart: Entered viewport, starting animation in ${t.animationStartDelay}ms`),i.value=!0,setTimeout(()=>{d()},t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),a.value.observe(o.value))}(0,u.onMounted)(()=>{t.animated?f():(i.value=!0,n.value=1)}),(0,u.onUnmounted)(()=>{a.value&&a.value.disconnect()});function p(e,t=!1){return t?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function m(e){let n=p(e.value,t.currency),r=`${t.prefix}${n}${t.suffix}`,i=[`${e.displayLabel}`,`<b>${r}</b>`];return e.secondaryValues&&Array.isArray(e.secondaryValues)&&e.secondaryValues.forEach(e=>{let t=p(e.value,e.currency||!1),n=`${e.prefix||``}${t}${e.suffix||``}`;i.push(`${e.label}: <b>${n}</b>`)}),`<div class="trendTooltip">${i.join(`<p>`)}</div>`}return(e,t)=>{let n=(0,u.resolveDirective)(`tooltip`);return(0,u.openBlock)(),(0,u.createElementBlock)(`div`,{ref_key:`chartRef`,ref:o,class:`h-100p flex column flex-stretch`},[(0,u.createElementVNode)(`div`,A,[(0,u.createElementVNode)(`div`,j,[(0,u.createVNode)((0,u.unref)($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),(0,u.createElementVNode)(`p`,M,(0,u.toDisplayString)(e.title),1)]),e.percentageChange===0?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,N,[(0,u.createVNode)((0,u.unref)($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:(0,u.normalizeClass)(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),(0,u.createElementVNode)(`span`,{class:(0,u.normalizeClass)([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},(0,u.toDisplayString)(Math.abs(e.percentageChange))+`% `,3)]))]),(0,u.createElementVNode)(`div`,{class:(0,u.normalizeClass)([`flex w-100p align-items-end mt-auto gap-075 overflow justify-content-start`,[e.rtl?`rtl`:`ltr`]])},[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(s.value,(t,r)=>(0,u.withDirectives)(((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:r,class:`flex-grow txt-center hover transition-400 relative barWrap mb-1`,style:(0,u.normalizeStyle)({width:`max(2rem, ${100/s.value.length}%)`,opacity:c.value(r),transition:e.animated?`opacity 0.3s ease-out`:`none`})},[(0,u.createElementVNode)(`div`,{class:`bar radius-05 transition-400`,style:(0,u.normalizeStyle)({height:`${t.height*1.8}px`,background:`linear-gradient(180deg, ${e.color}60, ${e.color}30)`,minHeight:`4px`})},null,4),s.value.length<=15||r%Math.ceil(s.value.length/8)===0?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,{key:0,class:(0,u.normalizeClass)([`txt-9 block line-height-1 -bottom-075 white-space color-gray absolute`,e.rtl?`rtl`:`ltr`])},(0,u.toDisplayString)(t.displayLabel),3)):(0,u.createCommentVNode)(``,!0)],4)),[[n,{content:m(t),html:!0}]])),128))],2),e.loading?((0,u.openBlock)(),(0,u.createElementBlock)(`div`,P,[e.loading?((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(_w),{key:0})):(0,u.createCommentVNode)(``,!0)])):(0,u.createCommentVNode)(``,!0)],512)}}}),I=F;const ee={class:`flex space-between pb-1`},L={class:`flex align-center gap-05`},R={class:`white-space light m_txt14`},te={key:0,class:`flex align-center gap-025`},ne={class:`chart-container flex-grow w-100p relative`},re=[`width`,`height`],z={class:`grid`},B=[`x1`,`y1`,`x2`,`y2`],ie=[`x`,`y`,`text-anchor`],ae=[`x1`,`y1`,`x2`,`y2`],oe=[`x1`,`y1`,`x2`,`y2`],se=[`d`,`stroke`],ce={key:0},le=[`cx`,`cy`,`fill`],ue={class:`x-labels`},de=[`x`,`y`];var fe=(0,u.defineComponent)({__name:`LineChart`,props:{data:{},title:{default:`Line Chart`},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},height:{default:200},showPoints:{type:Boolean,default:!0},currency:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0},percentageChange:{default:0}},setup(e){let t=e,n=(0,u.ref)(),r=(0,u.ref)(),i=(0,u.ref)(600),a=(0,u.ref)(t.height),o=(0,u.ref)(0),s=(0,u.ref)(!1),c=(0,u.ref)(!1),l=null,d={top:20,inline_end:30,bottom:25,inline_start:60},f=(0,u.computed)(()=>i.value-d.inline_start-d.inline_end),p=(0,u.computed)(()=>a.value-d.top-d.bottom),m=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?d.inline_end:d.inline_start}),h=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?m.value+f.value+10:m.value-10}),g=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?`start`:`end`}),_=(0,u.computed)(()=>Math.max(...t.data.map(e=>e.value),0)),v=(0,u.computed)(()=>Math.min(...t.data.map(e=>e.value),0)),y=(0,u.computed)(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`,n=t.data.length-1;return t=>{let r=t/n*f.value;return e?f.value-r:r}}),b=(0,u.computed)(()=>{let e=_.value-v.value||1;return t=>p.value-(t-v.value)/e*p.value}),x=(0,u.computed)(()=>{if(t.data.length===0)return``;let e=t.data.length,n=t.animated?Math.ceil(e*o.value):e,r=t.data.slice(0,Math.max(1,n)),i=r.map((e,t)=>`${t===0?`M`:`L`} ${m.value+y.value(t)} ${d.top+b.value(e.value)}`).join(` `);return i}),S=(0,u.computed)(()=>{if(!t.animated)return t.data;let e=t.data.length,n=Math.ceil(e*o.value);return t.data.slice(0,Math.max(1,n))}),C=(0,u.computed)(()=>{let e=[],t=p.value/4;for(let n=0;n<=4;n++){let r=n*t,i=_.value-n/4*(_.value-v.value);e.push({y:r,value:i})}return e});function w(e){return t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function T(e){let t=new Date(e);return t.toLocaleDateString(`he-IL`,{month:`short`,day:`numeric`})}function E(e){let t=[`${T(e.date)}`,`<b>${w(e.value)}</b>`];return e.label&&t.push(`<b>${e.label}</b>`),`<div class="lineTooltip">${t.join(`<p>`)}</div>`}let D=()=>{typeof window>`u`||(l=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!c.value&&(c.value=!0,setTimeout(()=>{O()},100+t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),r.value?l.observe(r.value):setTimeout(()=>{r.value&&l&&l.observe(r.value)},100))},O=()=>{console.log(`Starting LineChart animation for "${t.title}" (duration: ${t.animationDuration}ms, start delay: ${t.animationStartDelay}ms)`),s.value=!0,o.value=0;let e=Date.now(),n=()=>{let r=Date.now()-e,i=Math.min(r/t.animationDuration,1);o.value=k(i),i<1?requestAnimationFrame(n):(s.value=!1,console.log(`LineChart animation completed for "${t.title}"`))};requestAnimationFrame(n)},k=e=>1-(1-e)**3;return(0,u.onMounted)(()=>{n.value&&(i.value=n.value.clientWidth||600),t.animated?D():o.value=1}),(0,u.onUnmounted)(()=>{l&&l.disconnect()}),(e,t)=>{let o=(0,u.resolveDirective)(`tooltip`);return(0,u.openBlock)(),(0,u.createElementBlock)(`div`,{ref_key:`chartRef`,ref:r,class:`line-chart h-100p flex column flex-stretch`},[(0,u.createElementVNode)(`div`,ee,[(0,u.createElementVNode)(`div`,L,[(0,u.createVNode)((0,u.unref)($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),(0,u.createElementVNode)(`p`,R,(0,u.toDisplayString)(e.title),1)]),e.percentageChange===0?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,te,[(0,u.createVNode)((0,u.unref)($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:(0,u.normalizeClass)(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),(0,u.createElementVNode)(`span`,{class:(0,u.normalizeClass)([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},(0,u.toDisplayString)(Math.abs(e.percentageChange))+`% `,3)]))]),(0,u.createElementVNode)(`div`,ne,[((0,u.openBlock)(),(0,u.createElementBlock)(`svg`,{ref_key:`svgRef`,ref:n,width:i.value,height:a.value,class:`chart-svg h-100p w-100p`},[(0,u.createElementVNode)(`g`,z,[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(C.value,e=>((0,u.openBlock)(),(0,u.createElementBlock)(`line`,{key:e.y,x1:m.value,y1:d.top+e.y,x2:m.value+f.value,y2:d.top+e.y,stroke:`#e0e0e0`,"stroke-width":`1`},null,8,B))),128)),((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(C.value,e=>((0,u.openBlock)(),(0,u.createElementBlock)(`text`,{key:`label-${e.y}`,x:h.value,y:d.top+e.y+4,class:`grid-label`,"text-anchor":g.value},(0,u.toDisplayString)(w(e.value)),9,ie))),128))]),(0,u.createElementVNode)(`line`,{x1:m.value,y1:d.top+p.value,x2:m.value+f.value,y2:d.top+p.value,stroke:`#ccc`,"stroke-width":`2`},null,8,ae),(0,u.createElementVNode)(`line`,{x1:m.value,y1:d.top,x2:m.value,y2:d.top+p.value,stroke:`#ccc`,"stroke-width":`2`},null,8,oe),(0,u.createElementVNode)(`path`,{d:x.value,stroke:e.color,"stroke-width":`3`,fill:`none`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,se),e.showPoints?((0,u.openBlock)(),(0,u.createElementBlock)(`g`,ce,[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(S.value,(t,n)=>(0,u.withDirectives)(((0,u.openBlock)(),(0,u.createElementBlock)(`circle`,{key:n,cx:m.value+y.value(n),cy:d.top+b.value(t.value),r:`4`,fill:e.color,class:`data-point`},null,8,le)),[[o,{content:E(t),html:!0}]])),128))])):(0,u.createCommentVNode)(``,!0),(0,u.createElementVNode)(`g`,ue,[((0,u.openBlock)(!0),(0,u.createElementBlock)(u.Fragment,null,(0,u.renderList)(S.value.filter((e,t)=>t%Math.ceil(S.value.length/6)===0),(e,t)=>((0,u.openBlock)(),(0,u.createElementBlock)(`text`,{key:t,x:m.value+y.value(S.value.findIndex(t=>t===e)),y:d.top+p.value+15,class:`axis-label`,"text-anchor":`middle`},(0,u.toDisplayString)(T(e.date)),9,de))),128))])],8,re))])],512)}}}),pe=v(fe,[[`__scopeId`,`data-v-ceb26ffc`]]);const me={class:`mb-1 flex space-between align-items-start m_mb-05 w-100p`},he={class:`flex gap-025`},ge={class:`txt14 m-0 line-height-12 light opacity-6`},_e={key:0,class:`txt12 color-gray`},ve={class:`flex`},ye={key:0,class:`kpi-prefix txt16 semi color-gray`},be={class:`kpi-main-value bold txt28 m_txt24 line-height-1`},xe={key:1,class:`kpi-suffix txt16 semi color-gray`};var Se=(0,u.defineComponent)({__name:`KpiCard`,props:{title:{},value:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{},loading:{type:Boolean,default:!1},subtitle:{default:``}},setup(e){let t=e,n=(0,u.computed)(()=>t.percentageChange>=0),r=(0,u.computed)(()=>typeof t.value==`string`?t.value:t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:t.currency,minimumFractionDigits:0}).format(t.value):t.value.toLocaleString()),i=(0,u.computed)(()=>n.value?`var(--bgl-green)`:`var(--bgl-red)`);return(e,t)=>((0,u.openBlock)(),(0,u.createBlock)((0,u.unref)(fr),{class:`flex column space-between align-items-start py-1 px-1-5 m_p-1 relative`},{default:(0,u.withCtx)(()=>[(0,u.createElementVNode)(`div`,me,[(0,u.createElementVNode)(`div`,he,[(0,u.createVNode)((0,u.unref)($),{name:e.icon,size:`1`,color:e.color,class:`line-height-0`,weight:`300`},null,8,[`name`,`color`]),(0,u.createElementVNode)(`div`,null,[(0,u.createElementVNode)(`h3`,ge,(0,u.toDisplayString)(e.title),1),e.subtitle?((0,u.openBlock)(),(0,u.createElementBlock)(`p`,_e,(0,u.toDisplayString)(e.subtitle),1)):(0,u.createCommentVNode)(``,!0)])]),e.percentageChange===0?(0,u.createCommentVNode)(``,!0):((0,u.openBlock)(),(0,u.createElementBlock)(`div`,{key:0,class:`kpi-trend flex gap-025 txt12 bold ms-auto`,style:(0,u.normalizeStyle)({color:i.value})},[(0,u.createVNode)((0,u.unref)($),{name:n.value?`trending_up`:`trending_down`},null,8,[`name`]),(0,u.createElementVNode)(`span`,null,(0,u.toDisplayString)(Math.abs(e.percentageChange).toFixed(1))+`%`,1)],4))]),(0,u.createElementVNode)(`div`,ve,[(0,u.createElementVNode)(`div`,{class:(0,u.normalizeClass)([`flex align-items-baseline gap-025 w100p`,{loading:e.loading}])},[e.prefix?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,ye,(0,u.toDisplayString)(e.prefix),1)):(0,u.createCommentVNode)(``,!0),(0,u.createElementVNode)(`span`,be,(0,u.toDisplayString)(e.loading?`...`:r.value),1),e.suffix?((0,u.openBlock)(),(0,u.createElementBlock)(`span`,xe,(0,u.toDisplayString)(e.suffix),1)):(0,u.createCommentVNode)(``,!0)],2)])]),_:1}))}}),Ce=v(Se,[[`__scopeId`,`data-v-3883b5a7`]]);const we={class:`flex space-between pb-1`},Te={class:`flex align-center gap-05`},Ee={class:`white-space light m_txt14`},De={key:0,class:`flex align-center gap-025`},Oe=[`width`,`height`],ke=[`transform`],Ae=[`d`,`fill`],je={key:0,class:`center-text`},Me={x:`0`,y:`-8`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-label txt12 opacity-7`},Ne={x:`0`,y:`12`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-value txt20 bold`},Pe={key:1,class:`connector-lines`},Fe=[`points`],Ie={key:2,class:`chart-labels`},Le={key:0},Re=[`x`,`y`,`fill`],ze=[`x`,`y`,`fill`],Be=[`x`,`y`,`text-anchor`,`fill`],Ve=[`x`,`y`,`text-anchor`],He=[`x`,`y`,`text-anchor`],Ue={key:0,class:`legend mx-auto display-flex column gap-05 min-w-100px`},We={key:0,class:`flex-shrink-1 flex-grow-1`},Ge={class:`bold`},Ke={class:`opacity-6 txt12`};var qe=(0,u.defineComponent)({__name:`PieChart`,props:{data:{},title:{default:`Pie Chart`},icon:{default:`bx-pie-chart-alt`},color:{default:`#3B82F6`},colors:{},size:{default:200},showLegend:{type:Boolean,default:!0},donut:{type:Boolean,default:!1},thickness:{default:.6},centerLabel:{default:`Total`},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationDelay:{default:200},animationStartDelay:{default:0},centerValue:{},showCenterTotal:{type:Boolean,default:!0},percentageChange:{default:0},showLabelsOnChart:{type:Boolean,default:!1},showConnectorLines:{type:Boolean,default:!1},labelColor:{default:`#333`}},setup(e,{expose:t}){let n=e,r=(0,u.computed)(()=>{if(n.colors&&n.colors.length>0)return n.colors;let e=n.color,t=[1,.8,.6,.4,.85,.7,.5,.3,.9,.75];return t.map(t=>{let n=e.replace(`#`,``),r=parseInt(n.substr(0,2),16),i=parseInt(n.substr(2,2),16),a=parseInt(n.substr(4,2),16);return`rgba(${r}, ${i}, ${a}, ${t})`})}),i=(0,u.ref)(0),a=(0,u.ref)(!1),o=(0,u.ref)(),s=(0,u.ref)(!1);(0,u.onMounted)(()=>{n.animated?l():i.value=1}),(0,u.onUnmounted)(()=>{c&&c.disconnect()});let c=null,l=()=>{typeof window>`u`||(c=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!s.value&&(s.value=!0,setTimeout(()=>{d()},100+n.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),o.value?c.observe(o.value):setTimeout(()=>{o.value&&c&&c.observe(o.value)},100))},d=()=>{let e=n.animationDelay>0?`staggered with delay`:`quick stagger`;console.log(`Starting animation for "${n.title}" - ${e} mode (duration: ${n.animationDuration}ms, start delay: ${n.animationStartDelay}ms)`),a.value=!0,i.value=0;let t=Date.now(),r=()=>{let e=Date.now()-t,o=Math.min(e/n.animationDuration,1);i.value=f(o),o<1?requestAnimationFrame(r):(a.value=!1,console.log(`Animation completed`))};requestAnimationFrame(r)},f=e=>1-(1-e)**3,p=()=>{n.animated&&d()};t({restartAnimation:p});let m=(0,u.computed)(()=>n.showConnectorLines?{width:n.size+200,height:n.size+100}:{width:n.size,height:n.size}),h=(0,u.computed)(()=>n.showConnectorLines?{x:m.value.width/2-10,y:m.value.height/2}:{x:n.size/2,y:n.size/2}),g=(0,u.computed)(()=>n.data.reduce((e,t)=>e+t.value,0)),_=e=>{let t=(e.startAngle+e.endAngle)/2,r=t*Math.PI/180,i=n.size/2-10,a=n.donut?i*.8:i*.7;return{x:Math.cos(r)*a,y:Math.sin(r)*a}},v=e=>{let t=(e.startAngle+e.endAngle)/2,r=t*Math.PI/180,i=n.size/2-10,a=n.donut?i*n.thickness:i*.5,o=i+15,s=Math.cos(r)*a,c=Math.sin(r)*a,l=Math.cos(r)*o,u=Math.sin(r)*o,d=l+(l>0?8:-8),f=u;return{innerX:s,innerY:c,outerX:l,outerY:u,labelX:d,labelY:f,textAnchor:l>0?`start`:`end`}},y=(0,u.computed)(()=>n.centerValue===void 0?n.showCenterTotal?g.value:0:n.centerValue),b=(0,u.computed)(()=>{let e=0;return n.data.map((t,a)=>{let o=t.value/g.value,s=o*360,c=e,l=e+s;e+=s;let u=100,d=n.animationDelay>0?u+a*n.animationDelay:u+a*50,f=i.value*n.animationDuration,p=!n.animated||f>=d;if(n.animated&&a===0&&console.log(`Animation progress: ${(i.value*100).toFixed(1)}%, elapsed: ${f.toFixed(0)}ms`),p)a<3&&console.log(`Segment ${a} visible! - delay: ${d}ms, elapsed: ${f.toFixed(0)}ms`);else return a<3&&console.log(`Segment ${a} waiting - needs ${d}ms, current: ${f.toFixed(0)}ms`),{...t,percentage:o,angle:0,startAngle:c,endAngle:c,path:``,color:t.color||r.value[a%r.value.length],visible:!1};let m=c*Math.PI/180,h=l*Math.PI/180,_=n.size/2-10,v=n.donut?_*n.thickness:0,y=l-c,b=y>180?1:0,C=n.donut?S(m,h,_,v,b):x(m,h,_,b);return{...t,percentage:o,angle:y,startAngle:c,endAngle:l,path:C,color:t.color||r.value[a%r.value.length],visible:!0}})});function x(e,t,n,r){let i=Math.cos(e)*n,a=Math.sin(e)*n,o=Math.cos(t)*n,s=Math.sin(t)*n;return`M 0 0 L ${i} ${a} A ${n} ${n} 0 ${r} 1 ${o} ${s} Z`}function S(e,t,n,r,i){let a=Math.cos(e)*n,o=Math.sin(e)*n,s=Math.cos(t)*n,c=Math.sin(t)*n,l=Math.cos(e)*r,u=Math.sin(e)*r,d=Math.cos(t)*r,f=Math.sin(t)*r;return`M ${a} ${o} A ${n} ${n} 0 ${i} 1 ${s} ${c} L ${d} ${f} A ${r} ${r} 0 ${i} 0 ${l} ${u} Z`}function C(e){return e.toLocaleString()}function w(e){return`${(e*100).toFixed(1)}%`}function T(e){return`<div class="pieTooltip">
2
2
  <div class="round w-10px h-10px w-100p inline-block" style="background-color: ${e.color};"></div>
3
3
  <p class="inline-block txt12">${e.label}</p>
4
4
  <div class="gap-025 flex">
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({});import{Comment as t,Fragment as n,Text as r,Transition as i,TransitionGroup as a,computed as o,createApp as s,createBlock as c,createCommentVNode as l,createElementBlock as u,createElementVNode as d,createSlots as f,createTextVNode as p,createVNode as m,defineComponent as h,getCurrentInstance as g,getCurrentScope as _,guardReactiveProps as v,h as y,inject as b,isRef as x,isVNode as S,markRaw as C,mergeModels as w,mergeProps as T,nextTick as E,normalizeClass as D,normalizeProps as O,normalizeStyle as k,onBeforeUnmount as A,onMounted as j,onScopeDispose as ee,onUnmounted as M,onUpdated as N,openBlock as P,popScopeId as F,provide as I,pushScopeId as L,reactive as te,ref as R,renderList as z,renderSlot as B,resolveComponent as ne,resolveDirective as re,resolveDynamicComponent as V,shallowRef as H,toDisplayString as U,toRef as ie,toValue as W,unref as G,useAttrs as ae,useCssVars as oe,useModel as se,useSlots as K,vModelCheckbox as ce,vModelDynamic as le,vModelRadio as ue,vModelText as de,watch as q,watchEffect as fe,withCtx as J,withDirectives as pe,withKeys as me,withModifiers as he,withScopeId as ge}from"vue";import{RouterLink as _e,useRoute as ve}from"vue-router";var ye=Object.defineProperty,be=(e,t)=>{for(var n in t)ye(e,n,{get:t[n],enumerable:!0})},xe=h({__name:`Accordion`,setup(e){let t=te({openItem:void 0});return I(`accordionState`,t),(e,t)=>(P(),u(`div`,null,[B(e.$slots,`default`)]))}}),Se=xe;const Ce=[`aria-expanded`,`aria-controls`],we={class:`accordion-label`},Te=[`id`,`aria-hidden`];var Ee=h({__name:`AccordionItem`,props:{label:{},id:{},open:{type:Boolean},iconType:{},iconPosition:{},flat:{type:Boolean},iconClass:{}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,a=R(!!n.open),s=o({get:()=>a.value,set:e=>{a.value=e,r(`update:open`,e)}}),c=b(`accordionState`),f=n.id||Math.random().toString(36).slice(7),p=o(()=>n.iconType===`plus_minus`?s.value?`remove`:`add`:`expand_more`),h=o(()=>n.iconPosition||`end`);q(()=>n.open,()=>s.value=n.open,{immediate:!0}),c&&q(()=>c.openItem,e=>{e!==f&&(s.value=!1)},{immediate:!0});function g(){s.value=!s.value,c&&(s.value?c.openItem=f:c.openItem===f&&(c.openItem=void 0))}return(e,t)=>(P(),u(`div`,{class:D([`accordion-item txt-start`,[{flat:e.flat}]])},[d(`button`,{"aria-expanded":G(s)?`true`:`false`,class:`accordion-head`,"aria-controls":`accordion-body-${G(f)}`,onClick:t[0]||=e=>g()},[h.value===`start`?(P(),u(`span`,{key:0,class:D([`accordion-icon`,[e.iconClass,{open:G(s)&&e.iconType===`expand_more`}]])},[m(G($),{icon:p.value},null,8,[`icon`])],2)):l(``,!0),B(e.$slots,`head`,{},()=>[d(`span`,we,U(e.label),1)],!0),h.value===`end`?(P(),u(`span`,{key:1,class:D([`accordion-icon`,[e.iconClass,{open:G(s)&&e.iconType===`expand_more`}]])},[m(G($),{icon:p.value},null,8,[`icon`])],2)):l(``,!0)],8,Ce),m(i,{name:`expand`},{default:J(()=>[G(s)?(P(),u(`div`,{key:0,id:`accordion-body-${G(f)}`,class:`accordion-body`,"aria-hidden":G(s)?`false`:`true`},[B(e.$slots,`default`,{},void 0,!0)],8,Te)):l(``,!0)]),_:3})],2))}}),Y=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},De=Y(Ee,[[`__scopeId`,`data-v-46e7dfbc`]]);const Oe={class:`relative`};var ke=h({__name:`AddressSearch`,emits:[`addressSelected`],setup(e,{emit:t}){let r=t,i=R(``),a=R([]),o=R();function s(e){r(`addressSelected`,e),a.value=[],i.value=``}async function l(){var e;let t=i.value.replaceAll(/\s+/g,`+`),n=`https://nominatim.openstreetmap.org/search?format=json&q=${encodeURI(t)}`,r=await fetch(n);a.value=await r.json()||[],(e=o.value)?.show()}return(e,t)=>(P(),u(`div`,Oe,[m(G(ec),{ref_key:`suggestion`,ref:o,noAutoFocus:!0,placement:`bottom-start`},{trigger:J(()=>[m(G(Md),{modelValue:G(i),"onUpdate:modelValue":t[0]||=e=>x(i)?i.value=e:i=e,placeholder:`Enter address`,onDebounce:l},null,8,[`modelValue`])]),default:J(()=>[m(G(hT),{class:`-mt-2 hm-300px`},{default:J(()=>[(P(!0),u(n,null,z(G(a),(e,t)=>(P(),c(G(lT),{key:t,icon:`location_on`,title:e.display_name,onClick:t=>s(e)},null,8,[`title`,`onClick`]))),128))]),_:1})]),_:1},512)]))}}),Ae=ke;const je={key:1,class:`bgl_btn-flex`};var Me=h({__name:`Btn`,props:{disabled:{type:Boolean,default:!1},icon:{},iconEnd:{},iconSize:{},iconMobileSize:{},color:{},theme:{},flat:{type:Boolean},border:{type:Boolean,default:!1},outline:{type:Boolean,default:!1},thin:{type:Boolean},size:{},type:{default:`button`},loading:{type:Boolean,default:!1},role:{default:`button`},value:{},to:{},href:{},round:{type:Boolean,default:!1},is:{default:`button`},ripple:{type:Boolean,default:!0},fullWidth:{type:Boolean,default:!1},fullWidthMobile:{type:Boolean,default:!1},alignTxt:{default:`center`},alignTxtMobile:{default:`center`},onClick:{type:Function,default:()=>``},confirm:{type:[Boolean,String]}},emits:[`confirmed`],setup(e,{emit:t}){let r=e,i=t,a=R(!1);function s(){a.value=window.innerWidth<=910}j(()=>{s(),window.addEventListener(`resize`,s)}),M(()=>{window.removeEventListener(`resize`,s)});async function d(e){if(r.confirm){let{confirmModal:t}=DO(),n=typeof r.confirm==`string`?r.confirm:`Are you sure?`,a=await t({title:`Confirm`,message:n});if(!a)return;r.onClick(e),i(`confirmed`,e)}else r.onClick(e)}let f=o(()=>{if(r.iconSize!==void 0)return r.iconSize;let e={xs:.7,"extra-small":.7,s:.9,small:.9,m:1,medium:1,l:1.3,large:1.3,xl:1.6,"extra-large":1.6};return r.size&&e[r.size]?e[r.size]:a.value?1:1.2}),m=o(()=>r.disabled?r.is:r.to?_e:r.href?`a`:r.is),h=o(()=>{let e={};return r.disabled||(r.to?e.to=r.to:r.href&&(e.href=r.href)),!r.to&&!r.href&&(e.role=r.role,e.type=r.type),e}),g=K();return(e,t)=>{let r=re(`ripple`);return pe((P(),c(V(m.value),T(h.value,{disabled:e.disabled,class:[`bgl_btn`,{"bgl_btn-icon":e.icon&&!G(g).default&&!e.value,thin:e.thin,bgl_btn_xsSize:e.size===`xs`||e.size===`extra-small`,bgl_btn_sSize:e.size===`s`||e.size===`small`,bgl_btn_mSize:e.size===`m`||e.size===`medium`,bgl_btn_lSize:e.size===`l`||e.size===`large`,bgl_btn_xlSize:e.size===`xl`||e.size===`extra-large`,bgl_btn_fullWidth:e.fullWidth,bgl_btn_fullWidthMobile:e.fullWidthMobile,bgl_btn_alignStart:e.alignTxt===`start`,bgl_btn_alignEnd:e.alignTxt===`end`,bgl_btn_alignStartMobile:e.alignTxtMobile===`start`,bgl_btn_alignEndMobile:e.alignTxtMobile===`end`,round:e.round,bgl_btn_flat:e.flat,"bgl_btn-border":e.border||e.outline,[`bgl_btn-${e.color}`]:e.color,[`bgl_btn-${e.theme}`]:e.theme}],tabindex:e.disabled?-1:0,onClick:he(d,[`stop`]),onKeydown:[me(d,[`enter`]),me(d,[`space`])]}),{default:J(()=>[e.loading?(P(),c(G(xT),{key:0,class:`h-100p`,size:`15`})):(P(),u(`div`,je,[e.icon?(P(),c(G($),{key:0,icon:e.icon,class:`transition-400`,size:f.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):l(``,!0),B(e.$slots,`default`,{},void 0,!0),!G(g).default&&e.value?(P(),u(n,{key:1},[p(U(e.value),1)],64)):l(``,!0),e.iconEnd?(P(),c(G($),{key:2,icon:e.iconEnd,class:`transition-400`,size:f.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):l(``,!0)]))]),_:3},16,[`disabled`,`class`,`tabindex`])),[[r,e.ripple]])}}}),X=Y(Me,[[`__scopeId`,`data-v-ce661abc`]]);const Ne=[`dismissable`],Pe={class:`m-0`};var Fe=h({__name:`Alert`,props:{message:{},thin:{type:Boolean},outline:{type:Boolean},dismissable:{type:Boolean},type:{default:`info`},icon:{}},setup(e){let t=R(!1),n={info:`var(--bgl-primary)`,warning:`var(--bgl-yellow)`,error:`var(--bgl-red)`};return(e,r)=>t.value?l(``,!0):(P(),u(`div`,{key:0,class:D([`alert`,[e.type,{thin:e.thin,outline:e.outline}]]),dismissable:e.dismissable},[e.icon===`none`?l(``,!0):(P(),c(G($),{key:0,class:`alert_icon`,icon:e.icon||e.type,size:1.7,color:n[e.type]},null,8,[`icon`,`color`])),B(e.$slots,`default`,{},()=>[d(`p`,Pe,U(e.message),1)],!0),m(X,{flat:``,thin:``,class:`alert_close`,icon:`close`,onClick:r[0]||=e=>t.value=!0})],10,Ne))}}),Ie=Y(Fe,[[`__scopeId`,`data-v-02bbea09`]]);const Le={class:`flex space-between pb-1`},Re={class:`flex align-center gap-05`},ze={class:`white-space light m_txt14`},Be={key:0,class:`flex align-center gap-025`},Ve={key:0,class:`absolute inset flex justify-content-center rounded`};var He=h({__name:`BarChart`,props:{title:{},data:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{type:Boolean,default:!1},maxBars:{default:30},loading:{type:Boolean,default:!1},rtl:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0}},setup(e){let t=e,r=R(0),i=R(!1),a=R(!1),s=R(null),f=R(null),p=o(()=>{if(!t.data||t.data.length===0)return[];let e=Math.max(...t.data.map(e=>e.value),1);return t.data.map(t=>({...t,height:Math.max(t.value/e*100,2),displayLabel:y(t.date)}))}),h=o(()=>e=>{if(!t.animated)return 1;if(!a.value)return 0;let n=p.value.length,i=e/n,o=Math.max(0,Math.min(1,(r.value-i)*n));return o});function g(e){return 1-(1-e)**3}function _(){if(i.value||!t.animated)return;console.log(`🎯 TrendChart: Starting animation with ${t.animationDuration}ms duration`),i.value=!0,r.value=0;let e=performance.now();function n(a){let o=a-e,s=Math.min(o/t.animationDuration,1),c=g(s);r.value=c,s<1?requestAnimationFrame(n):(i.value=!1,console.log(`✅ TrendChart: Animation completed`))}requestAnimationFrame(n)}function v(){!f.value||s.value||(s.value=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!a.value&&(console.log(`👀 TrendChart: Entered viewport, starting animation in ${t.animationStartDelay}ms`),a.value=!0,setTimeout(()=>{_()},t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),s.value.observe(f.value))}j(()=>{t.animated?v():(a.value=!0,r.value=1)}),M(()=>{s.value&&s.value.disconnect()});function y(e){let t=new Date(e);return t.toLocaleDateString(`he-IL`,{month:`short`,day:`numeric`})}function b(e,t=!1){return t?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function x(e){let n=b(e.value,t.currency),r=`${t.prefix}${n}${t.suffix}`,i=[`${e.displayLabel}`,`<b>${r}</b>`];return e.secondaryValues&&Array.isArray(e.secondaryValues)&&e.secondaryValues.forEach(e=>{let t=b(e.value,e.currency||!1),n=`${e.prefix||``}${t}${e.suffix||``}`;i.push(`${e.label}: <b>${n}</b>`)}),`<div class="trendTooltip">${i.join(`<p>`)}</div>`}return(e,t)=>{let r=re(`tooltip`);return P(),u(`div`,{ref_key:`chartRef`,ref:f,class:`h-100p flex column flex-stretch`},[d(`div`,Le,[d(`div`,Re,[m(G($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),d(`p`,ze,U(e.title),1)]),e.percentageChange===0?l(``,!0):(P(),u(`div`,Be,[m(G($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:D(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),d(`span`,{class:D([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},U(Math.abs(e.percentageChange))+`% `,3)]))]),d(`div`,{class:D([`flex w-100p align-items-end mt-auto gap-075 overflow justify-content-start`,[e.rtl?`rtl`:`ltr`]])},[(P(!0),u(n,null,z(p.value,(t,n)=>pe((P(),u(`div`,{key:n,class:`flex-grow txt-center hover transition-400 relative barWrap mb-1`,style:k({width:`max(2rem, ${100/p.value.length}%)`,opacity:h.value(n),transition:e.animated?`opacity 0.3s ease-out`:`none`})},[d(`div`,{class:`bar radius-05 transition-400`,style:k({height:`${t.height*1.8}px`,background:`linear-gradient(180deg, ${e.color}60, ${e.color}30)`,minHeight:`4px`})},null,4),p.value.length<=15||n%Math.ceil(p.value.length/8)===0?(P(),u(`span`,{key:0,class:D([`txt-9 block line-height-1 -bottom-075 white-space color-gray absolute`,e.rtl?`rtl`:`ltr`])},U(t.displayLabel),3)):l(``,!0)],4)),[[r,{content:x(t),html:!0}]])),128))],2),e.loading?(P(),u(`div`,Ve,[e.loading?(P(),c(G(xT),{key:0})):l(``,!0)])):l(``,!0)],512)}}}),Ue=He;const We={class:`flex space-between pb-1`},Ge={class:`flex align-center gap-05`},Ke={class:`white-space light m_txt14`},qe={key:0,class:`flex align-center gap-025`},Je={class:`chart-container flex-grow w-100p relative`},Ye=[`width`,`height`],Xe={class:`grid`},Ze=[`x1`,`y1`,`x2`,`y2`],Qe=[`x`,`y`,`text-anchor`],$e=[`x1`,`y1`,`x2`,`y2`],et=[`x1`,`y1`,`x2`,`y2`],tt=[`d`,`stroke`],nt={key:0},rt=[`cx`,`cy`,`fill`],it={class:`x-labels`},at=[`x`,`y`];var ot=h({__name:`LineChart`,props:{data:{},title:{default:`Line Chart`},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},height:{default:200},showPoints:{type:Boolean,default:!0},currency:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0},percentageChange:{default:0}},setup(e){let t=e,r=R(),i=R(),a=R(600),s=R(t.height),c=R(0),f=R(!1),p=R(!1),h=null,g={top:20,inline_end:30,bottom:25,inline_start:60},_=o(()=>a.value-g.inline_start-g.inline_end),v=o(()=>s.value-g.top-g.bottom),y=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?g.inline_end:g.inline_start}),b=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?y.value+_.value+10:y.value-10}),x=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?`start`:`end`}),S=o(()=>Math.max(...t.data.map(e=>e.value),0)),C=o(()=>Math.min(...t.data.map(e=>e.value),0)),w=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`,n=t.data.length-1;return t=>{let r=t/n*_.value;return e?_.value-r:r}}),T=o(()=>{let e=S.value-C.value||1;return t=>v.value-(t-C.value)/e*v.value}),E=o(()=>{if(t.data.length===0)return``;let e=t.data.length,n=t.animated?Math.ceil(e*c.value):e,r=t.data.slice(0,Math.max(1,n)),i=r.map((e,t)=>`${t===0?`M`:`L`} ${y.value+w.value(t)} ${g.top+T.value(e.value)}`).join(` `);return i}),O=o(()=>{if(!t.animated)return t.data;let e=t.data.length,n=Math.ceil(e*c.value);return t.data.slice(0,Math.max(1,n))}),k=o(()=>{let e=[],t=v.value/4;for(let n=0;n<=4;n++){let r=n*t,i=S.value-n/4*(S.value-C.value);e.push({y:r,value:i})}return e});function A(e){return t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function ee(e){let t=new Date(e);return t.toLocaleDateString(`he-IL`,{month:`short`,day:`numeric`})}function N(e){let t=[`${ee(e.date)}`,`<b>${A(e.value)}</b>`];return e.label&&t.push(`<b>${e.label}</b>`),`<div class="lineTooltip">${t.join(`<p>`)}</div>`}let F=()=>{typeof window>`u`||(h=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!p.value&&(p.value=!0,setTimeout(()=>{I()},100+t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),i.value?h.observe(i.value):setTimeout(()=>{i.value&&h&&h.observe(i.value)},100))},I=()=>{console.log(`Starting LineChart animation for "${t.title}" (duration: ${t.animationDuration}ms, start delay: ${t.animationStartDelay}ms)`),f.value=!0,c.value=0;let e=Date.now(),n=()=>{let r=Date.now()-e,i=Math.min(r/t.animationDuration,1);c.value=L(i),i<1?requestAnimationFrame(n):(f.value=!1,console.log(`LineChart animation completed for "${t.title}"`))};requestAnimationFrame(n)},L=e=>1-(1-e)**3;return j(()=>{r.value&&(a.value=r.value.clientWidth||600),t.animated?F():c.value=1}),M(()=>{h&&h.disconnect()}),(e,t)=>{let o=re(`tooltip`);return P(),u(`div`,{ref_key:`chartRef`,ref:i,class:`line-chart h-100p flex column flex-stretch`},[d(`div`,We,[d(`div`,Ge,[m(G($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),d(`p`,Ke,U(e.title),1)]),e.percentageChange===0?l(``,!0):(P(),u(`div`,qe,[m(G($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:D(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),d(`span`,{class:D([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},U(Math.abs(e.percentageChange))+`% `,3)]))]),d(`div`,Je,[(P(),u(`svg`,{ref_key:`svgRef`,ref:r,width:a.value,height:s.value,class:`chart-svg h-100p w-100p`},[d(`g`,Xe,[(P(!0),u(n,null,z(k.value,e=>(P(),u(`line`,{key:e.y,x1:y.value,y1:g.top+e.y,x2:y.value+_.value,y2:g.top+e.y,stroke:`#e0e0e0`,"stroke-width":`1`},null,8,Ze))),128)),(P(!0),u(n,null,z(k.value,e=>(P(),u(`text`,{key:`label-${e.y}`,x:b.value,y:g.top+e.y+4,class:`grid-label`,"text-anchor":x.value},U(A(e.value)),9,Qe))),128))]),d(`line`,{x1:y.value,y1:g.top+v.value,x2:y.value+_.value,y2:g.top+v.value,stroke:`#ccc`,"stroke-width":`2`},null,8,$e),d(`line`,{x1:y.value,y1:g.top,x2:y.value,y2:g.top+v.value,stroke:`#ccc`,"stroke-width":`2`},null,8,et),d(`path`,{d:E.value,stroke:e.color,"stroke-width":`3`,fill:`none`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,tt),e.showPoints?(P(),u(`g`,nt,[(P(!0),u(n,null,z(O.value,(t,n)=>pe((P(),u(`circle`,{key:n,cx:y.value+w.value(n),cy:g.top+T.value(t.value),r:`4`,fill:e.color,class:`data-point`},null,8,rt)),[[o,{content:N(t),html:!0}]])),128))])):l(``,!0),d(`g`,it,[(P(!0),u(n,null,z(O.value.filter((e,t)=>t%Math.ceil(O.value.length/6)===0),(e,t)=>(P(),u(`text`,{key:t,x:y.value+w.value(O.value.findIndex(t=>t===e)),y:g.top+v.value+15,class:`axis-label`,"text-anchor":`middle`},U(ee(e.date)),9,at))),128))])],8,Ye))])],512)}}}),st=Y(ot,[[`__scopeId`,`data-v-ceb26ffc`]]);const ct={class:`mb-1 flex space-between align-items-start m_mb-05 w-100p`},lt={class:`flex gap-025`},ut={class:`txt14 m-0 line-height-12 light opacity-6`},dt={key:0,class:`txt12 color-gray`},ft={class:`flex`},pt={key:0,class:`kpi-prefix txt16 semi color-gray`},mt={class:`kpi-main-value bold txt28 m_txt24 line-height-1`},ht={key:1,class:`kpi-suffix txt16 semi color-gray`};var gt=h({__name:`KpiCard`,props:{title:{},value:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{},loading:{type:Boolean,default:!1},subtitle:{default:``}},setup(e){let t=e,n=o(()=>t.percentageChange>=0),r=o(()=>typeof t.value==`string`?t.value:t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:t.currency,minimumFractionDigits:0}).format(t.value):t.value.toLocaleString()),i=o(()=>n.value?`var(--bgl-green)`:`var(--bgl-red)`);return(e,t)=>(P(),c(G(oi),{class:`flex column space-between align-items-start py-1 px-1-5 m_p-1 relative`},{default:J(()=>[d(`div`,ct,[d(`div`,lt,[m(G($),{name:e.icon,size:`1`,color:e.color,class:`line-height-0`,weight:`300`},null,8,[`name`,`color`]),d(`div`,null,[d(`h3`,ut,U(e.title),1),e.subtitle?(P(),u(`p`,dt,U(e.subtitle),1)):l(``,!0)])]),e.percentageChange===0?l(``,!0):(P(),u(`div`,{key:0,class:`kpi-trend flex gap-025 txt12 bold ms-auto`,style:k({color:i.value})},[m(G($),{name:n.value?`trending_up`:`trending_down`},null,8,[`name`]),d(`span`,null,U(Math.abs(e.percentageChange).toFixed(1))+`%`,1)],4))]),d(`div`,ft,[d(`div`,{class:D([`flex align-items-baseline gap-025 w100p`,{loading:e.loading}])},[e.prefix?(P(),u(`span`,pt,U(e.prefix),1)):l(``,!0),d(`span`,mt,U(e.loading?`...`:r.value),1),e.suffix?(P(),u(`span`,ht,U(e.suffix),1)):l(``,!0)],2)])]),_:1}))}}),_t=Y(gt,[[`__scopeId`,`data-v-3883b5a7`]]);const vt={class:`flex space-between pb-1`},yt={class:`flex align-center gap-05`},bt={class:`white-space light m_txt14`},xt={key:0,class:`flex align-center gap-025`},St=[`width`,`height`],Ct=[`transform`],wt=[`d`,`fill`],Tt={key:0,class:`center-text`},Et={x:`0`,y:`-8`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-label txt12 opacity-7`},Dt={x:`0`,y:`12`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-value txt20 bold`},Ot={key:1,class:`connector-lines`},kt=[`points`],At={key:2,class:`chart-labels`},jt={key:0},Mt=[`x`,`y`,`fill`],Nt=[`x`,`y`,`fill`],Pt=[`x`,`y`,`text-anchor`,`fill`],Ft=[`x`,`y`,`text-anchor`],It=[`x`,`y`,`text-anchor`],Lt={key:0,class:`legend mx-auto display-flex column gap-05 min-w-100px`},Rt={key:0,class:`flex-shrink-1 flex-grow-1`},zt={class:`bold`},Bt={class:`opacity-6 txt12`};var Vt=h({__name:`PieChart`,props:{data:{},title:{default:`Pie Chart`},icon:{default:`bx-pie-chart-alt`},color:{default:`#3B82F6`},colors:{},size:{default:200},showLegend:{type:Boolean,default:!0},donut:{type:Boolean,default:!1},thickness:{default:.6},centerLabel:{default:`Total`},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationDelay:{default:200},animationStartDelay:{default:0},centerValue:{},showCenterTotal:{type:Boolean,default:!0},percentageChange:{default:0},showLabelsOnChart:{type:Boolean,default:!1},showConnectorLines:{type:Boolean,default:!1},labelColor:{default:`#333`}},setup(e,{expose:t}){let r=e,i=o(()=>{if(r.colors&&r.colors.length>0)return r.colors;let e=r.color,t=[1,.8,.6,.4,.85,.7,.5,.3,.9,.75];return t.map(t=>{let n=e.replace(`#`,``),r=parseInt(n.substr(0,2),16),i=parseInt(n.substr(2,2),16),a=parseInt(n.substr(4,2),16);return`rgba(${r}, ${i}, ${a}, ${t})`})}),a=R(0),s=R(!1),c=R(),f=R(!1);j(()=>{r.animated?h():a.value=1}),M(()=>{p&&p.disconnect()});let p=null,h=()=>{typeof window>`u`||(p=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!f.value&&(f.value=!0,setTimeout(()=>{g()},100+r.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),c.value?p.observe(c.value):setTimeout(()=>{c.value&&p&&p.observe(c.value)},100))},g=()=>{let e=r.animationDelay>0?`staggered with delay`:`quick stagger`;console.log(`Starting animation for "${r.title}" - ${e} mode (duration: ${r.animationDuration}ms, start delay: ${r.animationStartDelay}ms)`),s.value=!0,a.value=0;let t=Date.now(),n=()=>{let e=Date.now()-t,i=Math.min(e/r.animationDuration,1);a.value=_(i),i<1?requestAnimationFrame(n):(s.value=!1,console.log(`Animation completed`))};requestAnimationFrame(n)},_=e=>1-(1-e)**3,v=()=>{r.animated&&g()};t({restartAnimation:v});let y=o(()=>r.showConnectorLines?{width:r.size+200,height:r.size+100}:{width:r.size,height:r.size}),b=o(()=>r.showConnectorLines?{x:y.value.width/2-10,y:y.value.height/2}:{x:r.size/2,y:r.size/2}),x=o(()=>r.data.reduce((e,t)=>e+t.value,0)),S=e=>{let t=(e.startAngle+e.endAngle)/2,n=t*Math.PI/180,i=r.size/2-10,a=r.donut?i*.8:i*.7;return{x:Math.cos(n)*a,y:Math.sin(n)*a}},C=e=>{let t=(e.startAngle+e.endAngle)/2,n=t*Math.PI/180,i=r.size/2-10,a=r.donut?i*r.thickness:i*.5,o=i+15,s=Math.cos(n)*a,c=Math.sin(n)*a,l=Math.cos(n)*o,u=Math.sin(n)*o,d=l+(l>0?8:-8),f=u;return{innerX:s,innerY:c,outerX:l,outerY:u,labelX:d,labelY:f,textAnchor:l>0?`start`:`end`}},w=o(()=>r.centerValue===void 0?r.showCenterTotal?x.value:0:r.centerValue),T=o(()=>{let e=0;return r.data.map((t,n)=>{let o=t.value/x.value,s=o*360,c=e,l=e+s;e+=s;let u=100,d=r.animationDelay>0?u+n*r.animationDelay:u+n*50,f=a.value*r.animationDuration,p=!r.animated||f>=d;if(r.animated&&n===0&&console.log(`Animation progress: ${(a.value*100).toFixed(1)}%, elapsed: ${f.toFixed(0)}ms`),p)n<3&&console.log(`Segment ${n} visible! - delay: ${d}ms, elapsed: ${f.toFixed(0)}ms`);else return n<3&&console.log(`Segment ${n} waiting - needs ${d}ms, current: ${f.toFixed(0)}ms`),{...t,percentage:o,angle:0,startAngle:c,endAngle:c,path:``,color:t.color||i.value[n%i.value.length],visible:!1};let m=c*Math.PI/180,h=l*Math.PI/180,g=r.size/2-10,_=r.donut?g*r.thickness:0,v=l-c,y=v>180?1:0,b=r.donut?O(m,h,g,_,y):E(m,h,g,y);return{...t,percentage:o,angle:v,startAngle:c,endAngle:l,path:b,color:t.color||i.value[n%i.value.length],visible:!0}})});function E(e,t,n,r){let i=Math.cos(e)*n,a=Math.sin(e)*n,o=Math.cos(t)*n,s=Math.sin(t)*n;return`M 0 0 L ${i} ${a} A ${n} ${n} 0 ${r} 1 ${o} ${s} Z`}function O(e,t,n,r,i){let a=Math.cos(e)*n,o=Math.sin(e)*n,s=Math.cos(t)*n,c=Math.sin(t)*n,l=Math.cos(e)*r,u=Math.sin(e)*r,d=Math.cos(t)*r,f=Math.sin(t)*r;return`M ${a} ${o} A ${n} ${n} 0 ${i} 1 ${s} ${c} L ${d} ${f} A ${r} ${r} 0 ${i} 0 ${l} ${u} Z`}function A(e){return e.toLocaleString()}function ee(e){return`${(e*100).toFixed(1)}%`}function N(e){return`<div class="pieTooltip">
1
+ var e=function(exports){function t(e){"@babel/helpers - typeof";return t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t(e)}function n(e,n){if(t(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,n||`default`);if(t(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(n===`string`?String:Number)(e)}function r(e){var r=n(e,`string`);return t(r)==`symbol`?r:r+``}function i(e,t,n){return(t=r(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}return exports.defineProperty=i,exports}({});import{Comment as t,Fragment as n,Text as r,Transition as i,TransitionGroup as a,computed as o,createApp as s,createBlock as c,createCommentVNode as l,createElementBlock as u,createElementVNode as d,createSlots as f,createTextVNode as p,createVNode as m,defineComponent as h,getCurrentInstance as g,getCurrentScope as _,guardReactiveProps as v,h as y,inject as b,isRef as x,isVNode as S,markRaw as C,mergeModels as w,mergeProps as T,nextTick as E,normalizeClass as D,normalizeProps as O,normalizeStyle as k,onBeforeUnmount as A,onMounted as j,onScopeDispose as ee,onUnmounted as M,onUpdated as N,openBlock as P,popScopeId as F,provide as I,pushScopeId as L,reactive as te,ref as R,renderList as z,renderSlot as B,resolveComponent as ne,resolveDirective as re,resolveDynamicComponent as V,shallowRef as H,toDisplayString as U,toRef as ie,toValue as W,unref as G,useAttrs as ae,useCssVars as oe,useModel as se,useSlots as K,vModelCheckbox as ce,vModelDynamic as le,vModelRadio as ue,vModelText as de,watch as q,watchEffect as fe,withCtx as J,withDirectives as pe,withKeys as me,withModifiers as he,withScopeId as ge}from"vue";import{RouterLink as _e,useRoute as ve}from"vue-router";var ye=Object.defineProperty,be=(e,t)=>{for(var n in t)ye(e,n,{get:t[n],enumerable:!0})},xe=h({__name:`Accordion`,setup(e){let t=te({openItem:void 0});return I(`accordionState`,t),(e,t)=>(P(),u(`div`,null,[B(e.$slots,`default`)]))}}),Se=xe;const Ce=[`aria-expanded`,`aria-controls`],we={class:`accordion-label`},Te=[`id`,`aria-hidden`];var Ee=h({__name:`AccordionItem`,props:{label:{},id:{},open:{type:Boolean},iconType:{},iconPosition:{},flat:{type:Boolean},iconClass:{}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=t,a=R(!!n.open),s=o({get:()=>a.value,set:e=>{a.value=e,r(`update:open`,e)}}),c=b(`accordionState`),f=n.id||Math.random().toString(36).slice(7),p=o(()=>n.iconType===`plus_minus`?s.value?`remove`:`add`:`expand_more`),h=o(()=>n.iconPosition||`end`);q(()=>n.open,()=>s.value=n.open,{immediate:!0}),c&&q(()=>c.openItem,e=>{e!==f&&(s.value=!1)},{immediate:!0});function g(){s.value=!s.value,c&&(s.value?c.openItem=f:c.openItem===f&&(c.openItem=void 0))}return(e,t)=>(P(),u(`div`,{class:D([`accordion-item txt-start`,[{flat:e.flat}]])},[d(`button`,{"aria-expanded":G(s)?`true`:`false`,class:`accordion-head`,"aria-controls":`accordion-body-${G(f)}`,onClick:t[0]||=e=>g()},[h.value===`start`?(P(),u(`span`,{key:0,class:D([`accordion-icon`,[e.iconClass,{open:G(s)&&e.iconType===`expand_more`}]])},[m(G($),{icon:p.value},null,8,[`icon`])],2)):l(``,!0),B(e.$slots,`head`,{},()=>[d(`span`,we,U(e.label),1)],!0),h.value===`end`?(P(),u(`span`,{key:1,class:D([`accordion-icon`,[e.iconClass,{open:G(s)&&e.iconType===`expand_more`}]])},[m(G($),{icon:p.value},null,8,[`icon`])],2)):l(``,!0)],8,Ce),m(i,{name:`expand`},{default:J(()=>[G(s)?(P(),u(`div`,{key:0,id:`accordion-body-${G(f)}`,class:`accordion-body`,"aria-hidden":G(s)?`false`:`true`},[B(e.$slots,`default`,{},void 0,!0)],8,Te)):l(``,!0)]),_:3})],2))}}),Y=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},De=Y(Ee,[[`__scopeId`,`data-v-46e7dfbc`]]);const Oe={class:`relative`};var ke=h({__name:`AddressSearch`,emits:[`addressSelected`],setup(e,{emit:t}){let r=t,i=R(``),a=R([]),o=R();function s(e){r(`addressSelected`,e),a.value=[],i.value=``}async function l(){var e;let t=i.value.replaceAll(/\s+/g,`+`),n=`https://nominatim.openstreetmap.org/search?format=json&q=${encodeURI(t)}`,r=await fetch(n);a.value=await r.json()||[],(e=o.value)?.show()}return(e,t)=>(P(),u(`div`,Oe,[m(G(ec),{ref_key:`suggestion`,ref:o,noAutoFocus:!0,placement:`bottom-start`},{trigger:J(()=>[m(G(Md),{modelValue:G(i),"onUpdate:modelValue":t[0]||=e=>x(i)?i.value=e:i=e,placeholder:`Enter address`,onDebounce:l},null,8,[`modelValue`])]),default:J(()=>[m(G(hT),{class:`-mt-2 hm-300px`},{default:J(()=>[(P(!0),u(n,null,z(G(a),(e,t)=>(P(),c(G(lT),{key:t,icon:`location_on`,title:e.display_name,onClick:t=>s(e)},null,8,[`title`,`onClick`]))),128))]),_:1})]),_:1},512)]))}}),Ae=ke;const je={key:1,class:`bgl_btn-flex`};var Me=h({__name:`Btn`,props:{disabled:{type:Boolean,default:!1},icon:{},iconEnd:{},iconSize:{},iconMobileSize:{},color:{},theme:{},flat:{type:Boolean},border:{type:Boolean,default:!1},outline:{type:Boolean,default:!1},thin:{type:Boolean},size:{},type:{default:`button`},loading:{type:Boolean,default:!1},role:{default:`button`},value:{},to:{},href:{},round:{type:Boolean,default:!1},is:{default:`button`},ripple:{type:Boolean,default:!0},fullWidth:{type:Boolean,default:!1},fullWidthMobile:{type:Boolean,default:!1},alignTxt:{default:`center`},alignTxtMobile:{default:`center`},onClick:{type:Function,default:()=>``},confirm:{type:[Boolean,String]}},emits:[`confirmed`],setup(e,{emit:t}){let r=e,i=t,a=R(!1);function s(){a.value=window.innerWidth<=910}j(()=>{s(),window.addEventListener(`resize`,s)}),M(()=>{window.removeEventListener(`resize`,s)});async function d(e){if(r.confirm){let{confirmModal:t}=DO(),n=typeof r.confirm==`string`?r.confirm:`Are you sure?`,a=await t({title:`Confirm`,message:n});if(!a)return;r.onClick(e),i(`confirmed`,e)}else r.onClick(e)}let f=o(()=>{if(r.iconSize!==void 0)return r.iconSize;let e={xs:.7,"extra-small":.7,s:.9,small:.9,m:1,medium:1,l:1.3,large:1.3,xl:1.6,"extra-large":1.6};return r.size&&e[r.size]?e[r.size]:a.value?1:1.2}),m=o(()=>r.disabled?r.is:r.to?_e:r.href?`a`:r.is),h=o(()=>{let e={};return r.disabled||(r.to?e.to=r.to:r.href&&(e.href=r.href)),!r.to&&!r.href&&(e.role=r.role,e.type=r.type),e}),g=K();return(e,t)=>{let r=re(`ripple`);return pe((P(),c(V(m.value),T(h.value,{disabled:e.disabled,class:[`bgl_btn`,{"bgl_btn-icon":e.icon&&!G(g).default&&!e.value,thin:e.thin,bgl_btn_xsSize:e.size===`xs`||e.size===`extra-small`,bgl_btn_sSize:e.size===`s`||e.size===`small`,bgl_btn_mSize:e.size===`m`||e.size===`medium`,bgl_btn_lSize:e.size===`l`||e.size===`large`,bgl_btn_xlSize:e.size===`xl`||e.size===`extra-large`,bgl_btn_fullWidth:e.fullWidth,bgl_btn_fullWidthMobile:e.fullWidthMobile,bgl_btn_alignStart:e.alignTxt===`start`,bgl_btn_alignEnd:e.alignTxt===`end`,bgl_btn_alignStartMobile:e.alignTxtMobile===`start`,bgl_btn_alignEndMobile:e.alignTxtMobile===`end`,round:e.round,bgl_btn_flat:e.flat,"bgl_btn-border":e.border||e.outline,[`bgl_btn-${e.color}`]:e.color,[`bgl_btn-${e.theme}`]:e.theme}],tabindex:e.disabled?-1:0,onClick:he(d,[`stop`]),onKeydown:[me(d,[`enter`]),me(d,[`space`])]}),{default:J(()=>[e.loading?(P(),c(G(xT),{key:0,class:`h-100p`,size:`15`})):(P(),u(`div`,je,[e.icon?(P(),c(G($),{key:0,icon:e.icon,class:`transition-400`,size:f.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):l(``,!0),B(e.$slots,`default`,{},void 0,!0),!G(g).default&&e.value?(P(),u(n,{key:1},[p(U(e.value),1)],64)):l(``,!0),e.iconEnd?(P(),c(G($),{key:2,icon:e.iconEnd,class:`transition-400`,size:f.value,"mobile-size":e.iconMobileSize},null,8,[`icon`,`size`,`mobile-size`])):l(``,!0)]))]),_:3},16,[`disabled`,`class`,`tabindex`])),[[r,e.ripple]])}}}),X=Y(Me,[[`__scopeId`,`data-v-ce661abc`]]);const Ne=[`dismissable`],Pe={class:`m-0`};var Fe=h({__name:`Alert`,props:{message:{},thin:{type:Boolean},outline:{type:Boolean},dismissable:{type:Boolean},type:{default:`info`},icon:{}},setup(e){let t=R(!1),n={info:`var(--bgl-primary)`,warning:`var(--bgl-yellow)`,error:`var(--bgl-red)`};return(e,r)=>t.value?l(``,!0):(P(),u(`div`,{key:0,class:D([`alert`,[e.type,{thin:e.thin,outline:e.outline}]]),dismissable:e.dismissable},[e.icon===`none`?l(``,!0):(P(),c(G($),{key:0,class:`alert_icon`,icon:e.icon||e.type,size:1.7,color:n[e.type]},null,8,[`icon`,`color`])),B(e.$slots,`default`,{},()=>[d(`p`,Pe,U(e.message),1)],!0),m(X,{flat:``,thin:``,class:`alert_close`,icon:`close`,onClick:r[0]||=e=>t.value=!0})],10,Ne))}}),Ie=Y(Fe,[[`__scopeId`,`data-v-02bbea09`]]);const Le={class:`flex space-between pb-1`},Re={class:`flex align-center gap-05`},ze={class:`white-space light m_txt14`},Be={key:0,class:`flex align-center gap-025`},Ve={key:0,class:`absolute inset flex justify-content-center rounded`};var He=h({__name:`BarChart`,props:{title:{},data:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{type:Boolean,default:!1},maxBars:{default:30},loading:{type:Boolean,default:!1},rtl:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0}},setup(e){let t=e,r=R(0),i=R(!1),a=R(!1),s=R(null),f=R(null),p=o(()=>{if(!t.data||t.data.length===0)return[];let e=Math.max(...t.data.map(e=>e.value),1);return t.data.map(t=>({...t,height:Math.max(t.value/e*100,2),displayLabel:BO(t.date,`MMM`)}))}),h=o(()=>e=>{if(!t.animated)return 1;if(!a.value)return 0;let n=p.value.length,i=e/n,o=Math.max(0,Math.min(1,(r.value-i)*n));return o});function g(e){return 1-(1-e)**3}function _(){if(i.value||!t.animated)return;console.log(`🎯 TrendChart: Starting animation with ${t.animationDuration}ms duration`),i.value=!0,r.value=0;let e=performance.now();function n(a){let o=a-e,s=Math.min(o/t.animationDuration,1),c=g(s);r.value=c,s<1?requestAnimationFrame(n):(i.value=!1,console.log(`✅ TrendChart: Animation completed`))}requestAnimationFrame(n)}function v(){!f.value||s.value||(s.value=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!a.value&&(console.log(`👀 TrendChart: Entered viewport, starting animation in ${t.animationStartDelay}ms`),a.value=!0,setTimeout(()=>{_()},t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),s.value.observe(f.value))}j(()=>{t.animated?v():(a.value=!0,r.value=1)}),M(()=>{s.value&&s.value.disconnect()});function y(e,t=!1){return t?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function b(e){let n=y(e.value,t.currency),r=`${t.prefix}${n}${t.suffix}`,i=[`${e.displayLabel}`,`<b>${r}</b>`];return e.secondaryValues&&Array.isArray(e.secondaryValues)&&e.secondaryValues.forEach(e=>{let t=y(e.value,e.currency||!1),n=`${e.prefix||``}${t}${e.suffix||``}`;i.push(`${e.label}: <b>${n}</b>`)}),`<div class="trendTooltip">${i.join(`<p>`)}</div>`}return(e,t)=>{let r=re(`tooltip`);return P(),u(`div`,{ref_key:`chartRef`,ref:f,class:`h-100p flex column flex-stretch`},[d(`div`,Le,[d(`div`,Re,[m(G($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),d(`p`,ze,U(e.title),1)]),e.percentageChange===0?l(``,!0):(P(),u(`div`,Be,[m(G($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:D(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),d(`span`,{class:D([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},U(Math.abs(e.percentageChange))+`% `,3)]))]),d(`div`,{class:D([`flex w-100p align-items-end mt-auto gap-075 overflow justify-content-start`,[e.rtl?`rtl`:`ltr`]])},[(P(!0),u(n,null,z(p.value,(t,n)=>pe((P(),u(`div`,{key:n,class:`flex-grow txt-center hover transition-400 relative barWrap mb-1`,style:k({width:`max(2rem, ${100/p.value.length}%)`,opacity:h.value(n),transition:e.animated?`opacity 0.3s ease-out`:`none`})},[d(`div`,{class:`bar radius-05 transition-400`,style:k({height:`${t.height*1.8}px`,background:`linear-gradient(180deg, ${e.color}60, ${e.color}30)`,minHeight:`4px`})},null,4),p.value.length<=15||n%Math.ceil(p.value.length/8)===0?(P(),u(`span`,{key:0,class:D([`txt-9 block line-height-1 -bottom-075 white-space color-gray absolute`,e.rtl?`rtl`:`ltr`])},U(t.displayLabel),3)):l(``,!0)],4)),[[r,{content:b(t),html:!0}]])),128))],2),e.loading?(P(),u(`div`,Ve,[e.loading?(P(),c(G(xT),{key:0})):l(``,!0)])):l(``,!0)],512)}}}),Ue=He;const We={class:`flex space-between pb-1`},Ge={class:`flex align-center gap-05`},Ke={class:`white-space light m_txt14`},qe={key:0,class:`flex align-center gap-025`},Je={class:`chart-container flex-grow w-100p relative`},Ye=[`width`,`height`],Xe={class:`grid`},Ze=[`x1`,`y1`,`x2`,`y2`],Qe=[`x`,`y`,`text-anchor`],$e=[`x1`,`y1`,`x2`,`y2`],et=[`x1`,`y1`,`x2`,`y2`],tt=[`d`,`stroke`],nt={key:0},rt=[`cx`,`cy`,`fill`],it={class:`x-labels`},at=[`x`,`y`];var ot=h({__name:`LineChart`,props:{data:{},title:{default:`Line Chart`},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},height:{default:200},showPoints:{type:Boolean,default:!0},currency:{type:Boolean,default:!1},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationStartDelay:{default:0},percentageChange:{default:0}},setup(e){let t=e,r=R(),i=R(),a=R(600),s=R(t.height),c=R(0),f=R(!1),p=R(!1),h=null,g={top:20,inline_end:30,bottom:25,inline_start:60},_=o(()=>a.value-g.inline_start-g.inline_end),v=o(()=>s.value-g.top-g.bottom),y=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?g.inline_end:g.inline_start}),b=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?y.value+_.value+10:y.value-10}),x=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`;return e?`start`:`end`}),S=o(()=>Math.max(...t.data.map(e=>e.value),0)),C=o(()=>Math.min(...t.data.map(e=>e.value),0)),w=o(()=>{let e=document.documentElement.dir===`rtl`||document.documentElement.getAttribute(`lang`)===`he`,n=t.data.length-1;return t=>{let r=t/n*_.value;return e?_.value-r:r}}),T=o(()=>{let e=S.value-C.value||1;return t=>v.value-(t-C.value)/e*v.value}),E=o(()=>{if(t.data.length===0)return``;let e=t.data.length,n=t.animated?Math.ceil(e*c.value):e,r=t.data.slice(0,Math.max(1,n)),i=r.map((e,t)=>`${t===0?`M`:`L`} ${y.value+w.value(t)} ${g.top+T.value(e.value)}`).join(` `);return i}),O=o(()=>{if(!t.animated)return t.data;let e=t.data.length,n=Math.ceil(e*c.value);return t.data.slice(0,Math.max(1,n))}),k=o(()=>{let e=[],t=v.value/4;for(let n=0;n<=4;n++){let r=n*t,i=S.value-n/4*(S.value-C.value);e.push({y:r,value:i})}return e});function A(e){return t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:`ILS`,minimumFractionDigits:0}).format(e):e.toLocaleString()}function ee(e){let t=new Date(e);return t.toLocaleDateString(`he-IL`,{month:`short`,day:`numeric`})}function N(e){let t=[`${ee(e.date)}`,`<b>${A(e.value)}</b>`];return e.label&&t.push(`<b>${e.label}</b>`),`<div class="lineTooltip">${t.join(`<p>`)}</div>`}let F=()=>{typeof window>`u`||(h=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!p.value&&(p.value=!0,setTimeout(()=>{I()},100+t.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),i.value?h.observe(i.value):setTimeout(()=>{i.value&&h&&h.observe(i.value)},100))},I=()=>{console.log(`Starting LineChart animation for "${t.title}" (duration: ${t.animationDuration}ms, start delay: ${t.animationStartDelay}ms)`),f.value=!0,c.value=0;let e=Date.now(),n=()=>{let r=Date.now()-e,i=Math.min(r/t.animationDuration,1);c.value=L(i),i<1?requestAnimationFrame(n):(f.value=!1,console.log(`LineChart animation completed for "${t.title}"`))};requestAnimationFrame(n)},L=e=>1-(1-e)**3;return j(()=>{r.value&&(a.value=r.value.clientWidth||600),t.animated?F():c.value=1}),M(()=>{h&&h.disconnect()}),(e,t)=>{let o=re(`tooltip`);return P(),u(`div`,{ref_key:`chartRef`,ref:i,class:`line-chart h-100p flex column flex-stretch`},[d(`div`,We,[d(`div`,Ge,[m(G($),{name:e.icon,size:`1.2`,color:e.color,class:`line-height-0`},null,8,[`name`,`color`]),d(`p`,Ke,U(e.title),1)]),e.percentageChange===0?l(``,!0):(P(),u(`div`,qe,[m(G($),{name:e.percentageChange>0?`trending_up`:`trending_down`,size:`1`,class:D(e.percentageChange>0?`color-success`:`color-danger`)},null,8,[`name`,`class`]),d(`span`,{class:D([`txt12 bold`,e.percentageChange>0?`color-success`:`color-danger`])},U(Math.abs(e.percentageChange))+`% `,3)]))]),d(`div`,Je,[(P(),u(`svg`,{ref_key:`svgRef`,ref:r,width:a.value,height:s.value,class:`chart-svg h-100p w-100p`},[d(`g`,Xe,[(P(!0),u(n,null,z(k.value,e=>(P(),u(`line`,{key:e.y,x1:y.value,y1:g.top+e.y,x2:y.value+_.value,y2:g.top+e.y,stroke:`#e0e0e0`,"stroke-width":`1`},null,8,Ze))),128)),(P(!0),u(n,null,z(k.value,e=>(P(),u(`text`,{key:`label-${e.y}`,x:b.value,y:g.top+e.y+4,class:`grid-label`,"text-anchor":x.value},U(A(e.value)),9,Qe))),128))]),d(`line`,{x1:y.value,y1:g.top+v.value,x2:y.value+_.value,y2:g.top+v.value,stroke:`#ccc`,"stroke-width":`2`},null,8,$e),d(`line`,{x1:y.value,y1:g.top,x2:y.value,y2:g.top+v.value,stroke:`#ccc`,"stroke-width":`2`},null,8,et),d(`path`,{d:E.value,stroke:e.color,"stroke-width":`3`,fill:`none`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,8,tt),e.showPoints?(P(),u(`g`,nt,[(P(!0),u(n,null,z(O.value,(t,n)=>pe((P(),u(`circle`,{key:n,cx:y.value+w.value(n),cy:g.top+T.value(t.value),r:`4`,fill:e.color,class:`data-point`},null,8,rt)),[[o,{content:N(t),html:!0}]])),128))])):l(``,!0),d(`g`,it,[(P(!0),u(n,null,z(O.value.filter((e,t)=>t%Math.ceil(O.value.length/6)===0),(e,t)=>(P(),u(`text`,{key:t,x:y.value+w.value(O.value.findIndex(t=>t===e)),y:g.top+v.value+15,class:`axis-label`,"text-anchor":`middle`},U(ee(e.date)),9,at))),128))])],8,Ye))])],512)}}}),st=Y(ot,[[`__scopeId`,`data-v-ceb26ffc`]]);const ct={class:`mb-1 flex space-between align-items-start m_mb-05 w-100p`},lt={class:`flex gap-025`},ut={class:`txt14 m-0 line-height-12 light opacity-6`},dt={key:0,class:`txt12 color-gray`},ft={class:`flex`},pt={key:0,class:`kpi-prefix txt16 semi color-gray`},mt={class:`kpi-main-value bold txt28 m_txt24 line-height-1`},ht={key:1,class:`kpi-suffix txt16 semi color-gray`};var gt=h({__name:`KpiCard`,props:{title:{},value:{},icon:{default:`trending_up`},color:{default:`var(--bgl-primary)`},percentageChange:{default:0},prefix:{default:``},suffix:{default:``},currency:{},loading:{type:Boolean,default:!1},subtitle:{default:``}},setup(e){let t=e,n=o(()=>t.percentageChange>=0),r=o(()=>typeof t.value==`string`?t.value:t.currency?new Intl.NumberFormat(`he-IL`,{style:`currency`,currency:t.currency,minimumFractionDigits:0}).format(t.value):t.value.toLocaleString()),i=o(()=>n.value?`var(--bgl-green)`:`var(--bgl-red)`);return(e,t)=>(P(),c(G(oi),{class:`flex column space-between align-items-start py-1 px-1-5 m_p-1 relative`},{default:J(()=>[d(`div`,ct,[d(`div`,lt,[m(G($),{name:e.icon,size:`1`,color:e.color,class:`line-height-0`,weight:`300`},null,8,[`name`,`color`]),d(`div`,null,[d(`h3`,ut,U(e.title),1),e.subtitle?(P(),u(`p`,dt,U(e.subtitle),1)):l(``,!0)])]),e.percentageChange===0?l(``,!0):(P(),u(`div`,{key:0,class:`kpi-trend flex gap-025 txt12 bold ms-auto`,style:k({color:i.value})},[m(G($),{name:n.value?`trending_up`:`trending_down`},null,8,[`name`]),d(`span`,null,U(Math.abs(e.percentageChange).toFixed(1))+`%`,1)],4))]),d(`div`,ft,[d(`div`,{class:D([`flex align-items-baseline gap-025 w100p`,{loading:e.loading}])},[e.prefix?(P(),u(`span`,pt,U(e.prefix),1)):l(``,!0),d(`span`,mt,U(e.loading?`...`:r.value),1),e.suffix?(P(),u(`span`,ht,U(e.suffix),1)):l(``,!0)],2)])]),_:1}))}}),_t=Y(gt,[[`__scopeId`,`data-v-3883b5a7`]]);const vt={class:`flex space-between pb-1`},yt={class:`flex align-center gap-05`},bt={class:`white-space light m_txt14`},xt={key:0,class:`flex align-center gap-025`},St=[`width`,`height`],Ct=[`transform`],wt=[`d`,`fill`],Tt={key:0,class:`center-text`},Et={x:`0`,y:`-8`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-label txt12 opacity-7`},Dt={x:`0`,y:`12`,"text-anchor":`middle`,"dominant-baseline":`middle`,class:`center-value txt20 bold`},Ot={key:1,class:`connector-lines`},kt=[`points`],At={key:2,class:`chart-labels`},jt={key:0},Mt=[`x`,`y`,`fill`],Nt=[`x`,`y`,`fill`],Pt=[`x`,`y`,`text-anchor`,`fill`],Ft=[`x`,`y`,`text-anchor`],It=[`x`,`y`,`text-anchor`],Lt={key:0,class:`legend mx-auto display-flex column gap-05 min-w-100px`},Rt={key:0,class:`flex-shrink-1 flex-grow-1`},zt={class:`bold`},Bt={class:`opacity-6 txt12`};var Vt=h({__name:`PieChart`,props:{data:{},title:{default:`Pie Chart`},icon:{default:`bx-pie-chart-alt`},color:{default:`#3B82F6`},colors:{},size:{default:200},showLegend:{type:Boolean,default:!0},donut:{type:Boolean,default:!1},thickness:{default:.6},centerLabel:{default:`Total`},animated:{type:Boolean,default:!0},animationDuration:{default:1500},animationDelay:{default:200},animationStartDelay:{default:0},centerValue:{},showCenterTotal:{type:Boolean,default:!0},percentageChange:{default:0},showLabelsOnChart:{type:Boolean,default:!1},showConnectorLines:{type:Boolean,default:!1},labelColor:{default:`#333`}},setup(e,{expose:t}){let r=e,i=o(()=>{if(r.colors&&r.colors.length>0)return r.colors;let e=r.color,t=[1,.8,.6,.4,.85,.7,.5,.3,.9,.75];return t.map(t=>{let n=e.replace(`#`,``),r=parseInt(n.substr(0,2),16),i=parseInt(n.substr(2,2),16),a=parseInt(n.substr(4,2),16);return`rgba(${r}, ${i}, ${a}, ${t})`})}),a=R(0),s=R(!1),c=R(),f=R(!1);j(()=>{r.animated?h():a.value=1}),M(()=>{p&&p.disconnect()});let p=null,h=()=>{typeof window>`u`||(p=new IntersectionObserver(e=>{e.forEach(e=>{e.isIntersecting&&!f.value&&(f.value=!0,setTimeout(()=>{g()},100+r.animationStartDelay))})},{threshold:.3,rootMargin:`50px`}),c.value?p.observe(c.value):setTimeout(()=>{c.value&&p&&p.observe(c.value)},100))},g=()=>{let e=r.animationDelay>0?`staggered with delay`:`quick stagger`;console.log(`Starting animation for "${r.title}" - ${e} mode (duration: ${r.animationDuration}ms, start delay: ${r.animationStartDelay}ms)`),s.value=!0,a.value=0;let t=Date.now(),n=()=>{let e=Date.now()-t,i=Math.min(e/r.animationDuration,1);a.value=_(i),i<1?requestAnimationFrame(n):(s.value=!1,console.log(`Animation completed`))};requestAnimationFrame(n)},_=e=>1-(1-e)**3,v=()=>{r.animated&&g()};t({restartAnimation:v});let y=o(()=>r.showConnectorLines?{width:r.size+200,height:r.size+100}:{width:r.size,height:r.size}),b=o(()=>r.showConnectorLines?{x:y.value.width/2-10,y:y.value.height/2}:{x:r.size/2,y:r.size/2}),x=o(()=>r.data.reduce((e,t)=>e+t.value,0)),S=e=>{let t=(e.startAngle+e.endAngle)/2,n=t*Math.PI/180,i=r.size/2-10,a=r.donut?i*.8:i*.7;return{x:Math.cos(n)*a,y:Math.sin(n)*a}},C=e=>{let t=(e.startAngle+e.endAngle)/2,n=t*Math.PI/180,i=r.size/2-10,a=r.donut?i*r.thickness:i*.5,o=i+15,s=Math.cos(n)*a,c=Math.sin(n)*a,l=Math.cos(n)*o,u=Math.sin(n)*o,d=l+(l>0?8:-8),f=u;return{innerX:s,innerY:c,outerX:l,outerY:u,labelX:d,labelY:f,textAnchor:l>0?`start`:`end`}},w=o(()=>r.centerValue===void 0?r.showCenterTotal?x.value:0:r.centerValue),T=o(()=>{let e=0;return r.data.map((t,n)=>{let o=t.value/x.value,s=o*360,c=e,l=e+s;e+=s;let u=100,d=r.animationDelay>0?u+n*r.animationDelay:u+n*50,f=a.value*r.animationDuration,p=!r.animated||f>=d;if(r.animated&&n===0&&console.log(`Animation progress: ${(a.value*100).toFixed(1)}%, elapsed: ${f.toFixed(0)}ms`),p)n<3&&console.log(`Segment ${n} visible! - delay: ${d}ms, elapsed: ${f.toFixed(0)}ms`);else return n<3&&console.log(`Segment ${n} waiting - needs ${d}ms, current: ${f.toFixed(0)}ms`),{...t,percentage:o,angle:0,startAngle:c,endAngle:c,path:``,color:t.color||i.value[n%i.value.length],visible:!1};let m=c*Math.PI/180,h=l*Math.PI/180,g=r.size/2-10,_=r.donut?g*r.thickness:0,v=l-c,y=v>180?1:0,b=r.donut?O(m,h,g,_,y):E(m,h,g,y);return{...t,percentage:o,angle:v,startAngle:c,endAngle:l,path:b,color:t.color||i.value[n%i.value.length],visible:!0}})});function E(e,t,n,r){let i=Math.cos(e)*n,a=Math.sin(e)*n,o=Math.cos(t)*n,s=Math.sin(t)*n;return`M 0 0 L ${i} ${a} A ${n} ${n} 0 ${r} 1 ${o} ${s} Z`}function O(e,t,n,r,i){let a=Math.cos(e)*n,o=Math.sin(e)*n,s=Math.cos(t)*n,c=Math.sin(t)*n,l=Math.cos(e)*r,u=Math.sin(e)*r,d=Math.cos(t)*r,f=Math.sin(t)*r;return`M ${a} ${o} A ${n} ${n} 0 ${i} 1 ${s} ${c} L ${d} ${f} A ${r} ${r} 0 ${i} 0 ${l} ${u} Z`}function A(e){return e.toLocaleString()}function ee(e){return`${(e*100).toFixed(1)}%`}function N(e){return`<div class="pieTooltip">
2
2
  <div class="round w-10px h-10px w-100p inline-block" style="background-color: ${e.color};"></div>
3
3
  <p class="inline-block txt12">${e.label}</p>
4
4
  <div class="gap-025 flex">
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bagelink/vue",
3
3
  "type": "module",
4
- "version": "1.4.165",
4
+ "version": "1.4.167",
5
5
  "description": "Bagel core sdk packages",
6
6
  "author": {
7
7
  "name": "Neveh Allon",
@@ -1,5 +1,5 @@
1
1
  <script setup lang="ts">
2
- import { Icon, Loading } from '@bagelink/vue'
2
+ import { formatDate, Icon, Loading } from '@bagelink/vue'
3
3
  import { computed, ref, onMounted, onUnmounted } from 'vue'
4
4
 
5
5
  interface SecondaryValue {
@@ -61,11 +61,10 @@ const chartData = computed(() => {
61
61
 
62
62
  // Use all data without limiting to maxBars
63
63
  const maxValue = Math.max(...props.data.map(d => d.value), 1)
64
-
65
64
  return props.data.map(item => ({
66
65
  ...item,
67
66
  height: Math.max((item.value / maxValue) * 100, 2), // Minimum height of 2%
68
- displayLabel: formatDate(item.date)
67
+ displayLabel: formatDate(item.date, 'MMM')
69
68
  }))
70
69
  })
71
70
 
@@ -87,7 +86,7 @@ const getBarOpacity = computed(() => {
87
86
 
88
87
  // Animation functions
89
88
  function easeOutCubic(t: number): number {
90
- return 1 - Math.pow(1 - t, 3)
89
+ return 1 - (1 - t) ** 3
91
90
  }
92
91
 
93
92
  function startAnimation() {
@@ -122,7 +121,7 @@ function setupIntersectionObserver() {
122
121
 
123
122
  observer.value = new IntersectionObserver(
124
123
  (entries) => {
125
- entries.forEach(entry => {
124
+ entries.forEach((entry) => {
126
125
  if (entry.isIntersecting && !isInView.value) {
127
126
  console.log(`👀 TrendChart: Entered viewport, starting animation in ${props.animationStartDelay}ms`)
128
127
  isInView.value = true
@@ -157,14 +156,6 @@ onUnmounted(() => {
157
156
  }
158
157
  })
159
158
 
160
- function formatDate(dateStr: string): string {
161
- const date = new Date(dateStr)
162
- return date.toLocaleDateString('he-IL', {
163
- month: 'short',
164
- day: 'numeric'
165
- })
166
- }
167
-
168
159
  function formatValue(value: number, isCurrency: boolean = false): string {
169
160
  if (isCurrency) {
170
161
  return new Intl.NumberFormat('he-IL', {
@@ -179,8 +170,7 @@ function formatValue(value: number, isCurrency: boolean = false): string {
179
170
  function formatTooltip(item: any): string {
180
171
  const primaryValue = formatValue(item.value, props.currency)
181
172
  const primaryText = `${props.prefix}${primaryValue}${props.suffix}`
182
-
183
- let tooltipLines = [`${item.displayLabel}`, `<b>${primaryText}</b>`]
173
+ const tooltipLines = [`${item.displayLabel}`, `<b>${primaryText}</b>`]
184
174
 
185
175
  if (item.secondaryValues && Array.isArray(item.secondaryValues)) {
186
176
  item.secondaryValues.forEach((secondary: SecondaryValue) => {
@@ -204,27 +194,29 @@ function formatTooltip(item: any): string {
204
194
  </p>
205
195
  </div>
206
196
  <div v-if="percentageChange !== 0" class="flex align-center gap-025">
207
- <Icon :name="percentageChange > 0 ? 'trending_up' : 'trending_down'" size="1" :class="percentageChange > 0 ? 'color-success' : 'color-danger'" />
197
+ <Icon
198
+ :name="percentageChange > 0 ? 'trending_up' : 'trending_down'" size="1"
199
+ :class="percentageChange > 0 ? 'color-success' : 'color-danger'"
200
+ />
208
201
  <span class="txt12 bold" :class="percentageChange > 0 ? 'color-success' : 'color-danger'">
209
202
  {{ Math.abs(percentageChange) }}%
210
203
  </span>
211
204
  </div>
212
205
  </div>
213
- <div class="flex w-100p align-items-end mt-auto gap-075 overflow justify-content-start" :class="[rtl ? 'rtl' : 'ltr']">
206
+ <div
207
+ class="flex w-100p align-items-end mt-auto gap-075 overflow justify-content-start"
208
+ :class="[rtl ? 'rtl' : 'ltr']"
209
+ >
214
210
  <div
215
- v-for="(bar, index) in chartData"
216
- :key="index"
217
- v-tooltip="{ content: formatTooltip(bar), html: true }"
218
- class="flex-grow txt-center hover transition-400 relative barWrap mb-1"
219
- :style="{
211
+ v-for="(bar, index) in chartData" :key="index" v-tooltip="{ content: formatTooltip(bar), html: true }"
212
+ class="flex-grow txt-center hover transition-400 relative barWrap mb-1" :style="{
220
213
  width: `max(2rem, ${100 / chartData.length}%)`,
221
214
  opacity: getBarOpacity(index),
222
- transition: animated ? 'opacity 0.3s ease-out' : 'none'
215
+ transition: animated ? 'opacity 0.3s ease-out' : 'none',
223
216
  }"
224
217
  >
225
218
  <div
226
- class="bar radius-05 transition-400 "
227
- :style="{
219
+ class="bar radius-05 transition-400 " :style="{
228
220
  height: `${bar.height * 1.8}px`,
229
221
  background: `linear-gradient(180deg, ${color}60, ${color}30)`,
230
222
  minHeight: '4px',
@@ -250,16 +242,19 @@ function formatTooltip(item: any): string {
250
242
  font-weight: 300 !important;
251
243
  font-size: 12px;
252
244
  }
245
+
253
246
  .trendTooltip {
254
247
  font-weight: 700 !important;
255
248
  }
249
+
256
250
  .v-popper--theme-tooltip .v-popper__inner:has(.trendTooltip) {
257
251
  background-color: var(--bgl-black) !important;
258
252
  color: var(--bgl-white) !important;
259
253
  border-radius: 0.5rem !important;
260
254
  padding: 0.25rem 0.5rem !important;
261
255
  }
262
- .bar{
256
+
257
+ .bar {
263
258
  min-width: 2rem;
264
259
  }
265
260
  </style>