@designbasekorea/figma-ui 0.1.7 → 0.1.9

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.
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ var ui = require('@designbasekorea/ui');
6
6
 
7
7
  function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);}else for(f in e)e[f]&&(n&&(n+=" "),n+=f);return n}function clsx(){for(var e,t,f=0,n="",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}
8
8
 
9
- const DonationBadge$1 = ({ donationUrl = 'https://buymeacoffee.com/designbase', text = 'Buy me a coffee', iconType = 'heart', size = 'm', className, onClick, }) => {
9
+ const DonationBadge = ({ donationUrl = 'https://buymeacoffee.com/designbase', text = 'Buy me a coffee', iconType = 'heart', size = 'm', className, onClick, }) => {
10
10
  const handleClick = () => {
11
11
  if (onClick) {
12
12
  onClick();
@@ -21,11 +21,44 @@ const DonationBadge$1 = ({ donationUrl = 'https://buymeacoffee.com/designbase',
21
21
  React.createElement(Icon, { className: "designbase-figma-donation-badge__icon" }),
22
22
  React.createElement("span", { className: "designbase-figma-donation-badge__text" }, text)));
23
23
  };
24
- DonationBadge$1.displayName = 'DonationBadge';
24
+ DonationBadge.displayName = 'DonationBadge';
25
25
 
26
- DonationBadge;
27
-
28
- const LogoDropdown$1 = ({ logoSrc, logoAlt = 'DesignBase', logoType = 'designbase', logoSize = 'xs', links, position = 'top-left', className, t = (key) => key, }) => {
26
+ const defaultLinks = [
27
+ {
28
+ name: 'officialWebsite',
29
+ url: 'https://designbase.co.kr',
30
+ icon: React.createElement(icons.GlobeIcon, { size: 20 }),
31
+ },
32
+ {
33
+ name: 'youtube',
34
+ url: 'https://youtube.com/designbase',
35
+ icon: React.createElement(icons.YoutubeIcon, { size: 20 }),
36
+ },
37
+ {
38
+ name: 'instagram',
39
+ url: 'https://instagram.com/designbase',
40
+ icon: React.createElement(icons.InstagramIcon, { size: 20 }),
41
+ },
42
+ {
43
+ name: 'figmaCommunity',
44
+ url: 'https://www.figma.com/@designbasekorea',
45
+ icon: React.createElement(icons.CodeIcon, { size: 20 }),
46
+ },
47
+ {
48
+ name: 'contact',
49
+ url: 'mailto:designbasekorea@gmail.com',
50
+ icon: React.createElement(icons.MailIcon, { size: 20 }),
51
+ },
52
+ ];
53
+ const defaultTranslations = {
54
+ officialWebsite: '공식 웹사이트',
55
+ youtube: '유튜브',
56
+ instagram: '인스타그램',
57
+ figmaCommunity: '피그마 커뮤니티',
58
+ contact: '문의하기',
59
+ };
60
+ const defaultT = (key) => defaultTranslations[key] || key;
61
+ const LogoDropdown = ({ logoSrc, logoAlt = 'DesignBase', logoType = 'designbase', logoSize = 'xs', links = defaultLinks, position = 'top-left', className, t = defaultT, }) => {
29
62
  const [isOpen, setIsOpen] = React.useState(false);
30
63
  const toggleDropdown = () => setIsOpen(!isOpen);
31
64
  const handleLinkClick = (url) => {
@@ -52,9 +85,9 @@ const LogoDropdown$1 = ({ logoSrc, logoAlt = 'DesignBase', logoType = 'designbas
52
85
  React.createElement("span", { className: "designbase-figma-logo-dropdown__text" }, t(link.name)),
53
86
  React.createElement(icons.ExternalLinkIcon, { size: 16, className: "designbase-figma-logo-dropdown__arrow" })))))))));
54
87
  };
55
- LogoDropdown$1.displayName = 'LogoDropdown';
88
+ LogoDropdown.displayName = 'LogoDropdown';
56
89
 
