@apify/ui-library 1.158.0 → 1.158.1-featpartnershipbadge-9d265a.11

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.
Files changed (35) hide show
  1. package/dist/components/developer_badge/developer_badge.d.ts +13 -0
  2. package/dist/components/developer_badge/developer_badge.d.ts.map +1 -0
  3. package/dist/components/developer_badge/developer_badge.js +105 -0
  4. package/dist/components/developer_badge/developer_badge.test_ids.d.ts +5 -0
  5. package/dist/components/developer_badge/developer_badge.test_ids.d.ts.map +1 -0
  6. package/dist/components/developer_badge/developer_badge.test_ids.js +7 -0
  7. package/dist/components/developer_badge/index.d.ts +3 -0
  8. package/dist/components/developer_badge/index.d.ts.map +1 -0
  9. package/dist/components/index.d.ts +1 -0
  10. package/dist/components/index.d.ts.map +1 -1
  11. package/dist/files_hash_at_build.txt +1 -1
  12. package/dist/index.js +3 -1
  13. package/dist/src/components/developer_badge/developer_badge.d.ts +13 -0
  14. package/dist/src/components/developer_badge/developer_badge.d.ts.map +1 -0
  15. package/dist/src/components/developer_badge/developer_badge.js +97 -0
  16. package/dist/src/components/developer_badge/developer_badge.js.map +1 -0
  17. package/dist/src/components/developer_badge/developer_badge.test_ids.d.ts +5 -0
  18. package/dist/src/components/developer_badge/developer_badge.test_ids.d.ts.map +1 -0
  19. package/dist/src/components/developer_badge/developer_badge.test_ids.js +5 -0
  20. package/dist/src/components/developer_badge/developer_badge.test_ids.js.map +1 -0
  21. package/dist/src/components/developer_badge/index.d.ts +3 -0
  22. package/dist/src/components/developer_badge/index.d.ts.map +1 -0
  23. package/dist/src/components/developer_badge/index.js +3 -0
  24. package/dist/src/components/developer_badge/index.js.map +1 -0
  25. package/dist/src/components/index.d.ts +1 -0
  26. package/dist/src/components/index.d.ts.map +1 -1
  27. package/dist/src/components/index.js +1 -0
  28. package/dist/src/components/index.js.map +1 -1
  29. package/dist/tsconfig.build.tsbuildinfo +1 -1
  30. package/package.json +3 -3
  31. package/src/components/developer_badge/developer_badge.stories.tsx +29 -0
  32. package/src/components/developer_badge/developer_badge.test_ids.ts +4 -0
  33. package/src/components/developer_badge/developer_badge.tsx +117 -0
  34. package/src/components/developer_badge/index.ts +2 -0
  35. package/src/components/index.ts +1 -0
