@bikdotai/bik-component-library 0.0.670-beta.1 → 0.0.670-beta.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,5 +1,5 @@
1
1
  import { TagProps } from './model';
2
2
  export declare const Tag: {
3
- ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, }: TagProps): import("react/jsx-runtime").JSX.Element;
3
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: TagProps): import("react/jsx-runtime").JSX.Element;
4
4
  displayName: string;
5
5
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("react"),n=require("../TypographyStyle.js"),t=require("./model.js"),a=require("./Tag.styled.js"),r=require("./themes.js");function s(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=s(i);const o=i=>{let{tagText:s,LeadingIcon:o,TrailingIcon:l,onLeadingIconClicked:d,leadingIconId:g,trailingIconId:p,onTrailingIconClicked:j,theme:u="light",type:h="neutral",variant:m="regular",version:y,cursor:b,alignIcon:x,noBorder:T,tagHtmlText:I,contentPadding:O}=i,C=s;const f=u;let v=h;t.ValidTagTypeMap[m][h]||(v="neutral"),"circle"===m&&"number"==typeof C&&C>99&&(C="99+");const q={height:"compressed"===m?12:16,width:"compressed"===m?12:16,color:r.getTagIconColor(u,v),style:{display:"block"}};return e.jsx(a.Tag,Object.assign({cursor:b,theme:f,type:h,variant:m,version:y,alignIcon:x,noBorder:T,contentPadding:O},{children:e.jsxs("div",Object.assign({className:"container"},{children:[o&&e.jsx("button",Object.assign({className:"icon-leading",onClick:d,id:`${g}-wrapper`||"leading-icon-wrapper"},{children:c.default.createElement(o,Object.assign(Object.assign({},q),{id:g||"leading-icon"}))})),I&&("ai"===h&&"light"===u?e.jsx(n.AiBodyCaption,{children:I}):e.jsx(n.BodyCaption,Object.assign({className:"text"},{children:I}))),!I&&""!==C&&("ai"===h&&"light"===u?e.jsx(n.AiBodyCaption,{children:C}):e.jsx(n.BodyCaption,Object.assign({className:"text"},{children:C}))),l&&e.jsx("button",Object.assign({className:"icon-trailing",onClick:j,id:`${p}-wrapper`||"trailing-icon-wrapper"},{children:c.default.createElement(l,Object.assign(Object.assign({},q),{id:p||"trailing-icon"}))}))]}))}))};o.displayName="Tag",exports.Tag=o;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("react"),n=require("../tooltips/Tooltip.js"),t=require("../TypographyStyle.js"),a=require("./model.js"),r=require("./Tag.styled.js"),s=require("./themes.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=c(i);const l=i=>{let{tagText:c,LeadingIcon:l,TrailingIcon:d,onLeadingIconClicked:g,leadingIconId:p,trailingIconId:j,onTrailingIconClicked:u,theme:b="light",type:h="neutral",variant:m="regular",version:x,cursor:O,alignIcon:y,noBorder:T,tagHtmlText:I,contentPadding:C,leadingIconTooltip:f,trailingIconTooltip:w}=i,v=c;const N=b;let k=h;a.ValidTagTypeMap[m][h]||(k="neutral"),"circle"===m&&"number"==typeof v&&v>99&&(v="99+");const q={height:"compressed"===m?12:16,width:"compressed"===m?12:16,color:s.getTagIconColor(b,k),style:{display:"block"}};return e.jsx(r.Tag,Object.assign({cursor:O,theme:N,type:h,variant:m,version:x,alignIcon:y,noBorder:T,contentPadding:C},{children:e.jsxs("div",Object.assign({className:"container"},{children:[l&&(f?e.jsx(n.Tooltip,Object.assign({},f,{children:e.jsx("button",Object.assign({className:"icon-leading",onClick:g,id:`${p}-wrapper`||"leading-icon-wrapper"},{children:o.default.createElement(l,Object.assign(Object.assign({},q),{id:p||"leading-icon"}))}))})):e.jsx("button",Object.assign({className:"icon-leading",onClick:g,id:`${p}-wrapper`||"leading-icon-wrapper"},{children:o.default.createElement(l,Object.assign(Object.assign({},q),{id:p||"leading-icon"}))}))),I&&("ai"===h&&"light"===b?e.jsx(t.AiBodyCaption,{children:I}):e.jsx(t.BodyCaption,Object.assign({className:"text"},{children:I}))),!I&&""!==v&&("ai"===h&&"light"===b?e.jsx(t.AiBodyCaption,{children:v}):e.jsx(t.BodyCaption,Object.assign({className:"text"},{children:v}))),d&&(w?e.jsx(n.Tooltip,Object.assign({},w,{children:e.jsx("button",Object.assign({className:"icon-trailing",onClick:u,id:`${j}-wrapper`||"trailing-icon-wrapper"},{children:o.default.createElement(d,Object.assign(Object.assign({},q),{id:j||"trailing-icon"}))}))})):e.jsx("button",Object.assign({className:"icon-trailing",onClick:u,id:`${j}-wrapper`||"trailing-icon-wrapper"},{children:o.default.createElement(d,Object.assign(Object.assign({},q),{id:j||"trailing-icon"}))})))]}))}))};l.displayName="Tag",exports.Tag=l;
@@ -0,0 +1,22 @@
1
+ import { ComponentMeta, ComponentStory } from '@storybook/react';
2
+ declare const _default: ComponentMeta<{
3
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
4
+ displayName: string;
5
+ }>;
6
+ export default _default;
7
+ export declare const Default: ComponentStory<{
8
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
9
+ displayName: string;
10
+ }>;
11
+ export declare const WithIcons: ComponentStory<{
12
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
13
+ displayName: string;
14
+ }>;
15
+ export declare const WithIconTooltips: ComponentStory<{
16
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
17
+ displayName: string;
18
+ }>;
19
+ export declare const DarkTheme: ComponentStory<{
20
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
21
+ displayName: string;
22
+ }>;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { MouseEventHandler } from 'react';
3
+ import { TooltipProps } from '../tooltips/Tooltip';
3
4
  export type TagTheme = 'light' | 'dark';
4
5
  export type TagVariant = 'regular' | 'circle' | 'compressed';
5
6
  export type TagType = 'negative' | 'warning' | 'positive' | 'neutral' | 'white' | 'purple' | 'blue' | 'grey' | 'ai';
@@ -62,9 +63,14 @@ export interface TagProps extends React.BaseHTMLAttributes<HTMLDivElement> {
62
63
  */
63
64
  trailingIconId?: string;
64
65
  /**
65
- * The left icon on click event, defaults to () => {}
66
+ * The right icon on click event, defaults to () => {}
66
67
  */
67
68
  onTrailingIconClicked?: MouseEventHandler<HTMLButtonElement>;
69
+ /**
70
+ * Tooltip props for the trailing icon
71
+ * @default undefined
72
+ */
73
+ trailingIconTooltip?: Omit<TooltipProps, 'children'>;
68
74
  /**
69
75
  * The icon component that is to the left of the text
70
76
  * Referred to https://ozzie.sh/passing-icons-as-props-in-a-consistent-way-using-react
@@ -80,6 +86,11 @@ export interface TagProps extends React.BaseHTMLAttributes<HTMLDivElement> {
80
86
  * @default leading-icon
81
87
  */
82
88
  leadingIconId?: string;
89
+ /**
90
+ * Tooltip props for the leading icon
91
+ * @default undefined
92
+ */
93
+ leadingIconTooltip?: Omit<TooltipProps, 'children'>;
83
94
  tagText: string | number;
84
95
  version?: '1.0' | '2.0';
85
96
  cursor?: string;
@@ -1,5 +1,5 @@
1
1
  import { TagProps } from './model';
2
2
  export declare const Tag: {
3
- ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, }: TagProps): import("react/jsx-runtime").JSX.Element;
3
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: TagProps): import("react/jsx-runtime").JSX.Element;
4
4
  displayName: string;
5
5
  };
