polotno 2.1.2 → 2.2.1

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.
@@ -20,7 +20,7 @@
20
20
  width: 100%;
21
21
  cursor: pointer;
22
22
  display: block;
23
- max-height: 200px;
23
+ max-height: 250px;
24
24
  min-height: 50px;
25
25
  object-fit: contain;
26
26
  `,CreditWrap=(0,styled_1.default)("div")`
@@ -1 +1 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.LayersPanel=void 0;const react_1=__importDefault(require("react")),mobx_react_lite_1=require("mobx-react-lite"),core_1=require("@blueprintjs/core"),l10n_1=require("../utils/l10n"),react_sortablejs_1=require("react-sortablejs"),text_1=require("../utils/text"),SortItem=(0,mobx_react_lite_1.observer)((({element:e,store:t})=>{const l=t.selectedElements.indexOf(e)>=0,[a,r]=react_1.default.useState(!1),n=()=>r(!1),i=a?e.name:e.name||(0,text_1.removeTags)(e.text)||`#${e.id}`;return react_1.default.createElement(core_1.Card,{onMouseDown:l=>{const a=l.ctrlKey||l.metaKey||l.shiftKey?[...t.selectedElementsIds]:[];a.indexOf(e.id)<0&&a.push(e.id),t.selectElements(a)},style:{padding:"5px",margin:"0px 1px 5px 1px",backgroundColor:l?"rgb(0, 161, 255, 0.2)":"",display:e.selectable?"auto":"none"}},react_1.default.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},react_1.default.createElement("div",{style:{lineHeight:"30px",display:"flex"}},react_1.default.createElement("div",{className:"drag-handle",style:{display:"flex",justifyContent:"center",alignItems:"center",cursor:"move",height:"30px"}},react_1.default.createElement(core_1.Icon,{icon:"drag-handle-vertical"})),react_1.default.createElement("div",{style:{padding:"0 7px",opacity:.5,width:"55px"}},(0,l10n_1.t)("sidePanel.layerTypes."+e.type)),react_1.default.createElement("div",{style:{maxWidth:"142px"}},react_1.default.createElement(core_1.EditableText,{minWidth:130,placeholder:(0,l10n_1.t)("sidePanel.namePlaceholder"),value:i,maxLines:1,onEdit:()=>r(!0),onCancel:n,onConfirm:n,onChange:t=>{e.set({name:t})}}))),react_1.default.createElement("div",null,react_1.default.createElement(core_1.Button,{minimal:!0,icon:(null==e?void 0:e.visible)?"eye-open":"eye-off",onClick:()=>{e.set({visible:!e.visible})}}),react_1.default.createElement(core_1.Button,{minimal:!0,icon:(null==e?void 0:e.locked)?"lock":"unlock",onClick:()=>{e.set({draggable:e.locked,contentEditable:e.locked,styleEditable:e.locked,resizable:e.locked})}}),react_1.default.createElement(core_1.Button,{icon:"trash",minimal:!0,disabled:!e.removable,onClick:()=>{t.deleteElements([e.id])},style:{marginLeft:"auto"}}))))}));exports.LayersPanel=(0,mobx_react_lite_1.observer)((({store:e})=>{var t;const l=(null===(t=e.activePage)||void 0===t?void 0:t.children.map((e=>({id:e.id}))))||[];return l.reverse(),react_1.default.createElement("div",{style:{height:"100%",overflow:"auto"}},react_1.default.createElement("div",{style:{height:"40px",paddingTop:"5px"}},(0,l10n_1.t)("sidePanel.layersTip")),react_1.default.createElement("div",null,0===l.length?react_1.default.createElement("div",null,(0,l10n_1.t)("sidePanel.noLayers")):null,react_1.default.createElement(react_sortablejs_1.ReactSortable,{list:l,setList:t=>{t.forEach((({id:l},a)=>{var r,n;const i=t.length-a-1,c=e.getElementById(l);(null===(r=e.activePage)||void 0===r?void 0:r.children.indexOf(c))!==i&&(null===(n=e.activePage)||void 0===n||n.setElementZIndex(c.id,i))}))},direction:"horizontal"},l.map((({id:t})=>{const l=e.getElementById(t);return react_1.default.createElement(SortItem,{element:l,store:e,key:t})})))))}));
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.LayersPanel=void 0;const react_1=__importDefault(require("react")),mobx_react_lite_1=require("mobx-react-lite"),core_1=require("@blueprintjs/core"),l10n_1=require("../utils/l10n"),react_sortablejs_1=require("react-sortablejs"),text_1=require("../utils/text"),SortItem=(0,mobx_react_lite_1.observer)((({element:e,store:t})=>{const l=t.selectedElements.indexOf(e)>=0,[a,r]=react_1.default.useState(!1),n=()=>r(!1),i=a?e.name:e.name||(0,text_1.removeTags)(e.text)||`#${e.id}`;return react_1.default.createElement(core_1.Card,{onMouseDown:l=>{const a=l.ctrlKey||l.metaKey||l.shiftKey?[...t.selectedElementsIds]:[];a.indexOf(e.id)<0&&a.push(e.id),t.selectElements(a)},style:{padding:"5px",margin:"0px 1px 5px 1px",backgroundColor:l?"rgb(0, 161, 255, 0.2)":"",display:e.selectable||"admin"===t.role?"auto":"none"}},react_1.default.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},react_1.default.createElement("div",{style:{lineHeight:"30px",display:"flex"}},react_1.default.createElement("div",{className:"drag-handle",style:{display:"flex",justifyContent:"center",alignItems:"center",cursor:"move",height:"30px"}},react_1.default.createElement(core_1.Icon,{icon:"drag-handle-vertical"})),react_1.default.createElement("div",{style:{padding:"0 7px",opacity:.5,width:"55px"}},(0,l10n_1.t)("sidePanel.layerTypes."+e.type)),react_1.default.createElement("div",{style:{maxWidth:"142px"}},react_1.default.createElement(core_1.EditableText,{minWidth:130,placeholder:(0,l10n_1.t)("sidePanel.namePlaceholder"),value:i,maxLines:1,onEdit:()=>r(!0),onCancel:n,onConfirm:n,onChange:t=>{e.set({name:t})}}))),react_1.default.createElement("div",null,react_1.default.createElement(core_1.Button,{minimal:!0,icon:(null==e?void 0:e.visible)?"eye-open":"eye-off",onClick:()=>{e.set({visible:!e.visible})}}),react_1.default.createElement(core_1.Button,{minimal:!0,icon:(null==e?void 0:e.locked)?"lock":"unlock",onClick:()=>{e.set({draggable:e.locked,contentEditable:e.locked,styleEditable:e.locked,resizable:e.locked})}}),react_1.default.createElement(core_1.Button,{icon:"trash",minimal:!0,disabled:!e.removable,onClick:()=>{t.deleteElements([e.id])},style:{marginLeft:"auto"}}))))}));exports.LayersPanel=(0,mobx_react_lite_1.observer)((({store:e})=>{var t;const l=(null===(t=e.activePage)||void 0===t?void 0:t.children.map((e=>({id:e.id}))))||[];return l.reverse(),react_1.default.createElement("div",{style:{height:"100%",overflow:"auto"}},react_1.default.createElement("div",{style:{height:"40px",paddingTop:"5px"}},(0,l10n_1.t)("sidePanel.layersTip")),react_1.default.createElement("div",null,0===l.length?react_1.default.createElement("div",null,(0,l10n_1.t)("sidePanel.noLayers")):null,react_1.default.createElement(react_sortablejs_1.ReactSortable,{list:l,setList:t=>{t.forEach((({id:l},a)=>{var r,n;const i=t.length-a-1,c=e.getElementById(l);(null===(r=e.activePage)||void 0===r?void 0:r.children.indexOf(c))!==i&&(null===(n=e.activePage)||void 0===n||n.setElementZIndex(c.id,i))}))},direction:"horizontal"},l.map((({id:t})=>{const l=e.getElementById(t);return react_1.default.createElement(SortItem,{element:l,store:e,key:t})})))))}));
@@ -83,4 +83,4 @@
83
83
  }