57
- const PaymentBadge$1 = ({ isActive, onClick, isLoading = false, text, t = (key) => key, className, }) => {
90
+ const PaymentBadge = ({ isActive, onClick, isLoading = false, text, t = (key) => key, className, }) => {
58
91
  const getBadgeText = () => {
59
92
  if (text)
60
93
  return text;
@@ -67,13 +100,13 @@ const PaymentBadge$1 = ({ isActive, onClick, isLoading = false, text, t = (key)
67
100
  };
68
101
  return (React.createElement("div", { className: `designbase-figma-payment-badge ${className || ''} ${isActive ? 'active' : 'free'}`, onClick: onClick, style: { cursor: onClick ? 'pointer' : 'default' } }, isLoading ? (React.createElement(ui.Spinner, { size: "s" })) : (React.createElement(ui.Badge, { variant: getBadgeVariant(), size: "s", className: "designbase-figma-payment-badge__badge" }, getBadgeText()))));
69
102
  };
70
- PaymentBadge$1.displayName = 'PaymentBadge';
103
+ PaymentBadge.displayName = 'PaymentBadge';
71
104
 
72
105
  const DEFAULT_LANGUAGES = [
73
106
  { code: 'ko', label: 'KO' },
74
107
  { code: 'en', label: 'EN' },
75
108
  ];
76
- const LanguageSelector$1 = ({ currentLanguage = 'ko', languages = DEFAULT_LANGUAGES, onLanguageChange, size = 's', className, }) => {
109
+ const LanguageSelector = ({ currentLanguage = 'ko', languages = DEFAULT_LANGUAGES, onLanguageChange, size = 's', className, }) => {
77
110
  const handleLanguageChange = (languageCode) => {
78
111
  if (onLanguageChange) {
79
112
  onLanguageChange(languageCode);
@@ -84,9 +117,9 @@ const LanguageSelector$1 = ({ currentLanguage = 'ko', languages = DEFAULT_LANGUA
84
117
  'designbase-figma-language-selector__button--active': currentLanguage === language.code,
85
118
  }), onClick: () => handleLanguageChange(language.code), "aria-label": `${language.label} 언어 선택`, "aria-pressed": currentLanguage === language.code }, language.label)))));
86
119
  };
87
- LanguageSelector$1.displayName = 'LanguageSelector';
120
+ LanguageSelector.displayName = 'LanguageSelector';
88
121
 
