@tetjana/flowmakers-ds 0.1.0 → 0.1.2

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,15 +1,15 @@
1
- import React from 'react';
1
+ import type { ButtonHTMLAttributes, ReactNode, FC } from 'react';
2
2
  import './Button.css';
3
3
  export type ButtonVariant = 'primary' | 'hero' | 'secondary' | 'secondary-large' | 'ghost' | 'ghost-icon';
4
4
  export type ButtonSize = 'sm' | 'md' | 'lg';
5
5
  export type ButtonState = 'default' | 'hover' | 'pressed' | 'focused' | 'disabled';
6
- export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
6
+ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
7
7
  variant?: ButtonVariant;
8
8
  size?: ButtonSize;
9
- leftIcon?: React.ReactNode;
10
- rightIcon?: React.ReactNode;
11
- children?: React.ReactNode;
9
+ leftIcon?: ReactNode;
10
+ rightIcon?: ReactNode;
11
+ children?: ReactNode;
12
12
  fullWidth?: boolean;
13
13
  }
14
- export declare const Button: React.FC<ButtonProps>;
14
+ export declare const Button: FC<ButtonProps>;
15
15
  export default Button;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import { type FC } from 'react';
2
2
  import './Checkbox.css';
3
3
  export type CheckboxState = 'idle' | 'clicked' | 'disabled';
4
4
  export type CheckboxSelection = 'on' | 'off' | 'mixed';
@@ -12,5 +12,5 @@ export interface CheckboxProps {
12
12
  label?: string;
13
13
  className?: string;
14
14
  }
15
- export declare const Checkbox: React.FC<CheckboxProps>;
15
+ export declare const Checkbox: FC<CheckboxProps>;
16
16
  export default Checkbox;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type { FC } from 'react';
2
2
  import './Footer.css';
3
3
  export type FooterVariant = 'light' | 'dark';