84
84
 
85
85
  ${(0,screen_1.mobileStyle)("\n display: none;\n ")}
86
- `,HideButton=({onClick:e})=>react_1.default.createElement(HideButtonContainer,{onClick:e},react_1.default.createElement("svg",{width:"15",height:"96",viewBox:"0 0 16 96",xmlns:"http://www.w3.org/2000/svg"},react_1.default.createElement("path",{className:"fill stroke",d:"M 1 7 C 2 9 4 10 7.2 13.28 C 7.45 13.4625 7.6 13.6 7.7 13.8048 L 7.8 13.8 C 9.8 15.8 11.6 17.6 12.9 19.7 C 14 21.6 14.7 23.9 14.9 27 H 15 V 68 C 15 71.7 14.3 74.3 13 76.6 C 11.7 78.8 9.9 80.5 7.8 82.6344 L 7.79 82.6 C 7.6 82.8 7.4507 83 7.2729 83.2127 C 3.9102 86.5228 2 87 1 90"})),react_1.default.createElement("div",{className:"pointer"},"<"));exports.SidePanel=(0,mobx_react_lite_1.observer)((({store:e,sections:t,defaultSection:a})=>{var n;react_1.default.useLayoutEffect((()=>{e.openSidePanel(a||"photos")}),[]);const o=t||exports.DEFAULT_SECTIONS,r=o.filter((e=>{var t;return null===(t=e.visibleInList)||void 0===t||t})),l=null===(n=o.find((t=>t.name===e.openedSidePanel)))||void 0===n?void 0:n.Panel,i=(0,screen_1.useMobile)();react_1.default.useEffect((()=>{i?e.openSidePanel(""):e.openSidePanel(a||"photos")}),[i]);const s=react_1.default.useRef(null);return react_1.default.createElement(SidePanelContainer,{className:"bp5-navbar polotno-side-panel"+(e.openedSidePanel?"":" collapsed")},react_1.default.createElement(TabsWrap,{ref:s,className:"polotno-side-tabs-container"},react_1.default.createElement(TabsContainer,{className:"polotno-side-tabs-inner"},r.map((({name:t,Tab:a})=>react_1.default.createElement(a,{key:t,active:t===e.openedSidePanel,onClick:()=>{e.openSidePanel(t)}}))))),l&&react_1.default.createElement(PanelContainer,{className:"bp5-navbar polotno-panel-container",onClick:t=>{const a=t.target.closest(".polotno-close-panel"),n=t.target.closest(".polotno-mobile");a&&(i||n)&&e.openSidePanel("")}},react_1.default.createElement(l,{store:e})),e.openedSidePanel&&react_1.default.createElement(MobileOverlay,{onClick:()=>e.openSidePanel("")}),e.openedSidePanel&&react_1.default.createElement(HideButton,{onClick:()=>e.openSidePanel("")}))})),exports.default=exports.SidePanel;
86
+ `,HideButton=({onClick:e})=>react_1.default.createElement(HideButtonContainer,{onClick:e},react_1.default.createElement("svg",{width:"15",height:"96",viewBox:"0 0 16 96",xmlns:"http://www.w3.org/2000/svg"},react_1.default.createElement("path",{className:"fill stroke",d:"M 1 7 C 2 9 4 10 7.2 13.28 C 7.45 13.4625 7.6 13.6 7.7 13.8048 L 7.8 13.8 C 9.8 15.8 11.6 17.6 12.9 19.7 C 14 21.6 14.7 23.9 14.9 27 H 15 V 68 C 15 71.7 14.3 74.3 13 76.6 C 11.7 78.8 9.9 80.5 7.8 82.6344 L 7.79 82.6 C 7.6 82.8 7.4507 83 7.2729 83.2127 C 3.9102 86.5228 2 87 1 90"})),react_1.default.createElement("div",{className:"pointer"},"<"));exports.SidePanel=(0,mobx_react_lite_1.observer)((({store:e,sections:t,defaultSection:a})=>{var n;react_1.default.useLayoutEffect((()=>{e.openSidePanel(a||"photos")}),[]);const o=t||exports.DEFAULT_SECTIONS,r=o.filter((e=>{var t;return null===(t=e.visibleInList)||void 0===t||t})),l=null===(n=o.find((t=>t.name===e.openedSidePanel)))||void 0===n?void 0:n.Panel,i=(0,screen_1.useMobile)();react_1.default.useLayoutEffect((()=>{i?e.openSidePanel(""):e.openSidePanel(a||"photos")}),[i]);const s=react_1.default.useRef(null);return react_1.default.createElement(SidePanelContainer,{className:"bp5-navbar polotno-side-panel"+(e.openedSidePanel?"":" collapsed")},react_1.default.createElement(TabsWrap,{ref:s,className:"polotno-side-tabs-container"},react_1.default.createElement(TabsContainer,{className:"polotno-side-tabs-inner"},r.map((({name:t,Tab:a})=>react_1.default.createElement(a,{key:t,active:t===e.openedSidePanel,onClick:()=>{e.openSidePanel(t)}}))))),l&&react_1.default.createElement(PanelContainer,{className:"bp5-navbar polotno-panel-container",onClick:t=>{const a=t.target.closest(".polotno-close-panel"),n=t.target.closest(".polotno-mobile");a&&(i||n)&&e.openSidePanel("")}},react_1.default.createElement(l,{store:e})),e.openedSidePanel&&react_1.default.createElement(MobileOverlay,{onClick:()=>e.openSidePanel("")}),e.openedSidePanel&&react_1.default.createElement(HideButton,{onClick:()=>e.openSidePanel("")}))})),exports.default=exports.SidePanel;
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { StoreType } from '../model/store';
3
+ import { FigureElementType } from '../model/figure-model';
4
+ type Props = {
5
+ store: StoreType;
6
+ components?: any;
7
+ };
8
+ type ButtonProps = {
9
+ element?: FigureElementType;
10
+ store: StoreType;
11
+ elements: FigureElementType[];
12
+ };
13
+ export declare const FigureColor: (({ elements, store }: ButtonProps) => React.JSX.Element) & {
14
+ displayName: string;
15
+ };
16
+ export declare const FigureSettings: (({ store, elements }: ButtonProps) => React.JSX.Element) & {
17
+ displayName: string;
18
+ };
19
+ export declare const FigureStroke: (({ elements, store }: ButtonProps) => React.JSX.Element) & {
20
+ displayName: string;
21
+ };
22
+ export declare const FigureToolbar: (({ store, components }: Props) => React.JSX.Element) & {
23
+ displayName: string;
24
+ };
25
+ export default FigureToolbar;
@@ -0,0 +1 @@
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.FigureToolbar=exports.FigureStroke=exports.FigureSettings=exports.FigureColor=void 0;const react_1=__importDefault(require("react")),mobx_react_lite_1=require("mobx-react-lite"),core_1=require("@blueprintjs/core"),core_2=require("@blueprintjs/core"),ZoStrokeWidth_1=__importDefault(require("@meronex/icons/zo/ZoStrokeWidth")),color_picker_1=__importDefault(require("./color-picker")),animations_picker_1=require("./animations-picker"),filters_picker_1=require("./filters-picker"),element_container_1=require("./element-container"),l10n_1=require("../utils/l10n"),flags_1=require("../utils/flags");exports.FigureColor=(0,mobx_react_lite_1.observer)((({elements:e,store:t})=>react_1.default.createElement(color_picker_1.default,{value:e[0].color,style:{marginRight:"5px"},gradientEnabled:!1,onChange:r=>t.history.transaction((()=>{e.forEach((e=>{e.set({color:r})}))})),store:t}))),exports.FigureSettings=(0,mobx_react_lite_1.observer)((({store:e,elements:t})=>{const r=r=>{e.history.transaction((()=>{t.forEach((e=>{e.set(r)}))}))};return react_1.default.createElement(core_2.Popover,{content:react_1.default.createElement("div",{style:{padding:"15px",paddingTop:"15px",width:"230px"}},react_1.default.createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"5px"}},react_1.default.createElement("div",null,(0,l10n_1.t)("toolbar.strokeWidth")),react_1.default.createElement("div",null,react_1.default.createElement(filters_picker_1.NumberInput,{value:t[0].strokeWidth,onValueChange:e=>{r({strokeWidth:e})},style:{width:"50px"},min:0,max:100,buttonPosition:"none"}))),react_1.default.createElement(core_1.Slider,{value:t[0].strokeWidth,onChange:e=>{r({strokeWidth:e})},min:0,max:100,labelRenderer:!1}),react_1.default.createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"5px",paddingTop:"15px"}},react_1.default.createElement(core_1.Button,{onClick:()=>{r({dash:[]})},active:0===t[0].dash.length},react_1.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},react_1.default.createElement("line",{x2:"24",y1:"50%",y2:"50%",stroke:"currentColor",strokeWidth:"2"}))),react_1.default.createElement(core_1.Button,{onClick:()=>{r({dash:[4,1]})},active:4===t[0].dash[0]},react_1.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},react_1.default.createElement("line",{x1:"-1",x2:"25",y1:"50%",y2:"50%",stroke:"currentColor",strokeDasharray:"12 2",strokeWidth:"2"}))),react_1.default.createElement(core_1.Button,{onClick:()=>{r({dash:[2,1]})},active:2===t[0].dash[0]},react_1.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},react_1.default.createElement("line",{x1:"1",x2:"23",y1:"50%",y2:"50%",stroke:"currentColor",strokeDasharray:"6 2",strokeWidth:"2"}))),react_1.default.createElement(core_1.Button,{onClick:()=>{r({dash:[1,1]})},active:1===t[0].dash[0]},react_1.default.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},react_1.default.createElement("line",{x1:"1",x2:"23",y1:"50%",y2:"50%",stroke:"currentColor",strokeDasharray:"2 2",strokeWidth:"2"})))),"rect"===t.subType&&react_1.default.createElement(react_1.default.Fragment,null,react_1.default.createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:"5px"}},react_1.default.createElement("div",null,(0,l10n_1.t)("toolbar.cornerRadius")),react_1.default.createElement("div",null,react_1.default.createElement(filters_picker_1.NumberInput,{value:t[0].cornerRadius,onValueChange:e=>{r({cornerRadius:e})},style:{width:"50px"},min:0,max:100,buttonPosition:"none"}))),react_1.default.createElement(core_1.Slider,{value:t[0].cornerRadius,onChange:e=>{r({cornerRadius:e})},min:0,max:100,labelRenderer:!1}))),position:core_1.Position.BOTTOM},react_1.default.createElement(core_1.Button,{icon:react_1.default.createElement(ZoStrokeWidth_1.default,null),minimal:!0}))})),exports.FigureStroke=(0,mobx_react_lite_1.observer)((({elements:e,store:t})=>e.find((e=>e.strokeWidth))?react_1.default.createElement(color_picker_1.default,{value:e[0].stroke,style:{marginRight:"5px"},gradientEnabled:!1,onChange:r=>t.history.transaction((()=>{e.forEach((e=>{e.set({stroke:r})}))})),store:t}):null));const PROPS_MAP={FigureColor:exports.FigureColor,FigureStroke:exports.FigureStroke,FigureSettings:exports.FigureSettings,FigureAnimations:animations_picker_1.AnimationsPicker};exports.FigureToolbar=(0,mobx_react_lite_1.observer)((({store:e,components:t})=>{const r=e.selectedElements[0],a=["FigureColor","FigureStroke","FigureSettings",flags_1.flags.animationsEnabled&&"FigureAnimations"].filter((e=>Boolean(e))),o=(0,element_container_1.extendToolbar)({type:"line",usedItems:a,components:t});return react_1.default.createElement(element_container_1.ElementContainer,{items:o,itemRender:a=>{const o=t[a]||PROPS_MAP[a];return react_1.default.createElement(o,{element:r,store:e,key:a,elements:e.selectedElements})}})})),exports.default=exports.FigureToolbar;
@@ -1 +1 @@
1
- "use strict";var __rest=this&&this.__rest||function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(a=Object.getOwnPropertySymbols(e);n<a.length;n++)t.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(r[a[n]]=e[a[n]])}return r},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.PageToolbar=exports.NumberInput=void 0;const react_1=__importDefault(require("react")),mobx_react_lite_1=require("mobx-react-lite"),core_1=require("@blueprintjs/core"),core_2=require("@blueprintjs/core"),element_container_1=require("./element-container"),l10n_1=require("../utils/l10n"),flags_1=require("../utils/flags"),NumberInput=e=>{var{value:t,onValueChange:r}=e,a=__rest(e,["value","onValueChange"]);const[n,o]=react_1.default.useState(t.toString());react_1.default.useEffect((()=>{o(t.toString())}),[t]);return react_1.default.createElement(core_1.NumericInput,Object.assign({value:n,onValueChange:(e,t)=>{o(t),Number.isNaN(e)||r(e)}},a))};exports.NumberInput=NumberInput;const PageDuration=(0,mobx_react_lite_1.observer)((({store:e})=>{if(!e.activePage)return null;const{duration:t}=e.activePage;return react_1.default.createElement(core_2.Popover,{content:react_1.default.createElement("div",{style:{padding:"15px",paddingTop:"15px",width:"230px"}},react_1.default.createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingTop:"5px",paddingBottom:"5px"}},react_1.default.createElement("div",null,(0,l10n_1.t)("toolbar.duration")),react_1.default.createElement("div",null,react_1.default.createElement(exports.NumberInput,{value:t/1e3,onValueChange:t=>{e.activePage.set({duration:1e3*t})},style:{width:"50px"},min:0,buttonPosition:"none"}))),react_1.default.createElement(core_1.Slider,{value:Math.min(t/1e3,50),onChange:t=>{e.activePage.set({duration:1e3*t})},min:0,max:50,showTrackFill:!1,labelRenderer:!1}))},react_1.default.createElement(core_1.Button,{icon:"time",minimal:!0},(e.activePage.duration/1e3).toFixed(1),"s"))})),PROPS_MAP={PageDuration:PageDuration};exports.PageToolbar=(0,mobx_react_lite_1.observer)((({store:e,components:t})=>{const r=[flags_1.flags.animationsEnabled&&"PageDuration"].filter((e=>!!e)),a=(0,element_container_1.extendToolbar)({type:"page",usedItems:r,components:t});return react_1.default.createElement(element_container_1.ElementContainer,{items:a,itemRender:r=>{const a=t[r]||PROPS_MAP[r];return react_1.default.createElement(a,{store:e,key:r})}})})),exports.default=exports.PageToolbar;
1
+ "use strict";var __rest=this&&this.__rest||function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(a=Object.getOwnPropertySymbols(e);n<a.length;n++)t.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(r[a[n]]=e[a[n]])}return r},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.PageToolbar=exports.NumberInput=void 0;const react_1=__importDefault(require("react")),mobx_react_lite_1=require("mobx-react-lite"),core_1=require("@blueprintjs/core"),core_2=require("@blueprintjs/core"),element_container_1=require("./element-container"),l10n_1=require("../utils/l10n"),flags_1=require("../utils/flags"),NumberInput=e=>{var{value:t,onValueChange:r}=e,a=__rest(e,["value","onValueChange"]);const[n,o]=react_1.default.useState(t.toString());react_1.default.useEffect((()=>{o(t.toString())}),[t]);return react_1.default.createElement(core_1.NumericInput,Object.assign({value:n,onValueChange:(e,t)=>{o(t),Number.isNaN(e)||r(e)}},a))};exports.NumberInput=NumberInput;const PageDuration=(0,mobx_react_lite_1.observer)((({store:e})=>{if(!e.activePage)return null;const{duration:t}=e.activePage;return react_1.default.createElement(core_2.Popover,{position:"bottom",content:react_1.default.createElement("div",{style:{padding:"15px",paddingTop:"15px",width:"230px"}},react_1.default.createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingTop:"5px",paddingBottom:"5px"}},react_1.default.createElement("div",null,(0,l10n_1.t)("toolbar.duration")),react_1.default.createElement("div",null,react_1.default.createElement(exports.NumberInput,{value:t/1e3,onValueChange:t=>{e.activePage.set({duration:1e3*t})},style:{width:"50px"},min:0,buttonPosition:"none"}))),react_1.default.createElement(core_1.Slider,{value:Math.min(t/1e3,50),onChange:t=>{e.activePage.set({duration:1e3*t})},min:0,max:50,showTrackFill:!1,labelRenderer:!1}))},react_1.default.createElement(core_1.Button,{icon:"time",minimal:!0},(e.activePage.duration/1e3).toFixed(1),"s"))})),PROPS_MAP={PageDuration:PageDuration};exports.PageToolbar=(0,mobx_react_lite_1.observer)((({store:e,components:t})=>{const r=[flags_1.flags.animationsEnabled&&"PageDuration"].filter((e=>!!e)),a=(0,element_container_1.extendToolbar)({type:"page",usedItems:r,components:t});return react_1.default.createElement(element_container_1.ElementContainer,{items:a,itemRender:r=>{const a=t[r]||PROPS_MAP[r];return react_1.default.createElement(a,{store:e,key:r})}})})),exports.default=exports.PageToolbar;
@@ -1,4 +1,4 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Toolbar=exports.registerToolbarComponent=void 0;const react_1=__importDefault(require("react")),mobx_react_lite_1=require("mobx-react-lite"),core_1=require("@blueprintjs/core"),styled_1=__importDefault(require("../utils/styled")),screen_1=require("../utils/screen"),history_buttons_1=require("./history-buttons"),text_toolbar_1=require("./text-toolbar"),html_toolbar_1=require("./html-toolbar"),image_toolbar_1=require("./image-toolbar"),svg_toolbar_1=require("./svg-toolbar"),line_toolbar_1=require("./line-toolbar"),video_toolbar_1=require("./video-toolbar"),many_toolbar_1=require("./many-toolbar"),page_toolbar_1=require("./page-toolbar"),download_button_1=require("./download-button"),duplicate_button_1=require("./duplicate-button"),remove_button_1=require("./remove-button"),lock_button_1=require("./lock-button"),position_picker_1=require("./position-picker"),opacity_picker_1=require("./opacity-picker"),admin_button_1=require("./admin-button"),group_button_1=require("./group-button"),flags_1=require("../utils/flags"),ComponentsTypes={text:text_toolbar_1.TextToolbar,image:image_toolbar_1.ImageToolbar,svg:svg_toolbar_1.SvgToolbar,many:many_toolbar_1.ManyToolbar,line:line_toolbar_1.LineToolbar,video:video_toolbar_1.VideoToolbar,page:page_toolbar_1.PageToolbar};function registerToolbarComponent(e,t){ComponentsTypes[e]=t}exports.registerToolbarComponent=registerToolbarComponent;const NavbarContainer=(0,styled_1.default)("div")`
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Toolbar=exports.registerToolbarComponent=void 0;const react_1=__importDefault(require("react")),mobx_react_lite_1=require("mobx-react-lite"),core_1=require("@blueprintjs/core"),styled_1=__importDefault(require("../utils/styled")),screen_1=require("../utils/screen"),history_buttons_1=require("./history-buttons"),text_toolbar_1=require("./text-toolbar"),html_toolbar_1=require("./html-toolbar"),image_toolbar_1=require("./image-toolbar"),svg_toolbar_1=require("./svg-toolbar"),line_toolbar_1=require("./line-toolbar"),video_toolbar_1=require("./video-toolbar"),figure_toolbar_1=require("./figure-toolbar"),many_toolbar_1=require("./many-toolbar"),page_toolbar_1=require("./page-toolbar"),download_button_1=require("./download-button"),duplicate_button_1=require("./duplicate-button"),remove_button_1=require("./remove-button"),lock_button_1=require("./lock-button"),position_picker_1=require("./position-picker"),opacity_picker_1=require("./opacity-picker"),admin_button_1=require("./admin-button"),group_button_1=require("./group-button"),flags_1=require("../utils/flags"),ComponentsTypes={text:text_toolbar_1.TextToolbar,image:image_toolbar_1.ImageToolbar,svg:svg_toolbar_1.SvgToolbar,many:many_toolbar_1.ManyToolbar,line:line_toolbar_1.LineToolbar,video:video_toolbar_1.VideoToolbar,figure:figure_toolbar_1.FigureToolbar,page:page_toolbar_1.PageToolbar};function registerToolbarComponent(e,t){ComponentsTypes[e]=t}exports.registerToolbarComponent=registerToolbarComponent;const NavbarContainer=(0,styled_1.default)("div")`
2
2
  white-space: nowrap;