89
- const Footer$1 = ({ logoSrc, logoAlt = 'DesignBase', logoType = 'designbase', logoSize = 'xs', logoLinks = [], onLicensePageClick, paymentStatus = 'FREE', usageCount = 0, isLoading = false, showPaymentStatus = true, maxDailyUsage = 20, showDonation = false, donationUrl = 'https://buymeacoffee.com/designbase', donationText = 'Buy me a coffee', showLanguageSelector = false, currentLanguage = 'ko', languages, onLanguageChange, className, t = (key) => key, children, }) => {
122
+ const Footer = ({ logoSrc, logoAlt = 'DesignBase', logoType = 'designbase', logoSize = 'xs', logoLinks, onLicensePageClick, paymentStatus = 'FREE', usageCount = 0, isLoading = false, showPaymentStatus = true, maxDailyUsage = 20, showDonation = false, donationUrl = 'https://buymeacoffee.com/designbase', donationText = 'Buy me a coffee', showLanguageSelector = false, currentLanguage = 'ko', languages, onLanguageChange, className, t = (key) => key, children, }) => {
90
123
  const isActive = paymentStatus === 'PAID';
91
124
  const hasChildren = React.Children.count(children) > 0;
92
125
  const classes = clsx('designbase-figma-footer', {
@@ -95,8 +128,8 @@ const Footer$1 = ({ logoSrc, logoAlt = 'DesignBase', logoType = 'designbase', lo
95
128
  return (React.createElement("footer", { className: classes },
96
129
  React.createElement("div", { className: "designbase-figma-footer__wrap" },
97
130
  React.createElement("div", { className: "designbase-figma-footer__left" },
98
- React.createElement(LogoDropdown$1, { logoSrc: logoSrc, logoAlt: logoAlt, logoType: logoType, logoSize: logoSize, links: logoLinks, position: "top-left", t: t }),
99
- showLanguageSelector && (React.createElement(LanguageSelector$1, { currentLanguage: currentLanguage, languages: languages, onLanguageChange: onLanguageChange, size: "s" }))),
131
+ React.createElement(LogoDropdown, { logoSrc: logoSrc, logoAlt: logoAlt, logoType: logoType, logoSize: logoSize, links: logoLinks, position: "top-left", t: t }),
132
+ showLanguageSelector && (React.createElement(LanguageSelector, { currentLanguage: currentLanguage, languages: languages, onLanguageChange: onLanguageChange, size: "s" }))),
100
133
  showPaymentStatus && (React.createElement("div", { className: "designbase-figma-footer__payment-states" },
101
134
  !isLoading && (React.createElement("div", { className: "designbase-figma-footer__usage-info" }, isActive ? (React.createElement("span", { className: "designbase-figma-footer__unlimited-usage" }, t('unlimitedUsage'))) : (React.createElement(React.Fragment, null,
102
135
  React.createElement("span", { className: "designbase-figma-footer__usage-count" }, usageCount),
@@ -106,16 +139,14 @@ const Footer$1 = ({ logoSrc, logoAlt = 'DesignBase', logoType = 'designbase', lo
106
139
  " ",
107
140
  t('perDay')),
108
141
  React.createElement("span", { className: "designbase-figma-footer__reset-info" }, t('resetsDaily')))))),
109
- React.createElement(PaymentBadge$1, { isActive: isActive, onClick: onLicensePageClick, isLoading: isLoading, t: t }))),
142
+ React.createElement(PaymentBadge, { isActive: isActive, onClick: onLicensePageClick, isLoading: isLoading, t: t }))),
110
143
  showDonation && (React.createElement("div", { className: "designbase-figma-footer__donation" },
111
- React.createElement(DonationBadge$1, { donationUrl: donationUrl, text: donationText, iconType: "heart", size: "s" })))),
144
+ React.createElement(DonationBadge, { donationUrl: donationUrl, text: donationText, iconType: "heart", size: "s" })))),
112
145
  children));
113
146
  };
114
- Footer$1.displayName = 'Footer';
115
-
116
- Footer;
147
+ Footer.displayName = 'Footer';
117
148
 
118
- const FormWithSubmit$1 = ({ onLicenseSubmit, disabled = false, isSubmitting = false, value = '', onValueChange, label = 'License Key', placeholder = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx', submitText = 'Submit', submittingText = 'Verifying...', className, }) => {
149
+ const FormWithSubmit = ({ onLicenseSubmit, disabled = false, isSubmitting = false, value = '', onValueChange, label = 'License Key', placeholder = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx', submitText = 'Submit', submittingText = 'Verifying...', className, }) => {
119
150
  const [inputValue, setInputValue] = React.useState(value);
120
151
  React.useEffect(() => {
121
152
  setInputValue(value);
@@ -135,11 +166,9 @@ const FormWithSubmit$1 = ({ onLicenseSubmit, disabled = false, isSubmitting = fa
135
166
  React.createElement(ui.Input, { value: inputValue, onChange: handleChange, placeholder: placeholder, disabled: disabled || isSubmitting, size: "m" })),
136
167
  React.createElement(ui.Button, { type: "submit", variant: "primary", size: "m", loading: isSubmitting, disabled: !inputValue.trim() || isSubmitting || disabled, fullWidth: true }, isSubmitting ? submittingText : submitText)));
137
168
  };
138
- FormWithSubmit$1.displayName = 'FormWithSubmit';
169
+ FormWithSubmit.displayName = 'FormWithSubmit';
139
170
 
140
- FormWithSubmit;
141
-
142
- const InteractionFeedback$1 = ({ status = 'default', message, statusMessage, leftContent, rightContent, visible = true, className, fixed = true, }) => {
171
+ const InteractionFeedback = ({ status = 'default', message, statusMessage, leftContent, rightContent, visible = true, className, fixed = true, }) => {
143
172
  const wrapperClasses = clsx('designbase-figma-interaction-wrapper', {
144
173
  'designbase-figma-interaction-wrapper--fixed': fixed,
145
174
  });
@@ -156,15 +185,9 @@ const InteractionFeedback$1 = ({ status = 'default', message, statusMessage, lef
156
185
  statusMessage && (React.createElement("span", { className: "designbase-figma-interaction__status-text" }, statusMessage))))),
157
186
  rightContent && (React.createElement("div", { className: "designbase-figma-interaction__right" }, rightContent))))));
158
187
  };