@@ -0,0 +1,13 @@
1
+ export type DeveloperBadgeVariant = 'verified' | 'partner';
2
+ export declare const DEVELOPER_BADGE_VARIANTS: DeveloperBadgeVariant[];
3
+ export type DeveloperBadgeProps = {
4
+ variant: DeveloperBadgeVariant;
5
+ className?: string;
6
+ };
7
+ /**
8
+ * Circular icon badge marking an Actor developer as a verified developer or an Apify partner.
9
+ *
10
+ * Purely visual — it carries no text. Wrap it in a Tooltip and supply app-specific copy.
11
+ */
12
+ export declare const DeveloperBadge: import('react').ForwardRefExoticComponent<DeveloperBadgeProps & import('react').RefAttributes<HTMLSpanElement>>;
13
+ //# sourceMappingURL=developer_badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"developer_badge.d.ts","sourceRoot":"","sources":["../../../src/components/developer_badge/developer_badge.tsx"],"names":[],"mappings":"AAUA,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,SAAS,CAAC;AAC3D,eAAO,MAAM,wBAAwB,EAAE,qBAAqB,EAA4B,CAAC;AAuFzF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,iHAMzB,CAAC"}
@@ -0,0 +1,105 @@
1
+ import { theme } from "../../design_system/theme.js";
2
+ import { developerBadgeTestIds } from "./developer_badge.test_ids.js";
3
+ import styled, { css, keyframes } from "styled-components";
4
+ import { forwardRef } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import { VerifiedIcon } from "@apify/ui-icons";
7
+ //#region src/components/developer_badge/developer_badge.tsx
8
+ var DEVELOPER_BADGE_VARIANTS = ["verified", "partner"];
9
+ var partnerShineSweep = keyframes`
10
+ 0%,
11
+ 20% {
12
+ opacity: 0;
13
+ transform: translate(70%, 70%) scale(0.25);
14
+ }
15
+
16
+ 25% {
17
+ opacity: 0.15;
18
+ transform: translate(60%, 60%) scale(0.35);
19
+ }
20
+
21
+ 50% {
22
+ opacity: 1;
23
+ transform: translate(0, 0) scale(1.7);
24
+ }
25
+
26
+ 75% {
27
+ opacity: 0.15;
28
+ transform: translate(-60%, -60%) scale(0.35);
29
+ }
30
+
31
+ 80%,
32
+ 100% {
33
+ opacity: 0;
34
+ transform: translate(-70%, -70%) scale(0.25);
35
+ }
36
+ `;
37
+ var developerBadgeVariantStyle = {
38
+ verified: css`
39
+ background: ${theme.color.primary.action};
40
+ color: ${theme.color.neutral.iconOnPrimary};
41
+ `,
42
+ partner: css`
43
+ background: ${theme.color.buttercup.base};
44
+ /* The gold surface stays light in both color schemes, so the icon color is a static palette reference. */
45
+ color: ${theme.colorPalette.light.neutral950};
46
+
47
+ &::before {
48
+ content: '';
49
+ position: absolute;
50
+ z-index: 1;
51
+ inset: -50%;
52
+ background: linear-gradient(
53
+ 135deg,
54
+ transparent 36%,
55
+ ${theme.color.buttercup.light} 44%,
56
+ ${theme.colorPalette.light.neutral0} 50%,
57
+ ${theme.color.buttercup.light} 56%,
58
+ transparent 64%
59
+ );
60
+ animation: ${partnerShineSweep} 4s ease-out infinite;
61
+ }
62
+
63
+ svg {
64
+ position: relative;
65
+ z-index: 2;
66
+ }
67
+
68
+ @media (prefers-reduced-motion: reduce) {
69
+ &::before {
70
+ animation: none;
71
+ opacity: 0;
72
+ }
73
+ }
74
+ `
75
+ };
76
+ var StyledDeveloperBadge = styled.span`
77
+ position: relative;
78
+ display: inline-flex;
79
+ align-items: center;
80
+ justify-content: center;
81
+ flex-shrink: 0;
82
+ width: ${theme.space.space24};
83
+ height: ${theme.space.space24};
84
+ overflow: hidden;
85
+ border-radius: ${theme.radius.radiusFull};
86
+
87
+ ${({ $variant }) => developerBadgeVariantStyle[$variant]};
88
+ `;
89
+ /**
90
+ * Circular icon badge marking an Actor developer as a verified developer or an Apify partner.
91
+ *
92
+ * Purely visual — it carries no text. Wrap it in a Tooltip and supply app-specific copy.
93
+ */
94
+ var DeveloperBadge = forwardRef(({ variant, ...props }, ref) => {
95
+ return /* @__PURE__ */ jsx(StyledDeveloperBadge, {
96
+ ref,
97
+ $variant: variant,
98
+ "data-testid": developerBadgeTestIds[variant],
99
+ ...props,
100
+ children: /* @__PURE__ */ jsx(VerifiedIcon, { size: "20" })
101
+ });
102
+ });
103
+ DeveloperBadge.displayName = "DeveloperBadge";
104
+ //#endregion
105
+ export { DEVELOPER_BADGE_VARIANTS, DeveloperBadge };
@@ -0,0 +1,5 @@
1
+ export declare const developerBadgeTestIds: {
2
+ verified: string;
3
+ partner: string;
4
+ };
5
+ //# sourceMappingURL=developer_badge.test_ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"developer_badge.test_ids.d.ts","sourceRoot":"","sources":["../../../src/components/developer_badge/developer_badge.test_ids.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB;;;CAGjC,CAAC"}
@@ -0,0 +1,7 @@
1
+ //#region src/components/developer_badge/developer_badge.test_ids.ts
2
+ var developerBadgeTestIds = {
3
+ verified: "verified-developer-badge",
4
+ partner: "apify-partner-badge"
5
+ };
6
+ //#endregion
7
+ export { developerBadgeTestIds };
@@ -0,0 +1,3 @@
1
+ export * from './developer_badge';
2
+ export * from './developer_badge.test_ids';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/developer_badge/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC"}
@@ -23,6 +23,7 @@ export * from './chip';
23
23
  export * from './image';