@@ -1 +1 @@
1
- import{jsx as e,jsxs as i}from"react/jsx-runtime";import n from"react";import{AiBodyCaption as t,BodyCaption as r}from"../TypographyStyle.js";import{ValidTagTypeMap as a}from"./model.js";import{Tag as c}from"./Tag.styled.js";import{getTagIconColor as o}from"./themes.js";const s=s=>{let{tagText:l,LeadingIcon:g,TrailingIcon:d,onLeadingIconClicked:m,leadingIconId:p,trailingIconId:h,onTrailingIconClicked:j,theme:b="light",type:u="neutral",variant:y="regular",version:I,cursor:O,alignIcon:T,noBorder:f,tagHtmlText:x,contentPadding:N}=s,k=l;const v=b;let w=u;a[y][u]||(w="neutral"),"circle"===y&&"number"==typeof k&&k>99&&(k="99+");const C={height:"compressed"===y?12:16,width:"compressed"===y?12:16,color:o(b,w),style:{display:"block"}};return e(c,Object.assign({cursor:O,theme:v,type:u,variant:y,version:I,alignIcon:T,noBorder:f,contentPadding:N},{children:i("div",Object.assign({className:"container"},{children:[g&&e("button",Object.assign({className:"icon-leading",onClick:m,id:`${p}-wrapper`||"leading-icon-wrapper"},{children:n.createElement(g,Object.assign(Object.assign({},C),{id:p||"leading-icon"}))})),x&&("ai"===u&&"light"===b?e(t,{children:x}):e(r,Object.assign({className:"text"},{children:x}))),!x&&""!==k&&("ai"===u&&"light"===b?e(t,{children:k}):e(r,Object.assign({className:"text"},{children:k}))),d&&e("button",Object.assign({className:"icon-trailing",onClick:j,id:`${h}-wrapper`||"trailing-icon-wrapper"},{children:n.createElement(d,Object.assign(Object.assign({},C),{id:h||"trailing-icon"}))}))]}))}))};s.displayName="Tag";export{s as Tag};
1
+ import{jsx as i,jsxs as e}from"react/jsx-runtime";import n from"react";import{Tooltip as t}from"../tooltips/Tooltip.js";import{AiBodyCaption as a,BodyCaption as c}from"../TypographyStyle.js";import{ValidTagTypeMap as r}from"./model.js";import{Tag as o}from"./Tag.styled.js";import{getTagIconColor as s}from"./themes.js";const l=l=>{let{tagText:g,LeadingIcon:d,TrailingIcon:p,onLeadingIconClicked:m,leadingIconId:b,trailingIconId:j,onTrailingIconClicked:h,theme:O="light",type:u="neutral",variant:I="regular",version:T,cursor:y,alignIcon:w,noBorder:f,tagHtmlText:N,contentPadding:k,leadingIconTooltip:x,trailingIconTooltip:C}=l,v=g;const E=O;let $=u;r[I][u]||($="neutral"),"circle"===I&&"number"==typeof v&&v>99&&(v="99+");const B={height:"compressed"===I?12:16,width:"compressed"===I?12:16,color:s(O,$),style:{display:"block"}};return i(o,Object.assign({cursor:y,theme:E,type:u,variant:I,version:T,alignIcon:w,noBorder:f,contentPadding:k},{children:e("div",Object.assign({className:"container"},{children:[d&&(x?i(t,Object.assign({},x,{children:i("button",Object.assign({className:"icon-leading",onClick:m,id:`${b}-wrapper`||"leading-icon-wrapper"},{children:n.createElement(d,Object.assign(Object.assign({},B),{id:b||"leading-icon"}))}))})):i("button",Object.assign({className:"icon-leading",onClick:m,id:`${b}-wrapper`||"leading-icon-wrapper"},{children:n.createElement(d,Object.assign(Object.assign({},B),{id:b||"leading-icon"}))}))),N&&("ai"===u&&"light"===O?i(a,{children:N}):i(c,Object.assign({className:"text"},{children:N}))),!N&&""!==v&&("ai"===u&&"light"===O?i(a,{children:v}):i(c,Object.assign({className:"text"},{children:v}))),p&&(C?i(t,Object.assign({},C,{children:i("button",Object.assign({className:"icon-trailing",onClick:h,id:`${j}-wrapper`||"trailing-icon-wrapper"},{children:n.createElement(p,Object.assign(Object.assign({},B),{id:j||"trailing-icon"}))}))})):i("button",Object.assign({className:"icon-trailing",onClick:h,id:`${j}-wrapper`||"trailing-icon-wrapper"},{children:n.createElement(p,Object.assign(Object.assign({},B),{id:j||"trailing-icon"}))})))]}))}))};l.displayName="Tag";export{l as Tag};
@@ -0,0 +1,22 @@
1
+ import { ComponentMeta, ComponentStory } from '@storybook/react';
2
+ declare const _default: ComponentMeta<{
3
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
4
+ displayName: string;
5
+ }>;
6
+ export default _default;
7
+ export declare const Default: ComponentStory<{
8
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
9
+ displayName: string;
10
+ }>;
11
+ export declare const WithIcons: ComponentStory<{
12
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
13
+ displayName: string;
14
+ }>;
15
+ export declare const WithIconTooltips: ComponentStory<{
16
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
17
+ displayName: string;
18
+ }>;
19
+ export declare const DarkTheme: ComponentStory<{
20
+ ({ tagText, LeadingIcon, TrailingIcon, onLeadingIconClicked, leadingIconId, trailingIconId, onTrailingIconClicked, theme, type, variant, version, cursor, alignIcon, noBorder, tagHtmlText, contentPadding, leadingIconTooltip, trailingIconTooltip, }: import("./model").TagProps): import("react/jsx-runtime").JSX.Element;
21
+ displayName: string;
22
+ }>;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { MouseEventHandler } from 'react';
3
+ import { TooltipProps } from '../tooltips/Tooltip';
3
4
  export type TagTheme = 'light' | 'dark';