159
- InteractionFeedback$1.displayName = 'InteractionFeedback';
160
-
161
- InteractionFeedback;
162
-
163
- LanguageSelector;
164
-
165
- LogoDropdown;
188
+ InteractionFeedback.displayName = 'InteractionFeedback';
166
189
 
167
- const PaymentStatusSection$1 = ({ status, usageCount, activationLimit, activationUsage, licenseKey, onDeactivate, isDeactivating = false, showDetails = false, className, }) => {
190
+ const PaymentStatusSection = ({ status, usageCount, activationLimit, activationUsage, licenseKey, onDeactivate, isDeactivating = false, showDetails = false, className, }) => {
168
191
  const remainingActivations = activationLimit - activationUsage;
169
192
  return (React.createElement("div", { className: `designbase-figma-payment-status ${className || ''}` },
170
193
  React.createElement("div", { className: "designbase-figma-payment-status__license-key" },
@@ -183,7 +206,7 @@ const PaymentStatusSection$1 = ({ status, usageCount, activationLimit, activatio
183
206
  activationLimit)),
184
207
  React.createElement(ui.Button, { onClick: onDeactivate, variant: "tertiary", size: "s", disabled: isDeactivating }, isDeactivating ? '비활성화중...' : '라이선스 비활성화')))));
185
208
  };
186
- PaymentStatusSection$1.displayName = 'PaymentStatusSection';
209
+ PaymentStatusSection.displayName = 'PaymentStatusSection';
187
210
 
188
211
  const defaultFeatures = [
189
212
  { name: '사용 제한', free: '일일 제한', pro: '무제한' },
@@ -196,7 +219,7 @@ const defaultPricing = {
196
219
  monthly: 2,
197
220
  yearly: 21.6,
198
221
  };
199
- const PricingComparison$1 = ({ features = defaultFeatures, pricing = defaultPricing, t = (key) => key, className, }) => {
222
+ const PricingComparison = ({ features = defaultFeatures, pricing = defaultPricing, t = (key) => key, className, }) => {
200
223
  const [isYearly, setIsYearly] = React.useState(false);
201
224
  const getPrice = () => {
202
225
  const price = isYearly ? pricing.yearly : pricing.monthly;
@@ -245,9 +268,9 @@ const PricingComparison$1 = ({ features = defaultFeatures, pricing = defaultPric
245
268
  ? (feature.pro ? '✓' : '✗')
246
269
  : feature.pro))))))));
247
270
  };
248
- PricingComparison$1.displayName = 'PricingComparison';
271
+ PricingComparison.displayName = 'PricingComparison';
249
272
 