24
24
  export * from './rating';
25
25
  export * from './badge';
26
+ export * from './developer_badge';
26
27
  export * from './tag';
27
28
  export * from './tabs';
28
29
  export * from './shortcut';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
@@ -1 +1 @@
1
- b118cfdff579b5e51f20e27cc9728d4cd8834752
1
+ b6b8b8c78fae844a552129a72fb5daf2e20fd60e
package/dist/index.js CHANGED
@@ -64,6 +64,8 @@ import { Banner } from "./components/banner/banner.js";
64
64
  import { ActorTemplateCard } from "./components/actor_template_card/actor_template_card.js";
65
65
  import { CHIP_SIZES, CHIP_TYPES, Chip, DangerChip, NeutralChip, PrimaryChip, SuccessChip, WarningChip, classNames as classNames$1 } from "./components/chip/chip.js";
66
66
  import { Rating, RatingStats, SingleStarRating } from "./components/rating/rating.js";
67
+ import { developerBadgeTestIds } from "./components/developer_badge/developer_badge.test_ids.js";
68
+ import { DEVELOPER_BADGE_VARIANTS, DeveloperBadge } from "./components/developer_badge/developer_badge.js";
67
69
  import { TAG_SIZES, TAG_VARIANTS, Tag } from "./components/tag/tag.js";
68
70
  import { TAB_CLASSNAMES, Tab } from "./components/tabs/tab.js";
69
71
  import { Tabs } from "./components/tabs/tabs.js";
@@ -96,4 +98,4 @@ import { DROPDOWN_ELEMENT_CLASSES } from "./components/dropdown/dropdown.styled.
96
98
  import { Dropdown } from "./components/dropdown/dropdown.js";
97
99
  import { DropdownButton } from "./components/dropdown/dropdown_button.js";
98
100
  import { DropdownShell } from "./components/dropdown/dropdown_shell.js";