3
3
 
4
4
  ${(0,screen_1.mobileStyle)("\n max-width: 100vw;\n overflow-x: auto;\n overflow-y: hidden;\n ")}
@@ -6,4 +6,4 @@
6
6
  width: 100%;
7
7
  height: 100%;
8
8
  ${(0,screen_1.mobileStyle)("\n display: flex;\n ")}
9
- `;exports.Toolbar=(0,mobx_react_lite_1.observer)((({store:e,downloadButtonEnabled:t,components:o={}})=>{const r=1===new Set(e.selectedElements.map((e=>e.type))).size,l=1===e.selectedElements.length,a=e.selectedElements[0],n=e.selectedElements.every((e=>e.styleEditable));let i=n&&l&&ComponentsTypes[a.type];r&&"text"===(null==a?void 0:a.type)?i=ComponentsTypes[a.type]:e.selectedElements.length>1&&(i=ComponentsTypes.many),0===e.selectedElements.length&&(i=ComponentsTypes.page),l&&"text"===a.type&&flags_1.flags.htmlRenderEnabled&&(i=html_toolbar_1.HtmlToolbar);const _=l&&a._cropModeEnabled,u=(null==o?void 0:o.ActionControls)||(t?download_button_1.DownloadButton:null),s=(null==o?void 0:o.Position)||position_picker_1.PositionPicker,c=(null==o?void 0:o.Opacity)||opacity_picker_1.OpacityPicker,d=(null==o?void 0:o.Lock)||lock_button_1.LockButton,b=(null==o?void 0:o.Duplicate)||duplicate_button_1.DuplicateButton,m=(null==o?void 0:o.Remove)||remove_button_1.RemoveButton,p=(null==o?void 0:o.Group)||group_button_1.GroupButton,v=(null==o?void 0:o.History)||history_buttons_1.HistoryButtons,y=(null==o?void 0:o.Admin)||admin_button_1.AdminButton;return react_1.default.createElement(NavbarContainer,{className:"bp5-navbar"},react_1.default.createElement(NavInner,null,!_&&react_1.default.createElement(v,{store:e}),i&&n&&react_1.default.createElement(i,{store:e,components:o}),!_&&react_1.default.createElement(core_1.Navbar.Group,{align:core_1.Alignment.RIGHT},"admin"===e.role&&react_1.default.createElement(y,{store:e}),react_1.default.createElement(p,{store:e}),react_1.default.createElement(s,{store:e}),n&&react_1.default.createElement(c,{store:e}),react_1.default.createElement(d,{store:e}),react_1.default.createElement(b,{store:e}),react_1.default.createElement(m,{store:e}),u&&react_1.default.createElement(react_1.default.Fragment,null,react_1.default.createElement(core_1.Divider,{style:{height:"100%",margin:"0 15px"}}),react_1.default.createElement(u,{store:e})))))})),exports.default=exports.Toolbar;
9
+ `;exports.Toolbar=(0,mobx_react_lite_1.observer)((({store:e,downloadButtonEnabled:t,components:o={}})=>{const r=1===new Set(e.selectedElements.map((e=>e.type))).size,l=1===e.selectedElements.length,a=e.selectedElements[0],n=e.selectedElements.every((e=>e.styleEditable));let i=n&&l&&ComponentsTypes[a.type];r&&"text"===(null==a?void 0:a.type)?i=ComponentsTypes[a.type]:e.selectedElements.length>1&&(i=ComponentsTypes.many),0===e.selectedElements.length&&(i=ComponentsTypes.page),l&&"text"===a.type&&flags_1.flags.htmlRenderEnabled&&(i=html_toolbar_1.HtmlToolbar);const _=l&&a._cropModeEnabled,u=(null==o?void 0:o.ActionControls)||(t?download_button_1.DownloadButton:null),s=(null==o?void 0:o.Position)||position_picker_1.PositionPicker,c=(null==o?void 0:o.Opacity)||opacity_picker_1.OpacityPicker,b=(null==o?void 0:o.Lock)||lock_button_1.LockButton,d=(null==o?void 0:o.Duplicate)||duplicate_button_1.DuplicateButton,m=(null==o?void 0:o.Remove)||remove_button_1.RemoveButton,p=(null==o?void 0:o.Group)||group_button_1.GroupButton,g=(null==o?void 0:o.History)||history_buttons_1.HistoryButtons,v=(null==o?void 0:o.Admin)||admin_button_1.AdminButton;return react_1.default.createElement(NavbarContainer,{className:"bp5-navbar"},react_1.default.createElement(NavInner,null,!_&&react_1.default.createElement(g,{store:e}),i&&n&&react_1.default.createElement(i,{store:e,components:o}),!_&&react_1.default.createElement(core_1.Navbar.Group,{align:core_1.Alignment.RIGHT},"admin"===e.role&&react_1.default.createElement(v,{store:e}),react_1.default.createElement(p,{store:e}),react_1.default.createElement(s,{store:e}),n&&react_1.default.createElement(c,{store:e}),react_1.default.createElement(b,{store:e}),react_1.default.createElement(d,{store:e}),react_1.default.createElement(m,{store:e}),u&&react_1.default.createElement(react_1.default.Fragment,null,react_1.default.createElement(core_1.Divider,{style:{height:"100%",margin:"0 15px"}}),react_1.default.createElement(u,{store:e})))))})),exports.default=exports.Toolbar;
@@ -14,4 +14,4 @@
14
14
  }