250
- const PageLicense$1 = ({ status: initialStatus, onClose, usageCount: initialUsageCount = 0, onLicenseSubmit, licenseKey: initialLicenseKey = '', setPaymentStatus, setUsageCount, setShowLicensePage, paymentPageUrl, t = (key) => key, className, }) => {
273
+ const PageLicense = ({ status: initialStatus, onClose, usageCount: initialUsageCount = 0, onLicenseSubmit, licenseKey: initialLicenseKey = '', setPaymentStatus, setUsageCount, setShowLicensePage, paymentPageUrl, t = (key) => key, className, }) => {
251
274
  const [isSubmitting, setIsSubmitting] = React.useState(false);
252
275
  const [isDeactivating, setIsDeactivating] = React.useState(false);
253
276
  const [licenseKey, setLicenseKey] = React.useState(initialLicenseKey);
@@ -333,37 +356,29 @@ const PageLicense$1 = ({ status: initialStatus, onClose, usageCount: initialUsag
333
356
  React.createElement("p", { className: "designbase-figma-page-license__description" }, isPaid
334
357
  ? t('allFeaturesAvailable') || '모든 기능을 사용할 수 있습니다.'
335
358
  : t('purchaseForUnlimited') || '라이선스 구매 후 무제한 접근이 가능합니다.')),
336
- React.createElement(PricingComparison$1, { t: t }),
359
+ React.createElement(PricingComparison, { t: t }),
337
360
  isPaid && (React.createElement("div", { className: "designbase-figma-page-license__section" },
338
361
  React.createElement("div", { className: "designbase-figma-page-license__section-header" },
339
362
  React.createElement("h3", null, t('licenseActivated') || '라이선스 활성화됨'),
340
363
  React.createElement(ui.Button, { onClick: () => setShowDetails(!showDetails), variant: "tertiary", size: "s", iconOnly: true },
341
364
  React.createElement(icons.MoreHorizontalIcon, { size: 16 }))),
342
- React.createElement(PaymentStatusSection$1, { status: status, usageCount: usageCount, activationLimit: activationLimit, activationUsage: activationUsage, licenseKey: licenseKey, onDeactivate: handleDeactivateLicense, isDeactivating: isDeactivating, showDetails: showDetails }))),
365
+ React.createElement(PaymentStatusSection, { status: status, usageCount: usageCount, activationLimit: activationLimit, activationUsage: activationUsage, licenseKey: licenseKey, onDeactivate: handleDeactivateLicense, isDeactivating: isDeactivating, showDetails: showDetails }))),
343
366
  React.createElement("div", { className: "designbase-figma-page-license__section" },
344
367
  React.createElement("div", { className: "designbase-figma-page-license__section-header" },
345
368
  React.createElement("h3", null, t('enterLicenseKey') || '라이선스 키 입력'),
346
369
  !isPaid && paymentPageUrl && (React.createElement(ui.Button, { onClick: () => window.open(paymentPageUrl, '_blank'), variant: "primary", size: "s" },
347
370
  React.createElement("span", null, t('purchaseLicense') || '라이선스 구매'),
348
371
  React.createElement(icons.ExternalLinkIcon, { size: 16 })))),
349
- React.createElement(FormWithSubmit$1, { onLicenseSubmit: handleLicenseSubmit, disabled: false, isSubmitting: isSubmitting, value: licenseKey, onValueChange: setLicenseKey, label: t('licenseKey') || 'License Key', submitText: t('submit') || 'Submit', submittingText: t('verifying') || 'Verifying...' }),
372
+ React.createElement(FormWithSubmit, { onLicenseSubmit: handleLicenseSubmit, disabled: false, isSubmitting: isSubmitting, value: licenseKey, onValueChange: setLicenseKey, label: t('licenseKey') || 'License Key', submitText: t('submit') || 'Submit', submittingText: t('verifying') || 'Verifying...' }),
350
373
  React.createElement("p", { className: "designbase-figma-page-license__disclaimer" }, isPaid
351
374
  ? t('licenseActivatedSuccess') || '라이선스가 성공적으로 활성화되었습니다.'
352
375
  : t('enterLicenseFromEmail') || '구독 후 이메일로 받은 라이선스 키를 입력하세요.'))),