99
- export { APIFY_HOSTNAMES, ActionBox, ActionLink, ActorAvatar, ActorAvatarInner, ActorTemplateCard, BADGE_SIZES, BADGE_VARIANTS, BUTTON_COLOR_VARIANTS_CSS, BUTTON_SIZE_VARIANTS_CSS, BackLink, Badge, Banner, BlockSpinner, BlogArticle, Box, Breadcrumbs, BrowserWindow, Button, CHIP_SIZES, CHIP_TYPES, CODE_BLOCK_TAB_CATALOG, CODE_BLOCK_WITH_TABS_CLASSNAMES, Card, CardContainer, CheckboxPrimitive, Chip, CodeBlock, CodeBlockWithTabs, CodeHighlighterLineBashPrefix, CodeHighlighterLinePrefix, CollapsibleCard, ColorWheelGradient, DROPDOWN_ELEMENT_CLASSES, DangerChip, DangerMessage, Dropdown, DropdownButton, DropdownMenuBaseComponent, DropdownMenuBaseComponentWithCount, DropdownShell, FLOATING_PLACEMENT, HeadingShared as Heading, HeadingContent, HeadingMarketing, HorizontalTile, HorizontallyScrollableTableWrapper, ICON_BUTTON_VARIANTS, IconButton, Image, IndeterminateCheckbox, InfoMessage, InlineCode, InlineSpinner, Link, ListMenuComponent, ListMenuItemComponent, MemoizedMarkdown as Markdown, MarkdownBlockQuote, MarkdownCode, MarkdownHeadingWrapper, MarkdownLink, MarkdownParagraphContent, MarkdownPlainHeading, MarkdownTable, Menu, Message, NeutralChip, OneLineCode, PaginationButtons, PlainMenuBaseComponent, PrimaryChip, PrismSyntaxHighlighter, RadioButtonPrimitive, Rating, RatingStats, SHARED_TEXT_TYPES, SelectMultiValueRemove, SelectPrimitive, Shortcut, SimpleMarkdown, SingleStarRating, Spinner, StoreActorHeader, StyledAsLink, StyledCardWrapper, SuccessChip, SuccessMessage, SwitchPrimitive, TAB_CLASSNAMES, TAG_SIZES, TAG_VARIANTS, TOOLTIP_SIZES, TOOLTIP_TEXT_ALIGNS, Tab, TabNumberChip, Table, TableBody, TableCell, TableCellLink, TableEmptyRow, TableErrorRow, TableExpansionRow, TableFoot, TableHead, TableHeadCell, TableHeadRow, TableLoadingRow, TableOfContents, TableRow, Tabs, Tag, TextShared as Text, TextShared, TextBaseComponent, TextContent, TextMarketing, Tooltip, UiDependencyProvider, UserAvatar, VerticalTile, WarningChip, WarningMessage, actorAvatarClassnames, breadcrumbClassNames, classNames as browserWindowClassNames, cardClassNames, cardContainerClassNames, clampLines, classNames$1 as classNames, cleanMarkdown, collapsibleCardClassNames, colorProperties, cssColorsVariablesBrandDark, tokens as cssColorsVariablesDark, tokens$1 as cssColorsVariablesLight, tokens$2 as cssColorsVariablesPaletteDark, tokens$3 as cssColorsVariablesPaletteLight, darkTheme, defaultAllowedElements, defaultRehypePlugins, defaultRemarkPlugins, devices, getButtonColorStyles, getButtonSizeStyles, getResponsiveStyles, getResponsiveValueAtBreakpoint, hasUrlHttpProtocol, inlineCodeStyles, isResponsiveObject, isUrlEmail, isUrlExternal, layouts, lightTheme, menuClassNames, messageClassNames, omitDomainAndProtocol, oneLineCodeClassNames, pythonizeValue, radiuses, regularMarkdownSizeComponents, sanitizeUrl, selectDefaultGetIsSelected, shadows, slugifyHeadingChildren, smallMarkdownSizeComponents, spaces, spinnerClassNames, tableClassNames, tableTestIds, theme, transitions, useActorTitleHeadingFilter, useCopyToClipboard, useDefaultUrlTransform, useFloatingMenu, useImageColor, useResizeObserverSsr, useSharedUiDependencies, useShowTableOfContents, userAvatarBaseClassNames, withReactSelectTheme, withTooltip };
101
+ export { APIFY_HOSTNAMES, ActionBox, ActionLink, ActorAvatar, ActorAvatarInner, ActorTemplateCard, BADGE_SIZES, BADGE_VARIANTS, BUTTON_COLOR_VARIANTS_CSS, BUTTON_SIZE_VARIANTS_CSS, BackLink, Badge, Banner, BlockSpinner, BlogArticle, Box, Breadcrumbs, BrowserWindow, Button, CHIP_SIZES, CHIP_TYPES, CODE_BLOCK_TAB_CATALOG, CODE_BLOCK_WITH_TABS_CLASSNAMES, Card, CardContainer, CheckboxPrimitive, Chip, CodeBlock, CodeBlockWithTabs, CodeHighlighterLineBashPrefix, CodeHighlighterLinePrefix, CollapsibleCard, ColorWheelGradient, DEVELOPER_BADGE_VARIANTS, DROPDOWN_ELEMENT_CLASSES, DangerChip, DangerMessage, DeveloperBadge, Dropdown, DropdownButton, DropdownMenuBaseComponent, DropdownMenuBaseComponentWithCount, DropdownShell, FLOATING_PLACEMENT, HeadingShared as Heading, HeadingContent, HeadingMarketing, HorizontalTile, HorizontallyScrollableTableWrapper, ICON_BUTTON_VARIANTS, IconButton, Image, IndeterminateCheckbox, InfoMessage, InlineCode, InlineSpinner, Link, ListMenuComponent, ListMenuItemComponent, MemoizedMarkdown as Markdown, MarkdownBlockQuote, MarkdownCode, MarkdownHeadingWrapper, MarkdownLink, MarkdownParagraphContent, MarkdownPlainHeading, MarkdownTable, Menu, Message, NeutralChip, OneLineCode, PaginationButtons, PlainMenuBaseComponent, PrimaryChip, PrismSyntaxHighlighter, RadioButtonPrimitive, Rating, RatingStats, SHARED_TEXT_TYPES, SelectMultiValueRemove, SelectPrimitive, Shortcut, SimpleMarkdown, SingleStarRating, Spinner, StoreActorHeader, StyledAsLink, StyledCardWrapper, SuccessChip, SuccessMessage, SwitchPrimitive, TAB_CLASSNAMES, TAG_SIZES, TAG_VARIANTS, TOOLTIP_SIZES, TOOLTIP_TEXT_ALIGNS, Tab, TabNumberChip, Table, TableBody, TableCell, TableCellLink, TableEmptyRow, TableErrorRow, TableExpansionRow, TableFoot, TableHead, TableHeadCell, TableHeadRow, TableLoadingRow, TableOfContents, TableRow, Tabs, Tag, TextShared as Text, TextShared, TextBaseComponent, TextContent, TextMarketing, Tooltip, UiDependencyProvider, UserAvatar, VerticalTile, WarningChip, WarningMessage, actorAvatarClassnames, breadcrumbClassNames, classNames as browserWindowClassNames, cardClassNames, cardContainerClassNames, clampLines, classNames$1 as classNames, cleanMarkdown, collapsibleCardClassNames, colorProperties, cssColorsVariablesBrandDark, tokens as cssColorsVariablesDark, tokens$1 as cssColorsVariablesLight, tokens$2 as cssColorsVariablesPaletteDark, tokens$3 as cssColorsVariablesPaletteLight, darkTheme, defaultAllowedElements, defaultRehypePlugins, defaultRemarkPlugins, developerBadgeTestIds, devices, getButtonColorStyles, getButtonSizeStyles, getResponsiveStyles, getResponsiveValueAtBreakpoint, hasUrlHttpProtocol, inlineCodeStyles, isResponsiveObject, isUrlEmail, isUrlExternal, layouts, lightTheme, menuClassNames, messageClassNames, omitDomainAndProtocol, oneLineCodeClassNames, pythonizeValue, radiuses, regularMarkdownSizeComponents, sanitizeUrl, selectDefaultGetIsSelected, shadows, slugifyHeadingChildren, smallMarkdownSizeComponents, spaces, spinnerClassNames, tableClassNames, tableTestIds, theme, transitions, useActorTitleHeadingFilter, useCopyToClipboard, useDefaultUrlTransform, useFloatingMenu, useImageColor, useResizeObserverSsr, useSharedUiDependencies, useShowTableOfContents, userAvatarBaseClassNames, withReactSelectTheme, withTooltip };
@@ -0,0 +1,13 @@
1
+ export type DeveloperBadgeVariant = 'verified' | 'partner';
2
+ export declare const DEVELOPER_BADGE_VARIANTS: DeveloperBadgeVariant[];
3
+ export type DeveloperBadgeProps = {
4
+ variant: DeveloperBadgeVariant;
5
+ className?: string;
6
+ };
7
+ /**
8
+ * Circular icon badge marking an Actor developer as a verified developer or an Apify partner.
9
+ *
10
+ * Purely visual — it carries no text. Wrap it in a Tooltip and supply app-specific copy.
11
+ */
12
+ export declare const DeveloperBadge: import("react").ForwardRefExoticComponent<DeveloperBadgeProps & import("react").RefAttributes<HTMLSpanElement>>;
13
+ //# sourceMappingURL=developer_badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"developer_badge.d.ts","sourceRoot":"","sources":["../../../../src/components/developer_badge/developer_badge.tsx"],"names":[],"mappings":"AAUA,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,SAAS,CAAC;AAC3D,eAAO,MAAM,wBAAwB,EAAE,qBAAqB,EAA4B,CAAC;AAuFzF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,iHAMzB,CAAC"}
@@ -0,0 +1,97 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from 'react';
3
+ import styled, { css, keyframes } from 'styled-components';
4
+ import { VerifiedIcon } from '@apify/ui-icons';
5
+ import { theme } from '../../design_system/theme';
6
+ import { developerBadgeTestIds } from './developer_badge.test_ids';
7
+ export const DEVELOPER_BADGE_VARIANTS = ['verified', 'partner'];
8
+ const partnerShineSweep = keyframes `
9
+ 0%,
10
+ 20% {
11
+ opacity: 0;
12
+ transform: translate(70%, 70%) scale(0.25);
13
+ }
14
+
15
+ 25% {
16
+ opacity: 0.15;
17
+ transform: translate(60%, 60%) scale(0.35);
18
+ }
19
+
20
+ 50% {
21
+ opacity: 1;
22
+ transform: translate(0, 0) scale(1.7);
23
+ }
24
+
25
+ 75% {
26
+ opacity: 0.15;
27
+ transform: translate(-60%, -60%) scale(0.35);
28
+ }
29
+
30
+ 80%,
31
+ 100% {
32
+ opacity: 0;
33
+ transform: translate(-70%, -70%) scale(0.25);
34
+ }
35
+ `;
36
+ const developerBadgeVariantStyle = {
37
+ verified: css `
38
+ background: ${theme.color.primary.action};
39
+ color: ${theme.color.neutral.iconOnPrimary};
40
+ `,
41
+ partner: css `
42
+ background: ${theme.color.buttercup.base};
43
+ /* The gold surface stays light in both color schemes, so the icon color is a static palette reference. */
44
+ color: ${theme.colorPalette.light.neutral950};
45
+
46
+ &::before {
47
+ content: '';
48
+ position: absolute;
49
+ z-index: 1;
50
+ inset: -50%;
51
+ background: linear-gradient(
52
+ 135deg,
53
+ transparent 36%,
54
+ ${theme.color.buttercup.light} 44%,
55
+ ${theme.colorPalette.light.neutral0} 50%,
56
+ ${theme.color.buttercup.light} 56%,
57
+ transparent 64%
58
+ );
59
+ animation: ${partnerShineSweep} 4s ease-out infinite;
60
+ }
61
+
62
+ svg {
63
+ position: relative;
64
+ z-index: 2;
65
+ }
66
+
67
+ @media (prefers-reduced-motion: reduce) {
68
+ &::before {
69
+ animation: none;
70
+ opacity: 0;
71
+ }
72
+ }
73
+ `,
74
+ };
75
+ const StyledDeveloperBadge = styled.span `
76
+ position: relative;
77
+ display: inline-flex;
78
+ align-items: center;
79
+ justify-content: center;
80
+ flex-shrink: 0;
81
+ width: ${theme.space.space24};
82
+ height: ${theme.space.space24};
83
+ overflow: hidden;
84
+ border-radius: ${theme.radius.radiusFull};
85
+
86
+ ${({ $variant }) => developerBadgeVariantStyle[$variant]};
87
+ `;
88
+ /**
89
+ * Circular icon badge marking an Actor developer as a verified developer or an Apify partner.
90
+ *
91
+ * Purely visual — it carries no text. Wrap it in a Tooltip and supply app-specific copy.
92
+ */
93
+ export const DeveloperBadge = forwardRef(({ variant, ...props }, ref) => {
94
+ return (_jsx(StyledDeveloperBadge, { ref: ref, "$variant": variant, "data-testid": developerBadgeTestIds[variant], ...props, children: _jsx(VerifiedIcon, { size: "20" }) }));
95
+ });
96
+ DeveloperBadge.displayName = 'DeveloperBadge';
97
+ //# sourceMappingURL=developer_badge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"developer_badge.js","sourceRoot":"","sources":["../../../../src/components/developer_badge/developer_badge.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGlD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGnE,MAAM,CAAC,MAAM,wBAAwB,GAA4B,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AAEzF,MAAM,iBAAiB,GAAG,SAAS,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BlC,CAAC;AAEF,MAAM,0BAA0B,GAAG;IAC/B,QAAQ,EAAE,GAAG,CAAA;sBACK,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM;iBAC/B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa;KAC7C;IACD,OAAO,EAAE,GAAG,CAAA;sBACM,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;;iBAE/B,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU;;;;;;;;;;kBAUlC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK;kBAC3B,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ;kBACjC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK;;;yBAGpB,iBAAiB;;;;;;;;;;;;;;KAcrC;CACgE,CAAC;AAItE,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAA2B;;;;;;aAMtD,KAAK,CAAC,KAAK,CAAC,OAAO;cAClB,KAAK,CAAC,KAAK,CAAC,OAAO;;qBAEZ,KAAK,CAAC,MAAM,CAAC,UAAU;;MAEtC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,0BAA0B,CAAC,QAAQ,CAAC;CAC3D,CAAC;AAOF;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAuC,CAAC,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAC1G,OAAO,CACH,KAAC,oBAAoB,IAAC,GAAG,EAAE,GAAG,cAAY,OAAO,iBAAe,qBAAqB,CAAC,OAAO,CAAC,KAAM,KAAK,YACrG,KAAC,YAAY,IAAC,IAAI,EAAC,IAAI,GAAG,GACP,CAC1B,CAAC;AACN,CAAC,CAAC,CAAC;AAEH,cAAc,CAAC,WAAW,GAAG,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const developerBadgeTestIds: {
2
+ verified: string;
3
+ partner: string;
4
+ };
5
+ //# sourceMappingURL=developer_badge.test_ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"developer_badge.test_ids.d.ts","sourceRoot":"","sources":["../../../../src/components/developer_badge/developer_badge.test_ids.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB;;;CAGjC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export const developerBadgeTestIds = {
2
+ verified: 'verified-developer-badge',
3
+ partner: 'apify-partner-badge',
4
+ };
5
+ //# sourceMappingURL=developer_badge.test_ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"developer_badge.test_ids.js","sourceRoot":"","sources":["../../../../src/components/developer_badge/developer_badge.test_ids.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACjC,QAAQ,EAAE,0BAA0B;IACpC,OAAO,EAAE,qBAAqB;CACjC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './developer_badge';
2
+ export * from './developer_badge.test_ids';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/developer_badge/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './developer_badge';
2
+ export * from './developer_badge.test_ids';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/developer_badge/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC"}
@@ -23,6 +23,7 @@ export * from './chip';
23
23
  export * from './image';
24
24
  export * from './rating';
25
25
  export * from './badge';
26
+ export * from './developer_badge';
26
27
  export * from './tag';
27
28
  export * from './tabs';
28
29
  export * from './shortcut';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
@@ -23,6 +23,7 @@ export * from './chip';
23
23
  export * from './image';
24
24
  export * from './rating';
25
25
  export * from './badge';
26
+ export * from './developer_badge';
26
27
  export * from './tag';
27
28
  export * from './tabs';
28
29
  export * from './shortcut';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,uBAAuB,CAAC;AACtC,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}