4
4
  export interface FooterLink {
@@ -16,12 +16,7 @@ export interface FooterProps {
16
16
  onCtaClick?: () => void;
17
17
  sections?: FooterSection[];
18
18
  copyright?: string;
19
- socials?: {
20
- twitter?: string;
21
- instagram?: string;
22
- facebook?: string;
23
- };
24
19
  className?: string;
25
20
  }
26
- export declare const Footer: React.FC<FooterProps>;
21
+ export declare const Footer: FC<FooterProps>;
27
22
  export default Footer;
@@ -1,13 +1,13 @@
1
- import React from 'react';
1
+ import type { ReactNode, FC } from 'react';
2
2
  import './Header.css';
3
3
  export type HeaderColor = 'purple' | 'grey';
4
4
  export interface HeaderProps {
5
5
  title: string;
6
6
  subtitle?: string;
7
7
  color?: HeaderColor;
8
- leftSlot?: React.ReactNode;
9
- rightSlot?: React.ReactNode;
8
+ leftSlot?: ReactNode;
9
+ rightSlot?: ReactNode;
10
10
  className?: string;
11
11
  }
12
- export declare const Header: React.FC<HeaderProps>;
12
+ export declare const Header: FC<HeaderProps>;
13
13
  export default Header;
@@ -1,14 +1,14 @@
1
- import React from 'react';
1
+ import type { InputHTMLAttributes, ReactNode, FC } from 'react';
2
2
  import './Input.css';
3
3
  export type InputState = 'default' | 'hover' | 'focused' | 'filled' | 'error' | 'success';
4
- export interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {
4
+ export interface InputProps extends InputHTMLAttributes<HTMLInputElement> {
5
5
  label?: string;
6
6
  placeholder?: string;
7
7
  state?: InputState;
8
8
  errorMessage?: string;
9
9
  successMessage?: string;
10
- leftIcon?: React.ReactNode;
11
- rightIcon?: React.ReactNode;
10
+ leftIcon?: ReactNode;
11
+ rightIcon?: ReactNode;
12
12
  }
13
- export declare const Input: React.FC<InputProps>;
13
+ export declare const Input: FC<InputProps>;
14
14
  export default Input;
@@ -1,10 +1,10 @@
1
- import React from 'react';
1
+ import type { ReactNode, FC } from 'react';
2
2
  import './Tag.css';
3
3
  export type TagColor = 'grey' | 'green' | 'yellow' | 'purple' | 'pink';
4
4
  export interface TagProps {
5
- children: React.ReactNode;
5
+ children: ReactNode;
6
6
  color?: TagColor;
7
7
  className?: string;
8
8
  }
9
- export declare const Tag: React.FC<TagProps>;
9
+ export declare const Tag: FC<TagProps>;
10
10
  export default Tag;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type { FC } from 'react';
2
2
  import './Toggle.css';
3
3
  export interface ToggleProps {
4
4
  checked: boolean;
@@ -7,5 +7,5 @@ export interface ToggleProps {
7
7
  label?: string;
8
8
  className?: string;
9
9
  }
10
- export declare const Toggle: React.FC<ToggleProps>;
10
+ export declare const Toggle: FC<ToggleProps>;
11
11
  export default Toggle;
package/dist/index.cjs.js CHANGED
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var I;function ee(){if(I)return x;I=1;var l=Symbol.for("react.transitional.element"),c=Symbol.for("react.fragment");function s(n,a,o){var m=null;if(o!==void 0&&(m=""+o),a.key!==void 0&&(m=""+a.key),"key"in a){o={};for(var _ in a)_!=="key"&&(o[_]=a[_])}else o=a;return a=o.ref,{$$typeof:l,type:n,key:m,ref:a!==void 0?a:null,props:o}}return x.Fragment=c,x.jsx=s,x.jsxs=s,x}var j={};/**
9
+ */var I;function ee(){if(I)return x;I=1;var l=Symbol.for("react.transitional.element"),c=Symbol.for("react.fragment");function a(n,s,o){var m=null;if(o!==void 0&&(m=""+o),s.key!==void 0&&(m=""+s.key),"key"in s){o={};for(var _ in s)_!=="key"&&(o[_]=s[_])}else o=s;return s=o.ref,{$$typeof:l,type:n,key:m,ref:s!==void 0?s:null,props:o}}return x.Fragment=c,x.jsx=a,x.jsxs=a,x}var j={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -14,9 +14,9 @@
14
14
  *
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
- */var M;function re(){return M||(M=1,process.env.NODE_ENV!=="production"&&function(){function l(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===Z?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case k:return"Fragment";case U:return"Profiler";case W:return"StrictMode";case G:return"Suspense";case J:return"SuspenseList";case H:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case B:return"Portal";case z:return e.displayName||"Context";case V:return(e._context.displayName||"Context")+".Consumer";case q:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case X:return t=e.displayName||null,t!==null?t:l(e.type)||"Memo";case R:t=e._payload,e=e._init;try{return l(e(t))}catch{}}return null}function c(e){return""+e}function s(e){try{c(e);var t=!1}catch{t=!0}if(t){t=console;var i=t.error,f=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return i.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",f),c(e)}}function n(e){if(e===k)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===R)return"<...>";try{var t=l(e);return t?"<"+t+">":"<...>"}catch{return"<...>"}}function a(){var e=g.A;return e===null?null:e.getOwner()}function o(){return Error("react-stack-top-frame")}function m(e){if(C.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function _(e,t){function i(){$||($=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}i.isReactWarning=!0,Object.defineProperty(e,"key",{get:i,configurable:!0})}function d(){var e=l(this.type);return Y[e]||(Y[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function p(e,t,i,f,N,w){var u=i.ref;return e={$$typeof:S,type:e,key:t,props:i,_owner:f},(u!==void 0?u:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:d}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:N}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:w}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function b(e,t,i,f,N,w){var u=t.children;if(u!==void 0)if(f)if(Q(u)){for(f=0;f<u.length;f++)v(u[f]);Object.freeze&&Object.freeze(u)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else v(u);if(C.call(t,"key")){u=l(e);var h=Object.keys(t).filter(function(K){return K!=="key"});f=0<h.length?"{key: someKey, "+h.join(": ..., ")+": ...}":"{key: someKey}",D[u+f]||(h=0<h.length?"{"+h.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var M;function re(){return M||(M=1,process.env.NODE_ENV!=="production"&&function(){function l(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===Z?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case k:return"Fragment";case U:return"Profiler";case W:return"StrictMode";case G:return"Suspense";case J:return"SuspenseList";case H:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case B:return"Portal";case q:return e.displayName||"Context";case V:return(e._context.displayName||"Context")+".Consumer";case z:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case X:return t=e.displayName||null,t!==null?t:l(e.type)||"Memo";case R:t=e._payload,e=e._init;try{return l(e(t))}catch{}}return null}function c(e){return""+e}function a(e){try{c(e);var t=!1}catch{t=!0}if(t){t=console;var i=t.error,f=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return i.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",f),c(e)}}function n(e){if(e===k)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===R)return"<...>";try{var t=l(e);return t?"<"+t+">":"<...>"}catch{return"<...>"}}function s(){var e=g.A;return e===null?null:e.getOwner()}function o(){return Error("react-stack-top-frame")}function m(e){if(C.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function _(e,t){function i(){$||($=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}i.isReactWarning=!0,Object.defineProperty(e,"key",{get:i,configurable:!0})}function d(){var e=l(this.type);return Y[e]||(Y[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function p(e,t,i,f,N,w){var u=i.ref;return e={$$typeof:S,type:e,key:t,props:i,_owner:f},(u!==void 0?u:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:d}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:N}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:w}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function b(e,t,i,f,N,w){var u=t.children;if(u!==void 0)if(f)if(Q(u)){for(f=0;f<u.length;f++)v(u[f]);Object.freeze&&Object.freeze(u)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else v(u);if(C.call(t,"key")){u=l(e);var h=Object.keys(t).filter(function(K){return K!=="key"});f=0<h.length?"{key: someKey, "+h.join(": ..., ")+": ...}":"{key: someKey}",D[u+f]||(h=0<h.length?"{"+h.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
18
  let props = %s;
19
19
  <%s {...props} />
20
20
  React keys must be passed directly to JSX without using spread:
21
21
  let props = %s;
22
- <%s key={someKey} {...props} />`,f,u,h,u),D[u+f]=!0)}if(u=null,i!==void 0&&(s(i),u=""+i),m(t)&&(s(t.key),u=""+t.key),"key"in t){i={};for(var y in t)y!=="key"&&(i[y]=t[y])}else i=t;return u&&_(i,typeof e=="function"?e.displayName||e.name||"Unknown":e),p(e,u,i,a(),N,w)}function v(e){P(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===R&&(e._payload.status==="fulfilled"?P(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function P(e){return typeof e=="object"&&e!==null&&e.$$typeof===S}var E=O,S=Symbol.for("react.transitional.element"),B=Symbol.for("react.portal"),k=Symbol.for("react.fragment"),W=Symbol.for("react.strict_mode"),U=Symbol.for("react.profiler"),V=Symbol.for("react.consumer"),z=Symbol.for("react.context"),q=Symbol.for("react.forward_ref"),G=Symbol.for("react.suspense"),J=Symbol.for("react.suspense_list"),X=Symbol.for("react.memo"),R=Symbol.for("react.lazy"),H=Symbol.for("react.activity"),Z=Symbol.for("react.client.reference"),g=E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,C=Object.prototype.hasOwnProperty,Q=Array.isArray,T=console.createTask?console.createTask:function(){return null};E={react_stack_bottom_frame:function(e){return e()}};var $,Y={},F=E.react_stack_bottom_frame.bind(E,o)(),L=T(n(o)),D={};j.Fragment=k,j.jsx=function(e,t,i){var f=1e4>g.recentlyCreatedOwnerStacks++;return b(e,t,i,!1,f?Error("react-stack-top-frame"):F,f?T(n(e)):L)},j.jsxs=function(e,t,i){var f=1e4>g.recentlyCreatedOwnerStacks++;return b(e,t,i,!0,f?Error("react-stack-top-frame"):F,f?T(n(e)):L)}}()),j}process.env.NODE_ENV==="production"?A.exports=ee():A.exports=re();var r=A.exports;const te=({variant:l="primary",size:c="md",leftIcon:s,rightIcon:n,children:a,fullWidth:o=!1,disabled:m,className:_="",...d})=>{const p=["fm-btn",`fm-btn--${l}`,`fm-btn--${c}`,o?"fm-btn--full":"",m?"fm-btn--disabled":"",_].filter(Boolean).join(" ");return r.jsxs("button",{className:p,disabled:m,...d,children:[s&&r.jsx("span",{className:"fm-btn__icon fm-btn__icon--left",children:s}),a&&r.jsx("span",{className:"fm-btn__label",children:a}),n&&r.jsx("span",{className:"fm-btn__icon fm-btn__icon--right",children:n})]})},ae=({label:l,placeholder:c,state:s="default",errorMessage:n,successMessage:a,leftIcon:o,rightIcon:m,className:_="",disabled:d,...p})=>{const b=["fm-input-wrapper",`fm-input-wrapper--${s}`,d?"fm-input-wrapper--disabled":"",_].filter(Boolean).join(" ");return r.jsxs("div",{className:b,children:[l&&r.jsx("label",{className:"fm-input__label",children:l}),r.jsxs("div",{className:"fm-input__field",children:[o&&r.jsx("span",{className:"fm-input__icon fm-input__icon--left",children:o}),r.jsx("input",{className:"fm-input__el",placeholder:c,disabled:d,...p}),m&&r.jsx("span",{className:"fm-input__icon fm-input__icon--right",children:m})]}),s==="error"&&n&&r.jsx("p",{className:"fm-input__message fm-input__message--error",children:n}),s==="success"&&a&&r.jsx("p",{className:"fm-input__message fm-input__message--success",children:a})]})},se=({children:l,color:c="grey",className:s=""})=>{const n=["fm-tag",`fm-tag--${c}`,s].filter(Boolean).join(" ");return r.jsx("span",{className:n,children:l})},ne=({checked:l,onChange:c,disabled:s,label:n,className:a=""})=>r.jsxs("label",{className:["fm-toggle",s?"fm-toggle--disabled":"",a].filter(Boolean).join(" "),children:[r.jsx("input",{type:"checkbox",className:"fm-toggle__input",checked:l,onChange:o=>c(o.target.checked),disabled:s}),r.jsx("span",{className:"fm-toggle__track",children:r.jsx("span",{className:"fm-toggle__thumb"})}),n&&r.jsx("span",{className:"fm-toggle__label",children:n})]}),oe=({checked:l=!1,indeterminate:c=!1,onChange:s,disabled:n,size:a="small",label:o,className:m=""})=>{const _=O.useRef(null);return O.useEffect(()=>{_.current&&(_.current.indeterminate=c)},[c]),r.jsxs("label",{className:["fm-checkbox",`fm-checkbox--${a}`,n?"fm-checkbox--disabled":"",m].filter(Boolean).join(" "),children:[r.jsx("input",{ref:_,type:"checkbox",className:"fm-checkbox__input",checked:l,onChange:d=>s==null?void 0:s(d.target.checked),disabled:n}),r.jsxs("span",{className:"fm-checkbox__box",children:[l&&!c&&r.jsx("svg",{width:"10",height:"8",viewBox:"0 0 10 8",fill:"none",children:r.jsx("path",{d:"M1 4L3.5 6.5L9 1",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),c&&r.jsx("span",{className:"fm-checkbox__minus"})]}),o&&r.jsx("span",{className:"fm-checkbox__label",children:o})]})},le=({title:l,subtitle:c,color:s="purple",leftSlot:n,rightSlot:a,className:o=""})=>{const m=["fm-header",`fm-header--${s}`,o].filter(Boolean).join(" ");return r.jsxs("div",{className:m,children:[n&&r.jsx("div",{className:"fm-header__slot fm-header__slot--left",children:n}),r.jsxs("div",{className:"fm-header__title-block",children:[r.jsx("h4",{className:"fm-header__title",children:l}),c&&r.jsx("p",{className:"fm-header__subtitle",children:c})]}),a&&r.jsx("div",{className:"fm-header__slot fm-header__slot--right",children:a})]})},ce=({variant:l="light",headline:c="Є ідеї чи пропозиції?",ctaLabel:s="Написати нам",onCtaClick:n,sections:a=[],copyright:o="© 2024 Made by FlowMakers. All rights reserved",className:m=""})=>{const _=["fm-footer",`fm-footer--${l}`,m].filter(Boolean).join(" ");return r.jsxs("footer",{className:_,children:[r.jsxs("div",{className:"fm-footer__top",children:[r.jsxs("div",{className:"fm-footer__cta-block",children:[r.jsx("h3",{className:"fm-footer__headline",children:c}),r.jsx("button",{className:"fm-footer__cta-btn",onClick:n,children:s})]}),r.jsx("div",{className:"fm-footer__sections",children:a.map((d,p)=>r.jsxs("div",{className:"fm-footer__section",children:[r.jsx("p",{className:"fm-footer__section-title",children:d.title}),r.jsx("ul",{className:"fm-footer__section-links",children:d.links.map((b,v)=>r.jsx("li",{children:r.jsx("a",{href:b.href,className:"fm-footer__link",children:b.label})},v))})]},p))})]}),r.jsx("div",{className:"fm-footer__bottom",children:r.jsx("p",{className:"fm-footer__copyright",children:o})})]})};exports.Button=te;exports.Checkbox=oe;exports.Footer=ce;exports.Header=le;exports.Input=ae;exports.Tag=se;exports.Toggle=ne;
22
+ <%s key={someKey} {...props} />`,f,u,h,u),D[u+f]=!0)}if(u=null,i!==void 0&&(a(i),u=""+i),m(t)&&(a(t.key),u=""+t.key),"key"in t){i={};for(var y in t)y!=="key"&&(i[y]=t[y])}else i=t;return u&&_(i,typeof e=="function"?e.displayName||e.name||"Unknown":e),p(e,u,i,s(),N,w)}function v(e){P(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===R&&(e._payload.status==="fulfilled"?P(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function P(e){return typeof e=="object"&&e!==null&&e.$$typeof===S}var E=O,S=Symbol.for("react.transitional.element"),B=Symbol.for("react.portal"),k=Symbol.for("react.fragment"),W=Symbol.for("react.strict_mode"),U=Symbol.for("react.profiler"),V=Symbol.for("react.consumer"),q=Symbol.for("react.context"),z=Symbol.for("react.forward_ref"),G=Symbol.for("react.suspense"),J=Symbol.for("react.suspense_list"),X=Symbol.for("react.memo"),R=Symbol.for("react.lazy"),H=Symbol.for("react.activity"),Z=Symbol.for("react.client.reference"),g=E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,C=Object.prototype.hasOwnProperty,Q=Array.isArray,T=console.createTask?console.createTask:function(){return null};E={react_stack_bottom_frame:function(e){return e()}};var $,Y={},F=E.react_stack_bottom_frame.bind(E,o)(),L=T(n(o)),D={};j.Fragment=k,j.jsx=function(e,t,i){var f=1e4>g.recentlyCreatedOwnerStacks++;return b(e,t,i,!1,f?Error("react-stack-top-frame"):F,f?T(n(e)):L)},j.jsxs=function(e,t,i){var f=1e4>g.recentlyCreatedOwnerStacks++;return b(e,t,i,!0,f?Error("react-stack-top-frame"):F,f?T(n(e)):L)}}()),j}process.env.NODE_ENV==="production"?A.exports=ee():A.exports=re();var r=A.exports;const te=({variant:l="primary",size:c="md",leftIcon:a,rightIcon:n,children:s,fullWidth:o=!1,disabled:m,className:_="",...d})=>{const p=["fm-btn",`fm-btn--${l}`,`fm-btn--${c}`,o?"fm-btn--full":"",m?"fm-btn--disabled":"",_].filter(Boolean).join(" ");return r.jsxs("button",{className:p,disabled:m,...d,children:[a&&r.jsx("span",{className:"fm-btn__icon fm-btn__icon--left",children:a}),s&&r.jsx("span",{className:"fm-btn__label",children:s}),n&&r.jsx("span",{className:"fm-btn__icon fm-btn__icon--right",children:n})]})},se=({label:l,placeholder:c,state:a="default",errorMessage:n,successMessage:s,leftIcon:o,rightIcon:m,className:_="",disabled:d,...p})=>{const b=["fm-input-wrapper",`fm-input-wrapper--${a}`,d?"fm-input-wrapper--disabled":"",_].filter(Boolean).join(" ");return r.jsxs("div",{className:b,children:[l&&r.jsx("label",{className:"fm-input__label",children:l}),r.jsxs("div",{className:"fm-input__field",children:[o&&r.jsx("span",{className:"fm-input__icon fm-input__icon--left",children:o}),r.jsx("input",{className:"fm-input__el",placeholder:c,disabled:d,...p}),m&&r.jsx("span",{className:"fm-input__icon fm-input__icon--right",children:m})]}),a==="error"&&n&&r.jsx("p",{className:"fm-input__message fm-input__message--error",children:n}),a==="success"&&s&&r.jsx("p",{className:"fm-input__message fm-input__message--success",children:s})]})},ae=({children:l,color:c="grey",className:a=""})=>{const n=["fm-tag",`fm-tag--${c}`,a].filter(Boolean).join(" ");return r.jsx("span",{className:n,children:l})},ne=({checked:l,onChange:c,disabled:a,label:n,className:s=""})=>r.jsxs("label",{className:["fm-toggle",a?"fm-toggle--disabled":"",s].filter(Boolean).join(" "),children:[r.jsx("input",{type:"checkbox",className:"fm-toggle__input",checked:l,onChange:o=>c(o.target.checked),disabled:a}),r.jsx("span",{className:"fm-toggle__track",children:r.jsx("span",{className:"fm-toggle__thumb"})}),n&&r.jsx("span",{className:"fm-toggle__label",children:n})]}),oe=({checked:l=!1,indeterminate:c=!1,onChange:a,disabled:n,size:s="small",label:o,className:m=""})=>{const _=O.useRef(null);return O.useEffect(()=>{_.current&&(_.current.indeterminate=c)},[c]),r.jsxs("label",{className:["fm-checkbox",`fm-checkbox--${s}`,n?"fm-checkbox--disabled":"",m].filter(Boolean).join(" "),children:[r.jsx("input",{ref:_,type:"checkbox",className:"fm-checkbox__input",checked:l,onChange:d=>a==null?void 0:a(d.target.checked),disabled:n}),r.jsxs("span",{className:"fm-checkbox__box",children:[l&&!c&&r.jsx("svg",{width:"10",height:"8",viewBox:"0 0 10 8",fill:"none",children:r.jsx("path",{d:"M1 4L3.5 6.5L9 1",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),c&&r.jsx("span",{className:"fm-checkbox__minus"})]}),o&&r.jsx("span",{className:"fm-checkbox__label",children:o})]})},le=({title:l,subtitle:c,color:a="purple",leftSlot:n,rightSlot:s,className:o=""})=>{const m=["fm-header",`fm-header--${a}`,o].filter(Boolean).join(" ");return r.jsxs("div",{className:m,children:[n&&r.jsx("div",{className:"fm-header__slot fm-header__slot--left",children:n}),r.jsxs("div",{className:"fm-header__title-block",children:[r.jsx("h4",{className:"fm-header__title",children:l}),c&&r.jsx("p",{className:"fm-header__subtitle",children:c})]}),s&&r.jsx("div",{className:"fm-header__slot fm-header__slot--right",children:s})]})},ce=({variant:l="light",headline:c="Є ідеї чи пропозиції?",ctaLabel:a="Написати нам",onCtaClick:n,sections:s=[],copyright:o="© 2024 Made by FlowMakers. All rights reserved",className:m=""})=>{const _=["fm-footer",`fm-footer--${l}`,m].filter(Boolean).join(" ");return r.jsxs("footer",{className:_,children:[r.jsxs("div",{className:"fm-footer__top",children:[r.jsxs("div",{className:"fm-footer__cta-block",children:[r.jsx("h3",{className:"fm-footer__headline",children:c}),r.jsx("button",{className:"fm-footer__cta-btn",onClick:n,children:a})]}),r.jsx("div",{className:"fm-footer__sections",children:s.map((d,p)=>r.jsxs("div",{className:"fm-footer__section",children:[r.jsx("p",{className:"fm-footer__section-title",children:d.title}),r.jsx("ul",{className:"fm-footer__section-links",children:d.links.map((b,v)=>r.jsx("li",{children:r.jsx("a",{href:b.href,className:"fm-footer__link",children:b.label})},v))})]},p))})]}),r.jsx("div",{className:"fm-footer__bottom",children:r.jsx("p",{className:"fm-footer__copyright",children:o})})]})};exports.Button=te;exports.Checkbox=oe;exports.Footer=ce;exports.Header=le;exports.Input=se;exports.Tag=ae;exports.Toggle=ne;
package/dist/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
- import O from "react";
2
- var A = { exports: {} }, x = {};
1
+ import K, { useRef as ee, useEffect as re } from "react";
2
+ var O = { exports: {} }, x = {};
3
3
  /**
4
4
  * @license React
5
5
  * react-jsx-runtime.production.js
@@ -9,10 +9,10 @@ var A = { exports: {} }, x = {};
9
9
  * This source code is licensed under the MIT license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
11
  */
12
- var I;
13
- function ee() {
14
- if (I) return x;
15
- I = 1;
12
+ var D;
13
+ function te() {
14
+ if (D) return x;
15
+ D = 1;
16
16
  var l = Symbol.for("react.transitional.element"), c = Symbol.for("react.fragment");
17
17
  function a(n, s, o) {
18
18
  var m = null;
@@ -41,42 +41,42 @@ var j = {};
41
41
  * This source code is licensed under the MIT license found in the
42
42
  * LICENSE file in the root directory of this source tree.
43
43
  */
44
- var M;
45
- function re() {
46
- return M || (M = 1, process.env.NODE_ENV !== "production" && function() {
44
+ var I;
45
+ function se() {
46
+ return I || (I = 1, process.env.NODE_ENV !== "production" && function() {
47
47
  function l(e) {
48
48
  if (e == null) return null;
49
49
  if (typeof e == "function")
50
- return e.$$typeof === Z ? null : e.displayName || e.name || null;
50
+ return e.$$typeof === H ? null : e.displayName || e.name || null;
51
51
  if (typeof e == "string") return e;
52
52
  switch (e) {
53
53
  case k:
54
54
  return "Fragment";
55
- case U:
56
- return "Profiler";
57
55
  case B:
56
+ return "Profiler";
57
+ case W:
58
58
  return "StrictMode";
59
- case J:
60
- return "Suspense";
61
59
  case q:
60
+ return "Suspense";
61
+ case G:
62
62
  return "SuspenseList";
63
- case H:
63
+ case X:
64
64
  return "Activity";
65
65
  }
66
66
  if (typeof e == "object")
67
67
  switch (typeof e.tag == "number" && console.error(
68
68
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
69
69
  ), e.$$typeof) {
70
- case W:
70
+ case M:
71
71
  return "Portal";
72
- case z:
73
- return e.displayName || "Context";
74
72
  case V:
73
+ return e.displayName || "Context";
74
+ case U:
75
75
  return (e._context.displayName || "Context") + ".Consumer";
76
- case G:
76
+ case z:
77
77
  var t = e.render;
78
78
  return e = e.displayName, e || (e = t.displayName || t.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
79
- case X:
79
+ case J:
80
80
  return t = e.displayName || null, t !== null ? t : l(e.type) || "Memo";
81
81
  case R:
82
82
  t = e._payload, e = e._init;
@@ -126,7 +126,7 @@ function re() {
126
126
  return Error("react-stack-top-frame");
127
127
  }
128
128
  function m(e) {
129
- if (C.call(e, "key")) {
129
+ if (S.call(e, "key")) {
130
130
  var t = Object.getOwnPropertyDescriptor(e, "key").get;
131
131
  if (t && t.isReactWarning) return !1;
132
132
  }
@@ -134,7 +134,7 @@ function re() {
134
134
  }
135
135
  function _(e, t) {
136
136
  function i() {
137
- $ || ($ = !0, console.error(
137
+ C || (C = !0, console.error(
138
138
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
139
139
  t
140
140
  ));
@@ -146,14 +146,14 @@ function re() {
146
146
  }
147
147
  function d() {
148
148
  var e = l(this.type);
149
- return Y[e] || (Y[e] = !0, console.error(
149
+ return $[e] || ($[e] = !0, console.error(
150
150
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
151
151
  )), e = this.props.ref, e !== void 0 ? e : null;
152
152
  }
153
153
  function p(e, t, i, f, N, w) {
154
154
  var u = i.ref;
155
155
  return e = {
156
- $$typeof: S,
156
+ $$typeof: P,
157
157
  type: e,
158
158
  key: t,
159
159
  props: i,
@@ -187,7 +187,7 @@ function re() {
187
187
  var u = t.children;
188
188
  if (u !== void 0)
189
189
  if (f)
190
- if (Q(u)) {
190
+ if (Z(u)) {
191
191
  for (f = 0; f < u.length; f++)
192
192
  v(u[f]);
193
193
  Object.freeze && Object.freeze(u);
@@ -196,12 +196,12 @@ function re() {
196
196
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
197
197
  );
198
198
  else v(u);
199
- if (C.call(t, "key")) {
199
+ if (S.call(t, "key")) {
200
200
  u = l(e);
201
- var b = Object.keys(t).filter(function(K) {
202
- return K !== "key";
201
+ var b = Object.keys(t).filter(function(Q) {
202
+ return Q !== "key";
203
203
  });
204
- f = 0 < b.length ? "{key: someKey, " + b.join(": ..., ") + ": ...}" : "{key: someKey}", D[u + f] || (b = 0 < b.length ? "{" + b.join(": ..., ") + ": ...}" : "{}", console.error(
204
+ f = 0 < b.length ? "{key: someKey, " + b.join(": ..., ") + ": ...}" : "{key: someKey}", L[u + f] || (b = 0 < b.length ? "{" + b.join(": ..., ") + ": ...}" : "{}", console.error(
205
205
  `A props object containing a "key" prop is being spread into JSX:
206
206
  let props = %s;
207
207
  <%s {...props} />
@@ -212,7 +212,7 @@ React keys must be passed directly to JSX without using spread:
212
212
  u,
213
213
  b,
214
214
  u
215
- ), D[u + f] = !0);
215
+ ), L[u + f] = !0);
216
216
  }
217
217
  if (u = null, i !== void 0 && (a(i), u = "" + i), m(t) && (a(t.key), u = "" + t.key), "key" in t) {
218
218
  i = {};
@@ -232,12 +232,12 @@ React keys must be passed directly to JSX without using spread:
232
232
  );
233
233
  }
234
234
  function v(e) {
235
- P(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === R && (e._payload.status === "fulfilled" ? P(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
235
+ A(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === R && (e._payload.status === "fulfilled" ? A(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
236
236
  }
237
- function P(e) {
238
- return typeof e == "object" && e !== null && e.$$typeof === S;
237
+ function A(e) {
238
+ return typeof e == "object" && e !== null && e.$$typeof === P;
239
239
  }
240
- var E = O, S = Symbol.for("react.transitional.element"), W = Symbol.for("react.portal"), k = Symbol.for("react.fragment"), B = Symbol.for("react.strict_mode"), U = Symbol.for("react.profiler"), V = Symbol.for("react.consumer"), z = Symbol.for("react.context"), G = Symbol.for("react.forward_ref"), J = Symbol.for("react.suspense"), q = Symbol.for("react.suspense_list"), X = Symbol.for("react.memo"), R = Symbol.for("react.lazy"), H = Symbol.for("react.activity"), Z = Symbol.for("react.client.reference"), T = E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, C = Object.prototype.hasOwnProperty, Q = Array.isArray, g = console.createTask ? console.createTask : function() {
240
+ var E = K, P = Symbol.for("react.transitional.element"), M = Symbol.for("react.portal"), k = Symbol.for("react.fragment"), W = Symbol.for("react.strict_mode"), B = Symbol.for("react.profiler"), U = Symbol.for("react.consumer"), V = Symbol.for("react.context"), z = Symbol.for("react.forward_ref"), q = Symbol.for("react.suspense"), G = Symbol.for("react.suspense_list"), J = Symbol.for("react.memo"), R = Symbol.for("react.lazy"), X = Symbol.for("react.activity"), H = Symbol.for("react.client.reference"), T = E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, S = Object.prototype.hasOwnProperty, Z = Array.isArray, g = console.createTask ? console.createTask : function() {
241
241
  return null;
242
242
  };
243
243
  E = {
@@ -245,10 +245,10 @@ React keys must be passed directly to JSX without using spread:
245
245
  return e();
246
246
  }
247
247
  };
248
- var $, Y = {}, F = E.react_stack_bottom_frame.bind(
248
+ var C, $ = {}, Y = E.react_stack_bottom_frame.bind(
249
249
  E,
250
250
  o
251
- )(), L = g(n(o)), D = {};
251
+ )(), F = g(n(o)), L = {};
252
252
  j.Fragment = k, j.jsx = function(e, t, i) {
253
253
  var f = 1e4 > T.recentlyCreatedOwnerStacks++;
254
254
  return h(
@@ -256,8 +256,8 @@ React keys must be passed directly to JSX without using spread:
256
256
  t,
257
257
  i,
258
258
  !1,
259
- f ? Error("react-stack-top-frame") : F,
260
- f ? g(n(e)) : L
259
+ f ? Error("react-stack-top-frame") : Y,
260
+ f ? g(n(e)) : F
261
261
  );
262
262
  }, j.jsxs = function(e, t, i) {
263
263
  var f = 1e4 > T.recentlyCreatedOwnerStacks++;
@@ -266,15 +266,15 @@ React keys must be passed directly to JSX without using spread:
266
266
  t,
267
267
  i,
268
268
  !0,
269
- f ? Error("react-stack-top-frame") : F,
270
- f ? g(n(e)) : L
269
+ f ? Error("react-stack-top-frame") : Y,
270
+ f ? g(n(e)) : F
271
271
  );
272
272
  };
273
273
  }()), j;
274
274
  }
275
- process.env.NODE_ENV === "production" ? A.exports = ee() : A.exports = re();
276
- var r = A.exports;
277
- const se = ({
275
+ process.env.NODE_ENV === "production" ? O.exports = te() : O.exports = se();
276
+ var r = O.exports;
277
+ const ne = ({
278
278
  variant: l = "primary",
279
279
  size: c = "md",
280
280
  leftIcon: a,
@@ -298,7 +298,7 @@ const se = ({
298
298
  s && /* @__PURE__ */ r.jsx("span", { className: "fm-btn__label", children: s }),
299
299
  n && /* @__PURE__ */ r.jsx("span", { className: "fm-btn__icon fm-btn__icon--right", children: n })
300
300
  ] });
301
- }, ae = ({
301
+ }, oe = ({
302
302
  label: l,
303
303
  placeholder: c,
304
304
  state: a = "default",
@@ -334,10 +334,10 @@ const se = ({
334
334
  a === "error" && n && /* @__PURE__ */ r.jsx("p", { className: "fm-input__message fm-input__message--error", children: n }),
335
335
  a === "success" && s && /* @__PURE__ */ r.jsx("p", { className: "fm-input__message fm-input__message--success", children: s })
336
336
  ] });
337
- }, ne = ({ children: l, color: c = "grey", className: a = "" }) => {
337
+ }, le = ({ children: l, color: c = "grey", className: a = "" }) => {
338
338
  const n = ["fm-tag", `fm-tag--${c}`, a].filter(Boolean).join(" ");
339
339
  return /* @__PURE__ */ r.jsx("span", { className: n, children: l });
340
- }, oe = ({ checked: l, onChange: c, disabled: a, label: n, className: s = "" }) => /* @__PURE__ */ r.jsxs("label", { className: ["fm-toggle", a ? "fm-toggle--disabled" : "", s].filter(Boolean).join(" "), children: [
340
+ }, ce = ({ checked: l, onChange: c, disabled: a, label: n, className: s = "" }) => /* @__PURE__ */ r.jsxs("label", { className: ["fm-toggle", a ? "fm-toggle--disabled" : "", s].filter(Boolean).join(" "), children: [
341
341
  /* @__PURE__ */ r.jsx(
342
342
  "input",
343
343
  {
@@ -350,7 +350,7 @@ const se = ({
350
350
  ),
351
351
  /* @__PURE__ */ r.jsx("span", { className: "fm-toggle__track", children: /* @__PURE__ */ r.jsx("span", { className: "fm-toggle__thumb" }) }),
352
352
  n && /* @__PURE__ */ r.jsx("span", { className: "fm-toggle__label", children: n })
353
- ] }), le = ({
353
+ ] }), ie = ({
354
354
  checked: l = !1,
355
355
  indeterminate: c = !1,
356
356
  onChange: a,
@@ -359,8 +359,8 @@ const se = ({
359
359
  label: o,
360
360
  className: m = ""
361
361
  }) => {
362
- const _ = O.useRef(null);
363
- return O.useEffect(() => {
362
+ const _ = ee(null);
363
+ return re(() => {
364
364
  _.current && (_.current.indeterminate = c);
365
365
  }, [c]), /* @__PURE__ */ r.jsxs("label", { className: ["fm-checkbox", `fm-checkbox--${s}`, n ? "fm-checkbox--disabled" : "", m].filter(Boolean).join(" "), children: [
366
366
  /* @__PURE__ */ r.jsx(
@@ -380,7 +380,7 @@ const se = ({
380
380
  ] }),
381
381
  o && /* @__PURE__ */ r.jsx("span", { className: "fm-checkbox__label", children: o })
382
382
  ] });
383
- }, ce = ({
383
+ }, fe = ({
384
384
  title: l,
385
385
  subtitle: c,
386
386
  color: a = "purple",
@@ -397,7 +397,7 @@ const se = ({
397
397
  ] }),
398
398
  s && /* @__PURE__ */ r.jsx("div", { className: "fm-header__slot fm-header__slot--right", children: s })
399
399
  ] });
400
- }, ie = ({
400
+ }, ue = ({
401
401
  variant: l = "light",
402
402
  headline: c = "Є ідеї чи пропозиції?",
403
403
  ctaLabel: a = "Написати нам",
@@ -422,11 +422,11 @@ const se = ({
422
422
  ] });
423
423
  };
424
424
  export {
425
- se as Button,
426
- le as Checkbox,
427
- ie as Footer,
428
- ce as Header,
429
- ae as Input,
430
- ne as Tag,
431
- oe as Toggle
425
+ ne as Button,
426
+ ie as Checkbox,
427
+ ue as Footer,
428
+ fe as Header,
429
+ oe as Input,
430
+ le as Tag,
431
+ ce as Toggle
432
432
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tetjana/flowmakers-ds",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "FlowMakers UI Design System — React components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",