353
376
  React.createElement(ui.Button, { className: "designbase-figma-page-license__close", onPress: onClose, variant: "tertiary", size: "s", "aria-label": "Close" },
354
377
  React.createElement(icons.CloseIcon, { size: 20 }))));
355
378
  };
356
- PageLicense$1.displayName = 'PageLicense';
379
+ PageLicense.displayName = 'PageLicense';
357
380
 
358
- PageLicense;
359
-
360
- PaymentBadge;
361
-
362
- PaymentStatusSection;
363
-
364
- PricingComparison;
365
-
366
- const ProgressModal$1 = ({ isOpen, onClose, progress, title = '작업 중', completedMessage = '완료되었습니다', processingMessage = '처리 중...', stopButtonText = '중지', confirmButtonText = '확인', helpText, onStop, onComplete, loadingIcon, completeIcon, className, }) => {
381
+ const ProgressModal = ({ isOpen, onClose, progress, title = '작업 중', completedMessage = '완료되었습니다', processingMessage = '처리 중...', stopButtonText = '중지', confirmButtonText = '확인', helpText, onStop, onComplete, loadingIcon, completeIcon, className, }) => {
367
382
  const [isCompleted, setIsCompleted] = React.useState(false);
368
383
  const { processedNodes, totalNodes } = progress;
369
384
  const progressPercentage = totalNodes > 0 ? (processedNodes / totalNodes) * 100 : 0;
@@ -395,11 +410,9 @@ const ProgressModal$1 = ({ isOpen, onClose, progress, title = '작업 중', comp
395
410
  helpText && !isCompleted && (React.createElement("p", { className: "designbase-figma-progress-modal__help-text" }, helpText)),
396
411
  React.createElement("div", { className: "designbase-figma-progress-modal__actions" }, isCompleted ? (React.createElement(ui.Button, { onPress: onClose, variant: "primary", size: "m", fullWidth: true }, confirmButtonText)) : (React.createElement(ui.Button, { onPress: handleStop, variant: "secondary", size: "m", fullWidth: true }, stopButtonText))))));
397
412
  };
398
- ProgressModal$1.displayName = 'ProgressModal';
413
+ ProgressModal.displayName = 'ProgressModal';
399
414
 
400
- ProgressModal;
401
-
402
- const ResizablePlugin$1 = ({ children, minWidth = 360, maxWidth = 460, minHeight = 440, maxHeight = 700, icon, className, }) => {
415
+ const ResizablePlugin = ({ children, minWidth = 360, maxWidth = 460, minHeight = 440, maxHeight = 700, icon, className, }) => {
403
416
  const [isResizing, setIsResizing] = React.useState(false);
404
417
  const resizeHandleRef = React.useRef(null);
405
418
  React.useEffect(() => {
@@ -437,11 +450,9 @@ const ResizablePlugin$1 = ({ children, minWidth = 360, maxWidth = 460, minHeight
437
450
  setIsResizing(true);
438
451
  }, role: "button", tabIndex: 0, "aria-label": "Resize plugin" }, icon || React.createElement(icons.ExpandIcon, { size: 12 }))));
439
452
  };
440
- ResizablePlugin$1.displayName = 'ResizablePlugin';
441
-
442
- ResizablePlugin;
453
+ ResizablePlugin.displayName = 'ResizablePlugin';
443
454
 