15
15
 
16
16
  ${(0,screen_1.mobileStyle)("\n display: none;\n ")}
17
- `,FACTOR=1.2,SCALE_VARIATIONS=[.1,.25,.5,.75,1,1.5,2,3];exports.ZoomGroup=(0,mobx_react_lite_1.observer)((({store:e})=>{const t=Math.max(2,e.scaleToFit),r=Math.min(.5,e.scaleToFit),o=e.scale<t,a=e.scale>r;return react_1.default.createElement(core_1.Navbar.Group,{align:core_1.Alignment.LEFT,style:{height:"35px"}},react_1.default.createElement(core_1.Button,{icon:"zoom-out",minimal:!0,onClick:()=>{e.setScale(e.scale/1.2)},disabled:!a}),react_1.default.createElement(core_2.Popover,{content:react_1.default.createElement(core_1.Menu,{style:{minWidth:"80px"}},SCALE_VARIATIONS.map((t=>react_1.default.createElement(core_1.MenuItem,{key:t,text:Math.round(100*t)+"%",onClick:async()=>{e.setScale(t)}}))),react_1.default.createElement(core_1.MenuItem,{text:(0,l10n_1.t)("scale.reset"),onClick:async()=>{e.setScale(e.scaleToFit)}}))},react_1.default.createElement(core_1.Button,{minimal:!0},Math.round(100*e.scale)+"%")),react_1.default.createElement(core_1.Button,{icon:"zoom-in",minimal:!0,onClick:()=>{e.setScale(1.2*e.scale)},disabled:!o}))})),exports.ZoomButtons=(0,mobx_react_lite_1.observer)((({store:e})=>react_1.default.createElement(Container,null,react_1.default.createElement(core_1.Navbar,{style:{height:"35px",padding:"0 5px"}},react_1.default.createElement(exports.ZoomGroup,{store:e}))))),exports.default=exports.ZoomButtons;
17
+ `,FACTOR=1.2,SCALE_VARIATIONS=[.1,.25,.5,.75,1,1.5,2,3],MAX_SCALE=SCALE_VARIATIONS[SCALE_VARIATIONS.length-1],MIN_SCALE=SCALE_VARIATIONS[0];exports.ZoomGroup=(0,mobx_react_lite_1.observer)((({store:e})=>{const t=Math.max(MAX_SCALE,e.scaleToFit),r=Math.min(MIN_SCALE,e.scaleToFit),o=e.scale<t,a=e.scale>r;return react_1.default.createElement(core_1.Navbar.Group,{align:core_1.Alignment.LEFT,style:{height:"35px"}},react_1.default.createElement(core_1.Button,{icon:"zoom-out",minimal:!0,onClick:()=>{e.setScale(e.scale/1.2)},disabled:!a}),react_1.default.createElement(core_2.Popover,{content:react_1.default.createElement(core_1.Menu,{style:{minWidth:"80px"}},SCALE_VARIATIONS.map((t=>react_1.default.createElement(core_1.MenuItem,{key:t,text:Math.round(100*t)+"%",onClick:async()=>{e.setScale(t)}}))),react_1.default.createElement(core_1.MenuItem,{text:(0,l10n_1.t)("scale.reset"),onClick:async()=>{e.setScale(e.scaleToFit)}}))},react_1.default.createElement(core_1.Button,{minimal:!0},Math.round(100*e.scale)+"%")),react_1.default.createElement(core_1.Button,{icon:"zoom-in",minimal:!0,onClick:()=>{e.setScale(1.2*e.scale)},disabled:!o}))})),exports.ZoomButtons=(0,mobx_react_lite_1.observer)((({store:e})=>react_1.default.createElement(Container,null,react_1.default.createElement(core_1.Navbar,{style:{height:"35px",padding:"0 5px"}},react_1.default.createElement(exports.ZoomGroup,{store:e}))))),exports.default=exports.ZoomButtons;
package/utils/l10n.d.ts CHANGED
@@ -72,6 +72,7 @@ export declare const getTranslations: () => {
72
72
  spaceEvenly: string;
73
73
  horizontalDistribution: string;
74
74
  verticalDistribution: string;
75
+ strokeWidth: string;
75
76
  };
