@channel.io/bezier-react 2.2.3 → 2.2.4

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.
@@ -2,10 +2,14 @@
2
2
 
3
3
  var React = require('react');
4
4
  var index = require('../../node_modules/classnames/index.js');
5
+ var assert = require('../../utils/assert.js');
5
6
  var style = require('../../utils/style.js');
6
7
  var Emoji_module = require('./Emoji.module.scss.js');
7
8
 
8
9
  const EMOJI_TEST_ID = 'bezier-emoji';
10
+ const getEmojiUrl = (name, size) => {
11
+ return `https://cf${assert.isDev() ? '.exp' : ''}.channel.io/asset/emoji/images/${size}/${name}.png`;
12
+ };
9
13
 
10
14
  /**
11
15
  * `Emoji` is a component for representing emoji with variant size.
@@ -13,7 +17,6 @@ const EMOJI_TEST_ID = 'bezier-emoji';
13
17
  * ```tsx
14
18
  * <Emoji
15
19
  * name="A"
16
- * imageUrl="https://cf.exp.channel.io/asset/emoji/images/80/a.png"
17
20
  * size="20"
18
21
  * />
19
22
  * ```
@@ -26,12 +29,13 @@ const Emoji = /*#__PURE__*/React.forwardRef(function Emoji({
26
29
  size = '24',
27
30
  ...rest
28
31
  }, forwardedRef) {
32
+ const assetSize = Number(size) >= 60 ? '160' : '80';
29
33
  return /*#__PURE__*/React.createElement("div", Object.assign({
30
34
  ref: forwardedRef,
31
35
  role: "img",
32
36
  "aria-description": name,
33
37
  style: {
34
- '--b-emoji-background-image': style.cssUrl(imageUrl),
38
+ '--b-emoji-background-image': style.cssUrl(imageUrl ?? getEmojiUrl(name, assetSize)),
35
39
  ...style$1
36
40
  },
37
41
  className: index.default(Emoji_module.default.Emoji, Emoji_module.default[`size-${size}`], className),
@@ -1 +1 @@
1
- {"version":3,"file":"Emoji.js","sources":["../../../../src/components/Emoji/Emoji.tsx"],"sourcesContent":["import React, { type CSSProperties, forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { cssUrl } from '~/src/utils/style'\n\nimport { type EmojiProps } from './Emoji.types'\n\nimport styles from './Emoji.module.scss'\n\nexport const EMOJI_TEST_ID = 'bezier-emoji'\n\n/**\n * `Emoji` is a component for representing emoji with variant size.\n * @example\n * ```tsx\n * <Emoji\n * name=\"A\"\n * imageUrl=\"https://cf.exp.channel.io/asset/emoji/images/80/a.png\"\n * size=\"20\"\n * />\n * ```\n */\nexport const Emoji = forwardRef<HTMLDivElement, EmojiProps>(function Emoji(\n { style, imageUrl, className, name, size = '24', ...rest },\n forwardedRef\n) {\n return (\n <div\n ref={forwardedRef}\n role=\"img\"\n aria-description={name}\n style={\n {\n '--b-emoji-background-image': cssUrl(imageUrl),\n ...style,\n } as CSSProperties\n }\n className={classNames(styles.Emoji, styles[`size-${size}`], className)}\n data-testid={EMOJI_TEST_ID}\n {...rest}\n />\n )\n})\n"],"names":["EMOJI_TEST_ID","Emoji","forwardRef","style","imageUrl","className","name","size","rest","forwardedRef","React","createElement","Object","assign","ref","role","cssUrl","classNames","styles"],"mappings":";;;;;;;AAUO,MAAMA,aAAa,GAAG,eAAc;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaC,KAAK,gBAAGC,gBAAU,CAA6B,SAASD,KAAKA,CACxE;SAAEE,OAAK;EAAEC,QAAQ;EAAEC,SAAS;EAAEC,IAAI;AAAEC,EAAAA,IAAI,GAAG,IAAI;EAAE,GAAGC,IAAAA;AAAK,CAAC,EAC1DC,YAAY,EACZ;AACA,EAAA,oBACEC,KAAA,CAAAC,aAAA,CAAAC,KAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;AACEC,IAAAA,GAAG,EAAEL,YAAa;AAClBM,IAAAA,IAAI,EAAC,KAAK;AACV,IAAA,kBAAA,EAAkBT,IAAK;AACvBH,IAAAA,KAAK,EACH;AACE,MAAA,4BAA4B,EAAEa,YAAM,CAACZ,QAAQ,CAAC;MAC9C,GAAGD,OAAAA;KAEN;AACDE,IAAAA,SAAS,EAAEY,aAAU,CAACC,oBAAM,CAACjB,KAAK,EAAEiB,oBAAM,CAAC,QAAQX,IAAI,CAAA,CAAE,CAAC,EAAEF,SAAS,CAAE;IACvE,aAAaL,EAAAA,aAAAA;GACTQ,EAAAA,IAAI,CACT,CAAC,CAAA;AAEN,CAAC;;;;;"}
1
+ {"version":3,"file":"Emoji.js","sources":["../../../../src/components/Emoji/Emoji.tsx"],"sourcesContent":["import React, { type CSSProperties, forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { isDev } from '~/src/utils/assert'\nimport { cssUrl } from '~/src/utils/style'\n\nimport { type EmojiProps } from './Emoji.types'\n\nimport styles from './Emoji.module.scss'\n\nexport const EMOJI_TEST_ID = 'bezier-emoji'\n\nconst getEmojiUrl = (name: EmojiProps['name'], size: '160' | '80' | '44') => {\n return `https://cf${isDev() ? '.exp' : ''}.channel.io/asset/emoji/images/${size}/${name}.png`\n}\n\n/**\n * `Emoji` is a component for representing emoji with variant size.\n * @example\n * ```tsx\n * <Emoji\n * name=\"A\"\n * size=\"20\"\n * />\n * ```\n */\nexport const Emoji = forwardRef<HTMLDivElement, EmojiProps>(function Emoji(\n { style, imageUrl, className, name, size = '24', ...rest },\n forwardedRef\n) {\n const assetSize = Number(size) >= 60 ? '160' : '80'\n\n return (\n <div\n ref={forwardedRef}\n role=\"img\"\n aria-description={name}\n style={\n {\n '--b-emoji-background-image': cssUrl(\n imageUrl ?? getEmojiUrl(name, assetSize)\n ),\n ...style,\n } as CSSProperties\n }\n className={classNames(styles.Emoji, styles[`size-${size}`], className)}\n data-testid={EMOJI_TEST_ID}\n {...rest}\n />\n )\n})\n"],"names":["EMOJI_TEST_ID","getEmojiUrl","name","size","isDev","Emoji","forwardRef","style","imageUrl","className","rest","forwardedRef","assetSize","Number","React","createElement","Object","assign","ref","role","cssUrl","classNames","styles"],"mappings":";;;;;;;;AAWO,MAAMA,aAAa,GAAG,eAAc;AAE3C,MAAMC,WAAW,GAAGA,CAACC,IAAwB,EAAEC,IAAyB,KAAK;AAC3E,EAAA,OAAO,CAAaC,UAAAA,EAAAA,YAAK,EAAE,GAAG,MAAM,GAAG,EAAE,CAAkCD,+BAAAA,EAAAA,IAAI,CAAID,CAAAA,EAAAA,IAAI,CAAM,IAAA,CAAA,CAAA;AAC/F,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaG,KAAK,gBAAGC,gBAAU,CAA6B,SAASD,KAAKA,CACxE;SAAEE,OAAK;EAAEC,QAAQ;EAAEC,SAAS;EAAEP,IAAI;AAAEC,EAAAA,IAAI,GAAG,IAAI;EAAE,GAAGO,IAAAA;AAAK,CAAC,EAC1DC,YAAY,EACZ;EACA,MAAMC,SAAS,GAAGC,MAAM,CAACV,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,IAAI,CAAA;AAEnD,EAAA,oBACEW,KAAA,CAAAC,aAAA,CAAAC,KAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;AACEC,IAAAA,GAAG,EAAEP,YAAa;AAClBQ,IAAAA,IAAI,EAAC,KAAK;AACV,IAAA,kBAAA,EAAkBjB,IAAK;AACvBK,IAAAA,KAAK,EACH;MACE,4BAA4B,EAAEa,YAAM,CAClCZ,QAAQ,IAAIP,WAAW,CAACC,IAAI,EAAEU,SAAS,CACzC,CAAC;MACD,GAAGL,OAAAA;KAEN;AACDE,IAAAA,SAAS,EAAEY,aAAU,CAACC,oBAAM,CAACjB,KAAK,EAAEiB,oBAAM,CAAC,QAAQnB,IAAI,CAAA,CAAE,CAAC,EAAEM,SAAS,CAAE;IACvE,aAAaT,EAAAA,aAAAA;GACTU,EAAAA,IAAI,CACT,CAAC,CAAA;AAEN,CAAC;;;;;"}
@@ -49,7 +49,7 @@ const OutlineItem = /*#__PURE__*/React.forwardRef(function OutlineItem({
49
49
  }, !type.isNil(children) && /*#__PURE__*/React.createElement(Icon.Icon, {
50
50
  className: OutlineItem_module.default.Icon,
51
51
  source: open ? bezierIcons.ChevronSmallDownIcon : bezierIcons.ChevronSmallRightIcon,
52
- size: "xs",
52
+ size: "s",
53
53
  color: "txt-black-dark"
54
54
  })), leftContent && /*#__PURE__*/React.createElement("div", {
55
55
  className: OutlineItem_module.default.LeftContent
@@ -1 +1 @@
1
- {"version":3,"file":"OutlineItem.js","sources":["../../../../src/components/OutlineItem/OutlineItem.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react'\n\nimport {\n ChevronSmallDownIcon,\n ChevronSmallRightIcon,\n isBezierIcon,\n} from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { createContext } from '~/src/utils/react'\nimport { isEmpty, isNil } from '~/src/utils/type'\n\nimport { Icon } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport {\n type OutlineItemContextProps,\n type OutlineItemProps,\n} from './OutlineItem.types'\n\nimport styles from './OutlineItem.module.scss'\n\nconst [OutlineItemContextProvider, useOutlineItemContext] = createContext<\n OutlineItemContextProps | undefined\n>(undefined)\n\nconst DEFAULT_INDENT = 16\n\nexport const OUTLINE_ITEM_TEST_ID = 'bezier-outline-item'\n\nexport const OutlineItem = forwardRef<\n HTMLDivElement & HTMLAnchorElement,\n OutlineItemProps\n>(function OutlineItem(\n {\n children,\n style,\n className,\n as,\n open = false,\n disableChevron = false,\n active = false,\n focused = false,\n leftContent,\n content,\n rightContent,\n href,\n ...rest\n },\n forwardedRef\n) {\n const context = useOutlineItemContext()\n const isRoot = isNil(context)\n const indent = isRoot ? 0 : context.indent + DEFAULT_INDENT\n\n const isLink = !isEmpty(href)\n const Comp = isLink ? 'a' : ((as ?? 'div') as 'div')\n\n return (\n <>\n <Comp\n {...(isLink && {\n href,\n target: '_blank',\n rel: 'noopener noreferrer',\n })}\n style={\n {\n ...style,\n '--b-outline-item-indent': `${indent}px`,\n } as React.CSSProperties\n }\n className={classNames(\n styles.OutlineItem,\n active && styles.active,\n focused && styles.focused,\n className\n )}\n ref={forwardedRef}\n data-testid={OUTLINE_ITEM_TEST_ID}\n {...rest}\n >\n {!disableChevron && (\n <div className={styles.Chevron}>\n {!isNil(children) && (\n <Icon\n className={styles.Icon}\n source={open ? ChevronSmallDownIcon : ChevronSmallRightIcon}\n size=\"xs\"\n color=\"txt-black-dark\"\n />\n )}\n </div>\n )}\n\n {leftContent && (\n <div className={styles.LeftContent}>\n {isBezierIcon(leftContent) ? (\n <Icon\n className={styles.Icon}\n size=\"s\"\n source={leftContent}\n color=\"txt-black-dark\"\n />\n ) : (\n leftContent\n )}\n </div>\n )}\n\n <Text\n className={styles.Content}\n typo=\"14\"\n truncated\n >\n {content}\n </Text>\n\n {rightContent}\n </Comp>\n\n <OutlineItemContextProvider value={useMemo(() => ({ indent }), [indent])}>\n {open && children}\n </OutlineItemContextProvider>\n </>\n )\n})\n"],"names":["OutlineItemContextProvider","useOutlineItemContext","createContext","undefined","DEFAULT_INDENT","OUTLINE_ITEM_TEST_ID","OutlineItem","forwardRef","children","style","className","as","open","disableChevron","active","focused","leftContent","content","rightContent","href","rest","forwardedRef","context","isRoot","isNil","indent","isLink","isEmpty","Comp","React","createElement","Fragment","Object","assign","target","rel","classNames","styles","ref","Chevron","Icon","source","ChevronSmallDownIcon","ChevronSmallRightIcon","size","color","LeftContent","isBezierIcon","Text","Content","typo","truncated","value","useMemo"],"mappings":";;;;;;;;;;;AAsBA,MAAM,CAACA,0BAA0B,EAAEC,qBAAqB,CAAC,GAAGC,mBAAa,CAEvEC,SAAS,CAAC,CAAA;AAEZ,MAAMC,cAAc,GAAG,EAAE,CAAA;AAElB,MAAMC,oBAAoB,GAAG,sBAAqB;MAE5CC,WAAW,gBAAGC,gBAAU,CAGnC,SAASD,WAAWA,CACpB;EACEE,QAAQ;EACRC,KAAK;EACLC,SAAS;EACTC,EAAE;AACFC,EAAAA,IAAI,GAAG,KAAK;AACZC,EAAAA,cAAc,GAAG,KAAK;AACtBC,EAAAA,MAAM,GAAG,KAAK;AACdC,EAAAA,OAAO,GAAG,KAAK;EACfC,WAAW;EACXC,OAAO;EACPC,YAAY;EACZC,IAAI;EACJ,GAAGC,IAAAA;AACL,CAAC,EACDC,YAAY,EACZ;AACA,EAAA,MAAMC,OAAO,GAAGrB,qBAAqB,EAAE,CAAA;AACvC,EAAA,MAAMsB,MAAM,GAAGC,UAAK,CAACF,OAAO,CAAC,CAAA;EAC7B,MAAMG,MAAM,GAAGF,MAAM,GAAG,CAAC,GAAGD,OAAO,CAACG,MAAM,GAAGrB,cAAc,CAAA;AAE3D,EAAA,MAAMsB,MAAM,GAAG,CAACC,YAAO,CAACR,IAAI,CAAC,CAAA;EAC7B,MAAMS,IAAI,GAAGF,MAAM,GAAG,GAAG,GAAKf,EAAE,IAAI,KAAgB,CAAA;AAEpD,EAAA,oBACEkB,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAE,QAAA,EACEF,IAAAA,eAAAA,KAAA,CAAAC,aAAA,CAACF,IAAI,EAAAI,MAAA,CAAAC,MAAA,CAAA,EAAA,EACEP,MAAM,IAAI;IACbP,IAAI;AACJe,IAAAA,MAAM,EAAE,QAAQ;AAChBC,IAAAA,GAAG,EAAE,qBAAA;GACN,EAAA;AACD1B,IAAAA,KAAK,EACH;AACE,MAAA,GAAGA,KAAK;MACR,yBAAyB,EAAE,GAAGgB,MAAM,CAAA,EAAA,CAAA;KAEvC;IACDf,SAAS,EAAE0B,aAAU,CACnBC,0BAAM,CAAC/B,WAAW,EAClBQ,MAAM,IAAIuB,0BAAM,CAACvB,MAAM,EACvBC,OAAO,IAAIsB,0BAAM,CAACtB,OAAO,EACzBL,SACF,CAAE;AACF4B,IAAAA,GAAG,EAAEjB,YAAa;IAClB,aAAahB,EAAAA,oBAAAA;AAAqB,GAAA,EAC9Be,IAAI,CAEP,EAAA,CAACP,cAAc,iBACdgB,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKpB,SAAS,EAAE2B,0BAAM,CAACE,OAAAA;GACpB,EAAA,CAACf,UAAK,CAAChB,QAAQ,CAAC,iBACfqB,KAAA,CAAAC,aAAA,CAACU,SAAI,EAAA;IACH9B,SAAS,EAAE2B,0BAAM,CAACG,IAAK;AACvBC,IAAAA,MAAM,EAAE7B,IAAI,GAAG8B,gCAAoB,GAAGC,iCAAsB;AAC5DC,IAAAA,IAAI,EAAC,IAAI;AACTC,IAAAA,KAAK,EAAC,gBAAA;AAAgB,GACvB,CAEA,CACN,EAEA7B,WAAW,iBACVa,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKpB,SAAS,EAAE2B,0BAAM,CAACS,WAAAA;GACpBC,EAAAA,wBAAY,CAAC/B,WAAW,CAAC,gBACxBa,KAAA,CAAAC,aAAA,CAACU,SAAI,EAAA;IACH9B,SAAS,EAAE2B,0BAAM,CAACG,IAAK;AACvBI,IAAAA,IAAI,EAAC,GAAG;AACRH,IAAAA,MAAM,EAAEzB,WAAY;AACpB6B,IAAAA,KAAK,EAAC,gBAAA;GACP,CAAC,GAEF7B,WAEC,CACN,eAEDa,KAAA,CAAAC,aAAA,CAACkB,SAAI,EAAA;IACHtC,SAAS,EAAE2B,0BAAM,CAACY,OAAQ;AAC1BC,IAAAA,IAAI,EAAC,IAAI;IACTC,SAAS,EAAA,IAAA;GAERlC,EAAAA,OACG,CAAC,EAENC,YACG,CAAC,eAEPW,KAAA,CAAAC,aAAA,CAAC9B,0BAA0B,EAAA;IAACoD,KAAK,EAAEC,aAAO,CAAC,OAAO;AAAE5B,MAAAA,MAAAA;AAAO,KAAC,CAAC,EAAE,CAACA,MAAM,CAAC,CAAA;AAAE,GAAA,EACtEb,IAAI,IAAIJ,QACiB,CAC5B,CAAC,CAAA;AAEP,CAAC;;;;;"}
1
+ {"version":3,"file":"OutlineItem.js","sources":["../../../../src/components/OutlineItem/OutlineItem.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react'\n\nimport {\n ChevronSmallDownIcon,\n ChevronSmallRightIcon,\n isBezierIcon,\n} from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { createContext } from '~/src/utils/react'\nimport { isEmpty, isNil } from '~/src/utils/type'\n\nimport { Icon } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport {\n type OutlineItemContextProps,\n type OutlineItemProps,\n} from './OutlineItem.types'\n\nimport styles from './OutlineItem.module.scss'\n\nconst [OutlineItemContextProvider, useOutlineItemContext] = createContext<\n OutlineItemContextProps | undefined\n>(undefined)\n\nconst DEFAULT_INDENT = 16\n\nexport const OUTLINE_ITEM_TEST_ID = 'bezier-outline-item'\n\nexport const OutlineItem = forwardRef<\n HTMLDivElement & HTMLAnchorElement,\n OutlineItemProps\n>(function OutlineItem(\n {\n children,\n style,\n className,\n as,\n open = false,\n disableChevron = false,\n active = false,\n focused = false,\n leftContent,\n content,\n rightContent,\n href,\n ...rest\n },\n forwardedRef\n) {\n const context = useOutlineItemContext()\n const isRoot = isNil(context)\n const indent = isRoot ? 0 : context.indent + DEFAULT_INDENT\n\n const isLink = !isEmpty(href)\n const Comp = isLink ? 'a' : ((as ?? 'div') as 'div')\n\n return (\n <>\n <Comp\n {...(isLink && {\n href,\n target: '_blank',\n rel: 'noopener noreferrer',\n })}\n style={\n {\n ...style,\n '--b-outline-item-indent': `${indent}px`,\n } as React.CSSProperties\n }\n className={classNames(\n styles.OutlineItem,\n active && styles.active,\n focused && styles.focused,\n className\n )}\n ref={forwardedRef}\n data-testid={OUTLINE_ITEM_TEST_ID}\n {...rest}\n >\n {!disableChevron && (\n <div className={styles.Chevron}>\n {!isNil(children) && (\n <Icon\n className={styles.Icon}\n source={open ? ChevronSmallDownIcon : ChevronSmallRightIcon}\n size=\"s\"\n color=\"txt-black-dark\"\n />\n )}\n </div>\n )}\n\n {leftContent && (\n <div className={styles.LeftContent}>\n {isBezierIcon(leftContent) ? (\n <Icon\n className={styles.Icon}\n size=\"s\"\n source={leftContent}\n color=\"txt-black-dark\"\n />\n ) : (\n leftContent\n )}\n </div>\n )}\n\n <Text\n className={styles.Content}\n typo=\"14\"\n truncated\n >\n {content}\n </Text>\n\n {rightContent}\n </Comp>\n\n <OutlineItemContextProvider value={useMemo(() => ({ indent }), [indent])}>\n {open && children}\n </OutlineItemContextProvider>\n </>\n )\n})\n"],"names":["OutlineItemContextProvider","useOutlineItemContext","createContext","undefined","DEFAULT_INDENT","OUTLINE_ITEM_TEST_ID","OutlineItem","forwardRef","children","style","className","as","open","disableChevron","active","focused","leftContent","content","rightContent","href","rest","forwardedRef","context","isRoot","isNil","indent","isLink","isEmpty","Comp","React","createElement","Fragment","Object","assign","target","rel","classNames","styles","ref","Chevron","Icon","source","ChevronSmallDownIcon","ChevronSmallRightIcon","size","color","LeftContent","isBezierIcon","Text","Content","typo","truncated","value","useMemo"],"mappings":"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"}