444
- const SettingsModal$1 = ({ isOpen, onClose, categories: initialCategories, categoryGroups, onSave, onReset, title = '목록 변경', description = '드래그하여 순서를 변경하거나, 토글하여 카테고리를 숨길 수 있습니다.', className, }) => {
455
+ const SettingsModal = ({ isOpen, onClose, categories: initialCategories, categoryGroups, onSave, onReset, title = '목록 변경', description = '드래그하여 순서를 변경하거나, 토글하여 카테고리를 숨길 수 있습니다.', className, }) => {
445
456
  const [tempCategories, setTempCategories] = React.useState(initialCategories);
446
457
  const [draggedIndex, setDraggedIndex] = React.useState(null);
447
458
  React.useEffect(() => {
@@ -553,11 +564,9 @@ const SettingsModal$1 = ({ isOpen, onClose, categories: initialCategories, categ
553
564
  React.createElement(ui.Button, { onPress: handleCancel, variant: "tertiary", size: "s" }, "\uCDE8\uC18C"),
554
565
  React.createElement(ui.Button, { onPress: handleSave, variant: "primary", size: "s" }, "\uC800\uC7A5")))));
555
566
  };
556
- SettingsModal$1.displayName = 'SettingsModal';
567
+ SettingsModal.displayName = 'SettingsModal';
557
568
 
558
- SettingsModal;
559
-
560
- const UpgradeBanner$1 = ({ onClick, isLoading = false, title, description, buttonText, t = (key) => key, className, }) => {
569
+ const UpgradeBanner = ({ onClick, isLoading = false, title, description, buttonText, t = (key) => key, className, }) => {
561
570
  return (React.createElement("div", { className: `designbase-figma-upgrade-banner ${className || ''}` },
562
571
  React.createElement("div", { className: "designbase-figma-upgrade-banner__content" },
563
572
  React.createElement("div", { className: "designbase-figma-upgrade-banner__text-wrap" },
@@ -565,24 +574,22 @@ const UpgradeBanner$1 = ({ onClick, isLoading = false, title, description, butto
565
574
  React.createElement("p", { className: "designbase-figma-upgrade-banner__text" }, description || t('bannerText') || '무제한 기능을 사용하고 더 많은 혜택을 누리세요.')),
566
575
  React.createElement(ui.Button, { onClick: onClick, variant: "primary", size: "m", disabled: isLoading }, buttonText || t('upgradeNow') || '지금 업그레이드'))));
567
576
  };
568
- UpgradeBanner$1.displayName = 'UpgradeBanner';
569
-
570
- UpgradeBanner;
577
+ UpgradeBanner.displayName = 'UpgradeBanner';
571
578
 
572
- exports.DonationBadge = DonationBadge$1;
573
- exports.Footer = Footer$1;
574
- exports.FormWithSubmit = FormWithSubmit$1;
575
- exports.InteractionFeedback = InteractionFeedback$1;
576
- exports.LanguageSelector = LanguageSelector$1;
577
- exports.LogoDropdown = LogoDropdown$1;
578
- exports.PageLicense = PageLicense$1;
579
- exports.PaymentBadge = PaymentBadge$1;
580
- exports.PaymentStatusSection = PaymentStatusSection$1;
581
- exports.PricingComparison = PricingComparison$1;
582
- exports.ProgressModal = ProgressModal$1;
583
- exports.ResizablePlugin = ResizablePlugin$1;
584
- exports.SettingsModal = SettingsModal$1;
585
- exports.UpgradeBanner = UpgradeBanner$1;
579
+ exports.DonationBadge = DonationBadge;
580
+ exports.Footer = Footer;
581
+ exports.FormWithSubmit = FormWithSubmit;
582
+ exports.InteractionFeedback = InteractionFeedback;
583
+ exports.LanguageSelector = LanguageSelector;
584
+ exports.LogoDropdown = LogoDropdown;
585
+ exports.PageLicense = PageLicense;
586
+ exports.PaymentBadge = PaymentBadge;
587
+ exports.PaymentStatusSection = PaymentStatusSection;
588
+ exports.PricingComparison = PricingComparison;
589
+ exports.ProgressModal = ProgressModal;
590
+ exports.ResizablePlugin = ResizablePlugin;
591
+ exports.SettingsModal = SettingsModal;
592
+ exports.UpgradeBanner = UpgradeBanner;
586
593
  Object.keys(ui).forEach(function (k) {
587
594
  if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
588
595
  enumerable: true,