(function(c,o){typeof exports=="object"&&typeof module<"u"?o(exports):typeof define=="function"&&define.amd?define(["exports"],o):(c=typeof globalThis<"u"?globalThis:c||self,o(c.kalemah={}))})(this,function(c){"use strict";var x=Object.defineProperty;var j=(c,o,u)=>o in c?x(c,o,{enumerable:!0,configurable:!0,writable:!0,value:u}):c[o]=u;var s=(c,o,u)=>(j(c,typeof o!="symbol"?o+"":o,u),u);const o=new Map;class u{constructor(t){s(this,"_key","");s(this,"_browser",!1);s(this,"_localizations",[]);s(this,"_default","");s(this,"_active","");var r,i,f,n;if(!t)throw new Error("Doc must be defined");if((r=t==null?void 0:t.localizations)!=null&&r.length){if((i=t.localizations)!=null&&i.find(a=>!(a!=null&&a.name)||!a.content))throw new Error("Every localization must have a name and content for each localization")}else throw new Error("Doc must have at least one localization");this._key=t.key||"default",this._browser=t.browser||!1,this._localizations=t.localizations,this._default=t.default||((n=(f=t.localizations)==null?void 0:f[0])==null?void 0:n.name),this._active=t.active||this._default,o.set(this._key,this)}}function k({docKey:e,name:t}){var f;let r=o.get(e);if(!r){console.error("doc not found");return}if(!((f=r==null?void 0:r._localizations)==null?void 0:f.find(n=>n.name===t))){console.error("please double check the name, it doesn't exist");return}r._active=t,o.set(e,r)}function v({docKey:e}){let t=o.get(e);if(!t){console.error("doc not found");return}return t._active}function z({docKey:e}){if(!o.get(e)){console.error("doc not found");return}return m({docKey:e}).content}function m({docKey:e}){let t=o.get(e);if(!t){console.error("doc not found");return}let r=t._localizations.find(i=>i.name===t._active);if(!r){console.error("active Localization not found");return}return r}function b({docKey:e,path:t}){return o.get(e)?g(z({docKey:e})||{},t)!==void 0:(console.error("doc not found"),!1)}function w({docKey:e,name:t}){let r=o.get(e);if(!r){console.error("doc not found");return}return t?r._localizations.find(i=>i.name===t):m({docKey:e})}function p({docKey:e}){let t=o.get(e);if(!t){console.error("doc not found");return}return t._localizations}function g(e,t){if(!e||!t)throw console.log("%cgetObjPath()","font-weight: bold; color: red"),TypeError("obj & path are required");const r=y(t);let i=e;for(const f of r)if(i&&typeof i=="object")if(Array.isArray(i)&&/^\d+$/.test(f)){const n=parseInt(f,10);if(n>=0&&nE.name===l))==null?void 0:_.content)||{},n)}function f(n){var a;return(a=w({docKey:e||"default",name:n}))==null?void 0:a.dir}return{k:r,activeName:()=>v({docKey:e||"default"}),changeLanguage:n=>k({docKey:e||"default",name:n}),exists:n=>b({docKey:e||"default",path:n}),activeContent:()=>t(),contents:()=>{var n,a;return(a=(n=o.get(e||"default"))==null?void 0:n._localizations)==null?void 0:a.map(l=>l.content)},getKey:i,getLocalization:n=>w({docKey:e||"default",name:n}),getLocalizations:n=>p({docKey:n||"default"}),dir:f}}c.Doc=u,c.kalemah=L,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})});