76
77
  workspace: {
77
78
  noPages: string;
@@ -112,6 +113,7 @@ export declare const getTranslations: () => {
112
113
  text: string;
113
114
  svg: string;
114
115
  line: string;
116
+ figure: string;
115
117
  group: string;
116
118
  };
117
119
  layersTip: string;
package/utils/l10n.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.t=exports.getTranslations=exports.setTranslations=void 0;const mobx_1=require("mobx"),translation=(0,mobx_1.observable)({toolbar:{duration:"Duration",opacity:"Opacity",effects:"Effects",blur:"Blur",textBackground:"Background",backgroundCornerRadius:"Corner radius",backgroundOpacity:"Opacity",backgroundPadding:"Padding",brightness:"Brightness",sepia:"Sepia",grayscale:"Grayscale",textStroke:"Text Stroke",shadow:"Shadow",border:"Border",cornerRadius:"Corner Radius",position:"Position",layering:"Layering",toForward:"To forward",up:"Up",down:"Down",toBottom:"To bottom",alignLeft:"Align left",alignCenter:"Align center",alignRight:"Align right",alignTop:"Align top",alignMiddle:"Align middle",alignBottom:"Align bottom",flip:"Flip",flipHorizontally:"Flip horizontally",flipVertically:"Flip vertically",fitToBackground:"Fit to page",removeBackground:"Remove background",removeBackgroundTitle:"Remove background from image",cancelRemoveBackground:"Cancel",confirmRemoveBackground:"Confirm",crop:"Crop",cropDone:"Done",cropCancel:"Cancel",removeClip:"Remove clip",removeMask:"Remove mask",transparency:"Transparency",lockedDescription:"Object is locked. Unlock it to allow changes from canvas.",unlockedDescription:"Object is unlocked. Lock it to prevent changes from canvas.",removeElements:"Remove elements",duplicateElements:"Duplicate elements",download:"Download",saveAsImage:"Save as image",saveAsPDF:"Save as PDF",lineHeight:"Line height",letterSpacing:"Letter spacing",offsetX:"Offset X",offsetY:"Offset Y",color:"Color",selectable:"Selectable",draggable:"Draggable",removable:"Removable",resizable:"Resizable",contentEditable:"Can change content",styleEditable:"Can change style",alwaysOnTop:"Always on top",showInExport:"Show in export",ungroupElements:"Ungroup",groupElements:"Group",lineSize:"Line size",fade:"Fade",move:"Move",zoom:"Zoom",animate:"Animate",spaceEvenly:"Space evenly",horizontalDistribution:"Horizontally",verticalDistribution:"Vertically"},workspace:{noPages:"There are no pages yet...",addPage:"Add page",removePage:"Remove page",duplicatePage:"Duplicate page",moveUp:"Move up",moveDown:"Move down"},scale:{reset:"Reset"},error:{removeBackground:"Ops! Something went wrong. Background can not be removed."},sidePanel:{templates:"Templates",searchTemplatesWithSameSize:"Show templates with the same size",searchPlaceholder:"Search...",otherFormats:"Other formats",noResults:"No results",error:"Loading is failed...",text:"Text",uploadFont:"Upload font",myFonts:"My fonts",photos:"Photos",elements:"Elements",shapes:"Shapes",lines:"Lines",upload:"Upload",uploadImage:"Upload Image",uploadTip:"Do you want to upload your own images?",background:"Background",resize:"Resize",layers:"Layers",layerTypes:{image:"Image",text:"Text",svg:"SVG",line:"Line",group:"Group"},layersTip:"Elements on your active page:",noLayers:"No elements on the page...",namePlaceholder:"Type element name...",useMagicResize:"Use magic resize",width:"Width",height:"Height",magicResizeDescription:"Magic resize will automatically resize and move all elements on the canvas",headerText:"Header",createHeader:"Create header",subHeaderText:"Sub Header",createSubHeader:"Create sub header",bodyText:"Body text",createBody:"Create body text"}});function get(e,o){var t,a=o.split("."),n=e;for(t=0;t<a.length;++t){if(null==n[a[t]])return;n=n[a[t]]}return n}const isObject=e=>e&&"object"==typeof e;function mergeDeep(e,o){Object.keys(o).forEach((t=>{const a=e[t],n=o[t];isObject(n)&&isObject(a)?mergeDeep(a,n):e[t]=n}))}exports.setTranslations=(0,mobx_1.action)((e=>{mergeDeep(translation,e)}));const getTranslations=()=>(0,mobx_1.toJS)(translation);exports.getTranslations=getTranslations;const WARNED={},t=e=>{const o=get(translation,e);if(void 0!==o)return o;WARNED[e]||(WARNED[e]=!0,console.warn(`Missing translation '${e}'`));const t=e.split("."),a=t[t.length-1]||" ";return a.charAt(0).toUpperCase()+a.slice(1)};exports.t=t;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.t=exports.getTranslations=exports.setTranslations=void 0;const mobx_1=require("mobx"),translation=(0,mobx_1.observable)({toolbar:{duration:"Duration",opacity:"Opacity",effects:"Effects",blur:"Blur",textBackground:"Background",backgroundCornerRadius:"Corner radius",backgroundOpacity:"Opacity",backgroundPadding:"Padding",brightness:"Brightness",sepia:"Sepia",grayscale:"Grayscale",textStroke:"Text Stroke",shadow:"Shadow",border:"Border",cornerRadius:"Corner Radius",position:"Position",layering:"Layering",toForward:"To forward",up:"Up",down:"Down",toBottom:"To bottom",alignLeft:"Align left",alignCenter:"Align center",alignRight:"Align right",alignTop:"Align top",alignMiddle:"Align middle",alignBottom:"Align bottom",flip:"Flip",flipHorizontally:"Flip horizontally",flipVertically:"Flip vertically",fitToBackground:"Fit to page",removeBackground:"Remove background",removeBackgroundTitle:"Remove background from image",cancelRemoveBackground:"Cancel",confirmRemoveBackground:"Confirm",crop:"Crop",cropDone:"Done",cropCancel:"Cancel",removeClip:"Remove clip",removeMask:"Remove mask",transparency:"Transparency",lockedDescription:"Object is locked. Unlock it to allow changes from canvas.",unlockedDescription:"Object is unlocked. Lock it to prevent changes from canvas.",removeElements:"Remove elements",duplicateElements:"Duplicate elements",download:"Download",saveAsImage:"Save as image",saveAsPDF:"Save as PDF",lineHeight:"Line height",letterSpacing:"Letter spacing",offsetX:"Offset X",offsetY:"Offset Y",color:"Color",selectable:"Selectable",draggable:"Draggable",removable:"Removable",resizable:"Resizable",contentEditable:"Can change content",styleEditable:"Can change style",alwaysOnTop:"Always on top",showInExport:"Show in export",ungroupElements:"Ungroup",groupElements:"Group",lineSize:"Line size",fade:"Fade",move:"Move",zoom:"Zoom",animate:"Animate",spaceEvenly:"Space evenly",horizontalDistribution:"Horizontally",verticalDistribution:"Vertically",strokeWidth:"Stroke Width"},workspace:{noPages:"There are no pages yet...",addPage:"Add page",removePage:"Remove page",duplicatePage:"Duplicate page",moveUp:"Move up",moveDown:"Move down"},scale:{reset:"Reset"},error:{removeBackground:"Ops! Something went wrong. Background can not be removed."},sidePanel:{templates:"Templates",searchTemplatesWithSameSize:"Show templates with the same size",searchPlaceholder:"Search...",otherFormats:"Other formats",noResults:"No results",error:"Loading is failed...",text:"Text",uploadFont:"Upload font",myFonts:"My fonts",photos:"Photos",elements:"Elements",shapes:"Shapes",lines:"Lines",upload:"Upload",uploadImage:"Upload Image",uploadTip:"Do you want to upload your own images?",background:"Background",resize:"Resize",layers:"Layers",layerTypes:{image:"Image",text:"Text",svg:"SVG",line:"Line",figure:"Figure",group:"Group"},layersTip:"Elements on your active page:",noLayers:"No elements on the page...",namePlaceholder:"Type element name...",useMagicResize:"Use magic resize",width:"Width",height:"Height",magicResizeDescription:"Magic resize will automatically resize and move all elements on the canvas",headerText:"Header",createHeader:"Create header",subHeaderText:"Sub Header",createSubHeader:"Create sub header",bodyText:"Body text",createBody:"Create body text"}});function get(e,o){var t,a=o.split("."),r=e;for(t=0;t<a.length;++t){if(null==r[a[t]])return;r=r[a[t]]}return r}const isObject=e=>e&&"object"==typeof e;function mergeDeep(e,o){Object.keys(o).forEach((t=>{const a=e[t],r=o[t];isObject(r)&&isObject(a)?mergeDeep(a,r):e[t]=r}))}exports.setTranslations=(0,mobx_1.action)((e=>{mergeDeep(translation,e)}));const getTranslations=()=>(0,mobx_1.toJS)(translation);exports.getTranslations=getTranslations;const WARNED={},t=e=>{const o=get(translation,e);if(void 0!==o)return o;WARNED[e]||(WARNED[e]=!0,console.warn(`Missing translation '${e}'`));const t=e.split("."),a=t[t.length-1]||" ";return a.charAt(0).toUpperCase()+a.slice(1)};exports.t=t;