4
5
  export type TagVariant = 'regular' | 'circle' | 'compressed';
5
6
  export type TagType = 'negative' | 'warning' | 'positive' | 'neutral' | 'white' | 'purple' | 'blue' | 'grey' | 'ai';
@@ -62,9 +63,14 @@ export interface TagProps extends React.BaseHTMLAttributes<HTMLDivElement> {
62
63
  */
63
64
  trailingIconId?: string;
64
65
  /**
65
- * The left icon on click event, defaults to () => {}
66
+ * The right icon on click event, defaults to () => {}
66
67
  */
67
68
  onTrailingIconClicked?: MouseEventHandler<HTMLButtonElement>;
69
+ /**
70
+ * Tooltip props for the trailing icon
71
+ * @default undefined
72
+ */
73
+ trailingIconTooltip?: Omit<TooltipProps, 'children'>;
68
74
  /**
69
75
  * The icon component that is to the left of the text
70
76
  * Referred to https://ozzie.sh/passing-icons-as-props-in-a-consistent-way-using-react
@@ -80,6 +86,11 @@ export interface TagProps extends React.BaseHTMLAttributes<HTMLDivElement> {
80
86
  * @default leading-icon
81
87
  */
82
88
  leadingIconId?: string;
89
+ /**
90
+ * Tooltip props for the leading icon
91
+ * @default undefined
92
+ */
93
+ leadingIconTooltip?: Omit<TooltipProps, 'children'>;
83
94
  tagText: string | number;
84
95
  version?: '1.0' | '2.0';
85
96
  cursor?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bikdotai/bik-component-library",
3
- "version": "0.0.670-beta.01",
3
+ "version": "0.0.670-beta.02",
4
4
  "description": "Bik Component Library",
5
5
  "repository": {
6
6
  "type": "git",